fix(deps-dev): bump @wordpress/scripts from 32.6.0 to 34.0.0 #3700
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Test | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - develop | |
| - trunk | |
| pull_request: | |
| types: | |
| - opened | |
| - synchronize | |
| - ready_for_review | |
| # Cancels all previous workflow runs for pull requests that have not completed. | |
| concurrency: | |
| # The concurrency group contains the workflow name and the branch name for pull requests | |
| # or the commit hash for any other events. | |
| group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} | |
| cancel-in-progress: true | |
| # Disable permissions for all available scopes by default. | |
| # Any needed permissions should be configured at the job level. | |
| permissions: {} | |
| jobs: | |
| # Runs the PHP coding standards checks. | |
| phpcs: | |
| name: Run PHPCS coding standards checks | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| timeout-minutes: 5 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Set up PHP | |
| uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2.37.2 | |
| with: | |
| php-version: '8.3' | |
| coverage: none | |
| tools: cs2pr | |
| # This date is used to ensure that the PHPCS cache is cleared at least once every week. | |
| # http://man7.org/linux/man-pages/man1/date.1.html | |
| - name: "Get last Monday's date" | |
| id: get-date | |
| run: echo "date=$(/bin/date -u --date='last Mon' "+%F")" >> "$GITHUB_OUTPUT" | |
| - name: Cache PHPCS scan cache | |
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: tests/_output/phpcs-cache.json | |
| key: ${{ runner.os }}-date-${{ steps.get-date.outputs.date }}-phpcs-cache-${{ hashFiles('**/composer.json', 'phpcs.xml.dist') }} | |
| - name: Get changed files | |
| id: changed-files | |
| uses: tj-actions/changed-files@9426d40962ed5378910ee2e21d5f8c6fcbf2dd96 # v47.0.6 | |
| with: | |
| files: | | |
| **/*.php | |
| - name: Install Composer dependencies | |
| uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # v4.0.0 | |
| with: | |
| composer-options: '--prefer-dist' | |
| - name: Run PHPCS | |
| id: phpcs | |
| run: | | |
| if [[ "${{ steps.changed-files.outputs.any_changed }}" == 'true' && "${{ github.event_name }}" == "pull_request" ]]; then | |
| HEAD_REF=$(git rev-parse HEAD) | |
| git checkout $HEAD_REF | |
| ./vendor/bin/phpcs-changed -s --git --git-base origin/${{ github.base_ref }} ${{ steps.changed-files.outputs.all_changed_files }} | |
| elif [[ "${{ github.event_name }}" == "push" ]]; then | |
| composer lint | |
| fi | |
| # Runs the PHP compat coding standards checks. | |
| phpcompat: | |
| name: Run PHP compatibility checks | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| timeout-minutes: 5 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Set up PHP | |
| uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2.37.2 | |
| with: | |
| php-version: '8.3' | |
| coverage: none | |
| tools: cs2pr | |
| # This date is used to ensure that the PHPCS cache is cleared at least once every week. | |
| # http://man7.org/linux/man-pages/man1/date.1.html | |
| - name: "Get last Monday's date" | |
| id: get-date | |
| run: echo "date=$(/bin/date -u --date='last Mon' "+%F")" >> "$GITHUB_OUTPUT" | |
| - name: Cache PHP compatibility scan cache | |
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: tests/_output/phpcompat-cache.json | |
| key: ${{ runner.os }}-date-${{ steps.get-date.outputs.date }}-phpcompat-cache-${{ hashFiles('**/composer.json', 'phpcs-compat.xml.dist') }} | |
| - name: Install Composer dependencies | |
| uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # v4.0.0 | |
| with: | |
| composer-options: '--prefer-dist' | |
| - name: Run PHP compatibility checks | |
| id: phpcompat | |
| run: ./vendor/bin/phpcs --standard=./phpcs-compat.xml.dist -p . | |
| # Runs the VIP coding standards checks. | |
| vipcs: | |
| name: Run VIP coding standards checks | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| timeout-minutes: 5 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Set up PHP | |
| uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2.37.2 | |
| with: | |
| php-version: '8.3' | |
| coverage: none | |
| tools: cs2pr | |
| - name: Run VIPCS | |
| uses: 10up/wpcs-action@39f1a9eb6139795e6798d11b51eeecf5a9678ccc # v2.1.0 | |
| with: | |
| standard: WordPress-VIP-Go | |
| use_local_config: false | |
| enable_warnings: false | |
| only_changed_lines: false | |
| excludes: tests | |
| # Runs PHP static analysis tests. | |
| phpstan: | |
| name: Run PHP static analysis | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| timeout-minutes: 5 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Set up PHP | |
| uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2.37.2 | |
| with: | |
| php-version: 8.3 | |
| coverage: none | |
| tools: cs2pr | |
| # This date is used to ensure that the PHPCS cache is cleared at least once every week. | |
| # http://man7.org/linux/man-pages/man1/date.1.html | |
| - name: "Get last Monday's date" | |
| id: get-date | |
| run: echo "date=$(/bin/date -u --date='last Mon' "+%F")" >> "$GITHUB_OUTPUT" | |
| - name: Cache PHP Static Analysis scan cache | |
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: tests/_output # This is defined in the base.neon file. | |
| key: 'phpstan-result-cache-${{ runner.os }}-date-${{ steps.get-date.outputs.date }}' | |
| restore-keys: | | |
| phpstan-result-cache- | |
| - name: Install Composer dependencies | |
| uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # v4.0.0 | |
| - name: Make Composer packages available globally | |
| run: echo "${PWD}/vendor/bin" >> "$GITHUB_PATH" | |
| - name: Run PHP static analysis tests | |
| id: phpstan | |
| run: phpstan analyse -vvv --error-format=checkstyle | cs2pr | |
| - name: Save result cache | |
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| if: ${{ !cancelled() }} | |
| with: | |
| path: tests/_output | |
| key: 'phpstan-result-cache-${{ runner.os }}-date-${{ steps.get-date.outputs.date }}' | |
| # Runs the PHPUnit tests for WordPress. | |
| phpunit: | |
| name: Test PHP ${{ matrix.php }} WP ${{ matrix.wp }}${{ matrix.coverage && ' with coverage' || '' }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| php: [ '8.4', '8.3', '8.2', '8.1', '8.0', '7.4' ] | |
| wp: [ latest, trunk ] | |
| coverage: [ false ] | |
| include: | |
| - php: '8.4' | |
| wp: latest | |
| coverage: true | |
| env: | |
| WP_ENV_PHP_VERSION: ${{ matrix.php }} | |
| WP_ENV_CORE: ${{ matrix.wp == 'trunk' && 'WordPress/WordPress' || format( 'https://wordpress.org/wordpress-{0}.zip', matrix.wp ) }} | |
| steps: | |
| - name: Configure environment variables | |
| run: | | |
| echo "PHP_FPM_UID=$(id -u)" >> "$GITHUB_ENV" | |
| echo "PHP_FPM_GID=$(id -g)" >> "$GITHUB_ENV" | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| ## | |
| # This allows Composer dependencies to be installed using a single step. | |
| # | |
| # Since the tests are currently run within the Docker containers where the PHP version varies, | |
| # the same PHP version needs to be configured for the action runner machine so that the correct | |
| # dependency versions are installed and cached. | |
| ## | |
| - name: Set up PHP | |
| uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2.37.2 | |
| with: | |
| php-version: '${{ matrix.php }}' | |
| coverage: none | |
| - name: Install Composer dependencies | |
| uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # v4.0.0 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| cache: 'npm' | |
| node-version-file: '.nvmrc' | |
| - name: Install NPM dependencies | |
| run: npm ci | |
| - name: Build assets | |
| run: npm run build | |
| - name: Start the Docker testing environment | |
| uses: nick-fields/retry@ad984534de44a9489a53aefd81eb77f87c70dc60 # v4.0.0 | |
| with: | |
| timeout_minutes: 10 | |
| max_attempts: 3 | |
| command: | | |
| if [ "${{ matrix.coverage }}" == "true" ]; then | |
| npm run env start -- --xdebug=coverage | |
| else | |
| npm run env start | |
| fi | |
| - name: Log versions | |
| run: | | |
| npm run env -- run cli php -- -v | |
| npm run env -- run cli wp core version | |
| - name: Run PHPUnit tests${{ matrix.coverage && ' with coverage report' || '' }} | |
| id: phpunit | |
| run: | | |
| npm run test:php | |
| - name: Upload HTML coverage report as artifact | |
| if: ${{ matrix.coverage }} | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: wp-code-coverage-${{ matrix.php }}-${{ matrix.wp }} | |
| path: tests/_output/html | |
| overwrite: true | |
| # Runs JavaScript code quality checks. | |
| jslint: | |
| name: Run JavaScript code quality checks | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| timeout-minutes: 5 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Setup Node.js | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| cache: 'npm' | |
| node-version-file: '.nvmrc' | |
| - name: Install NPM dependencies | |
| run: npm ci | |
| - name: Get updated JS files | |
| id: changed-files | |
| uses: tj-actions/changed-files@9426d40962ed5378910ee2e21d5f8c6fcbf2dd96 # v47.0.6 | |
| with: | |
| files: | | |
| **/*.js | |
| **/*.json | |
| - name: Run JavaScript linting | |
| run: | | |
| if [[ "${{ steps.changed-files.outputs.any_changed }}" == 'true' && "${{ github.event_name }}" == "pull_request" ]]; then | |
| npx wp-scripts lint-js ${{ steps.changed-files.outputs.all_changed_files }} | |
| elif [[ "${{ github.event_name }}" == "push" ]]; then | |
| npm run lint:js | |
| fi | |
| - name: Run TypeScript type checking | |
| run: npm run typecheck | |
| # Runs E2E tests. | |
| e2e: | |
| name: Run E2E tests on ${{ matrix.core.name }} | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| core: | |
| - { name: 'WP latest', version: 'latest' } | |
| - { name: 'WP minimum', version: 'WordPress/WordPress#7.0' } | |
| - { name: 'WP trunk', version: 'WordPress/WordPress#master' } | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Set up PHP | |
| uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # v2.37.2 | |
| with: | |
| php-version: 8.3 | |
| coverage: none | |
| - name: Install Composer dependencies | |
| uses: ramsey/composer-install@65e4f84970763564f46a70b8a54b90d033b3bdda # v4.0.0 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| cache: 'npm' | |
| node-version-file: '.nvmrc' | |
| - name: Install NPM dependencies | |
| run: npm ci | |
| - name: Build assets | |
| run: npm run build | |
| - name: Set the core version | |
| run: ./tests/bin/set-core-version.js ${{ matrix.core.version }} | |
| - name: Start the Docker testing environment | |
| uses: nick-fields/retry@ad984534de44a9489a53aefd81eb77f87c70dc60 # v4.0.0 | |
| with: | |
| timeout_minutes: 10 | |
| max_attempts: 3 | |
| command: | | |
| npm run env:start | |
| - name: Install Playwright browsers | |
| run: npx playwright install --with-deps chromium | |
| - name: Log versions | |
| run: | | |
| npm run env -- run cli php -- -v | |
| npm run env -- run cli wp core version | |
| - name: Run E2E tests | |
| run: npm run test:e2e | |
| - name: Upload E2E test results as artifact | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| if: always() | |
| with: | |
| name: playwright-report | |
| path: artifacts/test-results | |
| retention-days: 2 | |
| if-no-files-found: ignore | |
| # Runs spell checking. | |
| spell-checker: | |
| name: Run spell checking | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Spell Check | |
| uses: crate-ci/typos@a8168dc2984a9e2352f183ffe788f0f23a300389 # v1.49.1 | |
| with: | |
| files: ./ | |
| # Runs dependency review. | |
| dependency-review: | |
| name: Run dependency review | |
| if: github.event_name == 'pull_request' | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| show-progress: ${{ runner.debug == '1' && 'true' || 'false' }} | |
| persist-credentials: false | |
| - name: Dependency Review | |
| uses: actions/dependency-review-action@a1d282b36b6f3519aa1f3fc636f609c47dddb294 # v5.0.0 | |
| with: | |
| license-check: true | |
| vulnerability-check: false | |
| config-file: 10up/.github/.github/dependency-review-config.yml@trunk |