harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geir Magnusson Jr <g...@pobox.com>
Subject Re: Contributing SableVM?
Date Wed, 22 Mar 2006 19:21:26 GMT
Hey, +1 from me, but this comes as no surprise, I am sure.

We have a couple of things to think about here.

First, I'm going to assume that you will have no problem in getting

a) permission from all contributors to re-license under the Apache License
b) hopefully an ICLA from each contributor
c) if copyright is held by your employer (the university) a CCLA

The last element might be the most time consuming.  However, our CCLA is 
commonly accepted by the likes of IBM and Intel, so I don't believe the 
university attorneys will have any issues.

We also have other process items which you may or may not be aware of 
over and above the standard Apache process - the so-called Authorized 
Contributor Questionnaire (ACQ) and the Bulk Contribution Checklist 
(BCC).  The former is a kind of "inventory" we take of each contributor 
to assess where they may have been exposed to code for which such 
exposure might lead to problems for our codebase if they contributed. 
The latter is something that you would fill out to account for ACQs of 
contributors and such for the software you are donating.  Please review 
and ask any questions here.

Second, we need to discuss here in Harmony the approach we want to take 
with adopting the community of committers.  We have many people here 
that are not committers that have been working hard earning commit 
status, so we need to be careful not to discourage anyone.

On the other hand, to me, when someone brings a large chunk of software 
with the intention of continuing to work on it in a community, that 
shows a reasonable amount of commitment, one of the things we look for 
in committers.  What we don't know are technical competency of the 
people, and how they "fit" into the community, both in working with 
others as well as "alignment of vision".

Possibilities :

1) Donate the code, submit patches, earn commit.

2) Donate the code, and some number of people come in with it with 
commit granted to  the "sableVM" part of the repository, and interaction 
with the other parts of the codebase are done via patch until earned. 
All existing committers have full access, but simple manners would 
dictate we wouldn't go barging into code we don't understand.

3) Donate the code, some # of people come in w/ full commit.

My personal preference is #2, #1, #3.  While I don't like balkanization 
of #2, but it has some balance to it - people don't just get full commit 
by bringing some code, but still have to earn ot.  Yet, they continue to 
work on the code they know.  I like #3 the least, because we have others 
in the community working hard to earn their full commit and it is 
something to be earned...

Comments all?

geir




Etienne Gagnon wrote:
> Hi Harmony developers,
> 
> So, you might have heard of unofficial rumors of potential collaboration
> between the Harmony project and the SableVM project. Here's a message I
> sent lately on the SableVM mailing list:
>  http://sablevm.org/lists/sablevm-devel/2006-March/000608.html
> 
> To summarize the public and private replies I got to this message: the
> prospect of establishing a strong collaboration was met with great
> enthusiasm.
> 
> I did not want to get into official talks with the Harmony project
> before I could make sure that we wouldn't run into license problems.
> So, I started been working hard to get the permission of current and
> past SableVM developers to get their permission to change the license
> and (possibly) execute a software grant.  So, I have tracked down all
> the 27 developers that have contributed code or patches to SableVM, in
> the development trunk or in any other development branch or sandbox.  As
> of this morning, I had received the consent of 18 developers to change
> the license of SableVM.  The following email details the distribution of
> the developers that have not yet replied to my request email (as of
> yesterday evening):
>  http://sablevm.org/lists/sablevm-devel/2006-March/000614.html
> 
> Now that licensing seems not to be an issue anymore, I would like to
> propose a close collaboration between our two projects.  So, let me
> shortly present SableVM.
> 
> SableVM is a project that I started during my Ph.D. studies within the
> Sable research lab at McGill university.  From the beginning, its goal
> was to build a free/open-source virtual machine that could achieve two
> things:
> 1- be usable in the "real world" outside of academia,
> 2- be a research vehicle to within the Java optimization framework of
>    our lab (which includes, among other things, Soot).
> 
> These two objectives are still the guiding our development.  Now, if I
> am right, "1-" is perfectly in line with the objectives of the Harmony
> project.  Furthermore, the Harmony project already accepted the JCVM
> which shares many design features with SableVM (object layout, etc.)
> 
> SableVM has been and is being worked on by many students to develop
> non-trivial components.  Among interesting components:
> - JVMDI & JDWP  -> debugging with Eclipse works
> - user class loaders
> - loading constraints
> - robust verifier
> - generational, partly incremental GC
> - etc.
> Many of these features are not yet integrated in our trunk, as we have
> strict rules on only integrating robust code into our trunk, so that our
> software remains usable by our users.
> 
> What I would like to propose, is to contribute our stable, end-user
> targeted trunk version to the Harmony project.  This would probably
> allow for a merge of the JCVM and SableVM development efforts (and who
> knows, maybe other contributed VMs eventually?), and help provide a more
> complete and robust J2SE environment.
> 
> We would also contribute other modules, either with the initial
> submission, or later when they stabilize.  So, the
> development/collaboration model that I propose would is as follow:
> 
> 1- Day to day development and maintenance of the user targeted VM code
>    happens within the Harmony repository.  SableVM contributors must
>    abide by Harmony rules to contribute to this so-called "SableVM
>    trunk".
> 
> 2- Research and development of trunk-breaking features by SableVM
>    contributors continues within the SableVM repository, as not to
>    pollute the Harmony svn with random code.  Contribution back to the
>    SableVM trunk (within the Harmony svn) must happen under Harmony
>    rules.
> 
> Of course, we are very open to other proposals.  I am quite excited
> about this.  How about you?
> 
> Cheers,
> 
> Etienne
> 


Mime
View raw message