On 27 Sep 2012, at 21:33, Olivier Lamy wrote: > Hi, > Good news. > > 2012/9/27 Stuart McCulloch <[email protected]>: >> Hi folks, >> >> Just wanted to give an update regarding the status of >> http://eclipse.org/sisu/ as it's been a while(!) since we started the move. > Yup a while. >> >> [ Sisu is a container built on Guice that supports and extends JSR330, and >> can mimic Plexus - it's used by Maven3 runtime ] >> >> The initial code-contribution has been fully approved, updated to use a >> simpler build, and tagged as 0.0.0.M0 ;) >> >> Yesterday I tagged and released sisu-2.3.1: >> >> >> http://search.maven.org/#artifactdetails%7Corg.sonatype.sisu%7Csisu-inject-bean%7C2.3.1%7Cbundle >> >> http://search.maven.org/#artifactdetails%7Corg.sonatype.sisu%7Csisu-inject-plexus%7C2.3.1%7Cbundle >> >> This is based on the tagged Eclipse/Sisu 0.0.0.M0 source, automatically >> fetched and repackaged back to the old namespace. >> The goal of this release was to validate the initial contribution, and >> provide a route to get (future) bugfixes to old Sisu clients. >> >> The actual differences from 2.3.0 to 2.3.1 are minor: >> >> * fix for a missing JarFile.close when scanning certain "file:" classpath >> entries >> * support for injecting the containing BundleContext when running inside >> OSGi >> * sisu-guice dependency bumped up to 3.1.2 > > Perso I'd like we don't use a fork of guice. > What is the status of that, when will that be possible ?
All outstanding patches have been reported upstream and are listed here with their associated issue number: https://github.com/sonatype/sisu-guice/tree/master/PATCHES The SISUFY patch just updates the GAV, etc. to make it sisu-guice hence it has not been pushed upstream :) Most patches are enhancements and are not required to run Sisu - although you might encounter deadlocks without the fix for issue 183. Stock Guice uses a global static lock for all singletons, which is not helpful when you have Plexus-like injection and lifecycles, especially with multiple injectors in the same JVM - whereas Sisu-Guice uses a per-singleton lock approach with additional synchronization at the container/lifecycle layer as required. Unfortunately there's been some pushback to removing this global static lock in the upstream code, so personally I'd still recommend Sisu-Guice when running Sisu... you also get a slightly faster release cycle ;) The major blocker to using the official Guice binary is a release with the new ProvisionListener API (already in Guice trunk for a while) that lets us fully support Plexus lifecycles. > >> >> I also ran the Maven ITs against this release to verify. >> >> Still plenty left to do on the roadmap >> (http://wiki.eclipse.org/Sisu/Roadmap) - including cleanup of the Sisu >> API/SPI to make it more reusable and less tied to Guice for the future. >> >> If anyone has questions, ideas, or wants to help out then they're very >> welcome (see support / developers links on the main page) otherwise I'll >> send the occasional note to keep everyone in the loop. >> >> -- >> Cheers, Stuart >> >> Begin forwarded message: >> >>> From: Stuart McCulloch <[email protected]> >>> Date: 25 September 2012 22:39:00 GMT+01:00 >>> To: [email protected] >>> Subject: Initial contribution milestone (0.0.0.M0) >>> >>> Hi folks, >>> >>> Since the two main contributions were approved: >>> >>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=372081 >>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=385803 >>> >>> and the nightly builds were in a good state: >>> >>> https://hudson.eclipse.org/hudson/job/sisu-inject-nightly/10/ >>> https://hudson.eclipse.org/hudson/job/sisu-plexus-nightly/17/ >>> >>> I decided to tag our first (baseline) milestone: >>> >>> >>> http://git.eclipse.org/c/sisu/org.eclipse.sisu.inject.git/tag/?id=milestones/0.0.0.M0 >>> >>> http://git.eclipse.org/c/sisu/org.eclipse.sisu.plexus.git/tag/?id=milestones/0.0.0.M0 >>> >>> The major difference between this and the original (pre-Eclipse) codebase >>> is the move to "org.eclipse.sisu" as the primary package and the new >>> Tycho-driven build. >>> >>> To prove this was indeed the case I reworked the original Sisu build to >>> take this milestone and repackage the code back to the original >>> "org.sonatype..." packages: >>> >>> >>> https://github.com/sonatype/sisu/blob/master/legacy/containers/sisu-inject-bean/pom.xml >>> >>> https://github.com/sonatype/sisu/blob/master/legacy/containers/sisu-inject-plexus/pom.xml >>> >>> I then verified the binaries, sources, and javadoc were sufficiently >>> similar to the (pre-Eclipse) 2.3.0 release and tagged this build in the old >>> repository as sisu-2.3.1. >>> >>> This should give us a firm foundation as we work on improving the API/SPI. >>> >>> -- >>> Cheers, Stuart >>> >>> PS. There are plenty of tasks in the backlog if people would like to help >>> out and learn more about the Sisu codebase: >>> >>> >>> https://bugs.eclipse.org/bugs/buglist.cgi?resolution=---&classification=Technology&query_format=advanced&component=Inject&component=Plexus&product=Sisu >>> >>> ;) >>> >> > > > > -- > Olivier Lamy > Talend: http://coders.talend.com > http://twitter.com/olamy | http://linkedin.com/in/olamy > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
