Did it and sent pull request to Ceki. Heiko
On 2 November 2010 23:27, Hugues Malphettes <[email protected]> wrote: > > > On Tue, Nov 2, 2010 at 2:43 PM, Heiko Seeberger < > [email protected]> wrote: > >> Thank you for reviewing! >> >> If I understand correctly we should relax the versioning policy to >> import ranges from x.y instead of x.y.z, right? IMHO that makes sense. >> An it's easily done: Just a little switch in the config. Let me know >> and I will change it. >> > > That would be the one thing I would change. > Thanks Heiko! > Hugues > > > >> >> Heiko >> >> On Tuesday, November 2, 2010, Hugues Malphettes <[email protected]> >> wrote: >> > Hi Ceki,Thanks for reminding us to review the changes introduced by BND. >> > On Mon, Nov 1, 2010 at 2:16 PM, Ceki Gülcü <[email protected]> wrote: >> > Hello all, >> > >> > I pulled in changes made by Heiko http://github.com/ceki/slf4j/pull/2. >> Here is the version of the MANIFEST file from slf4j-api-1.6.1.jar. >> > >> > Manifest-Version: 1.0 >> > Archiver-Version: Plexus Archiver >> > Created-By: Apache Maven >> > Built-By: ceki >> > Build-Jdk: 1.6.0_16 >> > Bundle-Description: The slf4j API >> > >> > Bundle-Version: 1.6.1 >> > Implementation-Version: 1.6.1 >> > Implementation-Title: slf4j-api >> > Bundle-ManifestVersion: 2 >> > Bundle-SymbolicName: slf4j.api >> > Bundle-Name: slf4j-api >> > Bundle-Vendor: SLF4J.ORG >> > Bundle-RequiredExecutionEnvironment: J2SE-1.3 >> > Export-Package: org.slf4j;version=1.6.1, org.slf4j.spi;version=1.6.1, >> > org.slf4j.helpers;version=1.6.1 >> > Import-Package: org.slf4j.impl;version=1.6.0 >> > >> > Here is the version generated after Heiko's changes have been applied: >> > >> > Manifest-Version: 1.0 >> > Export-Package: org.slf4j.spi;uses:="org.slf4j";version="1.6.2.SNAPSHO >> > T",org.slf4j.helpers;uses:="org.slf4j.spi,org.slf4j";version="1.6.2.S >> > NAPSHOT",org.slf4j;uses:="org.slf4j.helpers,org.slf4j.spi";version="1 >> > .6.2.SNAPSHOT" >> > Ignore-Package: org.slf4j.impl >> > Implementation-Title: slf4j-api >> > >> > Built-By: ceki >> > Tool: Bnd-0.0.357 >> > >> > Bundle-Name: SLF4J API Module >> > >> > Created-By: Apache Maven Bundle Plugin >> > >> > Bundle-RequiredExecutionEnvironment: J2SE-1.4 >> > >> > Bundle-Vendor: QOS.ch >> > Build-Jdk: 1.6.0_16 >> > Bundle-Version: 1.6.2.SNAPSHOT >> > >> > Bnd-LastModified: 1288644768461 >> > Bundle-ManifestVersion: 2 >> > Bundle-License: http://www.opensource.org/licenses/mit-license.php >> > Bundle-Description: The slf4j API >> > Bundle-DocURL: http://www.qos.ch >> > >> > Bundle-SymbolicName: org.slf4j.api >> > Import-Package: org.slf4j;version="[1.6.2.SNAPSHOT,1.7)",org.slf4j.hel >> > pers;version="[1.6.2.SNAPSHOT,1.7)",org.slf4j.spi;version="[1.6.2.SNA >> > PSHOT,1.7)" >> > >> > >> > Admittedly, I am a little lost. The previous MANIFEST file imported >> org.slf4j.impl, whereas the latest MANIFEST does not. Strangely enough, >> org.slf4j.impl is not mentioned at all. >> > Heiko packages org.slf4j.impl as bundle fragments that are hosted by >> org.slf4j.api. >> > >> > In our situation, there must not be more than one provider of >> org.slf4j.impl: this means there must one and exactly one fragment that >> provides org.slf4j.impl. >> > >> > At runtime the fragment classes are part of the classloader of >> org.slf4j.api.This is why org.slf4j.api does not import org.slf4j.impl at >> all. >> > The MANIFEST.MF of org.slf4j.api does look good. >> > >> > It contains a few of extra lines that are read by BND alone: >> Private-Package and Bnd-LastModified for example. >> > >> > >> > The MANIFEST.MF of jcl.over.slf4j (aka jcl-over-slf4j) uses these >> statements: Export-Package: org.apache.commons.logging;version=1.1.1, >> org.apache. commons.logging.impl;version=1.1.1 >> > >> > Import-Package: org.slf4j;version=1.6.2.SNAPSHOT, >> org.slf4j.spi;versio n=1.6.2.SNAPSHOT >> > It will work.The versioning constrain on the import-package is I think >> too much: strictly speaking, the produced fragment is going to work with >> version 1.6 of slf4j. >> > >> > I apologize for sounding picky and in the case where we always build and >> distribute together slf4j-api and jcl-over-slf4j it probably does not matter >> much.If we were to adopt BND to generate the MANIFESTs of logback let's make >> sure that we generate version=1.6 only so that we don't suddenly force >> everyone to upgrade both slf4j and logback at once for no actual reason. >> > >> > >> > Best regards,Hugues >> > >> > >> > >> > >> > In earlier message Heiko wrote: >> > >> >> As all the logging backends are fragments I excluded org.slf4j.impl >> >> package from imported packages. This means you can install the >> >> slf4j-api bundle in an OSGi container successfully without a backend. > >> Not sure whether this is what we want. >> > >> > >> > I think it makes life easier if the slf4j-api bundle can be installed >> without a back-end. However, this is assuming that a desired back-end bundle >> can be installed and successfully bound with slf4j-api. (It is an obvious >> requirement but still may be useful to mention.) >> > >> > This version can be pulled in either from >> http://github.com/weiglewilczek/slf4j (master) or from >> http://github.com/ceki/slf4j (weiglewilczek-master). >> > >> > Your comments are most welcome, >> > >> > -- >> > >> > Ceki >> > _______________________________________________ >> > slf4j-dev mailing list >> > [email protected] >> > http://qos.ch/mailman/listinfo/slf4j-dev >> > >> > >> > >> >> -- >> Heiko Seeberger >> >> Company: weiglewilczek.com >> Blog: heikoseeberger.name >> Follow me: twitter.com/hseeberger >> OSGi on Scala: scalamodules.org >> Lift, the simply functional web framework: liftweb.net >> Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting >> through >> Actors: akkasource.org >> _______________________________________________ >> slf4j-dev mailing list >> [email protected] >> http://qos.ch/mailman/listinfo/slf4j-dev >> > > > _______________________________________________ > slf4j-dev mailing list > [email protected] > http://qos.ch/mailman/listinfo/slf4j-dev > -- Heiko Seeberger Company: weiglewilczek.com Blog: heikoseeberger.name Follow me: twitter.com/hseeberger OSGi on Scala: scalamodules.org Lift, the simply functional web framework: liftweb.net Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors: akkasource.org
_______________________________________________ slf4j-dev mailing list [email protected] http://qos.ch/mailman/listinfo/slf4j-dev
