xBOUT icon indicating copy to clipboard operation
xBOUT copied to clipboard

License should be the same as BOUT-dev?

Open TomNicholas opened this issue 6 years ago • 9 comments

Presumably we should change the licence on this repo (from Apache) to the same GNU one that BOUT-dev has?

TomNicholas avatar Dec 10 '18 13:12 TomNicholas

BOUT++ is LGPL, I think for historical reasons... I think the preference for new code would be GPLv3 (see HERMES, SD1D, STORM), unless we want to include any code that's not GPLv3-compatible.

johnomotani avatar Dec 10 '18 13:12 johnomotani

There is some discussion of the compatibility of LGPL and Apache licenses here: https://opensource.stackexchange.com/questions/5664/linking-from-lgpl-2-1-software-to-apache-2-0-library

I don't think it's necessary to change the license; the xBOUT library reads the data from BOUT++, so is not really part of the same code.

Personally I'd be quite happy with LGPL, but it might be good if we kept PlasmaPy in mind. That library is under 3-clause BSD. Sorry to add another possibility, but it seems like Apache is compatible with BSD (https://softwareengineering.stackexchange.com/questions/40561/is-bsd-license-compatible-with-apache).

On balance I think sticking with Apache is probably best, followed by maybe BSD, followed by LGPL. Of course I am not a lawyer...

bendudson avatar Dec 10 '18 14:12 bendudson

It's true that most physics models have been put under GPL licenses, but these are more like finished codes which should be forced to be open (I think). There is an argument that library code like this should have a more permissive license to enable wider use.

bendudson avatar Dec 10 '18 14:12 bendudson

BOUT++ LGPL so that if you dynamically link against it your code doesn't have to also be LGPL, e.g. as an optional plug-in.

I'd be happy with LGPL for xBOUT, but sticking with Apache is also acceptable.

ZedThree avatar Dec 10 '18 14:12 ZedThree

This should probably be resolved before #6 is done.

rdoyle45 avatar Dec 12 '19 16:12 rdoyle45

Note that including boutcore could cause that it needs to be (L)GPL ...

dschwoerer avatar Dec 12 '19 16:12 dschwoerer

Sorry, should correct that. It doesn't need to be (L)GPL, but it needs to be compatible with GPL, if we want to provide a close coupling between boutcore and xbout, because in that case the GPL license from fftw will apply to BOUT++, making the compiled BOUT++ GPL, and that requires xbout to be GPL as well.

dschwoerer avatar Dec 13 '19 13:12 dschwoerer

@bendudson suggested sticking with Apache, but if David is right and the compiled version of BOUT++ is under the GPL we would have to change to a GPL compatible license. Is this the case? Any thoughts @ZedThree @johnomotani @TomNicholas ?

rdoyle45 avatar Dec 14 '19 02:12 rdoyle45

According to this and this ASL-2.0 is compatible with GPL v3.

I think GPL is great because it ensures not only that xBOUT itself is and stays free software, but also can encourage other projects to pick a free license as well. Of course, there is the potential of conflicting, free licenses ...

dschwoerer avatar Dec 15 '19 19:12 dschwoerer