Skip to content

Releases: EmbarkStudios/spdx

0.12.0

19 Aug 06:13
Compare
Choose a tag to compare

Added

  • PR#81 resolved #68 by adding support for the WITH [%s"DocumentRef-"(idstring)":"]%s"AdditionRef-"(idstring) syntax. Thanks @weihanglo!

0.11.1

11 Aug 14:33
Compare
Choose a tag to compare

Changed

  • PR#80 changed how Licensee::satisfies works for GNU licenses again, it now requires that the license ids match exactly. This is incredibly pedantic but means it's up to consumers if the want to have a smarter comparison, I just don't want to have to care about GNU licenses, ever.

Fixed

  • PR#80 reverted a change introduced in PR#78 that would auto-fixup GNU licenses to their non-deprecated forms eg. GPL-2.0 => GPL-2.0-only. This is no longer done, resolving #79.

0.11.0

08 Aug 13:00
Compare
Choose a tag to compare

Changed

  • PR#78 removed ParseMode::allow_lower_case_operators, newer revisions of the SPDX spec allow all lower-case operators, making the option pointless.
  • PR#78 added ParseMode::allow_deprecated, which will cause an error if a deprecated license identifier is used, false in LAX and true in STRICT.
  • PR#78 changed the various imprecise names for GPL licenses to be mapped to the non-deprecated -only versions.
  • PR#78 Expression::canonicalize now always changes GNU licenses to be -only or -or-later as the bare identifiers are deprecated.

Added

  • PR#78 added LicenseId::version to retrieve the numeric version of the license if it has one.
  • PR#78 added LicenseId::base to retrieve the base name of the license.
  • PR#78 added gnu_license_id which attempts to retrieve the license id for a GNU license from its base identifier. This retrieves the -only or -or-later license that matches.
  • PR#78 added Licensee::parse_mode, Licensee::parse now forwards to that function with ParseMode::STRICT.
  • PR#78 added Reason::GnuPlusWithSuffix and Reason::DeprecatedLicenseId as errors.

Fixed

  • PR#78 fixed an issue where Licensee::satisfies would not properly allow some licenses if the version was not at the end when using a +, notably the BSD licenses have the version in the middle of the license id.
  • PR#78 fixed the handling of GNU licenses in Licensee::satisfies, at least to my best understanding.
    Licensee GPL-1.0-only GPL-1.0-or-later GPL-2.0-only GPL-2.0-or-later GPL-3.0-only GPL-3.0-or-later
    GPL-1.0-only βœ… βœ… ❌ ❌ ❌ ❌
    GPL-1.0-or-later βœ… βœ… ❌ ❌ ❌ ❌
    GPL-2.0-only ❌ βœ… βœ… βœ… ❌ ❌
    GPL-2.0-or-later ❌ βœ… βœ… βœ… ❌ ❌
    GPL-3.0-only ❌ βœ… ❌ βœ… βœ… βœ…
    GPL-3.0-or-later ❌ βœ… ❌ βœ… βœ… βœ…

0.10.9

12 Jul 10:04
Compare
Choose a tag to compare

Changed

  • PR#74 update SPDX license list to 3.27.0.

0.10.8

31 Dec 05:32
Compare
Choose a tag to compare

Changed

  • PR#74 update SPDX license list to 3.26.0.

0.10.7

15 Nov 10:35
Compare
Choose a tag to compare

Changed

  • PR#72 update SPDX license list to 3.25.0.

0.10.6

31 May 07:56
Compare
Choose a tag to compare

Changed

  • PR#70 update SPDX license list to 3.24.0.

0.10.4

26 Feb 10:32
Compare
Choose a tag to compare

Changed

  • PR#65 update SPDX license list to 3.23.

Release 0.10.3

04 Jan 08:29
Compare
Choose a tag to compare

Changed

  • PR#63 update SPDX license list to 3.22.

Added

  • PR#64 resolved #64 by adding Expression::canonicalize which fixes otherwise valid expressions into a form parsable with ParseMode::STRICT

Release 0.10.2

14 Jul 11:21
Compare
Choose a tag to compare

Changed

  • PR#61 updated the SPDX license list from 3.20 => 3.21.

Fixed

  • PR#60 fixed a few typos.