You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@karaf.apache.org by Daniel Kulp <dk...@apache.org> on 2012/09/28 22:10:36 UTC

ASM version....

I was doing some testing with the latest Karaf 2.3.0 snapshot and discovered that it only includes the 3.3.1 version of ASM.  However, the Aries proxy stuff now requires 4.x.    Is that dependency  going to be updated?   Should we have both to not break existing things?


-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: ASM version....

Posted by Daniel Kulp <dk...@apache.org>.
On Sep 29, 2012, at 12:06 AM, Freeman Fang <fr...@gmail.com> wrote:

> Hi Dan,
> 
> I think we should be OK to upgrade the asm version, karaf kit include the asm bundle in startup.properties, AFAIK it's only used for the aries.proxy bundle, so if aries.proxy need a higher version of asm, just upgrade asm in karaf should be safe.
> 
> If other downstream projects which get deployed into karaf need use older asm version, than they can use older asm bundle in their features.xml.

Well, downstream projects certainly COULD, but the question is, have they?   For example, CXF uses ASM, but doesn't have it listed in the features.xml.   Karaf has just always provided a version it could use.  CXF is likely different than a lot of apps though in that it has a VERY broad range for ASM  (can use 2.x - 4.x) and can thus use whatever version is there whereas most apps are likely locked to either 3.x or 4.x.  

Basically, 2.3 might not load a project whereas 2.2.x will if that project has a dependency on ASM 3.x but never declared it.   Yes, technically a bug in that projects features.xml.   I agree with that.   But it is something we should likely note in the release notes.


Dan




> 
> @Team,
> please correct me if I'm wrong
> 
> Freeman
> -------------
> Freeman Fang
> 
> Red Hat, Inc. 
> FuseSource is now part of Red Hat
> Web: http://fusesource.com | http://www.redhat.com/
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: http://weibo.com/u/1473905042
> 
> On 2012-9-29, at 上午5:37, Daniel Kulp wrote:
> 
>> 
>> On Sep 28, 2012, at 5:06 PM, Andreas Pieber <an...@gmail.com> wrote:
>> 
>>> The question is rather. Does asm 4.x break anything? Or is it only its
>>> internal handling?
>> 
>> If I remember correctly, it pretty much breaks a lot of things.   It's mostly SOURCE compatible, but not binary compatible at all.   Code compiled against 3.x won't work with 4.x and vice versa.   CXF switched to using some reflection magic to allow use of either version of ASM.   Kind of crappy, but……..
>> 
>> Dan
>> 
>> 
>> 
>>> 
>>> Kind regards Andreas
>>> On Sep 28, 2012 10:11 PM, "Daniel Kulp" <dk...@apache.org> wrote:
>>> 
>>>> 
>>>> I was doing some testing with the latest Karaf 2.3.0 snapshot and
>>>> discovered that it only includes the 3.3.1 version of ASM.  However, the
>>>> Aries proxy stuff now requires 4.x.    Is that dependency  going to be
>>>> updated?   Should we have both to not break existing things?
>>>> 
>>>> 
>>>> --
>>>> Daniel Kulp
>>>> dkulp@apache.org - http://dankulp.com/blog
>>>> Talend Community Coder - http://coders.talend.com
>>>> 
>>>> 
>> 
>> -- 
>> Daniel Kulp
>> dkulp@apache.org - http://dankulp.com/blog
>> Talend Community Coder - http://coders.talend.com
>> 
> 

-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: ASM version....

Posted by Andreas Pieber <an...@gmail.com>.
well, good question; tbh now ideas what will happen if Aries will use
ASM 4 and e.g. Spring is going to install ASM 3 side by side. In
addition the question is: How much do we like to risk breaking
compatibility between minor releases. As I know my industrial
customers they would rather prefer stability over new features. In
other words, if you upgrade from 2.2.x to 2.3.x basically you want to
adapt nothing in your software; if you need the new features go with
3.0 and the hell of migrating...

Just my 0.02€

Kind regards,
Andreas

On Sat, Sep 29, 2012 at 6:06 AM, Freeman Fang <fr...@gmail.com> wrote:
> Hi Dan,
>
> I think we should be OK to upgrade the asm version, karaf kit include the asm bundle in startup.properties, AFAIK it's only used for the aries.proxy bundle, so if aries.proxy need a higher version of asm, just upgrade asm in karaf should be safe.
>
> If other downstream projects which get deployed into karaf need use older asm version, than they can use older asm bundle in their features.xml.
>
> @Team,
> please correct me if I'm wrong
>
> Freeman
> -------------
> Freeman Fang
>
> Red Hat, Inc.
> FuseSource is now part of Red Hat
> Web: http://fusesource.com | http://www.redhat.com/
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: http://weibo.com/u/1473905042
>
> On 2012-9-29, at 上午5:37, Daniel Kulp wrote:
>
>>
>> On Sep 28, 2012, at 5:06 PM, Andreas Pieber <an...@gmail.com> wrote:
>>
>>> The question is rather. Does asm 4.x break anything? Or is it only its
>>> internal handling?
>>
>> If I remember correctly, it pretty much breaks a lot of things.   It's mostly SOURCE compatible, but not binary compatible at all.   Code compiled against 3.x won't work with 4.x and vice versa.   CXF switched to using some reflection magic to allow use of either version of ASM.   Kind of crappy, but……..
>>
>> Dan
>>
>>
>>
>>>
>>> Kind regards Andreas
>>> On Sep 28, 2012 10:11 PM, "Daniel Kulp" <dk...@apache.org> wrote:
>>>
>>>>
>>>> I was doing some testing with the latest Karaf 2.3.0 snapshot and
>>>> discovered that it only includes the 3.3.1 version of ASM.  However, the
>>>> Aries proxy stuff now requires 4.x.    Is that dependency  going to be
>>>> updated?   Should we have both to not break existing things?
>>>>
>>>>
>>>> --
>>>> Daniel Kulp
>>>> dkulp@apache.org - http://dankulp.com/blog
>>>> Talend Community Coder - http://coders.talend.com
>>>>
>>>>
>>
>> --
>> Daniel Kulp
>> dkulp@apache.org - http://dankulp.com/blog
>> Talend Community Coder - http://coders.talend.com
>>
>

Re: ASM version....

Posted by Freeman Fang <fr...@gmail.com>.
Hi Dan,

I think we should be OK to upgrade the asm version, karaf kit include the asm bundle in startup.properties, AFAIK it's only used for the aries.proxy bundle, so if aries.proxy need a higher version of asm, just upgrade asm in karaf should be safe.

If other downstream projects which get deployed into karaf need use older asm version, than they can use older asm bundle in their features.xml.

@Team,
please correct me if I'm wrong

Freeman
-------------
Freeman Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: http://weibo.com/u/1473905042

On 2012-9-29, at 上午5:37, Daniel Kulp wrote:

> 
> On Sep 28, 2012, at 5:06 PM, Andreas Pieber <an...@gmail.com> wrote:
> 
>> The question is rather. Does asm 4.x break anything? Or is it only its
>> internal handling?
> 
> If I remember correctly, it pretty much breaks a lot of things.   It's mostly SOURCE compatible, but not binary compatible at all.   Code compiled against 3.x won't work with 4.x and vice versa.   CXF switched to using some reflection magic to allow use of either version of ASM.   Kind of crappy, but……..
> 
> Dan
> 
> 
> 
>> 
>> Kind regards Andreas
>> On Sep 28, 2012 10:11 PM, "Daniel Kulp" <dk...@apache.org> wrote:
>> 
>>> 
>>> I was doing some testing with the latest Karaf 2.3.0 snapshot and
>>> discovered that it only includes the 3.3.1 version of ASM.  However, the
>>> Aries proxy stuff now requires 4.x.    Is that dependency  going to be
>>> updated?   Should we have both to not break existing things?
>>> 
>>> 
>>> --
>>> Daniel Kulp
>>> dkulp@apache.org - http://dankulp.com/blog
>>> Talend Community Coder - http://coders.talend.com
>>> 
>>> 
> 
> -- 
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
> 


Re: ASM version....

Posted by Daniel Kulp <dk...@apache.org>.
On Sep 28, 2012, at 5:06 PM, Andreas Pieber <an...@gmail.com> wrote:

> The question is rather. Does asm 4.x break anything? Or is it only its
> internal handling?

If I remember correctly, it pretty much breaks a lot of things.   It's mostly SOURCE compatible, but not binary compatible at all.   Code compiled against 3.x won't work with 4.x and vice versa.   CXF switched to using some reflection magic to allow use of either version of ASM.   Kind of crappy, but……..

Dan



> 
> Kind regards Andreas
> On Sep 28, 2012 10:11 PM, "Daniel Kulp" <dk...@apache.org> wrote:
> 
>> 
>> I was doing some testing with the latest Karaf 2.3.0 snapshot and
>> discovered that it only includes the 3.3.1 version of ASM.  However, the
>> Aries proxy stuff now requires 4.x.    Is that dependency  going to be
>> updated?   Should we have both to not break existing things?
>> 
>> 
>> --
>> Daniel Kulp
>> dkulp@apache.org - http://dankulp.com/blog
>> Talend Community Coder - http://coders.talend.com
>> 
>> 

-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: ASM version....

Posted by Andreas Pieber <an...@gmail.com>.
The question is rather. Does asm 4.x break anything? Or is it only its
internal handling?

Kind regards Andreas
On Sep 28, 2012 10:11 PM, "Daniel Kulp" <dk...@apache.org> wrote:

>
> I was doing some testing with the latest Karaf 2.3.0 snapshot and
> discovered that it only includes the 3.3.1 version of ASM.  However, the
> Aries proxy stuff now requires 4.x.    Is that dependency  going to be
> updated?   Should we have both to not break existing things?
>
>
> --
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
>
>

Re: ASM version....

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
FYI:

https://issues.apache.org/jira/browse/KARAF-1883

Regards
JB

On 09/28/2012 10:10 PM, Daniel Kulp wrote:
>
> I was doing some testing with the latest Karaf 2.3.0 snapshot and discovered that it only includes the 3.3.1 version of ASM.  However, the Aries proxy stuff now requires 4.x.    Is that dependency  going to be updated?   Should we have both to not break existing things?
>
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

Re: ASM version....

Posted by Mark Derricutt <ma...@talios.com>.
ASM 4 is required if you want to generate correct .class files for Java 7 bytecode from memory.

This was one of the problems I encountered sometime ago with the maven-scr-plugin, it used ASM 3.x which generated invalid bind/unbind methods ( or more, methods that didn't pass JDK7's more stricter byte code verifier ).

It's also NOT API compatible from memory - so its not just a version number bump in a pom.

On 29/09/2012, at 8:10 AM, Daniel Kulp <dk...@apache.org> wrote:

> 
> I was doing some testing with the latest Karaf 2.3.0 snapshot and discovered that it only includes the 3.3.1 version of ASM.  However, the Aries proxy stuff now requires 4.x.    Is that dependency  going to be updated?   Should we have both to not break existing things?
> 
> 
> -- 
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
> 


Re: ASM version....

Posted by Peter Velychko <v_...@ukr.net>.
Just a question. ASM has a BSD based license. So what is a problem to
re-package it with the "org.apache.karaf." prefix in package names and keep
it as some kind of "internal" dependency? 
In the case any karaf-based application can use their version of ASM and
karaf will use its own. No "magic" reflection is needed for it.



--
View this message in context: http://karaf.922171.n3.nabble.com/ASM-version-tp4026185p4026199.html
Sent from the Karaf - Dev mailing list archive at Nabble.com.

Re: ASM version....

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Hi,

I upgraded the ASM version (to 4.x) on trunk as it could be used by 
aries proxy (even if it's not necessary, but aries proxy doesn't work 
fine in "standalone").

I think that it makes sense to update to ASM 4.x on karaf-2.3.x branch 
as well as we updated aries proxy.

I will create the Jira and do that.

Regards
JB

On 09/28/2012 10:10 PM, Daniel Kulp wrote:
>
> I was doing some testing with the latest Karaf 2.3.0 snapshot and discovered that it only includes the 3.3.1 version of ASM.  However, the Aries proxy stuff now requires 4.x.    Is that dependency  going to be updated?   Should we have both to not break existing things?
>
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com