Skip to content

Commit 9db72eb

Browse files
Merge pull request #252 from aboutcode-org/release-prep-0.15.0
Release prep v0.15.0
2 parents 2a9f128 + 127d353 commit 9db72eb

25 files changed

+1475
-125
lines changed

.github/workflows/docs-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
strategy:
1010
max-parallel: 4
1111
matrix:
12-
python-version: [3.12]
12+
python-version: [3.13]
1313

1414
steps:
1515
- name: Checkout code

.github/workflows/pypi-release.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ jobs:
2828
- name: Set up Python
2929
uses: actions/setup-python@v5
3030
with:
31-
python-version: 3.12
31+
python-version: 3.14
3232

3333
- name: Install pypa/build and twine
34-
run: python -m pip install --user build twine
34+
run: python -m pip install --user --upgrade build twine pkginfo
3535

3636
- name: Build a binary wheel and a source tarball
37-
run: python -m build --sdist --wheel --outdir dist/
37+
run: python -m build --wheel --sdist --outdir dist/
3838

3939
- name: Validate wheel and sdis for Pypi
4040
run: python -m twine check dist/*
@@ -71,6 +71,9 @@ jobs:
7171
needs:
7272
- create-gh-release
7373
runs-on: ubuntu-24.04
74+
environment: pypi-publish
75+
permissions:
76+
id-token: write
7477

7578
steps:
7679
- name: Download built archives
@@ -81,6 +84,4 @@ jobs:
8184

8285
- name: Publish to PyPI
8386
if: startsWith(github.ref, 'refs/tags')
84-
uses: pypa/gh-action-pypi-publish@release/v1
85-
with:
86-
password: ${{ secrets.PYPI_API_TOKEN }}
87+
uses: pypa/gh-action-pypi-publish@release/v1

.readthedocs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ version: 2
99
build:
1010
os: ubuntu-22.04
1111
tools:
12-
python: "3.11"
12+
python: "3.13"
1313

1414
# Build PDF & ePub
1515
formats:

CHANGELOG.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
Changelog
22
=========
33

4+
v0.15.0
5+
-----------
6+
7+
- Drop support for python3.9 and add support for python3.14
8+
- Ensure that cached file is not empty before use https://github.com/aboutcode-org/python-inspector/pull/251
9+
- Filter out empty values from install_requires https://github.com/aboutcode-org/python-inspector/pull/250
10+
411
v0.14.4
512
-----------
613

azure-pipelines.yml

Lines changed: 10 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -11,94 +11,78 @@ jobs:
1111
parameters:
1212
job_name: run_code_checks
1313
image_name: ubuntu-24.04
14-
python_versions: ['3.12']
14+
python_versions: ['3.14']
1515
test_suites:
1616
all: make check
1717

1818
- template: etc/ci/azure-posix.yml
1919
parameters:
2020
job_name: online_ubuntu24_cpython
2121
image_name: ubuntu-24.04
22-
python_versions: ['3.10']
22+
python_versions: ['3.14']
2323
test_suites:
2424
all: venv/bin/pytest -n 2 -vvs -m "online"
2525

2626
- template: etc/ci/azure-win.yml
2727
parameters:
2828
job_name: online_win2022_cpython
2929
image_name: windows-2022
30-
python_versions: ['3.10']
30+
python_versions: ['3.14']
3131
test_suites:
3232
all: venv\Scripts\pytest -n 2 -vvs -m "online"
3333

3434
- template: etc/ci/azure-posix.yml
3535
parameters:
3636
job_name: online_macos14_cpython
3737
image_name: macOS-14
38-
python_versions: ['3.10']
38+
python_versions: ['3.14']
3939
test_suites:
4040
all: venv/bin/pytest -n 2 -vvs -m "online"
4141

4242
- template: etc/ci/azure-posix.yml
4343
parameters:
4444
job_name: ubuntu22_cpython
4545
image_name: ubuntu-22.04
46-
python_versions: ['3.9', '3.10', '3.11', '3.12']
46+
python_versions: ['3.10', '3.11', '3.12', '3.13', '3.14']
4747
test_suites:
4848
all: venv/bin/pytest -n 2 -vvs -m "not online"
4949

5050
- template: etc/ci/azure-posix.yml
5151
parameters:
5252
job_name: ubuntu24_cpython
5353
image_name: ubuntu-24.04
54-
python_versions: ['3.9', '3.10', '3.11', '3.12']
55-
test_suites:
56-
all: venv/bin/pytest -n 2 -vvs -m "not online"
57-
58-
- template: etc/ci/azure-posix.yml
59-
parameters:
60-
job_name: macos13_cpython
61-
image_name: macOS-13
62-
python_versions: ['3.9', '3.10', '3.11', '3.12']
54+
python_versions: ['3.10', '3.11', '3.12', '3.13', '3.14']
6355
test_suites:
6456
all: venv/bin/pytest -n 2 -vvs -m "not online"
6557

6658
- template: etc/ci/azure-posix.yml
6759
parameters:
6860
job_name: macos14_cpython
6961
image_name: macOS-14
70-
python_versions: ['3.9', '3.10', '3.11', '3.12']
62+
python_versions: ['3.10', '3.11', '3.12', '3.13', '3.14']
7163
test_suites:
7264
all: venv/bin/pytest -n 2 -vvs -m "not online"
7365

7466
- template: etc/ci/azure-posix.yml
7567
parameters:
7668
job_name: macos15_cpython
7769
image_name: macOS-15
78-
python_versions: ['3.9', '3.10', '3.11', '3.12']
70+
python_versions: ['3.10', '3.11', '3.12', '3.13', '3.14']
7971
test_suites:
8072
all: venv/bin/pytest -n 2 -vvs -m "not online"
8173

82-
- template: etc/ci/azure-win.yml
83-
parameters:
84-
job_name: win2019_cpython
85-
image_name: windows-2019
86-
python_versions: ['3.9', '3.10', '3.11', '3.12']
87-
test_suites:
88-
all: venv\Scripts\pytest -n 2 -vvs -m "not online"
89-
9074
- template: etc/ci/azure-win.yml
9175
parameters:
9276
job_name: win2022_cpython
9377
image_name: windows-2022
94-
python_versions: ['3.9', '3.10', '3.11', '3.12']
78+
python_versions: ['3.10', '3.11', '3.12', '3.13', '3.14']
9579
test_suites:
9680
all: venv\Scripts\pytest -n 2 -vvs -m "not online"
9781

9882
- template: etc/ci/azure-win.yml
9983
parameters:
10084
job_name: win2025_cpython
10185
image_name: windows-2025
102-
python_versions: ['3.9', '3.10', '3.11', '3.12']
86+
python_versions: ['3.10', '3.11', '3.12', '3.13', '3.14']
10387
test_suites:
10488
all: venv\Scripts\pytest -n 2 -vvs -m "not online"

configure

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ create_virtualenv() {
110110
fi
111111

112112
$PYTHON_EXECUTABLE "$VIRTUALENV_PYZ" \
113-
--wheel embed --pip embed --setuptools embed \
113+
--pip embed --setuptools embed \
114114
--seeder pip \
115115
--never-download \
116116
--no-periodic-update \

configure.bat

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ if not exist "%CFG_BIN_DIR%\python.exe" (
110110

111111
if exist "%CFG_ROOT_DIR%\etc\thirdparty\virtualenv.pyz" (
112112
%PYTHON_EXECUTABLE% "%CFG_ROOT_DIR%\etc\thirdparty\virtualenv.pyz" ^
113-
--wheel embed --pip embed --setuptools embed ^
113+
--pip embed --setuptools embed ^
114114
--seeder pip ^
115115
--never-download ^
116116
--no-periodic-update ^
@@ -126,7 +126,7 @@ if not exist "%CFG_BIN_DIR%\python.exe" (
126126
)
127127
)
128128
%PYTHON_EXECUTABLE% "%CFG_ROOT_DIR%\%VIRTUALENV_DIR%\virtualenv.pyz" ^
129-
--wheel embed --pip embed --setuptools embed ^
129+
--pip embed --setuptools embed ^
130130
--seeder pip ^
131131
--never-download ^
132132
--no-periodic-update ^

docs/source/dependencies-design.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ Solution
6767

6868
One approach to resolve this issue is to attempt to resolve the
6969
dependencies using all the current Python versions (e.g., from 3.6 to
70-
3.10) and stop when one resolution is completed. This can work in
70+
3.14) and stop when one resolution is completed. This can work in
7171
practice, but it results in a complex setup typically using multiple
7272
Docker images for each of the supported Python versions. It would also
7373
fail to build native dependencies unless the required toolchain is also
@@ -80,7 +80,7 @@ invoking pip as a subprocess. This will eventually request resolution of
8080
dependencies for a base Python version that is not the current Python
8181
version. For example, it will be possible to resolve dependencies for
8282
Python 3.8, even though the current Python version running the tool may
83-
be 3.9. The actual Python version running the tool may be different from
83+
be 3.10. The actual Python version running the tool may be different from
8484
the version used to support the dependency resolution.
8585

8686
The designed solution will be a new Python package and command line tool

docs/source/test-protocol.rst

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ You need to:
1313

1414
- have access to some Python codebase to use as a test bed.
1515
- have a working installation of python-inspector
16-
- have a working installation of scancode-toolkit v31.x (inlucing RCs) or higher
16+
- have a working installation of scancode-toolkit v32.x (inlucing RCs) or higher
1717

1818

1919
Test protocol
@@ -77,9 +77,9 @@ In this step, you will resolve the dependencies using python-inspector python-in
7777
command for each of the requirements files identified in Step 1 using the
7878
Python version identified in Step 2. Run this command for each requirements
7979
file, using each time a different output file name. We assume here Python
80-
version 3.8 (note the absence of dot when passed as a command line option::
80+
version 3.10 (note the absence of dot when passed as a command line option::
8181

82-
python-inspector --python-version 38 --requirement <path/to/requirements.txt> \
82+
python-inspector --python-version 310 --requirement <path/to/requirements.txt> \
8383
--json <path/to/resolved-requirements.txt.json> \
8484
--netrc <path/to/.netrc>
8585

@@ -150,7 +150,7 @@ Setup
150150

151151

152152
We use this repo https://github.com/tjcsl/ion as a sample codebase.
153-
And the reference Python version is 3.8::
153+
And the reference Python version is 3.10::
154154

155155
mkdir -p ~/tmp/pyinsp-example/
156156
cd ~/tmp/pyinsp-example/
@@ -159,24 +159,24 @@ And the reference Python version is 3.8::
159159

160160
Another example could be https://github.com/digitalocean/sample-django
161161

162-
We use the latest main branch from python-inspector and scancode-toolkit 31.0.0rc2
163-
installed on Linux with Python 3.8 using the release tarball from:
164-
https://github.com/aboutcode-org/scancode-toolkit/releases/tag/v31.0.0rc2
162+
We use the latest main branch from python-inspector and scancode-toolkit 32.4.1
163+
installed on Linux with Python 3.10 using the release tarball from:
164+
https://github.com/aboutcode-org/scancode-toolkit/releases/tag/v32.4.1
165165

166166
ScanCode setup::
167167

168168
mkdir -p ~/tmp/pyinsp-example/tools
169169
cd ~/tmp/pyinsp-example/tools
170-
wget https://github.com/aboutcode-org/scancode-toolkit/releases/download/v31.0.0rc2/scancode-toolkit-31.0.0rc2_py38-linux.tar.xz
171-
tar -xf scancode-toolkit-31.0.0rc2_py38-linux.tar.xz
172-
cd scancode-toolkit-31.0.0rc2/
170+
wget https://github.com/aboutcode-org/scancode-toolkit/releases/download/v32.4.1/scancode-toolkit-32.4.1_py38-linux.tar.xz
171+
tar -xf scancode-toolkit-32.4.1_py38-linux.tar.xz
172+
cd scancode-toolkit-32.4.1/
173173
./scancode --help
174174

175175
python-inspector setup::
176176

177177
cd ~/tmp/pyinsp-example/tools
178178
git clone https://github.com/aboutcode-org/python-inspector
179-
python3.8 -m venv venv
179+
python3.10 -m venv venv
180180
source venv/bin/activate
181181
pip install --upgrade pip setuptools wheel
182182
cd python-inspector
@@ -207,7 +207,7 @@ Step 2: Build your code
207207
We perform a simple "editable" build in place::
208208

209209
cd ~/tmp/pyinsp-example/codebase/ion
210-
python3.8 -m venv venv
210+
python3.10 -m venv venv
211211
source venv/bin/activate
212212
pip install --upgrade pip setuptools wheel
213213
pip install --editable .
@@ -219,7 +219,7 @@ Step 3: Collect built code details
219219

220220
We extract in place::
221221

222-
cd ~/tmp/pyinsp-example/tools/scancode-toolkit-31.0.0rc2/
222+
cd ~/tmp/pyinsp-example/tools/scancode-toolkit-32.4.1/
223223
./extractcode --shallow ~/tmp/pyinsp-example/codebase/ion
224224

225225
And collect built details::

etc/ci/azure-container-deb.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- job: ${{ parameters.job_name }}
2222

2323
pool:
24-
vmImage: 'ubuntu-16.04'
24+
vmImage: 'ubuntu-22.04'
2525

2626
container:
2727
image: ${{ parameters.container }}

0 commit comments

Comments
 (0)