mirror of
				https://gitea.com/actions/setup-python.git
				synced 2025-10-31 07:47:08 +00:00 
			
		
		
		
	Compare commits
	
		
			20 Commits
		
	
	
		
			dependabot
			...
			85595e05bc
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 85595e05bc | ||
|   | e797f83bcb | ||
|   | 3d1e2d2ca0 | ||
|   | 65b071217a | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 5b668cf765 | ||
|   | f62a0e252f | ||
|   | 9322b3ca74 | ||
|   | fbeb884f69 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 03bb6152f4 | ||
|   | 36da51d563 | ||
|   | 3c6f142cc0 | ||
|   | 88ffd4d597 | ||
|   | 532b046aaf | ||
|   | 1264885983 | ||
|   | e9c40fbc2b | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 5fa0ee6f38 | ||
|   | 5db1cf9a59 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | a26af69be9 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 30eafe9548 | ||
| ![dependabot[bot]](/assets/img/avatar_default.png)  | 5d95bc16d4 | 
							
								
								
									
										2
									
								
								.github/workflows/basic-validation.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/basic-validation.yml
									
									
									
									
										vendored
									
									
								
							| @@ -14,4 +14,4 @@ jobs: | |||||||
|     name: Basic validation |     name: Basic validation | ||||||
|     uses: actions/reusable-workflows/.github/workflows/basic-validation.yml@main |     uses: actions/reusable-workflows/.github/workflows/basic-validation.yml@main | ||||||
|     with: |     with: | ||||||
|       node-version: '20.x' |       node-version: '24.x' | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.github/workflows/check-dist.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/check-dist.yml
									
									
									
									
										vendored
									
									
								
							| @@ -16,4 +16,4 @@ jobs: | |||||||
|     name: Check dist/ |     name: Check dist/ | ||||||
|     uses: actions/reusable-workflows/.github/workflows/check-dist.yml@main |     uses: actions/reusable-workflows/.github/workflows/check-dist.yml@main | ||||||
|     with: |     with: | ||||||
|       node-version: '20.x' |       node-version: '24.x' | ||||||
|   | |||||||
							
								
								
									
										71
									
								
								.github/workflows/e2e-cache-freethreaded.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										71
									
								
								.github/workflows/e2e-cache-freethreaded.yml
									
									
									
									
										vendored
									
									
								
							| @@ -33,7 +33,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|         python-version: [3.13.0t, 3.13.1t, 3.13.2t] |         python-version: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -58,9 +58,9 @@ jobs: | |||||||
|             macos-latest, |             macos-latest, | ||||||
|             macos-13 |             macos-13 | ||||||
|           ] |           ] | ||||||
|         python-version: [3.13.0t, 3.13.1t, 3.13.2t] |         python-version: [3.13.1t, 3.13.2t, 3.13.5t] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         id: cache-pipenv |         id: cache-pipenv | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -90,7 +90,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|         python-version: [3.13.0, 3.13.1, 3.13.2] |         python-version: [3.13.0, 3.13.1, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Install poetry |       - name: Install poetry | ||||||
|         run: pipx install poetry |         run: pipx install poetry | ||||||
|       - name: Init pyproject.toml |       - name: Init pyproject.toml | ||||||
| @@ -122,7 +122,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|         python-version: [3.13.0t, 3.13.1t, 3.13.2t] |         python-version: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -148,9 +148,9 @@ jobs: | |||||||
|             macos-latest, |             macos-latest, | ||||||
|             macos-13 |             macos-13 | ||||||
|           ] |           ] | ||||||
|         python-version: [3.13.0t, 3.13.1t, 3.13.2t] |         python-version: [3.13.1t, 3.13.2t, 3.13.5t] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         id: cache-pipenv |         id: cache-pipenv | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -162,3 +162,60 @@ jobs: | |||||||
|         run: curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | python |         run: curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | python | ||||||
|       - name: Install dependencies |       - name: Install dependencies | ||||||
|         run: pipenv install requests |         run: pipenv install requests | ||||||
|  |  | ||||||
|  |   python-pip-dependencies-caching-with-pip-version: | ||||||
|  |     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-13 | ||||||
|  |           ] | ||||||
|  |         python-version: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v5 | ||||||
|  |       - name: Setup Python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version: ${{ matrix.python-version }} | ||||||
|  |           cache: 'pip' | ||||||
|  |           pip-version: '25.0.1' | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: pip install numpy pandas requests | ||||||
|  |  | ||||||
|  |   python-pip-dependencies-caching-path-with-pip-version: | ||||||
|  |     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-13 | ||||||
|  |           ] | ||||||
|  |         python-version: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v5 | ||||||
|  |       - name: Setup Python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version: ${{ matrix.python-version }} | ||||||
|  |           cache: 'pip' | ||||||
|  |           cache-dependency-path: __tests__/data/requirements.txt | ||||||
|  |           pip-version: '25.0.1' | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: pip install numpy pandas requests | ||||||
|   | |||||||
							
								
								
									
										67
									
								
								.github/workflows/e2e-cache.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										67
									
								
								.github/workflows/e2e-cache.yml
									
									
									
									
										vendored
									
									
								
							| @@ -46,7 +46,7 @@ jobs: | |||||||
|           - os: windows-latest |           - os: windows-latest | ||||||
|             python-version: pypy-3.11-v7.x |             python-version: pypy-3.11-v7.x | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -85,7 +85,7 @@ jobs: | |||||||
|           - os: ubuntu-22.04-arm |           - os: ubuntu-22.04-arm | ||||||
|             python-version: pypy-3.10-v7.x |             python-version: pypy-3.10-v7.x | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         id: cache-pipenv |         id: cache-pipenv | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -140,7 +140,7 @@ jobs: | |||||||
|             '3.13' |             '3.13' | ||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Install poetry |       - name: Install poetry | ||||||
|         run: pipx install poetry |         run: pipx install poetry | ||||||
|       - name: Init pyproject.toml |       - name: Init pyproject.toml | ||||||
| @@ -184,7 +184,7 @@ jobs: | |||||||
|           - os: windows-latest |           - os: windows-latest | ||||||
|             python-version: pypy-3.11-v7.x |             python-version: pypy-3.11-v7.x | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -222,7 +222,7 @@ jobs: | |||||||
|           - os: ubuntu-22.04-arm |           - os: ubuntu-22.04-arm | ||||||
|             python-version: pypy-3.11-v7.x |             python-version: pypy-3.11-v7.x | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|         id: cache-pipenv |         id: cache-pipenv | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -249,3 +249,60 @@ jobs: | |||||||
|           } |           } | ||||||
|       - name: Run Python Script |       - name: Run Python Script | ||||||
|         run: pipenv run python test-pipenv.py |         run: pipenv run python test-pipenv.py | ||||||
|  |  | ||||||
|  |   python-pip-dependencies-caching-with-pip-version: | ||||||
|  |     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-13 | ||||||
|  |           ] | ||||||
|  |         python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v5 | ||||||
|  |       - name: Setup Python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version: ${{ matrix.python-version }} | ||||||
|  |           cache: 'pip' | ||||||
|  |           pip-version: '25.0.1' | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: pip install numpy pandas requests | ||||||
|  |  | ||||||
|  |   python-pip-dependencies-caching-path-with-pip-version: | ||||||
|  |     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-13 | ||||||
|  |           ] | ||||||
|  |         python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v5 | ||||||
|  |       - name: Setup Python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version: ${{ matrix.python-version }} | ||||||
|  |           cache: 'pip' | ||||||
|  |           cache-dependency-path: __tests__/data/requirements.txt | ||||||
|  |           pip-version: '25.0.1' | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: pip install numpy pandas requests | ||||||
|   | |||||||
							
								
								
									
										5
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							| @@ -29,7 +29,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: Run with setup-python 3.9.13 |       - name: Run with setup-python 3.9.13 | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -38,7 +38,7 @@ jobs: | |||||||
|       - name: Verify 3.9.13 |       - name: Verify 3.9.13 | ||||||
|         run: python __tests__/verify-python.py 3.9.13 |         run: python __tests__/verify-python.py 3.9.13 | ||||||
|  |  | ||||||
|       - name: Run with setup-python 3.9.13 |       - name: Run with setup-python 3.10.11 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 3.10.11 |           python-version: 3.10.11 | ||||||
| @@ -89,6 +89,7 @@ jobs: | |||||||
|           python-version: '<3.13' |           python-version: '<3.13' | ||||||
|       - name: Verify <3.13 |       - name: Verify <3.13 | ||||||
|         run: python __tests__/verify-python.py 3.12 |         run: python __tests__/verify-python.py 3.12 | ||||||
|  |  | ||||||
|       - name: Test Raw Endpoint Access |       - name: Test Raw Endpoint Access | ||||||
|         run: | |         run: | | ||||||
|           curl -L https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json | jq empty |           curl -L https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json | jq empty | ||||||
|   | |||||||
| @@ -14,7 +14,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checking out |       - name: Checking out | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|       - name: Publish |       - name: Publish | ||||||
|         id: publish |         id: publish | ||||||
|         uses: actions/publish-immutable-action@v0.0.4 |         uses: actions/publish-immutable-action@v0.0.4 | ||||||
|   | |||||||
| @@ -22,7 +22,7 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|       - name: Update the ${{ env.TAG_NAME }} tag |       - name: Update the ${{ env.TAG_NAME }} tag | ||||||
|         uses: actions/publish-action@v0.3.0 |         uses: actions/publish-action@v0.4.0 | ||||||
|         with: |         with: | ||||||
|           source-tag: ${{ env.TAG_NAME }} |           source-tag: ${{ env.TAG_NAME }} | ||||||
|           slack-webhook: ${{ secrets.SLACK_WEBHOOK }} |           slack-webhook: ${{ secrets.SLACK_WEBHOOK }} | ||||||
|   | |||||||
							
								
								
									
										6
									
								
								.github/workflows/test-graalpy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.github/workflows/test-graalpy.yml
									
									
									
									
										vendored
									
									
								
							| @@ -35,7 +35,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.graalpy }} |       - name: setup-python ${{ matrix.graalpy }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -86,7 +86,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.graalpy }} |       - name: setup-python ${{ matrix.graalpy }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -108,7 +108,7 @@ jobs: | |||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, macos-latest, macos-13] |         os: [ubuntu-latest, macos-latest, macos-13] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup GraalPy and check latest |       - name: Setup GraalPy and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         id: graalpy |         id: graalpy | ||||||
|   | |||||||
							
								
								
									
										11
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							| @@ -46,7 +46,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.pypy }} |       - name: setup-python ${{ matrix.pypy }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -88,7 +88,6 @@ jobs: | |||||||
|           - macos-13 |           - macos-13 | ||||||
|           - macos-14 |           - macos-14 | ||||||
|           - macos-15 |           - macos-15 | ||||||
|           - windows-2019 |  | ||||||
|           - windows-2022 |           - windows-2022 | ||||||
|           - windows-2025 |           - windows-2025 | ||||||
|           - ubuntu-22.04 |           - ubuntu-22.04 | ||||||
| @@ -99,7 +98,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.pypy }} |       - name: setup-python ${{ matrix.pypy }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -151,7 +150,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.pypy }} |       - name: setup-python ${{ matrix.pypy }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -182,7 +181,7 @@ jobs: | |||||||
|             macos-13 |             macos-13 | ||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup PyPy and check latest |       - name: Setup PyPy and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -224,7 +223,7 @@ jobs: | |||||||
|             macos-13 |             macos-13 | ||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup PyPy and check latest |       - name: Setup PyPy and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|   | |||||||
							
								
								
									
										115
									
								
								.github/workflows/test-python-freethreaded.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										115
									
								
								.github/workflows/test-python-freethreaded.yml
									
									
									
									
										vendored
									
									
								
							| @@ -24,7 +24,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -34,7 +33,7 @@ jobs: | |||||||
|         python: [3.13.0t, 3.13.1t, 3.13.2t] |         python: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.python }} |       - name: setup-python ${{ matrix.python }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -62,7 +61,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -72,7 +70,7 @@ jobs: | |||||||
|         python: [3.13.0t, 3.13.1t, 3.13.2t] |         python: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: echo ${{ matrix.python }} > .python-version |         run: echo ${{ matrix.python }} > .python-version | ||||||
| @@ -103,7 +101,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -113,7 +110,7 @@ jobs: | |||||||
|         python: [3.13.0t, 3.13.1t, 3.13.2t] |         python: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: echo ${{ matrix.python }} > .python-version |         run: echo ${{ matrix.python }} > .python-version | ||||||
| @@ -142,7 +139,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -152,7 +148,7 @@ jobs: | |||||||
|         python: [3.13.0, 3.13.1, 3.13.2] |         python: [3.13.0, 3.13.1, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: | |         run: | | ||||||
| @@ -184,7 +180,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -194,7 +189,7 @@ jobs: | |||||||
|         python: [3.13.0, 3.13.1, 3.13.2] |         python: [3.13.0, 3.13.1, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: | |         run: | | ||||||
| @@ -226,7 +221,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -236,7 +230,7 @@ jobs: | |||||||
|         python: [3.13.0t, 3.13.1t, 3.13.2t, 3.14t-dev] |         python: [3.13.0t, 3.13.1t, 3.13.2t, 3.14t-dev] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-tool-versions-file ${{ matrix.python }} |       - name: build-tool-versions-file ${{ matrix.python }} | ||||||
|         run: | |         run: | | ||||||
| @@ -248,6 +242,86 @@ jobs: | |||||||
|         with: |         with: | ||||||
|           python-version-file: .tool-versions |           python-version-file: .tool-versions | ||||||
|  |  | ||||||
|  |   setup-versions-from-pipfile-with-python_version: | ||||||
|  |     name: Setup ${{ matrix.python }} ${{ matrix.os }} Pipfile | ||||||
|  |     runs-on: ${{ matrix.os }} | ||||||
|  |     strategy: | ||||||
|  |       fail-fast: false | ||||||
|  |       matrix: | ||||||
|  |         os: | ||||||
|  |           [ | ||||||
|  |             macos-latest, | ||||||
|  |             windows-latest, | ||||||
|  |             ubuntu-22.04, | ||||||
|  |             ubuntu-22.04-arm, | ||||||
|  |             macos-13, | ||||||
|  |             ubuntu-latest, | ||||||
|  |             ubuntu-24.04-arm | ||||||
|  |           ] | ||||||
|  |         python: [3.13t, 3.14t-dev] | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout | ||||||
|  |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|  |       - name: build-version-file ${{ matrix.python }} | ||||||
|  |         run: | | ||||||
|  |           echo '[requires] | ||||||
|  |             python_version = "${{ matrix.python }}" | ||||||
|  |           ' > Pipfile | ||||||
|  |  | ||||||
|  |       - name: setup-python ${{ matrix.python }} | ||||||
|  |         id: setup-python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version-file: Pipfile | ||||||
|  |  | ||||||
|  |       - name: Check python-path | ||||||
|  |         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' | ||||||
|  |         shell: bash | ||||||
|  |  | ||||||
|  |       - name: Run simple code | ||||||
|  |         run: python -c 'import math; print(math.factorial(5))' | ||||||
|  |  | ||||||
|  |   setup-versions-from-pipfile-with-python_full_version: | ||||||
|  |     name: Setup ${{ matrix.python }} ${{ matrix.os }} .tool-versions file | ||||||
|  |     runs-on: ${{ matrix.os }} | ||||||
|  |     strategy: | ||||||
|  |       fail-fast: false | ||||||
|  |       matrix: | ||||||
|  |         os: | ||||||
|  |           [ | ||||||
|  |             macos-latest, | ||||||
|  |             windows-latest, | ||||||
|  |             ubuntu-22.04, | ||||||
|  |             ubuntu-22.04-arm, | ||||||
|  |             macos-13, | ||||||
|  |             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 | ||||||
|  |  | ||||||
|  |       - name: build-version-file ${{ matrix.python }} | ||||||
|  |         run: | | ||||||
|  |           echo '[requires] | ||||||
|  |             python_full_version = "${{ matrix.python }}" | ||||||
|  |           ' > Pipfile | ||||||
|  |  | ||||||
|  |       - name: setup-python ${{ matrix.python }} | ||||||
|  |         id: setup-python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version-file: Pipfile | ||||||
|  |  | ||||||
|  |       - name: Check python-path | ||||||
|  |         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' | ||||||
|  |         shell: bash | ||||||
|  |  | ||||||
|  |       - name: Run simple code | ||||||
|  |         run: python -c 'import math; print(math.factorial(5))' | ||||||
|  |  | ||||||
|   setup-pre-release-version-from-manifest: |   setup-pre-release-version-from-manifest: | ||||||
|     name: Setup 3.14.0-alpha.6 ${{ matrix.os }} |     name: Setup 3.14.0-alpha.6 ${{ matrix.os }} | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
| @@ -258,7 +332,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -267,7 +340,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python 3.14.0-alpha.6 |       - name: setup-python 3.14.0-alpha.6 | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -304,7 +377,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python 3.14t-dev |       - name: setup-python 3.14t-dev | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -341,7 +414,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python 3.14t |       - name: setup-python 3.14t | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -371,7 +444,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -381,7 +453,7 @@ jobs: | |||||||
|         python: [3.13.0t, 3.13.1t, 3.13.2t] |         python: [3.13.0t, 3.13.1t, 3.13.2t] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.python }} |       - name: setup-python ${{ matrix.python }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -413,7 +485,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|         python-version: [3.13t, 3.14t-dev] |         python-version: [3.13t, 3.14t-dev] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python and check latest |       - name: Setup Python and check latest | ||||||
|         id: setup-python |         id: setup-python | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -439,7 +511,7 @@ jobs: | |||||||
|             macos-13 |             macos-13 | ||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python and check latest |       - name: Setup Python and check latest | ||||||
|         id: setup-python |         id: setup-python | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -461,7 +533,6 @@ jobs: | |||||||
|           [ |           [ | ||||||
|             macos-latest, |             macos-latest, | ||||||
|             windows-latest, |             windows-latest, | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |             ubuntu-22.04, | ||||||
|             ubuntu-22.04-arm, |             ubuntu-22.04-arm, | ||||||
|             macos-13, |             macos-13, | ||||||
| @@ -471,7 +542,7 @@ jobs: | |||||||
|         python: [3.13.1, 3.13.2, 3.14-dev, 3.14.0-alpha.6] |         python: [3.13.1, 3.13.2, 3.14-dev, 3.14.0-alpha.6] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|       - name: setup-python ${{ matrix.python }} |       - name: setup-python ${{ matrix.python }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|   | |||||||
							
								
								
									
										124
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										124
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							| @@ -33,7 +33,7 @@ jobs: | |||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] |         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.python }} |       - name: setup-python ${{ matrix.python }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -77,7 +77,7 @@ jobs: | |||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] |         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: echo ${{ matrix.python }} > .python-version |         run: echo ${{ matrix.python }} > .python-version | ||||||
| @@ -124,7 +124,7 @@ jobs: | |||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] |         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: echo ${{ matrix.python }} > .python-version |         run: echo ${{ matrix.python }} > .python-version | ||||||
| @@ -169,7 +169,7 @@ jobs: | |||||||
|         python: [3.9.13, 3.10.11, 3.11.9, '==3.12.3', 3.13.2] |         python: [3.9.13, 3.10.11, 3.11.9, '==3.12.3', 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: | |         run: | | ||||||
| @@ -219,7 +219,7 @@ jobs: | |||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] |         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.2] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-version-file ${{ matrix.python }} |       - name: build-version-file ${{ matrix.python }} | ||||||
|         run: | |         run: | | ||||||
| @@ -272,7 +272,7 @@ jobs: | |||||||
|             python: graalpy-24.1.2 |             python: graalpy-24.1.2 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: build-tool-versions-file ${{ matrix.python }} |       - name: build-tool-versions-file ${{ matrix.python }} | ||||||
|         run: | |         run: | | ||||||
| @@ -284,6 +284,106 @@ jobs: | |||||||
|         with: |         with: | ||||||
|           python-version-file: .tool-versions |           python-version-file: .tool-versions | ||||||
|  |  | ||||||
|  |   setup-versions-from-pipfile-with-python_version: | ||||||
|  |     name: Setup ${{ matrix.python }} ${{ matrix.os }} Pipfile with python_version | ||||||
|  |     runs-on: ${{ matrix.os }} | ||||||
|  |     strategy: | ||||||
|  |       fail-fast: false | ||||||
|  |       matrix: | ||||||
|  |         os: | ||||||
|  |           [ | ||||||
|  |             macos-latest, | ||||||
|  |             windows-latest, | ||||||
|  |             ubuntu-22.04, | ||||||
|  |             ubuntu-22.04-arm, | ||||||
|  |             macos-13, | ||||||
|  |             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 | ||||||
|  |  | ||||||
|  |       - name: build-version-file ${{ matrix.python }} | ||||||
|  |         run: | | ||||||
|  |           echo '[requires] | ||||||
|  |             python_version = "${{ matrix.python }}" | ||||||
|  |           ' > Pipfile | ||||||
|  |  | ||||||
|  |       - name: setup-python ${{ matrix.python }} | ||||||
|  |         id: setup-python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version-file: Pipfile | ||||||
|  |  | ||||||
|  |       - name: Check python-path | ||||||
|  |         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' | ||||||
|  |         shell: bash | ||||||
|  |  | ||||||
|  |       - name: Validate version | ||||||
|  |         run: | | ||||||
|  |           $pythonVersion = (python --version) | ||||||
|  |           if ("Python ${{ matrix.python }}".replace("==", "") -ne "$pythonVersion"){ | ||||||
|  |             Write-Host "The current version is $pythonVersion; expected version is ${{ matrix.python }}" | ||||||
|  |             exit 1 | ||||||
|  |           } | ||||||
|  |           $pythonVersion | ||||||
|  |         shell: pwsh | ||||||
|  |  | ||||||
|  |       - name: Run simple code | ||||||
|  |         run: python -c 'import math; print(math.factorial(5))' | ||||||
|  |  | ||||||
|  |   setup-versions-from-pipfile-with-python_full_version: | ||||||
|  |     name: Setup ${{ matrix.python }} ${{ matrix.os }} Pipfile with python_full_version | ||||||
|  |     runs-on: ${{ matrix.os }} | ||||||
|  |     strategy: | ||||||
|  |       fail-fast: false | ||||||
|  |       matrix: | ||||||
|  |         os: | ||||||
|  |           [ | ||||||
|  |             macos-latest, | ||||||
|  |             windows-latest, | ||||||
|  |             ubuntu-22.04, | ||||||
|  |             ubuntu-22.04-arm, | ||||||
|  |             macos-13, | ||||||
|  |             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 | ||||||
|  |  | ||||||
|  |       - name: build-version-file ${{ matrix.python }} | ||||||
|  |         run: | | ||||||
|  |           echo '[requires] | ||||||
|  |             python_full_version = "${{ matrix.python }}" | ||||||
|  |           ' > Pipfile | ||||||
|  |  | ||||||
|  |       - name: setup-python ${{ matrix.python }} | ||||||
|  |         id: setup-python | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version-file: Pipfile | ||||||
|  |  | ||||||
|  |       - name: Check python-path | ||||||
|  |         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' | ||||||
|  |         shell: bash | ||||||
|  |  | ||||||
|  |       - name: Validate version | ||||||
|  |         run: | | ||||||
|  |           $pythonVersion = (python --version) | ||||||
|  |           if ("Python ${{ matrix.python }}".replace("==", "") -ne "$pythonVersion"){ | ||||||
|  |             Write-Host "The current version is $pythonVersion; expected version is ${{ matrix.python }}" | ||||||
|  |             exit 1 | ||||||
|  |           } | ||||||
|  |           $pythonVersion | ||||||
|  |         shell: pwsh | ||||||
|  |  | ||||||
|  |       - name: Run simple code | ||||||
|  |         run: python -c 'import math; print(math.factorial(5))' | ||||||
|  |  | ||||||
|   setup-pre-release-version-from-manifest: |   setup-pre-release-version-from-manifest: | ||||||
|     name: Setup 3.14.0-alpha.6 ${{ matrix.os }} |     name: Setup 3.14.0-alpha.6 ${{ matrix.os }} | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
| @@ -302,7 +402,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python 3.14.0-alpha.6 |       - name: setup-python 3.14.0-alpha.6 | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -345,7 +445,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python 3.14-dev |       - name: setup-python 3.14-dev | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -382,7 +482,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python 3.14 |       - name: setup-python 3.14 | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -421,7 +521,7 @@ jobs: | |||||||
|         python: ['3.9', '3.10', '3.11', '3.12', '3.13'] |         python: ['3.9', '3.10', '3.11', '3.12', '3.13'] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: setup-python ${{ matrix.python }} |       - name: setup-python ${{ matrix.python }} | ||||||
|         id: setup-python |         id: setup-python | ||||||
| @@ -453,7 +553,7 @@ jobs: | |||||||
|           ] |           ] | ||||||
|         python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] |         python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python and check latest |       - name: Setup Python and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -485,7 +585,7 @@ jobs: | |||||||
|             macos-13 |             macos-13 | ||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Python and check latest |       - name: Setup Python and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.licenses/npm/@actions/tool-cache.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@actions/tool-cache.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: "@actions/tool-cache" | name: "@actions/tool-cache" | ||||||
| version: 2.0.1 | version: 2.0.2 | ||||||
| type: npm | type: npm | ||||||
| summary: Actions tool-cache lib | summary: Actions tool-cache lib | ||||||
| homepage: https://github.com/actions/toolkit/tree/main/packages/tool-cache | homepage: https://github.com/actions/toolkit/tree/main/packages/tool-cache | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.licenses/npm/@types/node.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@types/node.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: "@types/node" | name: "@types/node" | ||||||
| version: 20.11.25 | version: 24.1.0 | ||||||
| type: npm | type: npm | ||||||
| summary: TypeScript definitions for node | summary: TypeScript definitions for node | ||||||
| homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node | homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.licenses/npm/brace-expansion.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/brace-expansion.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: brace-expansion | name: brace-expansion | ||||||
| version: 1.1.11 | version: 1.1.12 | ||||||
| type: npm | type: npm | ||||||
| summary: Brace expansion as known from sh/bash | summary: Brace expansion as known from sh/bash | ||||||
| homepage: https://github.com/juliangruber/brace-expansion | homepage: https://github.com/juliangruber/brace-expansion | ||||||
|   | |||||||
| @@ -1,16 +1,16 @@ | |||||||
| --- | --- | ||||||
| name: uuid | name: call-bind-apply-helpers | ||||||
| version: 3.4.0 | version: 1.0.2 | ||||||
| type: npm | type: npm | ||||||
| summary: RFC4122 (v1, v4, and v5) UUIDs | summary: Helper functions around Function call/apply/bind, for use in `call-bind` | ||||||
| homepage: https://github.com/uuidjs/uuid#readme | homepage: https://github.com/ljharb/call-bind-apply-helpers#readme | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: LICENSE.md | - sources: LICENSE | ||||||
|   text: | |   text: | | ||||||
|     The MIT License (MIT) |     MIT License | ||||||
| 
 | 
 | ||||||
|     Copyright (c) 2010-2016 Robert Kieffer and other contributors |     Copyright (c) 2024 Jordan Harband | ||||||
| 
 | 
 | ||||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|     of this software and associated documentation files (the "Software"), to deal |     of this software and associated documentation files (the "Software"), to deal | ||||||
| @@ -29,11 +29,4 @@ licenses: | |||||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|     SOFTWARE. |     SOFTWARE. | ||||||
| notices: | notices: [] | ||||||
| - sources: AUTHORS |  | ||||||
|   text: |- |  | ||||||
|     Robert Kieffer <robert@broofa.com> |  | ||||||
|     Christoph Tavan <dev@tavan.de> |  | ||||||
|     AJ ONeal <coolaj86@gmail.com> |  | ||||||
|     Vincent Voyer <vincent@zeroload.net> |  | ||||||
|     Roman Shtylman <shtylman@gmail.com> |  | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/dunder-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/dunder-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: dunder-proto | ||||||
|  | version: 1.0.1 | ||||||
|  | type: npm | ||||||
|  | summary: If available, the `Object.prototype.__proto__` accessor and mutator, call-bound | ||||||
|  | homepage: https://github.com/es-shims/dunder-proto#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 ECMAScript Shims | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-define-property.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-define-property.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-define-property | ||||||
|  | version: 1.0.1 | ||||||
|  | type: npm | ||||||
|  | summary: "`Object.defineProperty`, but not IE 8's broken one." | ||||||
|  | homepage: https://github.com/ljharb/es-define-property#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-errors.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-errors.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-errors | ||||||
|  | version: 1.3.0 | ||||||
|  | type: npm | ||||||
|  | summary: A simple cache for a few of the JS Error constructors. | ||||||
|  | homepage: https://github.com/ljharb/es-errors#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-object-atoms.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-object-atoms.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-object-atoms | ||||||
|  | version: 1.1.1 | ||||||
|  | type: npm | ||||||
|  | summary: 'ES Object-related atoms: Object, ToObject, RequireObjectCoercible' | ||||||
|  | homepage: https://github.com/ljharb/es-object-atoms#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-set-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-set-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-set-tostringtag | ||||||
|  | version: 2.1.0 | ||||||
|  | type: npm | ||||||
|  | summary: A helper to optimistically set Symbol.toStringTag, when possible. | ||||||
|  | homepage: https://github.com/es-shims/es-set-tostringtag#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2022 ECMAScript Shims | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
| @@ -1,10 +1,10 @@ | |||||||
| --- | --- | ||||||
| name: form-data | name: form-data | ||||||
| version: 2.5.1 | version: 2.5.5 | ||||||
| type: npm | type: npm | ||||||
| summary: A library to create readable "multipart/form-data" streams. Can be used to | summary: A library to create readable "multipart/form-data" streams. Can be used to | ||||||
|   submit forms and file uploads to other web applications. |   submit forms and file uploads to other web applications. | ||||||
| homepage: https://github.com/form-data/form-data#readme | homepage: | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: License | - sources: License | ||||||
| @@ -1,10 +1,10 @@ | |||||||
| --- | --- | ||||||
| name: form-data | name: form-data | ||||||
| version: 4.0.0 | version: 4.0.4 | ||||||
| type: npm | type: npm | ||||||
| summary: A library to create readable "multipart/form-data" streams. Can be used to | summary: A library to create readable "multipart/form-data" streams. Can be used to | ||||||
|   submit forms and file uploads to other web applications. |   submit forms and file uploads to other web applications. | ||||||
| homepage: https://github.com/form-data/form-data#readme | homepage: | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: License | - sources: License | ||||||
| @@ -28,6 +28,6 @@ licenses: | |||||||
|      LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |      LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|      OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN |      OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||||
|      THE SOFTWARE. |      THE SOFTWARE. | ||||||
| - sources: Readme.md | - sources: README.md | ||||||
|   text: Form-Data is released under the [MIT](License) license. |   text: Form-Data is released under the [MIT](License) license. | ||||||
| notices: [] | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/function-bind.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/function-bind.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: function-bind | ||||||
|  | version: 1.1.2 | ||||||
|  | type: npm | ||||||
|  | summary: Implementation of Function.prototype.bind | ||||||
|  | homepage: https://github.com/Raynos/function-bind | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: |+ | ||||||
|  |     Copyright (c) 2013 Raynos. | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in | ||||||
|  |     all copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||||
|  |     THE SOFTWARE. | ||||||
|  | 
 | ||||||
|  | notices: [] | ||||||
|  | ... | ||||||
							
								
								
									
										33
									
								
								.licenses/npm/get-intrinsic.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								.licenses/npm/get-intrinsic.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | --- | ||||||
|  | name: get-intrinsic | ||||||
|  | version: 1.3.0 | ||||||
|  | type: npm | ||||||
|  | summary: Get and robustly cache all JS language-level intrinsics at first require | ||||||
|  |   time | ||||||
|  | homepage: https://github.com/ljharb/get-intrinsic#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2020 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/get-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/get-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: get-proto | ||||||
|  | version: 1.0.1 | ||||||
|  | type: npm | ||||||
|  | summary: Robustly get the [[Prototype]] of an object | ||||||
|  | homepage: https://github.com/ljharb/get-proto#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2025 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/gopd.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/gopd.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: gopd | ||||||
|  | version: 1.2.0 | ||||||
|  | type: npm | ||||||
|  | summary: "`Object.getOwnPropertyDescriptor`, but accounts for IE's broken implementation." | ||||||
|  | homepage: https://github.com/ljharb/gopd#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2022 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/has-symbols.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/has-symbols.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: has-symbols | ||||||
|  | version: 1.1.0 | ||||||
|  | type: npm | ||||||
|  | summary: Determine if the JS environment has Symbol support. Supports spec, or shams. | ||||||
|  | homepage: https://github.com/ljharb/has-symbols#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2016 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										33
									
								
								.licenses/npm/has-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								.licenses/npm/has-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | --- | ||||||
|  | name: has-tostringtag | ||||||
|  | version: 1.0.2 | ||||||
|  | type: npm | ||||||
|  | summary: Determine if the JS environment has `Symbol.toStringTag` support. Supports | ||||||
|  |   spec, or shams. | ||||||
|  | homepage: https://github.com/inspect-js/has-tostringtag#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2021 Inspect JS | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/hasown.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/hasown.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: hasown | ||||||
|  | version: 2.0.2 | ||||||
|  | type: npm | ||||||
|  | summary: A robust, ES3 compatible, "has own property" predicate. | ||||||
|  | homepage: https://github.com/inspect-js/hasOwn#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) Jordan Harband and contributors | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										26
									
								
								.licenses/npm/lru-cache.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										26
									
								
								.licenses/npm/lru-cache.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,26 +0,0 @@ | |||||||
| --- |  | ||||||
| name: lru-cache |  | ||||||
| version: 6.0.0 |  | ||||||
| type: npm |  | ||||||
| summary: A cache object that deletes the least-recently-used items. |  | ||||||
| homepage:  |  | ||||||
| license: isc |  | ||||||
| licenses: |  | ||||||
| - sources: LICENSE |  | ||||||
|   text: | |  | ||||||
|     The ISC License |  | ||||||
| 
 |  | ||||||
|     Copyright (c) Isaac Z. Schlueter and Contributors |  | ||||||
| 
 |  | ||||||
|     Permission to use, copy, modify, and/or distribute this software for any |  | ||||||
|     purpose with or without fee is hereby granted, provided that the above |  | ||||||
|     copyright notice and this permission notice appear in all copies. |  | ||||||
| 
 |  | ||||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |  | ||||||
|     WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |  | ||||||
|     MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |  | ||||||
|     ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |  | ||||||
|     WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |  | ||||||
|     ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR |  | ||||||
|     IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |  | ||||||
| notices: [] |  | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/math-intrinsics.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/math-intrinsics.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: math-intrinsics | ||||||
|  | version: 1.1.0 | ||||||
|  | type: npm | ||||||
|  | summary: ES Math-related intrinsics and helpers, robustly cached. | ||||||
|  | homepage: https://github.com/es-shims/math-intrinsics#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 ECMAScript Shims | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										34
									
								
								.licenses/npm/safe-buffer.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								.licenses/npm/safe-buffer.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | --- | ||||||
|  | name: safe-buffer | ||||||
|  | version: 5.2.1 | ||||||
|  | type: npm | ||||||
|  | summary: Safer Node.js Buffer API | ||||||
|  | homepage: https://github.com/feross/safe-buffer | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     The MIT License (MIT) | ||||||
|  | 
 | ||||||
|  |     Copyright (c) Feross Aboukhadijeh | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in | ||||||
|  |     all copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||||
|  |     THE SOFTWARE. | ||||||
|  | - sources: README.md | ||||||
|  |   text: MIT. Copyright (C) [Feross Aboukhadijeh](http://feross.org) | ||||||
|  | notices: [] | ||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: semver | name: semver | ||||||
| version: 7.6.0 | version: 7.7.1 | ||||||
| type: npm | type: npm | ||||||
| summary: The semantic version parser used by npm. | summary: The semantic version parser used by npm. | ||||||
| homepage: | homepage: | ||||||
							
								
								
									
										2
									
								
								.licenses/npm/undici-types.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/undici-types.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: undici-types | name: undici-types | ||||||
| version: 5.26.5 | version: 7.8.0 | ||||||
| type: npm | type: npm | ||||||
| summary: A stand-alone types package for Undici | summary: A stand-alone types package for Undici | ||||||
| homepage: https://undici.nodejs.org | homepage: https://undici.nodejs.org | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.licenses/npm/undici.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/undici.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: undici | name: undici | ||||||
| version: 5.28.5 | version: 5.29.0 | ||||||
| type: npm | type: npm | ||||||
| summary: An HTTP/1.1 client, written from scratch for Node.js | summary: An HTTP/1.1 client, written from scratch for Node.js | ||||||
| homepage: https://undici.nodejs.org | homepage: https://undici.nodejs.org | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ name: uuid | |||||||
| version: 8.3.2 | version: 8.3.2 | ||||||
| type: npm | type: npm | ||||||
| summary: RFC4122 (v1, v4, and v5) UUIDs | summary: RFC4122 (v1, v4, and v5) UUIDs | ||||||
| homepage: https://github.com/uuidjs/uuid#readme | homepage: | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: LICENSE.md | - sources: LICENSE.md | ||||||
							
								
								
									
										26
									
								
								.licenses/npm/yallist.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										26
									
								
								.licenses/npm/yallist.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,26 +0,0 @@ | |||||||
| --- |  | ||||||
| name: yallist |  | ||||||
| version: 4.0.0 |  | ||||||
| type: npm |  | ||||||
| summary: Yet Another Linked List |  | ||||||
| homepage:  |  | ||||||
| license: isc |  | ||||||
| licenses: |  | ||||||
| - sources: LICENSE |  | ||||||
|   text: | |  | ||||||
|     The ISC License |  | ||||||
| 
 |  | ||||||
|     Copyright (c) Isaac Z. Schlueter and Contributors |  | ||||||
| 
 |  | ||||||
|     Permission to use, copy, modify, and/or distribute this software for any |  | ||||||
|     purpose with or without fee is hereby granted, provided that the above |  | ||||||
|     copyright notice and this permission notice appear in all copies. |  | ||||||
| 
 |  | ||||||
|     THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |  | ||||||
|     WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |  | ||||||
|     MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |  | ||||||
|     ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |  | ||||||
|     WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |  | ||||||
|     ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR |  | ||||||
|     IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |  | ||||||
| notices: [] |  | ||||||
							
								
								
									
										23
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								README.md
									
									
									
									
									
								
							| @@ -18,8 +18,8 @@ See [action.yml](action.yml) | |||||||
| **Python** | **Python** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13'  |     python-version: '3.13'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -28,8 +28,8 @@ steps: | |||||||
| **PyPy** | **PyPy** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5  | - uses: actions/setup-python@v6  | ||||||
|   with: |   with: | ||||||
|     python-version: 'pypy3.10'  |     python-version: 'pypy3.10'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -38,8 +38,8 @@ steps: | |||||||
| **GraalPy** | **GraalPy** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5  | - uses: actions/setup-python@v6  | ||||||
|   with: |   with: | ||||||
|     python-version: 'graalpy-24.0'  |     python-version: 'graalpy-24.0'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -48,8 +48,8 @@ steps: | |||||||
| **Free threaded Python** | **Free threaded Python** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13t' |     python-version: '3.13t' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -83,8 +83,8 @@ The action defaults to searching for a dependency file (`requirements.txt` or `p | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'pip' # caching pip dependencies |     cache: 'pip' # caching pip dependencies | ||||||
| @@ -94,6 +94,8 @@ steps: | |||||||
|  |  | ||||||
| >The requirements file format allows for specifying dependency versions using logical operators (for example chardet>=3.0.4) or specifying dependencies without any versions. In this case the pip install -r requirements.txt command will always try to install the latest available package version. To be sure that the cache will be used, please stick to a specific dependency version and update it manually if necessary. | >The requirements file format allows for specifying dependency versions using logical operators (for example chardet>=3.0.4) or specifying dependencies without any versions. In this case the pip install -r requirements.txt command will always try to install the latest available package version. To be sure that the cache will be used, please stick to a specific dependency version and update it manually if necessary. | ||||||
|  |  | ||||||
|  | >The `setup-python` action does not handle authentication for pip when installing packages from private repositories. For help, refer [pip’s VCS support documentation](https://pip.pypa.io/en/stable/topics/vcs-support/) or visit the [pip repository](https://github.com/pypa/pip). | ||||||
|  |  | ||||||
| See examples of using `cache` and `cache-dependency-path` for `pipenv` and `poetry` in the section: [Caching packages](docs/advanced-usage.md#caching-packages) of the [Advanced usage](docs/advanced-usage.md) guide. | See examples of using `cache` and `cache-dependency-path` for `pipenv` and `poetry` in the section: [Caching packages](docs/advanced-usage.md#caching-packages) of the [Advanced usage](docs/advanced-usage.md) guide. | ||||||
|  |  | ||||||
| ## Advanced usage | ## Advanced usage | ||||||
| @@ -108,6 +110,7 @@ See examples of using `cache` and `cache-dependency-path` for `pipenv` and `poet | |||||||
| - [Using `setup-python` with a self-hosted runner](docs/advanced-usage.md#using-setup-python-with-a-self-hosted-runner) | - [Using `setup-python` with a self-hosted runner](docs/advanced-usage.md#using-setup-python-with-a-self-hosted-runner) | ||||||
| - [Using `setup-python` on GHES](docs/advanced-usage.md#using-setup-python-on-ghes) | - [Using `setup-python` on GHES](docs/advanced-usage.md#using-setup-python-on-ghes) | ||||||
| - [Allow pre-releases](docs/advanced-usage.md#allow-pre-releases) | - [Allow pre-releases](docs/advanced-usage.md#allow-pre-releases) | ||||||
|  | - [Using the pip-version input](docs/advanced-usage.md#using-the-pip-version-input) | ||||||
|  |  | ||||||
| ## Recommended permissions | ## Recommended permissions | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										51
									
								
								__tests__/data/poetry.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										51
									
								
								__tests__/data/poetry.lock
									
									
									
										generated
									
									
									
								
							| @@ -1,4 +1,4 @@ | |||||||
| # This file is automatically @generated by Poetry 1.8.5 and should not be changed by hand. | # This file is automatically @generated by Poetry 2.1.3 and should not be changed by hand. | ||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| name = "altgraph" | name = "altgraph" | ||||||
| @@ -6,6 +6,7 @@ version = "0.17.4" | |||||||
| description = "Python graph (network) package" | description = "Python graph (network) package" | ||||||
| optional = false | optional = false | ||||||
| python-versions = "*" | python-versions = "*" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "altgraph-0.17.4-py2.py3-none-any.whl", hash = "sha256:642743b4750de17e655e6711601b077bc6598dbfa3ba5fa2b2a35ce12b508dff"}, |     {file = "altgraph-0.17.4-py2.py3-none-any.whl", hash = "sha256:642743b4750de17e655e6711601b077bc6598dbfa3ba5fa2b2a35ce12b508dff"}, | ||||||
|     {file = "altgraph-0.17.4.tar.gz", hash = "sha256:1b5afbb98f6c4dcadb2e2ae6ab9fa994bbb8c1d75f4fa96d340f9437ae454406"}, |     {file = "altgraph-0.17.4.tar.gz", hash = "sha256:1b5afbb98f6c4dcadb2e2ae6ab9fa994bbb8c1d75f4fa96d340f9437ae454406"}, | ||||||
| @@ -17,6 +18,7 @@ version = "4.0.1" | |||||||
| description = "the modular source code checker: pep8 pyflakes and co" | description = "the modular source code checker: pep8 pyflakes and co" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.6" | python-versions = ">=3.6" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "flake8-4.0.1-py2.py3-none-any.whl", hash = "sha256:479b1304f72536a55948cb40a32dce8bb0ffe3501e26eaf292c7e60eb5e0428d"}, |     {file = "flake8-4.0.1-py2.py3-none-any.whl", hash = "sha256:479b1304f72536a55948cb40a32dce8bb0ffe3501e26eaf292c7e60eb5e0428d"}, | ||||||
|     {file = "flake8-4.0.1.tar.gz", hash = "sha256:806e034dda44114815e23c16ef92f95c91e4c71100ff52813adf7132a6ad870d"}, |     {file = "flake8-4.0.1.tar.gz", hash = "sha256:806e034dda44114815e23c16ef92f95c91e4c71100ff52813adf7132a6ad870d"}, | ||||||
| @@ -33,6 +35,8 @@ version = "8.5.0" | |||||||
| description = "Read metadata from Python packages" | description = "Read metadata from Python packages" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=3.8" | ||||||
|  | groups = ["main"] | ||||||
|  | markers = "python_version == \"3.9\"" | ||||||
| files = [ | files = [ | ||||||
|     {file = "importlib_metadata-8.5.0-py3-none-any.whl", hash = "sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b"}, |     {file = "importlib_metadata-8.5.0-py3-none-any.whl", hash = "sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b"}, | ||||||
|     {file = "importlib_metadata-8.5.0.tar.gz", hash = "sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7"}, |     {file = "importlib_metadata-8.5.0.tar.gz", hash = "sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7"}, | ||||||
| @@ -42,12 +46,12 @@ files = [ | |||||||
| zipp = ">=3.20" | zipp = ">=3.20" | ||||||
|  |  | ||||||
| [package.extras] | [package.extras] | ||||||
| check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] | check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""] | ||||||
| cover = ["pytest-cov"] | cover = ["pytest-cov"] | ||||||
| doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] | doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] | ||||||
| enabler = ["pytest-enabler (>=2.2)"] | enabler = ["pytest-enabler (>=2.2)"] | ||||||
| perf = ["ipython"] | perf = ["ipython"] | ||||||
| test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] | test = ["flufl.flake8", "importlib-resources (>=1.3) ; python_version < \"3.9\"", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] | ||||||
| type = ["pytest-mypy"] | type = ["pytest-mypy"] | ||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| @@ -56,6 +60,8 @@ version = "1.16.3" | |||||||
| description = "Mach-O header analysis and editing" | description = "Mach-O header analysis and editing" | ||||||
| optional = false | optional = false | ||||||
| python-versions = "*" | python-versions = "*" | ||||||
|  | groups = ["main"] | ||||||
|  | markers = "sys_platform == \"darwin\"" | ||||||
| files = [ | files = [ | ||||||
|     {file = "macholib-1.16.3-py2.py3-none-any.whl", hash = "sha256:0e315d7583d38b8c77e815b1ecbdbf504a8258d8b3e17b61165c6feb60d18f2c"}, |     {file = "macholib-1.16.3-py2.py3-none-any.whl", hash = "sha256:0e315d7583d38b8c77e815b1ecbdbf504a8258d8b3e17b61165c6feb60d18f2c"}, | ||||||
|     {file = "macholib-1.16.3.tar.gz", hash = "sha256:07ae9e15e8e4cd9a788013d81f5908b3609aa76f9b1421bae9c4d7606ec86a30"}, |     {file = "macholib-1.16.3.tar.gz", hash = "sha256:07ae9e15e8e4cd9a788013d81f5908b3609aa76f9b1421bae9c4d7606ec86a30"}, | ||||||
| @@ -70,6 +76,7 @@ version = "0.6.1" | |||||||
| description = "McCabe checker, plugin for flake8" | description = "McCabe checker, plugin for flake8" | ||||||
| optional = false | optional = false | ||||||
| python-versions = "*" | python-versions = "*" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, |     {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, | ||||||
|     {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, |     {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, | ||||||
| @@ -81,6 +88,7 @@ version = "24.2" | |||||||
| description = "Core utilities for Python packages" | description = "Core utilities for Python packages" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=3.8" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, |     {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, | ||||||
|     {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, |     {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, | ||||||
| @@ -92,6 +100,8 @@ version = "2024.8.26" | |||||||
| description = "Python PE parsing module" | description = "Python PE parsing module" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.6.0" | python-versions = ">=3.6.0" | ||||||
|  | groups = ["main"] | ||||||
|  | markers = "sys_platform == \"win32\"" | ||||||
| files = [ | files = [ | ||||||
|     {file = "pefile-2024.8.26-py3-none-any.whl", hash = "sha256:76f8b485dcd3b1bb8166f1128d395fa3d87af26360c2358fb75b80019b957c6f"}, |     {file = "pefile-2024.8.26-py3-none-any.whl", hash = "sha256:76f8b485dcd3b1bb8166f1128d395fa3d87af26360c2358fb75b80019b957c6f"}, | ||||||
|     {file = "pefile-2024.8.26.tar.gz", hash = "sha256:3ff6c5d8b43e8c37bb6e6dd5085658d658a7a0bdcd20b6a07b1fcfc1c4e9d632"}, |     {file = "pefile-2024.8.26.tar.gz", hash = "sha256:3ff6c5d8b43e8c37bb6e6dd5085658d658a7a0bdcd20b6a07b1fcfc1c4e9d632"}, | ||||||
| @@ -103,6 +113,7 @@ version = "2.8.0" | |||||||
| description = "Python style guide checker" | description = "Python style guide checker" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "pycodestyle-2.8.0-py2.py3-none-any.whl", hash = "sha256:720f8b39dde8b293825e7ff02c475f3077124006db4f440dcbc9a20b76548a20"}, |     {file = "pycodestyle-2.8.0-py2.py3-none-any.whl", hash = "sha256:720f8b39dde8b293825e7ff02c475f3077124006db4f440dcbc9a20b76548a20"}, | ||||||
|     {file = "pycodestyle-2.8.0.tar.gz", hash = "sha256:eddd5847ef438ea1c7870ca7eb78a9d47ce0cdb4851a5523949f2601d0cbbe7f"}, |     {file = "pycodestyle-2.8.0.tar.gz", hash = "sha256:eddd5847ef438ea1c7870ca7eb78a9d47ce0cdb4851a5523949f2601d0cbbe7f"}, | ||||||
| @@ -114,6 +125,7 @@ version = "2.4.0" | |||||||
| description = "passive checker of Python programs" | description = "passive checker of Python programs" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "pyflakes-2.4.0-py2.py3-none-any.whl", hash = "sha256:3bb3a3f256f4b7968c9c788781e4ff07dce46bdf12339dcda61053375426ee2e"}, |     {file = "pyflakes-2.4.0-py2.py3-none-any.whl", hash = "sha256:3bb3a3f256f4b7968c9c788781e4ff07dce46bdf12339dcda61053375426ee2e"}, | ||||||
|     {file = "pyflakes-2.4.0.tar.gz", hash = "sha256:05a85c2872edf37a4ed30b0cce2f6093e1d0581f8c19d7393122da7e25b2b24c"}, |     {file = "pyflakes-2.4.0.tar.gz", hash = "sha256:05a85c2872edf37a4ed30b0cce2f6093e1d0581f8c19d7393122da7e25b2b24c"}, | ||||||
| @@ -125,6 +137,7 @@ version = "6.10.0" | |||||||
| description = "PyInstaller bundles a Python application and all its dependencies into a single package." | description = "PyInstaller bundles a Python application and all its dependencies into a single package." | ||||||
| optional = false | optional = false | ||||||
| python-versions = "<3.14,>=3.8" | python-versions = "<3.14,>=3.8" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "pyinstaller-6.10.0-py3-none-macosx_10_13_universal2.whl", hash = "sha256:d60fb22859e11483af735aec115fdde09467cdbb29edd9844839f2c920b748c0"}, |     {file = "pyinstaller-6.10.0-py3-none-macosx_10_13_universal2.whl", hash = "sha256:d60fb22859e11483af735aec115fdde09467cdbb29edd9844839f2c920b748c0"}, | ||||||
|     {file = "pyinstaller-6.10.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:46d75359668993ddd98630a3669dc5249f3c446e35239b43bc7f4155bc574748"}, |     {file = "pyinstaller-6.10.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:46d75359668993ddd98630a3669dc5249f3c446e35239b43bc7f4155bc574748"}, | ||||||
| @@ -160,6 +173,7 @@ version = "2025.1" | |||||||
| description = "Community maintained hooks for PyInstaller" | description = "Community maintained hooks for PyInstaller" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=3.8" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "pyinstaller_hooks_contrib-2025.1-py3-none-any.whl", hash = "sha256:d3c799470cbc0bda60dcc8e6b4ab976777532b77621337f2037f558905e3a8e9"}, |     {file = "pyinstaller_hooks_contrib-2025.1-py3-none-any.whl", hash = "sha256:d3c799470cbc0bda60dcc8e6b4ab976777532b77621337f2037f558905e3a8e9"}, | ||||||
|     {file = "pyinstaller_hooks_contrib-2025.1.tar.gz", hash = "sha256:130818f9e9a0a7f2261f1fd66054966a3a50c99d000981c5d1db11d3ad0c6ab2"}, |     {file = "pyinstaller_hooks_contrib-2025.1.tar.gz", hash = "sha256:130818f9e9a0a7f2261f1fd66054966a3a50c99d000981c5d1db11d3ad0c6ab2"}, | ||||||
| @@ -176,6 +190,8 @@ version = "0.2.3" | |||||||
| description = "A (partial) reimplementation of pywin32 using ctypes/cffi" | description = "A (partial) reimplementation of pywin32 using ctypes/cffi" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.6" | python-versions = ">=3.6" | ||||||
|  | groups = ["main"] | ||||||
|  | markers = "sys_platform == \"win32\"" | ||||||
| files = [ | files = [ | ||||||
|     {file = "pywin32-ctypes-0.2.3.tar.gz", hash = "sha256:d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755"}, |     {file = "pywin32-ctypes-0.2.3.tar.gz", hash = "sha256:d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755"}, | ||||||
|     {file = "pywin32_ctypes-0.2.3-py3-none-any.whl", hash = "sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8"}, |     {file = "pywin32_ctypes-0.2.3-py3-none-any.whl", hash = "sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8"}, | ||||||
| @@ -183,23 +199,24 @@ files = [ | |||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| name = "setuptools" | name = "setuptools" | ||||||
| version = "75.3.2" | version = "80.9.0" | ||||||
| description = "Easily download, build, install, upgrade, and uninstall Python packages" | description = "Easily download, build, install, upgrade, and uninstall Python packages" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=3.9" | ||||||
|  | groups = ["main"] | ||||||
| files = [ | files = [ | ||||||
|     {file = "setuptools-75.3.2-py3-none-any.whl", hash = "sha256:90ab613b6583fc02d5369cbca13ea26ea0e182d1df2d943ee9cbe81d4c61add9"}, |     {file = "setuptools-80.9.0-py3-none-any.whl", hash = "sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922"}, | ||||||
|     {file = "setuptools-75.3.2.tar.gz", hash = "sha256:3c1383e1038b68556a382c1e8ded8887cd20141b0eb5708a6c8d277de49364f5"}, |     {file = "setuptools-80.9.0.tar.gz", hash = "sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c"}, | ||||||
| ] | ] | ||||||
|  |  | ||||||
| [package.extras] | [package.extras] | ||||||
| check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)", "ruff (>=0.5.2)"] | check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\"", "ruff (>=0.8.0) ; sys_platform != \"cygwin\""] | ||||||
| core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.collections", "jaraco.functools", "jaraco.text (>=3.7)", "more-itertools", "more-itertools (>=8.8)", "packaging", "packaging (>=24)", "platformdirs (>=4.2.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] | core = ["importlib_metadata (>=6) ; python_version < \"3.10\"", "jaraco.functools (>=4)", "jaraco.text (>=3.7)", "more_itertools", "more_itertools (>=8.8)", "packaging (>=24.2)", "platformdirs (>=4.2.2)", "tomli (>=2.0.1) ; python_version < \"3.11\"", "wheel (>=0.43.0)"] | ||||||
| cover = ["pytest-cov"] | cover = ["pytest-cov"] | ||||||
| doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] | doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] | ||||||
| enabler = ["pytest-enabler (>=2.2)"] | enabler = ["pytest-enabler (>=2.2)"] | ||||||
| test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test (>=5.5)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "ruff (<=0.7.1)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] | test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21) ; python_version >= \"3.9\" and sys_platform != \"cygwin\"", "jaraco.envs (>=2.2)", "jaraco.path (>=3.7.2)", "jaraco.test (>=5.5)", "packaging (>=24.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf ; sys_platform != \"cygwin\"", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] | ||||||
| type = ["importlib-metadata (>=7.0.2)", "jaraco.develop (>=7.21)", "mypy (==1.12.*)", "pytest-mypy"] | type = ["importlib_metadata (>=7.0.2) ; python_version < \"3.10\"", "jaraco.develop (>=7.21) ; sys_platform != \"cygwin\"", "mypy (==1.14.*)", "pytest-mypy"] | ||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| name = "zipp" | name = "zipp" | ||||||
| @@ -207,20 +224,22 @@ version = "3.20.2" | |||||||
| description = "Backport of pathlib-compatible object wrapper for zip files" | description = "Backport of pathlib-compatible object wrapper for zip files" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=3.8" | ||||||
|  | groups = ["main"] | ||||||
|  | markers = "python_version == \"3.9\"" | ||||||
| files = [ | files = [ | ||||||
|     {file = "zipp-3.20.2-py3-none-any.whl", hash = "sha256:a817ac80d6cf4b23bf7f2828b7cabf326f15a001bea8b1f9b49631780ba28350"}, |     {file = "zipp-3.20.2-py3-none-any.whl", hash = "sha256:a817ac80d6cf4b23bf7f2828b7cabf326f15a001bea8b1f9b49631780ba28350"}, | ||||||
|     {file = "zipp-3.20.2.tar.gz", hash = "sha256:bc9eb26f4506fda01b81bcde0ca78103b6e62f991b381fec825435c836edbc29"}, |     {file = "zipp-3.20.2.tar.gz", hash = "sha256:bc9eb26f4506fda01b81bcde0ca78103b6e62f991b381fec825435c836edbc29"}, | ||||||
| ] | ] | ||||||
|  |  | ||||||
| [package.extras] | [package.extras] | ||||||
| check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] | check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""] | ||||||
| cover = ["pytest-cov"] | cover = ["pytest-cov"] | ||||||
| doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] | doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] | ||||||
| enabler = ["pytest-enabler (>=2.2)"] | enabler = ["pytest-enabler (>=2.2)"] | ||||||
| test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] | test = ["big-O", "importlib-resources ; python_version < \"3.9\"", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] | ||||||
| type = ["pytest-mypy"] | type = ["pytest-mypy"] | ||||||
|  |  | ||||||
| [metadata] | [metadata] | ||||||
| lock-version = "2.0" | lock-version = "2.1" | ||||||
| python-versions = ">=3.8,<3.14" | python-versions = ">=3.9,<3.14" | ||||||
| content-hash = "6db8fff0987f3dadb02cbf0e510a2d04b01ab2dc6d7b0fb32a0e33a8d30b3a58" | content-hash = "9a14798bf374c540031f893ff18f9b187bd984391e9da99d13c0e6710b7de09e" | ||||||
|   | |||||||
| @@ -5,10 +5,10 @@ description = "" | |||||||
| authors = ["Your Name <you@example.com>"] | authors = ["Your Name <you@example.com>"] | ||||||
|  |  | ||||||
| [tool.poetry.dependencies] | [tool.poetry.dependencies] | ||||||
| python = ">=3.8,<3.14" | python = ">=3.9,<3.14" | ||||||
| flake8 = "^4.0.1" | flake8 = "^4.0.1" | ||||||
| pyinstaller = "6.10.0" | pyinstaller = "6.10.0" | ||||||
|  | setuptools = ">=78.1.1"  | ||||||
|  |  | ||||||
| [tool.poetry.dev-dependencies] | [tool.poetry.dev-dependencies] | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| certifi==2020.6.20 | certifi==2020.6.20 | ||||||
| chardet==3.0.4 | chardet==3.0.4 | ||||||
| docutils==0.16 | docutils==0.16 | ||||||
| idna==2.10 | idna==3.7 | ||||||
| Kivy==2.0.0rc3 | Kivy==2.0.0rc3 | ||||||
| Kivy-Garden==0.1.4 | Kivy-Garden==0.1.4 | ||||||
| packaging==20.7 | packaging==20.7 | ||||||
|   | |||||||
| @@ -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' | future==0.18.2; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2' | ||||||
|  |  | ||||||
| idna==2.9 | idna==3.7 | ||||||
|  |  | ||||||
| itsdangerous==1.1.0 | itsdangerous==1.1.0 | ||||||
|  |  | ||||||
|   | |||||||
| @@ -10,8 +10,9 @@ import { | |||||||
|   validatePythonVersionFormatForPyPy, |   validatePythonVersionFormatForPyPy, | ||||||
|   isCacheFeatureAvailable, |   isCacheFeatureAvailable, | ||||||
|   getVersionInputFromFile, |   getVersionInputFromFile, | ||||||
|   getVersionInputFromPlainFile, |   getVersionsInputFromPlainFile, | ||||||
|   getVersionInputFromTomlFile, |   getVersionInputFromTomlFile, | ||||||
|  |   getVersionInputFromPipfileFile, | ||||||
|   getNextPageUrl, |   getNextPageUrl, | ||||||
|   isGhes, |   isGhes, | ||||||
|   IS_WINDOWS, |   IS_WINDOWS, | ||||||
| @@ -24,10 +25,10 @@ jest.mock('@actions/core'); | |||||||
|  |  | ||||||
| describe('validatePythonVersionFormatForPyPy', () => { | describe('validatePythonVersionFormatForPyPy', () => { | ||||||
|   it.each([ |   it.each([ | ||||||
|     ['3.6', true], |     ['3.12', true], | ||||||
|     ['3.7', true], |     ['3.13', true], | ||||||
|     ['3.6.x', false], |     ['3.12.x', false], | ||||||
|     ['3.7.x', false], |     ['3.13.x', false], | ||||||
|     ['3.x', false], |     ['3.x', false], | ||||||
|     ['3', false] |     ['3', false] | ||||||
|   ])('%s -> %s', (input, expected) => { |   ])('%s -> %s', (input, expected) => { | ||||||
| @@ -95,24 +96,52 @@ const tempDir = path.join( | |||||||
| ); | ); | ||||||
|  |  | ||||||
| describe('Version from file test', () => { | describe('Version from file test', () => { | ||||||
|   it.each([getVersionInputFromPlainFile, getVersionInputFromFile])( |   it.each([getVersionsInputFromPlainFile, getVersionInputFromFile])( | ||||||
|     'Version from plain file test', |     'Version from plain file test', | ||||||
|     async _fn => { |     async _fn => { | ||||||
|       await io.mkdirP(tempDir); |       await io.mkdirP(tempDir); | ||||||
|       const pythonVersionFileName = 'python-version.file'; |       const pythonVersionFileName = 'python-version.file'; | ||||||
|       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|       const pythonVersionFileContent = '3.7'; |       const pythonVersionFileContent = '3.13'; | ||||||
|       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersionFileContent]); |       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersionFileContent]); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |   it.each([getVersionsInputFromPlainFile, getVersionInputFromFile])( | ||||||
|  |     'Versions from multiline plain file test', | ||||||
|  |     async _fn => { | ||||||
|  |       await io.mkdirP(tempDir); | ||||||
|  |       const pythonVersionFileName = 'python-version.file'; | ||||||
|  |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|  |       const pythonVersionFileContent = '3.13\r\n3.12'; | ||||||
|  |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|  |       expect(_fn(pythonVersionFilePath)).toEqual(['3.13', '3.12']); | ||||||
|  |     } | ||||||
|  |   ); | ||||||
|  |   it.each([getVersionsInputFromPlainFile, getVersionInputFromFile])( | ||||||
|  |     'Version from complex plain file test', | ||||||
|  |     async _fn => { | ||||||
|  |       await io.mkdirP(tempDir); | ||||||
|  |       const pythonVersionFileName = 'python-version.file'; | ||||||
|  |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|  |       const pythonVersionFileContent = | ||||||
|  |         '3.13/envs/virtualenv\r# 3.12\n3.11\r\n3.10\r\n 3.9 \r\n'; | ||||||
|  |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|  |       expect(_fn(pythonVersionFilePath)).toEqual([ | ||||||
|  |         '3.13', | ||||||
|  |         '3.11', | ||||||
|  |         '3.10', | ||||||
|  |         '3.9' | ||||||
|  |       ]); | ||||||
|  |     } | ||||||
|  |   ); | ||||||
|   it.each([getVersionInputFromTomlFile, getVersionInputFromFile])( |   it.each([getVersionInputFromTomlFile, getVersionInputFromFile])( | ||||||
|     'Version from standard pyproject.toml test', |     'Version from standard pyproject.toml test', | ||||||
|     async _fn => { |     async _fn => { | ||||||
|       await io.mkdirP(tempDir); |       await io.mkdirP(tempDir); | ||||||
|       const pythonVersionFileName = 'pyproject.toml'; |       const pythonVersionFileName = 'pyproject.toml'; | ||||||
|       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|       const pythonVersion = '>=3.7.0'; |       const pythonVersion = '>=3.13.0'; | ||||||
|       const pythonVersionFileContent = `[project]\nrequires-python = "${pythonVersion}"`; |       const pythonVersionFileContent = `[project]\nrequires-python = "${pythonVersion}"`; | ||||||
|       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersion]); |       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersion]); | ||||||
| @@ -124,7 +153,7 @@ describe('Version from file test', () => { | |||||||
|       await io.mkdirP(tempDir); |       await io.mkdirP(tempDir); | ||||||
|       const pythonVersionFileName = 'pyproject.toml'; |       const pythonVersionFileName = 'pyproject.toml'; | ||||||
|       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|       const pythonVersion = '>=3.7.0'; |       const pythonVersion = '>=3.13.0'; | ||||||
|       const pythonVersionFileContent = `[tool.poetry.dependencies]\npython = "${pythonVersion}"`; |       const pythonVersionFileContent = `[tool.poetry.dependencies]\npython = "${pythonVersion}"`; | ||||||
|       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersion]); |       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersion]); | ||||||
| @@ -145,9 +174,9 @@ describe('Version from file test', () => { | |||||||
|     async _fn => { |     async _fn => { | ||||||
|       const toolVersionFileName = '.tool-versions'; |       const toolVersionFileName = '.tool-versions'; | ||||||
|       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); |       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); | ||||||
|       const toolVersionContent = 'python 3.9.10\nnodejs 16'; |       const toolVersionContent = 'python 3.13.2\nnodejs 16'; | ||||||
|       fs.writeFileSync(toolVersionFilePath, toolVersionContent); |       fs.writeFileSync(toolVersionFilePath, toolVersionContent); | ||||||
|       expect(_fn(toolVersionFilePath)).toEqual(['3.9.10']); |       expect(_fn(toolVersionFilePath)).toEqual(['3.13.2']); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |  | ||||||
| @@ -156,9 +185,9 @@ describe('Version from file test', () => { | |||||||
|     async _fn => { |     async _fn => { | ||||||
|       const toolVersionFileName = '.tool-versions'; |       const toolVersionFileName = '.tool-versions'; | ||||||
|       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); |       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); | ||||||
|       const toolVersionContent = '# python 3.8\npython 3.9'; |       const toolVersionContent = '# python 3.13\npython 3.12'; | ||||||
|       fs.writeFileSync(toolVersionFilePath, toolVersionContent); |       fs.writeFileSync(toolVersionFilePath, toolVersionContent); | ||||||
|       expect(_fn(toolVersionFilePath)).toEqual(['3.9']); |       expect(_fn(toolVersionFilePath)).toEqual(['3.12']); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |  | ||||||
| @@ -167,9 +196,9 @@ describe('Version from file test', () => { | |||||||
|     async _fn => { |     async _fn => { | ||||||
|       const toolVersionFileName = '.tool-versions'; |       const toolVersionFileName = '.tool-versions'; | ||||||
|       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); |       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); | ||||||
|       const toolVersionContent = '  python   3.10  '; |       const toolVersionContent = '  python   3.13  '; | ||||||
|       fs.writeFileSync(toolVersionFilePath, toolVersionContent); |       fs.writeFileSync(toolVersionFilePath, toolVersionContent); | ||||||
|       expect(_fn(toolVersionFilePath)).toEqual(['3.10']); |       expect(_fn(toolVersionFilePath)).toEqual(['3.13']); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |  | ||||||
| @@ -178,9 +207,9 @@ describe('Version from file test', () => { | |||||||
|     async _fn => { |     async _fn => { | ||||||
|       const toolVersionFileName = '.tool-versions'; |       const toolVersionFileName = '.tool-versions'; | ||||||
|       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); |       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); | ||||||
|       const toolVersionContent = 'python v3.9.10'; |       const toolVersionContent = 'python v3.13.2'; | ||||||
|       fs.writeFileSync(toolVersionFilePath, toolVersionContent); |       fs.writeFileSync(toolVersionFilePath, toolVersionContent); | ||||||
|       expect(_fn(toolVersionFilePath)).toEqual(['3.9.10']); |       expect(_fn(toolVersionFilePath)).toEqual(['3.13.2']); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |  | ||||||
| @@ -189,9 +218,9 @@ describe('Version from file test', () => { | |||||||
|     async _fn => { |     async _fn => { | ||||||
|       const toolVersionFileName = '.tool-versions'; |       const toolVersionFileName = '.tool-versions'; | ||||||
|       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); |       const toolVersionFilePath = path.join(tempDir, toolVersionFileName); | ||||||
|       const toolVersionContent = 'python pypy3.10-7.3.14'; |       const toolVersionContent = 'python pypy3.10-7.3.19'; | ||||||
|       fs.writeFileSync(toolVersionFilePath, toolVersionContent); |       fs.writeFileSync(toolVersionFilePath, toolVersionContent); | ||||||
|       expect(_fn(toolVersionFilePath)).toEqual(['pypy3.10-7.3.14']); |       expect(_fn(toolVersionFilePath)).toEqual(['pypy3.10-7.3.19']); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |  | ||||||
| @@ -216,6 +245,44 @@ describe('Version from file test', () => { | |||||||
|       expect(_fn(toolVersionFilePath)).toEqual(['3.14t-dev']); |       expect(_fn(toolVersionFilePath)).toEqual(['3.14t-dev']); | ||||||
|     } |     } | ||||||
|   ); |   ); | ||||||
|  |  | ||||||
|  |   it.each([getVersionInputFromPipfileFile, getVersionInputFromFile])( | ||||||
|  |     'Version from python_version in Pipfile', | ||||||
|  |     async _fn => { | ||||||
|  |       await io.mkdirP(tempDir); | ||||||
|  |       const pythonVersionFileName = 'Pipfile'; | ||||||
|  |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|  |       const pythonVersion = '3.13'; | ||||||
|  |       const pythonVersionFileContent = `[requires]\npython_version = "${pythonVersion}"`; | ||||||
|  |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|  |       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersion]); | ||||||
|  |     } | ||||||
|  |   ); | ||||||
|  |  | ||||||
|  |   it.each([getVersionInputFromPipfileFile, getVersionInputFromFile])( | ||||||
|  |     'Version from python_full_version in Pipfile', | ||||||
|  |     async _fn => { | ||||||
|  |       await io.mkdirP(tempDir); | ||||||
|  |       const pythonVersionFileName = 'Pipfile'; | ||||||
|  |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|  |       const pythonVersion = '3.13.0'; | ||||||
|  |       const pythonVersionFileContent = `[requires]\npython_full_version = "${pythonVersion}"`; | ||||||
|  |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|  |       expect(_fn(pythonVersionFilePath)).toEqual([pythonVersion]); | ||||||
|  |     } | ||||||
|  |   ); | ||||||
|  |  | ||||||
|  |   it.each([getVersionInputFromPipfileFile, getVersionInputFromFile])( | ||||||
|  |     'Pipfile undefined version', | ||||||
|  |     async _fn => { | ||||||
|  |       await io.mkdirP(tempDir); | ||||||
|  |       const pythonVersionFileName = 'Pipfile'; | ||||||
|  |       const pythonVersionFilePath = path.join(tempDir, pythonVersionFileName); | ||||||
|  |       const pythonVersionFileContent = ``; | ||||||
|  |       fs.writeFileSync(pythonVersionFilePath, pythonVersionFileContent); | ||||||
|  |       expect(_fn(pythonVersionFilePath)).toEqual([]); | ||||||
|  |     } | ||||||
|  |   ); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| describe('getNextPageUrl', () => { | describe('getNextPageUrl', () => { | ||||||
|   | |||||||
| @@ -29,6 +29,8 @@ inputs: | |||||||
|   freethreaded: |   freethreaded: | ||||||
|     description: "When 'true', use the freethreaded version of Python." |     description: "When 'true', use the freethreaded version of Python." | ||||||
|     default: false |     default: false | ||||||
|  |   pip-version: | ||||||
|  |     description: "Used to specify the version of pip to install with the Python. Supported format: major[.minor][.patch]." | ||||||
| outputs: | outputs: | ||||||
|   python-version: |   python-version: | ||||||
|     description: "The installed Python or PyPy version. Useful when given a version range as input." |     description: "The installed Python or PyPy version. Useful when given a version range as input." | ||||||
| @@ -37,7 +39,7 @@ outputs: | |||||||
|   python-path: |   python-path: | ||||||
|     description: "The absolute path to the Python or PyPy executable." |     description: "The absolute path to the Python or PyPy executable." | ||||||
| runs: | runs: | ||||||
|   using: 'node20' |   using: 'node24' | ||||||
|   main: 'dist/setup/index.js' |   main: 'dist/setup/index.js' | ||||||
|   post: 'dist/cache-save/index.js' |   post: 'dist/cache-save/index.js' | ||||||
|   post-if: success() |   post-if: success() | ||||||
|   | |||||||
							
								
								
									
										1415
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1415
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										2615
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2615
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -22,6 +22,7 @@ | |||||||
|     - [macOS](advanced-usage.md#macos) |     - [macOS](advanced-usage.md#macos) | ||||||
| - [Using `setup-python` on GHES](advanced-usage.md#using-setup-python-on-ghes) | - [Using `setup-python` on GHES](advanced-usage.md#using-setup-python-on-ghes) | ||||||
| - [Allow pre-releases](advanced-usage.md#allow-pre-releases) | - [Allow pre-releases](advanced-usage.md#allow-pre-releases) | ||||||
|  | - [Using the pip-version input](advanced-usage.md#using-the-pip-version-input) | ||||||
|  |  | ||||||
| ## Using the `python-version` input | ## Using the `python-version` input | ||||||
|  |  | ||||||
| @@ -31,8 +32,8 @@ If there is a specific version of Python that you need and you don't want to wor | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.12.6'  |     python-version: '3.12.6'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -45,8 +46,8 @@ You can specify **only a major and minor version** if you are okay with the most | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13'  |     python-version: '3.13'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -59,8 +60,8 @@ You can specify the version with **prerelease tag** to download and set up an ac | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.14.0-alpha.1' |     python-version: '3.14.0-alpha.1' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -70,8 +71,8 @@ It's also possible to use **x.y-dev syntax** to download and set up the latest p | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.14-dev' |     python-version: '3.14-dev' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -83,8 +84,8 @@ Free threaded Python is only available starting with the 3.13 release. | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13t' |     python-version: '3.13t' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -94,8 +95,8 @@ Note that the **t** suffix is not `semver` syntax. If you wish to specify a rang | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '>=3.13' |     python-version: '>=3.13' | ||||||
|     freethreaded: true |     freethreaded: true | ||||||
| @@ -108,8 +109,8 @@ You can also use several types of ranges that are specified in [semver](https:// | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '>=3.9 <3.14' |     python-version: '>=3.9 <3.14' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -119,8 +120,8 @@ steps: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13.0-alpha - 3.13.0' |     python-version: '3.13.0-alpha - 3.13.0' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -130,8 +131,8 @@ steps: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.x' |     python-version: '3.x' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -163,8 +164,8 @@ jobs: | |||||||
|         - 'pypy3.10' # the latest available version of PyPy that supports Python 3.10 |         - '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 |         - 'pypy3.10-v7.3.17' # Python 3.10 and PyPy 7.3.17 | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       with: |       with: | ||||||
|         python-version: ${{ matrix.python-version }} |         python-version: ${{ matrix.python-version }} | ||||||
|     - run: python my_script.py |     - run: python my_script.py | ||||||
| @@ -181,8 +182,8 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       with: |       with: | ||||||
|         python-version: | |         python-version: | | ||||||
|             3.11 |             3.11 | ||||||
| @@ -198,8 +199,8 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       with: |       with: | ||||||
|         python-version: | |         python-version: | | ||||||
|             pypy-3.10-v7.3.x |             pypy-3.10-v7.3.x | ||||||
| @@ -215,8 +216,8 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       with: |       with: | ||||||
|         python-version: | |         python-version: | | ||||||
|             3.11 |             3.11 | ||||||
| @@ -240,9 +241,9 @@ jobs: | |||||||
|         python-version: ['3.x', 'pypy3.8', 'pypy3.9' ] |         python-version: ['3.x', 'pypy3.8', 'pypy3.9' ] | ||||||
|     name: Python ${{ matrix.python-version }} sample |     name: Python ${{ matrix.python-version }} sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Set up Python |       - name: Set up Python | ||||||
|         uses: actions/setup-python@v5 |         uses: actions/setup-python@v6 | ||||||
|         with: |         with: | ||||||
|           python-version: ${{ matrix.python-version }} |           python-version: ${{ matrix.python-version }} | ||||||
|           architecture: x64 |           architecture: x64 | ||||||
| @@ -266,9 +267,9 @@ jobs: | |||||||
|           - os: windows-latest |           - os: windows-latest | ||||||
|             python-version: '3.9' |             python-version: '3.9' | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Set up Python |       - name: Set up Python | ||||||
|         uses: actions/setup-python@v5 |         uses: actions/setup-python@v6 | ||||||
|         with: |         with: | ||||||
|           python-version: ${{ matrix.python-version }} |           python-version: ${{ matrix.python-version }} | ||||||
|       - name: Display Python version |       - name: Display Python version | ||||||
| @@ -284,8 +285,8 @@ jobs: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version-file: '.python-version' # Read python version from a file .python-version |     python-version-file: '.python-version' # Read python version from a file .python-version | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -293,8 +294,8 @@ steps: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version-file: 'pyproject.toml' # Read python version from a file pyproject.toml |     python-version-file: 'pyproject.toml' # Read python version from a file pyproject.toml | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| @@ -302,13 +303,22 @@ steps: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version-file: '.tool-versions' # Read python version from a file .tool-versions |     python-version-file: '.tool-versions' # Read python version from a file .tool-versions | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
|  | ```yaml | ||||||
|  | steps: | ||||||
|  | - uses: actions/checkout@v5 | ||||||
|  | - uses: actions/setup-python@v6 | ||||||
|  |   with: | ||||||
|  |     python-version-file: 'Pipfile' # Read python version from a file Pipfile | ||||||
|  | - run: python my_script.py | ||||||
|  | ``` | ||||||
|  |  | ||||||
| ## Check latest version | ## Check latest version | ||||||
|  |  | ||||||
| The `check-latest` flag defaults to `false`. Use the default or set `check-latest` to `false` if you prefer stability and if you want to ensure a specific `Python or PyPy` version is always used. | The `check-latest` flag defaults to `false`. Use the default or set `check-latest` to `false` if you prefer stability and if you want to ensure a specific `Python or PyPy` version is always used. | ||||||
| @@ -317,8 +327,8 @@ If `check-latest` is set to `true`, the action first checks if the cached versio | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
|   - uses: actions/checkout@v4 |   - uses: actions/checkout@v5 | ||||||
|   - uses: actions/setup-python@v5 |   - uses: actions/setup-python@v6 | ||||||
|     with: |     with: | ||||||
|       python-version: '3.13' |       python-version: '3.13' | ||||||
|       check-latest: true |       check-latest: true | ||||||
| @@ -332,8 +342,8 @@ steps: | |||||||
| **Caching pipenv dependencies:** | **Caching pipenv dependencies:** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'pipenv' |     cache: 'pipenv' | ||||||
| @@ -345,10 +355,10 @@ steps: | |||||||
| **Caching poetry dependencies:** | **Caching poetry dependencies:** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - name: Install poetry | - name: Install poetry | ||||||
|   run: pipx install poetry |   run: pipx install poetry | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'poetry' |     cache: 'poetry' | ||||||
| @@ -360,8 +370,8 @@ steps: | |||||||
| **Using a list of file paths to cache dependencies** | **Using a list of file paths to cache dependencies** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'pipenv' |     cache: 'pipenv' | ||||||
| @@ -375,8 +385,8 @@ steps: | |||||||
| **Using wildcard patterns to cache dependencies** | **Using wildcard patterns to cache dependencies** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'pip' |     cache: 'pip' | ||||||
| @@ -387,8 +397,8 @@ steps: | |||||||
| **Using a list of wildcard patterns to cache dependencies** | **Using a list of wildcard patterns to cache dependencies** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'pip' |     cache: 'pip' | ||||||
| @@ -402,8 +412,8 @@ steps: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v6 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.13' | ||||||
|     cache: 'pip' |     cache: 'pip' | ||||||
| @@ -425,8 +435,8 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       id: cp312 |       id: cp312 | ||||||
|       with: |       with: | ||||||
|         python-version: "3.9.0 - 3.12.0" |         python-version: "3.9.0 - 3.12.0" | ||||||
| @@ -442,8 +452,8 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       id: cp313 |       id: cp313 | ||||||
|       with: |       with: | ||||||
|         python-version: "3.13" |         python-version: "3.13" | ||||||
| @@ -458,8 +468,8 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v5 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v6 | ||||||
|       id: cp313 |       id: cp313 | ||||||
|       with: |       with: | ||||||
|         python-version: "3.13.0" |         python-version: "3.13.0" | ||||||
| @@ -467,16 +477,16 @@ jobs: | |||||||
|     - run: echo '${{ steps.cp313.outputs.cache-hit }}' # true if cache-hit occurred on the primary key |     - run: echo '${{ steps.cp313.outputs.cache-hit }}' # true if cache-hit occurred on the primary key | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ## Environment variables | ### Environment variables | ||||||
|  |  | ||||||
| These environment variables become available after setup-python action execution: | These environment variables become available after setup-python action execution: | ||||||
|  |  | ||||||
| | **Env.variable**      | **Description** | | | **Env.variable**    | **Description**| | ||||||
| | ----------- | ----------- | | |----------------------|-------------| | ||||||
| | pythonLocation      |Contains the absolute path to the folder where the requested version of Python or PyPy is installed| | | `pythonLocation`     | Contains the absolute path to the folder where the requested version of Python, PyPy, or GraalPy is installed. <br><br>**Executable location by implementation:** <br>• **CPython** – `$pythonLocation/bin/python` (Linux/macOS), `$pythonLocation/python.exe` (Windows) <br>• **PyPy** – `$pythonLocation/bin/python` (Linux/macOS), `$pythonLocation/python.exe` (Windows) <br>• **GraalPy** – `$pythonLocation/bin/python` (Linux/macOS) <br><br>Note: CPython versions include a symlink or copy of the Python executable at the root, while PyPy and GraalPy retain upstream directory layouts. | | ||||||
| | Python_ROOT_DIR   | https://cmake.org/cmake/help/latest/module/FindPython.html#module:FindPython        | | | `Python_ROOT_DIR`    | https://cmake.org/cmake/help/latest/module/FindPython.html#module:FindPython | | ||||||
| | Python2_ROOT_DIR   |https://cmake.org/cmake/help/latest/module/FindPython2.html#module:FindPython2| | | `Python2_ROOT_DIR`   | https://cmake.org/cmake/help/latest/module/FindPython2.html#module:FindPython2 | | ||||||
| | Python3_ROOT_DIR   |https://cmake.org/cmake/help/latest/module/FindPython3.html#module:FindPython3| | | `Python3_ROOT_DIR`   | https://cmake.org/cmake/help/latest/module/FindPython3.html#module:FindPython3 | | ||||||
|  |  | ||||||
| ## Using `update-environment` flag | ## Using `update-environment` flag | ||||||
|  |  | ||||||
| @@ -489,8 +499,8 @@ Such a requirement on side-effect could be because you don't want your composite | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
|  steps: |  steps: | ||||||
|    - uses: actions/checkout@v4 |    - uses: actions/checkout@v5 | ||||||
|    - uses: actions/setup-python@v5 |    - uses: actions/setup-python@v6 | ||||||
|      id: cp313 |      id: cp313 | ||||||
|      with: |      with: | ||||||
|        python-version: '3.13' |        python-version: '3.13' | ||||||
| @@ -635,11 +645,30 @@ jobs: | |||||||
|         python_version: ["3.11", "3.12", "3.13"] |         python_version: ["3.11", "3.12", "3.13"] | ||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-python@v5 |       - uses: actions/setup-python@v6 | ||||||
|         with: |         with: | ||||||
|           python-version: "${{ matrix.python_version }}" |           python-version: "${{ matrix.python_version }}" | ||||||
|           allow-prereleases: true |           allow-prereleases: true | ||||||
|       - run: pipx run nox --error-on-missing-interpreters -s tests-${{ matrix.python_version }} |       - run: pipx run nox --error-on-missing-interpreters -s tests-${{ matrix.python_version }} | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
|  | ## Using the pip-version input | ||||||
|  |  | ||||||
|  | The `pip-version` input allows you to specify the desired version of **Pip** to use with the standard Python version. | ||||||
|  | The version of Pip should be specified in the format `major`, `major.minor`, or `major.minor.patch` (for example: 25, 25.1, or 25.0.1). | ||||||
|  |  | ||||||
|  | ```yaml | ||||||
|  |       steps: | ||||||
|  |       - uses: actions/checkout@v5 | ||||||
|  |       - name: Set up Python | ||||||
|  |         uses: actions/setup-python@v6 | ||||||
|  |         with: | ||||||
|  |           python-version: '3.13' | ||||||
|  |           pip-version: '25.0.1' | ||||||
|  |       - name: Display Pip version | ||||||
|  |         run: pip --version | ||||||
|  | ``` | ||||||
|  | > 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/). | ||||||
|   | |||||||
							
								
								
									
										327
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										327
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -1,12 +1,12 @@ | |||||||
| { | { | ||||||
|   "name": "setup-python", |   "name": "setup-python", | ||||||
|   "version": "5.0.0", |   "version": "6.0.0", | ||||||
|   "lockfileVersion": 3, |   "lockfileVersion": 3, | ||||||
|   "requires": true, |   "requires": true, | ||||||
|   "packages": { |   "packages": { | ||||||
|     "": { |     "": { | ||||||
|       "name": "setup-python", |       "name": "setup-python", | ||||||
|       "version": "5.0.0", |       "version": "6.0.0", | ||||||
|       "license": "MIT", |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/cache": "^4.0.3", |         "@actions/cache": "^4.0.3", | ||||||
| @@ -15,14 +15,14 @@ | |||||||
|         "@actions/glob": "^0.5.0", |         "@actions/glob": "^0.5.0", | ||||||
|         "@actions/http-client": "^2.2.3", |         "@actions/http-client": "^2.2.3", | ||||||
|         "@actions/io": "^1.0.2", |         "@actions/io": "^1.0.2", | ||||||
|         "@actions/tool-cache": "^2.0.1", |         "@actions/tool-cache": "^2.0.2", | ||||||
|         "@iarna/toml": "^3.0.0", |         "@iarna/toml": "^3.0.0", | ||||||
|         "semver": "^7.6.0" |         "semver": "^7.7.1" | ||||||
|       }, |       }, | ||||||
|       "devDependencies": { |       "devDependencies": { | ||||||
|         "@types/jest": "^29.5.12", |         "@types/jest": "^29.5.12", | ||||||
|         "@types/node": "^20.11.25", |         "@types/node": "^24.1.0", | ||||||
|         "@types/semver": "^7.5.8", |         "@types/semver": "^7.7.0", | ||||||
|         "@typescript-eslint/eslint-plugin": "^5.54.0", |         "@typescript-eslint/eslint-plugin": "^5.54.0", | ||||||
|         "@typescript-eslint/parser": "^5.54.0", |         "@typescript-eslint/parser": "^5.54.0", | ||||||
|         "@vercel/ncc": "^0.38.3", |         "@vercel/ncc": "^0.38.3", | ||||||
| @@ -32,9 +32,12 @@ | |||||||
|         "eslint-plugin-node": "^11.1.0", |         "eslint-plugin-node": "^11.1.0", | ||||||
|         "jest": "^29.7.0", |         "jest": "^29.7.0", | ||||||
|         "jest-circus": "^29.7.0", |         "jest-circus": "^29.7.0", | ||||||
|         "prettier": "^2.8.4", |         "prettier": "^3.5.3", | ||||||
|         "ts-jest": "^29.3.0", |         "ts-jest": "^29.3.2", | ||||||
|         "typescript": "^5.4.2" |         "typescript": "^5.4.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=24.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@aashutoshrathi/word-wrap": { |     "node_modules/@aashutoshrathi/word-wrap": { | ||||||
| @@ -123,16 +126,16 @@ | |||||||
|       "integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==" |       "integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/tool-cache": { |     "node_modules/@actions/tool-cache": { | ||||||
|       "version": "2.0.1", |       "version": "2.0.2", | ||||||
|       "resolved": "https://registry.npmjs.org/@actions/tool-cache/-/tool-cache-2.0.1.tgz", |       "resolved": "https://registry.npmjs.org/@actions/tool-cache/-/tool-cache-2.0.2.tgz", | ||||||
|       "integrity": "sha512-iPU+mNwrbA8jodY8eyo/0S/QqCKDajiR8OxWTnSk/SnYg0sj8Hp4QcUEVC1YFpHWXtrfbQrE13Jz4k4HXJQKcA==", |       "integrity": "sha512-fBhNNOWxuoLxztQebpOaWu6WeVmuwa77Z+DxIZ1B+OYvGkGQon6kTVg6Z32Cb13WCuw0szqonK+hh03mJV7Z6w==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/core": "^1.2.6", |         "@actions/core": "^1.11.1", | ||||||
|         "@actions/exec": "^1.0.0", |         "@actions/exec": "^1.0.0", | ||||||
|         "@actions/http-client": "^2.0.1", |         "@actions/http-client": "^2.0.1", | ||||||
|         "@actions/io": "^1.1.1", |         "@actions/io": "^1.1.1", | ||||||
|         "semver": "^6.1.0", |         "semver": "^6.1.0" | ||||||
|         "uuid": "^3.3.2" |  | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/tool-cache/node_modules/semver": { |     "node_modules/@actions/tool-cache/node_modules/semver": { | ||||||
| @@ -205,12 +208,15 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@azure/core-http/node_modules/form-data": { |     "node_modules/@azure/core-http/node_modules/form-data": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.4", | ||||||
|       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", | ||||||
|       "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", |       "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "asynckit": "^0.4.0", |         "asynckit": "^0.4.0", | ||||||
|         "combined-stream": "^1.0.8", |         "combined-stream": "^1.0.8", | ||||||
|  |         "es-set-tostringtag": "^2.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|         "mime-types": "^2.1.12" |         "mime-types": "^2.1.12" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
| @@ -1590,11 +1596,12 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/node": { |     "node_modules/@types/node": { | ||||||
|       "version": "20.11.25", |       "version": "24.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", |       "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", | ||||||
|       "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", |       "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "undici-types": "~5.26.4" |         "undici-types": "~7.8.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/node-fetch": { |     "node_modules/@types/node-fetch": { | ||||||
| @@ -1607,12 +1614,15 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/node-fetch/node_modules/form-data": { |     "node_modules/@types/node-fetch/node_modules/form-data": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.4", | ||||||
|       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", | ||||||
|       "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", |       "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "asynckit": "^0.4.0", |         "asynckit": "^0.4.0", | ||||||
|         "combined-stream": "^1.0.8", |         "combined-stream": "^1.0.8", | ||||||
|  |         "es-set-tostringtag": "^2.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|         "mime-types": "^2.1.12" |         "mime-types": "^2.1.12" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
| @@ -1620,10 +1630,11 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/semver": { |     "node_modules/@types/semver": { | ||||||
|       "version": "7.5.8", |       "version": "7.7.0", | ||||||
|       "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", |       "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", | ||||||
|       "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", |       "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", | ||||||
|       "dev": true |       "dev": true, | ||||||
|  |       "license": "MIT" | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/stack-utils": { |     "node_modules/@types/stack-utils": { | ||||||
|       "version": "2.0.3", |       "version": "2.0.3", | ||||||
| @@ -2119,9 +2130,10 @@ | |||||||
|       "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" |       "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/brace-expansion": { |     "node_modules/brace-expansion": { | ||||||
|       "version": "1.1.11", |       "version": "1.1.12", | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", | ||||||
|       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", |       "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "balanced-match": "^1.0.0", |         "balanced-match": "^1.0.0", | ||||||
|         "concat-map": "0.0.1" |         "concat-map": "0.0.1" | ||||||
| @@ -2198,6 +2210,19 @@ | |||||||
|       "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", |       "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/call-bind-apply-helpers": { | ||||||
|  |       "version": "1.0.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", | ||||||
|  |       "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "function-bind": "^1.1.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/callsites": { |     "node_modules/callsites": { | ||||||
|       "version": "3.1.0", |       "version": "3.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", |       "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", | ||||||
| @@ -2483,6 +2508,20 @@ | |||||||
|         "node": ">=6.0.0" |         "node": ">=6.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/dunder-proto": { | ||||||
|  |       "version": "1.0.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", | ||||||
|  |       "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "call-bind-apply-helpers": "^1.0.1", | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "gopd": "^1.2.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/ejs": { |     "node_modules/ejs": { | ||||||
|       "version": "3.1.10", |       "version": "3.1.10", | ||||||
|       "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", |       "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", | ||||||
| @@ -2532,6 +2571,51 @@ | |||||||
|         "is-arrayish": "^0.2.1" |         "is-arrayish": "^0.2.1" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/es-define-property": { | ||||||
|  |       "version": "1.0.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", | ||||||
|  |       "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/es-errors": { | ||||||
|  |       "version": "1.3.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", | ||||||
|  |       "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/es-object-atoms": { | ||||||
|  |       "version": "1.1.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", | ||||||
|  |       "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "es-errors": "^1.3.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/es-set-tostringtag": { | ||||||
|  |       "version": "2.1.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", | ||||||
|  |       "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "get-intrinsic": "^1.2.6", | ||||||
|  |         "has-tostringtag": "^1.0.2", | ||||||
|  |         "hasown": "^2.0.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/escalade": { |     "node_modules/escalade": { | ||||||
|       "version": "3.1.1", |       "version": "3.1.1", | ||||||
|       "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", |       "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", | ||||||
| @@ -3008,9 +3092,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/filelist/node_modules/brace-expansion": { |     "node_modules/filelist/node_modules/brace-expansion": { | ||||||
|       "version": "2.0.1", |       "version": "2.0.2", | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", | ||||||
|       "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", |       "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "license": "MIT", |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
| @@ -3079,13 +3163,17 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/form-data": { |     "node_modules/form-data": { | ||||||
|       "version": "2.5.1", |       "version": "2.5.5", | ||||||
|       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", |       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.5.tgz", | ||||||
|       "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", |       "integrity": "sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "asynckit": "^0.4.0", |         "asynckit": "^0.4.0", | ||||||
|         "combined-stream": "^1.0.6", |         "combined-stream": "^1.0.8", | ||||||
|         "mime-types": "^2.1.12" |         "es-set-tostringtag": "^2.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|  |         "mime-types": "^2.1.35", | ||||||
|  |         "safe-buffer": "^5.2.1" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": ">= 0.12" |         "node": ">= 0.12" | ||||||
| @@ -3115,7 +3203,6 @@ | |||||||
|       "version": "1.1.2", |       "version": "1.1.2", | ||||||
|       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", |       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", | ||||||
|       "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", |       "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", | ||||||
|       "dev": true, |  | ||||||
|       "funding": { |       "funding": { | ||||||
|         "url": "https://github.com/sponsors/ljharb" |         "url": "https://github.com/sponsors/ljharb" | ||||||
|       } |       } | ||||||
| @@ -3138,6 +3225,30 @@ | |||||||
|         "node": "6.* || 8.* || >= 10.*" |         "node": "6.* || 8.* || >= 10.*" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/get-intrinsic": { | ||||||
|  |       "version": "1.3.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", | ||||||
|  |       "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "call-bind-apply-helpers": "^1.0.2", | ||||||
|  |         "es-define-property": "^1.0.1", | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "es-object-atoms": "^1.1.1", | ||||||
|  |         "function-bind": "^1.1.2", | ||||||
|  |         "get-proto": "^1.0.1", | ||||||
|  |         "gopd": "^1.2.0", | ||||||
|  |         "has-symbols": "^1.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|  |         "math-intrinsics": "^1.1.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/get-package-type": { |     "node_modules/get-package-type": { | ||||||
|       "version": "0.1.0", |       "version": "0.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", |       "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", | ||||||
| @@ -3147,6 +3258,19 @@ | |||||||
|         "node": ">=8.0.0" |         "node": ">=8.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/get-proto": { | ||||||
|  |       "version": "1.0.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", | ||||||
|  |       "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "dunder-proto": "^1.0.1", | ||||||
|  |         "es-object-atoms": "^1.0.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/get-stream": { |     "node_modules/get-stream": { | ||||||
|       "version": "6.0.1", |       "version": "6.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", |       "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", | ||||||
| @@ -3226,6 +3350,18 @@ | |||||||
|         "url": "https://github.com/sponsors/sindresorhus" |         "url": "https://github.com/sponsors/sindresorhus" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/gopd": { | ||||||
|  |       "version": "1.2.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", | ||||||
|  |       "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/graceful-fs": { |     "node_modules/graceful-fs": { | ||||||
|       "version": "4.2.11", |       "version": "4.2.11", | ||||||
|       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", |       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", | ||||||
| @@ -3247,11 +3383,38 @@ | |||||||
|         "node": ">=8" |         "node": ">=8" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/has-symbols": { | ||||||
|  |       "version": "1.1.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", | ||||||
|  |       "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/has-tostringtag": { | ||||||
|  |       "version": "1.0.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", | ||||||
|  |       "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "dependencies": { | ||||||
|  |         "has-symbols": "^1.0.3" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/hasown": { |     "node_modules/hasown": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.2", | ||||||
|       "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", |       "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", | ||||||
|       "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", |       "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", | ||||||
|       "dev": true, |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "function-bind": "^1.1.2" |         "function-bind": "^1.1.2" | ||||||
|       }, |       }, | ||||||
| @@ -4254,6 +4417,15 @@ | |||||||
|         "tmpl": "1.0.5" |         "tmpl": "1.0.5" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/math-intrinsics": { | ||||||
|  |       "version": "1.1.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", | ||||||
|  |       "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", | ||||||
|  |       "license": "MIT", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/merge-stream": { |     "node_modules/merge-stream": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", |       "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", | ||||||
| @@ -4644,15 +4816,16 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/prettier": { |     "node_modules/prettier": { | ||||||
|       "version": "2.8.8", |       "version": "3.5.3", | ||||||
|       "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", |       "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", | ||||||
|       "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", |       "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|  |       "license": "MIT", | ||||||
|       "bin": { |       "bin": { | ||||||
|         "prettier": "bin-prettier.js" |         "prettier": "bin/prettier.cjs" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": ">=10.13.0" |         "node": ">=14" | ||||||
|       }, |       }, | ||||||
|       "funding": { |       "funding": { | ||||||
|         "url": "https://github.com/prettier/prettier?sponsor=1" |         "url": "https://github.com/prettier/prettier?sponsor=1" | ||||||
| @@ -4881,6 +5054,26 @@ | |||||||
|         "queue-microtask": "^1.2.2" |         "queue-microtask": "^1.2.2" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/safe-buffer": { | ||||||
|  |       "version": "5.2.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", | ||||||
|  |       "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", | ||||||
|  |       "funding": [ | ||||||
|  |         { | ||||||
|  |           "type": "github", | ||||||
|  |           "url": "https://github.com/sponsors/feross" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |           "type": "patreon", | ||||||
|  |           "url": "https://www.patreon.com/feross" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |           "type": "consulting", | ||||||
|  |           "url": "https://feross.org/support" | ||||||
|  |         } | ||||||
|  |       ], | ||||||
|  |       "license": "MIT" | ||||||
|  |     }, | ||||||
|     "node_modules/sax": { |     "node_modules/sax": { | ||||||
|       "version": "1.3.0", |       "version": "1.3.0", | ||||||
|       "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", |       "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", | ||||||
| @@ -5123,9 +5316,9 @@ | |||||||
|       "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" |       "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/ts-jest": { |     "node_modules/ts-jest": { | ||||||
|       "version": "29.3.0", |       "version": "29.3.2", | ||||||
|       "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.0.tgz", |       "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.2.tgz", | ||||||
|       "integrity": "sha512-4bfGBX7Gd1Aqz3SyeDS9O276wEU/BInZxskPrbhZLyv+c1wskDCqDFMJQJLWrIr/fKoAH4GE5dKUlrdyvo+39A==", |       "integrity": "sha512-bJJkrWc6PjFVz5g2DGCNUo8z7oFEYaz1xP1NpeDU7KNLMWPpEyV8Chbpkn8xjzgRDpQhnGMyvyldoL7h8JXyug==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "license": "MIT", |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
| @@ -5137,7 +5330,7 @@ | |||||||
|         "lodash.memoize": "^4.1.2", |         "lodash.memoize": "^4.1.2", | ||||||
|         "make-error": "^1.3.6", |         "make-error": "^1.3.6", | ||||||
|         "semver": "^7.7.1", |         "semver": "^7.7.1", | ||||||
|         "type-fest": "^4.37.0", |         "type-fest": "^4.39.1", | ||||||
|         "yargs-parser": "^21.1.1" |         "yargs-parser": "^21.1.1" | ||||||
|       }, |       }, | ||||||
|       "bin": { |       "bin": { | ||||||
| @@ -5173,9 +5366,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/ts-jest/node_modules/type-fest": { |     "node_modules/ts-jest/node_modules/type-fest": { | ||||||
|       "version": "4.38.0", |       "version": "4.40.0", | ||||||
|       "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.38.0.tgz", |       "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz", | ||||||
|       "integrity": "sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==", |       "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "license": "(MIT OR CC0-1.0)", |       "license": "(MIT OR CC0-1.0)", | ||||||
|       "engines": { |       "engines": { | ||||||
| @@ -5266,9 +5459,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/undici": { |     "node_modules/undici": { | ||||||
|       "version": "5.28.5", |       "version": "5.29.0", | ||||||
|       "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz", |       "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", | ||||||
|       "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==", |       "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", | ||||||
|       "license": "MIT", |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@fastify/busboy": "^2.0.0" |         "@fastify/busboy": "^2.0.0" | ||||||
| @@ -5278,9 +5471,10 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/undici-types": { |     "node_modules/undici-types": { | ||||||
|       "version": "5.26.5", |       "version": "7.8.0", | ||||||
|       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", |       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", | ||||||
|       "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" |       "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", | ||||||
|  |       "license": "MIT" | ||||||
|     }, |     }, | ||||||
|     "node_modules/update-browserslist-db": { |     "node_modules/update-browserslist-db": { | ||||||
|       "version": "1.0.13", |       "version": "1.0.13", | ||||||
| @@ -5321,15 +5515,6 @@ | |||||||
|         "punycode": "^2.1.0" |         "punycode": "^2.1.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/uuid": { |  | ||||||
|       "version": "3.4.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", |  | ||||||
|       "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", |  | ||||||
|       "deprecated": "Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.", |  | ||||||
|       "bin": { |  | ||||||
|         "uuid": "bin/uuid" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/v8-to-istanbul": { |     "node_modules/v8-to-istanbul": { | ||||||
|       "version": "9.1.3", |       "version": "9.1.3", | ||||||
|       "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz", |       "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz", | ||||||
|   | |||||||
							
								
								
									
										17
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								package.json
									
									
									
									
									
								
							| @@ -1,9 +1,12 @@ | |||||||
| { | { | ||||||
|   "name": "setup-python", |   "name": "setup-python", | ||||||
|   "version": "5.0.0", |   "version": "6.0.0", | ||||||
|   "private": true, |   "private": true, | ||||||
|   "description": "Setup python action", |   "description": "Setup python action", | ||||||
|   "main": "dist/index.js", |   "main": "dist/index.js", | ||||||
|  |   "engines": { | ||||||
|  |     "node": ">=24.0.0" | ||||||
|  |   }, | ||||||
|   "scripts": { |   "scripts": { | ||||||
|     "build": "ncc build -o dist/setup src/setup-python.ts && ncc build -o dist/cache-save src/cache-save.ts", |     "build": "ncc build -o dist/setup src/setup-python.ts && ncc build -o dist/cache-save src/cache-save.ts", | ||||||
|     "format": "prettier --no-error-on-unmatched-pattern --config ./.prettierrc.js --write \"**/*.{ts,yml,yaml}\"", |     "format": "prettier --no-error-on-unmatched-pattern --config ./.prettierrc.js --write \"**/*.{ts,yml,yaml}\"", | ||||||
| @@ -31,14 +34,14 @@ | |||||||
|     "@actions/glob": "^0.5.0", |     "@actions/glob": "^0.5.0", | ||||||
|     "@actions/http-client": "^2.2.3", |     "@actions/http-client": "^2.2.3", | ||||||
|     "@actions/io": "^1.0.2", |     "@actions/io": "^1.0.2", | ||||||
|     "@actions/tool-cache": "^2.0.1", |     "@actions/tool-cache": "^2.0.2", | ||||||
|     "@iarna/toml": "^3.0.0", |     "@iarna/toml": "^3.0.0", | ||||||
|     "semver": "^7.6.0" |     "semver": "^7.7.1" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@types/jest": "^29.5.12", |     "@types/jest": "^29.5.12", | ||||||
|     "@types/node": "^20.11.25", |     "@types/node": "^24.1.0", | ||||||
|     "@types/semver": "^7.5.8", |     "@types/semver": "^7.7.0", | ||||||
|     "@typescript-eslint/eslint-plugin": "^5.54.0", |     "@typescript-eslint/eslint-plugin": "^5.54.0", | ||||||
|     "@typescript-eslint/parser": "^5.54.0", |     "@typescript-eslint/parser": "^5.54.0", | ||||||
|     "@vercel/ncc": "^0.38.3", |     "@vercel/ncc": "^0.38.3", | ||||||
| @@ -48,8 +51,8 @@ | |||||||
|     "eslint-plugin-node": "^11.1.0", |     "eslint-plugin-node": "^11.1.0", | ||||||
|     "jest": "^29.7.0", |     "jest": "^29.7.0", | ||||||
|     "jest-circus": "^29.7.0", |     "jest-circus": "^29.7.0", | ||||||
|     "prettier": "^2.8.4", |     "prettier": "^3.5.3", | ||||||
|     "ts-jest": "^29.3.0", |     "ts-jest": "^29.3.2", | ||||||
|     "typescript": "^5.4.2" |     "typescript": "^5.4.2" | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
| @@ -38,11 +38,12 @@ async function saveCache(packageManager: string) { | |||||||
|   core.debug(`paths for caching are ${cachePaths.join(', ')}`); |   core.debug(`paths for caching are ${cachePaths.join(', ')}`); | ||||||
|  |  | ||||||
|   if (!isCacheDirectoryExists(cachePaths)) { |   if (!isCacheDirectoryExists(cachePaths)) { | ||||||
|     throw new Error( |     core.warning( | ||||||
|       `Cache folder path is retrieved for ${packageManager} but doesn't exist on disk: ${cachePaths.join( |       `Cache folder path is retrieved for ${packageManager} but doesn't exist on disk: ${cachePaths.join( | ||||||
|         ', ' |         ', ' | ||||||
|       )}. This likely indicates that there are no dependencies to cache. Consider removing the cache step if it is not needed.` |       )}. This likely indicates that there are no dependencies to cache. Consider removing the cache step if it is not needed.` | ||||||
|     ); |     ); | ||||||
|  |     return; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   const primaryKey = core.getState(State.STATE_CACHE_PRIMARY_KEY); |   const primaryKey = core.getState(State.STATE_CACHE_PRIMARY_KEY); | ||||||
|   | |||||||
| @@ -96,7 +96,10 @@ export async function findPyPyVersion( | |||||||
|     core.addPath(pythonLocation); |     core.addPath(pythonLocation); | ||||||
|     core.addPath(_binDir); |     core.addPath(_binDir); | ||||||
|   } |   } | ||||||
|   core.setOutput('python-version', 'pypy' + resolvedPyPyVersion); |   core.setOutput( | ||||||
|  |     'python-version', | ||||||
|  |     `pypy${resolvedPythonVersion}-${resolvedPyPyVersion}` | ||||||
|  |   ); | ||||||
|   core.setOutput('python-path', pythonPath); |   core.setOutput('python-path', pythonPath); | ||||||
|  |  | ||||||
|   return {resolvedPyPyVersion, resolvedPythonVersion}; |   return {resolvedPyPyVersion, resolvedPythonVersion}; | ||||||
|   | |||||||
| @@ -8,6 +8,7 @@ import * as installer from './install-python'; | |||||||
|  |  | ||||||
| import * as core from '@actions/core'; | import * as core from '@actions/core'; | ||||||
| import * as tc from '@actions/tool-cache'; | import * as tc from '@actions/tool-cache'; | ||||||
|  | import * as exec from '@actions/exec'; | ||||||
|  |  | ||||||
| // Python has "scripts" or "bin" directories where command-line tools that come with packages are installed. | // Python has "scripts" or "bin" directories where command-line tools that come with packages are installed. | ||||||
| // This is where pip is, along with anything that pip installs. | // This is where pip is, along with anything that pip installs. | ||||||
| @@ -30,6 +31,27 @@ function binDir(installDir: string): string { | |||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | async function installPip(pythonLocation: string) { | ||||||
|  |   const pipVersion = core.getInput('pip-version'); | ||||||
|  |  | ||||||
|  |   // Validate pip-version format: major[.minor][.patch] | ||||||
|  |   const versionRegex = /^\d+(\.\d+)?(\.\d+)?$/; | ||||||
|  |   if (pipVersion && !versionRegex.test(pipVersion)) { | ||||||
|  |     throw new Error( | ||||||
|  |       `Invalid pip-version "${pipVersion}". Please specify a version in the format major[.minor][.patch].` | ||||||
|  |     ); | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   if (pipVersion) { | ||||||
|  |     core.info( | ||||||
|  |       `pip-version input is specified. Installing pip version ${pipVersion}` | ||||||
|  |     ); | ||||||
|  |     await exec.exec( | ||||||
|  |       `${pythonLocation}/python -m pip install --upgrade pip==${pipVersion} --disable-pip-version-check --no-warn-script-location` | ||||||
|  |     ); | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
| export async function useCpythonVersion( | export async function useCpythonVersion( | ||||||
|   version: string, |   version: string, | ||||||
|   architecture: string, |   architecture: string, | ||||||
| @@ -49,8 +71,8 @@ export async function useCpythonVersion( | |||||||
|     // Use the freethreaded version if it was specified in the input, e.g., 3.13t |     // Use the freethreaded version if it was specified in the input, e.g., 3.13t | ||||||
|     freethreaded = true; |     freethreaded = true; | ||||||
|   } |   } | ||||||
|   core.debug(`Semantic version spec of ${version} is ${semanticVersionSpec}`); |  | ||||||
|  |  | ||||||
|  |   core.debug(`Semantic version spec of ${version} is ${semanticVersionSpec}`); | ||||||
|   if (freethreaded) { |   if (freethreaded) { | ||||||
|     // Free threaded versions use an architecture suffix like `x64-freethreaded` |     // Free threaded versions use an architecture suffix like `x64-freethreaded` | ||||||
|     core.debug(`Using freethreaded version of ${semanticVersionSpec}`); |     core.debug(`Using freethreaded version of ${semanticVersionSpec}`); | ||||||
| @@ -154,15 +176,36 @@ export async function useCpythonVersion( | |||||||
|     if (IS_WINDOWS) { |     if (IS_WINDOWS) { | ||||||
|       // Add --user directory |       // Add --user directory | ||||||
|       // `installDir` from tool cache should look like $RUNNER_TOOL_CACHE/Python/<semantic version>/x64/ |       // `installDir` from tool cache should look like $RUNNER_TOOL_CACHE/Python/<semantic version>/x64/ | ||||||
|       // So if `findLocalTool` succeeded above, we must have a conformant `installDir` |       // Extract version details | ||||||
|       const version = path.basename(path.dirname(installDir)); |       const version = path.basename(path.dirname(installDir)); | ||||||
|       const major = semver.major(version); |       const major = semver.major(version); | ||||||
|       const minor = semver.minor(version); |       const minor = semver.minor(version); | ||||||
|  |  | ||||||
|  |       const basePath = process.env['APPDATA'] || ''; | ||||||
|  |       let versionSuffix = `${major}${minor}`; | ||||||
|  |       // Append '-32' for x86 architecture if Python version is >= 3.10 | ||||||
|  |       if ( | ||||||
|  |         architecture === 'x86' && | ||||||
|  |         (major > 3 || (major === 3 && minor >= 10)) | ||||||
|  |       ) { | ||||||
|  |         versionSuffix += '-32'; | ||||||
|  |       } else if (architecture === 'arm64') { | ||||||
|  |         versionSuffix += '-arm64'; | ||||||
|  |       } | ||||||
|  |       // Append 't' for freethreaded builds | ||||||
|  |       if (freethreaded) { | ||||||
|  |         versionSuffix += 't'; | ||||||
|  |         if (architecture === 'x86-freethreaded') { | ||||||
|  |           versionSuffix += '-32'; | ||||||
|  |         } else if (architecture === 'arm64-freethreaded') { | ||||||
|  |           versionSuffix += '-arm64'; | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |       // Add user Scripts path | ||||||
|       const userScriptsDir = path.join( |       const userScriptsDir = path.join( | ||||||
|         process.env['APPDATA'] || '', |         basePath, | ||||||
|         'Python', |         'Python', | ||||||
|         `Python${major}${minor}`, |         `Python${versionSuffix}`, | ||||||
|         'Scripts' |         'Scripts' | ||||||
|       ); |       ); | ||||||
|       core.addPath(userScriptsDir); |       core.addPath(userScriptsDir); | ||||||
| @@ -179,6 +222,9 @@ export async function useCpythonVersion( | |||||||
|   core.setOutput('python-version', pythonVersion); |   core.setOutput('python-version', pythonVersion); | ||||||
|   core.setOutput('python-path', pythonPath); |   core.setOutput('python-path', pythonPath); | ||||||
|  |  | ||||||
|  |   const binaryPath = IS_WINDOWS ? installDir : _binDir; | ||||||
|  |   await installPip(binaryPath); | ||||||
|  |  | ||||||
|   return {impl: 'CPython', version: pythonVersion}; |   return {impl: 'CPython', version: pythonVersion}; | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -11,7 +11,7 @@ import { | |||||||
|   logWarning, |   logWarning, | ||||||
|   IS_MAC, |   IS_MAC, | ||||||
|   getVersionInputFromFile, |   getVersionInputFromFile, | ||||||
|   getVersionInputFromPlainFile |   getVersionsInputFromPlainFile | ||||||
| } from './utils'; | } from './utils'; | ||||||
|  |  | ||||||
| function isPyPyVersion(versionSpec: string) { | function isPyPyVersion(versionSpec: string) { | ||||||
| @@ -35,7 +35,7 @@ async function cacheDependencies(cache: string, pythonVersion: string) { | |||||||
|  |  | ||||||
| function resolveVersionInputFromDefaultFile(): string[] { | function resolveVersionInputFromDefaultFile(): string[] { | ||||||
|   const couples: [string, (versionFile: string) => string[]][] = [ |   const couples: [string, (versionFile: string) => string[]][] = [ | ||||||
|     ['.python-version', getVersionInputFromPlainFile] |     ['.python-version', getVersionsInputFromPlainFile] | ||||||
|   ]; |   ]; | ||||||
|   for (const [versionFile, _fn] of couples) { |   for (const [versionFile, _fn] of couples) { | ||||||
|     logWarning( |     logWarning( | ||||||
|   | |||||||
							
								
								
									
										73
									
								
								src/utils.ts
									
									
									
									
									
								
							
							
						
						
									
										73
									
								
								src/utils.ts
									
									
									
									
									
								
							| @@ -228,7 +228,7 @@ function extractValue(obj: any, keys: string[]): string | undefined { | |||||||
|  * If none is present, returns an empty list. |  * If none is present, returns an empty list. | ||||||
|  */ |  */ | ||||||
| export function getVersionInputFromTomlFile(versionFile: string): string[] { | export function getVersionInputFromTomlFile(versionFile: string): string[] { | ||||||
|   core.debug(`Trying to resolve version form ${versionFile}`); |   core.debug(`Trying to resolve version from ${versionFile}`); | ||||||
|  |  | ||||||
|   let pyprojectFile = fs.readFileSync(versionFile, 'utf8'); |   let pyprojectFile = fs.readFileSync(versionFile, 'utf8'); | ||||||
|   // Normalize the line endings in the pyprojectFile |   // Normalize the line endings in the pyprojectFile | ||||||
| @@ -269,13 +269,28 @@ export function getVersionInputFromTomlFile(versionFile: string): string[] { | |||||||
| } | } | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Python version extracted from a plain text file. |  * Python versions extracted from a plain text file. | ||||||
|  |  * - Resolves multiple versions from multiple lines. | ||||||
|  |  * - Handles pyenv-virtualenv pointers (e.g. `3.10/envs/virtualenv`). | ||||||
|  |  * - Ignores empty lines and lines starting with `#` | ||||||
|  |  * - Trims whitespace. | ||||||
|  */ |  */ | ||||||
| export function getVersionInputFromPlainFile(versionFile: string): string[] { | export function getVersionsInputFromPlainFile(versionFile: string): string[] { | ||||||
|   core.debug(`Trying to resolve version form ${versionFile}`); |   core.debug(`Trying to resolve versions from ${versionFile}`); | ||||||
|   const version = fs.readFileSync(versionFile, 'utf8').trim(); |   const content = fs.readFileSync(versionFile, 'utf8').trim(); | ||||||
|   core.info(`Resolved ${versionFile} as ${version}`); |   const lines = content.split(/\r\n|\r|\n/); | ||||||
|   return [version]; |   const versions = lines | ||||||
|  |     .map(line => { | ||||||
|  |       if (line.startsWith('#') || line.trim() === '') { | ||||||
|  |         return undefined; | ||||||
|  |       } | ||||||
|  |       let version: string = line.trim(); | ||||||
|  |       version = version.split('/')[0]; | ||||||
|  |       return version; | ||||||
|  |     }) | ||||||
|  |     .filter(version => version !== undefined) as string[]; | ||||||
|  |   core.info(`Resolved ${versionFile} as ${versions.join(', ')}`); | ||||||
|  |   return versions; | ||||||
| } | } | ||||||
|  |  | ||||||
| /** | /** | ||||||
| @@ -310,16 +325,56 @@ export function getVersionInputFromToolVersions(versionFile: string): string[] { | |||||||
|     return []; |     return []; | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Python version extracted from a plain, .tool-versions or TOML file. |  * Python version extracted from the Pipfile file. | ||||||
|  |  */ | ||||||
|  | export function getVersionInputFromPipfileFile(versionFile: string): string[] { | ||||||
|  |   core.debug(`Trying to resolve version from ${versionFile}`); | ||||||
|  |  | ||||||
|  |   if (!fs.existsSync(versionFile)) { | ||||||
|  |     core.warning(`File ${versionFile} does not exist.`); | ||||||
|  |     return []; | ||||||
|  |   } | ||||||
|  |   let pipfileFile = fs.readFileSync(versionFile, 'utf8'); | ||||||
|  |   // Normalize the line endings in the pipfileFile | ||||||
|  |   pipfileFile = pipfileFile.replace(/\r\n/g, '\n'); | ||||||
|  |  | ||||||
|  |   const pipfileConfig = toml.parse(pipfileFile); | ||||||
|  |   const keys = ['requires']; | ||||||
|  |  | ||||||
|  |   if (!('requires' in pipfileConfig)) { | ||||||
|  |     core.warning(`No Python version found in ${versionFile}`); | ||||||
|  |     return []; | ||||||
|  |   } | ||||||
|  |   if ('python_full_version' in (pipfileConfig['requires'] as toml.JsonMap)) { | ||||||
|  |     // specifies a full python version | ||||||
|  |     keys.push('python_full_version'); | ||||||
|  |   } else { | ||||||
|  |     keys.push('python_version'); | ||||||
|  |   } | ||||||
|  |   const versions = []; | ||||||
|  |   const version = extractValue(pipfileConfig, keys); | ||||||
|  |   if (version !== undefined) { | ||||||
|  |     versions.push(version); | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   core.info(`Extracted ${versions} from ${versionFile}`); | ||||||
|  |   return versions; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * Python version extracted from a plain, .tool-versions, Pipfile or TOML file. | ||||||
|  */ |  */ | ||||||
| export function getVersionInputFromFile(versionFile: string): string[] { | export function getVersionInputFromFile(versionFile: string): string[] { | ||||||
|   if (versionFile.endsWith('.toml')) { |   if (versionFile.endsWith('.toml')) { | ||||||
|     return getVersionInputFromTomlFile(versionFile); |     return getVersionInputFromTomlFile(versionFile); | ||||||
|   } else if (versionFile.match('.tool-versions')) { |   } else if (versionFile.match('.tool-versions')) { | ||||||
|     return getVersionInputFromToolVersions(versionFile); |     return getVersionInputFromToolVersions(versionFile); | ||||||
|  |   } else if (versionFile.match('Pipfile')) { | ||||||
|  |     return getVersionInputFromPipfileFile(versionFile); | ||||||
|   } else { |   } else { | ||||||
|     return getVersionInputFromPlainFile(versionFile); |     return getVersionsInputFromPlainFile(versionFile); | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user