Eviscape-Legal 2 Followers

for legal stuff relevant to eviscape

Quick Links

View Show Available Profiles

More info: Licence for PyEviscape

Public evis posted on Thu, 16 Jul 2009 by Simon Redfern

I had a meeting with a Dr. Till Jaeger from JBB yesterday who has some experience with open source licenses.

I explained PyEviscape and our aims:
  • We want to open source PyEviscape and modifications made to PyEviscape should be available to the community. (Copy Left)
  • An Application that import modules from PyEviscape should not be "infected" by (inherit) the license for PyEviscape. Thus an Application that use PyEviscape can be commercial / closed source.
  • Other parts of Eviscape (API and System) should not be infected by the PyEviscape license.
  • PyEviscape would often run as server software.
  • PyEviscape is written in Python.
We talked through the differenct licenses starting with BSD / MIT (which do not have "Copy Left").

He suggested that we use the GNU Affero General Public License (AGPL) version 3 with an "additional permissions" statement from us saying that an Application using PyEviscape are not considered a modification of PyEviscape. The GNU AGPL section 7 allows for this.

If we are OK with this, then the license text would read thus:


PyEviscape is Copyright (C) 2009 Music Pictures Ltd. PyEviscape provides functions for interacting with the Eviscape API.

PyEviscape is licensed under the GNU Affero General Public License (AGPL) V3 or any later version with the following additional permissions: "If you write an application using PyEviscape, your Application is not considered a modification of PyEviscape in the meaning of the AGPL section 5. Therefore you do not have to provide the Corresponding Source code for your Application. We consider this a binding legal statement and an additional permission under the meaning of AGPL section 7. For the avoidence of doubt, modifications of PyEviscape itself are considered modifications in the sense the AGPL section 5." Please note that rest of the Eviscape system (API, Web App, Database etc) is not included in this license.

    This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <span class="http-markup"><a href="http://www.gnu.org/licenses/." rel="nofollow">http://www.gnu.org/licenses/.</a></span>

By the way I also found these interesting texts from Lawrence Rosen who has worked as legal council for the Open Source Initiative: The main message is "The GPL is not a disease" i.e. you can't catch it just by sitting next to it. However, I think (and Till Jaeger too) that it makes sense to be explicit. Hopefully this will be clear enough for developers to feel confident.

<span class="http-markup"><a href="http://www.rosenlaw.com/html/GPL.PDF" rel="nofollow">http://www.rosenlaw.com/html/GPL.PDF</a></span>
<span class="http-markup"><a href="http://www.rosenlaw.com/html/GL18.pdf" rel="nofollow">http://www.rosenlaw.com/html/GL18.pdf</a></span>


Update: We decided on MIT in the end.

Original evis: Re: Licence for PyEviscape by Eviscape-Legal 7 years, 4 months ago
    This Evis needs your voice! Please Login to post comments.

    Out of interest, MongoDB is using the AGPL. They have a nice explanation of how they expect it to be used: MongoDB license

    - SimonRedfern (Simon Redfern) 6 years, 11 months ago (Permalink)

    Congrats! :-)

    - tobias (tobias) 7 years, 3 months ago (Permalink)

    OK Guys - Finally we decided MIT!

    Reason - we want PyEviscape to be easily adoptable without developers having to notice, read and understand a modified AGPL. If they see MIT, its just clear.

    - SimonRedfern (Simon Redfern) 7 years, 3 months ago (Permalink)

    @tobias I'm not sure if AGPL considers a comment a "modification". Changing PyEviscape would not force the external App under AGPL - thats the point of the additional permissions bit. But modified PyEviscape would need to be published. Local setup changes would not be included because they are not "public".

    - SimonRedfern (Simon Redfern) 7 years, 3 months ago (Permalink)

    @simonredfern So let me summarize the implication of our "modified version" of AGPL

    What developers can do:

    - Build another software on top of it and he may not realease source code
    - Sell/Redistribute pyEviscape commercially unber AGPL (this will make closed source developer reluctant to use pyEviscape inside there project)

    - Since it has backward competiability with GPL, so GPLv3, LGPL and BSD libs are ok

    What developers must follow

    - Cannot copy even a single line to Non-AGPL code (thats quite lame)
    - Cannot Mix GPLv3 and AGPL code (only libs are allowed)
    - Cannot use GPLv2 libs
    - Provide a download link to modified code.

    BTW pyEviscape uses "simplejson" and "oauth" which are in MIT License so we have to preserve their license.

    Now question is why you want to realease a two file library in AGPL .. ahh because i want changes back ..ahh i want to have network competiable thing .. ahh there is no copyleft in MIT or New BSD (btw why we want copyleft?) .. well being a developer my answer to them is "Who Cares". If you do not agree then write your own.

    Grrr.. Thanks django itself is not in AGPL and most the project they are in AGPL has little or no audiance.

    Regarding publishing whats wrong with github? or any other public repo system(not google code for sure ;)?

    - iapain (iapain) 7 years, 3 months ago (Permalink)

    I think this seems all sound. Maybe "modifications" are covered in the AGPL/GPL? Apart from that, modification can only be something that changes the behaviour of the program, which a comment or local setup specific changes are not. Publishing: Why not directly on eviscape/our servers?

    - stefan (Stefan) 7 years, 3 months ago (Permalink)

    What's a "modification"?

    1. Adding a comment line?
    2. Commenting out some lines inappropriate for my local setup?
    3. Will changing a file force me to make the whole rest of my application open source (or only the parts of pyeviscape that I've changed)?
    4. What if someone wants to have a change he has done merged into the main branch? If we accept that, everything's fine for him. If not, then this is a code modification?

    - tobias (tobias) 7 years, 3 months ago (Permalink)

    @iapain - i think there are good grounds for using the AGPL but we have to use it as above in the text between the lines because this gives the freedom for developers to use it in closed source apps. Next question: where are we going to publish. (Not google code)

    - SimonRedfern (Simon Redfern) 7 years, 3 months ago (Permalink)

    For web applications which needs to deploy on networks surely it make sense to realease code under "AGPL" instead "GPL". However I miss simpleicity of MIT and BSD(modified). We could always add copyleft cluase in MIT license. However if you have decided then i'll realase this code under AGPL 3.0

    - iapain (iapain) 7 years, 3 months ago (Permalink)

    hi @iapain , @tobias , @stefan

    - SimonRedfern (Simon Redfern) 7 years, 3 months ago (Permalink)