mirror of
				https://github.com/actions/checkout.git
				synced 2025-11-04 07:48:09 +08:00 
			
		
		
		
	Compare commits
	
		
			1 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					1e31de5234 | 
							
								
								
									
										27
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										27
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							@@ -7,11 +7,6 @@ on:
 | 
				
			|||||||
      - main
 | 
					      - main
 | 
				
			||||||
      - releases/*
 | 
					      - releases/*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
# Note that when you see patterns like "ref: test-data/v2/basic" within this workflow, 
 | 
					 | 
				
			||||||
# these refer to "test-data" branches on this actions/checkout repo.
 | 
					 | 
				
			||||||
# (For example, test-data/v2/basic -> https://github.com/actions/checkout/tree/test-data/v2/basic)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
jobs:
 | 
					jobs:
 | 
				
			||||||
  build:
 | 
					  build:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
@@ -77,16 +72,6 @@ jobs:
 | 
				
			|||||||
        shell: bash
 | 
					        shell: bash
 | 
				
			||||||
        run: __test__/verify-side-by-side.sh
 | 
					        run: __test__/verify-side-by-side.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      # Filter
 | 
					 | 
				
			||||||
      - name: Fetch filter
 | 
					 | 
				
			||||||
        uses: ./
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          filter: 'blob:none'
 | 
					 | 
				
			||||||
          path: fetch-filter
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Verify fetch filter
 | 
					 | 
				
			||||||
        run: __test__/verify-fetch-filter.sh
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      # Sparse checkout
 | 
					      # Sparse checkout
 | 
				
			||||||
      - name: Sparse checkout
 | 
					      - name: Sparse checkout
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@@ -100,16 +85,6 @@ jobs:
 | 
				
			|||||||
      - name: Verify sparse checkout
 | 
					      - name: Verify sparse checkout
 | 
				
			||||||
        run: __test__/verify-sparse-checkout.sh
 | 
					        run: __test__/verify-sparse-checkout.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      # Disabled sparse checkout in existing checkout
 | 
					 | 
				
			||||||
      - name: Disabled sparse checkout
 | 
					 | 
				
			||||||
        uses: ./
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          path: sparse-checkout
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Verify disabled sparse checkout
 | 
					 | 
				
			||||||
        shell: bash
 | 
					 | 
				
			||||||
        run: set -x && ls -l sparse-checkout/src/git-command-manager.ts
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      # Sparse checkout (non-cone mode)
 | 
					      # Sparse checkout (non-cone mode)
 | 
				
			||||||
      - name: Sparse checkout (non-cone mode)
 | 
					      - name: Sparse checkout (non-cone mode)
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
@@ -190,7 +165,7 @@ jobs:
 | 
				
			|||||||
  test-proxy:
 | 
					  test-proxy:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
    container:
 | 
					    container:
 | 
				
			||||||
      image: ghcr.io/actions/test-ubuntu-git:main.20240221.114913.703z
 | 
					      image: alpine/git:latest
 | 
				
			||||||
      options: --dns 127.0.0.1
 | 
					      options: --dns 127.0.0.1
 | 
				
			||||||
    services:
 | 
					    services:
 | 
				
			||||||
      squid-proxy:
 | 
					      squid-proxy:
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										59
									
								
								.github/workflows/update-test-ubuntu-git.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										59
									
								
								.github/workflows/update-test-ubuntu-git.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,59 +0,0 @@
 | 
				
			|||||||
name: Publish test-ubuntu-git Container
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
on:
 | 
					 | 
				
			||||||
  # Use an on demand workflow trigger.  
 | 
					 | 
				
			||||||
  # (Forked copies of actions/checkout won't have permission to update GHCR.io/actions, 
 | 
					 | 
				
			||||||
  #  so avoid trigger events that run automatically.)
 | 
					 | 
				
			||||||
  workflow_dispatch:
 | 
					 | 
				
			||||||
    inputs:
 | 
					 | 
				
			||||||
      publish:
 | 
					 | 
				
			||||||
        description:  'Publish to ghcr.io? (main branch only)'
 | 
					 | 
				
			||||||
        type: boolean
 | 
					 | 
				
			||||||
        required: true
 | 
					 | 
				
			||||||
        default: false
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
env:
 | 
					 | 
				
			||||||
  REGISTRY: ghcr.io
 | 
					 | 
				
			||||||
  IMAGE_NAME: actions/test-ubuntu-git
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
jobs:
 | 
					 | 
				
			||||||
  build-and-push-image:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    # Sets the permissions granted to the `GITHUB_TOKEN` for the actions in this job.
 | 
					 | 
				
			||||||
    permissions:
 | 
					 | 
				
			||||||
      contents: read
 | 
					 | 
				
			||||||
      packages: write
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - name: Checkout repository
 | 
					 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      # 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.0.0
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          registry: ${{ env.REGISTRY }}
 | 
					 | 
				
			||||||
          username: ${{ github.actor }}
 | 
					 | 
				
			||||||
          password: ${{ secrets.GITHUB_TOKEN }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Format Timestamp
 | 
					 | 
				
			||||||
        id: timestamp
 | 
					 | 
				
			||||||
        # Use `date` with a custom format to achieve the key=value format GITHUB_OUTPUT expects.
 | 
					 | 
				
			||||||
        run: date -u "+now=%Y%m%d.%H%M%S.%3NZ" >> "$GITHUB_OUTPUT"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Issue Image Publish Warning
 | 
					 | 
				
			||||||
        if:  ${{ inputs.publish && github.ref_name != 'main' }}
 | 
					 | 
				
			||||||
        run: echo "::warning::test-ubuntu-git images can only be published from the actions/checkout 'main' branch.  Workflow will continue with push/publish disabled."
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      # 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.1.0
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          context: .
 | 
					 | 
				
			||||||
          file: images/test-ubuntu-git.Dockerfile
 | 
					 | 
				
			||||||
          # For now, attempts to push to ghcr.io must target the `main` branch.
 | 
					 | 
				
			||||||
          # In the future, consider also allowing attempts from `releases/*` branches.
 | 
					 | 
				
			||||||
          push: ${{ inputs.publish && github.ref_name == 'main' }}
 | 
					 | 
				
			||||||
          tags: |
 | 
					 | 
				
			||||||
            ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.ref_name }}.${{ steps.timestamp.outputs.now }}
 | 
					 | 
				
			||||||
							
								
								
									
										10
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -1,15 +1,5 @@
 | 
				
			|||||||
# Changelog
 | 
					# Changelog
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## v4.1.2
 | 
					 | 
				
			||||||
- Fix: Disable sparse checkout whenever `sparse-checkout` option is not present @dscho in https://github.com/actions/checkout/pull/1598
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## v4.1.1
 | 
					 | 
				
			||||||
- Correct link to GitHub Docs by @peterbe in https://github.com/actions/checkout/pull/1511
 | 
					 | 
				
			||||||
- Link to release page from what's new section by @cory-miller in https://github.com/actions/checkout/pull/1514
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## v4.1.0
 | 
					 | 
				
			||||||
- [Add support for partial checkout filters](https://github.com/actions/checkout/pull/1396)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## v4.0.0
 | 
					## v4.0.0
 | 
				
			||||||
- [Support fetching without the --progress option](https://github.com/actions/checkout/pull/1067)
 | 
					- [Support fetching without the --progress option](https://github.com/actions/checkout/pull/1067)
 | 
				
			||||||
- [Update to node20](https://github.com/actions/checkout/pull/1436)
 | 
					- [Update to node20](https://github.com/actions/checkout/pull/1436)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1 +1 @@
 | 
				
			|||||||
* @actions/actions-launch
 | 
					* @actions/actions-runtime
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										11
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								README.md
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
This action checks-out your repository under `$GITHUB_WORKSPACE`, so your workflow can access it.
 | 
					This action checks-out your repository under `$GITHUB_WORKSPACE`, so your workflow can access it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Only a single commit is fetched by default, for the ref/SHA that triggered the workflow. Set `fetch-depth: 0` to fetch all history for all branches and tags. Refer [here](https://docs.github.com/actions/using-workflows/events-that-trigger-workflows) to learn which commit `$GITHUB_SHA` points to for different events.
 | 
					Only a single commit is fetched by default, for the ref/SHA that triggered the workflow. Set `fetch-depth: 0` to fetch all history for all branches and tags. Refer [here](https://help.github.com/en/articles/events-that-trigger-workflows) to learn which commit `$GITHUB_SHA` points to for different events.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The auth token is persisted in the local git config. This enables your scripts to run authenticated git commands. The token is removed during post-job cleanup. Set `persist-credentials: false` to opt-out.
 | 
					The auth token is persisted in the local git config. This enables your scripts to run authenticated git commands. The token is removed during post-job cleanup. Set `persist-credentials: false` to opt-out.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -12,7 +12,8 @@ When Git 2.18 or higher is not in your PATH, falls back to the REST API to downl
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# What's new
 | 
					# What's new
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Please refer to the [release page](https://github.com/actions/checkout/releases/latest) for the latest release notes.
 | 
					- Updated to the node20 runtime by default
 | 
				
			||||||
 | 
					  - This requires a minimum [Actions Runner](https://github.com/actions/runner/releases/tag/v2.285.0) version of v2.308.0 to run, which is by default available in GHES 3.11 or later.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Usage
 | 
					# Usage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -73,12 +74,8 @@ Please refer to the [release page](https://github.com/actions/checkout/releases/
 | 
				
			|||||||
    # Default: true
 | 
					    # Default: true
 | 
				
			||||||
    clean: ''
 | 
					    clean: ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Partially clone against a given filter. Overrides sparse-checkout if set.
 | 
					 | 
				
			||||||
    # Default: null
 | 
					 | 
				
			||||||
    filter: ''
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    # Do a sparse checkout on given patterns. Each pattern should be separated with
 | 
					    # Do a sparse checkout on given patterns. Each pattern should be separated with
 | 
				
			||||||
    # new lines.
 | 
					    # new lines
 | 
				
			||||||
    # Default: null
 | 
					    # Default: null
 | 
				
			||||||
    sparse-checkout: ''
 | 
					    sparse-checkout: ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -727,7 +727,6 @@ async function setup(testName: string): Promise<void> {
 | 
				
			|||||||
    branchDelete: jest.fn(),
 | 
					    branchDelete: jest.fn(),
 | 
				
			||||||
    branchExists: jest.fn(),
 | 
					    branchExists: jest.fn(),
 | 
				
			||||||
    branchList: jest.fn(),
 | 
					    branchList: jest.fn(),
 | 
				
			||||||
    disableSparseCheckout: jest.fn(),
 | 
					 | 
				
			||||||
    sparseCheckout: jest.fn(),
 | 
					    sparseCheckout: jest.fn(),
 | 
				
			||||||
    sparseCheckoutNonConeMode: jest.fn(),
 | 
					    sparseCheckoutNonConeMode: jest.fn(),
 | 
				
			||||||
    checkout: jest.fn(),
 | 
					    checkout: jest.fn(),
 | 
				
			||||||
@@ -803,7 +802,6 @@ async function setup(testName: string): Promise<void> {
 | 
				
			|||||||
    authToken: 'some auth token',
 | 
					    authToken: 'some auth token',
 | 
				
			||||||
    clean: true,
 | 
					    clean: true,
 | 
				
			||||||
    commit: '',
 | 
					    commit: '',
 | 
				
			||||||
    filter: undefined,
 | 
					 | 
				
			||||||
    sparseCheckout: [],
 | 
					    sparseCheckout: [],
 | 
				
			||||||
    sparseCheckoutConeMode: true,
 | 
					    sparseCheckoutConeMode: true,
 | 
				
			||||||
    fetchDepth: 1,
 | 
					    fetchDepth: 1,
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -462,7 +462,6 @@ async function setup(testName: string): Promise<void> {
 | 
				
			|||||||
    branchList: jest.fn(async () => {
 | 
					    branchList: jest.fn(async () => {
 | 
				
			||||||
      return []
 | 
					      return []
 | 
				
			||||||
    }),
 | 
					    }),
 | 
				
			||||||
    disableSparseCheckout: jest.fn(),
 | 
					 | 
				
			||||||
    sparseCheckout: jest.fn(),
 | 
					    sparseCheckout: jest.fn(),
 | 
				
			||||||
    sparseCheckoutNonConeMode: jest.fn(),
 | 
					    sparseCheckoutNonConeMode: jest.fn(),
 | 
				
			||||||
    checkout: jest.fn(),
 | 
					    checkout: jest.fn(),
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -79,7 +79,6 @@ describe('input-helper tests', () => {
 | 
				
			|||||||
    expect(settings.clean).toBe(true)
 | 
					    expect(settings.clean).toBe(true)
 | 
				
			||||||
    expect(settings.commit).toBeTruthy()
 | 
					    expect(settings.commit).toBeTruthy()
 | 
				
			||||||
    expect(settings.commit).toBe('1234567890123456789012345678901234567890')
 | 
					    expect(settings.commit).toBe('1234567890123456789012345678901234567890')
 | 
				
			||||||
    expect(settings.filter).toBe(undefined)
 | 
					 | 
				
			||||||
    expect(settings.sparseCheckout).toBe(undefined)
 | 
					    expect(settings.sparseCheckout).toBe(undefined)
 | 
				
			||||||
    expect(settings.sparseCheckoutConeMode).toBe(true)
 | 
					    expect(settings.sparseCheckoutConeMode).toBe(true)
 | 
				
			||||||
    expect(settings.fetchDepth).toBe(1)
 | 
					    expect(settings.fetchDepth).toBe(1)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,16 +0,0 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Verify .git folder
 | 
					 | 
				
			||||||
if [ ! -d "./fetch-filter/.git" ]; then
 | 
					 | 
				
			||||||
  echo "Expected ./fetch-filter/.git folder to exist"
 | 
					 | 
				
			||||||
  exit 1
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Verify .git/config contains partialclonefilter
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
CLONE_FILTER=$(git -C fetch-filter config --local --get remote.origin.partialclonefilter)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ "$CLONE_FILTER" != "blob:none" ]; then
 | 
					 | 
				
			||||||
  echo "Expected ./fetch-filter/.git/config to have 'remote.origin.partialclonefilter' set to 'blob:none'"
 | 
					 | 
				
			||||||
  exit 1
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
@@ -53,15 +53,10 @@ inputs:
 | 
				
			|||||||
  clean:
 | 
					  clean:
 | 
				
			||||||
    description: 'Whether to execute `git clean -ffdx && git reset --hard HEAD` before fetching'
 | 
					    description: 'Whether to execute `git clean -ffdx && git reset --hard HEAD` before fetching'
 | 
				
			||||||
    default: true
 | 
					    default: true
 | 
				
			||||||
  filter:
 | 
					 | 
				
			||||||
    description: >
 | 
					 | 
				
			||||||
      Partially clone against a given filter.
 | 
					 | 
				
			||||||
      Overrides sparse-checkout if set.
 | 
					 | 
				
			||||||
    default: null
 | 
					 | 
				
			||||||
  sparse-checkout:
 | 
					  sparse-checkout:
 | 
				
			||||||
    description: >
 | 
					    description: >
 | 
				
			||||||
      Do a sparse checkout on given patterns.
 | 
					      Do a sparse checkout on given patterns.
 | 
				
			||||||
      Each pattern should be separated with new lines.
 | 
					      Each pattern should be separated with new lines
 | 
				
			||||||
    default: null
 | 
					    default: null
 | 
				
			||||||
  sparse-checkout-cone-mode:
 | 
					  sparse-checkout-cone-mode:
 | 
				
			||||||
    description: >
 | 
					    description: >
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										22
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							@@ -576,11 +576,6 @@ class GitCommandManager {
 | 
				
			|||||||
            return result;
 | 
					            return result;
 | 
				
			||||||
        });
 | 
					        });
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    disableSparseCheckout() {
 | 
					 | 
				
			||||||
        return __awaiter(this, void 0, void 0, function* () {
 | 
					 | 
				
			||||||
            yield this.execGit(['sparse-checkout', 'disable']);
 | 
					 | 
				
			||||||
        });
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    sparseCheckout(sparseCheckout) {
 | 
					    sparseCheckout(sparseCheckout) {
 | 
				
			||||||
        return __awaiter(this, void 0, void 0, function* () {
 | 
					        return __awaiter(this, void 0, void 0, function* () {
 | 
				
			||||||
            yield this.execGit(['sparse-checkout', 'set', ...sparseCheckout]);
 | 
					            yield this.execGit(['sparse-checkout', 'set', ...sparseCheckout]);
 | 
				
			||||||
@@ -1249,12 +1244,8 @@ function getSource(settings) {
 | 
				
			|||||||
            // Fetch
 | 
					            // Fetch
 | 
				
			||||||
            core.startGroup('Fetching the repository');
 | 
					            core.startGroup('Fetching the repository');
 | 
				
			||||||
            const fetchOptions = {};
 | 
					            const fetchOptions = {};
 | 
				
			||||||
            if (settings.filter) {
 | 
					            if (settings.sparseCheckout)
 | 
				
			||||||
                fetchOptions.filter = settings.filter;
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            else if (settings.sparseCheckout) {
 | 
					 | 
				
			||||||
                fetchOptions.filter = 'blob:none';
 | 
					                fetchOptions.filter = 'blob:none';
 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            if (settings.fetchDepth <= 0) {
 | 
					            if (settings.fetchDepth <= 0) {
 | 
				
			||||||
                // Fetch all branches and tags
 | 
					                // Fetch all branches and tags
 | 
				
			||||||
                let refSpec = refHelper.getRefSpecForAllHistory(settings.ref, settings.commit);
 | 
					                let refSpec = refHelper.getRefSpecForAllHistory(settings.ref, settings.commit);
 | 
				
			||||||
@@ -1287,10 +1278,7 @@ function getSource(settings) {
 | 
				
			|||||||
                core.endGroup();
 | 
					                core.endGroup();
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            // Sparse checkout
 | 
					            // Sparse checkout
 | 
				
			||||||
            if (!settings.sparseCheckout) {
 | 
					            if (settings.sparseCheckout) {
 | 
				
			||||||
                yield git.disableSparseCheckout();
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            else {
 | 
					 | 
				
			||||||
                core.startGroup('Setting up sparse checkout');
 | 
					                core.startGroup('Setting up sparse checkout');
 | 
				
			||||||
                if (settings.sparseCheckoutConeMode) {
 | 
					                if (settings.sparseCheckoutConeMode) {
 | 
				
			||||||
                    yield git.sparseCheckout(settings.sparseCheckout);
 | 
					                    yield git.sparseCheckout(settings.sparseCheckout);
 | 
				
			||||||
@@ -1735,12 +1723,6 @@ function getInputs() {
 | 
				
			|||||||
        // Clean
 | 
					        // Clean
 | 
				
			||||||
        result.clean = (core.getInput('clean') || 'true').toUpperCase() === 'TRUE';
 | 
					        result.clean = (core.getInput('clean') || 'true').toUpperCase() === 'TRUE';
 | 
				
			||||||
        core.debug(`clean = ${result.clean}`);
 | 
					        core.debug(`clean = ${result.clean}`);
 | 
				
			||||||
        // Filter
 | 
					 | 
				
			||||||
        const filter = core.getInput('filter');
 | 
					 | 
				
			||||||
        if (filter) {
 | 
					 | 
				
			||||||
            result.filter = filter;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        core.debug(`filter = ${result.filter}`);
 | 
					 | 
				
			||||||
        // Sparse checkout
 | 
					        // Sparse checkout
 | 
				
			||||||
        const sparseCheckout = core.getMultilineInput('sparse-checkout');
 | 
					        const sparseCheckout = core.getMultilineInput('sparse-checkout');
 | 
				
			||||||
        if (sparseCheckout.length) {
 | 
					        if (sparseCheckout.length) {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,12 +0,0 @@
 | 
				
			|||||||
# Defines the test-ubuntu-git Container Image.
 | 
					 | 
				
			||||||
# Consumed by actions/checkout CI/CD validation workflows.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
FROM ubuntu:latest
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
RUN apt update
 | 
					 | 
				
			||||||
RUN apt install -y git
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
LABEL org.opencontainers.image.title="Ubuntu + git (validation image)"
 | 
					 | 
				
			||||||
LABEL org.opencontainers.image.description="Ubuntu image with git pre-installed. Intended primarily for testing `actions/checkout` during CI/CD workflows."
 | 
					 | 
				
			||||||
LABEL org.opencontainers.image.documentation="https://github.com/actions/checkout/tree/main/images/test-ubuntu-git.md"
 | 
					 | 
				
			||||||
LABEL org.opencontainers.image.licenses=MIT
 | 
					 | 
				
			||||||
@@ -1,15 +0,0 @@
 | 
				
			|||||||
# `test-ubuntu-git` Container Image
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
[](https://github.com/actions/checkout/actions/workflows/update-test-ubuntu-git.yml)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Purpose
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
`test-ubuntu-git` is a container image hosted on the GitHub Container Registry, `ghcr.io`.  
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
It is intended primarily for testing the [`actions/checkout` repository](https://github.com/actions/checkout) as part of `actions/checkout`'s CI/CD workflows.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
The composition of `test-ubuntu-git` is intentionally minimal.  It is comprised of [git](https://git-scm.com/) installed on top of a [base-level ubuntu image](https://hub.docker.com/_/ubuntu/tags).
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# License
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
`test-ubuntu-git` is released under the [MIT License](/LICENSE).
 | 
					 | 
				
			||||||
							
								
								
									
										326
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										326
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@@ -1,12 +1,12 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "checkout",
 | 
					  "name": "checkout",
 | 
				
			||||||
  "version": "4.1.2",
 | 
					  "version": "4.0.0",
 | 
				
			||||||
  "lockfileVersion": 2,
 | 
					  "lockfileVersion": 2,
 | 
				
			||||||
  "requires": true,
 | 
					  "requires": true,
 | 
				
			||||||
  "packages": {
 | 
					  "packages": {
 | 
				
			||||||
    "": {
 | 
					    "": {
 | 
				
			||||||
      "name": "checkout",
 | 
					      "name": "checkout",
 | 
				
			||||||
      "version": "4.1.2",
 | 
					      "version": "4.0.0",
 | 
				
			||||||
      "license": "MIT",
 | 
					      "license": "MIT",
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@actions/core": "^1.10.0",
 | 
					        "@actions/core": "^1.10.0",
 | 
				
			||||||
@@ -115,13 +115,12 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/code-frame": {
 | 
					    "node_modules/@babel/code-frame": {
 | 
				
			||||||
      "version": "7.23.5",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==",
 | 
					      "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/highlight": "^7.23.4",
 | 
					        "@babel/highlight": "^7.18.6"
 | 
				
			||||||
        "chalk": "^2.4.2"
 | 
					 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
@@ -176,14 +175,13 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/generator": {
 | 
					    "node_modules/@babel/generator": {
 | 
				
			||||||
      "version": "7.23.6",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==",
 | 
					      "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/types": "^7.23.6",
 | 
					        "@babel/types": "^7.20.5",
 | 
				
			||||||
        "@jridgewell/gen-mapping": "^0.3.2",
 | 
					        "@jridgewell/gen-mapping": "^0.3.2",
 | 
				
			||||||
        "@jridgewell/trace-mapping": "^0.3.17",
 | 
					 | 
				
			||||||
        "jsesc": "^2.5.1"
 | 
					        "jsesc": "^2.5.1"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
@@ -232,34 +230,34 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/helper-environment-visitor": {
 | 
					    "node_modules/@babel/helper-environment-visitor": {
 | 
				
			||||||
      "version": "7.22.20",
 | 
					      "version": "7.18.9",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
 | 
				
			||||||
      "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
 | 
					      "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/helper-function-name": {
 | 
					    "node_modules/@babel/helper-function-name": {
 | 
				
			||||||
      "version": "7.23.0",
 | 
					      "version": "7.19.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
 | 
					      "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/template": "^7.22.15",
 | 
					        "@babel/template": "^7.18.10",
 | 
				
			||||||
        "@babel/types": "^7.23.0"
 | 
					        "@babel/types": "^7.19.0"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/helper-hoist-variables": {
 | 
					    "node_modules/@babel/helper-hoist-variables": {
 | 
				
			||||||
      "version": "7.22.5",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
 | 
					      "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/types": "^7.22.5"
 | 
					        "@babel/types": "^7.18.6"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
@@ -315,30 +313,30 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/helper-split-export-declaration": {
 | 
					    "node_modules/@babel/helper-split-export-declaration": {
 | 
				
			||||||
      "version": "7.22.6",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
 | 
					      "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/types": "^7.22.5"
 | 
					        "@babel/types": "^7.18.6"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/helper-string-parser": {
 | 
					    "node_modules/@babel/helper-string-parser": {
 | 
				
			||||||
      "version": "7.23.4",
 | 
					      "version": "7.19.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
 | 
				
			||||||
      "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==",
 | 
					      "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/helper-validator-identifier": {
 | 
					    "node_modules/@babel/helper-validator-identifier": {
 | 
				
			||||||
      "version": "7.22.20",
 | 
					      "version": "7.19.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
 | 
					      "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
@@ -368,13 +366,13 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/highlight": {
 | 
					    "node_modules/@babel/highlight": {
 | 
				
			||||||
      "version": "7.23.4",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==",
 | 
					      "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/helper-validator-identifier": "^7.22.20",
 | 
					        "@babel/helper-validator-identifier": "^7.18.6",
 | 
				
			||||||
        "chalk": "^2.4.2",
 | 
					        "chalk": "^2.0.0",
 | 
				
			||||||
        "js-tokens": "^4.0.0"
 | 
					        "js-tokens": "^4.0.0"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
@@ -382,9 +380,9 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/parser": {
 | 
					    "node_modules/@babel/parser": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==",
 | 
					      "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "bin": {
 | 
					      "bin": {
 | 
				
			||||||
        "parser": "bin/babel-parser.js"
 | 
					        "parser": "bin/babel-parser.js"
 | 
				
			||||||
@@ -673,34 +671,34 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/template": {
 | 
					    "node_modules/@babel/template": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.18.10",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
 | 
				
			||||||
      "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
 | 
					      "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/code-frame": "^7.23.5",
 | 
					        "@babel/code-frame": "^7.18.6",
 | 
				
			||||||
        "@babel/parser": "^7.24.0",
 | 
					        "@babel/parser": "^7.18.10",
 | 
				
			||||||
        "@babel/types": "^7.24.0"
 | 
					        "@babel/types": "^7.18.10"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6.9.0"
 | 
					        "node": ">=6.9.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/traverse": {
 | 
					    "node_modules/@babel/traverse": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==",
 | 
					      "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/code-frame": "^7.23.5",
 | 
					        "@babel/code-frame": "^7.18.6",
 | 
				
			||||||
        "@babel/generator": "^7.23.6",
 | 
					        "@babel/generator": "^7.20.5",
 | 
				
			||||||
        "@babel/helper-environment-visitor": "^7.22.20",
 | 
					        "@babel/helper-environment-visitor": "^7.18.9",
 | 
				
			||||||
        "@babel/helper-function-name": "^7.23.0",
 | 
					        "@babel/helper-function-name": "^7.19.0",
 | 
				
			||||||
        "@babel/helper-hoist-variables": "^7.22.5",
 | 
					        "@babel/helper-hoist-variables": "^7.18.6",
 | 
				
			||||||
        "@babel/helper-split-export-declaration": "^7.22.6",
 | 
					        "@babel/helper-split-export-declaration": "^7.18.6",
 | 
				
			||||||
        "@babel/parser": "^7.24.0",
 | 
					        "@babel/parser": "^7.20.5",
 | 
				
			||||||
        "@babel/types": "^7.24.0",
 | 
					        "@babel/types": "^7.20.5",
 | 
				
			||||||
        "debug": "^4.3.1",
 | 
					        "debug": "^4.1.0",
 | 
				
			||||||
        "globals": "^11.1.0"
 | 
					        "globals": "^11.1.0"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
@@ -708,13 +706,13 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@babel/types": {
 | 
					    "node_modules/@babel/types": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
 | 
					      "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@babel/helper-string-parser": "^7.23.4",
 | 
					        "@babel/helper-string-parser": "^7.19.4",
 | 
				
			||||||
        "@babel/helper-validator-identifier": "^7.22.20",
 | 
					        "@babel/helper-validator-identifier": "^7.19.1",
 | 
				
			||||||
        "to-fast-properties": "^2.0.0"
 | 
					        "to-fast-properties": "^2.0.0"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
@@ -8143,12 +8141,6 @@
 | 
				
			|||||||
        "url": "https://github.com/sponsors/ljharb"
 | 
					        "url": "https://github.com/sponsors/ljharb"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/querystringify": {
 | 
					 | 
				
			||||||
      "version": "2.2.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/queue-microtask": {
 | 
					    "node_modules/queue-microtask": {
 | 
				
			||||||
      "version": "1.2.3",
 | 
					      "version": "1.2.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
 | 
				
			||||||
@@ -8199,12 +8191,6 @@
 | 
				
			|||||||
        "node": ">=0.10.0"
 | 
					        "node": ">=0.10.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/requires-port": {
 | 
					 | 
				
			||||||
      "version": "1.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/resolve-cwd": {
 | 
					    "node_modules/resolve-cwd": {
 | 
				
			||||||
      "version": "3.0.0",
 | 
					      "version": "3.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
 | 
				
			||||||
@@ -8727,15 +8713,14 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/tough-cookie": {
 | 
					    "node_modules/tough-cookie": {
 | 
				
			||||||
      "version": "4.1.3",
 | 
					      "version": "4.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
 | 
					      "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "psl": "^1.1.33",
 | 
					        "psl": "^1.1.33",
 | 
				
			||||||
        "punycode": "^2.1.1",
 | 
					        "punycode": "^2.1.1",
 | 
				
			||||||
        "universalify": "^0.2.0",
 | 
					        "universalify": "^0.1.2"
 | 
				
			||||||
        "url-parse": "^1.5.3"
 | 
					 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">=6"
 | 
					        "node": ">=6"
 | 
				
			||||||
@@ -8952,9 +8937,9 @@
 | 
				
			|||||||
      "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
 | 
					      "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/universalify": {
 | 
					    "node_modules/universalify": {
 | 
				
			||||||
      "version": "0.2.0",
 | 
					      "version": "0.1.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
 | 
				
			||||||
      "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
 | 
					      "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">= 4.0.0"
 | 
					        "node": ">= 4.0.0"
 | 
				
			||||||
@@ -8995,16 +8980,6 @@
 | 
				
			|||||||
        "punycode": "^2.1.0"
 | 
					        "punycode": "^2.1.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/url-parse": {
 | 
					 | 
				
			||||||
      "version": "1.5.10",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "querystringify": "^2.1.1",
 | 
					 | 
				
			||||||
        "requires-port": "^1.0.0"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/uuid": {
 | 
					    "node_modules/uuid": {
 | 
				
			||||||
      "version": "3.3.3",
 | 
					      "version": "3.3.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz",
 | 
				
			||||||
@@ -9357,13 +9332,12 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/code-frame": {
 | 
					    "@babel/code-frame": {
 | 
				
			||||||
      "version": "7.23.5",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==",
 | 
					      "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/highlight": "^7.23.4",
 | 
					        "@babel/highlight": "^7.18.6"
 | 
				
			||||||
        "chalk": "^2.4.2"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/compat-data": {
 | 
					    "@babel/compat-data": {
 | 
				
			||||||
@@ -9404,14 +9378,13 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/generator": {
 | 
					    "@babel/generator": {
 | 
				
			||||||
      "version": "7.23.6",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==",
 | 
					      "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/types": "^7.23.6",
 | 
					        "@babel/types": "^7.20.5",
 | 
				
			||||||
        "@jridgewell/gen-mapping": "^0.3.2",
 | 
					        "@jridgewell/gen-mapping": "^0.3.2",
 | 
				
			||||||
        "@jridgewell/trace-mapping": "^0.3.17",
 | 
					 | 
				
			||||||
        "jsesc": "^2.5.1"
 | 
					        "jsesc": "^2.5.1"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
@@ -9449,28 +9422,28 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-environment-visitor": {
 | 
					    "@babel/helper-environment-visitor": {
 | 
				
			||||||
      "version": "7.22.20",
 | 
					      "version": "7.18.9",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
 | 
				
			||||||
      "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
 | 
					      "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-function-name": {
 | 
					    "@babel/helper-function-name": {
 | 
				
			||||||
      "version": "7.23.0",
 | 
					      "version": "7.19.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
 | 
					      "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/template": "^7.22.15",
 | 
					        "@babel/template": "^7.18.10",
 | 
				
			||||||
        "@babel/types": "^7.23.0"
 | 
					        "@babel/types": "^7.19.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-hoist-variables": {
 | 
					    "@babel/helper-hoist-variables": {
 | 
				
			||||||
      "version": "7.22.5",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
 | 
					      "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/types": "^7.22.5"
 | 
					        "@babel/types": "^7.18.6"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-module-imports": {
 | 
					    "@babel/helper-module-imports": {
 | 
				
			||||||
@@ -9514,24 +9487,24 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-split-export-declaration": {
 | 
					    "@babel/helper-split-export-declaration": {
 | 
				
			||||||
      "version": "7.22.6",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
 | 
					      "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/types": "^7.22.5"
 | 
					        "@babel/types": "^7.18.6"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-string-parser": {
 | 
					    "@babel/helper-string-parser": {
 | 
				
			||||||
      "version": "7.23.4",
 | 
					      "version": "7.19.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
 | 
				
			||||||
      "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==",
 | 
					      "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-validator-identifier": {
 | 
					    "@babel/helper-validator-identifier": {
 | 
				
			||||||
      "version": "7.22.20",
 | 
					      "version": "7.19.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
 | 
					      "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/helper-validator-option": {
 | 
					    "@babel/helper-validator-option": {
 | 
				
			||||||
@@ -9552,20 +9525,20 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/highlight": {
 | 
					    "@babel/highlight": {
 | 
				
			||||||
      "version": "7.23.4",
 | 
					      "version": "7.18.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==",
 | 
					      "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/helper-validator-identifier": "^7.22.20",
 | 
					        "@babel/helper-validator-identifier": "^7.18.6",
 | 
				
			||||||
        "chalk": "^2.4.2",
 | 
					        "chalk": "^2.0.0",
 | 
				
			||||||
        "js-tokens": "^4.0.0"
 | 
					        "js-tokens": "^4.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/parser": {
 | 
					    "@babel/parser": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==",
 | 
					      "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/plugin-syntax-async-generators": {
 | 
					    "@babel/plugin-syntax-async-generators": {
 | 
				
			||||||
@@ -9790,42 +9763,42 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/template": {
 | 
					    "@babel/template": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.18.10",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
 | 
				
			||||||
      "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
 | 
					      "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/code-frame": "^7.23.5",
 | 
					        "@babel/code-frame": "^7.18.6",
 | 
				
			||||||
        "@babel/parser": "^7.24.0",
 | 
					        "@babel/parser": "^7.18.10",
 | 
				
			||||||
        "@babel/types": "^7.24.0"
 | 
					        "@babel/types": "^7.18.10"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/traverse": {
 | 
					    "@babel/traverse": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==",
 | 
					      "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/code-frame": "^7.23.5",
 | 
					        "@babel/code-frame": "^7.18.6",
 | 
				
			||||||
        "@babel/generator": "^7.23.6",
 | 
					        "@babel/generator": "^7.20.5",
 | 
				
			||||||
        "@babel/helper-environment-visitor": "^7.22.20",
 | 
					        "@babel/helper-environment-visitor": "^7.18.9",
 | 
				
			||||||
        "@babel/helper-function-name": "^7.23.0",
 | 
					        "@babel/helper-function-name": "^7.19.0",
 | 
				
			||||||
        "@babel/helper-hoist-variables": "^7.22.5",
 | 
					        "@babel/helper-hoist-variables": "^7.18.6",
 | 
				
			||||||
        "@babel/helper-split-export-declaration": "^7.22.6",
 | 
					        "@babel/helper-split-export-declaration": "^7.18.6",
 | 
				
			||||||
        "@babel/parser": "^7.24.0",
 | 
					        "@babel/parser": "^7.20.5",
 | 
				
			||||||
        "@babel/types": "^7.24.0",
 | 
					        "@babel/types": "^7.20.5",
 | 
				
			||||||
        "debug": "^4.3.1",
 | 
					        "debug": "^4.1.0",
 | 
				
			||||||
        "globals": "^11.1.0"
 | 
					        "globals": "^11.1.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@babel/types": {
 | 
					    "@babel/types": {
 | 
				
			||||||
      "version": "7.24.0",
 | 
					      "version": "7.20.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
 | 
					      "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "@babel/helper-string-parser": "^7.23.4",
 | 
					        "@babel/helper-string-parser": "^7.19.4",
 | 
				
			||||||
        "@babel/helper-validator-identifier": "^7.22.20",
 | 
					        "@babel/helper-validator-identifier": "^7.19.1",
 | 
				
			||||||
        "to-fast-properties": "^2.0.0"
 | 
					        "to-fast-properties": "^2.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
@@ -15327,12 +15300,6 @@
 | 
				
			|||||||
        "side-channel": "^1.0.4"
 | 
					        "side-channel": "^1.0.4"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "querystringify": {
 | 
					 | 
				
			||||||
      "version": "2.2.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "queue-microtask": {
 | 
					    "queue-microtask": {
 | 
				
			||||||
      "version": "1.2.3",
 | 
					      "version": "1.2.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
 | 
				
			||||||
@@ -15357,12 +15324,6 @@
 | 
				
			|||||||
      "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
 | 
					      "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "requires-port": {
 | 
					 | 
				
			||||||
      "version": "1.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "resolve-cwd": {
 | 
					    "resolve-cwd": {
 | 
				
			||||||
      "version": "3.0.0",
 | 
					      "version": "3.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
 | 
				
			||||||
@@ -15759,15 +15720,14 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "tough-cookie": {
 | 
					    "tough-cookie": {
 | 
				
			||||||
      "version": "4.1.3",
 | 
					      "version": "4.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
 | 
					      "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "psl": "^1.1.33",
 | 
					        "psl": "^1.1.33",
 | 
				
			||||||
        "punycode": "^2.1.1",
 | 
					        "punycode": "^2.1.1",
 | 
				
			||||||
        "universalify": "^0.2.0",
 | 
					        "universalify": "^0.1.2"
 | 
				
			||||||
        "url-parse": "^1.5.3"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "tr46": {
 | 
					    "tr46": {
 | 
				
			||||||
@@ -15918,9 +15878,9 @@
 | 
				
			|||||||
      "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
 | 
					      "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "universalify": {
 | 
					    "universalify": {
 | 
				
			||||||
      "version": "0.2.0",
 | 
					      "version": "0.1.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
 | 
				
			||||||
      "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
 | 
					      "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "update-browserslist-db": {
 | 
					    "update-browserslist-db": {
 | 
				
			||||||
@@ -15942,16 +15902,6 @@
 | 
				
			|||||||
        "punycode": "^2.1.0"
 | 
					        "punycode": "^2.1.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "url-parse": {
 | 
					 | 
				
			||||||
      "version": "1.5.10",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "requires": {
 | 
					 | 
				
			||||||
        "querystringify": "^2.1.1",
 | 
					 | 
				
			||||||
        "requires-port": "^1.0.0"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "uuid": {
 | 
					    "uuid": {
 | 
				
			||||||
      "version": "3.3.3",
 | 
					      "version": "3.3.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "checkout",
 | 
					  "name": "checkout",
 | 
				
			||||||
  "version": "4.1.2",
 | 
					  "version": "4.0.0",
 | 
				
			||||||
  "description": "checkout action",
 | 
					  "description": "checkout action",
 | 
				
			||||||
  "main": "lib/main.js",
 | 
					  "main": "lib/main.js",
 | 
				
			||||||
  "scripts": {
 | 
					  "scripts": {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,7 +17,6 @@ export interface IGitCommandManager {
 | 
				
			|||||||
  branchDelete(remote: boolean, branch: string): Promise<void>
 | 
					  branchDelete(remote: boolean, branch: string): Promise<void>
 | 
				
			||||||
  branchExists(remote: boolean, pattern: string): Promise<boolean>
 | 
					  branchExists(remote: boolean, pattern: string): Promise<boolean>
 | 
				
			||||||
  branchList(remote: boolean): Promise<string[]>
 | 
					  branchList(remote: boolean): Promise<string[]>
 | 
				
			||||||
  disableSparseCheckout(): Promise<void>
 | 
					 | 
				
			||||||
  sparseCheckout(sparseCheckout: string[]): Promise<void>
 | 
					  sparseCheckout(sparseCheckout: string[]): Promise<void>
 | 
				
			||||||
  sparseCheckoutNonConeMode(sparseCheckout: string[]): Promise<void>
 | 
					  sparseCheckoutNonConeMode(sparseCheckout: string[]): Promise<void>
 | 
				
			||||||
  checkout(ref: string, startPoint: string): Promise<void>
 | 
					  checkout(ref: string, startPoint: string): Promise<void>
 | 
				
			||||||
@@ -172,10 +171,6 @@ class GitCommandManager {
 | 
				
			|||||||
    return result
 | 
					    return result
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  async disableSparseCheckout(): Promise<void> {
 | 
					 | 
				
			||||||
    await this.execGit(['sparse-checkout', 'disable'])
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  async sparseCheckout(sparseCheckout: string[]): Promise<void> {
 | 
					  async sparseCheckout(sparseCheckout: string[]): Promise<void> {
 | 
				
			||||||
    await this.execGit(['sparse-checkout', 'set', ...sparseCheckout])
 | 
					    await this.execGit(['sparse-checkout', 'set', ...sparseCheckout])
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -159,13 +159,7 @@ export async function getSource(settings: IGitSourceSettings): Promise<void> {
 | 
				
			|||||||
      fetchTags?: boolean
 | 
					      fetchTags?: boolean
 | 
				
			||||||
      showProgress?: boolean
 | 
					      showProgress?: boolean
 | 
				
			||||||
    } = {}
 | 
					    } = {}
 | 
				
			||||||
 | 
					    if (settings.sparseCheckout) fetchOptions.filter = 'blob:none'
 | 
				
			||||||
    if (settings.filter) {
 | 
					 | 
				
			||||||
      fetchOptions.filter = settings.filter
 | 
					 | 
				
			||||||
    } else if (settings.sparseCheckout) {
 | 
					 | 
				
			||||||
      fetchOptions.filter = 'blob:none'
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (settings.fetchDepth <= 0) {
 | 
					    if (settings.fetchDepth <= 0) {
 | 
				
			||||||
      // Fetch all branches and tags
 | 
					      // Fetch all branches and tags
 | 
				
			||||||
      let refSpec = refHelper.getRefSpecForAllHistory(
 | 
					      let refSpec = refHelper.getRefSpecForAllHistory(
 | 
				
			||||||
@@ -208,9 +202,7 @@ export async function getSource(settings: IGitSourceSettings): Promise<void> {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Sparse checkout
 | 
					    // Sparse checkout
 | 
				
			||||||
    if (!settings.sparseCheckout) {
 | 
					    if (settings.sparseCheckout) {
 | 
				
			||||||
      await git.disableSparseCheckout()
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      core.startGroup('Setting up sparse checkout')
 | 
					      core.startGroup('Setting up sparse checkout')
 | 
				
			||||||
      if (settings.sparseCheckoutConeMode) {
 | 
					      if (settings.sparseCheckoutConeMode) {
 | 
				
			||||||
        await git.sparseCheckout(settings.sparseCheckout)
 | 
					        await git.sparseCheckout(settings.sparseCheckout)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -29,11 +29,6 @@ export interface IGitSourceSettings {
 | 
				
			|||||||
   */
 | 
					   */
 | 
				
			||||||
  clean: boolean
 | 
					  clean: boolean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					 | 
				
			||||||
   * The filter determining which objects to include
 | 
					 | 
				
			||||||
   */
 | 
					 | 
				
			||||||
  filter: string | undefined
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
   * The array of folders to make the sparse checkout
 | 
					   * The array of folders to make the sparse checkout
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -82,14 +82,6 @@ export async function getInputs(): Promise<IGitSourceSettings> {
 | 
				
			|||||||
  result.clean = (core.getInput('clean') || 'true').toUpperCase() === 'TRUE'
 | 
					  result.clean = (core.getInput('clean') || 'true').toUpperCase() === 'TRUE'
 | 
				
			||||||
  core.debug(`clean = ${result.clean}`)
 | 
					  core.debug(`clean = ${result.clean}`)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // Filter
 | 
					 | 
				
			||||||
  const filter = core.getInput('filter')
 | 
					 | 
				
			||||||
  if (filter) {
 | 
					 | 
				
			||||||
    result.filter = filter
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  core.debug(`filter = ${result.filter}`)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  // Sparse checkout
 | 
					  // Sparse checkout
 | 
				
			||||||
  const sparseCheckout = core.getMultilineInput('sparse-checkout')
 | 
					  const sparseCheckout = core.getMultilineInput('sparse-checkout')
 | 
				
			||||||
  if (sparseCheckout.length) {
 | 
					  if (sparseCheckout.length) {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user