Tuesday, June 2, 2009

Google Code and License Conflicts

Until fairly recently, Google Code only supported Subversion code control publicly and Mercurial had to be specifically requested but now, Mercurial or Subversion can be used. Since I am using Mercurial to manage my branch of subprocess, this will make getting feedback on my code from the community much easier thanks to the large number of review features available.

As I was filling out the form to create a code repository, I ran into the issue of code licensing: Python has it's own unique license, the Python License, which is considered compatible with GPL according to the Free Software Foundation. Most of the code I am using comes from activestate.com and as such falls under an MIT license. After contacting the Python-Dev list, I am still at a bit of loss on selecting a license for the Google Code project and what impact the different licenses will have on being able to get my code pushed into the Python core.


  1. I'm just a long time lurker around python development so you should probably get a more definitive answer from somone directly involved with the PSF or at least someone actively involved with core development.

    Having said that, my understanding is that any code needs to be under either the Academic Free license or Apache license. Also you'll need to submit a contributor agreement. More details can be found at http://www.python.org/psf/contrib/

  2. If the code goes into the python stdlib you need a contributor's agreement from the author no matter what licence it is released under. As janzert mentioned the PSF asks for submissions to be under the Apache or Artistic license which are similar to BSD and MIT (i.e. you can do most everything but sue me).

    Until your project gets folded into the stdlib it can be under any license at all. Even if it does go in you can still publish it elsewhere with a license that requires users to wear funny hats - but don't be surprised if they use the version with the Apache license instead *wink*.

  3. You can post a request to place your project code into Public Domain - see Google Code FAQ http://code.google.com/p/support/wiki/FAQ#Why_do_you_only_offer_a_small_set_of_licenses?

    I would like to see the code released ASAP, because it will allow to drag more attention for this issue before any major Python releases.