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]

Reply via email to