BSD?

29 views
Skip to first unread message

Massimo Di Pierro

unread,
Dec 16, 2010, 7:18:21 PM12/16/10
to web2py-developers
Who here would feel strongly if we move form GPL to a less restrictive license like BSD?

At this time I am not proposing it. I do not think we have to. Yet, I would like to have some opinions.
In particular form people who would be strongly opposed.

Massimo

Thadeus Burgess

unread,
Dec 16, 2010, 7:37:36 PM12/16/10
to web2py-d...@googlegroups.com
What do you want to do.

Do you want people to distribute their applications WITH web2py, or do you want anybody who distributes applications to require end users to download web2py on their own accord?

You can always create a modified version of web2py and release it under a "distribution" license, similar to how DirectX, .NET framework, and others work. Application developers are allowed to only distribute the latest version of the libraries with their code.

As of right now, I strongly oppose to switching to BSD. I can't think of any reason why someone would see GPL and stop looking at the framework right then and there.

--
Thadeus





--
mail from:GoogleGroups "web2py-developers" mailing list
make speech: web2py-d...@googlegroups.com
unsubscribe: web2py-develop...@googlegroups.com
details    : http://groups.google.com/group/web2py-developers
the project: http://code.google.com/p/web2py/
official    : http://www.web2py.com/

Massimo Di Pierro

unread,
Dec 16, 2010, 7:41:32 PM12/16/10
to web2py-d...@googlegroups.com
That is where I stand to but I want to make sure I know what you think too.

Massimo

Anthony

unread,
Dec 16, 2010, 8:21:38 PM12/16/10
to web2py-developers
On Dec 16, 7:37 pm, Thadeus Burgess <thade...@thadeusb.com> wrote:
> As of right now, I strongly oppose to switching to BSD. I can't think of any
> reason why someone would see GPL and stop looking at the framework right
> then and there.

Well these two guys have had problems with actual clients:
https://groups.google.com/group/web2py/msg/ba5277320933a72a
https://groups.google.com/group/web2py/msg/de8b75aa2efe2fa5

So, there's at least the *perception* of legal risk.

Is the primary concern with BSD/MIT the possibility of a commercial
fork? I'd like to know more about that. What are the risks (both in
terms of likelihood of actually happening and potential for harm to
the original project)?

Anyway, as I mentioned before, once you switch to BSD, the cat is out
of the bag, so maybe start with a less severe solution (i.e., clarify
the exception/dual license, and make it more explicit and prominent in
the documentation). It might also help to explicitly solicit concerns/
questions about the license (via a message and contact link/form
wherever the license is displayed) so you can better discover the
extent to which it is a hindrance for potential users. If you get a
steady stream of complaints and concerns like the ones above, then
maybe reconsider the BSD possibility.

Anthony

Bruno Rocha

unread,
Dec 16, 2010, 8:25:28 PM12/16/10
to web2py-d...@googlegroups.com
I do not know too much about licenses and its differences, and I did not read the whole post about it.

But, I have to say what I need to do with web2py, I dont know what license flavour best fits with my needs.

With which license I can do it all?

1. Create web applications and host it, offer this applications as a service 'SaaS' sometines doing some hacks on the source code.

2. Create web applications which I will not host myself, neither offer as a service, but I will sell it as a ready to host application with copyrights to my client.  (i.e a website which my clients will host at their own servers) - The distribution sometimes includes web2py.

3. Create closed source applications (desktop applications based on web2py, yes I do it) sell user license for this application, I already have one simple application which is an 'access control for employees', this app is distributed compiled and I sell user license by account. web2py is distributed intact, just the app is compiled.

4. (for a future project) Create closed source app, which will be released as .exe and .app for the users, its distribution will include web2py inside the executable (and maybe python and other libraries)

On every case may be necessary to hack some web2py code, change it a little and maintain by myself (I did it with some helpers)

I will be ok If the web2py license permits me to do that, and ensures that I'll always have those rights, and also let me make changes to the framework code if I need. (mostly those changes turn out to be contributionsto the project if they are plausible and necessary to all users).

Something wrong?
--

Bruno Rocha
http://about.me/rochacbruno/bio

Massimo Di Pierro

unread,
Dec 16, 2010, 8:29:06 PM12/16/10
to web2py-d...@googlegroups.com
With the current license you can do 1-3 but in case 3  you will have to publish your modifications to web2py (if any).
Not sure about 4 because I do not understand the different with 3.

Bruno Rocha

unread,
Dec 16, 2010, 8:37:29 PM12/16/10
to web2py-d...@googlegroups.com
2010/12/16 Massimo Di Pierro <mdip...@cs.depaul.edu>

With the current license you can do 1-3 but in case 3  you will have to publish your modifications to web2py (if any).
Not sure about 4 because I do not understand the different with 3.

In 3 only my application is closed (have just compiled/static files) in 4 the whole app is distributed in a single executable .exe or .app (web2py, python, pytesser, thesseract and other libraries within)



Massimo Di Pierro

unread,
Dec 16, 2010, 8:40:19 PM12/16/10
to web2py-d...@googlegroups.com
I do not think you can do 4 with the current license.

Anthony

unread,
Dec 16, 2010, 8:45:04 PM12/16/10
to web2py-developers
In 4, if the .exe includes a hacked version of web2py, you might still
be able to distribute as long as you also include the hacked web2py
source (this can be distributed separately, or even linked from a
website). In that case, I assume the web2py commercial exception would
still enable your application to remain closed source. Of course,
IANAL.

Anthony

On Dec 16, 8:37 pm, Bruno Rocha <rochacbr...@gmail.com> wrote:
> 2010/12/16 Massimo Di Pierro <mdipie...@cs.depaul.edu>

Bruno Rocha

unread,
Dec 16, 2010, 8:49:30 PM12/16/10
to web2py-d...@googlegroups.com
What about plugins?

Can I set any license I want to a plugin (even if this plugin uses some slice of web2py code, and other plugin?

Can a plugin be compiled (having models/plugin_xxxxxx.pyc will work?) - I do not want to do it, just to know about.

Massimo Di Pierro

unread,
Dec 16, 2010, 8:58:14 PM12/16/10
to web2py-d...@googlegroups.com
The exception does not say but I have not problem amending to allow it.

Massimo Di Pierro

unread,
Dec 16, 2010, 8:58:30 PM12/16/10
to web2py-d...@googlegroups.com
yes. same as an app.

Bruno Rocha

unread,
Dec 16, 2010, 9:01:24 PM12/16/10
to web2py-d...@googlegroups.com
A brazilian user just asks on web2py-users-brazil group:

from @lucadavilla to brazilian list:
---------
Hi Guys!

I'll release an app as open source:) need help choosing the right license,makes the app is an application based on MVC (generates scaffolds)

I wish that the permit allows people using the app for commercial purposes or otherwise,
they can edit and redistribute the code (always opensource)
and is quoted who initiated the project (I).

Another important point is that the app uses (or may use in future versions)libraries that may be different from the licenses is chosen.



Based on the above what license do you recommend?

-

For those who want to learn more about the app here [1] is a screencast (it is well outdated now, it does not show the generation of reports using the pdflibrary could pyfpdf, but to have the idea what is in the app).

[1] http://vimeo.com/15886413
--------



Bruno Rocha
http://about.me/rochacbruno/bio

Massimo Di Pierro

unread,
Dec 16, 2010, 9:04:04 PM12/16/10
to web2py-d...@googlegroups.com
The critical line in your quote is "(always opensource)".  That means the current license (GPL) is fine.

Anthony

unread,
Dec 16, 2010, 10:23:47 PM12/16/10
to web2py-developers
Maybe we should solicit more use cases along the lines of what Bruno
has listed and then make sure the amended license clearly allows for
whatever use cases we want to support.
> > official    :http://www.web2py.com/- Hide quoted text -
>
> - Show quoted text -

Michele Comitini

unread,
Dec 17, 2010, 6:13:25 AM12/17/10
to web2py-d...@googlegroups.com
I prefer GPL over BSD, it is better suited for projects that are not
backed by a single company, but by
individuals on a voluntary effort.
And for users, meaning people that develop applications on top of
web2py, it grants that they will always
have web2py source years from now. The full code for any version they
have been using.

mic

2010/12/17 Massimo Di Pierro <mdip...@cs.depaul.edu>:

Martín Mulone

unread,
Dec 17, 2010, 8:46:03 AM12/17/10
to web2py-d...@googlegroups.com
To be honest for me we have to move BSD/ MIT, to clear up things,
exceptions confused people. Some people in the list make a good point,
like anthony said. Why the popular frameworks like Django, ROR like
most of frameworks are BSD/ MIT, there are a reason for that I
suppose. For me, adoption of the framework by the people is what make
web2py persist in time, not the gpl. More people, more contributions,
more development. To be honest this is what I think, there are two
things that stop adoption of w2py by the people, one is license is not
clear enough, and the second is that some people see massimo as a
dictator. I'm not agree with the second one, if is massimo is a
dictator why are asking opinion in change license. Perhaps in a future
if we have many thoutsand of users we have a web2py fundation (?).

To me also we need to be competitive, I don't like when I said python
framework, the people said django, what we have better than django?,
than ror, than spring, etc. Is up to massimo to decide what he want an
education or a business framework, because for business pehaps fit
more BSD/MIT lic.

Finally In my case doesn't change anything I'm continue making
contribution if w2p license is GPL,BSD, whatever is open source.


2010/12/16 Massimo Di Pierro <mdip...@cs.depaul.edu>:

> --
> mail from:GoogleGroups "web2py-developers" mailing list
> make speech: web2py-d...@googlegroups.com
> unsubscribe: web2py-develop...@googlegroups.com
> details    : http://groups.google.com/group/web2py-developers
> the project: http://code.google.com/p/web2py/
> official    : http://www.web2py.com/
>

--
My blog: http://martin.tecnodoc.com.ar
My portfolio *spanish*: http://www.tecnodoc.com.ar
Checkout my last proyect instant-press: http://www.instant2press.com

Tiago Henriques

unread,
Dec 17, 2010, 9:24:55 AM12/17/10
to web2py-d...@googlegroups.com
Calling Massimo a dictator is absolute horseshit.

Coming from Django, one of the most attractive points of web2py
(besides all the amazing features) is the fact that it has such a
strong, hardworking, effective leader.

Massimo's efforts to improve web2py and help users are so intense that
sometimes I wonder if he is not actually a collective of programmers
working under a fake name, Bourbaki style :-)

Paraphrasing what he once said, most noteworthy software projects are
the work of one person with a strong, consistent vision.

As opposed to real life, having Benevolent Dictators for Life is
actually OK for open-source projects. Since web2py is GPL'ed anyway,
anyone not happy with this can start a fork.

--Tiago

Jonathan Lundell

unread,
Dec 17, 2010, 11:29:18 AM12/17/10
to web2py-d...@googlegroups.com
On Dec 17, 2010, at 3:13 AM, Michele Comitini wrote:
>
> I prefer GPL over BSD, it is better suited for projects that are not
> backed by a single company, but by
> individuals on a voluntary effort.
> And for users, meaning people that develop applications on top of
> web2py, it grants that they will always
> have web2py source years from now. The full code for any version they
> have been using.

I lean toward GPL, with the provision that the licensor remains Massimo exclusively, so that there's one person who can be flexible in the future as to license and exception terms. (Doing this by committee would be really hard.)

I'm thinking of Linux as a vague analogy, where we have a GPL kernel, and developers can write applications that are independent of that license: nobody argues that you can't run Apache, with its bsd-like license, on Linux without Apache being GPL.

A web2py application ought to be as license-independent of the GPL gluon core as a Linux application is of the GPL Linux kernel. And that means that any code that the application needs (or is intended) to incorporate, like the welcome app, need to be non-GPL.

(Linux also has LGPL libraries. The web2py equivalent might be plug-ins, though I haven't really thought that through.)

At any rate, to the extent that there's confusion on the "commercial exception", I think that if we made clear that the analogy with Linux apps is correct (and I think it is), that gives developers (and lawyers) something they can grasp more easily.

Mariano Reingart

unread,
Dec 17, 2010, 3:03:30 PM12/17/10
to web2py-d...@googlegroups.com
On Fri, Dec 17, 2010 at 1:29 PM, Jonathan Lundell <jlun...@pobox.com> wrote:
>
> (Linux also has LGPL libraries. The web2py equivalent might be plug-ins, though I haven't really thought that through.)

IMHO I think core libraries (i.e, gluon, parts like DAL, HTML helpers,
tools, etc.) should be LGPL, so that they can be "linked" in non-GPL
contexts.
Now being GPL prevent me to use them in commercial project, where I
need closed source distribution.

Best regards,

Mariano Reingart
http://www.sistemasagiles.com.ar
http://reingart.blogspot.com

Bruno Rocha

unread,
Dec 17, 2010, 3:10:50 PM12/17/10
to web2py-d...@googlegroups.com
IMHO I think core libraries (i.e, gluon, parts like DAL, HTML helpers,
tools, etc.) should be LGPL, so that they can be "linked" in non-GPL
contexts.
Now being GPL prevent me to use them in commercial project, where I
need closed source distribution.

Anthony said:

In [packed closed source executable], if the .exe includes a hacked version of web2py, you might still
be able to distribute as long as you also include the hacked web2py
source (this can be distributed separately, or even linked from a
website). In that case, I assume the web2py commercial exception would
still enable your application to remain closed source. Of course

I understood that I can close my app, web2py or its libraries within, and if I distribute a separated version of web2py together.

Not?

Jonathan Lundell

unread,
Dec 17, 2010, 3:28:08 PM12/17/10
to web2py-d...@googlegroups.com
On Dec 17, 2010, at 12:03 PM, Mariano Reingart wrote:
>
> On Fri, Dec 17, 2010 at 1:29 PM, Jonathan Lundell <jlun...@pobox.com> wrote:
>>
>> (Linux also has LGPL libraries. The web2py equivalent might be plug-ins, though I haven't really thought that through.)
>
> IMHO I think core libraries (i.e, gluon, parts like DAL, HTML helpers,
> tools, etc.) should be LGPL, so that they can be "linked" in non-GPL
> contexts.
> Now being GPL prevent me to use them in commercial project, where I
> need closed source distribution.

I don't think you're stopped from doing that, any more than you're stopped from including Linux in a closed-source appliance, if by "linking" you just mean calling in the normal way. It's more like a system call into the kernel than, say, libc.

Or maybe I'm missing something....

Massimo Di Pierro

unread,
Dec 17, 2010, 3:37:41 PM12/17/10
to web2py-d...@googlegroups.com
I think we can all agree on two issues:
1) the current license (GPL + exception) is OK for almost everybody
2) the current license is unclear and it is confused with pure GPL. That is limiting the adoption of web2py. This needs to be addressed,

How about we change the license to

GPL3 + Apache

GPL3 and Apache are compatible (GPL2 and Apache are not). Apache is very similar to BSD but forces users who distribute modified versions to spell in detail the changes they make. That should be sufficient to discourage forks but not to discourage people to use it in commercial products.

Massimo

Anthony

unread,
Dec 17, 2010, 3:42:24 PM12/17/10
to web2py-developers
Well, I suppose the short answer is ask a lawyer. Anyway, here is the
GPL v2:

http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

In particular, it says:

2. You may modify your copy or copies of the Program or any portion of
it, thus forming a work based on the Program, and copy and distribute
such modifications or work under the terms of Section 1 above,
provided that you also meet all of these conditions...

and also says:

3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the
following:

a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections 1
and 2 above on a medium customarily used for software interchange;
or,
b) Accompany it with a written offer, valid for at least three years,
to give any third party, for a charge no more than your cost of
physically performing source distribution, a complete machine-readable
copy of the corresponding source code, to be distributed under the
terms of Sections 1 and 2 above on a medium customarily used for
software interchange; or,
c) Accompany it with the information you received as to the offer to
distribute corresponding source code. (This alternative is allowed
only for noncommercial distribution and only if you received the
program in object code or executable form with such an offer, in
accord with Subsection b above.)

So, it seems you are allowed to modify web2py and distribute a binary
of the modified version, as long as you also distribute the source
code of the modified version (or offer to provide it upon request).

Separately, the web2py license states:

You can distribute web2py app under any license you like as long they
do not contain web2py code.

So, assuming an app built with your modified web2py still counts as a
"web2py app" per the above, then it would seem your web2py app can
still be distributed however you like, even if you have modified the
framework.

So, here's my interpretation. If you modify the web2py framework and
then create an app with the modified framework, you can distribute
your app closed source along with a closed source version of the
framework, but you must also provide the recipient with the source
code of the modified framework. Of course, I could be wrong.

Anthony

Jonathan Lundell

unread,
Dec 17, 2010, 3:45:43 PM12/17/10
to web2py-d...@googlegroups.com
On Dec 17, 2010, at 12:37 PM, Massimo Di Pierro wrote:
>
> I think we can all agree on two issues:
> 1) the current license (GPL + exception) is OK for almost everybody
> 2) the current license is unclear and it is confused with pure GPL. That is limiting the adoption of web2py. This needs to be addressed,
>
> How about we change the license to
>
> GPL3 + Apache
>
> GPL3 and Apache are compatible (GPL2 and Apache are not). Apache is very similar to BSD but forces users who distribute modified versions to spell in detail the changes they make. That should be sufficient to discourage forks but not to discourage people to use it in commercial products.

What's the difference between "GPL3 + Apache" and simply "Apache"?

Massimo Di Pierro

unread,
Dec 17, 2010, 3:47:09 PM12/17/10
to web2py-d...@googlegroups.com
This is also my interpretation.

Massimo

Massimo Di Pierro

unread,
Dec 17, 2010, 3:48:10 PM12/17/10
to web2py-d...@googlegroups.com
Good question. Perhaps should be simply Apache.

Jonathan Lundell

unread,
Dec 17, 2010, 4:01:08 PM12/17/10
to web2py-d...@googlegroups.com
On Dec 17, 2010, at 12:48 PM, Massimo Di Pierro wrote:
>
> Good question. Perhaps should be simply Apache.
>
> On Dec 17, 2010, at 2:45 PM, Jonathan Lundell wrote:
>
>> On Dec 17, 2010, at 12:37 PM, Massimo Di Pierro wrote:
>>>
>>> I think we can all agree on two issues:
>>> 1) the current license (GPL + exception) is OK for almost everybody
>>> 2) the current license is unclear and it is confused with pure GPL. That is limiting the adoption of web2py. This needs to be addressed,
>>>
>>> How about we change the license to
>>>
>>> GPL3 + Apache
>>>
>>> GPL3 and Apache are compatible (GPL2 and Apache are not). Apache is very similar to BSD but forces users who distribute modified versions to spell in detail the changes they make.

I think that's wrong. At least I don't find any language in the Apache License v2.0 that says anything like that. From the FAQ:

> I have made changes to an Apache package and I want to distribute them. Do I need to contribute them to the Apache Software Foundation?
>
> No. You can keep your changes a secret if you like. Maybe your modifications are embarrassing, maybe you'll get rich selling those improvements. Whatever. But please seriously consider giving your changes back! We all benefit when you do.

So Apache may not be what you want.

>>> That should be sufficient to discourage forks but not to discourage people to use it in commercial products.
>>
>> What's the difference between "GPL3 + Apache" and simply "Apache"?
>

Two useful pages:

http://www.apache.org/licenses/GPL-compatibility.html
http://www.apache.org/foundation/licence-FAQ.html

Mariano Reingart

unread,
Dec 17, 2010, 4:15:34 PM12/17/10
to web2py-d...@googlegroups.com
On Fri, Dec 17, 2010 at 5:47 PM, Massimo Di Pierro
<mdip...@cs.depaul.edu> wrote:
> This is also my interpretation.
>
> Massimo
>
> On Dec 17, 2010, at 2:42 PM, Anthony wrote:
>
>> Separately, the web2py license states:
>>
>> You can distribute web2py app under any license you like as long they
>> do not contain web2py code.
>>
>> So, assuming an app built with your modified web2py still counts as a
>> "web2py app" per the above, then it would seem your web2py app can
>> still be distributed however you like, even if you have modified the
>> framework.

No, it not counts as a web2py app.

As far as I now, if gluon is GPL, it cannot be used in proprietary software:
http://www.gnu.org/licenses/why-not-lgpl.html

I'm not talking about a web2py app, nor modifying gluon, just using it
from other programs (in this case, I develop open source libraries and
tools).

Sadly, asking my customers to release they proprietary code as open
source, so they can use my library, is not an option.

Michele Comitini

unread,
Dec 17, 2010, 4:24:10 PM12/17/10
to web2py-d...@googlegroups.com
Mariano,

To solve your problem I think Massimo, being the copyright holder, can
give you a commercial license for what you need.

mic

2010/12/17 Mariano Reingart <rein...@gmail.com>:

Anthony

unread,
Dec 17, 2010, 6:11:28 PM12/17/10
to web2py-developers


On Dec 17, 4:15 pm, Mariano Reingart <reing...@gmail.com> wrote:
> On Fri, Dec 17, 2010 at 5:47 PM, Massimo Di Pierro
>
> > This is also my interpretation.
>
> > Massimo
>
> > On Dec 17, 2010, at 2:42 PM, Anthony wrote:
>
> >> Separately, the web2py license states:
>
> >> You can distribute web2py app under any license you like as long they
> >> do not contain web2py code.
>
> >> So, assuming an app built with your modified web2py still counts as a
> >> "web2py app" per the above, then it would seem your web2py app can
> >> still be distributed however you like, even if you have modified the
> >> framework.
>
> No, it not counts as a web2py app.
>
> As far as I now, if gluon is GPL, it cannot be used in proprietary software:http://www.gnu.org/licenses/why-not-lgpl.html
>
> I'm not talking about a web2py app, nor modifying gluon, just using it
> from other programs (in this case, I develop open source libraries and
> tools).

Yes, I think we were referring to a different case (Bruno's case) --
assuming you were using web2py but merely made some modifications to
it. If you're talking about pulling out components of web2py and using
them in other proprietary software, that may be a different story.

Anthony

Massimo Di Pierro

unread,
Dec 17, 2010, 6:34:14 PM12/17/10
to web2py-developers
Suspending for a second the discussion on what the license allows... here is what I intend to allow (whether properly stated or not):

1) redistribution of modified web2py code with source code
2) redistribution of unmodified web2py with or without source code
3) use and ownership of modified web2py with or without release of source code

this is what I DO NOT intend to allow:

a) redistribution of modified web2py without source code

That means that if a User wants to build a closed source product that uses part of web2py code inside (original or modified) under contract for one client, the client (and the User) should be granted a license to use it but not to distribute it. The User can be paid by the client for the customization work but not for the "sale" of the software since the User does not have the right to sell a modified web2py version unless source code is made public.

Right now this is the only real restriction and we can soften it with the Apache license. The Apache license clearly say we grant a license to use and modify.
Jonathan is right that Apache does not force forks to release source code but forces them to include in the license a clear description of what changed form the original version.

Massimo

Mariano Reingart

unread,
Dec 17, 2010, 6:34:36 PM12/17/10
to web2py-d...@googlegroups.com
@Anthony. no, it is related to Bruno's points 3 and 4

@Michelle, a commercial license is fine as a dual-license business
model, but it is too burdensome on certain ocassions (low budget,
project unpredictability, legal issues, license compatibility, etc.).

I think it is more practical to release some libraries (not the whole
web2py) with a more permissive license (LGPL), specially when there
are other MIT/BSD alternatives with similar features (like SqlAlchemy,
Jinja, etc.), so we are just loosing users here.

LGPL should protect the code like GPL, but it will open it to a wider
audience, letting to choose the application license like now (with no
need of a special exception, whose, IMHO, is very similar to what
already GPL/LGPL say, but with other words, just causing confusion)

Anyway, I think this dual-license issue should be clearly stated
somewhere, look at the mysql site:
http://www.mysql.com/about/legal/licensing/oem/

Also see the drupal FAQ:
http://drupal.org/licensing/faq

Best regards,

Michele Comitini

unread,
Dec 17, 2010, 6:35:43 PM12/17/10
to web2py-d...@googlegroups.com
I think there is no point about this popularity thing. Are you sure
that GPL scares business?
Let's see:
a) *BSD OSes (BSD license)
b) Linux OSes (GPL license)

Number of installations as server os are in favor of b)
Same (even more) on desktop
Embedded or appliances are by far linux based.

These days Google claimed (and I think is true) that every day 300,000
Android based appliances
are sold. Android is a Linux distro and so its kernel is GPL, many
other components are GPL,
and the biggest (and growing) community of developers for mobile is on Android.

IMHO leading in open source software is a matter of hard and serious
work, during the years.
Giving up for a weaker license can give a burst o popularity, but in
environments where people are less
favorable to give back something to the community, so less benefit for
quality of the software.

Said that, many BSD licensed projects are very well done. One is
PostgreSQL that is by far
better than MySQL. And guess what? MySQL is GPL and is much, much more popular.

2010/12/17 Massimo Di Pierro <mdip...@cs.depaul.edu>:


> Who here would feel strongly if we move form GPL to a less restrictive license like BSD?
>
> At this time I am not proposing it. I do not think we have to. Yet, I would like to have some opinions.
> In particular form people who would be strongly opposed.
>
> Massimo
>

Massimo Di Pierro

unread,
Dec 17, 2010, 6:40:20 PM12/17/10
to web2py-d...@googlegroups.com
I think the issue is linking the libraries.

When you use Linux you do not link libraries. Only when you compile programs you do and which libraries you link against becomes important.

One caveat is static linking vs dynamic linking.
http://en.wikipedia.org/wiki/GNU_General_Public_License#Point_of_view:_static_linking_violates_GPL_but_not_dynamic_linking

The way I understand this is that "import" in python is equivalent to dynamic linking - not static linking - and therefore importing does not constitute derivative work.
This is what the web2py license clearly states (as a clarification of our interpretation of the GPL) therefore it does not matter what the license of the libraries is as long as they are NOT distributed together in closed source (unless as expressed by the exception).

Massimo

Martin.Mulone

unread,
Dec 17, 2010, 6:59:31 PM12/17/10
to web2py-d...@googlegroups.com
+1 Agree with that, now I see more clearly. Thanks, now we have to see what license fit there.

Jonathan Lundell

unread,
Dec 17, 2010, 7:28:17 PM12/17/10
to web2py-d...@googlegroups.com
On Dec 17, 2010, at 3:34 PM, Massimo Di Pierro wrote:
>
> Right now this is the only real restriction and we can soften it with the Apache license. The Apache license clearly say we grant a license to use and modify.
> Jonathan is right that Apache does not force forks to release source code but forces them to include in the license a clear description of what changed form the original version.

Where are you reading that, Massimo? I can't find it.

Martin.Mulone

unread,
Dec 17, 2010, 8:16:46 PM12/17/10
to web2py-d...@googlegroups.com

Michele Comitini

unread,
Dec 17, 2010, 8:22:29 PM12/17/10
to web2py-d...@googlegroups.com
the kernel is linux and is GPL


2010/12/18 Martin.Mulone <mulone...@gmail.com>:

Anthony

unread,
Dec 17, 2010, 9:27:53 PM12/17/10
to web2py-developers
On Dec 17, 6:35 pm, Michele Comitini <michele.comit...@gmail.com>
wrote:
> I think there is no point about this popularity thing.  Are you sure
> that GPL scares business?

I don't think we know the true extent (may be minimal), but we do know
of specific cases (pointed out in this discussion) where the license
has been a problem for at least some businesses. That doesn't mean
it's worth worrying about, but it does appear to present at least
somewhat of an obstacle for some potential users (in many cases, it's
probably just confusion or risk aversion rather than any real
technical legal hindrance, but perception is what matters).

> Let's see:
> a) *BSD OSes (BSD license)
> b) Linux OSes (GPL license)
>
> Number of installations as server os are in favor of b)
> Same (even more) on desktop
> Embedded or appliances are by far linux based.

I'm not sure OSes is quite the right analogy. Most linux users are not
developers/businesses using it to create software, but most web2py
users are obviously using web2py precisely to create software. There's
also a much more clean distinction between software running *on* an OS
vs. an application built *with* web2py (in terms of what constitutes a
derivative work).

Regards,
Anthony

Massimo Di Pierro

unread,
Dec 18, 2010, 1:46:16 AM12/18/10
to web2py-d...@googlegroups.com
I read it in various places. For examples here:
http://www.oss-watch.ac.uk/resources/apache2.xml

"all modifications are clearly marked as being the work of the modifier"

Massimo Di Pierro

unread,
Dec 18, 2010, 2:00:42 AM12/18/10
to web2py-d...@googlegroups.com
to save some time, can you email me the code?

Massimo

On Dec 16, 2010, at 6:37 PM, Thadeus Burgess wrote:

What do you want to do.

Do you want people to distribute their applications WITH web2py, or do you want anybody who distributes applications to require end users to download web2py on their own accord?

You can always create a modified version of web2py and release it under a "distribution" license, similar to how DirectX, .NET framework, and others work. Application developers are allowed to only distribute the latest version of the libraries with their code.

As of right now, I strongly oppose to switching to BSD. I can't think of any reason why someone would see GPL and stop looking at the framework right then and there.

--
Thadeus




On Thu, Dec 16, 2010 at 6:18 PM, Massimo Di Pierro <mdip...@cs.depaul.edu> wrote:
Who here would feel strongly if we move form GPL to a less restrictive license like BSD?

At this time I am not proposing it. I do not think we have to. Yet, I would like to have some opinions.
In particular form people who would be strongly opposed.

Massimo
--
mail from:GoogleGroups "web2py-developers" mailing list
make speech: web2py-d...@googlegroups.com
unsubscribe: web2py-develop...@googlegroups.com
details    : http://groups.google.com/group/web2py-developers
the project: http://code.google.com/p/web2py/
official    : http://www.web2py.com/

Massimo Di Pierro

unread,
Dec 18, 2010, 2:00:57 AM12/18/10
to web2py-d...@googlegroups.com
Please ignore my last email!

Jonathan Lundell

unread,
Dec 18, 2010, 2:07:04 AM12/18/10
to web2py-d...@googlegroups.com
On Dec 17, 2010, at 10:46 PM, Massimo Di Pierro wrote:
>
> I read it in various places. For examples here:
> http://www.oss-watch.ac.uk/resources/apache2.xml
>
> "all modifications are clearly marked as being the work of the modifier"

I don't think that means a description. Have a look at the FAQ: http://www.apache.org/foundation/licence-FAQ.html

For example:

> I have made changes to an Apache package and I want to distribute them. Do I need to contribute them to the Apache Software Foundation?
> No. You can keep your changes a secret if you like. Maybe your modifications are embarrassing, maybe you'll get rich selling those improvements. Whatever. But please seriously consider giving your changes back! We all benefit when you do.

The relevant language in the license itself <http://www.apache.org/licenses/LICENSE-2.0.txt> appears to be this:

> 4. Redistribution. You may reproduce and distribute copies of the
> Work or Derivative Works thereof in any medium, with or without
> modifications, and in Source or Object form, provided that You
> meet the following conditions:
>
> (a) You must give any other recipients of the Work or
> Derivative Works a copy of this License; and
>
> (b) You must cause any modified files to carry prominent notices
> stating that You changed the files; and

You have to say *that* the files were modified, but not *how*.

Is that enough?

Anthony

unread,
Dec 18, 2010, 2:00:39 PM12/18/10
to web2py-developers
On Dec 18, 2:07 am, Jonathan Lundell <jlund...@pobox.com> wrote:
> On Dec 17, 2010, at 10:46 PM, Massimo Di Pierro wrote:
>
> > I read it in various places. For examples here:
> >http://www.oss-watch.ac.uk/resources/apache2.xml
>
> > "all modifications are clearly marked as being the work of the modifier"
>
> I don't think that means a description. Have a look at the
> FAQ:http://www.apache.org/foundation/licence-FAQ.html
>
> For example:
>
> > I have made changes to an Apache package and I want to distribute them. Do I need to contribute them to the Apache Software Foundation?
> > No. You can keep your changes a secret if you like. Maybe your modifications are embarrassing, maybe you'll get rich selling those improvements. Whatever. But please seriously consider giving your changes back! We all benefit when you do.
>
> The relevant language in the license itself <http://www.apache.org/licenses/LICENSE-2.0.txt> appears to be this:
>
> >    4. Redistribution. You may reproduce and distribute copies of the
> >       Work or Derivative Works thereof in any medium, with or without
> >       modifications, and in Source or Object form, provided that You
> >       meet the following conditions:
>
> >       (a) You must give any other recipients of the Work or
> >           Derivative Works a copy of this License; and
>
> >       (b) You must cause any modified files to carry prominent notices
> >           stating that You changed the files; and
>
> You have to say *that* the files were modified, but not *how*.
>
> Is that enough?

Is this the only substantive difference (that we care about) between
Apache and BSD? If so, I wonder if Apache would be worth it (over
BSD), given that BSD is so much simpler to understand (only 222 words,
vs. 1406 for Apache). Not saying we should go with BSD -- just
wondering if Apache is really any better.

Anthony

Massimo Di Pierro

unread,
Dec 21, 2010, 12:19:41 AM12/21/10
to web2py-d...@googlegroups.com
Continuing our discussion about the license and in light of the need to include Apache code in web2py (for example new shell), I cam across this chart:

PastedGraphic-1.tiff

Massimo Di Pierro

unread,
Dec 21, 2010, 12:37:34 AM12/21/10
to web2py-d...@googlegroups.com
Follow up ... Notice that this change (GPL2->LGPL3) would make web2py 1.91 incompatible what its previous versions.
What does it mean?

- Nothing for creators of apps. It has the same affect as the current exception.

- Nothing for contributors since they are bound to the "web2py license agreement" which means they retain the same rights they gave me on their contributions. (although honestly most of the contributions only make sense within web2py).

- It may affect developers who have forked web2py in the past. If they want to incorporate new code from 1.91 they would be bound by LGPL3 and not by GPL2. Since they forked before, they had to release their software under GPL2 and they may have linked to other GPL2 software. If they use web2py libraries without modifications they can still continue to use the GPL2 license for their part of the work. The only real concern is if they have modified the web2py code AND they have released the final product under GPL2. In this case they would have to change the license to LGP3 or GPL3 or they would not be able to incorporate new features from 1.91. To my knowledge anyway, nobody is in this category.

This last case shows a problem with the current (strong copyleft) license. It binds developers so much that they may think it is a good idea to make their own web2py libraries instead of contributing improvements to the "official" branch. By going to LGPL we would free of them of the "strong copyleft" requirement as a reward for not changing the web2py libraries. This is actually good because it may result in less forking (not that forking has a been a problem) and more contributions and improvements.

massimo


On Dec 20, 2010, at 11:19 PM, Massimo Di Pierro wrote:

> Continuing our discussion about the license and in light of the need to include Apache code in web2py (for example new shell), I cam across this chart:
>
>

> I really like this chart. The more I look at it, the more I think web2py should be LGPLv3. This is why:
>
> - wherever you start (except GPL), the arrows point to LGPL. That means we will be able to use MIT/BSD + Apache code if we need. And this is important because Google releases code under Apache.
> - It not a strong copyleft but a weak copyleft. That is equivalent to the current exception: apps that merely use the modules are not bound by the license. A derivative set of libraries would be bound to be the same license and people would be able to create a derivative framework.
> - It would allow users to import the DAL in other python program and this would make it much more popular.
> - It is clear. Everybody should understand it.
>
> I think this will give more freedom and very much the same protection we currently enjoy.
>
> Anybody against?
>
> Massimo
>
>
>
> <PastedGraphic-1.tiff>--

Anthony

unread,
Dec 21, 2010, 1:58:31 AM12/21/10
to web2py-d...@googlegroups.com
I'm still digesting this, but wasn't there some doubt about whether the LGPL really allows exceptions for web2py applications. To me, the LGPL sounds like it would except web2py applications, but Branko concluded otherwise in discussion with the FSF:
 
 
To me, it wasn't quite clear whether the FSF was really saying the LGPL wouldn't be appropriate (legally), or if they were just pushing their preference for the stronger GPL (plus the possibility of a dual license for commercial use if necessary). I would think a web2py application would qualify as an "Application" or "Combined Work" under the LGPL.
 
Actually, as I think about web2py applications, I'm wondering if they would even be covered by the GPL, assuming they are distributed alone, without the web2py framework. A web2py application is a separate set of files that doesn't (necessarily) include any web2py code. If you pack up a web2py application by itself without including the framework with it, would even the GPL apply in that case? In other words, for the GPL (or LGPL) to apply at all, would you have to package your web2py app with the framework?
 
Anthony

Massimo Di Pierro

unread,
Dec 21, 2010, 2:25:42 AM12/21/10
to web2py-d...@googlegroups.com
I think I agree with Branko and I do not understand what the FSF guy said. I am reading the email and document over and over and I do not see the problem. They want to push strong copyleft. We do not and in fact we already have the exception.

They also want to push the interpretation that linking creates derivative work (even in the case of dynamic liking, which is the case of interpreted languages). This is what makes the current license incompatible with Apache (and may prevents us from including code provided by Google)  and it is what makes some users uneasy with doing "from gluon.tools import *".

I think the LGPL3 fixes exactly our problems.

Massimo

Michele Comitini

unread,
Dec 21, 2010, 4:41:34 AM12/21/10
to web2py-d...@googlegroups.com
http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License

+1 for the LGPL, I agree that clears some of the gray areas, and leave
people free to distribute their programs WITH web2py as is.

mic


2010/12/21 Massimo Di Pierro <mdip...@cs.depaul.edu>:

Jonathan Lundell

unread,
Dec 21, 2010, 4:32:15 PM12/21/10
to web2py-d...@googlegroups.com
On Dec 20, 2010, at 9:19 PM, Massimo Di Pierro wrote:
>
> Continuing our discussion about the license and in light of the need to include Apache code in web2py (for example new shell), I cam across this chart:
>
>
> I really like this chart. The more I look at it, the more I think web2py should be LGPLv3. This is why:
>
> - wherever you start (except GPL), the arrows point to LGPL. That means we will be able to use MIT/BSD + Apache code if we need. And this is important because Google releases code under Apache.
> - It not a strong copyleft but a weak copyleft. That is equivalent to the current exception: apps that merely use the modules are not bound by the license. A derivative set of libraries would be bound to be the same license and people would be able to create a derivative framework.
> - It would allow users to import the DAL in other python program and this would make it much more popular.
> - It is clear. Everybody should understand it.
>
> I think this will give more freedom and very much the same protection we currently enjoy.
>
> Anybody against?

LGPL3 seems like a good choice.

Reply all
Reply to author
Forward
0 new messages