I found github/nexB/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.
Successful attempt to package Python license-expression (without tests):
https://cygwin.com/cgi-bin2/jobs.cgi?id=8210
log at:
https://github.com/cygwin/scallywag/actions/runs/9293093201
cygport attached and at:
https://cygwin.com/cgit/cygwin-packages/playground/commit/?id=3626386b10c967f780547d1703ad23bd50f6331a
The package installs and runs using PoC attached in spdx-license-expression.py
script hooked into /usr/share/cygport/lib/pkg_pkg.cygpart 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!
;^>
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry
#|/usr/bin/cygport
# python-license-expression.cygport - Python license-expression Cygwin package
build control script definitions
inherit python-wheel
NAME=python-license-expression
VERSION=30.3.0
RELEASE=1
BASE=${NAME#python-}
CATEGORY=Python
SUMMARY="Python license expression utility library"
DESCRIPTION="Python utility library to parse, compare, simplify and normalize
license expressions (such as SPDX license expressions)."
ARCH=noarch
LICENSE=Apache-2.0
LICENSE_SPDX="SPDX-License-Identifier: $LICENSE"
# SPDX-License-Identifier: Apache-2.0
LICENSE_URI="NOTICE apache-2.0.LICENSE"
DOCS="
license-expression.ABOUT
AUTHORS.rst CHANGELOG.rst CODE_OF_CONDUCT.rst README.rst
$LICENSE_URI
"
#!/usr/bin/python
"""spdx-license-expression.py - validate SPDX licence expression
Usage: spdx-license-expression.py <SPDX-License-Identifier Expression>
Author: Brian Inglis <brian.ing...@systematicsw.ab.ca>
"""
from license_expression import get_spdx_licensing
import sys
def main(args):
if len(args) != 1:
print("usage: " + sys.argv[0] + " <SPDX-License-Identifier Expression>",
file=sys.stderr)
return 1
licensing = get_spdx_licensing()
expression = args[0]
errs = licensing.validate(expression).errors
#ExpressionInfo(
# original_expression='... and MIT and GPL-2.0+',
# normalized_expression=None,
# errors=['Unknown license key(s): ...'],
# invalid_symbols=['...']
#)
for e in errs:
print(e, file=sys.stderr)
if len(errs) >= 1:
return 2
if __name__ == "__main__":
sys.exit(main(sys.argv[1:]))
--- origsrc/lib/pkg_pkg.cygpart.orig 2023-03-08 06:07:57.000000000 -0700
+++ src/lib/pkg_pkg.cygpart 2024-05-29 14:18:46.534998000 -0600
@@ -625,6 +641,7 @@ _EOF
fi
if [ -n "${LICENSE}" ]
then
+ spdx-license-expression.py "${LICENSE}" || true
cat >> ${distdir}/${PN}/${PN}-${PVR}-src.hint
<<-_EOF
license: ${LICENSE}
_EOF
$ for licp in $(grep -l '^LICENSE=.\+$' */*.cygport)
do
pkg=${licp%/*}
cp=${licp#*/}
cd $pkg/
eval $(cygport $cp vars LICENSE)
echo $pkg $cp "$LICENSE"
spdx-license-expression.py "$LICENSE" && \
echo SPDX licence validated: "$LICENSE"
cd -
done
a2ps a2ps.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
asr-manpages asr-manpages.cygport Authors
Unknown license key(s): Authors
bash-completion bash-completion.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
bash-completion bash-completion-spec.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
bind bind.cygport MPL-2.0 AND ISC AND MIT AND BSD-3-Clause AND BSD-2-Clause
SPDX licence validated: MPL-2.0 AND ISC AND MIT AND BSD-3-Clause AND
BSD-2-Clause
bison bison.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
ca-certificates ca-certificates.cygport Mozilla Public Licence 2.0
Unknown license key(s): Mozilla Public Licence 2.0
calm calm.cygport MIT
SPDX licence validated: MIT
c-ares c-ares.cygport MIT
SPDX licence validated: MIT
coreutils coreutils.cygport GPL-3.0-or-later AND GFDL-1.3-or-later
SPDX licence validated: GPL-3.0-or-later AND GFDL-1.3-or-later
cpuid cpuid.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
cpuid cpuid-spec-fedora.cygport GPLv2+
Unknown license key(s): GPLv2+
cpuid cpuid-spec-opensuse.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
curl curl.cygport curl
SPDX licence validated: curl
curl curl-spec-fedora.cygport MIT
SPDX licence validated: MIT
curl curl-spec-opensuse.cygport curl
SPDX licence validated: curl
curl mingw64-i686-curl.cygport curl
SPDX licence validated: curl
curl mingw64-x86_64-curl.cygport curl
SPDX licence validated: curl
cygport t.cygport GPL
Unknown license key(s): GPL
cygwin cygwin.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
dash dash.cygport BSD-3-Clause AND GPL-2.0-or-later
SPDX licence validated: BSD-3-Clause AND GPL-2.0-or-later
dateutils dateutils.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
dialog dialog.cygport LGPL-2.1-only
SPDX licence validated: LGPL-2.1-only
diffstat diffstat.cygport MIT-CMU
SPDX licence validated: MIT-CMU
diffutils diffutils.cygport GPL-3.0-or-later AND GFDL-1.3-or-later
SPDX licence validated: GPL-3.0-or-later AND GFDL-1.3-or-later
expat expat.cygport MIT
SPDX licence validated: MIT
fontconfig fontconfig.cygport MIT/PD/UCD
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
778, in validate
parsed_expression = self.parse(expression, strict=strict)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
540, in parse
tokens = list(self.tokenize(
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
604, in tokenize
for token in tokens:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
997, in replace_with_subexpression_by_license_symbol
for token_group in token_groups:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
936, in build_token_groups_for_with_subexpression
tokens = list(tokens)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
598, in <genexpr>
tokens = (t for t in tokens if t.string and t.string.strip())
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
922, in build_symbols_from_unknown_tokens
for symtok in build_token_with_symbol():
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
902, in build_token_with_symbol
toksym = LicenseSymbol(string)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
1214, in __init__
raise ExpressionError(
license_expression.ExpressionError: Invalid license key: the valid characters
are: letters and numbers, underscore, dot, colon or hyphen signs and spaces:
'MIT/PD/UCD'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/BWI/bin/spdx-license-expression.py", line 33, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/BWI/bin/spdx-license-expression.py", line 20, in main
errs = licensing.validate(expression).errors
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
781, in validate
expression_info.invalid_symbols.append(e.token_string)
AttributeError: 'ExpressionError' object has no attribute 'token_string'
fortune-mod fortune-mod.cygport BSD-4-Clause
SPDX licence validated: BSD-4-Clause
funny-manpages funny-manpages.cygport Authors
Unknown license key(s): Authors
gawkextlib gawkextlib.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
gcl gcl.cygport LGPL-2.0-or-later AND GPL-1.0-or-later AND MIT-Modern-Variant
AND LOOP
SPDX licence validated: LGPL-2.0-or-later AND GPL-1.0-or-later AND
MIT-Modern-Variant AND LOOP
gcl gclisp.cygport GPL-1.0-or-later
SPDX licence validated: GPL-1.0-or-later
GeoIP GeoIP.cygport LGPL-2.1-or-later
SPDX licence validated: LGPL-2.1-or-later
GeoIP-database GeoIP-database.cygport CC-BY-SA-4.0
SPDX licence validated: CC-BY-SA-4.0
getent getent.cygport LGPL-2.1-or-later
SPDX licence validated: LGPL-2.1-or-later
gettext gettext.cygport GPL-3.0-or-later AND LGPL-2.1-or-later AND
GFDL-1.3-or-later AND MIT
SPDX licence validated: GPL-3.0-or-later AND LGPL-2.1-or-later AND
GFDL-1.3-or-later AND MIT
gnutls gnutls.cygport LGPL-2.1-or-later AND GPL-3.0-only AND GFDL-1.3-only
SPDX licence validated: LGPL-2.1-or-later AND GPL-3.0-only AND GFDL-1.3-only
gpgme gpgme.cygport GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
SPDX licence validated: GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
grap grap.cygport BSD-2-Clause
SPDX licence validated: BSD-2-Clause
grep grep.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
groff groff.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
gsasl gsasl.cygport LGPL-2.1-or-later AND GPL-3.0-or-later AND GFDL-1.3-or-later
SPDX licence validated: LGPL-2.1-or-later AND GPL-3.0-or-later AND
GFDL-1.3-or-later
gtk-doc gtk-doc.cygport GPL-2.0-only AND GFDL-1.1-only
SPDX licence validated: GPL-2.0-only AND GFDL-1.1-only
guile3.0 guile3.0.cygport GPL-3.0-only
SPDX licence validated: GPL-3.0-only
gzip gzip.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
help2man help2man.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
htop htop.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
jq jq.cygport MIT AND CC-BY-3.0 AND dtoa AND ICU
SPDX licence validated: MIT AND CC-BY-3.0 AND dtoa AND ICU
last-resort-font last-resort-font.cygport OFL-1.1
SPDX licence validated: OFL-1.1
libevent libevent.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
libgcrypt libgcrypt.cygport LGPL-2.1-or-later AND GPL-2.0-or-later AND
(GPL-2.0-only OR BSD-3-Clause) AND BSD-3-Clause
SPDX licence validated: LGPL-2.1-or-later AND GPL-2.0-or-later AND
(GPL-2.0-only OR BSD-3-Clause) AND BSD-3-Clause
libhsts libhsts.cygport MIT BSD-3-Clause
Invalid symbols sequence such as (A B) for token: "BSD-3-Clause" at position: 4
libidn libidn.cygport LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND GFDL-1.3-or-later
SPDX licence validated: LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND GFDL-1.3-or-later
libidn2 libidn2.cygport LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
SPDX licence validated: LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
libmetalink libmetalink.cygport MIT
SPDX licence validated: MIT
libpsl libpsl.cygport MIT
SPDX licence validated: MIT
libssh2 libssh2.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
libunistring libunistring.cygport (LGPL-3.0-or-later OR GPL-2.0-or-later) AND
(GFDL-1.2-no-invariants-or-later OR GPL-3.0-or-later)
SPDX licence validated: (LGPL-3.0-or-later OR GPL-2.0-or-later) AND
(GFDL-1.2-no-invariants-or-later OR GPL-3.0-or-later)
libvpx libvpx.cygport BSD-3-Clause AND
LicenseRef-Google-WebM-Additional-IP-Rights-Grant-Patents
Unknown license key(s):
LicenseRef-Google-WebM-Additional-IP-Rights-Grant-Patents
libwebp libwebp.cygport BSD-3-Clause AND
LicenseRef-Google-WebM-Additional-IP-Rights-Grant-Patents
Unknown license key(s):
LicenseRef-Google-WebM-Additional-IP-Rights-Grant-Patents
m4 m4.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
make make.cygport GPL-3.0-only
SPDX licence validated: GPL-3.0-only
mandoc mandoc.cygport ISC
SPDX licence validated: ISC
man-pages-linux man-pages-linux.cygport MIT AND BSD-2-Clause AND
BSD-3-Clause AND BSD-4-Clause-UC AND Linux-man-pages-1-para AND
Linux-man-pages-copyleft AND Linux-man-pages-copyleft-var AND
Linux-man-pages-copyleft-2-para AND GPL-1.0-or-later AND GPL-2.0-only AND
GPL-2.0-or-later AND LGPL-3.0-or-later WITH LGPL-3.0-linking-exception
SPDX licence validated: MIT AND BSD-2-Clause AND BSD-3-Clause AND
BSD-4-Clause-UC AND Linux-man-pages-1-para AND Linux-man-pages-copyleft
AND Linux-man-pages-copyleft-var AND Linux-man-pages-copyleft-2-para AND
GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND
LGPL-3.0-or-later WITH LGPL-3.0-linking-exception
man-pages-posix man-pages-posix.cygport Linux-man-pages-copyleft
SPDX licence validated: Linux-man-pages-copyleft
ncompress ncompress.cygport Unlicense
SPDX licence validated: Unlicense
ncurses ncurses.cygport MIT
SPDX licence validated: MIT
nghttp2 nghttp2.cygport MIT
SPDX licence validated: MIT
nghttp3 nghttp3.cygport MIT
SPDX licence validated: MIT
num-utils num-utils.cygport GPL2+
Unknown license key(s): GPL2+
openssl mingw64-i686-openssl.cygport OpenSSL
SPDX licence validated: OpenSSL
openssl mingw64-x86_64-openssl.cygport OpenSSL
SPDX licence validated: OpenSSL
openssl openssl.cygport OpenSSL
SPDX licence validated: OpenSSL
openssl openssl1.0.cygport OpenSSL
SPDX licence validated: OpenSSL
openssl openssl3.cygport Apache-2.0
SPDX licence validated: Apache-2.0
patch patch.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
perl-App-XML-DocBook-Builder perl-App-XML-DocBook-Builder.cygport MIT
SPDX licence validated: MIT
procps-ng procps-ng-4.0.2-1.cygport GPL-2.0-or-later AND LGPL-2.1-or-later
SPDX licence validated: GPL-2.0-or-later AND LGPL-2.1-or-later
publicsuffix-list publicsuffix-list.cygport MPL-2.0
SPDX licence validated: MPL-2.0
python-license-expression python-license-expression.cygport Apache-2.0
SPDX licence validated: Apache-2.0
python-pytz python-pytz.cygport MIT
SPDX licence validated: MIT
readline readline.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
rman rman.cygport Artistic
Unknown license key(s): Artistic
scancode-toolkit python-scancode-toolkit.cygport Apache-2.0 AND CC-by-4.0
SPDX licence validated: Apache-2.0 AND CC-by-4.0
scancode-toolkit scancode-toolkit.cygport Apache-2.0 AND CC-BY-4.0 AND
LicenseRef-scancode-other-permissive AND LicenseRef-scancode-other-copyleft
SPDX licence validated: Apache-2.0 AND CC-BY-4.0 AND
LicenseRef-scancode-other-permissive AND LicenseRef-scancode-other-copyleft
scowl scowl.cygport Public Domain AND BSD-3-Clause-Modification
Unknown license key(s): Public Domain
sed sed.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
tack tack.cygport GPL-2.0-only
SPDX licence validated: GPL-2.0-only
tek4010 tek4010.cygport GPL3
Unknown license key(s): GPL3
terminator terminator.cygport GPL-2.0-only
SPDX licence validated: GPL-2.0-only
THE the.cygport GPL2
Unknown license key(s): GPL2
tnef tnef.cygport GPLv2
Unknown license key(s): GPLv2
txt2man txt2man.cygport GPLv2
Unknown license key(s): GPLv2
tzcode tzcode.cygport LicenceRef-IANA-TZ-Public-Domain
Unknown license key(s): LicenceRef-IANA-TZ-Public-Domain
tzcode tzdata.cygport LicenceRef-IANA-TZ-Public-Domain
Unknown license key(s): LicenceRef-IANA-TZ-Public-Domain
tzdata tzcode.cygport LicenceRef-IANA-TZ-Public-Domain
Unknown license key(s): LicenceRef-IANA-TZ-Public-Domain
tzdata tzdata.cygport LicenceRef-IANA-TZ-Public-Domain
Unknown license key(s): LicenceRef-IANA-TZ-Public-Domain
tzdata tzdata-spec-fedora.cygport LicenceRef-IANA-TZ-Public-Domain
Unknown license key(s): LicenceRef-IANA-TZ-Public-Domain
tzdata tzdata-spec-opensuse.cygport GPL-2.0-with-classpath-exception
Unknown license key(s): GPL-2.0-with-classpath-exception
unicode-ucd unicode-ucd.cygport MIT
SPDX licence validated: MIT
unifont unifont.cygport (GPL-2.0-or-later WITH Font-exception-2.0 OR OFL-1.1)
AND GPL-2.0-or-later AND LicenseRef-Unifoundry-Unifont-Public-Domain
Unknown license key(s): LicenseRef-Unifoundry-Unifont-Public-Domain
units units.cygport GPL-3.0-only AND GFDL-1.3-only
SPDX licence validated: GPL-3.0-only AND GFDL-1.3-only
units units-spec-fedora.cygport GPLv3+
Unknown license key(s): GPLv3+
units units-spec-opensuse.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
unrar unrar.cygport LicenseRef-RARlab-Unrar
Unknown license key(s): LicenseRef-RARlab-Unrar
util-linux util-linux.cygport GPL-2.0-or-later AND GPL-2.0 AND GPL-3.0-or-later
AND LGPL-2.1-or-later AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause-UC AND
License-Ref-Public-Domain
Unknown license key(s): License-Ref-Public-Domain
vim vim.cygport Vim
SPDX licence validated: Vim
vim vim9.cygport Vim AND LGPL-2.1-or-later AND MIT AND GPL-1.0-only AND
(GPL-2.0-only OR Vim) AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND
GPL-2.0-or-later AND GPL-3.0-or-later AND OPUBL-1.0
SPDX licence validated: Vim AND LGPL-2.1-or-later AND MIT AND GPL-1.0-only AND
(GPL-2.0-only OR Vim) AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND
GPL-2.0-or-later AND GPL-3.0-or-later AND OPUBL-1.0
vttest vttest.cygport BSD-Source-Code
SPDX licence validated: BSD-Source-Code
vttest vttest-spec-fedora.cygport MIT
SPDX licence validated: MIT
wget wget.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
wget wget-spec-fedora.cygport GPLv3+
Unknown license key(s): GPLv3+
wget wget-spec-opensuse.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
wget2 wget2.cygport LGPL-3.0-or-later
SPDX licence validated: LGPL-3.0-or-later
wget2 wget2-spec-opensuse.cygport LGPL-3.0-or-later
SPDX licence validated: LGPL-3.0-or-later
xlsx2csv xlsx2csv.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages alacarte.cygport LGPL-2.0-or-later
SPDX licence validated: LGPL-2.0-or-later
git-cygwin-packages attr.cygport GPL-2.0-or-later AND LGPL-2.1-or-later
SPDX licence validated: GPL-2.0-or-later AND LGPL-2.1-or-later
git-cygwin-packages avahi.cygport LGPL-2.1-or-later
SPDX licence validated: LGPL-2.1-or-later
git-cygwin-packages base-cygwin.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages bison.cygport GPLv3+
Unknown license key(s): GPLv3+
git-cygwin-packages buildbot-worker.cygport GNU General Public License, Version
2
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
778, in validate
parsed_expression = self.parse(expression, strict=strict)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
540, in parse
tokens = list(self.tokenize(
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
604, in tokenize
for token in tokens:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
997, in replace_with_subexpression_by_license_symbol
for token_group in token_groups:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
936, in build_token_groups_for_with_subexpression
tokens = list(tokens)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
598, in <genexpr>
tokens = (t for t in tokens if t.string and t.string.strip())
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
922, in build_symbols_from_unknown_tokens
for symtok in build_token_with_symbol():
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
902, in build_token_with_symbol
toksym = LicenseSymbol(string)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
1214, in __init__
raise ExpressionError(
license_expression.ExpressionError: Invalid license key: the valid characters
are: letters and numbers, underscore, dot, colon or hyphen signs and spaces:
'GNU General Public License, Version 2'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/BWI/bin/spdx-license-expression.py", line 33, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/BWI/bin/spdx-license-expression.py", line 20, in main
errs = licensing.validate(expression).errors
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
781, in validate
expression_info.invalid_symbols.append(e.token_string)
AttributeError: 'ExpressionError' object has no attribute 'token_string'
git-cygwin-packages calm.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages cfitsio.cygport ISC
SPDX licence validated: ISC
git-cygwin-packages cpio.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages cpuid.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages csih.cygport LGPL-2.1-or-later AND BSD-2-Clause AND MIT
SPDX licence validated: LGPL-2.1-or-later AND BSD-2-Clause AND MIT
git-cygwin-packages curl.cygport curl
SPDX licence validated: curl
git-cygwin-packages cygrunsrv.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages cygwin.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages dash.cygport BSD-3-Clause AND GPL-2.0-or-later
SPDX licence validated: BSD-3-Clause AND GPL-2.0-or-later
git-cygwin-packages dialog.cygport LGPL-2.1
SPDX licence validated: LGPL-2.1
git-cygwin-packages diffstat.cygport MIT-CMU
SPDX licence validated: MIT-CMU
git-cygwin-packages diffutils.cygport GPL-3.0-or-later AND GFDL-1.3-or-later
SPDX licence validated: GPL-3.0-or-later AND GFDL-1.3-or-later
git-cygwin-packages dmalloc.cygport ISC
SPDX licence validated: ISC
git-cygwin-packages double-conversion.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages doxygen.cygport GPL-2.0-only
SPDX licence validated: GPL-2.0-only
git-cygwin-packages duplicity.cygport GPL-2.0-only
SPDX licence validated: GPL-2.0-only
git-cygwin-packages editrights.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages exiv2.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages extractpdfmark.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages file.cygport BSD-2-Clause
SPDX licence validated: BSD-2-Clause
git-cygwin-packages fish.cygport GPL-2.0-only AND LGPL-2.0-only AND ISC AND
BSD-2-Clause
SPDX licence validated: GPL-2.0-only AND LGPL-2.0-only AND ISC AND BSD-2-Clause
git-cygwin-packages fortune-mod.cygport BSD-4-Clause
SPDX licence validated: BSD-4-Clause
git-cygwin-packages freeglut.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages gawk.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages getent.cygport LGPL-2.1-or-later
SPDX licence validated: LGPL-2.1-or-later
git-cygwin-packages gettext.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages ghostscript.cygport AGPL-3.0-or-later
SPDX licence validated: AGPL-3.0-or-later
git-cygwin-packages gnuplot.cygport gnuplot
SPDX licence validated: gnuplot
git-cygwin-packages gobject-introspection.cygport GPL-2.0-or-later AND
LGPL-2.0-or-later AND MIT
SPDX licence validated: GPL-2.0-or-later AND LGPL-2.0-or-later AND MIT
git-cygwin-packages grep.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages gzip.cygport GPLv2+
Unknown license key(s): GPLv2+
git-cygwin-packages harfbuzz.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages help2man.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages icu.cygport Unicode-DFS-2016
SPDX licence validated: Unicode-DFS-2016
git-cygwin-packages ipc-utils.cygport BSD-3-Clause AND BSD-4-Clause
SPDX licence validated: BSD-3-Clause AND BSD-4-Clause
git-cygwin-packages khronos-opengl-registry.cygport SGI Free Software License B
Unknown license key(s): SGI Free Software License B
git-cygwin-packages lftp.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages libcbor.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages libcerf.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages libdeflate.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages libedit.cygport BSD-3-Clause AND BSD-2-Clause AND ISC
SPDX licence validated: BSD-3-Clause AND BSD-2-Clause AND ISC
git-cygwin-packages libffi.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages libfido2.cygport BSD-2-Clause
SPDX licence validated: BSD-2-Clause
git-cygwin-packages libgcrypt.cygport LGPLv2.1+/GPLv2+
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
778, in validate
parsed_expression = self.parse(expression, strict=strict)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
540, in parse
tokens = list(self.tokenize(
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
604, in tokenize
for token in tokens:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
997, in replace_with_subexpression_by_license_symbol
for token_group in token_groups:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
936, in build_token_groups_for_with_subexpression
tokens = list(tokens)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
598, in <genexpr>
tokens = (t for t in tokens if t.string and t.string.strip())
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
922, in build_symbols_from_unknown_tokens
for symtok in build_token_with_symbol():
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
902, in build_token_with_symbol
toksym = LicenseSymbol(string)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
1214, in __init__
raise ExpressionError(
license_expression.ExpressionError: Invalid license key: the valid characters
are: letters and numbers, underscore, dot, colon or hyphen signs and spaces:
'LGPLv2.1+/GPLv2+'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/BWI/bin/spdx-license-expression.py", line 33, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/BWI/bin/spdx-license-expression.py", line 20, in main
errs = licensing.validate(expression).errors
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
781, in validate
expression_info.invalid_symbols.append(e.token_string)
AttributeError: 'ExpressionError' object has no attribute 'token_string'
git-cygwin-packages libidn.cygport LGPLv3+/GPLv2+/GPLv3+/GFDLv1.3+
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
778, in validate
parsed_expression = self.parse(expression, strict=strict)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
540, in parse
tokens = list(self.tokenize(
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
604, in tokenize
for token in tokens:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
997, in replace_with_subexpression_by_license_symbol
for token_group in token_groups:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
936, in build_token_groups_for_with_subexpression
tokens = list(tokens)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
598, in <genexpr>
tokens = (t for t in tokens if t.string and t.string.strip())
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
922, in build_symbols_from_unknown_tokens
for symtok in build_token_with_symbol():
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
902, in build_token_with_symbol
toksym = LicenseSymbol(string)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
1214, in __init__
raise ExpressionError(
license_expression.ExpressionError: Invalid license key: the valid characters
are: letters and numbers, underscore, dot, colon or hyphen signs and spaces:
'LGPLv3+/GPLv2+/GPLv3+/GFDLv1.3+'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/BWI/bin/spdx-license-expression.py", line 33, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/BWI/bin/spdx-license-expression.py", line 20, in main
errs = licensing.validate(expression).errors
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
781, in validate
expression_info.invalid_symbols.append(e.token_string)
AttributeError: 'ExpressionError' object has no attribute 'token_string'
git-cygwin-packages libidn2.cygport LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
SPDX licence validated: LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
git-cygwin-packages libjpeg-turbo.cygport IJG AND BSD-3-Clause AND Zlib
SPDX licence validated: IJG AND BSD-3-Clause AND Zlib
git-cygwin-packages libmetalink.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages libpsl.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages libsolv.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages libspectre.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages libssh2.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages libuninameslist.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages libwebp.cygport BSD-3-Clause WITH
LicenseRef-Google-WebM-Additional-IP-Rights-Grant-Patents
A plain license symbol cannot be used as an exception in a "WITH symbol"
statement. for token:
"LicenseRef-Google-WebM-Additional-IP-Rights-Grant-Patents" at position: 18
git-cygwin-packages lighttpd.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages lua-lxp.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages lz4.cygport BSD-2-Clause AND GPL-2.0
SPDX licence validated: BSD-2-Clause AND GPL-2.0
git-cygwin-packages m4.cygport GPLv3+
Unknown license key(s): GPLv3+
git-cygwin-packages man-db.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages man-pages-linux.cygport Linux-man-pages-copyleft
SPDX licence validated: Linux-man-pages-copyleft
git-cygwin-packages man-pages-posix.cygport MIT-like
Unknown license key(s): MIT-like
git-cygwin-packages maxima.cygport GPLv2+
Unknown license key(s): GPLv2+
git-cygwin-packages meson.cygport Apache-2.0
SPDX licence validated: Apache-2.0
git-cygwin-packages mingw64-i686-curl.cygport MIT-like
Unknown license key(s): MIT-like
git-cygwin-packages mingw64-i686-gettext.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages mingw64-i686-libidn2.cygport LGPL-3.0-or-later AND
GPL-2.0-or-later AND GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
SPDX licence validated: LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
git-cygwin-packages mingw64-i686-libsolv.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages mingw64-i686-libssh2.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages mingw64-i686-lz4.cygport BSD-2-Clause AND GPL-2.0
SPDX licence validated: BSD-2-Clause AND GPL-2.0
git-cygwin-packages mingw64-i686-nghttp2.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages mingw64-x86_64-curl.cygport curl
SPDX licence validated: curl
git-cygwin-packages mingw64-x86_64-gettext.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages mingw64-x86_64-libidn2.cygport LGPL-3.0-or-later AND
GPL-2.0-or-later AND GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
SPDX licence validated: LGPL-3.0-or-later AND GPL-2.0-or-later AND
GPL-3.0-or-later AND Unicode-TOU AND Unicode-DFS-2016
git-cygwin-packages mingw64-x86_64-libsolv.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages mingw64-x86_64-libssh2.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages mingw64-x86_64-lz4.cygport BSD-2-Clause AND GPL-2.0
SPDX licence validated: BSD-2-Clause AND GPL-2.0
git-cygwin-packages mingw64-x86_64-nghttp2.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages minisign.cygport ISC
SPDX licence validated: ISC
git-cygwin-packages mosh.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages mpfr.cygport LGPL-3.0-or-later
SPDX licence validated: LGPL-3.0-or-later
git-cygwin-packages mt.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages net-snmp.cygport BSD
Unknown license key(s): BSD
git-cygwin-packages nghttp2.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages ninja.cygport Apache-2.0
SPDX licence validated: Apache-2.0
git-cygwin-packages ocaml.cygport LGPL-2.1-or-later WITH
OCaml-LGPL-linking-exception
SPDX licence validated: LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception
git-cygwin-packages openldap.cygport OLDAP-2.8
SPDX licence validated: OLDAP-2.8
git-cygwin-packages openssh.cygport BSD-2-Clause
SPDX licence validated: BSD-2-Clause
git-cygwin-packages openssl.cygport OpenSSL
SPDX licence validated: OpenSSL
git-cygwin-packages osslsigncode.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages passwdqc.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages patch.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages perl-Alien-Build.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages perl-App-XML-DocBook-Builder.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages perl-B-COW.cygport Artistic-1.0-Perl OR GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Clone.cygport Artistic-1.0-Perl OR GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-DateTime.cygport Artistic-1.0-Perl OR GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-DateTime-Locale.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-DateTime-TimeZone.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-DBD-SQLite.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Exporter-Tiny.cygport (Artistic-1.0-Perl OR
GPL-1.0-or-later)
SPDX licence validated: (Artistic-1.0-Perl OR GPL-1.0-or-later)
git-cygwin-packages perl-HTML-Parser.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-HTTP-Message.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Image-ExifTool.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-IO-Socket-SSL.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-IO-Tty.cygport Artistic-1.0-Perl OR GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Log-Log4perl.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Mojolicious.cygport Artistic-2.0
SPDX licence validated: Artistic-2.0
git-cygwin-packages perl-Mozilla-CA.cygport unknownORunknown
Unknown license key(s): unknownORunknown
git-cygwin-packages perl-Params-Validate.cygport unknownORunknown
Unknown license key(s): unknownORunknown
git-cygwin-packages perl-Path-Tiny.cygport Apache-2.0
SPDX licence validated: Apache-2.0
git-cygwin-packages perl-PerlIO-utf8_strict.cygport Apache-2.0
SPDX licence validated: Apache-2.0
git-cygwin-packages perl-String-Util.cygport Apache-2.0
SPDX licence validated: Apache-2.0
git-cygwin-packages perl-Term-ReadLine-Gnu.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Test-Needs.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Test-Simple.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-Text-BibTeX.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-URI.cygport Artistic-1.0-Perl OR GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-XML-LibXSLT.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages perl-YAML-LibYAML.cygport Artistic-1.0-Perl OR
GPL-1.0-or-later
SPDX licence validated: Artistic-1.0-Perl OR GPL-1.0-or-later
git-cygwin-packages picocom.cygport GPL-2.0
SPDX licence validated: GPL-2.0
git-cygwin-packages pl.cygport BSD-2-Clause
SPDX licence validated: BSD-2-Clause
git-cygwin-packages procps-ng.cygport GPL-2.0-or-later AND LGPL-2.1-or-later
SPDX licence validated: GPL-2.0-or-later AND LGPL-2.1-or-later
git-cygwin-packages protobuf.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages psmisc.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages publicsuffix-list.cygport MPL-2.0
SPDX licence validated: MPL-2.0
git-cygwin-packages python-future.cygport MPL-2.0
SPDX licence validated: MPL-2.0
git-cygwin-packages readline.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages recode.cygport GPL-3.0-or-later AND LGPL-3.0-or-later AND
BSD AND OFSFDL
Unknown license key(s): BSD, OFSFDL
git-cygwin-packages rlwrap.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages rng-tools.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages rsync.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later
git-cygwin-packages schroedinger-coordgenlibs.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages schroedinger-maeparser.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages scowl.cygport PD/BSD-3-Mod
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
778, in validate
parsed_expression = self.parse(expression, strict=strict)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
540, in parse
tokens = list(self.tokenize(
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
604, in tokenize
for token in tokens:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
997, in replace_with_subexpression_by_license_symbol
for token_group in token_groups:
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
936, in build_token_groups_for_with_subexpression
tokens = list(tokens)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
598, in <genexpr>
tokens = (t for t in tokens if t.string and t.string.strip())
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
922, in build_symbols_from_unknown_tokens
for symtok in build_token_with_symbol():
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
902, in build_token_with_symbol
toksym = LicenseSymbol(string)
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
1214, in __init__
raise ExpressionError(
license_expression.ExpressionError: Invalid license key: the valid characters
are: letters and numbers, underscore, dot, colon or hyphen signs and spaces:
'PD/BSD-3-Mod'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/BWI/bin/spdx-license-expression.py", line 33, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/BWI/bin/spdx-license-expression.py", line 20, in main
errs = licensing.validate(expression).errors
File "/usr/lib/python3.9/site-packages/license_expression/__init__.py", line
781, in validate
expression_info.invalid_symbols.append(e.token_string)
AttributeError: 'ExpressionError' object has no attribute 'token_string'
git-cygwin-packages screen.cygport GPL-3.0-only
SPDX licence validated: GPL-3.0-only
git-cygwin-packages sed.cygport GPLv2+
Unknown license key(s): GPLv2+
git-cygwin-packages stunnel.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages tack.cygport GPL-2.0-only
SPDX licence validated: GPL-2.0-only
git-cygwin-packages tcsh.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages texinfo.cygport GPL-3.0-only
SPDX licence validated: GPL-3.0-only
git-cygwin-packages tiff.cygport libtiff
SPDX licence validated: libtiff
git-cygwin-packages tin.cygport BSD-3-Clause
SPDX licence validated: BSD-3-Clause
git-cygwin-packages tree-sitter.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages tzcode.cygport Public-Domain
Unknown license key(s): Public-Domain
git-cygwin-packages tzdata.cygport Public-Domain
Unknown license key(s): Public-Domain
git-cygwin-packages unison.cygport GPL-3.0-only
SPDX licence validated: GPL-3.0-only
git-cygwin-packages units.cygport GPL
Unknown license key(s): GPL
git-cygwin-packages upx.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later
git-cygwin-packages vttest.cygport BSD-Source-Code
SPDX licence validated: BSD-Source-Code
git-cygwin-packages wget.cygport GPLv3+
Unknown license key(s): GPLv3+
git-cygwin-packages windows-default-manifest.cygport FSFAP
SPDX licence validated: FSFAP
git-cygwin-packages xcb-util-cursor.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xcb-util-errors.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xcb-util-image.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xcb-util-keysyms.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xcb-util-renderutil.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xcb-util-wm.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xkeyboard-config.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xorg-server.cygport MIT
SPDX licence validated: MIT
git-cygwin-packages xview.cygport Sun OpenLook
Unknown license key(s): Sun OpenLook
git-cygwin-packages xz.cygport GPL-2.0-or-later AND LGPL-2.1-or-later
SPDX licence validated: GPL-2.0-or-later AND LGPL-2.1-or-later
git-cygwin-packages zlib.cygport Zlib
SPDX licence validated: Zlib
git-cygwin-packages zstd.cygport BSD-3-Clause AND GPL-2.0-only
SPDX licence validated: BSD-3-Clause AND GPL-2.0-only
git-cygwin-packages zziplib.cygport LGPL-2.0-only or MPL-1.1
SPDX licence validated: LGPL-2.0-only or MPL-1.1