20080820 Wednesday August 20, 2008

OpenSolaris - Open & Getting More So

Holding up the Sky

I got a comment this week from someone asking why OpenSolaris didn't accept commits from community members. The fact that a reasonably well-informed individual could ask that question suggests there are some misunderstandings that need clearing up. I've been investigating the current status.

Already Open

First, the question itself is wrong - OpenSolaris accepts commits from outside Sun. Both Subversion and Mercurial have been available on OpenSolaris.org for a couple of years now so that projects there can host their source code. Indeed, one of the significant new-code updates in OpenSolaris - the integration of ksh93 - was accomplished mainly by Roland Mainz and his sponsor April Chin with support from a range of community members, who put in a huge amount of work and achieved integration into the OpenSolaris code in build 72 in August 2007.

Multiple projects are being developed in the open on the site with source code repositories out there using one or the other. Individual projects grant commit rights using whatever method they choose. There are multiple examples of non-Sun people having direct commit rights on projects - one that comes to mind is Shawn Walker on IPS before he became a Sun employee.

Sponsor System

While many of the code groupings in OpenSolaris (consolidations) have been publishing source code for a while now, the version control systems (VCS) used by some of the OpenSolaris consolidations are still inside the Sun intranet at the moment, having completed their move from the old closed system to Mercurial (with much help from Richard Lowe). Changes to those must be done by a Sun volunteer - this is what the sponsor program is for. The outside person can work on the code (for the "ON" consolidation, using the Mercurial mirror repository that has been available for about a year), make changes, test, do a code review in the open, and so on.

The Sun sponsor is needed to update the bug tracking system inside Sun (although we now have a public one that many projects are using) and do the actual putback. The request-sponsor table lists the 600+ contributions offered to date via the sponsor program and their status (~43% integrated; ~20% in progress).

In Transition

ON has transitioned to using Mercurial as its VCS as of this month. The tentative date for ON to move its VCS to the public internet is the end of October. Companion CD and JDS have been outside since 2006 (they use Subversion). G11N has been outside since 2007 (they use Mercurial). The new install code has been outside since it started; it's been developed in the open. Publications has a gate with source for four books so far (opened this Spring). I didn't get status reports from some of the consolidations, most importantly SFW, and I think it's important from them to move as soon as possible.

Summary

Get an OpenSolaris CD

The summary is that OpenSolaris has been accepting commits from community members pretty much from the moment the source was published. Of necessity there were Sun employees inserted in the flow when the project opened because the VCS in use was closed source and internal. In the years since then the process has gradually been getting easier and easier. Having the gates internal to Sun certainly hasn't helped growth, but it was unavoidable. That is finally getting fixed.

The Sponsor system itself is actually a great idea and is now working better than ever before. Like Jim I think it should be retained - and populated with experienced developers regardless of employer - even when all the gates are publicly accessible. Even in the world of Linux it's hard to get started as a contributor and the Sponsor system provides a great pathway.


technorati del.icio.us digg slashdot

links for 2008-08-20

  • O'Brien to push high-performance for Sun
    Congratulations to Gary, who I know completely "gets it" when it comes to open source. A clever new role created by the Sun Australia MD.
  • August 2008 Board Report - Apache Roller
    "Why did they fork? I believe this is due to the instability that was caused by our Apache policy required move away from Hibernate/LGPL and move to OpenJPA. Those two high-profile projects are still not using our new implementation and perhaps cannot justify the time required to get back in sync with main-line Roller development." Makes me wonder if Apache was the right choice after all.
  • Sun Downloads
    New download page looks much better.
  • Sun Support Center
    New page for support provides easy links to Red Hat, VMWare and more as well as to Sun support. The team has concentrated a huge amount of information into one page, quite an achievement.
  • No-Fly? No Worries, You Can Sue in Trial Court
    Want to bet how long it will be before this "loophole" is sealed with tar?
  • Open JDK in Debian's Lenny -- Distro Grandslam!
    Three years ago Java was MIA in GNU/Linux, despite the best efforts of the fine Classpath folks. Today, "Can't Swing a Dead Cat without hitting a Distro with OpenJDK Included" according to Barton. Amazing. That's the power of choosing to go with the grain of the community. We chose the community's license, worked with the communities' packagers and the rest is history.
  • Editorial: Collaboration is the new revolution
    The Guardian suggests that open source and collaborative engagement have come of age, and that the reactionaries in UK government who side with the safe past are "analogue politicians in a digital age".
  • Yup, manually posted.

technorati del.icio.us digg slashdot