mirror of
				https://gitea.com/actions/setup-node.git
				synced 2025-10-31 07:47:14 +00:00 
			
		
		
		
	Compare commits
	
		
			4 Commits
		
	
	
		
			test-macos
			...
			v5
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| ![dependabot[bot]](/assets/img/avatar_default.png)  | a0853c2454 | ||
|   | b7234cc9fe | ||
|   | d7a11313b5 | ||
|   | 5e2628c959 | 
							
								
								
									
										2
									
								
								.github/workflows/basic-validation.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/basic-validation.yml
									
									
									
									
										vendored
									
									
								
							| @@ -16,4 +16,4 @@ jobs: | |||||||
|     name: Basic validation |     name: Basic validation | ||||||
|     uses: actions/reusable-workflows/.github/workflows/basic-validation.yml@main |     uses: actions/reusable-workflows/.github/workflows/basic-validation.yml@main | ||||||
|     with: |     with: | ||||||
|       node-version: '20.x' |       node-version: '24.x' | ||||||
|   | |||||||
							
								
								
									
										59
									
								
								.github/workflows/e2e-cache.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										59
									
								
								.github/workflows/e2e-cache.yml
									
									
									
									
										vendored
									
									
								
							| @@ -19,9 +19,9 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Clean global cache |       - name: Clean global cache | ||||||
|         run: npm cache clean --force |         run: npm cache clean --force | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
| @@ -42,9 +42,9 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Install pnpm |       - name: Install pnpm | ||||||
|         uses: pnpm/action-setup@v4 |         uses: pnpm/action-setup@v4 | ||||||
|         with: |         with: | ||||||
| @@ -75,13 +75,13 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18, 20] |         node-version: [18, 20, 24] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Yarn version |       - name: Yarn version | ||||||
|         run: yarn --version |         run: yarn --version | ||||||
|       - name: Generate yarn file |       - name: Generate yarn file | ||||||
|         run: yarn install |         run: yarn install --ignore-engines | ||||||
|       - name: Remove dependencies |       - name: Remove dependencies | ||||||
|         shell: pwsh |         shell: pwsh | ||||||
|         run: Remove-Item node_modules -Force -Recurse |         run: Remove-Item node_modules -Force -Recurse | ||||||
| @@ -107,9 +107,9 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Update yarn |       - name: Update yarn | ||||||
|         run: yarn set version 3.6.4 |         run: yarn set version 3.6.4 | ||||||
|       - name: Yarn version |       - name: Yarn version | ||||||
| @@ -139,11 +139,11 @@ jobs: | |||||||
|     name: Test yarn subprojects |     name: Test yarn subprojects | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: prepare sub-projects |       - name: prepare sub-projects | ||||||
|         run: __tests__/prepare-yarn-subprojects.sh yarn1 |         run: __tests__/prepare-yarn-subprojects.sh yarn1 | ||||||
| @@ -166,11 +166,11 @@ jobs: | |||||||
|     name: Test yarn subprojects all locally managed |     name: Test yarn subprojects all locally managed | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: prepare sub-projects |       - name: prepare sub-projects | ||||||
|         run: __tests__/prepare-yarn-subprojects.sh keepcache keepcache |         run: __tests__/prepare-yarn-subprojects.sh keepcache keepcache | ||||||
| @@ -193,11 +193,11 @@ jobs: | |||||||
|     name: Test yarn subprojects some locally managed |     name: Test yarn subprojects some locally managed | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: prepare sub-projects |       - name: prepare sub-projects | ||||||
|         run: __tests__/prepare-yarn-subprojects.sh global |         run: __tests__/prepare-yarn-subprojects.sh global | ||||||
| @@ -220,11 +220,11 @@ jobs: | |||||||
|     name: Test yarn subprojects managed by git |     name: Test yarn subprojects managed by git | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|  |  | ||||||
|       - name: prepare sub-projects |       - name: prepare sub-projects | ||||||
|         run: /bin/bash __tests__/prepare-yarn-subprojects.sh keepcache |         run: /bin/bash __tests__/prepare-yarn-subprojects.sh keepcache | ||||||
| @@ -243,3 +243,28 @@ jobs: | |||||||
|           cache-dependency-path: | |           cache-dependency-path: | | ||||||
|             sub2/*.lock |             sub2/*.lock | ||||||
|             sub3/*.lock |             sub3/*.lock | ||||||
|  |  | ||||||
|  |   node-npm-package-manager-cache: | ||||||
|  |     name: Test enabling cache if package manager field is present (Node ${{ matrix.node-version }}, ${{ matrix.os }}) | ||||||
|  |     runs-on: ${{ matrix.os }} | ||||||
|  |     strategy: | ||||||
|  |       fail-fast: false | ||||||
|  |       matrix: | ||||||
|  |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|  |         node-version: [18, 20, 22] | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v5 | ||||||
|  |       - name: Create package.json with packageManager field | ||||||
|  |         run: | | ||||||
|  |           echo '{ "name": "test-project", "version": "1.0.0", "packageManager": "npm@8.0.0" }' > package.json | ||||||
|  |       - name: Clean global cache | ||||||
|  |         run: npm cache clean --force | ||||||
|  |       - name: Setup Node with caching enabled | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           node-version: ${{ matrix.node-version }} | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: npm install | ||||||
|  |       - name: Verify node and npm | ||||||
|  |         run: __tests__/verify-node.sh "${{ matrix.node-version }}" | ||||||
|  |         shell: bash | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								.github/workflows/proxy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/proxy.yml
									
									
									
									
										vendored
									
									
								
							| @@ -25,7 +25,7 @@ jobs: | |||||||
|     env: |     env: | ||||||
|       https_proxy: http://squid-proxy:3128 |       https_proxy: http://squid-proxy:3128 | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Clear tool cache |       - name: Clear tool cache | ||||||
|         run: rm -rf $RUNNER_TOOL_CACHE/* |         run: rm -rf $RUNNER_TOOL_CACHE/* | ||||||
|       - name: Setup node 14 |       - name: Setup node 14 | ||||||
| @@ -41,7 +41,7 @@ jobs: | |||||||
|       https_proxy: http://no-such-proxy:3128 |       https_proxy: http://no-such-proxy:3128 | ||||||
|       no_proxy: api.github.com,github.com,nodejs.org,registry.npmjs.org,*.s3.amazonaws.com,s3.amazonaws.com |       no_proxy: api.github.com,github.com,nodejs.org,registry.npmjs.org,*.s3.amazonaws.com,s3.amazonaws.com | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Clear tool cache |       - name: Clear tool cache | ||||||
|         run: rm -rf $RUNNER_TOOL_CACHE/* |         run: rm -rf $RUNNER_TOOL_CACHE/* | ||||||
|       - name: Setup node 11 |       - name: Setup node 11 | ||||||
|   | |||||||
| @@ -14,7 +14,7 @@ jobs: | |||||||
|  |  | ||||||
|     steps: |     steps: | ||||||
|       - name: Checking out |       - name: Checking out | ||||||
|         uses: actions/checkout@v4 |         uses: actions/checkout@v5 | ||||||
|       - name: Publish |       - name: Publish | ||||||
|         id: publish |         id: publish | ||||||
|         uses: actions/publish-immutable-action@v0.0.4 |         uses: actions/publish-immutable-action@v0.0.4 | ||||||
|   | |||||||
							
								
								
									
										38
									
								
								.github/workflows/versions.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										38
									
								
								.github/workflows/versions.yml
									
									
									
									
										vendored
									
									
								
							| @@ -18,9 +18,9 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -37,7 +37,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, windows-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-13] | ||||||
|         node-version: [lts/dubnium, lts/erbium, lts/fermium, lts/*, lts/-1] |         node-version: [lts/dubnium, lts/erbium, lts/fermium, lts/*, lts/-1] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -64,7 +64,7 @@ jobs: | |||||||
|             '20.0.0-v8-canary20221101e50e45c9f8' |             '20.0.0-v8-canary20221101e50e45c9f8' | ||||||
|           ] |           ] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -84,7 +84,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [20-nightly, 21-nightly, 18.0.0-nightly] |         node-version: [20-nightly, 21-nightly, 18.0.0-nightly] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -104,7 +104,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [20.0.0-rc.1, 18.0.0-rc.2, 19.0.0-rc.0] |         node-version: [20.0.0-rc.1, 18.0.0-rc.2, 19.0.0-rc.0] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -124,7 +124,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18.20.0, 20.10.0, 22.0.0] |         node-version: [18.20.0, 20.10.0, 22.0.0] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -139,9 +139,9 @@ jobs: | |||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [18, 20, 22] |         node-version: [18, 20, 22, 24] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node and check latest |       - name: Setup Node and check latest | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -160,13 +160,13 @@ jobs: | |||||||
|         node-version-file: |         node-version-file: | ||||||
|           [.nvmrc, .tool-versions, .tool-versions-node, package.json] |           [.nvmrc, .tool-versions, .tool-versions-node, package.json] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup node from node version file |       - name: Setup node from node version file | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           node-version-file: '__tests__/data/${{ matrix.node-version-file }}' |           node-version-file: '__tests__/data/${{ matrix.node-version-file }}' | ||||||
|       - name: Verify node |       - name: Verify node | ||||||
|         run: __tests__/verify-node.sh 20 |         run: __tests__/verify-node.sh 24 | ||||||
|  |  | ||||||
|   version-file-volta: |   version-file-volta: | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
| @@ -175,13 +175,13 @@ jobs: | |||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup node from node version file |       - name: Setup node from node version file | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           node-version-file: '__tests__/data/package-volta.json' |           node-version-file: '__tests__/data/package-volta.json' | ||||||
|       - name: Verify node |       - name: Verify node | ||||||
|         run: __tests__/verify-node.sh 20 |         run: __tests__/verify-node.sh 24 | ||||||
|  |  | ||||||
|   version-file-volta-extends: |   version-file-volta-extends: | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
| @@ -190,13 +190,13 @@ jobs: | |||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup node from node version file |       - name: Setup node from node version file | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|           node-version-file: '__tests__/data/package-volta-extends.json' |           node-version-file: '__tests__/data/package-volta-extends.json' | ||||||
|       - name: Verify node |       - name: Verify node | ||||||
|         run: __tests__/verify-node.sh 20 |         run: __tests__/verify-node.sh 24 | ||||||
|  |  | ||||||
|   node-dist: |   node-dist: | ||||||
|     runs-on: ${{ matrix.os }} |     runs-on: ${{ matrix.os }} | ||||||
| @@ -206,7 +206,7 @@ jobs: | |||||||
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-latest, macos-13] | ||||||
|         node-version: [17, 19] |         node-version: [17, 19] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node from dist |       - name: Setup Node from dist | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -222,7 +222,7 @@ jobs: | |||||||
|       matrix: |       matrix: | ||||||
|         os: [ubuntu-latest, windows-latest, macos-13] |         os: [ubuntu-latest, windows-latest, macos-13] | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       # test old versions which didn't have npm and layout different |       # test old versions which didn't have npm and layout different | ||||||
|       - name: Setup node 0.12.18 from dist |       - name: Setup node 0.12.18 from dist | ||||||
|         uses: ./ |         uses: ./ | ||||||
| @@ -235,7 +235,7 @@ jobs: | |||||||
|   arch: |   arch: | ||||||
|     runs-on: windows-latest |     runs-on: windows-latest | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup node 20 x86 from dist |       - name: Setup node 20 x86 from dist | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
| @@ -259,7 +259,7 @@ jobs: | |||||||
|           echo "LATEST_NODE_VERSION=$latestNodeVersion" >> $GITHUB_OUTPUT |           echo "LATEST_NODE_VERSION=$latestNodeVersion" >> $GITHUB_OUTPUT | ||||||
|         id: version |         id: version | ||||||
|         shell: bash |         shell: bash | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup Node |       - name: Setup Node | ||||||
|         uses: ./ |         uses: ./ | ||||||
|         with: |         with: | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.licenses/npm/@types/node.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/@types/node.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: "@types/node" | name: "@types/node" | ||||||
| version: 20.11.25 | version: 24.1.0 | ||||||
| type: npm | type: npm | ||||||
| summary: TypeScript definitions for node | summary: TypeScript definitions for node | ||||||
| homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node | homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								.licenses/npm/brace-expansion.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/brace-expansion.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: brace-expansion | name: brace-expansion | ||||||
| version: 1.1.11 | version: 1.1.12 | ||||||
| type: npm | type: npm | ||||||
| summary: Brace expansion as known from sh/bash | summary: Brace expansion as known from sh/bash | ||||||
| homepage: https://github.com/juliangruber/brace-expansion | homepage: https://github.com/juliangruber/brace-expansion | ||||||
|   | |||||||
							
								
								
									
										32
									
								
								.licenses/npm/call-bind-apply-helpers.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/call-bind-apply-helpers.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: call-bind-apply-helpers | ||||||
|  | version: 1.0.2 | ||||||
|  | type: npm | ||||||
|  | summary: Helper functions around Function call/apply/bind, for use in `call-bind` | ||||||
|  | homepage: https://github.com/ljharb/call-bind-apply-helpers#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/dunder-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/dunder-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: dunder-proto | ||||||
|  | version: 1.0.1 | ||||||
|  | type: npm | ||||||
|  | summary: If available, the `Object.prototype.__proto__` accessor and mutator, call-bound | ||||||
|  | homepage: https://github.com/es-shims/dunder-proto#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 ECMAScript Shims | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-define-property.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-define-property.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-define-property | ||||||
|  | version: 1.0.1 | ||||||
|  | type: npm | ||||||
|  | summary: "`Object.defineProperty`, but not IE 8's broken one." | ||||||
|  | homepage: https://github.com/ljharb/es-define-property#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-errors.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-errors.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-errors | ||||||
|  | version: 1.3.0 | ||||||
|  | type: npm | ||||||
|  | summary: A simple cache for a few of the JS Error constructors. | ||||||
|  | homepage: https://github.com/ljharb/es-errors#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-object-atoms.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-object-atoms.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-object-atoms | ||||||
|  | version: 1.1.1 | ||||||
|  | type: npm | ||||||
|  | summary: 'ES Object-related atoms: Object, ToObject, RequireObjectCoercible' | ||||||
|  | homepage: https://github.com/ljharb/es-object-atoms#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/es-set-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/es-set-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: es-set-tostringtag | ||||||
|  | version: 2.1.0 | ||||||
|  | type: npm | ||||||
|  | summary: A helper to optimistically set Symbol.toStringTag, when possible. | ||||||
|  | homepage: https://github.com/es-shims/es-set-tostringtag#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2022 ECMAScript Shims | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
| @@ -1,10 +1,10 @@ | |||||||
| --- | --- | ||||||
| name: form-data | name: form-data | ||||||
| version: 2.5.1 | version: 2.5.5 | ||||||
| type: npm | type: npm | ||||||
| summary: A library to create readable "multipart/form-data" streams. Can be used to | summary: A library to create readable "multipart/form-data" streams. Can be used to | ||||||
|   submit forms and file uploads to other web applications. |   submit forms and file uploads to other web applications. | ||||||
| homepage: https://github.com/form-data/form-data#readme | homepage: | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: License | - sources: License | ||||||
| @@ -1,10 +1,10 @@ | |||||||
| --- | --- | ||||||
| name: form-data | name: form-data | ||||||
| version: 4.0.0 | version: 4.0.4 | ||||||
| type: npm | type: npm | ||||||
| summary: A library to create readable "multipart/form-data" streams. Can be used to | summary: A library to create readable "multipart/form-data" streams. Can be used to | ||||||
|   submit forms and file uploads to other web applications. |   submit forms and file uploads to other web applications. | ||||||
| homepage: https://github.com/form-data/form-data#readme | homepage: | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: License | - sources: License | ||||||
| @@ -28,6 +28,6 @@ licenses: | |||||||
|      LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |      LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|      OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN |      OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||||
|      THE SOFTWARE. |      THE SOFTWARE. | ||||||
| - sources: Readme.md | - sources: README.md | ||||||
|   text: Form-Data is released under the [MIT](License) license. |   text: Form-Data is released under the [MIT](License) license. | ||||||
| notices: [] | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/function-bind.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/function-bind.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: function-bind | ||||||
|  | version: 1.1.2 | ||||||
|  | type: npm | ||||||
|  | summary: Implementation of Function.prototype.bind | ||||||
|  | homepage: https://github.com/Raynos/function-bind | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: |+ | ||||||
|  |     Copyright (c) 2013 Raynos. | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in | ||||||
|  |     all copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||||
|  |     THE SOFTWARE. | ||||||
|  | 
 | ||||||
|  | notices: [] | ||||||
|  | ... | ||||||
							
								
								
									
										33
									
								
								.licenses/npm/get-intrinsic.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								.licenses/npm/get-intrinsic.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | --- | ||||||
|  | name: get-intrinsic | ||||||
|  | version: 1.3.0 | ||||||
|  | type: npm | ||||||
|  | summary: Get and robustly cache all JS language-level intrinsics at first require | ||||||
|  |   time | ||||||
|  | homepage: https://github.com/ljharb/get-intrinsic#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2020 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/get-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/get-proto.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: get-proto | ||||||
|  | version: 1.0.1 | ||||||
|  | type: npm | ||||||
|  | summary: Robustly get the [[Prototype]] of an object | ||||||
|  | homepage: https://github.com/ljharb/get-proto#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2025 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/gopd.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/gopd.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: gopd | ||||||
|  | version: 1.2.0 | ||||||
|  | type: npm | ||||||
|  | summary: "`Object.getOwnPropertyDescriptor`, but accounts for IE's broken implementation." | ||||||
|  | homepage: https://github.com/ljharb/gopd#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2022 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/has-symbols.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/has-symbols.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: has-symbols | ||||||
|  | version: 1.1.0 | ||||||
|  | type: npm | ||||||
|  | summary: Determine if the JS environment has Symbol support. Supports spec, or shams. | ||||||
|  | homepage: https://github.com/ljharb/has-symbols#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2016 Jordan Harband | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										33
									
								
								.licenses/npm/has-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								.licenses/npm/has-tostringtag.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | --- | ||||||
|  | name: has-tostringtag | ||||||
|  | version: 1.0.2 | ||||||
|  | type: npm | ||||||
|  | summary: Determine if the JS environment has `Symbol.toStringTag` support. Supports | ||||||
|  |   spec, or shams. | ||||||
|  | homepage: https://github.com/inspect-js/has-tostringtag#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2021 Inspect JS | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/hasown.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/hasown.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: hasown | ||||||
|  | version: 2.0.2 | ||||||
|  | type: npm | ||||||
|  | summary: A robust, ES3 compatible, "has own property" predicate. | ||||||
|  | homepage: https://github.com/inspect-js/hasOwn#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) Jordan Harband and contributors | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										32
									
								
								.licenses/npm/math-intrinsics.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.licenses/npm/math-intrinsics.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | --- | ||||||
|  | name: math-intrinsics | ||||||
|  | version: 1.1.0 | ||||||
|  | type: npm | ||||||
|  | summary: ES Math-related intrinsics and helpers, robustly cached. | ||||||
|  | homepage: https://github.com/es-shims/math-intrinsics#readme | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     MIT License | ||||||
|  | 
 | ||||||
|  |     Copyright (c) 2024 ECMAScript Shims | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in all | ||||||
|  |     copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||||
|  |     SOFTWARE. | ||||||
|  | notices: [] | ||||||
							
								
								
									
										34
									
								
								.licenses/npm/safe-buffer.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								.licenses/npm/safe-buffer.dep.yml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | --- | ||||||
|  | name: safe-buffer | ||||||
|  | version: 5.2.1 | ||||||
|  | type: npm | ||||||
|  | summary: Safer Node.js Buffer API | ||||||
|  | homepage: https://github.com/feross/safe-buffer | ||||||
|  | license: mit | ||||||
|  | licenses: | ||||||
|  | - sources: LICENSE | ||||||
|  |   text: | | ||||||
|  |     The MIT License (MIT) | ||||||
|  | 
 | ||||||
|  |     Copyright (c) Feross Aboukhadijeh | ||||||
|  | 
 | ||||||
|  |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|  |     of this software and associated documentation files (the "Software"), to deal | ||||||
|  |     in the Software without restriction, including without limitation the rights | ||||||
|  |     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||||
|  |     copies of the Software, and to permit persons to whom the Software is | ||||||
|  |     furnished to do so, subject to the following conditions: | ||||||
|  | 
 | ||||||
|  |     The above copyright notice and this permission notice shall be included in | ||||||
|  |     all copies or substantial portions of the Software. | ||||||
|  | 
 | ||||||
|  |     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||||
|  |     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||||
|  |     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||||
|  |     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||||
|  |     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||||
|  |     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||||||
|  |     THE SOFTWARE. | ||||||
|  | - sources: README.md | ||||||
|  |   text: MIT. Copyright (C) [Feross Aboukhadijeh](http://feross.org) | ||||||
|  | notices: [] | ||||||
							
								
								
									
										6
									
								
								.licenses/npm/undici-types.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										6
									
								
								.licenses/npm/undici-types.dep.yml
									
									
									
										generated
									
									
									
								
							| @@ -1,15 +1,17 @@ | |||||||
| --- | --- | ||||||
| name: undici-types | name: undici-types | ||||||
| version: 5.26.5 | version: 7.8.0 | ||||||
| type: npm | type: npm | ||||||
| summary: A stand-alone types package for Undici | summary: A stand-alone types package for Undici | ||||||
| homepage: https://undici.nodejs.org | homepage: https://undici.nodejs.org | ||||||
| license: mit | license: mit | ||||||
| licenses: | licenses: | ||||||
| - sources: Auto-generated MIT license text | - sources: LICENSE | ||||||
|   text: | |   text: | | ||||||
|     MIT License |     MIT License | ||||||
| 
 | 
 | ||||||
|  |     Copyright (c) Matteo Collina and Undici contributors | ||||||
|  | 
 | ||||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy |     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||||
|     of this software and associated documentation files (the "Software"), to deal |     of this software and associated documentation files (the "Software"), to deal | ||||||
|     in the Software without restriction, including without limitation the rights |     in the Software without restriction, including without limitation the rights | ||||||
|   | |||||||
							
								
								
									
										34
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								README.md
									
									
									
									
									
								
							| @@ -18,7 +18,7 @@ See [action.yml](action.yml) | |||||||
|  |  | ||||||
| <!-- start usage --> | <!-- start usage --> | ||||||
| ```yaml | ```yaml | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     # Version Spec of the version to use in SemVer notation. |     # Version Spec of the version to use in SemVer notation. | ||||||
|     # It also admits such aliases as lts/*, latest, nightly and canary builds |     # It also admits such aliases as lts/*, latest, nightly and canary builds | ||||||
| @@ -98,8 +98,8 @@ See [action.yml](action.yml) | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: 18 |     node-version: 18 | ||||||
| - run: npm ci | - run: npm ci | ||||||
| @@ -135,7 +135,19 @@ It's **always** recommended to commit the lockfile of your package manager for s | |||||||
|  |  | ||||||
| ## Caching global packages data | ## Caching global packages data | ||||||
|  |  | ||||||
| The action has a built-in functionality for caching and restoring dependencies. It uses [actions/cache](https://github.com/actions/cache) under the hood for caching global packages data but requires less configuration settings. Supported package managers are `npm`, `yarn`, `pnpm` (v6.10+). The `cache` input is optional, and caching is turned off by default. | The action has a built-in functionality for caching and restoring dependencies. It uses [actions/cache](https://github.com/actions/cache) under the hood for caching global packages data but requires less configuration settings. Supported package managers are `npm`, `yarn`, `pnpm` (v6.10+). The `cache` input is optional. | ||||||
|  |  | ||||||
|  | Caching is turned on by default when a `packageManager` field is detected in the `package.json` file. The `package-manager-cache` input provides control over this automatic caching behavior. By default, `package-manager-cache` is set to `true`, which enables caching when a valid package manager field is detected in the `package.json` file. To disable this automatic caching, set the `package-manager-cache` input to `false`. | ||||||
|  |  | ||||||
|  | ```yaml | ||||||
|  | steps: | ||||||
|  | - uses: actions/checkout@v4 | ||||||
|  | - uses: actions/setup-node@v4 | ||||||
|  |   with: | ||||||
|  |     package-manager-cache: false | ||||||
|  | - run: npm ci | ||||||
|  | ``` | ||||||
|  | > If no valid `packageManager` field is detected in the `package.json` file, caching will remain disabled unless explicitly configured. | ||||||
|  |  | ||||||
| The action defaults to search for the dependency file (`package-lock.json`, `npm-shrinkwrap.json` or `yarn.lock`) in the repository root, and uses its hash as a part of the cache key. Use `cache-dependency-path` for cases when multiple dependency files are used, or they are located in different subdirectories. | The action defaults to search for the dependency file (`package-lock.json`, `npm-shrinkwrap.json` or `yarn.lock`) in the repository root, and uses its hash as a part of the cache key. Use `cache-dependency-path` for cases when multiple dependency files are used, or they are located in different subdirectories. | ||||||
|  |  | ||||||
| @@ -147,8 +159,8 @@ See the examples of using cache for `yarn`/`pnpm` and `cache-dependency-path` in | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: 20 |     node-version: 20 | ||||||
|     cache: 'npm' |     cache: 'npm' | ||||||
| @@ -160,8 +172,8 @@ steps: | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: 20 |     node-version: 20 | ||||||
|     cache: 'npm' |     cache: 'npm' | ||||||
| @@ -181,9 +193,9 @@ jobs: | |||||||
|         node: [ 14, 16, 18 ] |         node: [ 14, 16, 18 ] | ||||||
|     name: Node ${{ matrix.node }} sample |     name: Node ${{ matrix.node }} sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup node |       - name: Setup node | ||||||
|         uses: actions/setup-node@v4 |         uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: ${{ matrix.node }} |           node-version: ${{ matrix.node }} | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -197,7 +209,7 @@ jobs: | |||||||
| To get a higher rate limit, you can [generate a personal access token on github.com](https://github.com/settings/tokens/new) and pass it as the `token` input for the action: | To get a higher rate limit, you can [generate a personal access token on github.com](https://github.com/settings/tokens/new) and pass it as the `token` input for the action: | ||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| uses: actions/setup-node@v4 | uses: actions/setup-node@v5 | ||||||
| with: | with: | ||||||
|   token: ${{ secrets.GH_DOTCOM_TOKEN }} |   token: ${{ secrets.GH_DOTCOM_TOKEN }} | ||||||
|   node-version: 20 |   node-version: 20 | ||||||
|   | |||||||
| @@ -1 +1 @@ | |||||||
| v20 | v24 | ||||||
|   | |||||||
| @@ -1 +1 @@ | |||||||
| nodejs 20.0.0 | nodejs 24.0.0 | ||||||
|   | |||||||
| @@ -1 +1 @@ | |||||||
| node 20.0.0 | node 24.0.0 | ||||||
|   | |||||||
| @@ -3,6 +3,6 @@ | |||||||
|     "node": "^14.0.0" |     "node": "^14.0.0" | ||||||
|   }, |   }, | ||||||
|   "volta": { |   "volta": { | ||||||
|     "node": "20.0.0" |     "node": "24.0.0" | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| { | { | ||||||
|   "engines": { |   "engines": { | ||||||
|     "node": "^20.0.0" |     "node": "^24.0.0" | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
| @@ -20,6 +20,7 @@ describe('main tests', () => { | |||||||
|  |  | ||||||
|   let infoSpy: jest.SpyInstance; |   let infoSpy: jest.SpyInstance; | ||||||
|   let warningSpy: jest.SpyInstance; |   let warningSpy: jest.SpyInstance; | ||||||
|  |   let saveStateSpy: jest.SpyInstance; | ||||||
|   let inSpy: jest.SpyInstance; |   let inSpy: jest.SpyInstance; | ||||||
|   let setOutputSpy: jest.SpyInstance; |   let setOutputSpy: jest.SpyInstance; | ||||||
|   let startGroupSpy: jest.SpyInstance; |   let startGroupSpy: jest.SpyInstance; | ||||||
| @@ -53,6 +54,8 @@ describe('main tests', () => { | |||||||
|     setOutputSpy.mockImplementation(() => {}); |     setOutputSpy.mockImplementation(() => {}); | ||||||
|     warningSpy = jest.spyOn(core, 'warning'); |     warningSpy = jest.spyOn(core, 'warning'); | ||||||
|     warningSpy.mockImplementation(() => {}); |     warningSpy.mockImplementation(() => {}); | ||||||
|  |     saveStateSpy = jest.spyOn(core, 'saveState'); | ||||||
|  |     saveStateSpy.mockImplementation(() => {}); | ||||||
|     startGroupSpy = jest.spyOn(core, 'startGroup'); |     startGroupSpy = jest.spyOn(core, 'startGroup'); | ||||||
|     startGroupSpy.mockImplementation(() => {}); |     startGroupSpy.mockImplementation(() => {}); | ||||||
|     endGroupSpy = jest.spyOn(core, 'endGroup'); |     endGroupSpy = jest.spyOn(core, 'endGroup'); | ||||||
| @@ -280,4 +283,65 @@ describe('main tests', () => { | |||||||
|       ); |       ); | ||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
|  |  | ||||||
|  |   describe('cache feature tests', () => { | ||||||
|  |     it('Should enable caching with the resolved package manager from packageManager field in package.json when the cache input is not provided', async () => { | ||||||
|  |       inputs['package-manager-cache'] = 'true'; | ||||||
|  |       inputs['cache'] = ''; // No cache input is provided | ||||||
|  |  | ||||||
|  |       inSpy.mockImplementation(name => inputs[name]); | ||||||
|  |  | ||||||
|  |       const readFileSpy = jest.spyOn(fs, 'readFileSync'); | ||||||
|  |       readFileSpy.mockImplementation(() => | ||||||
|  |         JSON.stringify({ | ||||||
|  |           packageManager: 'yarn@3.2.0' | ||||||
|  |         }) | ||||||
|  |       ); | ||||||
|  |  | ||||||
|  |       await main.run(); | ||||||
|  |  | ||||||
|  |       expect(saveStateSpy).toHaveBeenCalledWith(expect.anything(), 'yarn'); | ||||||
|  |     }); | ||||||
|  |  | ||||||
|  |     it('Should not enable caching if the packageManager field is missing in package.json and the cache input is not provided', async () => { | ||||||
|  |       inputs['package-manager-cache'] = 'true'; | ||||||
|  |       inputs['cache'] = ''; // No cache input is provided | ||||||
|  |  | ||||||
|  |       inSpy.mockImplementation(name => inputs[name]); | ||||||
|  |  | ||||||
|  |       const readFileSpy = jest.spyOn(fs, 'readFileSync'); | ||||||
|  |       readFileSpy.mockImplementation(() => | ||||||
|  |         JSON.stringify({ | ||||||
|  |           //packageManager field is not present | ||||||
|  |         }) | ||||||
|  |       ); | ||||||
|  |  | ||||||
|  |       await main.run(); | ||||||
|  |  | ||||||
|  |       expect(saveStateSpy).not.toHaveBeenCalled(); | ||||||
|  |     }); | ||||||
|  |  | ||||||
|  |     it('Should skip caching when package-manager-cache is false', async () => { | ||||||
|  |       inputs['package-manager-cache'] = 'false'; | ||||||
|  |       inputs['cache'] = ''; // No cache input is provided | ||||||
|  |  | ||||||
|  |       inSpy.mockImplementation(name => inputs[name]); | ||||||
|  |  | ||||||
|  |       await main.run(); | ||||||
|  |  | ||||||
|  |       expect(saveStateSpy).not.toHaveBeenCalled(); | ||||||
|  |     }); | ||||||
|  |  | ||||||
|  |     it('Should enable caching with cache input explicitly provided', async () => { | ||||||
|  |       inputs['package-manager-cache'] = 'true'; | ||||||
|  |       inputs['cache'] = 'npm'; // Explicit cache input provided | ||||||
|  |  | ||||||
|  |       inSpy.mockImplementation(name => inputs[name]); | ||||||
|  |       isCacheActionAvailable.mockReturnValue(true); | ||||||
|  |  | ||||||
|  |       await main.run(); | ||||||
|  |  | ||||||
|  |       expect(saveStateSpy).toHaveBeenCalledWith(expect.anything(), 'npm'); | ||||||
|  |     }); | ||||||
|  |   }); | ||||||
| }); | }); | ||||||
|   | |||||||
| @@ -7,8 +7,13 @@ fi | |||||||
|  |  | ||||||
| node_version="$(node --version)" | node_version="$(node --version)" | ||||||
| echo "Found node version '$node_version'" | echo "Found node version '$node_version'" | ||||||
| if [ -z "$(echo $node_version | grep --fixed-strings v$1)" ]; then |  | ||||||
|   echo "Unexpected version" | # Extract the major version from the node version (remove the 'v' prefix) | ||||||
|  | actual_major_version=$(echo $node_version | sed -E 's/^v([0-9]+)\..*/\1/') | ||||||
|  | expected_major_version=$(echo $1 | sed -E 's/^([0-9]+)\..*/\1/') # Extract major version from argument | ||||||
|  |  | ||||||
|  | if [ "$actual_major_version" != "$expected_major_version" ]; then | ||||||
|  |   echo "Expected Node.js $expected_major_version.x.x but found $node_version" | ||||||
|   exit 1 |   exit 1 | ||||||
| fi | fi | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,9 @@ inputs: | |||||||
|     default: ${{ github.server_url == 'https://github.com' && github.token || '' }} |     default: ${{ github.server_url == 'https://github.com' && github.token || '' }} | ||||||
|   cache: |   cache: | ||||||
|     description: 'Used to specify a package manager for caching in the default directory. Supported values: npm, yarn, pnpm.' |     description: 'Used to specify a package manager for caching in the default directory. Supported values: npm, yarn, pnpm.' | ||||||
|  |   package-manager-cache: | ||||||
|  |     description: 'Set to false to disable automatic caching based on the package manager field in package.json. By default, caching is enabled if the package manager field is present.' | ||||||
|  |     default: true | ||||||
|   cache-dependency-path: |   cache-dependency-path: | ||||||
|     description: 'Used to specify the path to a dependency file: package-lock.json, yarn.lock, etc. Supports wildcards or a list of file names for caching multiple dependencies.' |     description: 'Used to specify the path to a dependency file: package-lock.json, yarn.lock, etc. Supports wildcards or a list of file names for caching multiple dependencies.' | ||||||
|   mirror: |   mirror: | ||||||
| @@ -37,7 +40,7 @@ outputs: | |||||||
|   node-version: |   node-version: | ||||||
|     description: 'The installed node version.' |     description: 'The installed node version.' | ||||||
| runs: | runs: | ||||||
|   using: 'node20' |   using: 'node24' | ||||||
|   main: 'dist/setup/index.js' |   main: 'dist/setup/index.js' | ||||||
|   post: 'dist/cache-save/index.js' |   post: 'dist/cache-save/index.js' | ||||||
|   post-if: success() |   post-if: success() | ||||||
|   | |||||||
							
								
								
									
										1382
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1382
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										4558
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4558
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @@ -45,8 +45,8 @@ If `check-latest` is set to `true`, the action first checks if the cached versio | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '16' |     node-version: '16' | ||||||
|     check-latest: true |     check-latest: true | ||||||
| @@ -63,8 +63,8 @@ See [supported version syntax](https://github.com/actions/setup-node#supported-v | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version-file: '.nvmrc' |     node-version-file: '.nvmrc' | ||||||
| - run: npm ci | - run: npm ci | ||||||
| @@ -97,8 +97,8 @@ jobs: | |||||||
|     runs-on: windows-latest |     runs-on: windows-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '14' |           node-version: '14' | ||||||
|           architecture: 'x64' # optional, x64 or x86. If not specified, x64 will be used by default |           architecture: 'x64' # optional, x64 or x86. If not specified, x64 will be used by default | ||||||
| @@ -118,8 +118,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '20.0.0-v8-canary' # it will install the latest v8 canary release for node 20.0.0 |           node-version: '20.0.0-v8-canary' # it will install the latest v8 canary release for node 20.0.0 | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -133,8 +133,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '20-v8-canary' # it will install the latest v8 canary release for node 20 |           node-version: '20-v8-canary' # it will install the latest v8 canary release for node 20 | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -149,8 +149,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: 'v20.1.1-v8-canary20221103f7e2421e91' |           node-version: 'v20.1.1-v8-canary20221103f7e2421e91' | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -169,8 +169,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '16-nightly' # it will install the latest nightly release for node 16 |           node-version: '16-nightly' # it will install the latest nightly release for node 16 | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -185,8 +185,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '16.0.0-nightly' # it will install the latest nightly release for node 16.0.0 |           node-version: '16.0.0-nightly' # it will install the latest nightly release for node 16.0.0 | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -201,8 +201,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '16.0.0-nightly20210420a0261d231c' |           node-version: '16.0.0-nightly20210420a0261d231c' | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -219,8 +219,8 @@ jobs: | |||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     name: Node sample |     name: Node sample | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - uses: actions/setup-node@v4 |       - uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: '16.0.0-rc.1' |           node-version: '16.0.0-rc.1' | ||||||
|       - run: npm ci |       - run: npm ci | ||||||
| @@ -236,8 +236,8 @@ The action follows [actions/cache](https://github.com/actions/cache/blob/main/ex | |||||||
| Yarn caching handles both yarn versions: 1 or 2. | Yarn caching handles both yarn versions: 1 or 2. | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14' |     node-version: '14' | ||||||
|     cache: 'yarn' |     cache: 'yarn' | ||||||
| @@ -255,11 +255,11 @@ steps: | |||||||
| # NOTE: pnpm caching support requires pnpm version >= 6.10.0 | # NOTE: pnpm caching support requires pnpm version >= 6.10.0 | ||||||
|  |  | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: pnpm/action-setup@v2 | - uses: pnpm/action-setup@v2 | ||||||
|   with: |   with: | ||||||
|     version: 6.32.9 |     version: 6.32.9 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14' |     node-version: '14' | ||||||
|     cache: 'pnpm' |     cache: 'pnpm' | ||||||
| @@ -274,8 +274,8 @@ steps: | |||||||
| **Using wildcard patterns to cache dependencies** | **Using wildcard patterns to cache dependencies** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14' |     node-version: '14' | ||||||
|     cache: 'npm' |     cache: 'npm' | ||||||
| @@ -287,8 +287,8 @@ steps: | |||||||
| **Using a list of file paths to cache dependencies** | **Using a list of file paths to cache dependencies** | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14' |     node-version: '14' | ||||||
|     cache: 'npm' |     cache: 'npm' | ||||||
| @@ -324,9 +324,9 @@ jobs: | |||||||
|             architecture: x86 |             architecture: x86 | ||||||
|     name: Node ${{ matrix.node_version }} - ${{ matrix.architecture }} on ${{ matrix.os }} |     name: Node ${{ matrix.node_version }} - ${{ matrix.architecture }} on ${{ matrix.os }} | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v5 | ||||||
|       - name: Setup node |       - name: Setup node | ||||||
|         uses: actions/setup-node@v4 |         uses: actions/setup-node@v5 | ||||||
|         with: |         with: | ||||||
|           node-version: ${{ matrix.node_version }} |           node-version: ${{ matrix.node_version }} | ||||||
|           architecture: ${{ matrix.architecture }} |           architecture: ${{ matrix.architecture }} | ||||||
| @@ -337,8 +337,8 @@ jobs: | |||||||
| ## Publish to npmjs and GPR with npm | ## Publish to npmjs and GPR with npm | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14.x' |     node-version: '14.x' | ||||||
|     registry-url: 'https://registry.npmjs.org' |     registry-url: 'https://registry.npmjs.org' | ||||||
| @@ -346,7 +346,7 @@ steps: | |||||||
| - run: npm publish | - run: npm publish | ||||||
|   env: |   env: | ||||||
|     NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} |     NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     registry-url: 'https://npm.pkg.github.com' |     registry-url: 'https://npm.pkg.github.com' | ||||||
| - run: npm publish | - run: npm publish | ||||||
| @@ -357,8 +357,8 @@ steps: | |||||||
| ## Publish to npmjs and GPR with yarn | ## Publish to npmjs and GPR with yarn | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14.x' |     node-version: '14.x' | ||||||
|     registry-url: <registry url> |     registry-url: <registry url> | ||||||
| @@ -366,7 +366,7 @@ steps: | |||||||
| - run: yarn publish | - run: yarn publish | ||||||
|   env: |   env: | ||||||
|     NODE_AUTH_TOKEN: ${{ secrets.YARN_TOKEN }} |     NODE_AUTH_TOKEN: ${{ secrets.YARN_TOKEN }} | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     registry-url: 'https://npm.pkg.github.com' |     registry-url: 'https://npm.pkg.github.com' | ||||||
| - run: yarn publish | - run: yarn publish | ||||||
| @@ -377,8 +377,8 @@ steps: | |||||||
| ## Use private packages | ## Use private packages | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14.x' |     node-version: '14.x' | ||||||
|     registry-url: 'https://registry.npmjs.org' |     registry-url: 'https://registry.npmjs.org' | ||||||
| @@ -397,8 +397,8 @@ Below you can find a sample "Setup .yarnrc.yml" step, that is going to allow you | |||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| steps: | steps: | ||||||
| - uses: actions/checkout@v4 | - uses: actions/checkout@v5 | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14.x' |     node-version: '14.x' | ||||||
| - name: Setup .yarnrc.yml | - name: Setup .yarnrc.yml | ||||||
| @@ -427,7 +427,7 @@ It is possible to specify a token to authenticate with the mirror using the `mir | |||||||
| The token will be passed as a bearer token in the `Authorization` header. | The token will be passed as a bearer token in the `Authorization` header. | ||||||
|  |  | ||||||
| ```yaml | ```yaml | ||||||
| - uses: actions/setup-node@v4 | - uses: actions/setup-node@v5 | ||||||
|   with: |   with: | ||||||
|     node-version: '14.x' |     node-version: '14.x' | ||||||
|     mirror: 'https://nodejs.org/dist' |     mirror: 'https://nodejs.org/dist' | ||||||
|   | |||||||
							
								
								
									
										232
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										232
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -1,12 +1,12 @@ | |||||||
| { | { | ||||||
|   "name": "setup-node", |   "name": "setup-node", | ||||||
|   "version": "4.0.0", |   "version": "5.0.0", | ||||||
|   "lockfileVersion": 3, |   "lockfileVersion": 3, | ||||||
|   "requires": true, |   "requires": true, | ||||||
|   "packages": { |   "packages": { | ||||||
|     "": { |     "": { | ||||||
|       "name": "setup-node", |       "name": "setup-node", | ||||||
|       "version": "4.0.0", |       "version": "5.0.0", | ||||||
|       "license": "MIT", |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/cache": "^4.0.3", |         "@actions/cache": "^4.0.3", | ||||||
| @@ -22,7 +22,7 @@ | |||||||
|       }, |       }, | ||||||
|       "devDependencies": { |       "devDependencies": { | ||||||
|         "@types/jest": "^29.5.14", |         "@types/jest": "^29.5.14", | ||||||
|         "@types/node": "^20.11.25", |         "@types/node": "^24.1.0", | ||||||
|         "@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", | ||||||
| @@ -37,6 +37,9 @@ | |||||||
|         "prettier": "^2.8.4", |         "prettier": "^2.8.4", | ||||||
|         "ts-jest": "^29.1.2", |         "ts-jest": "^29.1.2", | ||||||
|         "typescript": "^5.4.2" |         "typescript": "^5.4.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=24.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@aashutoshrathi/word-wrap": { |     "node_modules/@aashutoshrathi/word-wrap": { | ||||||
| @@ -224,12 +227,14 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@azure/core-http/node_modules/form-data": { |     "node_modules/@azure/core-http/node_modules/form-data": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.4", | ||||||
|       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", | ||||||
|       "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", |       "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "asynckit": "^0.4.0", |         "asynckit": "^0.4.0", | ||||||
|         "combined-stream": "^1.0.8", |         "combined-stream": "^1.0.8", | ||||||
|  |         "es-set-tostringtag": "^2.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|         "mime-types": "^2.1.12" |         "mime-types": "^2.1.12" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
| @@ -1778,11 +1783,12 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/node": { |     "node_modules/@types/node": { | ||||||
|       "version": "20.11.25", |       "version": "24.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.25.tgz", |       "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", | ||||||
|       "integrity": "sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==", |       "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", | ||||||
|  |       "license": "MIT", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "undici-types": "~5.26.4" |         "undici-types": "~7.8.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/node-fetch": { |     "node_modules/@types/node-fetch": { | ||||||
| @@ -1795,12 +1801,14 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@types/node-fetch/node_modules/form-data": { |     "node_modules/@types/node-fetch/node_modules/form-data": { | ||||||
|       "version": "4.0.0", |       "version": "4.0.4", | ||||||
|       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", |       "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", | ||||||
|       "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", |       "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "asynckit": "^0.4.0", |         "asynckit": "^0.4.0", | ||||||
|         "combined-stream": "^1.0.8", |         "combined-stream": "^1.0.8", | ||||||
|  |         "es-set-tostringtag": "^2.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|         "mime-types": "^2.1.12" |         "mime-types": "^2.1.12" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
| @@ -2306,9 +2314,9 @@ | |||||||
|       "license": "Apache-2.0" |       "license": "Apache-2.0" | ||||||
|     }, |     }, | ||||||
|     "node_modules/brace-expansion": { |     "node_modules/brace-expansion": { | ||||||
|       "version": "1.1.11", |       "version": "1.1.12", | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", | ||||||
|       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", |       "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "balanced-match": "^1.0.0", |         "balanced-match": "^1.0.0", | ||||||
|         "concat-map": "0.0.1" |         "concat-map": "0.0.1" | ||||||
| @@ -2385,6 +2393,18 @@ | |||||||
|       "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", |       "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", | ||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/call-bind-apply-helpers": { | ||||||
|  |       "version": "1.0.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", | ||||||
|  |       "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "function-bind": "^1.1.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/callsites": { |     "node_modules/callsites": { | ||||||
|       "version": "3.1.0", |       "version": "3.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", |       "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", | ||||||
| @@ -2676,6 +2696,19 @@ | |||||||
|         "node": ">=6.0.0" |         "node": ">=6.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/dunder-proto": { | ||||||
|  |       "version": "1.0.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", | ||||||
|  |       "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "call-bind-apply-helpers": "^1.0.1", | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "gopd": "^1.2.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/electron-to-chromium": { |     "node_modules/electron-to-chromium": { | ||||||
|       "version": "1.4.563", |       "version": "1.4.563", | ||||||
|       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz", |       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz", | ||||||
| @@ -2709,6 +2742,47 @@ | |||||||
|         "is-arrayish": "^0.2.1" |         "is-arrayish": "^0.2.1" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/es-define-property": { | ||||||
|  |       "version": "1.0.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", | ||||||
|  |       "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/es-errors": { | ||||||
|  |       "version": "1.3.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", | ||||||
|  |       "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/es-object-atoms": { | ||||||
|  |       "version": "1.1.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", | ||||||
|  |       "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "es-errors": "^1.3.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/es-set-tostringtag": { | ||||||
|  |       "version": "2.1.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", | ||||||
|  |       "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "get-intrinsic": "^1.2.6", | ||||||
|  |         "has-tostringtag": "^1.0.2", | ||||||
|  |         "hasown": "^2.0.2" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/escalade": { |     "node_modules/escalade": { | ||||||
|       "version": "3.1.1", |       "version": "3.1.1", | ||||||
|       "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", |       "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", | ||||||
| @@ -3223,13 +3297,16 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "node_modules/form-data": { |     "node_modules/form-data": { | ||||||
|       "version": "2.5.1", |       "version": "2.5.5", | ||||||
|       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", |       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.5.tgz", | ||||||
|       "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", |       "integrity": "sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "asynckit": "^0.4.0", |         "asynckit": "^0.4.0", | ||||||
|         "combined-stream": "^1.0.6", |         "combined-stream": "^1.0.8", | ||||||
|         "mime-types": "^2.1.12" |         "es-set-tostringtag": "^2.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|  |         "mime-types": "^2.1.35", | ||||||
|  |         "safe-buffer": "^5.2.1" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": ">= 0.12" |         "node": ">= 0.12" | ||||||
| @@ -3259,7 +3336,6 @@ | |||||||
|       "version": "1.1.2", |       "version": "1.1.2", | ||||||
|       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", |       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", | ||||||
|       "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", |       "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", | ||||||
|       "dev": true, |  | ||||||
|       "funding": { |       "funding": { | ||||||
|         "url": "https://github.com/sponsors/ljharb" |         "url": "https://github.com/sponsors/ljharb" | ||||||
|       } |       } | ||||||
| @@ -3282,6 +3358,29 @@ | |||||||
|         "node": "6.* || 8.* || >= 10.*" |         "node": "6.* || 8.* || >= 10.*" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/get-intrinsic": { | ||||||
|  |       "version": "1.3.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", | ||||||
|  |       "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "call-bind-apply-helpers": "^1.0.2", | ||||||
|  |         "es-define-property": "^1.0.1", | ||||||
|  |         "es-errors": "^1.3.0", | ||||||
|  |         "es-object-atoms": "^1.1.1", | ||||||
|  |         "function-bind": "^1.1.2", | ||||||
|  |         "get-proto": "^1.0.1", | ||||||
|  |         "gopd": "^1.2.0", | ||||||
|  |         "has-symbols": "^1.1.0", | ||||||
|  |         "hasown": "^2.0.2", | ||||||
|  |         "math-intrinsics": "^1.1.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/get-package-type": { |     "node_modules/get-package-type": { | ||||||
|       "version": "0.1.0", |       "version": "0.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", |       "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", | ||||||
| @@ -3291,6 +3390,18 @@ | |||||||
|         "node": ">=8.0.0" |         "node": ">=8.0.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/get-proto": { | ||||||
|  |       "version": "1.0.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", | ||||||
|  |       "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "dunder-proto": "^1.0.1", | ||||||
|  |         "es-object-atoms": "^1.0.0" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/get-stream": { |     "node_modules/get-stream": { | ||||||
|       "version": "6.0.1", |       "version": "6.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", |       "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", | ||||||
| @@ -3370,6 +3481,17 @@ | |||||||
|         "url": "https://github.com/sponsors/sindresorhus" |         "url": "https://github.com/sponsors/sindresorhus" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/gopd": { | ||||||
|  |       "version": "1.2.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", | ||||||
|  |       "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/graceful-fs": { |     "node_modules/graceful-fs": { | ||||||
|       "version": "4.2.11", |       "version": "4.2.11", | ||||||
|       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", |       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", | ||||||
| @@ -3391,11 +3513,35 @@ | |||||||
|         "node": ">=8" |         "node": ">=8" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/has-symbols": { | ||||||
|  |       "version": "1.1.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", | ||||||
|  |       "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/has-tostringtag": { | ||||||
|  |       "version": "1.0.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", | ||||||
|  |       "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "has-symbols": "^1.0.3" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/ljharb" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/hasown": { |     "node_modules/hasown": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.2", | ||||||
|       "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", |       "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", | ||||||
|       "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", |       "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", | ||||||
|       "dev": true, |  | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "function-bind": "^1.1.2" |         "function-bind": "^1.1.2" | ||||||
|       }, |       }, | ||||||
| @@ -4380,6 +4526,14 @@ | |||||||
|         "tmpl": "1.0.5" |         "tmpl": "1.0.5" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/math-intrinsics": { | ||||||
|  |       "version": "1.1.0", | ||||||
|  |       "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", | ||||||
|  |       "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">= 0.4" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/merge-stream": { |     "node_modules/merge-stream": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", |       "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", | ||||||
| @@ -5006,6 +5160,25 @@ | |||||||
|         "queue-microtask": "^1.2.2" |         "queue-microtask": "^1.2.2" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/safe-buffer": { | ||||||
|  |       "version": "5.2.1", | ||||||
|  |       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", | ||||||
|  |       "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", | ||||||
|  |       "funding": [ | ||||||
|  |         { | ||||||
|  |           "type": "github", | ||||||
|  |           "url": "https://github.com/sponsors/feross" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |           "type": "patreon", | ||||||
|  |           "url": "https://www.patreon.com/feross" | ||||||
|  |         }, | ||||||
|  |         { | ||||||
|  |           "type": "consulting", | ||||||
|  |           "url": "https://feross.org/support" | ||||||
|  |         } | ||||||
|  |       ] | ||||||
|  |     }, | ||||||
|     "node_modules/sax": { |     "node_modules/sax": { | ||||||
|       "version": "1.3.0", |       "version": "1.3.0", | ||||||
|       "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", |       "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", | ||||||
| @@ -5383,9 +5556,10 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/undici-types": { |     "node_modules/undici-types": { | ||||||
|       "version": "5.26.5", |       "version": "7.8.0", | ||||||
|       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", |       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", | ||||||
|       "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" |       "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", | ||||||
|  |       "license": "MIT" | ||||||
|     }, |     }, | ||||||
|     "node_modules/universal-user-agent": { |     "node_modules/universal-user-agent": { | ||||||
|       "version": "6.0.1", |       "version": "6.0.1", | ||||||
|   | |||||||
| @@ -1,9 +1,12 @@ | |||||||
| { | { | ||||||
|   "name": "setup-node", |   "name": "setup-node", | ||||||
|   "version": "4.0.0", |   "version": "5.0.0", | ||||||
|   "private": true, |   "private": true, | ||||||
|   "description": "setup node action", |   "description": "setup node action", | ||||||
|   "main": "lib/setup-node.js", |   "main": "lib/setup-node.js", | ||||||
|  |   "engines": { | ||||||
|  |     "node": ">=24.0.0" | ||||||
|  |   }, | ||||||
|   "scripts": { |   "scripts": { | ||||||
|     "build": "ncc build -o dist/setup src/setup-node.ts && ncc build -o dist/cache-save src/cache-save.ts", |     "build": "ncc build -o dist/setup src/setup-node.ts && ncc build -o dist/cache-save src/cache-save.ts", | ||||||
|     "format": "prettier --no-error-on-unmatched-pattern --config ./.prettierrc.js --write \"**/*.{ts,yml,yaml}\"", |     "format": "prettier --no-error-on-unmatched-pattern --config ./.prettierrc.js --write \"**/*.{ts,yml,yaml}\"", | ||||||
| @@ -38,7 +41,7 @@ | |||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@types/jest": "^29.5.14", |     "@types/jest": "^29.5.14", | ||||||
|     "@types/node": "^20.11.25", |     "@types/node": "^24.1.0", | ||||||
|     "@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", | ||||||
|   | |||||||
| @@ -7,6 +7,7 @@ import {getPackageManagerInfo} from './cache-utils'; | |||||||
| // Catch and log any unhandled exceptions.  These exceptions can leak out of the uploadChunk method in | // Catch and log any unhandled exceptions.  These exceptions can leak out of the uploadChunk method in | ||||||
| // @actions/toolkit when a failed upload closes the file descriptor causing any in-process reads to | // @actions/toolkit when a failed upload closes the file descriptor causing any in-process reads to | ||||||
| // throw an uncaught exception.  Instead of failing this action, just warn. | // throw an uncaught exception.  Instead of failing this action, just warn. | ||||||
|  |  | ||||||
| process.on('uncaughtException', e => { | process.on('uncaughtException', e => { | ||||||
|   const warningPrefix = '[warning]'; |   const warningPrefix = '[warning]'; | ||||||
|   core.info(`${warningPrefix}${e.message}`); |   core.info(`${warningPrefix}${e.message}`); | ||||||
|   | |||||||
							
								
								
									
										34
									
								
								src/main.ts
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								src/main.ts
									
									
									
									
									
								
							| @@ -1,6 +1,7 @@ | |||||||
| import * as core from '@actions/core'; | import * as core from '@actions/core'; | ||||||
|  |  | ||||||
| import os from 'os'; | import os from 'os'; | ||||||
|  | import fs from 'fs'; | ||||||
|  |  | ||||||
| import * as auth from './authutil'; | import * as auth from './authutil'; | ||||||
| import * as path from 'path'; | import * as path from 'path'; | ||||||
| @@ -20,6 +21,9 @@ export async function run() { | |||||||
|  |  | ||||||
|     let arch = core.getInput('architecture'); |     let arch = core.getInput('architecture'); | ||||||
|     const cache = core.getInput('cache'); |     const cache = core.getInput('cache'); | ||||||
|  |     const packagemanagercache = | ||||||
|  |       (core.getInput('package-manager-cache') || 'true').toUpperCase() === | ||||||
|  |       'TRUE'; | ||||||
|  |  | ||||||
|     // if architecture supplied but node-version is not |     // if architecture supplied but node-version is not | ||||||
|     // if we don't throw a warning, the already installed x64 node will be used which is not probably what user meant. |     // if we don't throw a warning, the already installed x64 node will be used which is not probably what user meant. | ||||||
| @@ -63,10 +67,14 @@ export async function run() { | |||||||
|       auth.configAuthentication(registryUrl, alwaysAuth); |       auth.configAuthentication(registryUrl, alwaysAuth); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     const resolvedPackageManager = getNameFromPackageManagerField(); | ||||||
|  |     const cacheDependencyPath = core.getInput('cache-dependency-path'); | ||||||
|     if (cache && isCacheFeatureAvailable()) { |     if (cache && isCacheFeatureAvailable()) { | ||||||
|       core.saveState(State.CachePackageManager, cache); |       core.saveState(State.CachePackageManager, cache); | ||||||
|       const cacheDependencyPath = core.getInput('cache-dependency-path'); |  | ||||||
|       await restoreCache(cache, cacheDependencyPath); |       await restoreCache(cache, cacheDependencyPath); | ||||||
|  |     } else if (resolvedPackageManager && packagemanagercache) { | ||||||
|  |       core.saveState(State.CachePackageManager, resolvedPackageManager); | ||||||
|  |       await restoreCache(resolvedPackageManager, cacheDependencyPath); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     const matchersPath = path.join(__dirname, '../..', '.github'); |     const matchersPath = path.join(__dirname, '../..', '.github'); | ||||||
| @@ -117,3 +125,27 @@ function resolveVersionInput(): string { | |||||||
|  |  | ||||||
|   return version; |   return version; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | export function getNameFromPackageManagerField(): string | undefined { | ||||||
|  |   // Check packageManager field in package.json | ||||||
|  |   const SUPPORTED_PACKAGE_MANAGERS = ['npm', 'yarn', 'pnpm']; | ||||||
|  |   try { | ||||||
|  |     const packageJson = JSON.parse( | ||||||
|  |       fs.readFileSync( | ||||||
|  |         path.join(process.env.GITHUB_WORKSPACE!, 'package.json'), | ||||||
|  |         'utf-8' | ||||||
|  |       ) | ||||||
|  |     ); | ||||||
|  |     const pm = packageJson.packageManager; | ||||||
|  |     if (typeof pm === 'string') { | ||||||
|  |       const regex = new RegExp( | ||||||
|  |         `^(?:\\^)?(${SUPPORTED_PACKAGE_MANAGERS.join('|')})@` | ||||||
|  |       ); | ||||||
|  |       const match = pm.match(regex); | ||||||
|  |       return match ? match[1] : undefined; | ||||||
|  |     } | ||||||
|  |     return undefined; | ||||||
|  |   } catch (err) { | ||||||
|  |     return undefined; | ||||||
|  |   } | ||||||
|  | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user