Files
jquery/.github/workflows/node.js.yml
dependabot[bot] 607b25eb08 Build: Bump the github-actions group with 3 updates
Bumps the github-actions group with 3 updates: [actions/checkout](https://github.com/actions/checkout), [actions/cache](https://github.com/actions/cache) and [github/codeql-action](https://github.com/github/codeql-action).

Closes gh-5698

Updates `actions/checkout` from 4.2.2 to 5.0.0
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](11bd71901b...08c6903cd8)

Updates `actions/cache` from 4.2.3 to 4.2.4
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](5a3ec84eff...0400d5f644)

Updates `github/codeql-action` from 3.29.2 to 3.29.11
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](181d5eefc2...3c3833e0f8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/cache
  dependency-version: 4.2.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: github/codeql-action
  dependency-version: 3.29.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-03 00:50:00 +02:00

151 lines
5.1 KiB
YAML

name: Node
on:
pull_request:
push:
branches-ignore: "dependabot/**"
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build-and-test:
runs-on: ubuntu-latest
name: ${{ matrix.NPM_SCRIPT }} - ${{ matrix.NAME }} (${{ matrix.NODE_VERSION }})
strategy:
fail-fast: false
matrix:
NAME: ["Node"]
NODE_VERSION: [18.x, 20.x, 22.x, 23.x]
NPM_SCRIPT: ["test:browserless"]
include:
- NAME: "Node"
NODE_VERSION: "22.x"
NPM_SCRIPT: "lint"
- NAME: "Chrome/Firefox"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:browser"
- NAME: "Chrome"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:slim"
- NAME: "Chrome"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:no-deprecated"
- NAME: "Chrome"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:selector-native"
- NAME: "Chrome"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:esm"
- NAME: "Firefox ESR (new)"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:firefox"
- NAME: "Firefox ESR (old)"
NODE_VERSION: "22.x"
NPM_SCRIPT: "test:firefox"
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Use Node.js ${{ matrix.NODE_VERSION }}
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: ${{ matrix.NODE_VERSION }}
- name: Cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-npm-lock-
- name: Set download URL for Firefox ESR (old)
run: |
echo "FIREFOX_SOURCE_URL=https://download.mozilla.org/?product=firefox-esr-latest-ssl&lang=en-US&os=linux64" >> "$GITHUB_ENV"
if: contains(matrix.NAME, 'Firefox ESR (old)')
- name: Set download URL for Firefox ESR (new)
run: |
echo "FIREFOX_SOURCE_URL=https://download.mozilla.org/?product=firefox-esr-next-latest-ssl&lang=en-US&os=linux64" >> "$GITHUB_ENV"
if: contains(matrix.NAME, 'Firefox ESR (new)')
- name: Install Firefox ESR
run: |
# Support: Firefox <135 only
# Older Firefox used to be compressed using bzip2, newer using xz. Try
# to uncompress using xz, fall back to bzip2 if that fails.
# Note: this will download the old Firefox ESR twice, but it will still work
# when the current ESR version starts to use xz with no changes to the code.
wget --no-verbose "$FIREFOX_SOURCE_URL" -O - | tar -Jx -C "$HOME" || \
wget --no-verbose "$FIREFOX_SOURCE_URL" -O - | tar -jx -C "$HOME"
echo "PATH=${HOME}/firefox:$PATH" >> "$GITHUB_ENV"
echo "FIREFOX_BIN=${HOME}/firefox/firefox" >> "$GITHUB_ENV"
if: contains(matrix.NAME, 'Firefox ESR')
- name: Install dependencies
run: npm install
- name: Build all for linting
run: npm run build:all
if: contains(matrix.NPM_SCRIPT, 'lint')
- name: Run tests
run: npm run ${{ matrix.NPM_SCRIPT }}
ie:
runs-on: windows-latest
env:
NODE_VERSION: 22.x
name: test:ie - IE
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: ${{ env.NODE_VERSION }}
- name: Cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
- name: Install dependencies
run: npm install
- name: Run tests in Edge in IE mode
run: npm run test:ie
safari:
runs-on: macos-latest
env:
NODE_VERSION: 22.x
name: test:safari - Safari
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: ${{ env.NODE_VERSION }}
- name: Cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
- name: Install dependencies
run: npm install
- name: Run tests
run: npm run test:safari