On 5/4/2010 8:56 AM, Software Improvements gn-devel wrote:
I think I need to clarify my position.
thanks Richard,
my eagerness to raise and above all empty my glass with you, and everybody else involved in this, is increasing as this thread grows.
In order not to have too much hangover, I hope that we can finish
this soon, though.
Basically you have two concerns.
The first one concerns the uploading of a binary form of a AGPL covered work to the svn repository.
This is discussed in paragraph 6 of the APGL. Various means exist to provide access to the original source.
The best way would probably be a upload the source to some server and
add a note to GN pointing out where it can be downloaded as a shortime fix till the patches are in the jzkit trunk.
I want to point out that GN does not become part of JZKIT in the sense of the AGPL by publishing the sourcecode along with GN, since it would not be one compilation unit.
As you write, we are or can can become compliant easily.
Your second point concerns the compatibility of AGPL and GPL.
The compatibility of AGPL with the GPL does not depend on whether
the AGPL programm has been modified or not, since it stays AGPL anyway.
So if you agreed (reluctantly) at the time, you should still be agreeing (reluctantly of course (-: ).
However, it is true that the GN license status is not clear. It says
GPLv2 or any more recent one, which made me assume that it is basically also GPLv3 and thus compatible with AGPL.
I then pondered identity problems of the sort if Geonetwork could be too things at the same time. Although not (yet) being a philosopher I came to the conclusion that such schizophrenia would be possible, provided that there was no library in the source being only compatible with GPLv2.
I thus embarked on a seemingly endless journey through library sourecodes, checking the license status of the libraries contained in the trunk, of which I would everybody like to invite to check the result in the attached file.
The ones of which I could find out the status are all compatible to GPLv3. (under the conditions below)
There are some BSD style licenses. The original BDS license is not compatible to any GPL, but nowadays a modified version is used and compatible. Since they seem to have been compatible with GPLv2 they are then also compatible with v3.
Then there are some other licenses, which basically say you can do anything as long as the copyright stays in. I assume that these are
ok for v3 if they were ok with v2, since there is no explicit mention of the GPL.
Libs worth checking might be:
cog-jblobus-1.2 (license change from GTPL to apache)
and all stuff coming from sun/oracle like (jsr*,jts,persistence)
I could not find out anything about:
xsd-2.2.2.jar
ecore-2.2.2.jar
gt-*.jar
can someone help?
let us know what you think.
best regards
Timo
What I _want_ to be able to do is:
1. Raise a glass to you and Simon, toast you saying,
"Bravo! Job well done! However did you manage it?",
give you three cheers and a pat on the back,
etc. etc.
2. Breathe a sigh of relief that there can not ever be
any lawsuits, irrespective of whatever (considerable)
goodwill there currently is.
I have been trying to make sure that I can do (2) before
I do (1). I think I am close, but not there yet.
I freely concede that it is possible that what
I want is unreasonable, irrational, or even that I am plain
wrong in regards to the facts - in which case,
I hope someone will let me know.
Or perhaps I should just concede, skip (2) and go
straight to (1).
But you have now brought us back to the bigger issue you raised
earlier and which I missed at the time. I treat that
issue separately below after the "==========".
Timo Pröscholdt wrote:
> did you get my email from 15/2/2010 regarding compatibility
> between AGPL and GPL? I discussed the subject in it, answering the
> issues you are raising and did not get any reply at the time.
Well, that's not _completely_ fair. (Just a little bit).
In your e-mail of 2010-02-15 (which I certainly did read at the time)
you wrote:
> I checked this before working with JZKit3 and I did not consider it an
> issue, since it is all about code modification. If the AGPL code was
> modified, this would be a different issue, but we only link to it.
...
and on 2010-02-16 you wrote:
> Where it gets problematic is if we took sourcecode from AGPL copylefted
> JZKit, modified it and included it into the geonetwork source.
At the time I saw no indication that any modifications
to the JZKit code were required. I also accepted (with reservations)
your statements about how the AGPL would not spread to other
parts of the GN code.
But we're now in a situation where the JZKit code _has_ been
modified and the modified code has been "conveyed" in the sense
of the AGPL.
> I'm not sure how familiar you are with the AGPL. I cannot claim
> to be an expert, but to me it seems that the AGPL is all about "making
> available network services" using a AGPL covered software. By checking
> in the binary Simon is not making available a network service.
> It would be the responsibility of whoever RUNS the sandbox code PUBLICLY
> to make available the corresponding code.
But that's not what the licence _says_!
Clause 13 says "... if you modify the Program, your modified version
must prominently offer all users interacting with it remotely through
a computer network (if your version supports such interaction) an
opportunity to receive the Corresponding Source of your version by
providing access to the Corresponding Source from a network server at no
charge, through some standard or customary means of facilitating copying
of software."
The licence thus places responsibility for compliance on the person(s)
_modifying_ the software. That _may_ also apply to someone who
merely _deploys_ the previously-modified software (depending
on how the definition of "modify" given in the licence is
interpreted - it is not crystal clear to me),
but it certainly does not _exclude_ the
person(s) making the change(s) to the code in the first place.
I do find the wording of clause 13 very strange, especially
the part that refers to making available the source code to linked
libraries covered by GPL. Nevertheless, the responsibility for
compliance is placed squarely on the shoulders of
person(s) _modifying_ the software.
This particular issue is a storm in a teacup, isn't it?
Compliance in this case would be very easy to achieve, and
the licence leaves a lot of flexibility. I imagine it could be done by
adding a paragraph of instructions to the "About" page describing
how to download the source code from sourceforge, or it could
be a direct link to a zip file, or by some other means that achieves
the same result.
> Since we are working on merging Simons patches into the jzkit trunk I
> dont see a big issue here. As soon as they are in everybody can run
> BlueMestNet code, before you'd have to make available the code to
> whoever accesses your installation.
I accept that you offer that explanation in all sincerity,
but it's hard to accept such a line of argument in this case
without knowing the process and timeframe for it to happen.
This is a case of an open-source project using open-source libraries,
and I think this is _precisely_ where the community has to be
_seen_ to be taking compliance seriously if we expect the
"big companies" also to take it seriously.
==========
And now to the point from your e-mail of 2010-02-16 which I
didn't respond to previously but which now needs some community
discussion:
> AFAIK Geonetwork is GPL v2. Is GPL v2 compatible with GPL v3? Not in
> general, but since in GN it says "“version 2 or later,”, we should be
safe.
> http://www.fsf.org/licensing/licenses/gpl-faq.html#v2v3Compatibility
>
> I think this is the sticky point. If this provision holds we are ok,
> otherwise we might have to think about making GN GPL v3 or using a non
> AGPL jzkit version (see below).
The GN source code does have comments saying GPLv2 or
"any later version".
It does appear to me that it will be necessary to change the
GN licence to GPLv3. JZKit3 is, in effect, under GPLv3
(plus Affero clause) and the corresponding box in the table
(row "I want to use a library under: GPLv3",
column "I want to release a project under: GPLv2 or later")
says "OK if you upgrade to GPLv3".
But that's not the end of the story - upgrading the GN
licence to GPLv3 might make it _not_ OK to link with
any other libraries released _only_ under GPLv2.
(See the entry in
row "I want to use a library under: GPLv2 only",
column "I want to release a project under: GPLv3 or later",
which says "NO".)
Are there any such libraries in GN?
(attachments)
licenses.txt (2.36 KB)