Compare commits

..
23 Commits
Author SHA1 Message Date
Priya Gupta ece7cb06ca Fix pip cache error handling on Windows. (#1040)
* Add error handling for Windows 'pip cache dir' execution

* Add comments
2026-06-23 13:01:57 -05:00
Nic 1d18d7af5f Update advanced-usage.md (#811)
Fix invalid Url
2026-06-23 12:44:45 -05:00
Harithaandcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> d2b357a6a3 Update dependency versions and test workflow configuration (#1322)
* chore: update dependencies in project configuration files

* Add bootstrap step for packaging tools

Added a step to bootstrap packaging tools before installing dependencies.

* Resolve audit issues

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-06-23 11:35:00 -05:00
Bassem Dghaidi 8f639b1e75 Merge pull request #1324 from jasongin/update-actions-cache-5.1.0
Bump @actions/cache to 5.1.0, log cache write denied
2026-06-23 11:21:36 +02:00
Jason Ginchereau 6731c2ba87 Resolve high-severity audit issues 2026-06-18 18:02:00 -07:00
Priya Gupta 0cb1a84326 Add RHEL support and include Linux distro in cache keys (#1323)
* Add RHEL support for manifest matching and OS detection

* update dist

* make cache keys distro-aware and key RHEL by major version

* Normalize RHEL OS detection and improve cache key consistency

* Refactor OS info retrieval to use getOSInfo and handle null cases for improved reliability
2026-06-18 18:47:28 -05:00
Jason Ginchereau dc6eab6194 Update dist 2026-06-18 15:55:40 -07:00
Jason Ginchereau 6f4b74bfa2 Strict equality 2026-06-18 15:46:13 -07:00
Jason Ginchereau fa8bde1a9c Bump @actions/cache to 5.1.0, log cache write denied 2026-06-18 15:19:32 -07:00
Copilotcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>gowridurgad
c8813ba1bc Upgrade @actions dependencies and update licenses (#1303)
Agent-Logs-Url: https://github.com/actions/setup-python/sessions/d7501c8f-2fae-40ed-a7fc-e78f5087585a

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: gowridurgad <159780674+gowridurgad@users.noreply.github.com>
2026-04-15 12:25:40 -05:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>gowridurgad
28f2168f4d Bump minimatch from 3.1.2 to 3.1.5 (#1281)
* Bump minimatch from 3.1.2 to 3.1.5

Bumps [minimatch](https://github.com/isaacs/minimatch) from 3.1.2 to 3.1.5.
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-version: 3.1.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Check failure fix

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: gowridurgad <gowridurgad@gmail.com>
2026-03-09 10:05:35 -05:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Aparna Jyothimahabaleshwars
a309ff8b42 Bump urllib3 from 2.6.0 to 2.6.3 in /__tests__/data (#1264)
* Bump urllib3 from 2.6.0 to 2.6.3 in /__tests__/data

Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.0 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.0...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* check-failure fix

* check failure fix

* Bump urllib3 from 2.6.0 to 2.6.3 in /__tests__/data

Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.0 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.0...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix for e2e-tests.yml failure and version update in packagejson

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aparna Jyothi <aparnajyothi-y@github.com>
Co-authored-by: mahabaleshwars <147705296+mahabaleshwars@users.noreply.github.com>
2026-01-21 20:49:33 -06:00
Salman ChishtiandAparna Jyothi bfe8cc55a7 Upgrade @actions dependencies to Node 24 compatible versions (#1259)
* Upgrade @actions dependencies to Node 24 compatible versions

Upgrades the following @actions packages:
- @actions/cache: ^4.0.3 → ^5.0.1
- @actions/core: ^1.10.0 → ^2.0.1
- @actions/exec: ^1.1.0 → ^2.0.0
- @actions/http-client: ^2.2.3 → ^3.0.0
- @actions/io: ^1.0.2 → ^2.0.0

License updates:
- Add blueoak-1.0.0 to allowed licenses (new transitive dependency: sax)
- Add @actions/http-client to reviewed licenses (MIT licensed but detected as 'other')

Also ran npm audit fix to resolve vulnerabilities.

* update patch version

* upgrade actions/checkout from v5 to v6

* check failures fix

* revert the pinned pipenv version

* check failure fix

* npm run build

---------

Co-authored-by: Aparna Jyothi <aparnajyothi-y@github.com>
2026-01-20 09:38:55 -06:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 4f41a90a1f Bump urllib3 from 2.5.0 to 2.6.0 in /__tests__/data (#1253)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-29 20:36:41 -06:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Priyagupta108Aparna Jyothi
83679a892e Bump @types/node from 24.1.0 to 24.9.1 and update macos-13 to macos-15-intel (#1235)
* Bump @types/node from 24.1.0 to 24.9.1

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.1.0 to 24.9.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.9.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Fix license check failure

* update macos-13 to macos-15-intel

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Priyagupta108 <priyagupta108@github.com>
Co-authored-by: Aparna Jyothi <aparnajyothi-y@github.com>
2025-11-24 11:15:58 -06:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> bfc4944b43 Bump prettier from 3.5.3 to 3.6.2 (#1234)
Bumps [prettier](https://github.com/prettier/prettier) from 3.5.3 to 3.6.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.5.3...3.6.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-version: 3.6.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-18 14:22:03 -06:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 97aeb3efb8 Bump requests from 2.32.2 to 2.32.4 in /__tests__/data (#1130)
Bumps [requests](https://github.com/psf/requests) from 2.32.2 to 2.32.4.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.2...v2.32.4)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-13 13:37:31 -06:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>gowridurgad
443da59188 Bump actions/publish-action from 0.3.0 to 0.4.0 & Documentation update for pip-install input (#1199)
* Bump actions/publish-action from 0.3.0 to 0.4.0

Bumps [actions/publish-action](https://github.com/actions/publish-action) from 0.3.0 to 0.4.0.
- [Commits](https://github.com/actions/publish-action/compare/v0.3.0...v0.4.0)

---
updated-dependencies:
- dependency-name: actions/publish-action
  dependency-version: 0.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* updated README for pip-install

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: gowridurgad <gowridurgad@gmail.com>
2025-11-12 12:53:30 -06:00
Tim Felgentreff cfd55ca824 graalpy: add graalpy early-access and windows builds (#880) 2025-10-22 11:16:57 -05:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>priya-kinthali
bba65e51ff Bump typescript from 5.4.2 to 5.9.3 and update docs/advanced-usage.md (#1094)
* Bump typescript from 5.4.2 to 5.8.3

Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.4.2 to 5.8.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.4.2...v5.8.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.8.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update header text from 'Linux' to 'Ubuntu'

* update target to ES2022

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: priya-kinthali <priya-kinthali@github.com>
2025-10-20 11:11:26 -05:00
Yaroslav Halchenko 18566f86b3 Improve wording and "fix example" (remove 3.13) on testing against pre-release (#979)
* Improve wording and "fix example" (remove 3.13) on testing against pre-releases

3.13 was added in a mass tune up in 0b93645e9f , without
adjusting the wording. With 3.13 listed there too, example does not really make much
sense. So I decided to make it explicit in wording and remove 3.13, so whenever next
refactoring to add 3.14 to be added to every line where 3.13 is -- this would not
even come to attention

* Update to use 3.14 not 3.12 as an example for pre-release
2025-10-14 11:42:06 -05:00
gowridurgadand“gowridurgad” 2e3e4b15a8 Add support for pip-install input (#1201)
* Add pip-install input

* Improve error message

* Logic update

---------

Co-authored-by: “gowridurgad” <“hgowridurgad@github.com>
2025-09-25 22:01:19 -05:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Aparna Jyothi
4267e283df Bump urllib3 from 1.26.19 to 2.5.0 in /__tests__/data and document breaking changes in v6 (#1139)
* Bump urllib3 from 1.26.19 to 2.5.0 in /__tests__/data

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.19 to 2.5.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.19...2.5.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.5.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* documentation update

* doc update

* doc update

* doc format update

* doc update

* doc update

* doc update

* fix check failures

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aparna Jyothi <aparnajyothi-y@github.com>
2025-09-17 22:06:08 -05:00
111 changed files with 147108 additions and 145378 deletions
+93 -20
View File
@@ -29,11 +29,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -56,11 +56,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.1t, 3.13.2t, 3.13.5t]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
id: cache-pipenv
uses: ./
@@ -68,9 +68,19 @@ jobs:
python-version: ${{ matrix.python-version }}
cache: 'pipenv'
- name: Install pipenv
run: curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | python
- name: Install dependencies
run: pipenv install requests
run: python -m pip install --upgrade pip pipenv
- name: Install dependencies on Linux/macOS
if: runner.os != 'Windows'
run: |
export PIPENV_PYTHON=$(which python)
pipenv install requests
- name: Install dependencies on Windows
if: runner.os == 'Windows'
run: |
# Remove existing virtualenv if any
python -m pipenv --rm || echo "No existing env"
# Create fresh env using current Python
python -m pipenv install --python $(python -c "import sys; print(sys.executable)") requests
python-poetry-dependencies-caching:
name: Test poetry (Python ${{ matrix.python-version}}, ${{ matrix.os }})
@@ -86,11 +96,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.0, 3.13.1, 3.13.2]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Install poetry
run: pipx install poetry
- name: Init pyproject.toml
@@ -118,11 +128,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -146,11 +156,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.1t, 3.13.2t, 3.13.5t]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
id: cache-pipenv
uses: ./
@@ -159,9 +169,19 @@ jobs:
cache: 'pipenv'
cache-dependency-path: '**/pipenv-requirements.txt'
- name: Install pipenv
run: curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | python
- name: Install dependencies
run: pipenv install requests
run: python -m pip install --upgrade pip pipenv
- name: Install dependencies on Linux/macOS
if: runner.os != 'Windows'
run: |
export PIPENV_PYTHON=$(which python)
pipenv install requests
- name: Install dependencies on Windows
if: runner.os == 'Windows'
run: |
# Remove existing virtualenv if any
python -m pipenv --rm || echo "No existing env"
# Create fresh env using current Python
python -m pipenv install --python $(python -c "import sys; print(sys.executable)") requests
python-pip-dependencies-caching-with-pip-version:
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }})
@@ -177,11 +197,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -205,11 +225,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -219,3 +239,56 @@ jobs:
pip-version: '25.0.1'
- name: Install dependencies
run: pip install numpy pandas requests
python-pip-dependencies-caching-with-pip-install:
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
[
ubuntu-latest,
ubuntu-22.04,
ubuntu-24.04-arm,
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-15-intel
]
python-version: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
pip-install: numpy pandas requests
python-pip-dependencies-caching-path-with-pip-install:
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }}, caching path)
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
[
ubuntu-latest,
ubuntu-22.04,
ubuntu-24.04-arm,
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-15-intel
]
python-version: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
cache-dependency-path: __tests__/data/requirements.txt
pip-install: numpy pandas requests
+78 -15
View File
@@ -29,7 +29,7 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version:
[
@@ -45,8 +45,11 @@ jobs:
exclude:
- os: windows-latest
python-version: pypy-3.11-v7.x
- os: macos-latest
python-version: pypy-3.9-v7.x
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -69,7 +72,7 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version:
['3.10', 'pypy-3.10-v7.x', '3.11', 'pypy-3.11-v7.x', '3.12', '3.13']
@@ -85,7 +88,7 @@ jobs:
- os: ubuntu-22.04-arm
python-version: pypy-3.10-v7.x
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
id: cache-pipenv
uses: ./
@@ -126,7 +129,7 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version:
[
@@ -140,9 +143,10 @@ jobs:
'3.13'
]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Install poetry
run: pipx install poetry
run: |
pipx install poetry
- name: Init pyproject.toml
run: mv ./__tests__/data/pyproject.toml .
- name: Setup Python
@@ -150,6 +154,10 @@ jobs:
with:
python-version: ${{ matrix.python-version }}
cache: 'poetry'
- name: Bootstrap packaging
run: |
python -m ensurepip --upgrade
python -m pip install --upgrade pip setuptools wheel packaging
- name: Install dependencies
run: poetry install --no-root
@@ -167,7 +175,7 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version:
[
@@ -183,8 +191,10 @@ jobs:
exclude:
- os: windows-latest
python-version: pypy-3.11-v7.x
- os: macos-latest
python-version: pypy-3.9-v7.x
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -208,7 +218,7 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version:
['3.10', 'pypy-3.10-v7.x', '3.11', 'pypy-3.11-v7.x', '3.12', '3.13']
@@ -222,7 +232,7 @@ jobs:
- os: ubuntu-22.04-arm
python-version: pypy-3.11-v7.x
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
id: cache-pipenv
uses: ./
@@ -264,11 +274,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -292,11 +302,11 @@ jobs:
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-13
macos-15-intel
]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
@@ -306,3 +316,56 @@ jobs:
pip-version: '25.0.1'
- name: Install dependencies
run: pip install numpy pandas requests
python-pip-dependencies-caching-with-pip-install:
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
[
ubuntu-latest,
ubuntu-24.04-arm,
ubuntu-22.04,
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-15-intel
]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
pip-install: numpy pandas requests
python-pip-dependencies-caching-path-with-pip-install:
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }}, caching path)
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
[
ubuntu-latest,
ubuntu-24.04-arm,
ubuntu-22.04,
ubuntu-22.04-arm,
windows-latest,
macos-latest,
macos-15-intel
]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v6
- name: Setup Python
uses: ./
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
cache-dependency-path: __tests__/data/requirements.txt
pip-install: numpy pandas requests
+10 -2
View File
@@ -25,11 +25,11 @@ jobs:
ubuntu-latest,
ubuntu-24.04-arm,
macos-latest,
macos-13
macos-15-intel
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: Run with setup-python 3.9.13
uses: ./
@@ -73,8 +73,16 @@ jobs:
python-version: '3.13'
- name: Verify 3.13
run: python __tests__/verify-python.py 3.13
- name: Install pipx (Windows)
if: runner. os == 'Windows'
run: python -m pip install pipx
- name: Run python-path sample 3.13
run: pipx run --python '${{ steps.cp313.outputs.python-path }}' nox --version
env:
PIPX_HOME: '${{ runner.temp }}/pipx'
PIPX_BIN_DIR: '${{ runner.temp }}/pipx/bin'
- name: Run with setup-python ==3.13
uses: ./
@@ -14,7 +14,7 @@ jobs:
steps:
- name: Checking out
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: Publish
id: publish
uses: actions/publish-immutable-action@v0.0.4
@@ -22,7 +22,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Update the ${{ env.TAG_NAME }} tag
uses: actions/publish-action@v0.3.0
uses: actions/publish-action@v0.4.0
with:
source-tag: ${{ env.TAG_NAME }}
slack-webhook: ${{ secrets.SLACK_WEBHOOK }}
+6 -6
View File
@@ -25,7 +25,7 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
graalpy:
- 'graalpy-22.3'
@@ -35,7 +35,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.graalpy }}
id: setup-python
@@ -80,13 +80,13 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
graalpy: ['graalpy22.3', 'graalpy23.0', 'graalpy23.1', 'graalpy24.1']
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.graalpy }}
id: setup-python
@@ -106,9 +106,9 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, macos-13]
os: [ubuntu-latest, windows-latest, macos-latest, macos-15-intel]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup GraalPy and check latest
uses: ./
id: graalpy
+12 -12
View File
@@ -28,7 +28,7 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
pypy:
- 'pypy-2.7'
@@ -40,13 +40,13 @@ jobs:
- 'pypy-3.10-v7.3.x'
- 'pypy-3.10-v7.x'
- 'pypy-2.7-v7.3.12rc1'
- 'pypy-3.10-nightly'
- 'pypy-3.11-nightly'
- 'pypy3.10-v7.3.17'
- 'pypy3.11-v7.3.19'
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.pypy }}
id: setup-python
@@ -85,7 +85,7 @@ jobs:
fail-fast: false
matrix:
os:
- macos-13
- macos-15-intel
- macos-14
- macos-15
- windows-2022
@@ -98,7 +98,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.pypy }}
id: setup-python
@@ -144,13 +144,13 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
pypy: ['pypy2.7', 'pypy3.9', 'pypy3.10-nightly', 'pypy3.11']
pypy: ['pypy2.7', 'pypy3.9', 'pypy3.11-nightly', 'pypy3.11']
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.pypy }}
id: setup-python
@@ -178,10 +178,10 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup PyPy and check latest
uses: ./
with:
@@ -220,10 +220,10 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup PyPy and check latest
uses: ./
with:
+30 -30
View File
@@ -26,14 +26,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.python }}
id: setup-python
@@ -63,14 +63,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: echo ${{ matrix.python }} > .python-version
@@ -103,14 +103,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: echo ${{ matrix.python }} > .python-version
@@ -141,14 +141,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0, 3.13.1, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -182,14 +182,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0, 3.13.1, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -223,14 +223,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0t, 3.13.1t, 3.13.2t, 3.14t-dev]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-tool-versions-file ${{ matrix.python }}
run: |
@@ -254,14 +254,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13t, 3.14t-dev]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -294,14 +294,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0t, 3.13.1t, 3.13.2t, 3.14t-dev]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -334,13 +334,13 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python 3.14.0-alpha.6
id: setup-python
@@ -373,11 +373,11 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python 3.14t-dev
id: setup-python
@@ -410,11 +410,11 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python 3.14t
id: setup-python
@@ -446,14 +446,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.0t, 3.13.1t, 3.13.2t]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.python }}
id: setup-python
@@ -481,11 +481,11 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
python-version: [3.13t, 3.14t-dev]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python and check latest
id: setup-python
uses: ./
@@ -508,10 +508,10 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python and check latest
id: setup-python
uses: ./
@@ -535,14 +535,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.13.1, 3.13.2, 3.14-dev, 3.14.0-alpha.6]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.python }}
id: setup-python
uses: ./
+28 -28
View File
@@ -26,14 +26,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.python }}
id: setup-python
@@ -70,14 +70,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: echo ${{ matrix.python }} > .python-version
@@ -117,14 +117,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: echo ${{ matrix.python }} > .python-version
@@ -162,14 +162,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, '==3.12.3', 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -212,14 +212,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -262,7 +262,7 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
@@ -272,7 +272,7 @@ jobs:
python: graalpy-24.1.2
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-tool-versions-file ${{ matrix.python }}
run: |
@@ -296,14 +296,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -346,14 +346,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: [3.9.13, 3.10.11, 3.11.9, 3.13.2]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: build-version-file ${{ matrix.python }}
run: |
@@ -396,13 +396,13 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python 3.14.0-alpha.6
id: setup-python
@@ -441,11 +441,11 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python 3.14-dev
id: setup-python
@@ -478,11 +478,11 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python 3.14
id: setup-python
@@ -514,14 +514,14 @@ jobs:
windows-latest,
ubuntu-22.04,
ubuntu-22.04-arm,
macos-13,
macos-15-intel,
ubuntu-latest,
ubuntu-24.04-arm
]
python: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: setup-python ${{ matrix.python }}
id: setup-python
@@ -549,11 +549,11 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python and check latest
uses: ./
with:
@@ -582,10 +582,10 @@ jobs:
ubuntu-22.04-arm,
ubuntu-24.04-arm,
ubuntu-latest,
macos-13
macos-15-intel
]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Setup Python and check latest
uses: ./
with:
+2
View File
@@ -10,6 +10,8 @@ allowed:
- cc0-1.0
- unlicense
- 0bsd
- blueoak-1.0.0
reviewed:
npm:
- "@actions/http-client"
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+13 -5
View File
@@ -11,6 +11,13 @@ This action provides the following functionality for GitHub Actions users:
- Optionally caching dependencies for pip, pipenv and poetry
- Registering problem matchers for error output
## Breaking changes in V6
- Upgraded action from node20 to node24
> Make sure your runner is on version v2.327.1 or later to ensure compatibility with this release. See [Release Notes](https://github.com/actions/runner/releases/tag/v2.327.1)
For more details, see the full release notes on the [releases page](https://github.com/actions/setup-python/releases/tag/v6.0.0)
## Basic usage
See [action.yml](action.yml)
@@ -18,7 +25,7 @@ See [action.yml](action.yml)
**Python**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -28,7 +35,7 @@ steps:
**PyPy**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: 'pypy3.10'
@@ -38,7 +45,7 @@ steps:
**GraalPy**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: 'graalpy-24.0'
@@ -48,7 +55,7 @@ steps:
**Free threaded Python**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13t'
@@ -83,7 +90,7 @@ The action defaults to searching for a dependency file (`requirements.txt` or `p
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -111,6 +118,7 @@ See examples of using `cache` and `cache-dependency-path` for `pipenv` and `poet
- [Using `setup-python` on GHES](docs/advanced-usage.md#using-setup-python-on-ghes)
- [Allow pre-releases](docs/advanced-usage.md#allow-pre-releases)
- [Using the pip-version input](docs/advanced-usage.md#using-the-pip-version-input)
- [Using the pip-install input](docs/advanced-usage.md#using-the-pip-install-input)
## Recommended permissions
+4 -11
View File
@@ -190,19 +190,12 @@ virtualenvs.path = "{cache-dir}/virtualenvs" # /Users/patrick/Library/Caches/py
restoredKeys.forEach(restoredKey => {
if (restoredKey) {
if (process.platform === 'linux' && packageManager === 'pip') {
const osSegment =
process.platform === 'linux' ? '-20.04-Ubuntu' : '';
const versionSuffix = packageManager === 'poetry' ? '-v2' : '';
expect(infoSpy).toHaveBeenCalledWith(
`Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}-20.04-Ubuntu-python-${pythonVersion}-${packageManager}-${fileHash}`
`Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}${osSegment}-python-${pythonVersion}-${packageManager}${versionSuffix}-${fileHash}`
);
} else if (packageManager === 'poetry') {
expect(infoSpy).toHaveBeenCalledWith(
`Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}-python-${pythonVersion}-${packageManager}-v2-${fileHash}`
);
} else {
expect(infoSpy).toHaveBeenCalledWith(
`Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}-python-${pythonVersion}-${packageManager}-${fileHash}`
);
}
} else {
expect(infoSpy).toHaveBeenCalledWith(
`${packageManager} cache is not found`
File diff suppressed because it is too large Load Diff
+1
View File
@@ -9,6 +9,7 @@ python = ">=3.9,<3.14"
flake8 = "^4.0.1"
pyinstaller = "6.10.0"
setuptools = ">=78.1.1"
packaging = ">=22.0,<26"
[tool.poetry.dev-dependencies]
+4 -4
View File
@@ -1,12 +1,12 @@
certifi==2020.6.20
chardet==3.0.4
docutils==0.16
idna==3.7
idna==3.15
Kivy==2.0.0rc3
Kivy-Garden==0.1.4
packaging==20.7
pdf2image==1.12.1
Pygments==2.6.1
requests==2.32.2
urllib3==1.26.19
Pygments==2.20.0
requests==2.33.0
urllib3==2.7.0
xlrd==1.2.0
+4 -4
View File
@@ -8,7 +8,7 @@ docutils==0.16
future==0.18.2; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2'
idna==3.7
idna==3.15
itsdangerous==1.1.0
@@ -32,7 +32,7 @@ pefile==2021.9.3; python_full_version >= '3.6.0'
pillow>=10.2.0
pygments==2.6.1
pygments==2.20.0
pyinstaller==6.10.0
@@ -40,8 +40,8 @@ pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3
pywin32-ctypes==0.2.0
requests==2.32.2
requests==2.33.0
urllib3==1.26.19
urllib3==2.7.0
xlrd==1.2.0
+6 -9
View File
@@ -10,7 +10,7 @@ import * as path from 'path';
import * as semver from 'semver';
import * as finder from '../src/find-graalpy';
import {IGraalPyManifestRelease, IS_WINDOWS} from '../src/utils';
import {IGraalPyManifestRelease} from '../src/utils';
import manifestData from './data/graalpy.json';
@@ -19,9 +19,6 @@ const architecture = 'x64';
const toolDir = path.join(__dirname, 'runner', 'tools');
const tempDir = path.join(__dirname, 'runner', 'temp');
/* GraalPy doesn't have a windows release yet */
const describeSkipOnWindows = IS_WINDOWS ? describe.skip : describe;
describe('parseGraalPyVersion', () => {
it.each([
['graalpy-23', '23'],
@@ -108,7 +105,7 @@ describe('findGraalPyToolCache', () => {
});
});
describeSkipOnWindows('findGraalPyVersion', () => {
describe('findGraalPyVersion', () => {
let getBooleanInputSpy: jest.SpyInstance;
let warningSpy: jest.SpyInstance;
let debugSpy: jest.SpyInstance;
@@ -358,13 +355,13 @@ describeSkipOnWindows('findGraalPyVersion', () => {
it('found and install successfully, pre-release fallback', async () => {
spyCacheDir = jest.spyOn(tc, 'cacheDir');
spyCacheDir.mockImplementation(() =>
path.join(toolDir, 'GraalPy', '23.1', architecture)
path.join(toolDir, 'GraalPy', '24.1', architecture)
);
spyChmodSync = jest.spyOn(fs, 'chmodSync');
spyChmodSync.mockImplementation(() => undefined);
await expect(
finder.findGraalPyVersion(
'graalpy23.1',
'graalpy24.1',
architecture,
false,
false,
@@ -372,7 +369,7 @@ describeSkipOnWindows('findGraalPyVersion', () => {
)
).rejects.toThrow();
await expect(
finder.findGraalPyVersion('graalpy23.1', architecture, false, false, true)
).resolves.toEqual('23.1.0-a.1');
finder.findGraalPyVersion('graalpy24.1', architecture, false, false, true)
).resolves.toEqual('24.1.0-ea.9');
});
});
+20 -23
View File
@@ -21,24 +21,21 @@ const architecture = 'x64';
const toolDir = path.join(__dirname, 'runner', 'tools');
const tempDir = path.join(__dirname, 'runner', 'temp');
/* GraalPy doesn't have a windows release yet */
const describeSkipOnWindows = IS_WINDOWS ? describe.skip : describe;
describe('graalpyVersionToSemantic', () => {
it.each([
['23.0.0a1', '23.0.0a1'],
['23.0.0', '23.0.0'],
['23.0.x', '23.0.x'],
['23.x', '23.x']
['graalpy-24.1.0-ea.09', '24.1.0-ea.9'],
['graal-23.0.0', '23.0.0'],
['vm-23.0.x', '23.0.x'],
['graal-23.x', '23.x']
])('%s -> %s', (input, expected) => {
expect(installer.graalPyTagToVersion(input)).toEqual(expected);
});
});
describeSkipOnWindows('findRelease', () => {
describe('findRelease', () => {
const result = JSON.stringify(manifestData);
const releases = JSON.parse(result) as IGraalPyManifestRelease[];
const extension = 'tar.gz';
const extension = IS_WINDOWS ? 'zip' : 'tar.gz';
const arch = installer.toGraalPyArchitecture(architecture);
const platform = installer.toGraalPyPlatform(process.platform);
const extensionName = `${platform}-${arch}.${extension}`;
@@ -47,8 +44,8 @@ describeSkipOnWindows('findRelease', () => {
browser_download_url: `https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-${extensionName}`
};
const filesRC1: IGraalPyManifestAsset = {
name: `graalpython-23.1.0a1-${extensionName}`,
browser_download_url: `https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-${extensionName}`
name: `graalpy-24.1.0-ea.09-${extensionName}`,
browser_download_url: `https://github.com/graalvm/graal-languages-ea-builds/releases/download/graalpy-24.1.0-ea.09/graalpy-24.1.0-ea.09-${extensionName}`
};
let warningSpy: jest.SpyInstance;
@@ -84,15 +81,15 @@ describeSkipOnWindows('findRelease', () => {
});
it('Preview version of GraalPy is found', () => {
const graalpyVersion = installer.graalPyTagToVersion('vm-23.1.0a1');
const graalpyVersion = installer.graalPyTagToVersion('vm-24.1.0-ea.09');
expect(
installer.findRelease(releases, graalpyVersion, architecture, false)
).toMatchObject({
foundAsset: {
name: `graalpython-23.1.0a1-${extensionName}`,
browser_download_url: `https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-${extensionName}`
name: `graalpy-24.1.0-ea.09-${extensionName}`,
browser_download_url: `https://github.com/graalvm/graal-languages-ea-builds/releases/download/graalpy-24.1.0-ea.09/graalpy-24.1.0-ea.09-${extensionName}`
},
resolvedGraalPyVersion: '23.1.0-a.1'
resolvedGraalPyVersion: '24.1.0-ea.9'
});
});
@@ -107,7 +104,7 @@ describeSkipOnWindows('findRelease', () => {
});
it('GraalPy version matches semver (pre-release)', () => {
const graalpyVersion = '23.1.x';
const graalpyVersion = '24.1.x';
expect(
installer.findRelease(releases, graalpyVersion, architecture, false)
).toBeNull();
@@ -115,12 +112,12 @@ describeSkipOnWindows('findRelease', () => {
installer.findRelease(releases, graalpyVersion, architecture, true)
).toMatchObject({
foundAsset: filesRC1,
resolvedGraalPyVersion: '23.1.0-a.1'
resolvedGraalPyVersion: '24.1.0-ea.9'
});
});
});
describeSkipOnWindows('installGraalPy', () => {
describe('installGraalPy', () => {
let tcFind: jest.SpyInstance;
let warningSpy: jest.SpyInstance;
let debugSpy: jest.SpyInstance;
@@ -232,20 +229,20 @@ describeSkipOnWindows('installGraalPy', () => {
it('found and install GraalPy, pre-release fallback', async () => {
spyCacheDir = jest.spyOn(tc, 'cacheDir');
spyCacheDir.mockImplementation(() =>
path.join(toolDir, 'GraalPy', '23.1.0', architecture)
path.join(toolDir, 'GraalPy', '24.1.0', architecture)
);
spyChmodSync = jest.spyOn(fs, 'chmodSync');
spyChmodSync.mockImplementation(() => undefined);
await expect(
installer.installGraalPy('23.1.x', architecture, false, undefined)
installer.installGraalPy('24.1.x', architecture, false, undefined)
).rejects.toThrow();
await expect(
installer.installGraalPy('23.1.x', architecture, true, undefined)
installer.installGraalPy('24.1.x', architecture, true, undefined)
).resolves.toEqual({
installDir: path.join(toolDir, 'GraalPy', '23.1.0', architecture),
resolvedGraalPyVersion: '23.1.0-a.1'
installDir: path.join(toolDir, 'GraalPy', '24.1.0', architecture),
resolvedGraalPyVersion: '24.1.0-ea.9'
});
expect(spyHttpClient).toHaveBeenCalled();
+2
View File
@@ -31,6 +31,8 @@ inputs:
default: false
pip-version:
description: "Used to specify the version of pip to install with the Python. Supported format: major[.minor][.patch]."
pip-install:
description: "Used to specify the packages to install with pip after setting up Python. Can be a requirements file or package names."
outputs:
python-version:
description: "The installed Python or PyPy version. Useful when given a version range as input."
+82739 -78952
View File
File diff suppressed because one or more lines are too long
+60495 -63034
View File
File diff suppressed because one or more lines are too long
+60 -40
View File
@@ -18,11 +18,12 @@
- [Hosted tool cache](advanced-usage.md#hosted-tool-cache)
- [Using `setup-python` with a self-hosted runner](advanced-usage.md#using-setup-python-with-a-self-hosted-runner)
- [Windows](advanced-usage.md#windows)
- [Linux](advanced-usage.md#linux)
- [Ubuntu](advanced-usage.md#Ubuntu)
- [macOS](advanced-usage.md#macos)
- [Using `setup-python` on GHES](advanced-usage.md#using-setup-python-on-ghes)
- [Allow pre-releases](advanced-usage.md#allow-pre-releases)
- [Using the pip-version input](advanced-usage.md#using-the-pip-version-input)
- [Using the pip-install input](advanced-usage.md#using-the-pip-install-input)
## Using the `python-version` input
@@ -32,7 +33,7 @@ If there is a specific version of Python that you need and you don't want to wor
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.12.6'
@@ -46,7 +47,7 @@ You can specify **only a major and minor version** if you are okay with the most
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -60,7 +61,7 @@ You can specify the version with **prerelease tag** to download and set up an ac
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.14.0-alpha.1'
@@ -71,7 +72,7 @@ It's also possible to use **x.y-dev syntax** to download and set up the latest p
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.14-dev'
@@ -84,7 +85,7 @@ Free threaded Python is only available starting with the 3.13 release.
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13t'
@@ -95,7 +96,7 @@ Note that the **t** suffix is not `semver` syntax. If you wish to specify a rang
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '>=3.13'
@@ -109,7 +110,7 @@ You can also use several types of ranges that are specified in [semver](https://
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '>=3.9 <3.14'
@@ -120,7 +121,7 @@ steps:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13.0-alpha - 3.13.0'
@@ -131,7 +132,7 @@ steps:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.x'
@@ -164,7 +165,7 @@ jobs:
- 'pypy3.10' # the latest available version of PyPy that supports Python 3.10
- 'pypy3.10-v7.3.17' # Python 3.10 and PyPy 7.3.17
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
@@ -182,7 +183,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: |
@@ -199,7 +200,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: |
@@ -216,7 +217,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: |
@@ -241,7 +242,7 @@ jobs:
python-version: ['3.x', 'pypy3.8', 'pypy3.9' ]
name: Python ${{ matrix.python-version }} sample
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
@@ -267,7 +268,7 @@ jobs:
- os: windows-latest
python-version: '3.9'
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
@@ -285,7 +286,7 @@ jobs:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version-file: '.python-version' # Read python version from a file .python-version
@@ -294,7 +295,7 @@ steps:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version-file: 'pyproject.toml' # Read python version from a file pyproject.toml
@@ -303,7 +304,7 @@ steps:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version-file: '.tool-versions' # Read python version from a file .tool-versions
@@ -312,7 +313,7 @@ steps:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version-file: 'Pipfile' # Read python version from a file Pipfile
@@ -327,7 +328,7 @@ If `check-latest` is set to `true`, the action first checks if the cached versio
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -342,7 +343,7 @@ steps:
**Caching pipenv dependencies:**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -355,7 +356,7 @@ steps:
**Caching poetry dependencies:**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Install poetry
run: pipx install poetry
- uses: actions/setup-python@v6
@@ -370,7 +371,7 @@ steps:
**Using a list of file paths to cache dependencies**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -385,7 +386,7 @@ steps:
**Using wildcard patterns to cache dependencies**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -397,7 +398,7 @@ steps:
**Using a list of wildcard patterns to cache dependencies**
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -412,7 +413,7 @@ steps:
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.13'
@@ -435,7 +436,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
id: cp312
with:
@@ -452,7 +453,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
id: cp313
with:
@@ -468,7 +469,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
id: cp313
with:
@@ -499,7 +500,7 @@ Such a requirement on side-effect could be because you don't want your composite
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
id: cp313
with:
@@ -554,8 +555,8 @@ GitHub hosted runners have a tool cache that comes with a few versions of Python
|**PyPy tool cache**|`RUNNER_TOOL_CACHE/PyPy/*`|
GitHub runner images are set up in [actions/runner-images](https://github.com/actions/runner-images). During the setup, the available versions of Python and PyPy are automatically downloaded, set up and documented.
- Tool cache setup for Ubuntu: [Install-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/linux/scripts/installers/Install-Toolset.ps1) [Configure-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/linux/scripts/installers/Configure-Toolset.ps1)
- Tool cache setup for Windows: [Install-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/win/scripts/Installers/Install-Toolset.ps1) [Configure-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/win/scripts/Installers/Configure-Toolset.ps1)
- Tool cache setup for Ubuntu: [Install-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/ubuntu/scripts/build/Install-Toolset.ps1) [Configure-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/ubuntu/scripts/build/Configure-Toolset.ps1)
- Tool cache setup for Windows: [Install-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/windows/scripts/build/Install-Toolset.ps1) [Configure-Toolset.ps1](https://github.com/actions/runner-images/blob/main/images/windows/scripts/build/Configure-Toolset.ps1)
## Using `setup-python` with a self-hosted runner
@@ -577,9 +578,9 @@ If you have a supported self-hosted runner and you would like to use `setup-pyth
>If you are experiencing problems while configuring Python on your self-hosted runner, turn on [step debugging](https://github.com/actions/toolkit/blob/main/docs/action-debugging.md#step-debug-logs) to see additional logs.
### Linux
### Ubuntu
By default, the runner downloads and installs tools into the folder set up by `RUNNER_TOOL_CACHE` environment variable. The environment variable called `AGENT_TOOLSDIRECTORY` can be set to change this location for Linux self-hosted runners:
By default, the runner downloads and installs tools into the folder set up by `RUNNER_TOOL_CACHE` environment variable. The environment variable called `AGENT_TOOLSDIRECTORY` can be set to change this location for Ubuntu self-hosted runners:
- In the same shell that your runner is using, type `export AGENT_TOOLSDIRECTORY=/path/to/folder`.
- More permanent way of setting the environment variable is to create an `.env` file in the same directory as your runner and to add `AGENT_TOOLSDIRECTORY=/path/to/folder`. This ensures the variable is always set if your runner is configured as a service.
@@ -631,8 +632,8 @@ If the runner is not able to access github.com, any Python versions requested du
The `allow-prereleases` flag defaults to `false`.
If `allow-prereleases` is set to `true`, the action will allow falling back to pre-release versions of Python when a matching GA version of Python is not available.
This allows for example to simplify reuse of `python-version` as an input of nox for pre-releases of Python by not requiring manipulation of the `3.y-dev` specifier.
For CPython, `allow-prereleases` will only have effect for `x.y` version range (e.g. `3.12`).
Let's say that python 3.12 is not generally available, the following workflow will fallback to the most recent pre-release of python 3.12:
For CPython, `allow-prereleases` will only have effect for `x.y` version range (e.g. `3.14`).
Let's say that in the past, when python 3.14 was not yet generally available, the following workflow would have fallback to the most recent pre-release of python 3.14:
```yaml
jobs:
test:
@@ -642,10 +643,10 @@ jobs:
fail-fast: false
matrix:
os: [Ubuntu, Windows, macOS]
python_version: ["3.11", "3.12", "3.13"]
python_version: ["3.14"]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: "${{ matrix.python_version }}"
@@ -660,7 +661,7 @@ The version of Pip should be specified in the format `major`, `major.minor`, or
```yaml
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
@@ -672,3 +673,22 @@ The version of Pip should be specified in the format `major`, `major.minor`, or
> The `pip-version` input is supported only with standard Python versions. It is not available when using PyPy or GraalPy.
> Using a specific or outdated version of pip may result in compatibility or security issues and can cause job failures. For best practices and guidance, refer to the official [pip documentation](https://pip.pypa.io/en/stable/).
## Using the pip-install input
The `pip-install` input allows you to install dependencies as part of the Python setup step.
```yaml
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.13'
pip-install: -r requirements.txt
```
> Note: This feature is intended for standard pip-based dependency installations.
For complex workflows, or alternative package managers (e.g., poetry, pipenv), we recommend using separate steps to maintain clarity and flexibility.
> The `pip-install` input mirrors the flexibility of a standard pip install command and supports most of its arguments.
+1417 -1195
View File
File diff suppressed because it is too large Load Diff
+14 -11
View File
@@ -1,6 +1,6 @@
{
"name": "setup-python",
"version": "6.0.0",
"version": "6.3.0",
"private": true,
"description": "Setup python action",
"main": "dist/index.js",
@@ -28,19 +28,19 @@
"author": "GitHub",
"license": "MIT",
"dependencies": {
"@actions/cache": "^4.0.3",
"@actions/core": "^1.10.0",
"@actions/exec": "^1.1.0",
"@actions/glob": "^0.5.0",
"@actions/http-client": "^2.2.3",
"@actions/io": "^1.0.2",
"@actions/tool-cache": "^2.0.2",
"@actions/cache": "^5.1.0",
"@actions/core": "^2.0.3",
"@actions/exec": "^2.0.0",
"@actions/glob": "^0.5.1",
"@actions/http-client": "^3.0.2",
"@actions/io": "^2.0.0",
"@actions/tool-cache": "^3.0.1",
"@iarna/toml": "^3.0.0",
"semver": "^7.7.1"
},
"devDependencies": {
"@types/jest": "^29.5.12",
"@types/node": "^24.1.0",
"@types/node": "^24.10.1",
"@types/semver": "^7.7.0",
"@typescript-eslint/eslint-plugin": "^5.54.0",
"@typescript-eslint/parser": "^5.54.0",
@@ -51,8 +51,11 @@
"eslint-plugin-node": "^11.1.0",
"jest": "^29.7.0",
"jest-circus": "^29.7.0",
"prettier": "^3.5.3",
"prettier": "^3.6.2",
"ts-jest": "^29.3.2",
"typescript": "^5.4.2"
"typescript": "^5.9.3"
},
"overrides": {
"fast-xml-parser": "^5.9.2"
}
}

Some files were not shown because too many files have changed in this diff Show More