pull: Update to the SPDX License List 3.0
authorW. Trevor King <wking@tremily.us>
Sat, 30 Dec 2017 00:04:43 +0000 (16:04 -0800)
committerW. Trevor King <wking@tremily.us>
Sat, 30 Dec 2017 23:54:32 +0000 (15:54 -0800)
commit954a34683ec9b421d0189a10bf3218ba6dc96bd1
tree75fde6181da644c7173d733c17d801a17b860961
parent472c802f5446e478acfcfa1b8870fe9fbfad105c
pull: Update to the SPDX License List 3.0

As released 2017-12-28 [1].  The main change here is that the same
license can now have multiple license-list entries, with each entry
covering a common grant.  I think conflating licenses with grants is
unfortunate, and would have preferred continuing to handle version
grants with the + license expression operator [2] and possibly a new
"-ONLY" operator [3].  But that ship seems to have sailed.

This commit converts the SPDX identifiers into lists, so we can list
as many identifiers as we want for each FSF license ID.  It also adds
property docs, so folks understand the significance of the identifier
ordering.

Even before 3.0, the SPDX used per-grant identifiers for MPL-2.0 and
MPL-2.0-no-copyleft-exception [4].  But my reading of [5] gives me the
impression that the FSF's GPL-compatibility ruling hinges on section
3.3, which is what the MPL-2.0-no-copyleft-exception is turning off.
So I've left mapping at FSF MPL-2.0 -> SPDX MPL-2.0, instead of
growing it to [MPL-2.0, MPL-2.0-no-copyleft-exception].

I cheat a bit on the fsf-list-practical link, because the FSF hasn't
put an anchor on that header.  Instead, I'm using the first entry
underneath the header.

[1]: https://github.com/spdx/license-list-XML/releases/tag/v3.0
[2]: https://spdx.org/spdx-specification-21-web-version#h.jxpfx0ykyb60
[3]: https://lists.spdx.org/pipermail/spdx-legal/2017-August/002126.html
     Subject: Re: minutes, summary, next steps
     Date: Thu, 17 Aug 2017 14:37:22 -0700
     Message-ID: <20170817213722.GK23356@valgrind.tremily.us>
[4]: https://github.com/spdx/license-list-XML/issues/441
[5]: https://www.gnu.org/licenses/license-list.html#MPL-2.0
README.md
pull.py