mirror of
				https://github.com/actions/checkout.git
				synced 2025-10-31 13:58:09 +08:00 
			
		
		
		
	Compare commits
	
		
			16 Commits
		
	
	
		
			v4.1.6
			...
			68a03db899
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 68a03db899 | ||
|  | eef61447b9 | ||
|  | 6b42224f41 | ||
|  | de5a000abf | ||
|  | d632683dd7 | ||
|  | 6d193bf280 | ||
|  | db0cee9a51 | ||
|  | b684943689 | ||
|  | 2d7d9f7ff5 | ||
|  | 9a9194f871 | ||
|  | dd960bd3c3 | ||
|  | 692973e3d9 | ||
|  | 6ccd57f4c5 | ||
|  | b17fe1e4d5 | ||
|  | b80ff79f17 | ||
|  | b1ec3021b8 | 
							
								
								
									
										2
									
								
								.github/workflows/check-dist.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/check-dist.yml
									
									
									
									
										vendored
									
									
								
							| @@ -22,7 +22,7 @@ jobs: | ||||
|     runs-on: ubuntu-latest | ||||
|  | ||||
|     steps: | ||||
|       - uses: actions/checkout@v3 | ||||
|       - uses: actions/checkout@v4.1.6 | ||||
|  | ||||
|       - name: Set Node.js 20.x | ||||
|         uses: actions/setup-node@v4 | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -39,7 +39,7 @@ jobs: | ||||
|  | ||||
|     steps: | ||||
|     - name: Checkout repository | ||||
|       uses: actions/checkout@v3 | ||||
|       uses: actions/checkout@v4.1.6 | ||||
|  | ||||
|     - name: Initialize CodeQL | ||||
|       uses: github/codeql-action/init@v3 | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/licensed.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/licensed.yml
									
									
									
									
										vendored
									
									
								
							| @@ -9,6 +9,6 @@ jobs: | ||||
|     runs-on: ubuntu-latest | ||||
|     name: Check licenses | ||||
|     steps: | ||||
|       - uses: actions/checkout@v3 | ||||
|       - uses: actions/checkout@v4.1.6 | ||||
|       - run: npm ci | ||||
|       - run: npm run licensed-check | ||||
							
								
								
									
										20
									
								
								.github/workflows/publish-immutable-actions.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.github/workflows/publish-immutable-actions.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,20 @@ | ||||
| name: 'Publish Immutable Action Version' | ||||
|  | ||||
| on: | ||||
|   release: | ||||
|     types: [published] | ||||
|  | ||||
| jobs: | ||||
|   publish: | ||||
|     runs-on: ubuntu-latest | ||||
|     permissions: | ||||
|       contents: read | ||||
|       id-token: write | ||||
|       packages: write | ||||
|  | ||||
|     steps: | ||||
|       - name: Checking out | ||||
|         uses: actions/checkout@v4 | ||||
|       - name: Publish | ||||
|         id: publish | ||||
|         uses: actions/publish-immutable-action@0.0.3 | ||||
							
								
								
									
										54
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										54
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							| @@ -19,7 +19,7 @@ jobs: | ||||
|       - uses: actions/setup-node@v4 | ||||
|         with: | ||||
|           node-version: 20.x | ||||
|       - uses: actions/checkout@v3 | ||||
|       - uses: actions/checkout@v4.1.6 | ||||
|       - run: npm ci | ||||
|       - run: npm run build | ||||
|       - run: npm run format-check | ||||
| @@ -37,7 +37,7 @@ jobs: | ||||
|     steps: | ||||
|       # Clone this repo | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v4.1.1 | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|  | ||||
|       # Basic checkout | ||||
|       - name: Checkout basic | ||||
| @@ -202,7 +202,7 @@ jobs: | ||||
|     steps: | ||||
|       # Clone this repo | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|  | ||||
|       # Basic checkout using git | ||||
|       - name: Checkout basic | ||||
| @@ -234,7 +234,7 @@ jobs: | ||||
|     steps: | ||||
|       # Clone this repo | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|  | ||||
|       # Basic checkout using git | ||||
|       - name: Checkout basic | ||||
| @@ -264,13 +264,13 @@ jobs: | ||||
|     steps: | ||||
|       # Clone this repo | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v3 | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|         with: | ||||
|           path: v3 | ||||
|           path: localClone | ||||
|  | ||||
|       # Basic checkout using git | ||||
|       - name: Checkout basic | ||||
|         uses: ./v3 | ||||
|         uses: ./localClone | ||||
|         with: | ||||
|           ref: test-data/v2/basic | ||||
|       - name: Verify basic | ||||
| @@ -291,7 +291,41 @@ jobs: | ||||
|           git fetch --no-tags --depth=1 origin +refs/heads/main:refs/remotes/origin/main | ||||
|  | ||||
|       # needed to make checkout post cleanup succeed | ||||
|       - name: Fix Checkout v3 | ||||
|         uses: actions/checkout@v3 | ||||
|       - name: Fix Checkout v4 | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|         with: | ||||
|           path: v3 | ||||
|           path: localClone | ||||
|  | ||||
|   test-output: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       # Clone this repo | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|  | ||||
|       # Basic checkout using git | ||||
|       - name: Checkout basic | ||||
|         id: checkout | ||||
|         uses: ./ | ||||
|         with: | ||||
|           ref: test-data/v2/basic | ||||
|  | ||||
|       # Verify output | ||||
|       - name: Verify output | ||||
|         run: | | ||||
|           echo "Commit: ${{ steps.checkout.outputs.commit }}" | ||||
|           echo "Ref: ${{ steps.checkout.outputs.ref }}" | ||||
|  | ||||
|           if [ "${{ steps.checkout.outputs.ref }}" != "test-data/v2/basic" ]; then | ||||
|             echo "Expected ref to be test-data/v2/basic" | ||||
|             exit 1 | ||||
|           fi | ||||
|  | ||||
|           if [ "${{ steps.checkout.outputs.commit }}" != "82f71901cf8c021332310dcc8cdba84c4193ff5d" ]; then | ||||
|             echo "Expected commit to be 82f71901cf8c021332310dcc8cdba84c4193ff5d" | ||||
|             exit 1 | ||||
|           fi | ||||
|  | ||||
|       # needed to make checkout post cleanup succeed | ||||
|       - name: Fix Checkout | ||||
|         uses: actions/checkout@v4.1.6 | ||||
|   | ||||
							
								
								
									
										2
									
								
								.github/workflows/update-main-version.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/update-main-version.yml
									
									
									
									
										vendored
									
									
								
							| @@ -22,7 +22,7 @@ jobs: | ||||
|     # Note this update workflow can also be used as a rollback tool. | ||||
|     # For that reason, it's best to pin `actions/checkout` to a known, stable version | ||||
|     # (typically, about two releases back). | ||||
|     - uses: actions/checkout@v4.1.1 | ||||
|     - uses: actions/checkout@v4.1.6 | ||||
|       with: | ||||
|         fetch-depth: 0 | ||||
|     - name: Git config | ||||
|   | ||||
							
								
								
									
										4
									
								
								.github/workflows/update-test-ubuntu-git.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/update-test-ubuntu-git.yml
									
									
									
									
										vendored
									
									
								
							| @@ -31,7 +31,7 @@ jobs: | ||||
|       # Use `docker/login-action` to log in to GHCR.io.  | ||||
|       # Once published, the packages are scoped to the account defined here. | ||||
|       - name: Log in to the ghcr.io container registry | ||||
|         uses: docker/login-action@v3.1.0 | ||||
|         uses: docker/login-action@v3.3.0 | ||||
|         with: | ||||
|           registry: ${{ env.REGISTRY }} | ||||
|           username: ${{ github.actor }} | ||||
| @@ -48,7 +48,7 @@ jobs: | ||||
|  | ||||
|       # Use `docker/build-push-action` to build (and optionally publish) the image.  | ||||
|       - name: Build Docker Image (with optional Push) | ||||
|         uses: docker/build-push-action@v5.3.0 | ||||
|         uses: docker/build-push-action@v6.5.0 | ||||
|         with: | ||||
|           context: . | ||||
|           file: images/test-ubuntu-git.Dockerfile | ||||
|   | ||||
							
								
								
									
										14
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								CHANGELOG.md
									
									
									
									
									
								
							| @@ -1,5 +1,19 @@ | ||||
| # Changelog | ||||
|  | ||||
| ## v4.2.1 | ||||
| * Check out other refs/* by commit if provided, fall back to ref by @orhantoy in https://github.com/actions/checkout/pull/1924 | ||||
|  | ||||
| ## v4.2.0 | ||||
|  | ||||
| * Add Ref and Commit outputs by @lucacome in https://github.com/actions/checkout/pull/1180 | ||||
| * Dependency updates by @dependabot- https://github.com/actions/checkout/pull/1777, https://github.com/actions/checkout/pull/1872 | ||||
|  | ||||
| ## v4.1.7 | ||||
| * Bump the minor-npm-dependencies group across 1 directory with 4 updates by @dependabot in https://github.com/actions/checkout/pull/1739 | ||||
| * Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/actions/checkout/pull/1697 | ||||
| * Check out other refs/* by commit by @orhantoy in https://github.com/actions/checkout/pull/1774 | ||||
| * Pin actions/checkout's own workflows to a known, good, stable version. by @jww3 in https://github.com/actions/checkout/pull/1776 | ||||
|  | ||||
| ## v4.1.6 | ||||
| * Check platform to set archive extension appropriately by @cory-miller in https://github.com/actions/checkout/pull/1732 | ||||
|  | ||||
|   | ||||
							
								
								
									
										15
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								README.md
									
									
									
									
									
								
							| @@ -126,6 +126,11 @@ Please refer to the [release page](https://github.com/actions/checkout/releases/ | ||||
|     # running from unless specified. Example URLs are https://github.com or | ||||
|     # https://my-ghes-server.example.com | ||||
|     github-server-url: '' | ||||
|  | ||||
|     # Use the given object format when creating local repository.  Specifically, use | ||||
|     # 'sha256' to checkout a SHA-256 repository. | ||||
|     # Defualt: null | ||||
|     object-format: '' | ||||
| ``` | ||||
| <!-- end usage --> | ||||
|  | ||||
| @@ -143,6 +148,7 @@ Please refer to the [release page](https://github.com/actions/checkout/releases/ | ||||
| - [Checkout pull request HEAD commit instead of merge commit](#Checkout-pull-request-HEAD-commit-instead-of-merge-commit) | ||||
| - [Checkout pull request on closed event](#Checkout-pull-request-on-closed-event) | ||||
| - [Push a commit using the built-in token](#Push-a-commit-using-the-built-in-token) | ||||
| - [Checkout SHA-256 repository](#checkout-sha-256-repository) | ||||
|  | ||||
| ## Fetch only the root files | ||||
|  | ||||
| @@ -286,6 +292,15 @@ jobs: | ||||
|           git commit -m "generated" | ||||
|           git push | ||||
| ``` | ||||
| *NOTE:* The user email is `{user.id}+{user.login}@users.noreply.github.com`. See users API: https://api.github.com/users/github-actions%5Bbot%5D | ||||
|  | ||||
| ## Checkout SHA-256 repository | ||||
|  | ||||
| ```yaml | ||||
| - uses: actions/checkout@v4 | ||||
|   with: | ||||
|     object-format: sha256 | ||||
| ``` | ||||
|  | ||||
| # License | ||||
|  | ||||
|   | ||||
| @@ -824,7 +824,8 @@ async function setup(testName: string): Promise<void> { | ||||
|     sshUser: '', | ||||
|     workflowOrganizationId: 123456, | ||||
|     setSafeDirectory: true, | ||||
|     githubServerUrl: githubServerUrl | ||||
|     githubServerUrl: githubServerUrl, | ||||
|     objectFormat: undefined | ||||
|   } | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -375,4 +375,31 @@ describe('Test fetchDepth and fetchTags options', () => { | ||||
|       expect.any(Object) | ||||
|     ) | ||||
|   }) | ||||
|  | ||||
|   it('should call execGit wiwth the correct arguments when sha256 is used', async () => { | ||||
|     jest.spyOn(exec, 'exec').mockImplementation(mockExec) | ||||
|  | ||||
|     const workingDirectory = 'test' | ||||
|     const lfs = false | ||||
|     const doSparseCheckout = false | ||||
|     git = await commandManager.createCommandManager( | ||||
|       workingDirectory, | ||||
|       lfs, | ||||
|       doSparseCheckout | ||||
|     ) | ||||
|  | ||||
|     await git.init({objectFormat: 'sha256'}) | ||||
|     // await git.init({objectFormat: undefined}) | ||||
|  | ||||
|     expect(mockExec).toHaveBeenCalledWith( | ||||
|       expect.any(String), | ||||
|       [ | ||||
|         'init', | ||||
|         '--object-format=sha256', | ||||
|         'test' | ||||
|       ], | ||||
|       expect.any(Object) | ||||
|     ) | ||||
|   }) | ||||
| }) | ||||
|  | ||||
|   | ||||
| @@ -67,6 +67,26 @@ describe('ref-helper tests', () => { | ||||
|     expect(checkoutInfo.startPoint).toBeFalsy() | ||||
|   }) | ||||
|  | ||||
|   it('getCheckoutInfo refs/', async () => { | ||||
|     const checkoutInfo = await refHelper.getCheckoutInfo( | ||||
|       git, | ||||
|       'refs/gh/queue/main/pr-123', | ||||
|       commit | ||||
|     ) | ||||
|     expect(checkoutInfo.ref).toBe(commit) | ||||
|     expect(checkoutInfo.startPoint).toBeFalsy() | ||||
|   }) | ||||
|  | ||||
|   it('getCheckoutInfo refs/ without commit', async () => { | ||||
|     const checkoutInfo = await refHelper.getCheckoutInfo( | ||||
|       git, | ||||
|       'refs/non-standard-ref', | ||||
|       '' | ||||
|     ) | ||||
|     expect(checkoutInfo.ref).toBe('refs/non-standard-ref') | ||||
|     expect(checkoutInfo.startPoint).toBeFalsy() | ||||
|   }) | ||||
|  | ||||
|   it('getCheckoutInfo unqualified branch only', async () => { | ||||
|     git.branchExists = jest.fn(async (remote: boolean, pattern: string) => { | ||||
|       return true | ||||
|   | ||||
| @@ -98,6 +98,11 @@ inputs: | ||||
|   github-server-url: | ||||
|     description: The base URL for the GitHub instance that you are trying to clone from, will use environment defaults to fetch from the same instance that the workflow is running from unless specified. Example URLs are https://github.com or https://my-ghes-server.example.com | ||||
|     required: false | ||||
| outputs: | ||||
|   ref: | ||||
|     description: 'The branch, tag or SHA that was checked out' | ||||
|   commit: | ||||
|     description: 'The commit SHA that was checked out' | ||||
| runs: | ||||
|   using: node20 | ||||
|   main: dist/index.js | ||||
|   | ||||
							
								
								
									
										28
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										28
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							| @@ -711,9 +711,13 @@ class GitCommandManager { | ||||
|     getWorkingDirectory() { | ||||
|         return this.workingDirectory; | ||||
|     } | ||||
|     init() { | ||||
|     init(options) { | ||||
|         return __awaiter(this, void 0, void 0, function* () { | ||||
|             yield this.execGit(['init', this.workingDirectory]); | ||||
|             yield this.execGit([ | ||||
|                 'init', | ||||
|                 ...((options === null || options === void 0 ? void 0 : options.objectFormat) ? [`--object-format=${options.objectFormat}`] : []), | ||||
|                 this.workingDirectory | ||||
|             ]); | ||||
|         }); | ||||
|     } | ||||
|     isDetached() { | ||||
| @@ -1238,7 +1242,7 @@ function getSource(settings) { | ||||
|             // Initialize the repository
 | ||||
|             if (!fsHelper.directoryExistsSync(path.join(settings.repositoryPath, '.git'))) { | ||||
|                 core.startGroup('Initializing the repository'); | ||||
|                 yield git.init(); | ||||
|                 yield git.init({ objectFormat: settings.objectFormat }); | ||||
|                 yield git.remoteAdd('origin', repositoryUrl); | ||||
|                 core.endGroup(); | ||||
|             } | ||||
| @@ -1355,7 +1359,8 @@ function getSource(settings) { | ||||
|             // Get commit information
 | ||||
|             const commitInfo = yield git.log1(); | ||||
|             // Log commit sha
 | ||||
|             yield git.log1("--format='%H'"); | ||||
|             const commitSHA = yield git.log1('--format=%H'); | ||||
|             core.setOutput('commit', commitSHA.trim()); | ||||
|             // Check for incorrect pull request merge commit
 | ||||
|             yield refHelper.checkCommitInfo(settings.authToken, commitInfo, settings.repositoryOwner, settings.repositoryName, settings.ref, settings.commit, settings.githubServerUrl); | ||||
|         } | ||||
| @@ -1835,6 +1840,14 @@ function getInputs() { | ||||
|         // Determine the GitHub URL that the repository is being hosted from
 | ||||
|         result.githubServerUrl = core.getInput('github-server-url'); | ||||
|         core.debug(`GitHub Host URL = ${result.githubServerUrl}`); | ||||
|         // Object format
 | ||||
|         const objectFormat = core.getInput('object-format'); | ||||
|         if (objectFormat) { | ||||
|             if (objectFormat != 'sha1' && objectFormat != 'sha256') { | ||||
|                 throw Error(`Invalid object format '${objectFormat}'`); | ||||
|             } | ||||
|             result.objectFormat = objectFormat; | ||||
|         } | ||||
|         return result; | ||||
|     }); | ||||
| } | ||||
| @@ -1897,6 +1910,7 @@ function run() { | ||||
|                 coreCommand.issueCommand('add-matcher', {}, path.join(__dirname, 'problem-matcher.json')); | ||||
|                 // Get sources
 | ||||
|                 yield gitSourceProvider.getSource(sourceSettings); | ||||
|                 core.setOutput('ref', sourceSettings.ref); | ||||
|             } | ||||
|             finally { | ||||
|                 // Unregister problem matcher
 | ||||
| @@ -2000,9 +2014,13 @@ function getCheckoutInfo(git, ref, commit) { | ||||
|             result.ref = `refs/remotes/pull/${branch}`; | ||||
|         } | ||||
|         // refs/tags/
 | ||||
|         else if (upperRef.startsWith('REFS/')) { | ||||
|         else if (upperRef.startsWith('REFS/TAGS/')) { | ||||
|             result.ref = ref; | ||||
|         } | ||||
|         // refs/
 | ||||
|         else if (upperRef.startsWith('REFS/')) { | ||||
|             result.ref = commit ? commit : ref; | ||||
|         } | ||||
|         // Unqualified ref, check for a matching branch or tag
 | ||||
|         else { | ||||
|             if (yield git.branchExists(true, `origin/${ref}`)) { | ||||
|   | ||||
							
								
								
									
										536
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										536
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -1,12 +1,12 @@ | ||||
| { | ||||
|   "name": "checkout", | ||||
|   "version": "4.1.6", | ||||
|   "version": "4.2.1", | ||||
|   "lockfileVersion": 3, | ||||
|   "requires": true, | ||||
|   "packages": { | ||||
|     "": { | ||||
|       "name": "checkout", | ||||
|       "version": "4.1.4", | ||||
|       "version": "4.2.1", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@actions/core": "^1.10.1", | ||||
| @@ -18,20 +18,20 @@ | ||||
|       }, | ||||
|       "devDependencies": { | ||||
|         "@types/jest": "^29.5.12", | ||||
|         "@types/node": "^20.12.7", | ||||
|         "@types/node": "^20.12.12", | ||||
|         "@types/uuid": "^9.0.8", | ||||
|         "@typescript-eslint/eslint-plugin": "^7.7.1", | ||||
|         "@typescript-eslint/parser": "^7.7.1", | ||||
|         "@typescript-eslint/eslint-plugin": "^7.9.0", | ||||
|         "@typescript-eslint/parser": "^7.9.0", | ||||
|         "@vercel/ncc": "^0.38.1", | ||||
|         "eslint": "^8.57.0", | ||||
|         "eslint-plugin-github": "^4.10.2", | ||||
|         "eslint-plugin-jest": "^28.2.0", | ||||
|         "eslint-plugin-jest": "^28.8.2", | ||||
|         "jest": "^29.7.0", | ||||
|         "jest-circus": "^29.7.0", | ||||
|         "js-yaml": "^4.1.0", | ||||
|         "prettier": "^3.2.5", | ||||
|         "ts-jest": "^29.1.2", | ||||
|         "typescript": "^5.4.5" | ||||
|         "prettier": "^3.3.3", | ||||
|         "ts-jest": "^29.2.5", | ||||
|         "typescript": "^5.5.4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@aashutoshrathi/word-wrap": { | ||||
| @@ -1581,12 +1581,6 @@ | ||||
|         "pretty-format": "^29.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@types/json-schema": { | ||||
|       "version": "7.0.15", | ||||
|       "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", | ||||
|       "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@types/json5": { | ||||
|       "version": "0.0.29", | ||||
|       "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", | ||||
| @@ -1594,20 +1588,14 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@types/node": { | ||||
|       "version": "20.12.7", | ||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", | ||||
|       "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", | ||||
|       "version": "20.12.12", | ||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", | ||||
|       "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "undici-types": "~5.26.4" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@types/semver": { | ||||
|       "version": "7.5.8", | ||||
|       "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", | ||||
|       "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@types/stack-utils": { | ||||
|       "version": "2.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", | ||||
| @@ -1636,21 +1624,19 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/eslint-plugin": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.7.1.tgz", | ||||
|       "integrity": "sha512-KwfdWXJBOviaBVhxO3p5TJiLpNuh2iyXyjmWN0f1nU87pwyvfS0EmjC6ukQVYVFJd/K1+0NWGPDXiyEyQorn0Q==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.9.0.tgz", | ||||
|       "integrity": "sha512-6e+X0X3sFe/G/54aC3jt0txuMTURqLyekmEHViqyA2VnxhLMpvA6nqmcjIy+Cr9tLDHPssA74BP5Mx9HQIxBEA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@eslint-community/regexpp": "^4.10.0", | ||||
|         "@typescript-eslint/scope-manager": "7.7.1", | ||||
|         "@typescript-eslint/type-utils": "7.7.1", | ||||
|         "@typescript-eslint/utils": "7.7.1", | ||||
|         "@typescript-eslint/visitor-keys": "7.7.1", | ||||
|         "debug": "^4.3.4", | ||||
|         "@typescript-eslint/scope-manager": "7.9.0", | ||||
|         "@typescript-eslint/type-utils": "7.9.0", | ||||
|         "@typescript-eslint/utils": "7.9.0", | ||||
|         "@typescript-eslint/visitor-keys": "7.9.0", | ||||
|         "graphemer": "^1.4.0", | ||||
|         "ignore": "^5.3.1", | ||||
|         "natural-compare": "^1.4.0", | ||||
|         "semver": "^7.6.0", | ||||
|         "ts-api-utils": "^1.3.0" | ||||
|       }, | ||||
|       "engines": { | ||||
| @@ -1670,49 +1656,16 @@ | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||
|       "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "yallist": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { | ||||
|       "version": "7.6.0", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", | ||||
|       "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "lru-cache": "^6.0.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "semver": "bin/semver.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||
|       "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/parser": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.7.1.tgz", | ||||
|       "integrity": "sha512-vmPzBOOtz48F6JAGVS/kZYk4EkXao6iGrD838sp1w3NQQC0W8ry/q641KU4PrG7AKNAf56NOcR8GOpH8l9FPCw==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.9.0.tgz", | ||||
|       "integrity": "sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/scope-manager": "7.7.1", | ||||
|         "@typescript-eslint/types": "7.7.1", | ||||
|         "@typescript-eslint/typescript-estree": "7.7.1", | ||||
|         "@typescript-eslint/visitor-keys": "7.7.1", | ||||
|         "@typescript-eslint/scope-manager": "7.9.0", | ||||
|         "@typescript-eslint/types": "7.9.0", | ||||
|         "@typescript-eslint/typescript-estree": "7.9.0", | ||||
|         "@typescript-eslint/visitor-keys": "7.9.0", | ||||
|         "debug": "^4.3.4" | ||||
|       }, | ||||
|       "engines": { | ||||
| @@ -1732,13 +1685,13 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/scope-manager": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.7.1.tgz", | ||||
|       "integrity": "sha512-PytBif2SF+9SpEUKynYn5g1RHFddJUcyynGpztX3l/ik7KmZEv19WCMhUBkHXPU9es/VWGD3/zg3wg90+Dh2rA==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.9.0.tgz", | ||||
|       "integrity": "sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/types": "7.7.1", | ||||
|         "@typescript-eslint/visitor-keys": "7.7.1" | ||||
|         "@typescript-eslint/types": "7.9.0", | ||||
|         "@typescript-eslint/visitor-keys": "7.9.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^18.18.0 || >=20.0.0" | ||||
| @@ -1749,13 +1702,13 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/type-utils": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.7.1.tgz", | ||||
|       "integrity": "sha512-ZksJLW3WF7o75zaBPScdW1Gbkwhd/lyeXGf1kQCxJaOeITscoSl0MjynVvCzuV5boUz/3fOI06Lz8La55mu29Q==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.9.0.tgz", | ||||
|       "integrity": "sha512-6Qy8dfut0PFrFRAZsGzuLoM4hre4gjzWJB6sUvdunCYZsYemTkzZNwF1rnGea326PHPT3zn5Lmg32M/xfJfByA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/typescript-estree": "7.7.1", | ||||
|         "@typescript-eslint/utils": "7.7.1", | ||||
|         "@typescript-eslint/typescript-estree": "7.9.0", | ||||
|         "@typescript-eslint/utils": "7.9.0", | ||||
|         "debug": "^4.3.4", | ||||
|         "ts-api-utils": "^1.3.0" | ||||
|       }, | ||||
| @@ -1776,9 +1729,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/types": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.7.1.tgz", | ||||
|       "integrity": "sha512-AmPmnGW1ZLTpWa+/2omPrPfR7BcbUU4oha5VIbSbS1a1Tv966bklvLNXxp3mrbc+P2j4MNOTfDffNsk4o0c6/w==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.9.0.tgz", | ||||
|       "integrity": "sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": "^18.18.0 || >=20.0.0" | ||||
| @@ -1789,13 +1742,13 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/typescript-estree": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.7.1.tgz", | ||||
|       "integrity": "sha512-CXe0JHCXru8Fa36dteXqmH2YxngKJjkQLjxzoj6LYwzZ7qZvgsLSc+eqItCrqIop8Vl2UKoAi0StVWu97FQZIQ==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.9.0.tgz", | ||||
|       "integrity": "sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/types": "7.7.1", | ||||
|         "@typescript-eslint/visitor-keys": "7.7.1", | ||||
|         "@typescript-eslint/types": "7.9.0", | ||||
|         "@typescript-eslint/visitor-keys": "7.9.0", | ||||
|         "debug": "^4.3.4", | ||||
|         "globby": "^11.1.0", | ||||
|         "is-glob": "^4.0.3", | ||||
| @@ -1816,26 +1769,11 @@ | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||
|       "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "yallist": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { | ||||
|       "version": "7.6.0", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", | ||||
|       "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", | ||||
|       "version": "7.6.2", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", | ||||
|       "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "lru-cache": "^6.0.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "semver": "bin/semver.js" | ||||
|       }, | ||||
| @@ -1843,25 +1781,16 @@ | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||
|       "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/utils": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.7.1.tgz", | ||||
|       "integrity": "sha512-QUvBxPEaBXf41ZBbaidKICgVL8Hin0p6prQDu6bbetWo39BKbWJxRsErOzMNT1rXvTll+J7ChrbmMCXM9rsvOQ==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.9.0.tgz", | ||||
|       "integrity": "sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@eslint-community/eslint-utils": "^4.4.0", | ||||
|         "@types/json-schema": "^7.0.15", | ||||
|         "@types/semver": "^7.5.8", | ||||
|         "@typescript-eslint/scope-manager": "7.7.1", | ||||
|         "@typescript-eslint/types": "7.7.1", | ||||
|         "@typescript-eslint/typescript-estree": "7.7.1", | ||||
|         "semver": "^7.6.0" | ||||
|         "@typescript-eslint/scope-manager": "7.9.0", | ||||
|         "@typescript-eslint/types": "7.9.0", | ||||
|         "@typescript-eslint/typescript-estree": "7.9.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^18.18.0 || >=20.0.0" | ||||
| @@ -1874,46 +1803,13 @@ | ||||
|         "eslint": "^8.56.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||
|       "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "yallist": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/utils/node_modules/semver": { | ||||
|       "version": "7.6.0", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", | ||||
|       "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "lru-cache": "^6.0.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "semver": "bin/semver.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/utils/node_modules/yallist": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||
|       "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/@typescript-eslint/visitor-keys": { | ||||
|       "version": "7.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.7.1.tgz", | ||||
|       "integrity": "sha512-gBL3Eq25uADw1LQ9kVpf3hRM+DWzs0uZknHYK3hq4jcTPqVCClHGDnB6UUUV2SFeBeA4KWHWbbLqmbGcZ4FYbw==", | ||||
|       "version": "7.9.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.9.0.tgz", | ||||
|       "integrity": "sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/types": "7.7.1", | ||||
|         "@typescript-eslint/types": "7.9.0", | ||||
|         "eslint-visitor-keys": "^3.4.3" | ||||
|       }, | ||||
|       "engines": { | ||||
| @@ -2184,6 +2080,12 @@ | ||||
|       "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/async": { | ||||
|       "version": "3.2.6", | ||||
|       "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", | ||||
|       "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/available-typed-arrays": { | ||||
|       "version": "1.0.7", | ||||
|       "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", | ||||
| @@ -2345,12 +2247,12 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/braces": { | ||||
|       "version": "3.0.2", | ||||
|       "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", | ||||
|       "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", | ||||
|       "version": "3.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", | ||||
|       "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "fill-range": "^7.0.1" | ||||
|         "fill-range": "^7.1.1" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=8" | ||||
| @@ -2806,6 +2708,21 @@ | ||||
|         "node": ">=6.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/ejs": { | ||||
|       "version": "3.1.10", | ||||
|       "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", | ||||
|       "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "jake": "^10.8.5" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "ejs": "bin/cli.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=0.10.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/electron-to-chromium": { | ||||
|       "version": "1.4.747", | ||||
|       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.747.tgz", | ||||
| @@ -3301,18 +3218,18 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest": { | ||||
|       "version": "28.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-28.2.0.tgz", | ||||
|       "integrity": "sha512-yRDti/a+f+SMSmNTiT9/M/MzXGkitl8CfzUxnpoQcTyfq8gUrXMriVcWU36W1X6BZSUoyUCJrDAWWUA2N4hE5g==", | ||||
|       "version": "28.8.2", | ||||
|       "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-28.8.2.tgz", | ||||
|       "integrity": "sha512-mC3OyklHmS5i7wYU1rGId9EnxRI8TVlnFG56AE+8U9iRy6zwaNygZR+DsdZuCL0gRG0wVeyzq+uWcPt6yJrrMA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/utils": "^6.0.0" | ||||
|         "@typescript-eslint/utils": "^6.0.0 || ^7.0.0 || ^8.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^16.10.0 || ^18.12.0 || >=20.0.0" | ||||
|       }, | ||||
|       "peerDependencies": { | ||||
|         "@typescript-eslint/eslint-plugin": "^6.0.0 || ^7.0.0", | ||||
|         "@typescript-eslint/eslint-plugin": "^6.0.0 || ^7.0.0 || ^8.0.0", | ||||
|         "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0", | ||||
|         "jest": "*" | ||||
|       }, | ||||
| @@ -3325,154 +3242,6 @@ | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/scope-manager": { | ||||
|       "version": "6.21.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", | ||||
|       "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/types": "6.21.0", | ||||
|         "@typescript-eslint/visitor-keys": "6.21.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^16.0.0 || >=18.0.0" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "type": "opencollective", | ||||
|         "url": "https://opencollective.com/typescript-eslint" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/types": { | ||||
|       "version": "6.21.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", | ||||
|       "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": "^16.0.0 || >=18.0.0" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "type": "opencollective", | ||||
|         "url": "https://opencollective.com/typescript-eslint" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree": { | ||||
|       "version": "6.21.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", | ||||
|       "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/types": "6.21.0", | ||||
|         "@typescript-eslint/visitor-keys": "6.21.0", | ||||
|         "debug": "^4.3.4", | ||||
|         "globby": "^11.1.0", | ||||
|         "is-glob": "^4.0.3", | ||||
|         "minimatch": "9.0.3", | ||||
|         "semver": "^7.5.4", | ||||
|         "ts-api-utils": "^1.0.1" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^16.0.0 || >=18.0.0" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "type": "opencollective", | ||||
|         "url": "https://opencollective.com/typescript-eslint" | ||||
|       }, | ||||
|       "peerDependenciesMeta": { | ||||
|         "typescript": { | ||||
|           "optional": true | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils": { | ||||
|       "version": "6.21.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", | ||||
|       "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@eslint-community/eslint-utils": "^4.4.0", | ||||
|         "@types/json-schema": "^7.0.12", | ||||
|         "@types/semver": "^7.5.0", | ||||
|         "@typescript-eslint/scope-manager": "6.21.0", | ||||
|         "@typescript-eslint/types": "6.21.0", | ||||
|         "@typescript-eslint/typescript-estree": "6.21.0", | ||||
|         "semver": "^7.5.4" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^16.0.0 || >=18.0.0" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "type": "opencollective", | ||||
|         "url": "https://opencollective.com/typescript-eslint" | ||||
|       }, | ||||
|       "peerDependencies": { | ||||
|         "eslint": "^7.0.0 || ^8.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/visitor-keys": { | ||||
|       "version": "6.21.0", | ||||
|       "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", | ||||
|       "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "@typescript-eslint/types": "6.21.0", | ||||
|         "eslint-visitor-keys": "^3.4.1" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^16.0.0 || >=18.0.0" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "type": "opencollective", | ||||
|         "url": "https://opencollective.com/typescript-eslint" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/lru-cache": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||
|       "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "yallist": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/minimatch": { | ||||
|       "version": "9.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", | ||||
|       "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "brace-expansion": "^2.0.1" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=16 || 14 >=14.17" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "url": "https://github.com/sponsors/isaacs" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/semver": { | ||||
|       "version": "7.6.0", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", | ||||
|       "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "lru-cache": "^6.0.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "semver": "bin/semver.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jest/node_modules/yallist": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||
|       "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/eslint-plugin-jsx-a11y": { | ||||
|       "version": "6.8.0", | ||||
|       "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", | ||||
| @@ -3825,10 +3594,31 @@ | ||||
|         "node": "^10.12.0 || >=12.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/filelist": { | ||||
|       "version": "1.0.4", | ||||
|       "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", | ||||
|       "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "minimatch": "^5.0.1" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/filelist/node_modules/minimatch": { | ||||
|       "version": "5.1.6", | ||||
|       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", | ||||
|       "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "brace-expansion": "^2.0.1" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/fill-range": { | ||||
|       "version": "7.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", | ||||
|       "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", | ||||
|       "version": "7.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", | ||||
|       "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "to-regex-range": "^5.0.1" | ||||
| @@ -4826,6 +4616,46 @@ | ||||
|         "set-function-name": "^2.0.1" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/jake": { | ||||
|       "version": "10.9.2", | ||||
|       "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", | ||||
|       "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "async": "^3.2.3", | ||||
|         "chalk": "^4.0.2", | ||||
|         "filelist": "^1.0.4", | ||||
|         "minimatch": "^3.1.2" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "jake": "bin/cli.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/jake/node_modules/brace-expansion": { | ||||
|       "version": "1.1.11", | ||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||
|       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "balanced-match": "^1.0.0", | ||||
|         "concat-map": "0.0.1" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/jake/node_modules/minimatch": { | ||||
|       "version": "3.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||
|       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "brace-expansion": "^1.1.7" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "*" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/jest": { | ||||
|       "version": "29.7.0", | ||||
|       "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", | ||||
| @@ -6148,9 +5978,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/prettier": { | ||||
|       "version": "3.2.5", | ||||
|       "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", | ||||
|       "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", | ||||
|       "version": "3.3.3", | ||||
|       "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", | ||||
|       "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", | ||||
|       "dev": true, | ||||
|       "bin": { | ||||
|         "prettier": "bin/prettier.cjs" | ||||
| @@ -6859,28 +6689,30 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/ts-jest": { | ||||
|       "version": "29.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", | ||||
|       "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", | ||||
|       "version": "29.2.5", | ||||
|       "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.5.tgz", | ||||
|       "integrity": "sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "bs-logger": "0.x", | ||||
|         "fast-json-stable-stringify": "2.x", | ||||
|         "bs-logger": "^0.2.6", | ||||
|         "ejs": "^3.1.10", | ||||
|         "fast-json-stable-stringify": "^2.1.0", | ||||
|         "jest-util": "^29.0.0", | ||||
|         "json5": "^2.2.3", | ||||
|         "lodash.memoize": "4.x", | ||||
|         "make-error": "1.x", | ||||
|         "semver": "^7.5.3", | ||||
|         "yargs-parser": "^21.0.1" | ||||
|         "lodash.memoize": "^4.1.2", | ||||
|         "make-error": "^1.3.6", | ||||
|         "semver": "^7.6.3", | ||||
|         "yargs-parser": "^21.1.1" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "ts-jest": "cli.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": "^16.10.0 || ^18.0.0 || >=20.0.0" | ||||
|         "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" | ||||
|       }, | ||||
|       "peerDependencies": { | ||||
|         "@babel/core": ">=7.0.0-beta.0 <8", | ||||
|         "@jest/transform": "^29.0.0", | ||||
|         "@jest/types": "^29.0.0", | ||||
|         "babel-jest": "^29.0.0", | ||||
|         "jest": "^29.0.0", | ||||
| @@ -6890,6 +6722,9 @@ | ||||
|         "@babel/core": { | ||||
|           "optional": true | ||||
|         }, | ||||
|         "@jest/transform": { | ||||
|           "optional": true | ||||
|         }, | ||||
|         "@jest/types": { | ||||
|           "optional": true | ||||
|         }, | ||||
| @@ -6901,26 +6736,11 @@ | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/ts-jest/node_modules/lru-cache": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||
|       "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "yallist": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/ts-jest/node_modules/semver": { | ||||
|       "version": "7.6.0", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", | ||||
|       "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", | ||||
|       "version": "7.6.3", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", | ||||
|       "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "lru-cache": "^6.0.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "semver": "bin/semver.js" | ||||
|       }, | ||||
| @@ -6928,12 +6748,6 @@ | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/ts-jest/node_modules/yallist": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||
|       "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/tsconfig-paths": { | ||||
|       "version": "3.15.0", | ||||
|       "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", | ||||
| @@ -7088,9 +6902,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/typescript": { | ||||
|       "version": "5.4.5", | ||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", | ||||
|       "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", | ||||
|       "version": "5.5.4", | ||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", | ||||
|       "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", | ||||
|       "dev": true, | ||||
|       "bin": { | ||||
|         "tsc": "bin/tsc", | ||||
|   | ||||
							
								
								
									
										16
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								package.json
									
									
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|   "name": "checkout", | ||||
|   "version": "4.1.6", | ||||
|   "version": "4.2.1", | ||||
|   "description": "checkout action", | ||||
|   "main": "lib/main.js", | ||||
|   "scripts": { | ||||
| @@ -37,19 +37,19 @@ | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "@types/jest": "^29.5.12", | ||||
|     "@types/node": "^20.12.7", | ||||
|     "@types/node": "^20.12.12", | ||||
|     "@types/uuid": "^9.0.8", | ||||
|     "@typescript-eslint/eslint-plugin": "^7.7.1", | ||||
|     "@typescript-eslint/parser": "^7.7.1", | ||||
|     "@typescript-eslint/eslint-plugin": "^7.9.0", | ||||
|     "@typescript-eslint/parser": "^7.9.0", | ||||
|     "@vercel/ncc": "^0.38.1", | ||||
|     "eslint": "^8.57.0", | ||||
|     "eslint-plugin-github": "^4.10.2", | ||||
|     "eslint-plugin-jest": "^28.2.0", | ||||
|     "eslint-plugin-jest": "^28.8.2", | ||||
|     "jest": "^29.7.0", | ||||
|     "jest-circus": "^29.7.0", | ||||
|     "js-yaml": "^4.1.0", | ||||
|     "prettier": "^3.2.5", | ||||
|     "ts-jest": "^29.1.2", | ||||
|     "typescript": "^5.4.5" | ||||
|     "prettier": "^3.3.3", | ||||
|     "ts-jest": "^29.2.5", | ||||
|     "typescript": "^5.5.4" | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -42,7 +42,7 @@ export interface IGitCommandManager { | ||||
|   ): Promise<void> | ||||
|   getDefaultBranch(repositoryUrl: string): Promise<string> | ||||
|   getWorkingDirectory(): string | ||||
|   init(): Promise<void> | ||||
|   init(options?: { objectFormat?: string }): Promise<void> | ||||
|   isDetached(): Promise<boolean> | ||||
|   lfsFetch(ref: string): Promise<void> | ||||
|   lfsInstall(): Promise<void> | ||||
| @@ -327,8 +327,12 @@ class GitCommandManager { | ||||
|     return this.workingDirectory | ||||
|   } | ||||
|  | ||||
|   async init(): Promise<void> { | ||||
|     await this.execGit(['init', this.workingDirectory]) | ||||
|   async init(options?: { objectFormat?: string }): Promise<void> { | ||||
|     await this.execGit([ | ||||
|       'init', | ||||
|       ...(options?.objectFormat ? [`--object-format=${options.objectFormat}`] : []), | ||||
|       this.workingDirectory | ||||
|     ]) | ||||
|   } | ||||
|  | ||||
|   async isDetached(): Promise<boolean> { | ||||
|   | ||||
| @@ -110,7 +110,7 @@ export async function getSource(settings: IGitSourceSettings): Promise<void> { | ||||
|       !fsHelper.directoryExistsSync(path.join(settings.repositoryPath, '.git')) | ||||
|     ) { | ||||
|       core.startGroup('Initializing the repository') | ||||
|       await git.init() | ||||
|       await git.init({ objectFormat: settings.objectFormat }) | ||||
|       await git.remoteAdd('origin', repositoryUrl) | ||||
|       core.endGroup() | ||||
|     } | ||||
| @@ -261,7 +261,8 @@ export async function getSource(settings: IGitSourceSettings): Promise<void> { | ||||
|     const commitInfo = await git.log1() | ||||
|  | ||||
|     // Log commit sha | ||||
|     await git.log1("--format='%H'") | ||||
|     const commitSHA = await git.log1('--format=%H') | ||||
|     core.setOutput('commit', commitSHA.trim()) | ||||
|  | ||||
|     // Check for incorrect pull request merge commit | ||||
|     await refHelper.checkCommitInfo( | ||||
|   | ||||
| @@ -118,4 +118,9 @@ export interface IGitSourceSettings { | ||||
|    * User override on the GitHub Server/Host URL that hosts the repository to be cloned | ||||
|    */ | ||||
|   githubServerUrl: string | undefined | ||||
|  | ||||
|   /** | ||||
|    * Object format used for the repo, if it is not default | ||||
|    */ | ||||
|   objectFormat: 'sha1' | 'sha256' | undefined | ||||
| } | ||||
|   | ||||
| @@ -161,5 +161,14 @@ export async function getInputs(): Promise<IGitSourceSettings> { | ||||
|   result.githubServerUrl = core.getInput('github-server-url') | ||||
|   core.debug(`GitHub Host URL = ${result.githubServerUrl}`) | ||||
|  | ||||
|   // Object format | ||||
|   const objectFormat = core.getInput('object-format') | ||||
|   if (objectFormat) { | ||||
|     if (objectFormat != 'sha1' && objectFormat != 'sha256') { | ||||
|       throw Error(`Invalid object format '${objectFormat}'`) | ||||
|     } | ||||
|     result.objectFormat = objectFormat | ||||
|   } | ||||
|  | ||||
|   return result | ||||
| } | ||||
|   | ||||
| @@ -19,6 +19,7 @@ async function run(): Promise<void> { | ||||
|  | ||||
|       // Get sources | ||||
|       await gitSourceProvider.getSource(sourceSettings) | ||||
|       core.setOutput('ref', sourceSettings.ref) | ||||
|     } finally { | ||||
|       // Unregister problem matcher | ||||
|       coreCommand.issueCommand('remove-matcher', {owner: 'checkout-git'}, '') | ||||
|   | ||||
| @@ -42,9 +42,13 @@ export async function getCheckoutInfo( | ||||
|     result.ref = `refs/remotes/pull/${branch}` | ||||
|   } | ||||
|   // refs/tags/ | ||||
|   else if (upperRef.startsWith('REFS/')) { | ||||
|   else if (upperRef.startsWith('REFS/TAGS/')) { | ||||
|     result.ref = ref | ||||
|   } | ||||
|   // refs/ | ||||
|   else if (upperRef.startsWith('REFS/')) { | ||||
|     result.ref = commit ? commit : ref | ||||
|   } | ||||
|   // Unqualified ref, check for a matching branch or tag | ||||
|   else { | ||||
|     if (await git.branchExists(true, `origin/${ref}`)) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user