I would like to provide a Cygwin package for license-expression Python package to do SPDX licence checks, developed by the same team doing SPDX-toolkit for SPDX, using the same current data, by and working with Fedora folks et al.
Description: Python utility library to parse, compare, simplify and normalize license expressions (such as SPDX license expressions). License: Apache-2.0 For more information see the project home pages: https://github.com/nexB/license-expression https://pypi.org/project/license-expression It is in PyPI and packaged by major Linux and BSD distros, and Msys2: https://repology.org/project/python:license-expression/versions Attached cygport and at: https://cygwin.com/cgit/cygwin-packages/playground/commit/?id=3626386b10c967f780547d1703ad23bd50f6331a package job (without tests): https://cygwin.com/cgi-bin2/jobs.cgi?id=8210&srcpkg=playground&user=Brian+Inglis log at: https://github.com/cygwin/scallywag/actions/runs/9293093201 The package installs and runs using PoC script attached in spdx-license-expression.py hooked into /usr/share/cygport/lib/pkg_pkg.cygpart by the license hint addition patch attached. I also ran a test of the Python script and module against all package source cygport files declaring licences which I maintain or ever looked at, including a git/cygwin-packages/*.cygport download from 2023-02, showing the results in the attached log. I also attempted to trap the exceptions in the script, but that does not seem to work in any documented obvious manner, but I do not know enough Python to address this fully. If someone else who knows python cared to adopt and improve this in a more normal manner, and incorporate this more smoothly into cygport, we could all appreciate that. Alternatively, some candid comments and frank feedback might allow me to do so! ;^> Recent changes: v30.3.0 - 2024-03-18 This is a minor release without API changes: - Use latest skeleton - Update license list to latest ScanCode and SPDX 3.23 - Drop support for Python 3.7 v30.2.0 - 2023-11-29 This is a minor release without API changes: - Use latest skeleton - Update license list to latest ScanCode and SPDX 3.22 - Add Python 3.12 support in CI v30.1.1 - 2023-01-16 This is a minor dot release without API changes - Use latest skeleton - Update license list to latest ScanCode and SPDX 3.20 v30.1.0 - 2023-01-16 This is a minor release without API changes - Use latest skeleton (and updated configure script) - Update license list to latest ScanCode and SPDX 3.19 - Use correct syntax for python_require - Drop using Travis and Appveyor - Drop support for Python 3.7 and add Python 3.11 in CI v30.0.0 - 2022-05-10 This is a minor release with API changes - Use latest skeleton (and updated configure script) - Drop using calver - Improve error checking when combining licenses Attached: python-license-expression.cygport spdx-license-expression.py cygport-lib-pkg_pkg-cygpart-spdx-license-expression-check.patch spdx-license-expression-test.log