W. Trevor King:
> Is this proposal different from [1]? The only think I can see is that the old
> “GPL-2.0 by itself is unclear” issue is now being explicitly embraced (while
> [1]
> listed it as a potential issue).
>
> Also, do we have a preferred phrasing for a grant like:
>
> This program is free software: you can redistribute it and/or modify
> it under the terms of the GNU General Public License as published by
> the Free Software Foundation, either version 2 of the License, or
> (at your option) version 3 of the License.
>
> Will that be:
>
> a. GPL-2.0-only OR GPL-3.0-only
The "ONLY" would be an operator, so I'd expect to see:
(GPL-2.0 ONLY OR GPL-3.0 ONLY)
That is pretty clear.
> b. GPL-2.0 OR GPL-3.0
That would be ambiguous as written, under the current proposal, but there's a
simple fix that your question raises.
We haven't written the specifics yet, but if ONLY is an operator, we could
define it to mean "all the licenses on the left-hand-side *only* allow those
specified versions". If we defined it that way, then this could be written as:
(GPL-2.0 OR GPL-3.0) ONLY
I think *that* way of writing it is extremely clear; you don't have to know
SPDX to figure that one out. That's probably the clearer way of writing this
case, if we allow it.
Note that in most cases with the GPL we don't need this at all; usually
licenses are "GPL-2.0+" or "GPL-3.0+". But clearly it's important to be able
to capture the other cases.
> * Add fields to the license metadata and the license-list's XML for
> “compatible with -only”, “compatible with +”, etc. That would allow
> us to report NPL-1.0-only as nonsensical and GPL-2.0 as ambiguous
> (because it would allow both -only and +).
Not a bad idea. More generally, hints to help detect bad information could be
useful. I know the FSF is concerned about identifying "ambiguous cases", so if
there was a standard rule for identifying them, that might make them happier.
Note: the "ambiguous" case doesn't necessarily mean it's not *possible* to
figure it out, just that whoever is *reporting* the information (often a tool)
doesn't know more. It may be truly ambiguous (perhaps even the copyright
holder doesn't know!). However, the problem is that we all must depend on
tools to get things done, and tools often just don't have the ability to
determine if something is "only" or "or later".
Aside: We should all strive to get authors to be clearer, but at this point I'm
trying to get authors to clearly state a license at *all*. Getting copyright
holders to state "only" or "or later" is a degree of specificity that I often
don't see :-(. If SPDX can at least make it easier to see when we don't know
(yet), that'd be a big help.
> * Add a ‘PROXY {TEXT}’ operator for the GPL-3.0's proxy clause [3].
> This would be on the same footing as -only and +.
Handling arbitrary text embedded in a license expression is suddenly more
complicated & doesn't seem terribly useful. If I need to know who the proxy
is, I'll need to read the license in more detail anyway. The larger SDPX
format can handle some of that too, once you've read the license in detail.
If you simply want to show that there *is* an identified proxy, I guess I can
see that being useful. Can we handle that as an exception, e.g., "GPL-3.0 WITH
PROXY"? I don't know if we should do that, but if we do, I think some more
general mechanism to summarize things (like that) would be better.
--- David A. Wheeler
_______________________________________________
Spdx-tech mailing list
[email protected]
https://lists.spdx.org/mailman/listinfo/spdx-tech