Compare commits
	
		
			No commits in common. "main" and "v5.1.0" have entirely different histories.
		
	
	
		
	
		
							
								
								
									
										22
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,22 +0,0 @@ | |||||||
| # To get started with Dependabot version updates, you'll need to specify which |  | ||||||
| # package ecosystems to update and where the package manifests are located. |  | ||||||
| # Please see the documentation for all configuration options: |  | ||||||
| # https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file |  | ||||||
| 
 |  | ||||||
| version: 2 |  | ||||||
| updates: |  | ||||||
|   # Enable version updates for npm |  | ||||||
|   - package-ecosystem: 'npm' |  | ||||||
|     # Look for `package.json` and `lock` files in the `root` directory |  | ||||||
|     directory: '/' |  | ||||||
|     # Check the npm registry for updates every day (weekdays) |  | ||||||
|     schedule: |  | ||||||
|       interval: 'weekly' |  | ||||||
| 
 |  | ||||||
|   # Enable version updates for GitHub Actions |  | ||||||
|   - package-ecosystem: 'github-actions' |  | ||||||
|     # Workflow files stored in the default location of `.github/workflows` |  | ||||||
|     # You don't need to specify `/.github/workflows` for `directory`. You can use `directory: "/"`. |  | ||||||
|     directory: '/' |  | ||||||
|     schedule: |  | ||||||
|       interval: 'weekly' |  | ||||||
							
								
								
									
										27
									
								
								.github/workflows/e2e-cache.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										27
									
								
								.github/workflows/e2e-cache.yml
									
									
									
									
										vendored
									
									
								
							| @ -10,7 +10,6 @@ on: | |||||||
|       - releases/* |       - releases/* | ||||||
|     paths-ignore: |     paths-ignore: | ||||||
|       - '**.md' |       - '**.md' | ||||||
|   workflow_dispatch: |  | ||||||
| 
 | 
 | ||||||
| permissions: | permissions: | ||||||
|   contents: read |   contents: read | ||||||
| @ -21,8 +20,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|         python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x'] |         python-version: ['3.9', 'pypy-3.7-v7.x'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
| @ -39,8 +38,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|         python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x'] |         python-version: ['3.9', 'pypy-3.9-v7.x'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
| @ -75,8 +74,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|         python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x'] |         python-version: ['3.9', 'pypy-3.8'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Install poetry |       - name: Install poetry | ||||||
| @ -89,16 +88,16 @@ jobs: | |||||||
|           python-version: ${{ matrix.python-version }} |           python-version: ${{ matrix.python-version }} | ||||||
|           cache: 'poetry' |           cache: 'poetry' | ||||||
|       - name: Install dependencies |       - name: Install dependencies | ||||||
|         run: poetry install --no-root |         run: poetry install | ||||||
| 
 | 
 | ||||||
|   python-pip-dependencies-caching-path: |   python-pip-dependencies-caching-path: | ||||||
|     name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }}, caching path) |     name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }}) | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|         python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x'] |         python-version: ['3.9', 'pypy-3.7-v7.x'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
| @ -111,13 +110,13 @@ jobs: | |||||||
|         run: pip install numpy pandas requests |         run: pip install numpy pandas requests | ||||||
| 
 | 
 | ||||||
|   python-pipenv-dependencies-caching-path: |   python-pipenv-dependencies-caching-path: | ||||||
|     name: Test pipenv (Python ${{ matrix.python-version}}, ${{ matrix.os }}, caching path) |     name: Test pipenv (Python ${{ matrix.python-version}}, ${{ matrix.os }}) | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|         python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x'] |         python-version: ['3.9', 'pypy-3.9-v7.x'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup Python |       - name: Setup Python | ||||||
|  | |||||||
							
								
								
									
										95
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										95
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							| @ -9,7 +9,6 @@ on: | |||||||
|   pull_request: |   pull_request: | ||||||
|     paths-ignore: |     paths-ignore: | ||||||
|       - '**.md' |       - '**.md' | ||||||
|   workflow_dispatch: |  | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|   test-setup-python: |   test-setup-python: | ||||||
| @ -17,77 +16,83 @@ jobs: | |||||||
|     runs-on: ${{ matrix.operating-system }} |     runs-on: ${{ matrix.operating-system }} | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         operating-system: |         operating-system: [ubuntu-20.04, windows-latest] | ||||||
|           [ |  | ||||||
|             ubuntu-20.04, |  | ||||||
|             windows-latest, |  | ||||||
|             ubuntu-22.04, |  | ||||||
|             ubuntu-latest, |  | ||||||
|             macos-latest, |  | ||||||
|             macos-13 |  | ||||||
|           ] |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python 3.9.13 |       - name: Run with setup-python 3.5 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 3.9.13 |           python-version: 3.5 | ||||||
|       - name: Verify 3.9.13 |       - name: Verify 3.5 | ||||||
|         run: python __tests__/verify-python.py 3.9.13 |         run: python __tests__/verify-python.py 3.5 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python 3.9.13 |       - name: Run with setup-python 3.6 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 3.10.11 |           python-version: 3.6 | ||||||
|       - name: Verify 3.10.11 |       - name: Verify 3.6 | ||||||
|         run: python __tests__/verify-python.py 3.10.11 |         run: python __tests__/verify-python.py 3.6 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python 3.11.9 |       - name: Run with setup-python 3.7 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 3.11.9 |           python-version: 3.7 | ||||||
|       - name: Verify 3.11.9 |       - name: Verify 3.7 | ||||||
|         run: python __tests__/verify-python.py 3.11.9 |         run: python __tests__/verify-python.py 3.7 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python 3.12.7 |       - name: Run with setup-python 3.8 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 3.12.7 |           python-version: 3.8 | ||||||
|       - name: Verify 3.12.7 |       - name: Verify 3.8 | ||||||
|         run: python __tests__/verify-python.py 3.12.7 |         run: python __tests__/verify-python.py 3.8 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python 3.13.0 |       - name: Run with setup-python 3.7.5 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 3.13.0 |           python-version: 3.7.5 | ||||||
|       - name: Verify 3.13.0 |       - name: Verify 3.7.5 | ||||||
|         run: python __tests__/verify-python.py 3.13.0 |         run: python __tests__/verify-python.py 3.7.5 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python 3.13 |       - name: Run with setup-python 3.6.7 | ||||||
|         id: cp313 |  | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: '3.13' |           python-version: 3.6.7 | ||||||
|       - name: Verify 3.13 |       - name: Verify 3.6.7 | ||||||
|         run: python __tests__/verify-python.py 3.13 |         run: python __tests__/verify-python.py 3.6.7 | ||||||
|       - name: Run python-path sample 3.13 |  | ||||||
|         run: pipx run --python '${{ steps.cp313.outputs.python-path }}' nox --version |  | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python ==3.13 |       - name: Run with setup-python 3.8.1 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: '==3.13' |           python-version: 3.8.1 | ||||||
|       - name: Verify ==3.13 |       - name: Verify 3.8.1 | ||||||
|         run: python __tests__/verify-python.py 3.13 |         run: python __tests__/verify-python.py 3.8.1 | ||||||
| 
 | 
 | ||||||
|       - name: Run with setup-python <3.13 |       - name: Run with setup-python 3.10 | ||||||
|  |         id: cp310 | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: '<3.13' |           python-version: '3.10' | ||||||
|       - name: Verify <3.13 |       - name: Verify 3.10 | ||||||
|         run: python __tests__/verify-python.py 3.12 |         run: python __tests__/verify-python.py 3.10 | ||||||
|  |       - name: Run python-path sample 3.10 | ||||||
|  |         run: pipx run --python '${{ steps.cp310.outputs.python-path }}' nox --version | ||||||
|  | 
 | ||||||
|  |       - name: Run with setup-python ==3.8 | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version: '==3.8' | ||||||
|  |       - name: Verify ==3.8 | ||||||
|  |         run: python __tests__/verify-python.py 3.8 | ||||||
|  | 
 | ||||||
|  |       - name: Run with setup-python <3.11 | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           python-version: '<3.11' | ||||||
|  |       - name: Verify <3.11 | ||||||
|  |         run: python __tests__/verify-python.py 3.10 | ||||||
|       - 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 | ||||||
|  | |||||||
							
								
								
									
										20
									
								
								.github/workflows/publish-immutable-actions.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								.github/workflows/publish-immutable-actions.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,20 +0,0 @@ | |||||||
| name: 'Publish Immutable Action Version' |  | ||||||
| 
 |  | ||||||
| on: |  | ||||||
|   release: |  | ||||||
|     types: [published] |  | ||||||
| 
 |  | ||||||
| jobs: |  | ||||||
|   publish: |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
|     permissions: |  | ||||||
|       contents: read |  | ||||||
|       id-token: write |  | ||||||
|       packages: write |  | ||||||
| 
 |  | ||||||
|     steps: |  | ||||||
|       - name: Checking out |  | ||||||
|         uses: actions/checkout@v4 |  | ||||||
|       - name: Publish |  | ||||||
|         id: publish |  | ||||||
|         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.2.2 | ||||||
|         with: |         with: | ||||||
|           source-tag: ${{ env.TAG_NAME }} |           source-tag: ${{ env.TAG_NAME }} | ||||||
|           slack-webhook: ${{ secrets.SLACK_WEBHOOK }} |           slack-webhook: ${{ secrets.SLACK_WEBHOOK }} | ||||||
|  | |||||||
							
								
								
									
										15
									
								
								.github/workflows/test-graalpy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								.github/workflows/test-graalpy.yml
									
									
									
									
										vendored
									
									
								
							| @ -9,7 +9,6 @@ on: | |||||||
|   pull_request: |   pull_request: | ||||||
|     paths-ignore: |     paths-ignore: | ||||||
|       - '**.md' |       - '**.md' | ||||||
|   workflow_dispatch: |  | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|   setup-graalpy: |   setup-graalpy: | ||||||
| @ -18,12 +17,10 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [macos-latest, ubuntu-20.04, ubuntu-latest, macos-13] |         os: [macos-latest, ubuntu-20.04, ubuntu-latest] | ||||||
|         graalpy: |         graalpy: | ||||||
|           - 'graalpy-22.3' |  | ||||||
|           - 'graalpy-23.0' |           - 'graalpy-23.0' | ||||||
|           - 'graalpy-23.1' |           - 'graalpy-22.3' | ||||||
|           - 'graalpy-24.1' |  | ||||||
| 
 | 
 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
| @ -65,8 +62,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [macos-latest, ubuntu-20.04, ubuntu-latest, macos-13] |         os: [macos-latest, ubuntu-20.04, ubuntu-latest] | ||||||
|         graalpy: ['graalpy22.3', 'graalpy23.0', 'graalpy23.1', 'graalpy24.1'] |         graalpy: ['graalpy23.0', 'graalpy22.3'] | ||||||
| 
 | 
 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
| @ -90,14 +87,14 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, macos-latest, macos-13] |         os: [ubuntu-latest, macos-latest] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup GraalPy and check latest |       - name: Setup GraalPy and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         id: graalpy |         id: graalpy | ||||||
|         with: |         with: | ||||||
|           python-version: 'graalpy-24.x' |           python-version: 'graalpy-23.x' | ||||||
|           check-latest: true |           check-latest: true | ||||||
|       - name: GraalPy and Python version |       - name: GraalPy and Python version | ||||||
|         run: python --version |         run: python --version | ||||||
|  | |||||||
							
								
								
									
										96
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										96
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							| @ -11,7 +11,6 @@ on: | |||||||
|       - '**.md' |       - '**.md' | ||||||
|   schedule: |   schedule: | ||||||
|     - cron: 30 3 * * * |     - cron: 30 3 * * * | ||||||
|   workflow_dispatch: |  | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|   setup-pypy: |   setup-pypy: | ||||||
| @ -20,73 +19,19 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-latest] | ||||||
|           [macos-latest, windows-latest, ubuntu-20.04, ubuntu-latest, macos-13] |  | ||||||
|         pypy: |         pypy: | ||||||
|           - 'pypy-2.7' |           - 'pypy-2.7' | ||||||
|           - 'pypy-3.10' |           - 'pypy-3.7' | ||||||
|           - 'pypy3.9' |           - 'pypy3.9' | ||||||
|           - 'pypy-2.7-v7.3.17' |           - 'pypy-2.7-v7.3.4' | ||||||
|           - 'pypy-3.10-v7.3.17' |           - 'pypy-3.7-v7.3.5' | ||||||
|           - 'pypy-3.10-v7.3.16' |           - 'pypy-3.7-v7.3.4' | ||||||
|           - 'pypy-3.10-v7.3.x' |           - 'pypy-3.7-v7.3.x' | ||||||
|           - 'pypy-3.10-v7.x' |           - 'pypy-3.7-v7.x' | ||||||
|           - 'pypy-2.7-v7.3.12rc1' |           - 'pypy-2.7-v7.3.4rc1' | ||||||
|           - 'pypy-3.10-nightly' |           - 'pypy-3.8-nightly' | ||||||
|           - 'pypy3.10-v7.3.17' |           - 'pypy3.8-v7.3.7' | ||||||
| 
 |  | ||||||
|     steps: |  | ||||||
|       - name: Checkout |  | ||||||
|         uses: actions/checkout@v4 |  | ||||||
| 
 |  | ||||||
|       - name: setup-python ${{ matrix.pypy }} |  | ||||||
|         id: setup-python |  | ||||||
|         uses: ./ |  | ||||||
|         with: |  | ||||||
|           python-version: ${{ matrix.pypy }} |  | ||||||
| 
 |  | ||||||
|       - name: Check python-path |  | ||||||
|         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' |  | ||||||
|         shell: bash |  | ||||||
| 
 |  | ||||||
|       - name: PyPy and Python version |  | ||||||
|         run: python --version |  | ||||||
| 
 |  | ||||||
|       - name: Run simple code |  | ||||||
|         run: python -c 'import math; print(math.factorial(5))' |  | ||||||
| 
 |  | ||||||
|       - name: Assert PyPy is running |  | ||||||
|         run: | |  | ||||||
|           import platform |  | ||||||
|           assert platform.python_implementation().lower() == "pypy" |  | ||||||
|         shell: python |  | ||||||
| 
 |  | ||||||
|       - name: Assert expected binaries (or symlinks) are present |  | ||||||
|         run: | |  | ||||||
|           EXECUTABLE=${{ matrix.pypy }} |  | ||||||
|           EXECUTABLE=${EXECUTABLE/pypy-/pypy}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name |  | ||||||
|           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe |  | ||||||
|           ${EXECUTABLE} --version |  | ||||||
|         shell: bash |  | ||||||
| 
 |  | ||||||
|   check-non-eol: |  | ||||||
|     name: Check non-eol ${{ matrix.pypy }} on ${{ matrix.os }} |  | ||||||
|     runs-on: ${{ matrix.os }} |  | ||||||
|     strategy: |  | ||||||
|       fail-fast: false |  | ||||||
|       matrix: |  | ||||||
|         os: |  | ||||||
|           - macos-13 |  | ||||||
|           - macos-14 |  | ||||||
|           - macos-15 |  | ||||||
|           - windows-2019 |  | ||||||
|           - windows-2022 |  | ||||||
|           - windows-2025 |  | ||||||
|           - ubuntu-22.04 |  | ||||||
|           - ubuntu-24.04 |  | ||||||
|           - ubuntu-22.04-arm |  | ||||||
|           - ubuntu-24.04-arm |  | ||||||
|         pypy: ['pypy-2.7', 'pypy-3.10'] |  | ||||||
| 
 | 
 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
| @ -128,9 +73,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-latest] | ||||||
|           [macos-latest, windows-latest, ubuntu-20.04, ubuntu-latest, macos-13] |         pypy: ['pypy2.7', 'pypy3.7', 'pypy3.8', 'pypy3.9-nightly'] | ||||||
|         pypy: ['pypy2.7', 'pypy3.9', 'pypy3.10-nightly'] |  | ||||||
| 
 | 
 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
| @ -154,13 +98,13 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup PyPy and check latest |       - name: Setup PyPy and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: 'pypy-3.10-v7.3.x' |           python-version: 'pypy-3.7-v7.3.x' | ||||||
|           check-latest: true |           check-latest: true | ||||||
|       - name: PyPy and Python version |       - name: PyPy and Python version | ||||||
|         run: python --version |         run: python --version | ||||||
| @ -176,7 +120,7 @@ jobs: | |||||||
| 
 | 
 | ||||||
|       - name: Assert expected binaries (or symlinks) are present |       - name: Assert expected binaries (or symlinks) are present | ||||||
|         run: | |         run: | | ||||||
|           EXECUTABLE="pypy-3.10-v7.3.x" |           EXECUTABLE="pypy-3.7-v7.3.x" | ||||||
|           EXECUTABLE=${EXECUTABLE/-/}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name |           EXECUTABLE=${EXECUTABLE/-/}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name | ||||||
|           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe |           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe | ||||||
|           ${EXECUTABLE} --version |           ${EXECUTABLE} --version | ||||||
| @ -187,15 +131,15 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup PyPy and check latest |       - name: Setup PyPy and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: | |           python-version: | | ||||||
|             pypy-3.10-v7.3.x |             pypy-3.7-v7.3.x | ||||||
|             pypy3.9 |             pypy3.8 | ||||||
|           check-latest: true |           check-latest: true | ||||||
|       - name: PyPy and Python version |       - name: PyPy and Python version | ||||||
|         run: python --version |         run: python --version | ||||||
| @ -211,14 +155,14 @@ jobs: | |||||||
| 
 | 
 | ||||||
|       - name: Assert expected binaries (or symlinks) are present |       - name: Assert expected binaries (or symlinks) are present | ||||||
|         run: | |         run: | | ||||||
|           EXECUTABLE="pypy-3.10-v7.3.x" |           EXECUTABLE="pypy-3.7-v7.3.x" | ||||||
|           EXECUTABLE=${EXECUTABLE/-/}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name |           EXECUTABLE=${EXECUTABLE/-/}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name | ||||||
|           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe |           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe | ||||||
|           ${EXECUTABLE} --version |           ${EXECUTABLE} --version | ||||||
|         shell: bash |         shell: bash | ||||||
|       - name: Assert expected binaries (or symlinks) are present |       - name: Assert expected binaries (or symlinks) are present | ||||||
|         run: | |         run: | | ||||||
|           EXECUTABLE='pypy3.9' |           EXECUTABLE='pypy3.8' | ||||||
|           EXECUTABLE=${EXECUTABLE/pypy-/pypy}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name |           EXECUTABLE=${EXECUTABLE/pypy-/pypy}  # remove the first '-' in "pypy-X.Y" -> "pypyX.Y" to match executable name | ||||||
|           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe |           EXECUTABLE=${EXECUTABLE%%-*}  # remove any -* suffixe | ||||||
|           ${EXECUTABLE} --version |           ${EXECUTABLE} --version | ||||||
|  | |||||||
							
								
								
									
										172
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										172
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							| @ -20,16 +20,17 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-22.04] | ||||||
|           [ |         python: [3.5.4, 3.6.7, 3.7.5, 3.8.15, 3.9.13] | ||||||
|             macos-latest, |         exclude: | ||||||
|             windows-latest, |           - os: ubuntu-22.04 | ||||||
|             ubuntu-20.04, |             python: 3.5.4 | ||||||
|             ubuntu-22.04, |           - os: ubuntu-22.04 | ||||||
|             macos-13, |             python: 3.6.7 | ||||||
|             ubuntu-latest |           - os: ubuntu-22.04 | ||||||
|           ] |             python: 3.7.5 | ||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.0] |           - os: windows-latest | ||||||
|  |             python: 3.8.15 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| @ -63,16 +64,17 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-22.04] | ||||||
|           [ |         python: [3.5.4, 3.6.7, 3.7.5, 3.8.15, 3.9.13] | ||||||
|             macos-latest, |         exclude: | ||||||
|             windows-latest, |           - os: ubuntu-22.04 | ||||||
|             ubuntu-20.04, |             python: 3.5.4 | ||||||
|             ubuntu-22.04, |           - os: ubuntu-22.04 | ||||||
|             macos-13, |             python: 3.6.7 | ||||||
|             ubuntu-latest |           - os: ubuntu-22.04 | ||||||
|           ] |             python: 3.7.5 | ||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.0] |           - os: windows-latest | ||||||
|  |             python: 3.8.15 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| @ -109,16 +111,17 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-22.04] | ||||||
|           [ |         python: [3.5.4, 3.6.7, 3.7.5, 3.8.15, 3.9.13] | ||||||
|             macos-latest, |         exclude: | ||||||
|             windows-latest, |           - os: ubuntu-22.04 | ||||||
|             ubuntu-20.04, |             python: 3.5.4 | ||||||
|             ubuntu-22.04, |           - os: ubuntu-22.04 | ||||||
|             macos-13, |             python: 3.6.7 | ||||||
|             ubuntu-latest |           - os: ubuntu-22.04 | ||||||
|           ] |             python: 3.7.5 | ||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.0] |           - os: windows-latest | ||||||
|  |             python: 3.8.15 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| @ -153,16 +156,17 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-22.04] | ||||||
|           [ |         python: [3.5.4, 3.6.7, 3.7.5, 3.8.15, 3.9.13, '==3.10.10'] | ||||||
|             macos-latest, |         exclude: | ||||||
|             windows-latest, |           - os: ubuntu-22.04 | ||||||
|             ubuntu-20.04, |             python: 3.5.4 | ||||||
|             ubuntu-22.04, |           - os: ubuntu-22.04 | ||||||
|             macos-13, |             python: 3.6.7 | ||||||
|             ubuntu-latest |           - os: ubuntu-22.04 | ||||||
|           ] |             python: 3.7.5 | ||||||
|         python: [3.9.13, 3.10.11, 3.11.9, '==3.12.3', 3.13.0] |           - os: windows-latest | ||||||
|  |             python: 3.8.15 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| @ -202,16 +206,17 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-22.04] | ||||||
|           [ |         python: [3.5.4, 3.6.7, 3.7.5, 3.8.15, 3.9.13] | ||||||
|             macos-latest, |         exclude: | ||||||
|             windows-latest, |           - os: ubuntu-22.04 | ||||||
|             ubuntu-20.04, |             python: 3.5.4 | ||||||
|             ubuntu-22.04, |           - os: ubuntu-22.04 | ||||||
|             macos-13, |             python: 3.6.7 | ||||||
|             ubuntu-latest |           - os: ubuntu-22.04 | ||||||
|           ] |             python: 3.7.5 | ||||||
|         python: [3.9.13, 3.10.11, 3.11.9, 3.12.3, 3.13.0] |           - os: windows-latest | ||||||
|  |             python: 3.8.15 | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| @ -246,29 +251,21 @@ jobs: | |||||||
|         run: python -c 'import math; print(math.factorial(5))' |         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.1 ${{ matrix.os }} |     name: Setup 3.9.0-beta.4 ${{ matrix.os }} | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04] | ||||||
|           [ |  | ||||||
|             macos-latest, |  | ||||||
|             windows-latest, |  | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |  | ||||||
|             macos-13, |  | ||||||
|             ubuntu-latest |  | ||||||
|           ] |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| 
 | 
 | ||||||
|       - name: setup-python 3.14.0-alpha.1 |       - name: setup-python 3.9.0-beta.4 | ||||||
|         id: setup-python |         id: setup-python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: '3.14.0-alpha.1' |           python-version: '3.9.0-beta.4' | ||||||
| 
 | 
 | ||||||
|       - name: Check python-path |       - name: Check python-path | ||||||
|         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' |         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' | ||||||
| @ -277,8 +274,8 @@ jobs: | |||||||
|       - name: Validate version |       - name: Validate version | ||||||
|         run: | |         run: | | ||||||
|           $pythonVersion = (python --version) |           $pythonVersion = (python --version) | ||||||
|           if ("Python 3.14.0a1" -ne "$pythonVersion"){ |           if ("Python 3.9.0b4" -ne "$pythonVersion"){ | ||||||
|             Write-Host "The current version is $pythonVersion; expected version is 3.14.0a1" |             Write-Host "The current version is $pythonVersion; expected version is 3.9.0b4" | ||||||
|             exit 1 |             exit 1 | ||||||
|           } |           } | ||||||
|           $pythonVersion |           $pythonVersion | ||||||
| @ -288,49 +285,49 @@ jobs: | |||||||
|         run: python -c 'import math; print(math.factorial(5))' |         run: python -c 'import math; print(math.factorial(5))' | ||||||
| 
 | 
 | ||||||
|   setup-dev-version: |   setup-dev-version: | ||||||
|     name: Setup 3.14-dev ${{ matrix.os }} |     name: Setup 3.9-dev ${{ matrix.os }} | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [macos-latest, windows-latest, ubuntu-latest, macos-13] |         os: [macos-latest, windows-latest, ubuntu-latest] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| 
 | 
 | ||||||
|       - name: setup-python 3.14-dev |       - name: setup-python 3.9-dev | ||||||
|         id: setup-python |         id: setup-python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: '3.14-dev' |           python-version: '3.9-dev' | ||||||
| 
 | 
 | ||||||
|       - name: Check python-path |       - name: Check python-path | ||||||
|         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' |         run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' | ||||||
|         shell: bash |         shell: bash | ||||||
| 
 | 
 | ||||||
|       - name: Validate version |       - name: Validate version | ||||||
|         run: ${{ startsWith(steps.setup-python.outputs.python-version, '3.14.') }} |         run: ${{ startsWith(steps.setup-python.outputs.python-version, '3.9.') }} | ||||||
|         shell: bash |         shell: bash | ||||||
| 
 | 
 | ||||||
|       - name: Run simple code |       - name: Run simple code | ||||||
|         run: python -c 'import math; print(math.factorial(5))' |         run: python -c 'import math; print(math.factorial(5))' | ||||||
| 
 | 
 | ||||||
|   setup-prerelease-version: |   setup-prerelease-version: | ||||||
|     name: Setup 3.14 ${{ matrix.os }} |     name: Setup 3.12 ${{ matrix.os }} | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [macos-latest, windows-latest, ubuntu-latest, macos-13] |         os: [macos-latest, windows-latest, ubuntu-latest] | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| 
 | 
 | ||||||
|       - name: setup-python 3.14 |       - name: setup-python 3.12 | ||||||
|         id: setup-python |         id: setup-python | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: '3.14' |           python-version: '3.12' | ||||||
|           allow-prereleases: true |           allow-prereleases: true | ||||||
| 
 | 
 | ||||||
|       - name: Check python-path |       - name: Check python-path | ||||||
| @ -338,7 +335,7 @@ jobs: | |||||||
|         shell: bash |         shell: bash | ||||||
| 
 | 
 | ||||||
|       - name: Validate version |       - name: Validate version | ||||||
|         run: ${{ startsWith(steps.setup-python.outputs.python-version, '3.14.') }} |         run: ${{ startsWith(steps.setup-python.outputs.python-version, '3.12.') }} | ||||||
|         shell: bash |         shell: bash | ||||||
| 
 | 
 | ||||||
|       - name: Run simple code |       - name: Run simple code | ||||||
| @ -350,16 +347,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: |         os: [macos-latest, windows-latest, ubuntu-20.04, ubuntu-22.04] | ||||||
|           [ |         python: ['3.7', '3.8', '3.9', '3.10'] | ||||||
|             macos-latest, |  | ||||||
|             windows-latest, |  | ||||||
|             ubuntu-20.04, |  | ||||||
|             ubuntu-22.04, |  | ||||||
|             macos-13, |  | ||||||
|             ubuntu-latest |  | ||||||
|           ] |  | ||||||
|         python: ['3.9', '3.10', '3.11', '3.12', '3.13'] |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v4 | ||||||
| @ -382,8 +371,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|         python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] |         python-version: ['3.8', '3.9', '3.10'] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup Python and check latest |       - name: Setup Python and check latest | ||||||
| @ -406,24 +395,23 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Setup Python and check latest |       - name: Setup Python and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           python-version: | |           python-version: | | ||||||
|  |             3.7 | ||||||
|  |             3.8 | ||||||
|             3.9 |             3.9 | ||||||
|             3.10 |             3.10 | ||||||
|             3.11 |  | ||||||
|             3.12 |  | ||||||
|             3.13 |  | ||||||
|           check-latest: true |           check-latest: true | ||||||
|       - name: Validate version |       - name: Validate version | ||||||
|         run: | |         run: | | ||||||
|           $pythonVersion = (python --version) |           $pythonVersion = (python --version) | ||||||
|           if ("$pythonVersion" -NotMatch "3.13"){ |           if ("$pythonVersion" -NotMatch "3.10"){ | ||||||
|             Write-Host "The current version is $pythonVersion; expected version is 3.13" |             Write-Host "The current version is $pythonVersion; expected version is 3.10" | ||||||
|             exit 1 |             exit 1 | ||||||
|           } |           } | ||||||
|           $pythonVersion |           $pythonVersion | ||||||
|  | |||||||
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@actions/cache.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@actions/cache.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@actions/core.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@actions/core.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@actions/http-client.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@actions/http-client.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@iarna/toml.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@iarna/toml.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/plugin-framework.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/plugin-framework.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/plugin.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/plugin.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/protoc.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/protoc.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/runtime-rpc.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/runtime-rpc.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/runtime.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/@protobuf-ts/runtime.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/camel-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/camel-case.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/commander.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/commander.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/dot-object.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/dot-object.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/fs.realpath.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/fs.realpath.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/glob.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/glob.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/inflight.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/inflight.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/inherits.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/inherits.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/lodash.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/lodash.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/lower-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/lower-case.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/no-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/no-case.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/once.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/once.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/pascal-case.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/pascal-case.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/path-is-absolute.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/path-is-absolute.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/path-to-regexp.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/path-to-regexp.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/prettier.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/prettier.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/ts-poet.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/ts-poet.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/twirp-ts.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/twirp-ts.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/typescript.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/typescript.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/undici.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/undici.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/wrappy.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/wrappy.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								.licenses/npm/yaml.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								.licenses/npm/yaml.dep.yml
									
									
									
										generated
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										19
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								README.md
									
									
									
									
									
								
							| @ -21,7 +21,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13'  |     python-version: '3.10'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -31,7 +31,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5  | - uses: actions/setup-python@v5  | ||||||
|   with: |   with: | ||||||
|     python-version: 'pypy3.10'  |     python-version: 'pypy3.9'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -41,7 +41,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5  | - uses: actions/setup-python@v5  | ||||||
|   with: |   with: | ||||||
|     python-version: 'graalpy-24.0'  |     python-version: 'graalpy-22.3'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -57,7 +57,7 @@ The `python-version` input supports the [Semantic Versioning Specification](http | |||||||
| 
 | 
 | ||||||
| ## Supported architectures | ## Supported architectures | ||||||
| 
 | 
 | ||||||
| Using the `architecture` input, it is possible to specify the required Python or PyPy interpreter architecture: `x86`, `x64`, or `arm64`. If the input is not specified, the architecture defaults to the host OS architecture. | Using `architecture` input it is possible to specify the required Python or PyPy interpreter architecture: `x86` or `x64`. If the input is not specified the architecture defaults to `x64`. | ||||||
| 
 | 
 | ||||||
| ## Caching packages dependencies | ## Caching packages dependencies | ||||||
| 
 | 
 | ||||||
| @ -76,7 +76,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.9' | ||||||
|     cache: 'pip' # caching pip dependencies |     cache: 'pip' # caching pip dependencies | ||||||
| - run: pip install -r requirements.txt | - run: pip install -r requirements.txt | ||||||
| ``` | ``` | ||||||
| @ -99,15 +99,6 @@ See examples of using `cache` and `cache-dependency-path` for `pipenv` and `poet | |||||||
| - [Using `setup-python` on GHES](docs/advanced-usage.md#using-setup-python-on-ghes) | - [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) | ||||||
| 
 | 
 | ||||||
| ## Recommended permissions |  | ||||||
| 
 |  | ||||||
| When using the `setup-python` action in your GitHub Actions workflow, it is recommended to set the following permissions to ensure proper functionality: |  | ||||||
| 
 |  | ||||||
| ```yaml |  | ||||||
| permissions: |  | ||||||
|   contents: read # access to check out code and install dependencies |  | ||||||
| ``` |  | ||||||
| 
 |  | ||||||
| ## License | ## License | ||||||
| 
 | 
 | ||||||
| The scripts and documentation in this project are released under the [MIT License](LICENSE). | The scripts and documentation in this project are released under the [MIT License](LICENSE). | ||||||
|  | |||||||
| @ -184,31 +184,19 @@ virtualenvs.path = "{cache-dir}/virtualenvs"  # /Users/patrick/Library/Caches/py | |||||||
|           ); |           ); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         const restoredKeys = restoreCacheSpy.mock.results.map( |         if (process.platform === 'linux' && packageManager === 'pip') { | ||||||
|           result => result.value |           expect(infoSpy).toHaveBeenCalledWith( | ||||||
|         ); |             `Cache restored from key: setup-python-${process.env['RUNNER_OS']}-20.04-Ubuntu-python-${pythonVersion}-${packageManager}-${fileHash}` | ||||||
| 
 |           ); | ||||||
|         restoredKeys.forEach(restoredKey => { |         } else if (packageManager === 'poetry') { | ||||||
|           if (restoredKey) { |           expect(infoSpy).toHaveBeenCalledWith( | ||||||
|             if (process.platform === 'linux' && packageManager === 'pip') { |             `Cache restored from key: setup-python-${process.env['RUNNER_OS']}-python-${pythonVersion}-${packageManager}-v2-${fileHash}` | ||||||
|               expect(infoSpy).toHaveBeenCalledWith( |           ); | ||||||
|                 `Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}-20.04-Ubuntu-python-${pythonVersion}-${packageManager}-${fileHash}` |         } else { | ||||||
|               ); |           expect(infoSpy).toHaveBeenCalledWith( | ||||||
|             } else if (packageManager === 'poetry') { |             `Cache restored from key: setup-python-${process.env['RUNNER_OS']}-python-${pythonVersion}-${packageManager}-${fileHash}` | ||||||
|               expect(infoSpy).toHaveBeenCalledWith( |           ); | ||||||
|                 `Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}-python-${pythonVersion}-${packageManager}-v2-${fileHash}` |         } | ||||||
|               ); |  | ||||||
|             } else { |  | ||||||
|               expect(infoSpy).toHaveBeenCalledWith( |  | ||||||
|                 `Cache restored from key: setup-python-${process.env['RUNNER_OS']}-${process.arch}-python-${pythonVersion}-${packageManager}-${fileHash}` |  | ||||||
|               ); |  | ||||||
|             } |  | ||||||
|           } else { |  | ||||||
|             expect(infoSpy).toHaveBeenCalledWith( |  | ||||||
|               `${packageManager} cache is not found` |  | ||||||
|             ); |  | ||||||
|           } |  | ||||||
|         }); |  | ||||||
|       }, |       }, | ||||||
|       30000 |       30000 | ||||||
|     ); |     ); | ||||||
|  | |||||||
							
								
								
									
										495
									
								
								__tests__/data/poetry.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										495
									
								
								__tests__/data/poetry.lock
									
									
									
										generated
									
									
									
								
							| @ -1,212 +1,413 @@ | |||||||
| # This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. |  | ||||||
| 
 |  | ||||||
| [[package]] | [[package]] | ||||||
| name = "altgraph" | name = "altgraph" | ||||||
| version = "0.17.4" | version = "0.17.2" | ||||||
| description = "Python graph (network) package" | description = "Python graph (network) package" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = "*" | python-versions = "*" | ||||||
| files = [ |  | ||||||
|     {file = "altgraph-0.17.4-py2.py3-none-any.whl", hash = "sha256:642743b4750de17e655e6711601b077bc6598dbfa3ba5fa2b2a35ce12b508dff"}, |  | ||||||
|     {file = "altgraph-0.17.4.tar.gz", hash = "sha256:1b5afbb98f6c4dcadb2e2ae6ab9fa994bbb8c1d75f4fa96d340f9437ae454406"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "flake8" | name = "certifi" | ||||||
| version = "4.0.1" | version = "2020.6.20" | ||||||
| description = "the modular source code checker: pep8 pyflakes and co" | description = "Python package for providing Mozilla's CA Bundle." | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.6" | python-versions = "*" | ||||||
| files = [ |  | ||||||
|     {file = "flake8-4.0.1-py2.py3-none-any.whl", hash = "sha256:479b1304f72536a55948cb40a32dce8bb0ffe3501e26eaf292c7e60eb5e0428d"}, |  | ||||||
|     {file = "flake8-4.0.1.tar.gz", hash = "sha256:806e034dda44114815e23c16ef92f95c91e4c71100ff52813adf7132a6ad870d"}, |  | ||||||
| ] |  | ||||||
| 
 |  | ||||||
| [package.dependencies] |  | ||||||
| mccabe = ">=0.6.0,<0.7.0" |  | ||||||
| pycodestyle = ">=2.8.0,<2.9.0" |  | ||||||
| pyflakes = ">=2.4.0,<2.5.0" |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "importlib-metadata" | name = "chardet" | ||||||
| version = "8.2.0" | version = "3.0.4" | ||||||
| description = "Read metadata from Python packages" | description = "Universal encoding detector for Python 2 and 3" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = "*" | ||||||
| files = [ | 
 | ||||||
|     {file = "importlib_metadata-8.2.0-py3-none-any.whl", hash = "sha256:11901fa0c2f97919b288679932bb64febaeacf289d18ac84dd68cb2e74213369"}, | [[package]] | ||||||
|     {file = "importlib_metadata-8.2.0.tar.gz", hash = "sha256:72e8d4399996132204f9a16dcc751af254a48f8d1b20b9ff0f98d4a8f901e73d"}, | name = "dis3" | ||||||
| ] | version = "0.1.3" | ||||||
|  | description = "Python 2.7 backport of the \"dis\" module from Python 3.5+" | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "docutils" | ||||||
|  | version = "0.16" | ||||||
|  | description = "Docutils -- Python Documentation Utilities" | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "future" | ||||||
|  | version = "0.18.2" | ||||||
|  | description = "Clean single-source support for Python 3 and 2" | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "idna" | ||||||
|  | version = "2.9" | ||||||
|  | description = "Internationalized Domain Names in Applications (IDNA)" | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "itsdangerous" | ||||||
|  | version = "1.1.0" | ||||||
|  | description = "Various helpers to pass data to untrusted environments and back." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "kivy" | ||||||
|  | version = "1.11.1" | ||||||
|  | description = "A software library for rapid development of hardware-accelerated multitouch applications." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
| 
 | 
 | ||||||
| [package.dependencies] | [package.dependencies] | ||||||
| zipp = ">=0.5" | docutils = "*" | ||||||
|  | Kivy-Garden = ">=0.1.4" | ||||||
|  | pygments = "*" | ||||||
| 
 | 
 | ||||||
| [package.extras] | [package.extras] | ||||||
| doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] | tuio = ["oscpy"] | ||||||
| perf = ["ipython"] |  | ||||||
| test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "macholib" | name = "kivy-deps.angle" | ||||||
| version = "1.16.3" | version = "0.3.0" | ||||||
| description = "Mach-O header analysis and editing" | description = "Repackaged binary dependency of Kivy." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "kivy-deps.glew" | ||||||
|  | version = "0.1.12" | ||||||
|  | description = "Repackaged binary dependency of Kivy." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "kivy-deps.gstreamer" | ||||||
|  | version = "0.1.17" | ||||||
|  | description = "Repackaged binary dependency of Kivy." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "kivy-deps.sdl2" | ||||||
|  | version = "0.1.22" | ||||||
|  | description = "Repackaged binary dependency of Kivy." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "kivy-garden" | ||||||
|  | version = "0.1.4" | ||||||
|  | description = "Garden tool for kivy flowers." | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = "*" | python-versions = "*" | ||||||
| files = [ |  | ||||||
|     {file = "macholib-1.16.3-py2.py3-none-any.whl", hash = "sha256:0e315d7583d38b8c77e815b1ecbdbf504a8258d8b3e17b61165c6feb60d18f2c"}, |  | ||||||
|     {file = "macholib-1.16.3.tar.gz", hash = "sha256:07ae9e15e8e4cd9a788013d81f5908b3609aa76f9b1421bae9c4d7606ec86a30"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [package.dependencies] | [package.dependencies] | ||||||
| altgraph = ">=0.17" | requests = "*" | ||||||
| 
 |  | ||||||
| [[package]] |  | ||||||
| name = "mccabe" |  | ||||||
| version = "0.6.1" |  | ||||||
| description = "McCabe checker, plugin for flake8" |  | ||||||
| optional = false |  | ||||||
| python-versions = "*" |  | ||||||
| files = [ |  | ||||||
|     {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, |  | ||||||
|     {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "packaging" | name = "packaging" | ||||||
| version = "24.1" | version = "21.0" | ||||||
| description = "Core utilities for Python packages" | description = "Core utilities for Python packages" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=3.6" | ||||||
| files = [ | 
 | ||||||
|     {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, | [package.dependencies] | ||||||
|     {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, | pyparsing = ">=2.0.2" | ||||||
| ] | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "pdf2image" | ||||||
|  | version = "1.12.1" | ||||||
|  | description = "A wrapper around the pdftoppm and pdftocairo command line tools to convert PDF to a PIL Image list." | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = "*" | ||||||
|  | 
 | ||||||
|  | [package.dependencies] | ||||||
|  | pillow = "*" | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "pefile" | name = "pefile" | ||||||
| version = "2023.2.7" | version = "2021.9.3" | ||||||
| description = "Python PE parsing module" | description = "Python PE parsing module" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.6.0" | python-versions = ">=3.6.0" | ||||||
| files = [ | 
 | ||||||
|     {file = "pefile-2023.2.7-py3-none-any.whl", hash = "sha256:da185cd2af68c08a6cd4481f7325ed600a88f6a813bad9dea07ab3ef73d8d8d6"}, | [package.dependencies] | ||||||
|     {file = "pefile-2023.2.7.tar.gz", hash = "sha256:82e6114004b3d6911c77c3953e3838654b04511b8b66e8583db70c65998017dc"}, | future = "*" | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "pycodestyle" | name = "pillow" | ||||||
| version = "2.8.0" | version = "7.2.0" | ||||||
| description = "Python style guide checker" | description = "Python Imaging Library (Fork)" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" | python-versions = ">=3.5" | ||||||
| files = [ |  | ||||||
|     {file = "pycodestyle-2.8.0-py2.py3-none-any.whl", hash = "sha256:720f8b39dde8b293825e7ff02c475f3077124006db4f440dcbc9a20b76548a20"}, |  | ||||||
|     {file = "pycodestyle-2.8.0.tar.gz", hash = "sha256:eddd5847ef438ea1c7870ca7eb78a9d47ce0cdb4851a5523949f2601d0cbbe7f"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "pyflakes" | name = "pygments" | ||||||
| version = "2.4.0" | version = "2.6.1" | ||||||
| description = "passive checker of Python programs" | description = "Pygments is a syntax highlighting package written in Python." | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" | python-versions = ">=3.5" | ||||||
| files = [ |  | ||||||
|     {file = "pyflakes-2.4.0-py2.py3-none-any.whl", hash = "sha256:3bb3a3f256f4b7968c9c788781e4ff07dce46bdf12339dcda61053375426ee2e"}, |  | ||||||
|     {file = "pyflakes-2.4.0.tar.gz", hash = "sha256:05a85c2872edf37a4ed30b0cce2f6093e1d0581f8c19d7393122da7e25b2b24c"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "pyinstaller" | name = "pyinstaller" | ||||||
| version = "5.13.1" | version = "3.6" | ||||||
| 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." | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = "<3.13,>=3.7" | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" | ||||||
| files = [ |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-macosx_10_13_universal2.whl", hash = "sha256:3c9cfe6d5d2f392d5d47389f6d377a8f225db460cdd01048b5a3de1d99c24ebe"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:29341d2e86d5ce7df993e797ee96ef679041fc85376d31c35c7b714085a21299"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-manylinux2014_i686.whl", hash = "sha256:ad6e31a8f35a463c6140e4cf979859197edc9831a1039253408b0fe5eec274dc"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:5d801db3ceee58d01337473ea897e96e4bb21421a169dd7cf8716754617ff7fc"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-manylinux2014_s390x.whl", hash = "sha256:2519db3edec87d8c33924c2c4b7e176d8c1bbd9ba892d77efb67281925e621d6"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:e033218c8922f0342b6095fb444ecb3bc6747dfa58cac5eac2b985350f4b681e"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-musllinux_1_1_aarch64.whl", hash = "sha256:086e68aa1e72f6aa13b9d170a395755e2b194b8ab410caeed02d16b432410c8c"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:aa609aca62edd8cdcf7740677a21525e6c23b5e9a8f821ec8a80c68947771b5d"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-win32.whl", hash = "sha256:b8d4000af72bf72f8185d420cd0a0aee0961f03a5c3511dc3ff08cdaef0583de"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-win_amd64.whl", hash = "sha256:b70ebc10811b30bbea4cf5b81fd1477db992c2614cf215edc987cda9c5468911"}, |  | ||||||
|     {file = "pyinstaller-5.13.1-py3-none-win_arm64.whl", hash = "sha256:78d1601a11475b95dceff6eaf0c9cd74d93e3f47b5ce4ad63cd76e7a369d3d04"}, |  | ||||||
|     {file = "pyinstaller-5.13.1.tar.gz", hash = "sha256:a2e7a1d76a7ac26f1db849d691a374f2048b0e204233028d25d79a90ecd1fec8"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [package.dependencies] | [package.dependencies] | ||||||
| altgraph = "*" | altgraph = "*" | ||||||
| macholib = {version = ">=1.8", markers = "sys_platform == \"darwin\""} | dis3 = "*" | ||||||
| pefile = {version = ">=2022.5.30", markers = "sys_platform == \"win32\""} |  | ||||||
| pyinstaller-hooks-contrib = ">=2021.4" |  | ||||||
| pywin32-ctypes = {version = ">=0.2.1", markers = "sys_platform == \"win32\""} |  | ||||||
| setuptools = ">=42.0.0" |  | ||||||
| 
 |  | ||||||
| [package.extras] |  | ||||||
| encryption = ["tinyaes (>=1.0.0)"] |  | ||||||
| hook-testing = ["execnet (>=1.5.0)", "psutil", "pytest (>=2.7.3)"] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "pyinstaller-hooks-contrib" | name = "pyparsing" | ||||||
| version = "2024.8" | version = "2.4.7" | ||||||
| description = "Community maintained hooks for PyInstaller" | description = "Python parsing module" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" | ||||||
| files = [ |  | ||||||
|     {file = "pyinstaller_hooks_contrib-2024.8-py3-none-any.whl", hash = "sha256:0057fe9a5c398d3f580e73e58793a1d4a8315ca91c3df01efea1c14ed557825a"}, |  | ||||||
|     {file = "pyinstaller_hooks_contrib-2024.8.tar.gz", hash = "sha256:29b68d878ab739e967055b56a93eb9b58e529d5b054fbab7a2f2bacf80cef3e2"}, |  | ||||||
| ] |  | ||||||
| 
 |  | ||||||
| [package.dependencies] |  | ||||||
| importlib-metadata = {version = ">=4.6", markers = "python_version < \"3.10\""} |  | ||||||
| packaging = ">=22.0" |  | ||||||
| setuptools = ">=42.0.0" |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "pywin32-ctypes" | name = "pywin32-ctypes" | ||||||
| version = "0.2.2" | version = "0.2.0" | ||||||
| description = "A (partial) reimplementation of pywin32 using ctypes/cffi" | description = "" | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.6" | python-versions = "*" | ||||||
| files = [ |  | ||||||
|     {file = "pywin32-ctypes-0.2.2.tar.gz", hash = "sha256:3426e063bdd5fd4df74a14fa3cf80a0b42845a87e1d1e81f6549f9daec593a60"}, |  | ||||||
|     {file = "pywin32_ctypes-0.2.2-py3-none-any.whl", hash = "sha256:bf490a1a709baf35d688fe0ecf980ed4de11d2b3e37b51e5442587a75d9957e7"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "setuptools" | name = "requests" | ||||||
| version = "72.1.0" | version = "2.24.0" | ||||||
| description = "Easily download, build, install, upgrade, and uninstall Python packages" | description = "Python HTTP for Humans." | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" | ||||||
| files = [ | 
 | ||||||
|     {file = "setuptools-72.1.0-py3-none-any.whl", hash = "sha256:5a03e1860cf56bb6ef48ce186b0e557fdba433237481a9a625176c2831be15d1"}, | [package.dependencies] | ||||||
|     {file = "setuptools-72.1.0.tar.gz", hash = "sha256:8d243eff56d095e5817f796ede6ae32941278f542e0f941867cc05ae52b162ec"}, | certifi = ">=2017.4.17" | ||||||
| ] | chardet = ">=3.0.2,<4" | ||||||
|  | idna = ">=2.5,<3" | ||||||
|  | urllib3 = ">=1.21.1,<1.25.0 || >1.25.0,<1.25.1 || >1.25.1,<1.26" | ||||||
| 
 | 
 | ||||||
| [package.extras] | [package.extras] | ||||||
| core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.text (>=3.7)", "more-itertools (>=8.8)", "ordered-set (>=3.1.1)", "packaging (>=24)", "platformdirs (>=2.6.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] | security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"] | ||||||
| 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"] | socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] | ||||||
| test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test", "mypy (==1.11.*)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (<0.4)", "pytest-ruff (>=0.2.1)", "pytest-ruff (>=0.3.2)", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] |  | ||||||
| 
 | 
 | ||||||
| [[package]] | [[package]] | ||||||
| name = "zipp" | name = "urllib3" | ||||||
| version = "3.20.0" | version = "1.25.9" | ||||||
| description = "Backport of pathlib-compatible object wrapper for zip files" | description = "HTTP library with thread-safe connection pooling, file post, and more." | ||||||
|  | category = "main" | ||||||
| optional = false | optional = false | ||||||
| python-versions = ">=3.8" | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" | ||||||
| files = [ |  | ||||||
|     {file = "zipp-3.20.0-py3-none-any.whl", hash = "sha256:58da6168be89f0be59beb194da1250516fdaa062ccebd30127ac65d30045e10d"}, |  | ||||||
|     {file = "zipp-3.20.0.tar.gz", hash = "sha256:0145e43d89664cfe1a2e533adc75adafed82fe2da404b4bbb6b026c0157bdb31"}, |  | ||||||
| ] |  | ||||||
| 
 | 
 | ||||||
| [package.extras] | [package.extras] | ||||||
| doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] | brotli = ["brotlipy (>=0.6.0)"] | ||||||
| test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] | secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "pyOpenSSL (>=0.14)", "ipaddress"] | ||||||
|  | socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] | ||||||
|  | 
 | ||||||
|  | [[package]] | ||||||
|  | name = "xlrd" | ||||||
|  | version = "1.2.0" | ||||||
|  | description = "Library for developers to extract data from Microsoft Excel (tm) spreadsheet files" | ||||||
|  | category = "main" | ||||||
|  | optional = false | ||||||
|  | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" | ||||||
| 
 | 
 | ||||||
| [metadata] | [metadata] | ||||||
| lock-version = "2.0" | lock-version = "1.1" | ||||||
| python-versions = ">=3.8,<3.13" | python-versions = "^3.8" | ||||||
| content-hash = "46617f6f661c740ba597c9c9ff83ccf6b41b6a77139e38b062fec14d3a57c6d9" | content-hash = "b3d607363c6daf2b5448aa5ee676cff28606af6200d8e9b42e89937a190a3d46" | ||||||
|  | 
 | ||||||
|  | [metadata.files] | ||||||
|  | altgraph = [ | ||||||
|  |     {file = "altgraph-0.17.2-py2.py3-none-any.whl", hash = "sha256:743628f2ac6a7c26f5d9223c91ed8ecbba535f506f4b6f558885a8a56a105857"}, | ||||||
|  |     {file = "altgraph-0.17.2.tar.gz", hash = "sha256:ebf2269361b47d97b3b88e696439f6e4cbc607c17c51feb1754f90fb79839158"}, | ||||||
|  | ] | ||||||
|  | certifi = [ | ||||||
|  |     {file = "certifi-2020.6.20-py2.py3-none-any.whl", hash = "sha256:8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41"}, | ||||||
|  |     {file = "certifi-2020.6.20.tar.gz", hash = "sha256:5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3"}, | ||||||
|  | ] | ||||||
|  | chardet = [ | ||||||
|  |     {file = "chardet-3.0.4-py2.py3-none-any.whl", hash = "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"}, | ||||||
|  |     {file = "chardet-3.0.4.tar.gz", hash = "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"}, | ||||||
|  | ] | ||||||
|  | dis3 = [ | ||||||
|  |     {file = "dis3-0.1.3-py2-none-any.whl", hash = "sha256:61f7720dd0d8749d23fda3d7227ce74d73da11c2fade993a67ab2f9852451b14"}, | ||||||
|  |     {file = "dis3-0.1.3-py3-none-any.whl", hash = "sha256:30b6412d33d738663e8ded781b138f4b01116437f0872aa56aa3adba6aeff218"}, | ||||||
|  |     {file = "dis3-0.1.3.tar.gz", hash = "sha256:9259b881fc1df02ed12ac25f82d4a85b44241854330b1a651e40e0c675cb2d1e"}, | ||||||
|  | ] | ||||||
|  | docutils = [ | ||||||
|  |     {file = "docutils-0.16-py2.py3-none-any.whl", hash = "sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af"}, | ||||||
|  |     {file = "docutils-0.16.tar.gz", hash = "sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc"}, | ||||||
|  | ] | ||||||
|  | future = [ | ||||||
|  |     {file = "future-0.18.2.tar.gz", hash = "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d"}, | ||||||
|  | ] | ||||||
|  | idna = [ | ||||||
|  |     {file = "idna-2.9-py2.py3-none-any.whl", hash = "sha256:a068a21ceac8a4d63dbfd964670474107f541babbd2250d61922f029858365fa"}, | ||||||
|  |     {file = "idna-2.9.tar.gz", hash = "sha256:7588d1c14ae4c77d74036e8c22ff447b26d0fde8f007354fd48a7814db15b7cb"}, | ||||||
|  | ] | ||||||
|  | itsdangerous = [ | ||||||
|  |     {file = "itsdangerous-1.1.0-py2.py3-none-any.whl", hash = "sha256:b12271b2047cb23eeb98c8b5622e2e5c5e9abd9784a153e9d8ef9cb4dd09d749"}, | ||||||
|  |     {file = "itsdangerous-1.1.0.tar.gz", hash = "sha256:321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19"}, | ||||||
|  | ] | ||||||
|  | kivy = [ | ||||||
|  |     {file = "Kivy-1.11.1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:11e85eaf6efbfa2362a3334ffdad179a1b0ca8d255cca79eaa6a2765560d4982"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp27-cp27m-win32.whl", hash = "sha256:5c3d0f2749522d62e9cce09cd54b2d823bf1b6b644ff1f627be49de6f3e3cba0"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp27-cp27m-win_amd64.whl", hash = "sha256:f835462dd9aa491272552ef079b948a088598e2e95d68bb1d885d2c3f3d4e2c3"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:090d3ded9835a17477cd93fbdaf0a7c42ff2218981cf198ded5ad8795bc74391"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:b85ccf165050cbf2ee8447671eebbc222b369b40f0e0038dd9547d49a5e37373"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp35-cp35m-win32.whl", hash = "sha256:4a5480cbf837d3780c77a4f61b32b56d22ae9f03845e7a89dd3eaef1ae5fd037"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp35-cp35m-win_amd64.whl", hash = "sha256:a687602d90c4629dd036f577ca39acb76ba581370f9d915f3cab99be818ba8ad"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:c36652caa7f6c327dee834cfc699d5962d346b7a53e54bd81abc17c314226d89"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:b7ef6aad43a86d8df3fb865db864e354f2155a748019f8517f69f65c1a29cb64"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp36-cp36m-win32.whl", hash = "sha256:f3bea6e4a21991827885d04127fc6d09a0e974ecfa12da7bf5faae93562ea102"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp36-cp36m-win_amd64.whl", hash = "sha256:ece170514db3f49844a41e4c910ad9ce9bc46da6f47a49158e11266bdcc6e479"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:8819a27a09871af451760cb69486ced52e830c8a0a37480f22ef5e692f12c05b"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:1a1ff32f8a95f1e175198cbab81fcd2596783b180d4eafe63e87d171aa7fdb5e"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp37-cp37m-win32.whl", hash = "sha256:815a5c0b3b72fcd81ca7b2aa0744087163ed03e4cf9ab4e7c9733cea99fc1571"}, | ||||||
|  |     {file = "Kivy-1.11.1-cp37-cp37m-win_amd64.whl", hash = "sha256:1d28b198a64c30db8d94a0488e85f3037af60d514ab0d7ad5ab45add3ab77090"}, | ||||||
|  |     {file = "Kivy-1.11.1.tar.gz", hash = "sha256:4d0e596f74271e901b551f77661dde238df4765484fce9f5d1c72e8022984e84"}, | ||||||
|  | ] | ||||||
|  | "kivy-deps.angle" = [ | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp310-cp310-win32.whl", hash = "sha256:7b56477c726e361592f794d49b2fdd96d579b7efd7225a8aadf7fd01d4e8cb80"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:a4b78fd9d47c76e5ff52fcbaa040920a2f97bff038f4c534346dd833dc8f3145"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp36-cp36m-win32.whl", hash = "sha256:a2cea09e8a5e899629466403fbd540459f1cdef8d08c6c479b6607b95309be02"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp36-cp36m-win_amd64.whl", hash = "sha256:b167e19b3eea55a9a8c606a607bb909ec1bedda88deee40347c780b310155a79"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp37-cp37m-win32.whl", hash = "sha256:d0e7b7b9eb9669837a5d70808a7ea45f2b61961b56f9f69a233bad6bd36ce260"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp37-cp37m-win_amd64.whl", hash = "sha256:b9d07976b0bf6bac724a42aa8ed5a8c7caa95609046db30c8f15bb731f8e4d36"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp38-cp38-win32.whl", hash = "sha256:99c40d53582a958748e251dfbd61aa67fb85963e27529ca08a21f2f5eeed04e1"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:50605fdd4c9fdbe9f717069734a598a9aba0afe5d3f0412afbe2ecff0326e92d"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp39-cp39-win32.whl", hash = "sha256:64ac7f33c000585dc30194e604aed925972c6b7c3848b5c3b073ae916fb0b55c"}, | ||||||
|  |     {file = "kivy_deps.angle-0.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:bb4d53f15a093214adbbe205c108ede5cc0f6af6eff104c1b8c468ddaaf6400a"}, | ||||||
|  | ] | ||||||
|  | "kivy-deps.glew" = [ | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp27-cp27m-win32.whl", hash = "sha256:92e72fa2c425887987d1aa861c99537033dc20d68ae1c54864871f0401682586"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp27-cp27m-win_amd64.whl", hash = "sha256:c843104690c0c8f3a58105c53c57f31506f6f90562c18de00bd19317cc1045a7"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp35-cp35m-win32.whl", hash = "sha256:ee8ab67abb2c98d84feede657cae472e7723e529af07394244bdd33caafb1a38"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp35-cp35m-win_amd64.whl", hash = "sha256:ab81783a82bef88a8d2bcf8a93bc21df6b8b0db6ee551eb802727d18f9074b17"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp36-cp36m-win32.whl", hash = "sha256:45aa7f0e8d9bcf5fc1810c9c38bc20edf7dee61df81ecf62102e0f84153f924a"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp36-cp36m-win_amd64.whl", hash = "sha256:ef1116d99bd9cc737cb8c0e13e676955c17d6e4d6d1af5cfccef089a430071bb"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp37-cp37m-win32.whl", hash = "sha256:1e28e40017af9d081fc0fc95b4fadaf31d15e9f63478dcee1c4257d67079894e"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp37-cp37m-win_amd64.whl", hash = "sha256:6bb435620c3187d2c61054adb9ec277ed487256b457a0a7b1491bc0cb7247e18"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp38-cp38-win32.whl", hash = "sha256:09f72ee5ef33ff273332e2a229dc97d650d29818a0189339421949e4e0f63d93"}, | ||||||
|  |     {file = "kivy_deps.glew-0.1.12-cp38-cp38-win_amd64.whl", hash = "sha256:cf351aad171796f8051af8e49ec430a9aa128d8557d8643e73f2bb1e5f9c2dab"}, | ||||||
|  | ] | ||||||
|  | "kivy-deps.gstreamer" = [ | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp27-cp27m-win32.whl", hash = "sha256:309eca64dee5939f16f8465e5cbb08bdde7c90ded1af6a00690c7e928326af79"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp27-cp27m-win_amd64.whl", hash = "sha256:0d9598d2d31c0e780adf4b767fa3a691123621fd0ffef94b83cf82c2da84341b"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp35-cp35m-win32.whl", hash = "sha256:4f2ddd61d185310258d338ae80a646df7822efdd7d67e57f49dc7b87555c5d7e"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp35-cp35m-win_amd64.whl", hash = "sha256:6fa9f76afe600baa221abee31ce7dc63e653d0affe0f6c558bfc4f35af96396f"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp36-cp36m-win32.whl", hash = "sha256:c4709765e2b17c6c96b46a92207b0457def147544d825654077603eaf0d424de"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp36-cp36m-win_amd64.whl", hash = "sha256:c29cfc63fe70a58dad889e631f1ba4711c9ea80103f2b2b8d670a97f093076c8"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp37-cp37m-win32.whl", hash = "sha256:4d996377111e854b3dea90846f9b2f98766a44529fd8b72125e18c552381d928"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp37-cp37m-win_amd64.whl", hash = "sha256:739cd331b9f33a822d700273674a79a3157054e9358a01a0d553f094a5f4a8c9"}, | ||||||
|  |     {file = "kivy_deps.gstreamer-0.1.17-cp38-cp38-win_amd64.whl", hash = "sha256:3d53d2c84c0a997c4cac6c239b1e0a6486e533836321003dc365ec42b97a664b"}, | ||||||
|  | ] | ||||||
|  | "kivy-deps.sdl2" = [ | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp27-cp27m-win32.whl", hash = "sha256:1b987bdd4fbbcb31baf0d7fc9584ad99912179b8968311bb7e30fbeb14e98e0d"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp27-cp27m-win_amd64.whl", hash = "sha256:228128cdd8112dc7505ac43027a770476e9ef282e0b84ca68037133cd025960b"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp35-cp35m-win32.whl", hash = "sha256:053f26e8c05d5545bdbc7eeb8c450b8e4410ee355792e9345af536110fe247e2"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp35-cp35m-win_amd64.whl", hash = "sha256:5ce23f1a3286d6288751a12b0eaefd02f947ea101bb807e9781b964e496fc3f3"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp36-cp36m-win32.whl", hash = "sha256:96e1fa89fd8b5351f2d3c26bbffd50df8d554b03fba4025ecc941d773d241698"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp36-cp36m-win_amd64.whl", hash = "sha256:c3ace0ddde0e59cdcaf260eda1daa0c05ca9bf8cd0c4ea404539de25a5dcaec7"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp37-cp37m-win32.whl", hash = "sha256:7928746eaed51944c10d1bb36fcefebe3d1aff1b97ba32359c2c97ba74707e1b"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp37-cp37m-win_amd64.whl", hash = "sha256:2c2fd5a12a7a9afe3bb962b273561099a180edae91bb9c8f8386b72253fcae4a"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp38-cp38-win32.whl", hash = "sha256:9270fa8ed5130074b167a7a3a9c85efc3cfe3c04584ab084cb6ae9e4edfa8168"}, | ||||||
|  |     {file = "kivy_deps.sdl2-0.1.22-cp38-cp38-win_amd64.whl", hash = "sha256:92ed97d3247bc8ce98f336cbc940bb889310199326e9ccf251c49ae7e4b80de8"}, | ||||||
|  | ] | ||||||
|  | kivy-garden = [ | ||||||
|  |     {file = "Kivy Garden-0.1.4.tar.gz", hash = "sha256:9b7d9de5efacbcd0c4b3dd873b30622a86093c9965aa47b523c7a32f3eb34610"}, | ||||||
|  |     {file = "kivy-garden-0.1.4.tar.gz", hash = "sha256:c256f42788421273a08fbb0a228f0fb0e80dd86b629fb8c0920507f645be6c72"}, | ||||||
|  | ] | ||||||
|  | packaging = [ | ||||||
|  |     {file = "packaging-21.0-py3-none-any.whl", hash = "sha256:c86254f9220d55e31cc94d69bade760f0847da8000def4dfe1c6b872fd14ff14"}, | ||||||
|  |     {file = "packaging-21.0.tar.gz", hash = "sha256:7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7"}, | ||||||
|  | ] | ||||||
|  | pdf2image = [ | ||||||
|  |     {file = "pdf2image-1.12.1.tar.gz", hash = "sha256:a0d9906f5507192210a8d5d7ead63145e9dec4bccc4564b1fb644e923913c31c"}, | ||||||
|  | ] | ||||||
|  | pefile = [ | ||||||
|  |     {file = "pefile-2021.9.3.tar.gz", hash = "sha256:344a49e40a94e10849f0fe34dddc80f773a12b40675bf2f7be4b8be578bdd94a"}, | ||||||
|  | ] | ||||||
|  | pillow = [ | ||||||
|  |     {file = "Pillow-7.2.0-cp35-cp35m-macosx_10_10_intel.whl", hash = "sha256:1ca594126d3c4def54babee699c055a913efb01e106c309fa6b04405d474d5ae"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:c92302a33138409e8f1ad16731568c55c9053eee71bb05b6b744067e1b62380f"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:8dad18b69f710bf3a001d2bf3afab7c432785d94fcf819c16b5207b1cfd17d38"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:431b15cffbf949e89df2f7b48528be18b78bfa5177cb3036284a5508159492b5"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp35-cp35m-win32.whl", hash = "sha256:09d7f9e64289cb40c2c8d7ad674b2ed6105f55dc3b09aa8e4918e20a0311e7ad"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp35-cp35m-win_amd64.whl", hash = "sha256:0295442429645fa16d05bd567ef5cff178482439c9aad0411d3f0ce9b88b3a6f"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp36-cp36m-macosx_10_10_x86_64.whl", hash = "sha256:ec29604081f10f16a7aea809ad42e27764188fc258b02259a03a8ff7ded3808d"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:612cfda94e9c8346f239bf1a4b082fdd5c8143cf82d685ba2dba76e7adeeb233"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0a80dd307a5d8440b0a08bd7b81617e04d870e40a3e46a32d9c246e54705e86f"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:06aba4169e78c439d528fdeb34762c3b61a70813527a2c57f0540541e9f433a8"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp36-cp36m-win32.whl", hash = "sha256:f7e30c27477dffc3e85c2463b3e649f751789e0f6c8456099eea7ddd53be4a8a"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp36-cp36m-win_amd64.whl", hash = "sha256:ffe538682dc19cc542ae7c3e504fdf54ca7f86fb8a135e59dd6bc8627eae6cce"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:94cf49723928eb6070a892cb39d6c156f7b5a2db4e8971cb958f7b6b104fb4c4"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:6edb5446f44d901e8683ffb25ebdfc26988ee813da3bf91e12252b57ac163727"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:52125833b070791fcb5710fabc640fc1df07d087fc0c0f02d3661f76c23c5b8b"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:9ad7f865eebde135d526bb3163d0b23ffff365cf87e767c649550964ad72785d"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp37-cp37m-win32.whl", hash = "sha256:c79f9c5fb846285f943aafeafda3358992d64f0ef58566e23484132ecd8d7d63"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d350f0f2c2421e65fbc62690f26b59b0bcda1b614beb318c81e38647e0f673a1"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:6d7741e65835716ceea0fd13a7d0192961212fd59e741a46bbed7a473c634ed6"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp38-cp38-manylinux1_i686.whl", hash = "sha256:edf31f1150778abd4322444c393ab9c7bd2af271dd4dafb4208fb613b1f3cdc9"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:d08b23fdb388c0715990cbc06866db554e1822c4bdcf6d4166cf30ac82df8c41"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:5e51ee2b8114def244384eda1c82b10e307ad9778dac5c83fb0943775a653cd8"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp38-cp38-win32.whl", hash = "sha256:725aa6cfc66ce2857d585f06e9519a1cc0ef6d13f186ff3447ab6dff0a09bc7f"}, | ||||||
|  |     {file = "Pillow-7.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:a060cf8aa332052df2158e5a119303965be92c3da6f2d93b6878f0ebca80b2f6"}, | ||||||
|  |     {file = "Pillow-7.2.0-pp36-pypy36_pp73-macosx_10_10_x86_64.whl", hash = "sha256:9c87ef410a58dd54b92424ffd7e28fd2ec65d2f7fc02b76f5e9b2067e355ebf6"}, | ||||||
|  |     {file = "Pillow-7.2.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:e901964262a56d9ea3c2693df68bc9860b8bdda2b04768821e4c44ae797de117"}, | ||||||
|  |     {file = "Pillow-7.2.0-pp36-pypy36_pp73-win32.whl", hash = "sha256:25930fadde8019f374400f7986e8404c8b781ce519da27792cbe46eabec00c4d"}, | ||||||
|  |     {file = "Pillow-7.2.0.tar.gz", hash = "sha256:97f9e7953a77d5a70f49b9a48da7776dc51e9b738151b22dacf101641594a626"}, | ||||||
|  | ] | ||||||
|  | pygments = [ | ||||||
|  |     {file = "Pygments-2.6.1-py3-none-any.whl", hash = "sha256:ff7a40b4860b727ab48fad6360eb351cc1b33cbf9b15a0f689ca5353e9463324"}, | ||||||
|  |     {file = "Pygments-2.6.1.tar.gz", hash = "sha256:647344a061c249a3b74e230c739f434d7ea4d8b1d5f3721bc0f3558049b38f44"}, | ||||||
|  | ] | ||||||
|  | pyinstaller = [ | ||||||
|  |     {file = "PyInstaller-3.6.tar.gz", hash = "sha256:3730fa80d088f8bb7084d32480eb87cbb4ddb64123363763cf8f2a1378c1c4b7"}, | ||||||
|  | ] | ||||||
|  | pyparsing = [ | ||||||
|  |     {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, | ||||||
|  |     {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, | ||||||
|  | ] | ||||||
|  | pywin32-ctypes = [ | ||||||
|  |     {file = "pywin32-ctypes-0.2.0.tar.gz", hash = "sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942"}, | ||||||
|  |     {file = "pywin32_ctypes-0.2.0-py2.py3-none-any.whl", hash = "sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98"}, | ||||||
|  | ] | ||||||
|  | requests = [ | ||||||
|  |     {file = "requests-2.24.0-py2.py3-none-any.whl", hash = "sha256:fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898"}, | ||||||
|  |     {file = "requests-2.24.0.tar.gz", hash = "sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b"}, | ||||||
|  | ] | ||||||
|  | urllib3 = [ | ||||||
|  |     {file = "urllib3-1.25.9-py2.py3-none-any.whl", hash = "sha256:88206b0eb87e6d677d424843ac5209e3fb9d0190d0ee169599165ec25e9d9115"}, | ||||||
|  |     {file = "urllib3-1.25.9.tar.gz", hash = "sha256:3018294ebefce6572a474f0604c2021e33b3fd8006ecd11d62107a5d2a963527"}, | ||||||
|  | ] | ||||||
|  | xlrd = [ | ||||||
|  |     {file = "xlrd-1.2.0-py2.py3-none-any.whl", hash = "sha256:e551fb498759fa3a5384a94ccd4c3c02eb7c00ea424426e212ac0c57be9dfbde"}, | ||||||
|  |     {file = "xlrd-1.2.0.tar.gz", hash = "sha256:546eb36cee8db40c3eaa46c351e67ffee6eeb5fa2650b71bc4c758a29a1b29b2"}, | ||||||
|  | ] | ||||||
|  | |||||||
| @ -5,13 +5,11 @@ description = "" | |||||||
| authors = ["Your Name <you@example.com>"] | authors = ["Your Name <you@example.com>"] | ||||||
| 
 | 
 | ||||||
| [tool.poetry.dependencies] | [tool.poetry.dependencies] | ||||||
| python = ">=3.8,<3.13" | python = "^3.8" | ||||||
| flake8 = "^4.0.1" | flake8 = "^4.0.1" | ||||||
| pyinstaller = "5.13.1" |  | ||||||
| 
 |  | ||||||
| 
 | 
 | ||||||
| [tool.poetry.dev-dependencies] | [tool.poetry.dev-dependencies] | ||||||
| 
 | 
 | ||||||
| [build-system] | [build-system] | ||||||
| requires = ["poetry-core>=1.0.0"] | requires = ["poetry-core>=1.0.0"] | ||||||
| build-backend = "poetry.core.masonry.api" | build-backend = "poetry.core.masonry.api" | ||||||
|  | |||||||
| @ -7,6 +7,6 @@ Kivy-Garden==0.1.4 | |||||||
| packaging==20.7 | packaging==20.7 | ||||||
| pdf2image==1.12.1 | pdf2image==1.12.1 | ||||||
| Pygments==2.6.1 | Pygments==2.6.1 | ||||||
| requests==2.32.2 | requests==2.24.0 | ||||||
| urllib3==1.26.19 | urllib3==1.25.10 | ||||||
| xlrd==1.2.0 | xlrd==1.2.0 | ||||||
| @ -30,18 +30,18 @@ pdf2image==1.12.1 | |||||||
| 
 | 
 | ||||||
| pefile==2021.9.3; python_full_version >= '3.6.0' | pefile==2021.9.3; python_full_version >= '3.6.0' | ||||||
| 
 | 
 | ||||||
| pillow>=10.2.0 | pillow==7.2 | ||||||
| 
 | 
 | ||||||
| pygments==2.6.1 | pygments==2.6.1 | ||||||
| 
 | 
 | ||||||
| pyinstaller==5.13.1 | pyinstaller==3.6 | ||||||
| 
 | 
 | ||||||
| pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2' | pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2' | ||||||
| 
 | 
 | ||||||
| pywin32-ctypes==0.2.0 | pywin32-ctypes==0.2.0 | ||||||
| 
 | 
 | ||||||
| requests==2.32.2 | requests==2.24.0 | ||||||
| 
 | 
 | ||||||
| urllib3==1.26.19 | urllib3==1.25.9 | ||||||
| 
 | 
 | ||||||
| xlrd==1.2.0 | xlrd==1.2.0 | ||||||
| @ -12,10 +12,7 @@ import { | |||||||
|   getVersionInputFromFile, |   getVersionInputFromFile, | ||||||
|   getVersionInputFromPlainFile, |   getVersionInputFromPlainFile, | ||||||
|   getVersionInputFromTomlFile, |   getVersionInputFromTomlFile, | ||||||
|   getNextPageUrl, |   getNextPageUrl | ||||||
|   isGhes, |  | ||||||
|   IS_WINDOWS, |  | ||||||
|   getDownloadFileName |  | ||||||
| } from '../src/utils'; | } from '../src/utils'; | ||||||
| 
 | 
 | ||||||
| jest.mock('@actions/cache'); | jest.mock('@actions/cache'); | ||||||
| @ -162,75 +159,3 @@ describe('getNextPageUrl', () => { | |||||||
|     expect(getNextPageUrl(generateResponse(page2Links))).toBeNull(); |     expect(getNextPageUrl(generateResponse(page2Links))).toBeNull(); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
| 
 |  | ||||||
| describe('getDownloadFileName', () => { |  | ||||||
|   const originalEnv = process.env; |  | ||||||
|   const tempDir = path.join(__dirname, 'runner', 'temp'); |  | ||||||
| 
 |  | ||||||
|   beforeEach(() => { |  | ||||||
|     process.env = {...originalEnv}; |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   afterEach(() => { |  | ||||||
|     process.env = originalEnv; |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('should return the correct path on Windows', () => { |  | ||||||
|     if (IS_WINDOWS) { |  | ||||||
|       process.env['RUNNER_TEMP'] = tempDir; |  | ||||||
|       const downloadUrl = |  | ||||||
|         'https://github.com/actions/sometool/releases/tag/1.2.3-20200402.6/sometool-1.2.3-win32-x64.zip'; |  | ||||||
|       const expectedPath = path.join( |  | ||||||
|         process.env.RUNNER_TEMP, |  | ||||||
|         path.basename(downloadUrl) |  | ||||||
|       ); |  | ||||||
|       expect(getDownloadFileName(downloadUrl)).toBe(expectedPath); |  | ||||||
|     } |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('should return undefined on non-Windows', () => { |  | ||||||
|     if (!IS_WINDOWS) { |  | ||||||
|       const downloadUrl = |  | ||||||
|         'https://github.com/actions/sometool/releases/tag/1.2.3-20200402.6/sometool-1.2.3-linux-x64.tar.gz'; |  | ||||||
|       expect(getDownloadFileName(downloadUrl)).toBeUndefined(); |  | ||||||
|     } |  | ||||||
|   }); |  | ||||||
| }); |  | ||||||
| 
 |  | ||||||
| describe('isGhes', () => { |  | ||||||
|   const pristineEnv = process.env; |  | ||||||
| 
 |  | ||||||
|   beforeEach(() => { |  | ||||||
|     jest.resetModules(); |  | ||||||
|     process.env = {...pristineEnv}; |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   afterAll(() => { |  | ||||||
|     process.env = pristineEnv; |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('returns false when the GITHUB_SERVER_URL environment variable is not defined', async () => { |  | ||||||
|     delete process.env['GITHUB_SERVER_URL']; |  | ||||||
|     expect(isGhes()).toBeFalsy(); |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('returns false when the GITHUB_SERVER_URL environment variable is set to github.com', async () => { |  | ||||||
|     process.env['GITHUB_SERVER_URL'] = 'https://github.com'; |  | ||||||
|     expect(isGhes()).toBeFalsy(); |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('returns false when the GITHUB_SERVER_URL environment variable is set to a GitHub Enterprise Cloud-style URL', async () => { |  | ||||||
|     process.env['GITHUB_SERVER_URL'] = 'https://contoso.ghe.com'; |  | ||||||
|     expect(isGhes()).toBeFalsy(); |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('returns false when the GITHUB_SERVER_URL environment variable has a .localhost suffix', async () => { |  | ||||||
|     process.env['GITHUB_SERVER_URL'] = 'https://mock-github.localhost'; |  | ||||||
|     expect(isGhes()).toBeFalsy(); |  | ||||||
|   }); |  | ||||||
| 
 |  | ||||||
|   it('returns true when the GITHUB_SERVER_URL environment variable is set to some other URL', async () => { |  | ||||||
|     process.env['GITHUB_SERVER_URL'] = 'https://src.onpremise.fabrikam.com'; |  | ||||||
|     expect(isGhes()).toBeTruthy(); |  | ||||||
|   }); |  | ||||||
| }); |  | ||||||
|  | |||||||
| @ -11,7 +11,7 @@ inputs: | |||||||
|     description: "Used to specify a package manager for caching in the default directory. Supported values: pip, pipenv, poetry." |     description: "Used to specify a package manager for caching in the default directory. Supported values: pip, pipenv, poetry." | ||||||
|     required: false |     required: false | ||||||
|   architecture: |   architecture: | ||||||
|     description: "The target architecture (x86, x64, arm64) of the Python or PyPy interpreter." |     description: "The target architecture (x86, x64) of the Python or PyPy interpreter." | ||||||
|   check-latest: |   check-latest: | ||||||
|     description: "Set this option if you want the action to check for the latest available version that satisfies the version spec." |     description: "Set this option if you want the action to check for the latest available version that satisfies the version spec." | ||||||
|     default: false |     default: false | ||||||
|  | |||||||
							
								
								
									
										12971
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12971
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										13804
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										13804
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @ -18,7 +18,7 @@ Integration of caching functionality into `actions/setup-python` action will bri | |||||||
| 
 | 
 | ||||||
| We will add support for Pip and Pipenv dependency caching. | We will add support for Pip and Pipenv dependency caching. | ||||||
| 
 | 
 | ||||||
| We won't pursue the goal to provide wide customization of caching in the scope of `actions/setup-python` action. The purpose of this integration is to cover ~90% of basic use-cases. The action does not support dependency-specific caching for each job. If different dependencies are installed across jobs the cache from the first job will be used in the second job. To manage this aspect, users should create separate caches for jobs with different requirements. If users need flexible customization, we will advise them to use `actions/cache` directly. | We won't pursue the goal to provide wide customization of caching in the scope of `actions/setup-python` action. The purpose of this integration is to cover ~90% of basic use-cases. If users need flexible customization, we will advise them to use `actions/cache` directly. | ||||||
| 
 | 
 | ||||||
| ## Decision | ## Decision | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -27,14 +27,14 @@ | |||||||
| 
 | 
 | ||||||
| ### Specifying a Python version | ### Specifying a Python version | ||||||
| 
 | 
 | ||||||
| If there is a specific version of Python that you need and you don't want to worry about any potential breaking changes due to patch updates (going from `3.12.6` to `3.12.7` for example), you should specify the **exact major, minor, and patch version** (such as `3.12.6`): | If there is a specific version of Python that you need and you don't want to worry about any potential breaking changes due to patch updates (going from `3.7.5` to `3.7.6` for example), you should specify the **exact major, minor, and patch version** (such as `3.7.5`): | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.12.6'  |     python-version: '3.7.5'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -48,7 +48,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13'  |     python-version: '3.7'  | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| - There will be a single patch version already installed on each runner for every minor version of Python that is supported. | - There will be a single patch version already installed on each runner for every minor version of Python that is supported. | ||||||
| @ -62,7 +62,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.14.0-alpha.1' |     python-version: '3.12.0-alpha.1' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -73,7 +73,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.14-dev' |     python-version: '3.12-dev' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -86,7 +86,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '>=3.9 <3.14' |     python-version: '>=3.9 <3.10' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -97,11 +97,11 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13.0-alpha - 3.13.0' |     python-version: '3.12.0-alpha - 3.12.0' | ||||||
| - run: python my_script.py | - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| - **[x-ranges](https://github.com/npm/node-semver#x-ranges-12x-1x-12-)** to specify the latest stable version of Python (for the specified major version): | - **[x-ranges](https://github.com/npm/node-semver#x-ranges-12x-1x-12-)** to specify the latest stable version of Python (for specified major version): | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| @ -118,8 +118,8 @@ The version of PyPy should be specified in the format `pypy<python_version>[-v<p | |||||||
| The `-v<pypy_version>` parameter is optional and can be skipped. The latest PyPy version will be used in this case. | The `-v<pypy_version>` parameter is optional and can be skipped. The latest PyPy version will be used in this case. | ||||||
| 
 | 
 | ||||||
| ``` | ``` | ||||||
| pypy3.10 or pypy-3.10 # the latest available version of PyPy that supports Python 3.10 |  | ||||||
| pypy3.9 or pypy-3.9 # the latest available version of PyPy that supports Python 3.9 | pypy3.9 or pypy-3.9 # the latest available version of PyPy that supports Python 3.9 | ||||||
|  | pypy2.7 or pypy-2.7 # the latest available version of PyPy that supports Python 2.7 | ||||||
| pypy3.7-v7.3.3 or pypy-3.7-v7.3.3 # Python 3.7 and PyPy 7.3.3 | pypy3.7-v7.3.3 or pypy-3.7-v7.3.3 # Python 3.7 and PyPy 7.3.3 | ||||||
| pypy3.7-v7.x or pypy-3.7-v7.x # Python 3.7 and the latest available PyPy 7.x | pypy3.7-v7.x or pypy-3.7-v7.x # Python 3.7 and the latest available PyPy 7.x | ||||||
| pypy3.7-v7.3.3rc1 or pypy-3.7-v7.3.3rc1 # Python 3.7 and preview version of PyPy | pypy3.7-v7.3.3rc1 or pypy-3.7-v7.3.3rc1 # Python 3.7 and preview version of PyPy | ||||||
| @ -135,8 +135,8 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         python-version: |         python-version: | ||||||
|         - 'pypy3.10' # the latest available version of PyPy that supports Python 3.10 |         - 'pypy3.7' # the latest available version of PyPy that supports Python 3.7 | ||||||
|         - 'pypy3.10-v7.3.17' # Python 3.10 and PyPy 7.3.17 |         - 'pypy3.7-v7.3.3' # Python 3.7 and PyPy 7.3.3 | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v4 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
| @ -144,7 +144,7 @@ jobs: | |||||||
|         python-version: ${{ matrix.python-version }} |         python-version: ${{ matrix.python-version }} | ||||||
|     - run: python my_script.py |     - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| More details on the syntax for PyPy can be found in the [Available versions of PyPy](#pypy) section. | More details on PyPy syntax can be found in the [Available versions of PyPy](#pypy) section. | ||||||
| 
 | 
 | ||||||
| ### Specifying multiple Python/PyPy versions | ### Specifying multiple Python/PyPy versions | ||||||
| The python-version input can get multiple python/pypy versions. The last specified version will be used as a default one.  | The python-version input can get multiple python/pypy versions. The last specified version will be used as a default one.  | ||||||
| @ -160,9 +160,9 @@ jobs: | |||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
|       with: |       with: | ||||||
|         python-version: | |         python-version: | | ||||||
|             3.11 |             3.8 | ||||||
|             3.12 |             3.9 | ||||||
|             3.13 |             3.10 | ||||||
|     - run: python my_script.py |     - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -177,9 +177,9 @@ jobs: | |||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
|       with: |       with: | ||||||
|         python-version: | |         python-version: | | ||||||
|             pypy-3.10-v7.3.x |             pypy-3.7-v7.3.x | ||||||
|             pypy3.10-nightly |             pypy3.9-nightly | ||||||
|             pypy3.9 |             pypy3.8 | ||||||
|     - run: python my_script.py |     - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| @ -194,17 +194,17 @@ jobs: | |||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
|       with: |       with: | ||||||
|         python-version: | |         python-version: | | ||||||
|             3.11 |             3.8 | ||||||
|             3.12 |             3.9 | ||||||
|             pypy3.10-nightly |             pypy3.9-nightly | ||||||
|             pypy3.10 |             pypy3.8 | ||||||
|             3.13 |             3.10 | ||||||
|     - run: python my_script.py |     - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ### Matrix Testing | ### Matrix Testing | ||||||
| 
 | 
 | ||||||
| Using `setup-python` it's possible to use the [matrix syntax](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategymatrix) to install several versions of Python or PyPy: | Using `setup-python` it's possible to use [matrix syntax](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategymatrix) to install several versions of Python or PyPy: | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
| jobs: | jobs: | ||||||
| @ -212,7 +212,7 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         python-version: ['3.x', 'pypy3.8', 'pypy3.9' ] |         python-version: [ '2.x', '3.x', 'pypy2.7', '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@v4 | ||||||
| @ -231,15 +231,14 @@ jobs: | |||||||
|   build: |   build: | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |  | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, macos-latest, windows-latest] |         os: [ubuntu-latest, macos-latest, windows-latest] | ||||||
|         python-version: ['3.9', '3.10', '3.11', 'pypy3.9'] |         python-version: ['2.7', '3.7', '3.8', '3.9', '3.10', 'pypy2.7', 'pypy3.9'] | ||||||
|         exclude: |         exclude: | ||||||
|           - os: macos-latest |           - os: macos-latest | ||||||
|             python-version: '3.9' |             python-version: '3.8' | ||||||
|           - os: windows-latest |           - os: windows-latest | ||||||
|             python-version: '3.9' |             python-version: '3.6' | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - name: Set up Python |       - name: Set up Python | ||||||
| @ -247,13 +246,12 @@ jobs: | |||||||
|         with: |         with: | ||||||
|           python-version: ${{ matrix.python-version }} |           python-version: ${{ matrix.python-version }} | ||||||
|       - name: Display Python version |       - name: Display Python version | ||||||
|         if: ${{ matrix.python-version != 'pypy3.9' }}  # Use single quotes in expressions for input `python-version` |  | ||||||
|         run: python --version |         run: python --version | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ## Using the `python-version-file` input | ## Using the `python-version-file` input | ||||||
| 
 | 
 | ||||||
| `setup-python` action can read the Python or PyPy version from a version file. `python-version-file` input is used to specify the path to the version file. If the file that was supplied to `python-version-file` input doesn't exist, the action will fail with an error. | `setup-python` action can read Python or PyPy version from a version file. `python-version-file` input is used for specifying the path to the version file. If the file that was supplied to `python-version-file` input doesn't exist, the action will fail with error. | ||||||
| 
 | 
 | ||||||
| >In case both `python-version` and `python-version-file` inputs are supplied, the `python-version-file` input will be ignored due to its lower priority. | >In case both `python-version` and `python-version-file` inputs are supplied, the `python-version-file` input will be ignored due to its lower priority. | ||||||
| 
 | 
 | ||||||
| @ -286,11 +284,11 @@ steps: | |||||||
|   - uses: actions/checkout@v4 |   - uses: actions/checkout@v4 | ||||||
|   - uses: actions/setup-python@v5 |   - uses: actions/setup-python@v5 | ||||||
|     with: |     with: | ||||||
|       python-version: '3.13' |       python-version: '3.7' | ||||||
|       check-latest: true |       check-latest: true | ||||||
|   - run: python my_script.py |   - run: python my_script.py | ||||||
| ``` | ``` | ||||||
| > Setting `check-latest` to `true` impacts performance as downloading `Python or PyPy` versions is slower than using cached versions. | > Setting `check-latest` to `true` has performance implications as downloading `Python or PyPy` versions is slower than using cached versions. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ## Caching packages | ## Caching packages | ||||||
| @ -301,7 +299,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.9' | ||||||
|     cache: 'pipenv' |     cache: 'pipenv' | ||||||
| - name: Install pipenv | - name: Install pipenv | ||||||
|   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 | ||||||
| @ -316,12 +314,11 @@ steps: | |||||||
|   run: pipx install poetry |   run: pipx install poetry | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.9' | ||||||
|     cache: 'poetry' |     cache: 'poetry' | ||||||
| - run: poetry install | - run: poetry install | ||||||
| - run: poetry run pytest | - run: poetry run pytest | ||||||
| ``` | ``` | ||||||
| >**Note:** If the `setup-python` version does not match the version specified in `pyproject.toml` and the python version in `pyproject.toml` is less than the runner's python version, `poetry install` will default to using the runner's Python version. |  | ||||||
| 
 | 
 | ||||||
| **Using a list of file paths to cache dependencies** | **Using a list of file paths to cache dependencies** | ||||||
| ```yaml | ```yaml | ||||||
| @ -329,7 +326,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.9' | ||||||
|     cache: 'pipenv' |     cache: 'pipenv' | ||||||
|     cache-dependency-path: | |     cache-dependency-path: | | ||||||
|       server/app/Pipfile.lock |       server/app/Pipfile.lock | ||||||
| @ -344,7 +341,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.9' | ||||||
|     cache: 'pip' |     cache: 'pip' | ||||||
|     cache-dependency-path: '**/requirements-dev.txt' |     cache-dependency-path: '**/requirements-dev.txt' | ||||||
| - run: pip install -r subdirectory/requirements-dev.txt | - run: pip install -r subdirectory/requirements-dev.txt | ||||||
| @ -356,7 +353,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.10' | ||||||
|     cache: 'pip' |     cache: 'pip' | ||||||
|     cache-dependency-path: | |     cache-dependency-path: | | ||||||
|       **/setup.cfg |       **/setup.cfg | ||||||
| @ -371,7 +368,7 @@ steps: | |||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v4 | ||||||
| - uses: actions/setup-python@v5 | - uses: actions/setup-python@v5 | ||||||
|   with: |   with: | ||||||
|     python-version: '3.13' |     python-version: '3.11' | ||||||
|     cache: 'pip' |     cache: 'pip' | ||||||
|     cache-dependency-path: setup.py |     cache-dependency-path: setup.py | ||||||
| - run: pip install -e . | - run: pip install -e . | ||||||
| @ -384,7 +381,7 @@ steps: | |||||||
| 
 | 
 | ||||||
| ### `python-version` | ### `python-version` | ||||||
| 
 | 
 | ||||||
| Using **python-version** output, it's possible to get the precise Python or PyPy version installed by the action. This output is useful when the input `python-version` is given as a range (e.g. 3.9.0 - 3.12.0, 3.x ), but down the line you need to operate (such as in an `if:` statement) with the exact installed version (e.g. 3.12.0).  | Using **python-version** output it's possible to get the installed by action Python or PyPy version. This output is useful when the input `python-version` is given as a range (e.g. 3.8.0 - 3.10.0 ), but down in a workflow you need to operate with the exact installed version (e.g. 3.10.1).  | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
| jobs: | jobs: | ||||||
| @ -393,15 +390,15 @@ jobs: | |||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v4 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
|       id: cp312 |       id: cp310 | ||||||
|       with: |       with: | ||||||
|         python-version: "3.9.0 - 3.12.0" |         python-version: "3.8.0 - 3.10.0" | ||||||
|     - run: echo '${{ steps.cp312.outputs.python-version }}' |     - run: echo '${{ steps.cp310.outputs.python-version }}' | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ### `python-path` | ### `python-path` | ||||||
| 
 | 
 | ||||||
| **python-path** output is available to get the absolute path of the Python or PyPy interpreter executable: | **python-path** output is available with the absolute path of the Python or PyPy interpreter executable if you need it: | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
| jobs: | jobs: | ||||||
| @ -410,10 +407,10 @@ jobs: | |||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v4 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
|       id: cp313 |       id: cp310 | ||||||
|       with: |       with: | ||||||
|         python-version: "3.13" |         python-version: "3.10" | ||||||
|     - run: pipx run --python '${{ steps.cp313.outputs.python-path }}' nox --version |     - run: pipx run --python '${{ steps.cp310.outputs.python-path }}' nox --version | ||||||
| ``` | ``` | ||||||
| ### `cache-hit` | ### `cache-hit` | ||||||
| 
 | 
 | ||||||
| @ -426,11 +423,11 @@ jobs: | |||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v4 |     - uses: actions/checkout@v4 | ||||||
|     - uses: actions/setup-python@v5 |     - uses: actions/setup-python@v5 | ||||||
|       id: cp313 |       id: cp310 | ||||||
|       with: |       with: | ||||||
|         python-version: "3.13.0" |         python-version: "3.8.0" | ||||||
|         cache: "poetry" |         cache: "poetry" | ||||||
|     - run: echo '${{ steps.cp313.outputs.cache-hit }}' # true if cache-hit occurred on the primary key |     - run: echo '${{ steps.cp310.outputs.cache-hit }}' # true if cache-hit occurred on the primary key | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ## Environment variables | ## Environment variables | ||||||
| @ -450,18 +447,18 @@ The `update-environment` flag defaults to `true`. | |||||||
| With this setting, the action will add/update environment variables (e.g. `PATH`, `PKG_CONFIG_PATH`, `pythonLocation`) for Python or PyPy to just work out of the box. | With this setting, the action will add/update environment variables (e.g. `PATH`, `PKG_CONFIG_PATH`, `pythonLocation`) for Python or PyPy to just work out of the box. | ||||||
| 
 | 
 | ||||||
| If `update-environment` is set to `false`, the action will not add/update environment variables. | If `update-environment` is set to `false`, the action will not add/update environment variables. | ||||||
| This can prove useful if you only want the side-effect to ensure that Python or PyPy is installed and rely on the `python-path` output to run the executable. | This can prove useful if you want the only side-effect to be to ensure Python or PyPy is installed and rely on the `python-path` output to run executable. | ||||||
| Such a requirement on side-effect could be because you don't want your composite action messing with your user's workflows. | Such a requirement on side-effect could be because you don't want your composite action messing with your user's workflows. | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
|  steps: |  steps: | ||||||
|    - uses: actions/checkout@v4 |    - uses: actions/checkout@v4 | ||||||
|    - uses: actions/setup-python@v5 |    - uses: actions/setup-python@v5 | ||||||
|      id: cp313 |      id: cp310 | ||||||
|      with: |      with: | ||||||
|        python-version: '3.13' |        python-version: '3.10' | ||||||
|        update-environment: false |        update-environment: false | ||||||
|    - run: ${{ steps.cp313.outputs.python-path }} my_script.py |    - run: ${{ steps.cp310.outputs.python-path }} my_script.py | ||||||
| ``` | ``` | ||||||
| ## Available versions of Python, PyPy and GraalPy | ## Available versions of Python, PyPy and GraalPy | ||||||
| ### Python | ### Python | ||||||
| @ -470,10 +467,10 @@ Such a requirement on side-effect could be because you don't want your composite | |||||||
| 
 | 
 | ||||||
| - Preinstalled versions of Python in the tool cache on GitHub-hosted runners. | - Preinstalled versions of Python in the tool cache on GitHub-hosted runners. | ||||||
|     - For detailed information regarding the available versions of Python that are installed, see [Supported software](https://docs.github.com/en/actions/reference/specifications-for-github-hosted-runners#supported-software). |     - For detailed information regarding the available versions of Python that are installed, see [Supported software](https://docs.github.com/en/actions/reference/specifications-for-github-hosted-runners#supported-software). | ||||||
|     - For every minor versions of Python, expect only the latest patch to be preinstalled. |     - For every minor version of Python, expect only the latest patch to be preinstalled. | ||||||
|     - If `3.12.1` is installed for example, and `3.12.2` is released, expect `3.12.1` to be removed and replaced by `3.12.2` in the tool cache. |     - If `3.8.1` is installed for example, and `3.8.2` is released, expect `3.8.1` to be removed and replaced by `3.8.2` in the tool cache. | ||||||
|     - If the exact patch version doesn't matter to you, specifying just the major and minor versions will get you the latest preinstalled patch version. In the previous example, the version spec `3.12` will use the `3.12.2` Python version found in the cache. |     - If the exact patch version doesn't matter to you, specifying just the major and minor versions will get you the latest preinstalled patch version. In the previous example, the version spec `3.8` will use the `3.8.2` Python version found in the cache. | ||||||
|     - Use `-dev` instead of a patch number (e.g., `3.14-dev`) to install the latest patch version release for a given minor version, *alpha and beta releases included*. |     - Use `-dev` instead of a patch number (e.g., `3.12-dev`) to install the latest patch version release for a given minor version, *alpha and beta releases included*. | ||||||
| - Downloadable Python versions from GitHub Releases ([actions/python-versions](https://github.com/actions/python-versions/releases)). | - Downloadable Python versions from GitHub Releases ([actions/python-versions](https://github.com/actions/python-versions/releases)). | ||||||
|     - All available versions are listed in the [version-manifest.json](https://github.com/actions/python-versions/blob/main/versions-manifest.json) file. |     - All available versions are listed in the [version-manifest.json](https://github.com/actions/python-versions/blob/main/versions-manifest.json) file. | ||||||
|     - If there is a specific version of Python that is not available, you can open an issue here |     - If there is a specific version of Python that is not available, you can open an issue here | ||||||
| @ -487,7 +484,7 @@ Such a requirement on side-effect could be because you don't want your composite | |||||||
| - Preinstalled versions of PyPy in the tool cache on GitHub-hosted runners | - Preinstalled versions of PyPy in the tool cache on GitHub-hosted runners | ||||||
|   - For detailed information regarding the available versions of PyPy that are installed, see [Supported software](https://docs.github.com/en/actions/reference/specifications-for-github-hosted-runners#supported-software). |   - For detailed information regarding the available versions of PyPy that are installed, see [Supported software](https://docs.github.com/en/actions/reference/specifications-for-github-hosted-runners#supported-software). | ||||||
|   - For the latest PyPy release, all versions of Python are cached. |   - For the latest PyPy release, all versions of Python are cached. | ||||||
|   - Cache is updated with a 1-2 week delay. If you specify the PyPy version as `pypy3.10` or `pypy-3.10`, the cached version will be used although a newer version is available. If you need to start using the recently released version right after release, you should specify the exact PyPy version using `pypy3.10-v7.3.17` or `pypy-3.10-v7.3.17`. |   - Cache is updated with a 1-2 week delay. If you specify the PyPy version as `pypy3.7` or `pypy-3.7`, the cached version will be used although a newer version is available. If you need to start using the recently released version right after release, you should specify the exact PyPy version using `pypy3.7-v7.3.3` or `pypy-3.7-v7.3.3`. | ||||||
| 
 | 
 | ||||||
| - Downloadable PyPy versions from the [official PyPy site](https://downloads.python.org/pypy/). | - Downloadable PyPy versions from the [official PyPy site](https://downloads.python.org/pypy/). | ||||||
|   - All available versions that we can download are listed in [versions.json](https://downloads.python.org/pypy/versions.json) file. |   - All available versions that we can download are listed in [versions.json](https://downloads.python.org/pypy/versions.json) file. | ||||||
| @ -535,11 +532,11 @@ If you have a supported self-hosted runner and you would like to use `setup-pyth | |||||||
| 
 | 
 | ||||||
| ### Linux | ### Linux | ||||||
| 
 | 
 | ||||||
| By default, the runner downloads and installs tools into the folder set up by `RUNNER_TOOL_CACHE` environment variable. The environment variable called `AGENT_TOOLSDIRECTORY` can be set to change this location for Linux self-hosted runners: | By default runner downloads and installs tools into the folder set up by `RUNNER_TOOL_CACHE` environment variable. The environment variable called `AGENT_TOOLSDIRECTORY` can be set to change this location for Linux self-hosted runners: | ||||||
| - In the same shell that your runner is using, type `export AGENT_TOOLSDIRECTORY=/path/to/folder`. | - In the same shell that your runner is using, type `export AGENT_TOOLSDIRECTORY=/path/to/folder`. | ||||||
| - More permanent way of setting the environment variable is to create an `.env` file in the same directory as your runner and to add `AGENT_TOOLSDIRECTORY=/path/to/folder`. This ensures the variable is always set if your runner is configured as a service. | - More permanent way of setting the environment variable is to create an `.env` file in the same directory as your runner and to add `AGENT_TOOLSDIRECTORY=/path/to/folder`. This ensures the variable is always set if your runner is configured as a service. | ||||||
| 
 | 
 | ||||||
| If you're using a non-default tool cache directory be sure that the user starting the runner has write permission to the new tool cache directory. To check the current user and group that the runner belongs, type `ls -l` inside the runner's root directory. | If you're using a non-default tool cache directory be sure that the user starting the runner has write permission to the new tool cache directory. To check the current user and group that the runner belongs type `ls -l` inside the runner's root directory. | ||||||
| 
 | 
 | ||||||
| The runner can be granted write access to any directory using a few techniques: | The runner can be granted write access to any directory using a few techniques: | ||||||
| - The user starting the runner is the owner, and the owner has write permission. | - The user starting the runner is the owner, and the owner has write permission. | ||||||
| @ -598,7 +595,7 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [Ubuntu, Windows, macOS] |         os: [Ubuntu, Windows, macOS] | ||||||
|         python_version: ["3.11", "3.12", "3.13"] |         python_version: ["3.11", "3.12"] | ||||||
| 
 | 
 | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|  | |||||||
| @ -6,13 +6,13 @@ We have prepared a short guide so that the process of making your contribution i | |||||||
| 
 | 
 | ||||||
| ## How can I contribute... | ## How can I contribute... | ||||||
| 
 | 
 | ||||||
| * [Contribute Documentation :green_book:](#contribute-documentation) | * [Contribute Documentation:green_book:](#contribute-documentation) | ||||||
| 
 | 
 | ||||||
| * [Contribute Code :computer:](#contribute-code) | * [Contribute Code :computer:](#contribute-code) | ||||||
| 
 | 
 | ||||||
| * [Provide Support on Issues :pencil:](#provide-support-on-issues) | * [Provide Support on Issues:pencil:](#provide-support-on-issues) | ||||||
| 
 | 
 | ||||||
| * [Review Pull Requests :mag:](#review-pull-requests) | * [Review Pull Requests:mag:](#review-pull-requests) | ||||||
| 
 | 
 | ||||||
| ## Contribute documentation | ## Contribute documentation | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										305
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										305
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -9,14 +9,14 @@ | |||||||
|       "version": "5.0.0", |       "version": "5.0.0", | ||||||
|       "license": "MIT", |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/cache": "^4.0.0", |         "@actions/cache": "^3.2.4", | ||||||
|         "@actions/core": "^1.10.0", |         "@actions/core": "^1.10.0", | ||||||
|         "@actions/exec": "^1.1.0", |         "@actions/exec": "^1.1.0", | ||||||
|         "@actions/glob": "^0.4.0", |         "@actions/glob": "^0.4.0", | ||||||
|         "@actions/http-client": "^2.2.3", |         "@actions/http-client": "^2.2.1", | ||||||
|         "@actions/io": "^1.0.2", |         "@actions/io": "^1.0.2", | ||||||
|         "@actions/tool-cache": "^2.0.1", |         "@actions/tool-cache": "^2.0.1", | ||||||
|         "@iarna/toml": "^3.0.0", |         "@iarna/toml": "^2.2.5", | ||||||
|         "semver": "^7.6.0" |         "semver": "^7.6.0" | ||||||
|       }, |       }, | ||||||
|       "devDependencies": { |       "devDependencies": { | ||||||
| @ -25,7 +25,7 @@ | |||||||
|         "@types/semver": "^7.5.8", |         "@types/semver": "^7.5.8", | ||||||
|         "@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.0", | ||||||
|         "eslint": "^8.57.0", |         "eslint": "^8.57.0", | ||||||
|         "eslint-config-prettier": "^8.6.0", |         "eslint-config-prettier": "^8.6.0", | ||||||
|         "eslint-plugin-jest": "^27.9.0", |         "eslint-plugin-jest": "^27.9.0", | ||||||
| @ -47,12 +47,11 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/cache": { |     "node_modules/@actions/cache": { | ||||||
|       "version": "4.0.0", |       "version": "3.2.4", | ||||||
|       "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-3.2.4.tgz", | ||||||
|       "integrity": "sha512-WIuxjnZ44lNYtIS4fqSaYvF00hORdy3cSin+jx8xNgBVGWnNIAiCBHjlwusVQlcgExoQC9pHXGrDsZyZr7rCDQ==", |       "integrity": "sha512-RuHnwfcDagtX+37s0ZWy7clbOfnZ7AlDJQ7k/9rzt2W4Gnwde3fa/qjSjVuz4vLcLIpc7fUob27CMrqiWZytYA==", | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/core": "^1.11.1", |         "@actions/core": "^1.10.0", | ||||||
|         "@actions/exec": "^1.0.1", |         "@actions/exec": "^1.0.1", | ||||||
|         "@actions/glob": "^0.1.0", |         "@actions/glob": "^0.1.0", | ||||||
|         "@actions/http-client": "^2.1.1", |         "@actions/http-client": "^2.1.1", | ||||||
| @ -60,9 +59,8 @@ | |||||||
|         "@azure/abort-controller": "^1.1.0", |         "@azure/abort-controller": "^1.1.0", | ||||||
|         "@azure/ms-rest-js": "^2.6.0", |         "@azure/ms-rest-js": "^2.6.0", | ||||||
|         "@azure/storage-blob": "^12.13.0", |         "@azure/storage-blob": "^12.13.0", | ||||||
|         "@protobuf-ts/plugin": "^2.9.4", |  | ||||||
|         "semver": "^6.3.1", |         "semver": "^6.3.1", | ||||||
|         "twirp-ts": "^2.5.0" |         "uuid": "^3.3.3" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/cache/node_modules/@actions/glob": { |     "node_modules/@actions/cache/node_modules/@actions/glob": { | ||||||
| @ -83,12 +81,20 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/core": { |     "node_modules/@actions/core": { | ||||||
|       "version": "1.11.1", |       "version": "1.10.1", | ||||||
|       "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.11.1.tgz", |       "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.1.tgz", | ||||||
|       "integrity": "sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A==", |       "integrity": "sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/exec": "^1.1.1", |         "@actions/http-client": "^2.0.1", | ||||||
|         "@actions/http-client": "^2.0.1" |         "uuid": "^8.3.2" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@actions/core/node_modules/uuid": { | ||||||
|  |       "version": "8.3.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", | ||||||
|  |       "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", | ||||||
|  |       "bin": { | ||||||
|  |         "uuid": "dist/bin/uuid" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/exec": { |     "node_modules/@actions/exec": { | ||||||
| @ -109,10 +115,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/http-client": { |     "node_modules/@actions/http-client": { | ||||||
|       "version": "2.2.3", |       "version": "2.2.1", | ||||||
|       "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.3.tgz", |       "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.1.tgz", | ||||||
|       "integrity": "sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA==", |       "integrity": "sha512-KhC/cZsq7f8I4LfZSJKgCvEwfkE8o1538VoBeoGzokVLLnbFDEAdFD3UhoMklxo2un9NJVBdANOresx7vTHlHw==", | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "tunnel": "^0.0.6", |         "tunnel": "^0.0.6", | ||||||
|         "undici": "^5.25.4" |         "undici": "^5.25.4" | ||||||
| @ -1079,9 +1084,9 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/@iarna/toml": { |     "node_modules/@iarna/toml": { | ||||||
|       "version": "3.0.0", |       "version": "2.2.5", | ||||||
|       "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-3.0.0.tgz", |       "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", | ||||||
|       "integrity": "sha512-td6ZUkz2oS3VeleBcN+m//Q6HlCFCPrnI0FZhrt/h4XqLEdOyYp2u21nd8MdsR+WJy5r9PTDaHTDDfhf4H4l6Q==" |       "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/@istanbuljs/load-nyc-config": { |     "node_modules/@istanbuljs/load-nyc-config": { | ||||||
|       "version": "1.1.0", |       "version": "1.1.0", | ||||||
| @ -1560,83 +1565,6 @@ | |||||||
|         "node": ">=8.0.0" |         "node": ">=8.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@protobuf-ts/plugin": { |  | ||||||
|       "version": "2.9.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.9.4.tgz", |  | ||||||
|       "integrity": "sha512-Db5Laq5T3mc6ERZvhIhkj1rn57/p8gbWiCKxQWbZBBl20wMuqKoHbRw4tuD7FyXi+IkwTToaNVXymv5CY3E8Rw==", |  | ||||||
|       "license": "Apache-2.0", |  | ||||||
|       "dependencies": { |  | ||||||
|         "@protobuf-ts/plugin-framework": "^2.9.4", |  | ||||||
|         "@protobuf-ts/protoc": "^2.9.4", |  | ||||||
|         "@protobuf-ts/runtime": "^2.9.4", |  | ||||||
|         "@protobuf-ts/runtime-rpc": "^2.9.4", |  | ||||||
|         "typescript": "^3.9" |  | ||||||
|       }, |  | ||||||
|       "bin": { |  | ||||||
|         "protoc-gen-dump": "bin/protoc-gen-dump", |  | ||||||
|         "protoc-gen-ts": "bin/protoc-gen-ts" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@protobuf-ts/plugin-framework": { |  | ||||||
|       "version": "2.9.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.9.4.tgz", |  | ||||||
|       "integrity": "sha512-9nuX1kjdMliv+Pes8dQCKyVhjKgNNfwxVHg+tx3fLXSfZZRcUHMc1PMwB9/vTvc6gBKt9QGz5ERqSqZc0++E9A==", |  | ||||||
|       "license": "(Apache-2.0 AND BSD-3-Clause)", |  | ||||||
|       "dependencies": { |  | ||||||
|         "@protobuf-ts/runtime": "^2.9.4", |  | ||||||
|         "typescript": "^3.9" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@protobuf-ts/plugin-framework/node_modules/typescript": { |  | ||||||
|       "version": "3.9.10", |  | ||||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", |  | ||||||
|       "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", |  | ||||||
|       "license": "Apache-2.0", |  | ||||||
|       "bin": { |  | ||||||
|         "tsc": "bin/tsc", |  | ||||||
|         "tsserver": "bin/tsserver" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=4.2.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@protobuf-ts/plugin/node_modules/typescript": { |  | ||||||
|       "version": "3.9.10", |  | ||||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", |  | ||||||
|       "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", |  | ||||||
|       "license": "Apache-2.0", |  | ||||||
|       "bin": { |  | ||||||
|         "tsc": "bin/tsc", |  | ||||||
|         "tsserver": "bin/tsserver" |  | ||||||
|       }, |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">=4.2.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@protobuf-ts/protoc": { |  | ||||||
|       "version": "2.9.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.9.4.tgz", |  | ||||||
|       "integrity": "sha512-hQX+nOhFtrA+YdAXsXEDrLoGJqXHpgv4+BueYF0S9hy/Jq0VRTVlJS1Etmf4qlMt/WdigEes5LOd/LDzui4GIQ==", |  | ||||||
|       "license": "Apache-2.0", |  | ||||||
|       "bin": { |  | ||||||
|         "protoc": "protoc.js" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@protobuf-ts/runtime": { |  | ||||||
|       "version": "2.9.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.9.4.tgz", |  | ||||||
|       "integrity": "sha512-vHRFWtJJB/SiogWDF0ypoKfRIZ41Kq+G9cEFj6Qm1eQaAhJ1LDFvgZ7Ja4tb3iLOQhz0PaoPnnOijF1qmEqTxg==", |  | ||||||
|       "license": "(Apache-2.0 AND BSD-3-Clause)" |  | ||||||
|     }, |  | ||||||
|     "node_modules/@protobuf-ts/runtime-rpc": { |  | ||||||
|       "version": "2.9.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.9.4.tgz", |  | ||||||
|       "integrity": "sha512-y9L9JgnZxXFqH5vD4d7j9duWvIJ7AShyBRoNKJGhu9Q27qIbchfzli66H9RvrQNIFk5ER7z1Twe059WZGqERcA==", |  | ||||||
|       "license": "Apache-2.0", |  | ||||||
|       "dependencies": { |  | ||||||
|         "@protobuf-ts/runtime": "^2.9.4" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/@sinclair/typebox": { |     "node_modules/@sinclair/typebox": { | ||||||
|       "version": "0.27.8", |       "version": "0.27.8", | ||||||
|       "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", |       "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", | ||||||
| @ -2011,11 +1939,10 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/@vercel/ncc": { |     "node_modules/@vercel/ncc": { | ||||||
|       "version": "0.38.3", |       "version": "0.38.1", | ||||||
|       "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.3.tgz", |       "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.38.1.tgz", | ||||||
|       "integrity": "sha512-rnK6hJBS6mwc+Bkab+PGPs9OiS0i/3kdTO+CkI8V0/VrW3vmz7O2Pxjw/owOlmo6PKEIxRSeZKv/kuL9itnpYA==", |       "integrity": "sha512-IBBb+iI2NLu4VQn3Vwldyi2QwaXt5+hTyh58ggAMoCGE6DJmPvwL3KPBWcJl1m9LYPChBLE980Jw+CS4Wokqxw==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "license": "MIT", |  | ||||||
|       "bin": { |       "bin": { | ||||||
|         "ncc": "dist/ncc/cli.js" |         "ncc": "dist/ncc/cli.js" | ||||||
|       } |       } | ||||||
| @ -2283,12 +2210,12 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/braces": { |     "node_modules/braces": { | ||||||
|       "version": "3.0.3", |       "version": "3.0.2", | ||||||
|       "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", |       "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", | ||||||
|       "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", |       "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "fill-range": "^7.1.1" |         "fill-range": "^7.0.1" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": ">=8" |         "node": ">=8" | ||||||
| @ -2362,16 +2289,6 @@ | |||||||
|         "node": ">=6" |         "node": ">=6" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/camel-case": { |  | ||||||
|       "version": "4.1.2", |  | ||||||
|       "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", |  | ||||||
|       "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |  | ||||||
|         "pascal-case": "^3.1.2", |  | ||||||
|         "tslib": "^2.0.3" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/camelcase": { |     "node_modules/camelcase": { | ||||||
|       "version": "5.3.1", |       "version": "5.3.1", | ||||||
|       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", |       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", | ||||||
| @ -2506,15 +2423,6 @@ | |||||||
|         "node": ">= 0.8" |         "node": ">= 0.8" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/commander": { |  | ||||||
|       "version": "6.2.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", |  | ||||||
|       "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">= 6" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/concat-map": { |     "node_modules/concat-map": { | ||||||
|       "version": "0.0.1", |       "version": "0.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", |       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", | ||||||
| @ -2548,9 +2456,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/cross-spawn": { |     "node_modules/cross-spawn": { | ||||||
|       "version": "7.0.6", |       "version": "7.0.3", | ||||||
|       "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", |       "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", | ||||||
|       "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", |       "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "path-key": "^3.1.0", |         "path-key": "^3.1.0", | ||||||
| @ -2657,19 +2565,6 @@ | |||||||
|         "node": ">=6.0.0" |         "node": ">=6.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/dot-object": { |  | ||||||
|       "version": "2.1.5", |  | ||||||
|       "resolved": "https://registry.npmjs.org/dot-object/-/dot-object-2.1.5.tgz", |  | ||||||
|       "integrity": "sha512-xHF8EP4XH/Ba9fvAF2LDd5O3IITVolerVV6xvkxoM8zlGEiCUrggpAnHyOoKJKCrhvPcGATFAUwIujj7bRG5UA==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |  | ||||||
|         "commander": "^6.1.0", |  | ||||||
|         "glob": "^7.1.6" |  | ||||||
|       }, |  | ||||||
|       "bin": { |  | ||||||
|         "dot-object": "bin/dot-object" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/electron-to-chromium": { |     "node_modules/electron-to-chromium": { | ||||||
|       "version": "1.4.587", |       "version": "1.4.587", | ||||||
|       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.587.tgz", |       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.587.tgz", | ||||||
| @ -3169,9 +3064,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/fill-range": { |     "node_modules/fill-range": { | ||||||
|       "version": "7.1.1", |       "version": "7.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", |       "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", | ||||||
|       "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", |       "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "to-regex-range": "^5.0.1" |         "to-regex-range": "^5.0.1" | ||||||
| @ -3232,7 +3127,8 @@ | |||||||
|     "node_modules/fs.realpath": { |     "node_modules/fs.realpath": { | ||||||
|       "version": "1.0.0", |       "version": "1.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", |       "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", | ||||||
|       "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" |       "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", | ||||||
|  |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/fsevents": { |     "node_modules/fsevents": { | ||||||
|       "version": "2.3.3", |       "version": "2.3.3", | ||||||
| @ -3300,6 +3196,7 @@ | |||||||
|       "version": "7.2.3", |       "version": "7.2.3", | ||||||
|       "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", |       "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", | ||||||
|       "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", |       "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", | ||||||
|  |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "fs.realpath": "^1.0.0", |         "fs.realpath": "^1.0.0", | ||||||
|         "inflight": "^1.0.4", |         "inflight": "^1.0.4", | ||||||
| @ -3467,6 +3364,7 @@ | |||||||
|       "version": "1.0.6", |       "version": "1.0.6", | ||||||
|       "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", |       "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", | ||||||
|       "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", |       "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", | ||||||
|  |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "once": "^1.3.0", |         "once": "^1.3.0", | ||||||
|         "wrappy": "1" |         "wrappy": "1" | ||||||
| @ -3475,7 +3373,8 @@ | |||||||
|     "node_modules/inherits": { |     "node_modules/inherits": { | ||||||
|       "version": "2.0.4", |       "version": "2.0.4", | ||||||
|       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", |       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", | ||||||
|       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" |       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", | ||||||
|  |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/is-arrayish": { |     "node_modules/is-arrayish": { | ||||||
|       "version": "0.2.1", |       "version": "0.2.1", | ||||||
| @ -4318,12 +4217,6 @@ | |||||||
|         "url": "https://github.com/sponsors/sindresorhus" |         "url": "https://github.com/sponsors/sindresorhus" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/lodash": { |  | ||||||
|       "version": "4.17.21", |  | ||||||
|       "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", |  | ||||||
|       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", |  | ||||||
|       "license": "MIT" |  | ||||||
|     }, |  | ||||||
|     "node_modules/lodash.memoize": { |     "node_modules/lodash.memoize": { | ||||||
|       "version": "4.1.2", |       "version": "4.1.2", | ||||||
|       "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", |       "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", | ||||||
| @ -4336,15 +4229,6 @@ | |||||||
|       "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", |       "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/lower-case": { |  | ||||||
|       "version": "2.0.2", |  | ||||||
|       "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", |  | ||||||
|       "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |  | ||||||
|         "tslib": "^2.0.3" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/lru-cache": { |     "node_modules/lru-cache": { | ||||||
|       "version": "5.1.1", |       "version": "5.1.1", | ||||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", |       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", | ||||||
| @ -4400,12 +4284,12 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/micromatch": { |     "node_modules/micromatch": { | ||||||
|       "version": "4.0.8", |       "version": "4.0.5", | ||||||
|       "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", |       "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", | ||||||
|       "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", |       "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "braces": "^3.0.3", |         "braces": "^3.0.2", | ||||||
|         "picomatch": "^2.3.1" |         "picomatch": "^2.3.1" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
| @ -4469,16 +4353,6 @@ | |||||||
|       "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", |       "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/no-case": { |  | ||||||
|       "version": "3.0.4", |  | ||||||
|       "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", |  | ||||||
|       "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |  | ||||||
|         "lower-case": "^2.0.2", |  | ||||||
|         "tslib": "^2.0.3" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/node-fetch": { |     "node_modules/node-fetch": { | ||||||
|       "version": "2.7.0", |       "version": "2.7.0", | ||||||
|       "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", |       "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", | ||||||
| @ -4535,6 +4409,7 @@ | |||||||
|       "version": "1.4.0", |       "version": "1.4.0", | ||||||
|       "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", |       "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", | ||||||
|       "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", |       "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", | ||||||
|  |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "wrappy": "1" |         "wrappy": "1" | ||||||
|       } |       } | ||||||
| @ -4640,16 +4515,6 @@ | |||||||
|         "url": "https://github.com/sponsors/sindresorhus" |         "url": "https://github.com/sponsors/sindresorhus" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/pascal-case": { |  | ||||||
|       "version": "3.1.2", |  | ||||||
|       "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", |  | ||||||
|       "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |  | ||||||
|         "no-case": "^3.0.4", |  | ||||||
|         "tslib": "^2.0.3" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/path-exists": { |     "node_modules/path-exists": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", | ||||||
| @ -4663,6 +4528,7 @@ | |||||||
|       "version": "1.0.1", |       "version": "1.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", |       "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", | ||||||
|       "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", |       "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", | ||||||
|  |       "dev": true, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": ">=0.10.0" |         "node": ">=0.10.0" | ||||||
|       } |       } | ||||||
| @ -4682,12 +4548,6 @@ | |||||||
|       "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", |       "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/path-to-regexp": { |  | ||||||
|       "version": "6.3.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", |  | ||||||
|       "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", |  | ||||||
|       "license": "MIT" |  | ||||||
|     }, |  | ||||||
|     "node_modules/path-type": { |     "node_modules/path-type": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", | ||||||
| @ -4801,6 +4661,7 @@ | |||||||
|       "version": "2.8.8", |       "version": "2.8.8", | ||||||
|       "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", |       "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", | ||||||
|       "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", |       "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", | ||||||
|  |       "dev": true, | ||||||
|       "bin": { |       "bin": { | ||||||
|         "prettier": "bin-prettier.js" |         "prettier": "bin-prettier.js" | ||||||
|       }, |       }, | ||||||
| @ -5345,16 +5206,6 @@ | |||||||
|         } |         } | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/ts-poet": { |  | ||||||
|       "version": "4.15.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/ts-poet/-/ts-poet-4.15.0.tgz", |  | ||||||
|       "integrity": "sha512-sLLR8yQBvHzi9d4R1F4pd+AzQxBfzOSSjfxiJxQhkUoH5bL7RsAC6wgvtVUQdGqiCsyS9rT6/8X2FI7ipdir5g==", |  | ||||||
|       "license": "Apache-2.0", |  | ||||||
|       "dependencies": { |  | ||||||
|         "lodash": "^4.17.15", |  | ||||||
|         "prettier": "^2.5.1" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/tslib": { |     "node_modules/tslib": { | ||||||
|       "version": "2.6.2", |       "version": "2.6.2", | ||||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", |       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", | ||||||
| @ -5389,35 +5240,6 @@ | |||||||
|         "node": ">=0.6.11 <=0.7.0 || >=0.7.3" |         "node": ">=0.6.11 <=0.7.0 || >=0.7.3" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/twirp-ts": { |  | ||||||
|       "version": "2.5.0", |  | ||||||
|       "resolved": "https://registry.npmjs.org/twirp-ts/-/twirp-ts-2.5.0.tgz", |  | ||||||
|       "integrity": "sha512-JTKIK5Pf/+3qCrmYDFlqcPPUx+ohEWKBaZy8GL8TmvV2VvC0SXVyNYILO39+GCRbqnuP6hBIF+BVr8ZxRz+6fw==", |  | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |  | ||||||
|         "@protobuf-ts/plugin-framework": "^2.0.7", |  | ||||||
|         "camel-case": "^4.1.2", |  | ||||||
|         "dot-object": "^2.1.4", |  | ||||||
|         "path-to-regexp": "^6.2.0", |  | ||||||
|         "ts-poet": "^4.5.0", |  | ||||||
|         "yaml": "^1.10.2" |  | ||||||
|       }, |  | ||||||
|       "bin": { |  | ||||||
|         "protoc-gen-twirp_ts": "protoc-gen-twirp_ts" |  | ||||||
|       }, |  | ||||||
|       "peerDependencies": { |  | ||||||
|         "@protobuf-ts/plugin": "^2.5.0", |  | ||||||
|         "ts-proto": "^1.81.3" |  | ||||||
|       }, |  | ||||||
|       "peerDependenciesMeta": { |  | ||||||
|         "@protobuf-ts/plugin": { |  | ||||||
|           "optional": true |  | ||||||
|         }, |  | ||||||
|         "ts-proto": { |  | ||||||
|           "optional": true |  | ||||||
|         } |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/type-check": { |     "node_modules/type-check": { | ||||||
|       "version": "0.4.0", |       "version": "0.4.0", | ||||||
|       "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", |       "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", | ||||||
| @ -5465,10 +5287,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/undici": { |     "node_modules/undici": { | ||||||
|       "version": "5.28.5", |       "version": "5.28.3", | ||||||
|       "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz", |       "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.3.tgz", | ||||||
|       "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==", |       "integrity": "sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==", | ||||||
|       "license": "MIT", |  | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@fastify/busboy": "^2.0.0" |         "@fastify/busboy": "^2.0.0" | ||||||
|       }, |       }, | ||||||
| @ -5601,7 +5422,8 @@ | |||||||
|     "node_modules/wrappy": { |     "node_modules/wrappy": { | ||||||
|       "version": "1.0.2", |       "version": "1.0.2", | ||||||
|       "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", |       "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", | ||||||
|       "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" |       "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", | ||||||
|  |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/write-file-atomic": { |     "node_modules/write-file-atomic": { | ||||||
|       "version": "4.0.2", |       "version": "4.0.2", | ||||||
| @ -5651,15 +5473,6 @@ | |||||||
|       "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", |       "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/yaml": { |  | ||||||
|       "version": "1.10.2", |  | ||||||
|       "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", |  | ||||||
|       "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", |  | ||||||
|       "license": "ISC", |  | ||||||
|       "engines": { |  | ||||||
|         "node": ">= 6" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/yargs": { |     "node_modules/yargs": { | ||||||
|       "version": "17.7.2", |       "version": "17.7.2", | ||||||
|       "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", |       "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", | ||||||
|  | |||||||
| @ -25,14 +25,14 @@ | |||||||
|   "author": "GitHub", |   "author": "GitHub", | ||||||
|   "license": "MIT", |   "license": "MIT", | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
|     "@actions/cache": "^4.0.0", |     "@actions/cache": "^3.2.4", | ||||||
|     "@actions/core": "^1.10.0", |     "@actions/core": "^1.10.0", | ||||||
|     "@actions/exec": "^1.1.0", |     "@actions/exec": "^1.1.0", | ||||||
|     "@actions/glob": "^0.4.0", |     "@actions/glob": "^0.4.0", | ||||||
|     "@actions/http-client": "^2.2.3", |     "@actions/http-client": "^2.2.1", | ||||||
|     "@actions/io": "^1.0.2", |     "@actions/io": "^1.0.2", | ||||||
|     "@actions/tool-cache": "^2.0.1", |     "@actions/tool-cache": "^2.0.1", | ||||||
|     "@iarna/toml": "^3.0.0", |     "@iarna/toml": "^2.2.5", | ||||||
|     "semver": "^7.6.0" |     "semver": "^7.6.0" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
| @ -41,7 +41,7 @@ | |||||||
|     "@types/semver": "^7.5.8", |     "@types/semver": "^7.5.8", | ||||||
|     "@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.0", | ||||||
|     "eslint": "^8.57.0", |     "eslint": "^8.57.0", | ||||||
|     "eslint-config-prettier": "^8.6.0", |     "eslint-config-prettier": "^8.6.0", | ||||||
|     "eslint-plugin-jest": "^27.9.0", |     "eslint-plugin-jest": "^27.9.0", | ||||||
|  | |||||||
| @ -67,11 +67,11 @@ class PipCache extends CacheDistributor { | |||||||
| 
 | 
 | ||||||
|     if (IS_LINUX) { |     if (IS_LINUX) { | ||||||
|       const osInfo = await getLinuxInfo(); |       const osInfo = await getLinuxInfo(); | ||||||
|       primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${process.arch}-${osInfo.osVersion}-${osInfo.osName}-python-${this.pythonVersion}-${this.packageManager}-${hash}`; |       primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${osInfo.osVersion}-${osInfo.osName}-python-${this.pythonVersion}-${this.packageManager}-${hash}`; | ||||||
|       restoreKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${process.arch}-${osInfo.osVersion}-${osInfo.osName}-python-${this.pythonVersion}-${this.packageManager}`; |       restoreKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${osInfo.osVersion}-${osInfo.osName}-python-${this.pythonVersion}-${this.packageManager}`; | ||||||
|     } else { |     } else { | ||||||
|       primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${process.arch}-python-${this.pythonVersion}-${this.packageManager}-${hash}`; |       primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-python-${this.pythonVersion}-${this.packageManager}-${hash}`; | ||||||
|       restoreKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${process.arch}-python-${this.pythonVersion}-${this.packageManager}`; |       restoreKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-python-${this.pythonVersion}-${this.packageManager}`; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     return { |     return { | ||||||
|  | |||||||
| @ -32,7 +32,7 @@ class PipenvCache extends CacheDistributor { | |||||||
| 
 | 
 | ||||||
|   protected async computeKeys() { |   protected async computeKeys() { | ||||||
|     const hash = await glob.hashFiles(this.patterns); |     const hash = await glob.hashFiles(this.patterns); | ||||||
|     const primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${process.arch}-python-${this.pythonVersion}-${this.packageManager}-${hash}`; |     const primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-python-${this.pythonVersion}-${this.packageManager}-${hash}`; | ||||||
|     const restoreKey = undefined; |     const restoreKey = undefined; | ||||||
|     return { |     return { | ||||||
|       primaryKey, |       primaryKey, | ||||||
|  | |||||||
| @ -47,7 +47,7 @@ class PoetryCache extends CacheDistributor { | |||||||
|   protected async computeKeys() { |   protected async computeKeys() { | ||||||
|     const hash = await glob.hashFiles(this.patterns); |     const hash = await glob.hashFiles(this.patterns); | ||||||
|     // "v2" is here to invalidate old caches of this cache distributor, which were created broken:
 |     // "v2" is here to invalidate old caches of this cache distributor, which were created broken:
 | ||||||
|     const primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-${process.arch}-python-${this.pythonVersion}-${this.packageManager}-v2-${hash}`; |     const primaryKey = `${this.CACHE_KEY_PREFIX}-${process.env['RUNNER_OS']}-python-${this.pythonVersion}-${this.packageManager}-v2-${hash}`; | ||||||
|     const restoreKey = undefined; |     const restoreKey = undefined; | ||||||
|     return { |     return { | ||||||
|       primaryKey, |       primaryKey, | ||||||
|  | |||||||
| @ -41,7 +41,7 @@ async function saveCache(packageManager: string) { | |||||||
|     throw new Error( |     throw new Error( | ||||||
|       `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.` |       )}` | ||||||
|     ); |     ); | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -8,15 +8,13 @@ import * as exec from '@actions/exec'; | |||||||
| import fs from 'fs'; | import fs from 'fs'; | ||||||
| 
 | 
 | ||||||
| import { | import { | ||||||
|   IS_LINUX, |  | ||||||
|   IS_WINDOWS, |   IS_WINDOWS, | ||||||
|   WINDOWS_PLATFORMS, |   WINDOWS_PLATFORMS, | ||||||
|   IPyPyManifestRelease, |   IPyPyManifestRelease, | ||||||
|   createSymlinkInFolder, |   createSymlinkInFolder, | ||||||
|   isNightlyKeyword, |   isNightlyKeyword, | ||||||
|   writeExactPyPyVersionFile, |   writeExactPyPyVersionFile, | ||||||
|   getBinaryDirectory, |   getBinaryDirectory | ||||||
|   getDownloadFileName |  | ||||||
| } from './utils'; | } from './utils'; | ||||||
| 
 | 
 | ||||||
| export async function installPyPy( | export async function installPyPy( | ||||||
| @ -71,8 +69,7 @@ export async function installPyPy( | |||||||
|   core.info(`Downloading PyPy from "${downloadUrl}" ...`); |   core.info(`Downloading PyPy from "${downloadUrl}" ...`); | ||||||
| 
 | 
 | ||||||
|   try { |   try { | ||||||
|     const fileName = getDownloadFileName(downloadUrl); |     const pypyPath = await tc.downloadTool(downloadUrl); | ||||||
|     const pypyPath = await tc.downloadTool(downloadUrl, fileName); |  | ||||||
| 
 | 
 | ||||||
|     core.info('Extracting downloaded archive...'); |     core.info('Extracting downloaded archive...'); | ||||||
|     if (IS_WINDOWS) { |     if (IS_WINDOWS) { | ||||||
| @ -247,7 +244,7 @@ export function pypyVersionToSemantic(versionSpec: string) { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export function isArchPresentForWindows(item: any, architecture: string) { | export function isArchPresentForWindows(item: any, architecture: string) { | ||||||
|   architecture = pypyArchitecture(architecture); |   architecture = replaceX32toX86(architecture); | ||||||
|   return item.files.some( |   return item.files.some( | ||||||
|     (file: any) => |     (file: any) => | ||||||
|       WINDOWS_PLATFORMS.includes(file.platform) && file.arch === architecture |       WINDOWS_PLATFORMS.includes(file.platform) && file.arch === architecture | ||||||
| @ -259,14 +256,13 @@ export function isArchPresentForMacOrLinux( | |||||||
|   architecture: string, |   architecture: string, | ||||||
|   platform: string |   platform: string | ||||||
| ) { | ) { | ||||||
|   architecture = pypyArchitecture(architecture); |  | ||||||
|   return item.files.some( |   return item.files.some( | ||||||
|     (file: any) => file.arch === architecture && file.platform === platform |     (file: any) => file.arch === architecture && file.platform === platform | ||||||
|   ); |   ); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export function findAssetForWindows(releases: any, architecture: string) { | export function findAssetForWindows(releases: any, architecture: string) { | ||||||
|   architecture = pypyArchitecture(architecture); |   architecture = replaceX32toX86(architecture); | ||||||
|   return releases.files.find( |   return releases.files.find( | ||||||
|     (item: any) => |     (item: any) => | ||||||
|       WINDOWS_PLATFORMS.includes(item.platform) && item.arch === architecture |       WINDOWS_PLATFORMS.includes(item.platform) && item.arch === architecture | ||||||
| @ -278,18 +274,15 @@ export function findAssetForMacOrLinux( | |||||||
|   architecture: string, |   architecture: string, | ||||||
|   platform: string |   platform: string | ||||||
| ) { | ) { | ||||||
|   architecture = pypyArchitecture(architecture); |  | ||||||
|   return releases.files.find( |   return releases.files.find( | ||||||
|     (item: any) => item.arch === architecture && item.platform === platform |     (item: any) => item.arch === architecture && item.platform === platform | ||||||
|   ); |   ); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function pypyArchitecture(architecture: string): string { | function replaceX32toX86(architecture: string): string { | ||||||
|   if (IS_WINDOWS && architecture === 'x32') { |   // convert x32 to x86 because os.arch() returns x32 for 32-bit systems but PyPy releases json has x86 arch value.
 | ||||||
|     // convert x32 to x86 because os.arch() returns x32 for 32-bit systems but PyPy releases json has x86 arch value.
 |   if (architecture === 'x32') { | ||||||
|     architecture = 'x86'; |     architecture = 'x86'; | ||||||
|   } else if (IS_LINUX && architecture === 'arm64') { |  | ||||||
|     architecture = 'aarch64'; |  | ||||||
|   } |   } | ||||||
|   return architecture; |   return architecture; | ||||||
| } | } | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ import * as tc from '@actions/tool-cache'; | |||||||
| import * as exec from '@actions/exec'; | import * as exec from '@actions/exec'; | ||||||
| import * as httpm from '@actions/http-client'; | import * as httpm from '@actions/http-client'; | ||||||
| import {ExecOptions} from '@actions/exec/lib/interfaces'; | import {ExecOptions} from '@actions/exec/lib/interfaces'; | ||||||
| import {IS_WINDOWS, IS_LINUX, getDownloadFileName} from './utils'; | import {IS_WINDOWS, IS_LINUX} from './utils'; | ||||||
| 
 | 
 | ||||||
| const TOKEN = core.getInput('token'); | const TOKEN = core.getInput('token'); | ||||||
| const AUTH = !TOKEN ? undefined : `token ${TOKEN}`; | const AUTH = !TOKEN ? undefined : `token ${TOKEN}`; | ||||||
| @ -98,8 +98,7 @@ export async function installCpythonFromRelease(release: tc.IToolRelease) { | |||||||
|   core.info(`Download from "${downloadUrl}"`); |   core.info(`Download from "${downloadUrl}"`); | ||||||
|   let pythonPath = ''; |   let pythonPath = ''; | ||||||
|   try { |   try { | ||||||
|     const fileName = getDownloadFileName(downloadUrl); |     pythonPath = await tc.downloadTool(downloadUrl, undefined, AUTH); | ||||||
|     pythonPath = await tc.downloadTool(downloadUrl, fileName, AUTH); |  | ||||||
|     core.info('Extract downloaded archive'); |     core.info('Extract downloaded archive'); | ||||||
|     let pythonExtractedFolder; |     let pythonExtractedFolder; | ||||||
|     if (IS_WINDOWS) { |     if (IS_WINDOWS) { | ||||||
|  | |||||||
							
								
								
									
										27
									
								
								src/utils.ts
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								src/utils.ts
									
									
									
									
									
								
							| @ -116,13 +116,7 @@ export function isGhes(): boolean { | |||||||
|   const ghUrl = new URL( |   const ghUrl = new URL( | ||||||
|     process.env['GITHUB_SERVER_URL'] || 'https://github.com' |     process.env['GITHUB_SERVER_URL'] || 'https://github.com' | ||||||
|   ); |   ); | ||||||
| 
 |   return ghUrl.hostname.toUpperCase() !== 'GITHUB.COM'; | ||||||
|   const hostname = ghUrl.hostname.trimEnd().toUpperCase(); |  | ||||||
|   const isGitHubHost = hostname === 'GITHUB.COM'; |  | ||||||
|   const isGitHubEnterpriseCloudHost = hostname.endsWith('.GHE.COM'); |  | ||||||
|   const isLocalHost = hostname.endsWith('.LOCALHOST'); |  | ||||||
| 
 |  | ||||||
|   return !isGitHubHost && !isGitHubEnterpriseCloudHost && !isLocalHost; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export function isCacheFeatureAvailable(): boolean { | export function isCacheFeatureAvailable(): boolean { | ||||||
| @ -230,10 +224,7 @@ function extractValue(obj: any, keys: string[]): string | undefined { | |||||||
| 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 form ${versionFile}`); | ||||||
| 
 | 
 | ||||||
|   let pyprojectFile = fs.readFileSync(versionFile, 'utf8'); |   const pyprojectFile = fs.readFileSync(versionFile, 'utf8'); | ||||||
|   // Normalize the line endings in the pyprojectFile
 |  | ||||||
|   pyprojectFile = pyprojectFile.replace(/\r\n/g, '\n'); |  | ||||||
| 
 |  | ||||||
|   const pyprojectConfig = toml.parse(pyprojectFile); |   const pyprojectConfig = toml.parse(pyprojectFile); | ||||||
|   let keys = []; |   let keys = []; | ||||||
| 
 | 
 | ||||||
| @ -319,17 +310,3 @@ export function getNextPageUrl<T>(response: ifm.TypedResponse<T>) { | |||||||
|   } |   } | ||||||
|   return null; |   return null; | ||||||
| } | } | ||||||
| 
 |  | ||||||
| /** |  | ||||||
|  * Add temporary fix for Windows |  | ||||||
|  * On Windows, it is necessary to retain the .zip extension for proper extraction. |  | ||||||
|  * because the tc.extractZip() failure due to tc.downloadTool() not adding .zip extension. |  | ||||||
|  * Related issue: https://github.com/actions/toolkit/issues/1179
 |  | ||||||
|  * Related issue: https://github.com/actions/setup-python/issues/819
 |  | ||||||
|  */ |  | ||||||
| export function getDownloadFileName(downloadUrl: string): string | undefined { |  | ||||||
|   const tempDir = process.env.RUNNER_TEMP || '.'; |  | ||||||
|   return IS_WINDOWS |  | ||||||
|     ? path.join(tempDir, path.basename(downloadUrl)) |  | ||||||
|     : undefined; |  | ||||||
| } |  | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user