Skip to content

Commit d3a70da

Browse files
Merge pull request #104 from aboutcode-org/update-spdx-license-list
Update licenses with SPDX license list 3.25
2 parents 27a099c + 698aa4c commit d3a70da

18 files changed

+314
-86
lines changed

.github/workflows/pypi-release.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ on:
2121
jobs:
2222
build-pypi-distribs:
2323
name: Build and publish library to PyPI
24-
runs-on: ubuntu-22.04
24+
runs-on: ubuntu-24.04
2525

2626
steps:
2727
- uses: actions/checkout@v4
@@ -50,7 +50,7 @@ jobs:
5050
name: Create GH release
5151
needs:
5252
- build-pypi-distribs
53-
runs-on: ubuntu-22.04
53+
runs-on: ubuntu-24.04
5454

5555
steps:
5656
- name: Download built archives
@@ -70,7 +70,7 @@ jobs:
7070
name: Create PyPI release
7171
needs:
7272
- create-gh-release
73-
runs-on: ubuntu-22.04
73+
runs-on: ubuntu-24.04
7474

7575
steps:
7676
- name: Download built archives

CHANGELOG.rst

+9
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
Changelog
22
=========
33

4+
v30.4.0 - 2024-10-21
5+
--------------------
6+
7+
This is a minor release without API changes:
8+
9+
- Use latest skeleton
10+
- Update license list to latest ScanCode and SPDX 3.25
11+
- Drop support for Python 3.8
12+
413
v30.3.1 - 2024-08-13
514
--------------------
615

Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# ScanCode is a trademark of nexB Inc.
55
# SPDX-License-Identifier: Apache-2.0
66
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
7-
# See https://github.com/nexB/skeleton for support or download.
7+
# See https://github.com/aboutcode-org/skeleton for support or download.
88
# See https://aboutcode.org for more information about nexB OSS projects.
99
#
1010

@@ -35,7 +35,7 @@ check:
3535
@echo "-> Run pycodestyle (PEP8) validation"
3636
@${ACTIVATE} pycodestyle --max-line-length=100 --exclude=.eggs,venv,lib,thirdparty,docs,migrations,settings.py,.cache .
3737
@echo "-> Run isort imports ordering validation"
38-
@${ACTIVATE} isort --sl --check-only -l 100 setup.py src tests .
38+
@${ACTIVATE} isort --sl --check-only -l 100 setup.py src tests .
3939
@echo "-> Run black validation"
4040
@${ACTIVATE} black --check --check -l 100 src tests setup.py
4141

azure-pipelines.yml

+15-15
Original file line numberDiff line numberDiff line change
@@ -7,48 +7,48 @@
77
jobs:
88
- template: etc/ci/azure-posix.yml
99
parameters:
10-
job_name: ubuntu20_cpython
11-
image_name: ubuntu-20.04
12-
python_versions: ["3.8", "3.9", "3.10", "3.11", "3.12"]
10+
job_name: ubuntu22_cpython
11+
image_name: ubuntu-22.04
12+
python_versions: ["3.9", "3.10", "3.11", "3.12", "3.13"]
1313
test_suites:
1414
all: venv/bin/pytest -n 2 -vvs
15-
15+
1616
- template: etc/ci/azure-posix.yml
1717
parameters:
18-
job_name: ubuntu22_cpython
19-
image_name: ubuntu-22.04
20-
python_versions: ["3.8", "3.9", "3.10", "3.11", "3.12"]
18+
job_name: ubuntu24_cpython
19+
image_name: ubuntu-24.04
20+
python_versions: ["3.9", "3.10", "3.11", "3.12", "3.13"]
2121
test_suites:
2222
all: venv/bin/pytest -n 2 -vvs
2323

2424
- template: etc/ci/azure-posix.yml
2525
parameters:
26-
job_name: macos12_cpython
27-
image_name: macOS-12
28-
python_versions: ["3.8", "3.9", "3.10", "3.11", "3.12"]
26+
job_name: macos13_cpython
27+
image_name: macOS-13
28+
python_versions: ["3.9", "3.10", "3.11", "3.12", "3.13"]
2929
test_suites:
3030
all: venv/bin/pytest -n 2 -vvs
3131

3232
- template: etc/ci/azure-posix.yml
3333
parameters:
34-
job_name: macos13_cpython
35-
image_name: macOS-13
36-
python_versions: ["3.8", "3.9", "3.10", "3.11", "3.12"]
34+
job_name: macos14_cpython
35+
image_name: macOS-14
36+
python_versions: ["3.9", "3.10", "3.11", "3.12", "3.13"]
3737
test_suites:
3838
all: venv/bin/pytest -n 2 -vvs
3939

4040
- template: etc/ci/azure-win.yml
4141
parameters:
4242
job_name: win2019_cpython
4343
image_name: windows-2019
44-
python_versions: ["3.8", "3.9", "3.10", "3.11", "3.12"]
44+
python_versions: ["3.9", "3.10", "3.11", "3.12", "3.13"]
4545
test_suites:
4646
all: venv\Scripts\pytest -n 2 -vvs
4747

4848
- template: etc/ci/azure-win.yml
4949
parameters:
5050
job_name: win2022_cpython
5151
image_name: windows-2022
52-
python_versions: ["3.8", "3.9", "3.10", "3.11", "3.12"]
52+
python_versions: ["3.9", "3.10", "3.11", "3.12", "3.13"]
5353
test_suites:
5454
all: venv\Scripts\pytest -n 2 -vvs

configure

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Copyright (c) nexB Inc. and others. All rights reserved.
44
# SPDX-License-Identifier: Apache-2.0
55
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
6-
# See https://github.com/nexB/ for support or download.
6+
# See https://github.com/aboutcode-org/ for support or download.
77
# See https://aboutcode.org for more information about nexB OSS projects.
88
#
99

configure.bat

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
@rem Copyright (c) nexB Inc. and others. All rights reserved.
55
@rem SPDX-License-Identifier: Apache-2.0
66
@rem See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
7-
@rem See https://github.com/nexB/ for support or download.
7+
@rem See https://github.com/aboutcode-org/ for support or download.
88
@rem See https://aboutcode.org for more information about nexB OSS projects.
99

1010

docs/source/conf.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050

5151
# This points to aboutcode.readthedocs.io
5252
# In case of "undefined label" ERRORS check docs on intersphinx to troubleshoot
53-
# Link was created at commit - https://github.com/nexB/aboutcode/commit/faea9fcf3248f8f198844fe34d43833224ac4a83
53+
# Link was created at commit - https://github.com/aboutcode-org/aboutcode/commit/faea9fcf3248f8f198844fe34d43833224ac4a83
5454

5555
intersphinx_mapping = {
5656
"aboutcode": ("https://aboutcode.readthedocs.io/en/latest/", None),

etc/scripts/check_thirdparty.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# ScanCode is a trademark of nexB Inc.
66
# SPDX-License-Identifier: Apache-2.0
77
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
8-
# See https://github.com/nexB/skeleton for support or download.
8+
# See https://github.com/aboutcode-org/skeleton for support or download.
99
# See https://aboutcode.org for more information about nexB OSS projects.
1010
#
1111
import click
@@ -17,7 +17,8 @@
1717
@click.option(
1818
"-d",
1919
"--dest",
20-
type=click.Path(exists=True, readable=True, path_type=str, file_okay=False),
20+
type=click.Path(exists=True, readable=True,
21+
path_type=str, file_okay=False),
2122
required=True,
2223
help="Path to the thirdparty directory to check.",
2324
)

etc/scripts/fetch_thirdparty.py

+12-7
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# ScanCode is a trademark of nexB Inc.
66
# SPDX-License-Identifier: Apache-2.0
77
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
8-
# See https://github.com/nexB/skeleton for support or download.
8+
# See https://github.com/aboutcode-org/skeleton for support or download.
99
# See https://aboutcode.org for more information about nexB OSS projects.
1010
#
1111

@@ -55,7 +55,8 @@
5555
"-d",
5656
"--dest",
5757
"dest_dir",
58-
type=click.Path(exists=True, readable=True, path_type=str, file_okay=False),
58+
type=click.Path(exists=True, readable=True,
59+
path_type=str, file_okay=False),
5960
metavar="DIR",
6061
default=utils_thirdparty.THIRDPARTY_DIR,
6162
show_default=True,
@@ -224,7 +225,8 @@ def fetch_thirdparty(
224225
environments = None
225226
if wheels:
226227
evts = itertools.product(python_versions, operating_systems)
227-
environments = [utils_thirdparty.Environment.from_pyver_and_os(pyv, os) for pyv, os in evts]
228+
environments = [utils_thirdparty.Environment.from_pyver_and_os(
229+
pyv, os) for pyv, os in evts]
228230

229231
# Collect PyPI repos
230232
repos = []
@@ -260,13 +262,14 @@ def fetch_thirdparty(
260262
repos=repos,
261263
)
262264
if not fetched:
263-
wheels_or_sdist_not_found[f"{name}=={version}"].append(environment)
265+
wheels_or_sdist_not_found[f"{name}=={version}"].append(
266+
environment)
264267
if TRACE:
265268
print(f" NOT FOUND")
266269

267270
if (sdists or
268271
(f"{name}=={version}" in wheels_or_sdist_not_found and name in sdist_only)
269-
):
272+
):
270273
if TRACE:
271274
print(f" ==> Fetching sdist: {name}=={version}")
272275

@@ -289,7 +292,8 @@ def fetch_thirdparty(
289292
sdist_missing = sdists and "sdist" in dists and not name in wheel_only
290293
if sdist_missing:
291294
mia.append(f"SDist missing: {nv} {dists}")
292-
wheels_missing = wheels and any(d for d in dists if d != "sdist") and not name in sdist_only
295+
wheels_missing = wheels and any(
296+
d for d in dists if d != "sdist") and not name in sdist_only
293297
if wheels_missing:
294298
mia.append(f"Wheels missing: {nv} {dists}")
295299

@@ -299,7 +303,8 @@ def fetch_thirdparty(
299303
raise Exception(mia)
300304

301305
print(f"==> FETCHING OR CREATING ABOUT AND LICENSE FILES")
302-
utils_thirdparty.fetch_abouts_and_licenses(dest_dir=dest_dir, use_cached_index=use_cached_index)
306+
utils_thirdparty.fetch_abouts_and_licenses(
307+
dest_dir=dest_dir, use_cached_index=use_cached_index)
303308
utils_thirdparty.clean_about_files(dest_dir=dest_dir)
304309

305310
# check for problems

etc/scripts/gen_requirements.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# ScanCode is a trademark of nexB Inc.
66
# SPDX-License-Identifier: Apache-2.0
77
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
8-
# See https://github.com/nexB/skeleton for support or download.
8+
# See https://github.com/aboutcode-org/skeleton for support or download.
99
# See https://aboutcode.org for more information about nexB OSS projects.
1010
#
1111
import argparse

etc/scripts/gen_requirements_dev.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# ScanCode is a trademark of nexB Inc.
66
# SPDX-License-Identifier: Apache-2.0
77
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
8-
# See https://github.com/nexB/skeleton for support or download.
8+
# See https://github.com/aboutcode-org/skeleton for support or download.
99
# See https://aboutcode.org for more information about nexB OSS projects.
1010
#
1111
import argparse

etc/scripts/utils_dejacode.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# ScanCode is a trademark of nexB Inc.
66
# SPDX-License-Identifier: Apache-2.0
77
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
8-
# See https://github.com/nexB/skeleton for support or download.
8+
# See https://github.com/aboutcode-org/skeleton for support or download.
99
# See https://aboutcode.org for more information about nexB OSS projects.
1010
#
1111
import io
@@ -33,7 +33,8 @@
3333

3434
def can_do_api_calls():
3535
if not DEJACODE_API_KEY and DEJACODE_API_URL:
36-
print("DejaCode DEJACODE_API_KEY and DEJACODE_API_URL not configured. Doing nothing")
36+
print(
37+
"DejaCode DEJACODE_API_KEY and DEJACODE_API_URL not configured. Doing nothing")
3738
return False
3839
else:
3940
return True
@@ -68,7 +69,8 @@ def get_package_data(distribution):
6869
return results[0]
6970

7071
elif len_results > 1:
71-
print(f"More than 1 entry exists, review at: {DEJACODE_API_URL_PACKAGES}")
72+
print(
73+
f"More than 1 entry exists, review at: {DEJACODE_API_URL_PACKAGES}")
7274
else:
7375
print("Could not find package:", distribution.download_url)
7476

@@ -149,7 +151,8 @@ def find_latest_dejacode_package(distribution):
149151
# there was no exact match, find the latest version
150152
# TODO: consider the closest version rather than the latest
151153
# or the version that has the best data
152-
with_versions = [(packaging_version.parse(p["version"]), p) for p in packages]
154+
with_versions = [(packaging_version.parse(p["version"]), p)
155+
for p in packages]
153156
with_versions = sorted(with_versions)
154157
latest_version, latest_package_version = sorted(with_versions)[-1]
155158
print(

etc/scripts/utils_requirements.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# ScanCode is a trademark of nexB Inc.
66
# SPDX-License-Identifier: Apache-2.0
77
# See http://www.apache.org/licenses/LICENSE-2.0 for the license text.
8-
# See https://github.com/nexB/skeleton for support or download.
8+
# See https://github.com/aboutcode-org/skeleton for support or download.
99
# See https://aboutcode.org for more information about nexB OSS projects.
1010
#
1111

@@ -102,7 +102,8 @@ def lock_dev_requirements(
102102
all_req_nvs = get_required_name_versions(all_req_lines)
103103
dev_only_req_nvs = {n: v for n, v in all_req_nvs if n not in main_names}
104104

105-
new_reqs = "\n".join(f"{n}=={v}" for n, v in sorted(dev_only_req_nvs.items()))
105+
new_reqs = "\n".join(
106+
f"{n}=={v}" for n, v in sorted(dev_only_req_nvs.items()))
106107
with open(dev_requirements_file, "w") as fo:
107108
fo.write(new_reqs)
108109

@@ -113,10 +114,12 @@ def get_installed_reqs(site_packages_dir):
113114
as a text.
114115
"""
115116
if not os.path.exists(site_packages_dir):
116-
raise Exception(f"site_packages directory: {site_packages_dir!r} does not exists")
117+
raise Exception(
118+
f"site_packages directory: {site_packages_dir!r} does not exists")
117119
# Also include these packages in the output with --all: wheel, distribute,
118120
# setuptools, pip
119-
args = ["pip", "freeze", "--exclude-editable", "--all", "--path", site_packages_dir]
121+
args = ["pip", "freeze", "--exclude-editable",
122+
"--all", "--path", site_packages_dir]
120123
return subprocess.check_output(args, encoding="utf-8")
121124

122125

0 commit comments

Comments
 (0)