On 10 November 2011 15:24, John W Ross <[email protected]> wrote: >> >> Re: Utils changes >> >> On 10 November 2011 04:21, David Jencks <[email protected]> wrote: >> > Apparently I did something wrong when testing these changes and >> there seem to be a couple of test problems caused here. >> > >> > 1. A couple of blueprint tests fail with the new tracker. I think >> they are testing blueprint using composite bundles. Since composite >> bundles are a non-standard feature I wonder if it would be plausible >> to have a switch to turn on composite bundles support in recursive >> bundle tracker? >> > >> > 2. Apparently code compiled against R4.3 can't be used with R4.2? >> Compiling aries utils with R4.3 (so the code I added can compile, >> since it uses R4.3 classes) results in code that calls >> Version.compareTo(Version) which results in a NoSuchMethod error >> when called in a R4.2 framework where the method is > Version.compareTo(Object). >> >> This looks like a binary incompatible change was made in the R4.3 spec >> without incrementing the major version of the package (it went from >> 1.5 to 1.6). The R4.2 Version class implements java.lang.Comparable. >> The R4.3 Version class implements java.lang.Comparable<Version> so the >> signature has changed. That's worth opening a bugzilla on >> osgi.org/bugzilla IMHO. > > If I understand correctly, code was compiled against R4.3 (1.6) and those > binaries were then executed on R4.2 (1.5). I think we've reversed the > logic on the binary compatible requirement. Code compiled against R4.2 > (1.5) will run on R4.3 (1.6), which is why a major version increment was > not necessary. I'm not aware of any expectations that code compiled > against a later version must run on an older version.
You make a good point. I too was getting them the wrong way round. I retract what I said ealier! > >> >> > >> > Does anyone have any ideas how to work around these problems? If >> anyone wants to revert my commits while we figure out what to do, go > ahead. >> > >> > thanks >> > david jencks >> > >> > >> > >> > On Nov 9, 2011, at 6:05 PM, David Jencks wrote: >> > >> >> I made a couple changes to utils (issues 777 and 778) to provide >> R43 bundle-to-classloader determination and to make the >> RecursiveBundleTracker work with equinox Region based isolation as >> well as the obsolete composite bundle support. Aries seems to build >> fine for me and I can get the blueprint extender to work in an >> isolated region using this, but I didn't try very hard to see if it >> broke stuff in earlier frameworks. Please let me know if there are > problems. >> >> >> >> The approach I used for the bundle tracker is to register a >> bundle event hook and feed the events to a bundle tracker (code >> copied from felix's bundle tracker). This avoids all bundle event >> filtering. If anyone thinks this approach is inappropriate please >> speak up :-) >> >> >> >> thanks >> >> david jencks >> > >> > >> >
