Hi Guys, I'm following since a while the mailing list and I'm impressed by your pace of work! This is my first contribution. Just some thoughts...
It seems to me that the project can contains 3 levels of codes. The framework itself, of course, which is the main part, some directly related subprojects which are important but not mandatory to use the framework and small contributions in the spirit of a sandbox. One of the key requirements for a framework in my opinion is to provide a great compatibility across releases. A good way to enforce this is to avoid packing with it all needed tools because compatibility problems may show up late in the development cycle or not show up at all. Subprojects are strongly related to the framework but can evolve at a different pace and be handled by different people. They are not mandatory to use the framework. Apache HTTP has by example a lot of modules for this. We can imagine a lot of subprojects like tools (CPE GUI), tutorials, sources, annotators, consumers, Connector for non Java objects (Perl annotators or sources ...)... The sandbox is where I can upload some interesting code without a quality level and support. It's a nice place to get a starting point for some developments that may at some point end into the product or branch into another project. Now if I take my user hat, I really dislike having to download several files and do some configuration to test an open source project! So it makes a lot of sense to have a binary distribution including the framework and at least a reasonable set of sub-projects providing me the capability to start interesting stuff out of the box. This split should be clear in the files organization so it's easy by example to repackage just the framework. I don't feel that the sandbox part should be part of the default distribution. Pascal -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Adam Lally Sent: Thursday, February 01, 2007 1:42 PM To: [email protected] Subject: Re: Writing something about the Sandbox On 2/1/07, Thilo Goetz <[EMAIL PROTECTED]> wrote: > Here's what the Lucene folks say about their sandbox: > > "Lucene project also contains a workspace, Lucene Sandbox, that is open > to all Lucene committers, as well as a few other developers. The purpose > of the Sandbox is to host various third party contributions, and to > serve as a place to try out new ideas and prepare them for inclusion > into the core Lucene distribution. > Users are free to experiment with the components developed in the > Sandbox, but Sandbox components will not necessarily be maintained, > particularly in their current state." > > The Lucene sandbox is part of every Lucene release, it just comes with > this disclaimer. Since we've been modeling our sandbox on theirs, this > is what we're aiming for. I don't think we should add the sandbox to > the first release, but after that, why not. > I did grab the lucene distribution and I do see you are right, there is a contrib folder with the sandbox components. (The quote you posted, to me, doesn't imply that, but I see it's the case.) However, does this always contain ALL sandbox compoments? I see that there are some folders in their sandbox SVN that are not in the contrib directory of the Lucene 2.0.0 release (e.g., db, gdata-server, javascript). So perhaps there is after all a case-by-case decision made on each sandbox component deciding when it is ready to be released? -Adam
