Bnd does validation, but it is not clear if it would catch this since it isnt error to have an attribute named version, but this is a somewhat common mistake so it would make sense to check for it.
-- Sent from my phone, please excuse my brevity. Martijn van Iersel <[email protected]> wrote: Richard, thank you so much for spotting this! I could have been staring at this for months without finding the problem. For the future, it might be handy to have some sort of bundle validator, to check bundles against the specifications, and help solve problems like this. Do you know if such a thing exists? Martijn On 15/09/11 17:16, Richard Hall wrote: > First, let me say that this works on the trunk build of the Felix > framework (3.3.0-SNAPSHOT), which you can grab from the Apache Maven > snapshot repository. However, it is still not going to be 100% correct. > > The reason why it works on the trunk framework is I fixed a bug in > filter creation that was incorrectly throwing IllegalArgumentExceptions > when some strings contained non-escaped parentheses characters, when it > reality the non-escaped parentheses characters were acceptable. This was > wrong in 3.2.2 and I fixed it in trunk. So that's why it works now. > > The reason it is not 100% correct still, though, is that it didn't dawn > on me when looking at the metadata below that the Require-Bundle header > has been specified incorrectly. It should not be using "version", it > should be using "bundle-version" as the matching attribute. That's what > uncovered this bug in the framework. > > If "bundle-version" is used then the attribute correctly gets converted > to a version range and you won't run into the parentheses bug, thus it > should start working on 3.2.2 too...and actually working correctly, > since right now it is treating "version" as just a string with a value, > not a version range. > > -> richard > > > On Wed, Sep 14, 2011 at 10:47 AM, Richard Hall <[email protected] > <mailto:[email protected]>> wrote: > > If you just try to install the bundle manually, does it still fail? > > If so, privately email me the bundle and I'll look at it. If not, > maybe you can tell me how to recreate the issue. > > -> richard > > On Wed, Sep 14, 2011 at 10:30 AM, Martijn van Iersel > <[email protected] <mailto:[email protected]>> wrote: > > Here is the MANIFEST.MF from the bundle > org.apache.batik.transcoder.__jar. I see nothing wrong with it... > > Or is it possible that the error is in a different bundle? The > error report mentioned org.apache.batik.transcoder.__jar... > > > Manifest-Version: 1.0 > Implementation-Vendor: The Apache Software Foundation > (http://xmlgraph > ics.apache.org/batik/ <http://ics.apache.org/batik/>;) > Bundle-Localization: plugin > Bundle-__RequiredExecutionEnvironment: J2SE-1.3 > Bundle-SymbolicName: org.apache.batik.transcoder > Require-Bundle: > org.apache.batik.bridge;__version="[1.7.0,1.8.0)",org.ap > ache.batik.dom;version="[1.7.__0,1.8.0)",org.apache.batik.__dom.svg;versi > on="[1.7.0,1.8.0)",org.apache.__batik.ext.awt;version="[1.7.0,__1.8.0)",o > rg.apache.batik.svggen;__version="[1.7.0,1.8.0)",org.__apache.batik.util; > version="[1.7.0,1.8.0)",org.__apache.batik.xml;version="[1.__7.0,1.8.0)" > Export-Package: > org.apache.batik.transcoder;__version="1.7.0",org.apache > .batik.transcoder.image;__version="1.7.0",org.apache.__batik.transcoder.i > mage.resources;version="1.7.0"__,org.apache.batik.transcoder.__keys;versi > on="1.7.0",org.apache.batik.__transcoder.print;version="1.7.__0",org.apac > he.batik.transcoder.svg2svg;__version="1.7.0",org.apache.__batik.transcod > er.wmf;version="1.7.0",org.__apache.batik.transcoder.wmf.__tosvg;version= > "1.7.0" > Bundle-Version: 1.7.0.v200903091627 > Bundle-Vendor: %providerName > Bundle-Name: %pluginName > Build-Id: 20080106-110642-EST (cam [Linux 2.6.22.8 i386, Java > 1.3.1_19 > -b03]) > Implementation-Title: Batik transcoder > Implementation-Version: 1.7+r608262 > Import-Package: org.w3c.dom.svg;version="[1.1.__0,1.3.0)" > Bundle-ManifestVersion: 2 > > -- > Martijn > > On 14/09/11 17:19, Richard Hall wrote: > > Just a guess, but you forgetting to put quotes around the > version range in > your manifest file? You must specify version ranges with > quotes, like: > > Import-Package: foo; version="[1.0.0,2.0.0)" > > -> richard > > > >_____________________________________________ > To unsubscribe, e-mail: users-unsubscribe@felix.__apache.org > <mailto:[email protected]> > For additional commands, e-mail: [email protected] > <mailto:[email protected]> > > >

