I suspect 90% of you have been through
this before, and already follow our advice, that since ICU4J has their
own system for numbering versions, that its recommended people specify
only a "minimum" requirement (and, I know many still specify
3.x.x or 4.x.x). We know that team works hard to maintain API compatibility
... even though you can't tell it from their version numbering.
But if any of the other 10% of you still
specifying a "maximum" (which we do recommend in nearly all other
cases) you may need to remove or adjust it.
And for the one percent of you who want
to stubbornly continue to use 50.x.x, remember that ICU4J is one of the
rare cases of an Orbit bundle that has to be a singleton. So, we need to
This probably effects far fewer people,
but is a much larger, and "breaking" change. Not "API breakage",
no change to your code, but to your MANIFEST.MF file. We recently found
out (thanks Mat) that the "third party" project (objectweb ASM)
had (last release, which we skipped) started to "break up" their
one jar into 6 smaller ones and, even, provide their own OSGi bundles.
So the "5.0.1" version that has been in Orbit for a month or
so did not follow their pattern, and in fact, could conflict with it "in
the wild", so we felt we had to change and follow their pattern --
just to be good citizens, if nothing else ... but in some cases, will allow
tiny fraction of savings in size. Unfortunately, they choose to leave "org.objectweb.asm"
as one of the smaller bundles (so we could not use that as an "umbrella
bundle", reexporting the smaller pieces) so anyone who "requires"
that specific bundle, as some have for years and years, will likely get
compile errors on the new "5.0.1" due to missing classes, and
you will have to add which ever of additional org.objectweb.asm.xxxxx bundles
you need. See the Orbit download page for complete list of 6, and/or see
for the discussion and resolution of the issue.