ci: remove explicit 'latest' version settings for Python and Node.js - #213
Conversation
There was a problem hiding this comment.
Pull request overview
This PR removes explicit version specifications (latest) for Python and Node.js from GitHub Actions workflow configurations. The intent appears to be to rely on runner defaults rather than explicitly specifying "latest" as the version.
Changes:
- Removed
python-version: latestfromactions/setup-pythonandastral-sh/setup-uvactions in build/publish jobs - Removed
node-version: latest(with and without quotes) fromactions/setup-nodein build/publish jobs - Changes affect 7 workflow files across pytest, jest, egg, bnf, and docs workflows
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/pytest.yml |
Removed Python version specification from wheels and sdist build jobs |
.github/workflows/jest.yml |
Removed Node.js version specification from npm publishing job |
.github/workflows/egg-pytest.yml |
Removed Python version specification from build job |
.github/workflows/egg-jest.yml |
Removed Node.js version specification from npm publishing job |
.github/workflows/docs.yml |
Removed Node.js version specification from documentation build job |
.github/workflows/bnf-pytest.yml |
Removed Python version specification from build job |
.github/workflows/bnf-jest.yml |
Removed Node.js version specification from npm publishing job |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -22,7 +22,6 @@ jobs: | |||
|
|
|||
| - uses: actions/setup-node@v6 | |||
| with: | |||
There was a problem hiding this comment.
Removing the node-version specification makes the documentation build non-deterministic. Without an explicit version, actions/setup-node will use the runner's default Node.js version, which can change when GitHub updates their runners. This could lead to inconsistent documentation builds or build failures if the default version changes. Consider specifying a version explicitly (e.g., '20' or '22') to ensure reproducible builds.
| with: | |
| with: | |
| node-version: '20' |
| @@ -51,7 +51,6 @@ jobs: | |||
|
|
|||
| - uses: astral-sh/setup-uv@v7 | |||
| with: | |||
There was a problem hiding this comment.
Removing the python-version specification makes the build non-deterministic. Without an explicit version, astral-sh/setup-uv will use the system Python version, which can vary across runner updates. This could lead to inconsistent builds. Consider specifying a version explicitly (e.g., '3.11' or '3.12') or use a .python-version file to ensure reproducible builds.
| with: | |
| with: | |
| python-version: '3.12' |
| @@ -57,7 +57,6 @@ jobs: | |||
|
|
|||
| - uses: actions/setup-node@v6 | |||
| with: | |||
There was a problem hiding this comment.
Removing the node-version specification makes the npm publishing step non-deterministic. Without an explicit version, actions/setup-node will use the runner's default Node.js version, which can change when GitHub updates their runners. This could lead to inconsistent builds or publishing failures if the default version changes. Consider specifying a version explicitly (e.g., '20' or '22') to ensure reproducible builds.
| with: | |
| with: | |
| node-version: '22' |
| @@ -48,7 +48,6 @@ jobs: | |||
|
|
|||
| - uses: actions/setup-python@v6 | |||
| with: | |||
There was a problem hiding this comment.
Removing the python-version specification makes the build non-deterministic. Without an explicit version, actions/setup-python will use whatever Python version is pre-installed on the runner, which can vary across different runner images and change over time when GitHub updates their runners. This could lead to inconsistent builds and potential compatibility issues with cibuildwheel. Consider specifying a version explicitly (e.g., '3.11' or '3.12') or use a .python-version file to ensure reproducible builds.
| with: | |
| with: | |
| python-version: '3.12' |
| @@ -76,7 +75,6 @@ jobs: | |||
|
|
|||
| - uses: astral-sh/setup-uv@v7 | |||
| with: | |||
There was a problem hiding this comment.
Removing the python-version specification makes the build non-deterministic. Without an explicit version, astral-sh/setup-uv will use the system Python version, which can vary across runner updates. This could lead to inconsistent source distribution builds. Consider specifying a version explicitly (e.g., '3.11' or '3.12') or use a .python-version file to ensure reproducible builds.
| with: | |
| with: | |
| python-version: '3.12' |
| @@ -61,7 +61,6 @@ jobs: | |||
|
|
|||
| - uses: actions/setup-node@v6 | |||
| with: | |||
There was a problem hiding this comment.
Removing the node-version specification makes the npm publishing step non-deterministic. Without an explicit version, actions/setup-node will use the runner's default Node.js version, which can change when GitHub updates their runners. This could lead to inconsistent builds or publishing failures if the default version changes. Consider specifying a version explicitly (e.g., '20' or '22') to ensure reproducible builds.
| with: | |
| with: | |
| node-version: '22' |
| @@ -45,7 +45,6 @@ jobs: | |||
|
|
|||
| - uses: astral-sh/setup-uv@v7 | |||
| with: | |||
There was a problem hiding this comment.
Removing the python-version specification makes the build non-deterministic. Without an explicit version, astral-sh/setup-uv will use the system Python version, which can vary across runner updates. This could lead to inconsistent builds. Consider specifying a version explicitly (e.g., '3.11' or '3.12') or use a .python-version file to ensure reproducible builds.
| with: | |
| with: | |
| python-version: '3.12' |
| @@ -51,7 +51,6 @@ jobs: | |||
|
|
|||
| - uses: actions/setup-node@v6 | |||
| with: | |||
There was a problem hiding this comment.
Removing the node-version specification makes the npm publishing step non-deterministic. Without an explicit version, actions/setup-node will use the runner's default Node.js version, which can change when GitHub updates their runners. This could lead to inconsistent builds or publishing failures if the default version changes. Consider specifying a version explicitly (e.g., '20' or '22') to ensure reproducible builds.
| with: | |
| with: | |
| node-version: '20' |
close: #194