Skip to content

Re-enable caching with some thread-safety improvements #309

Re-enable caching with some thread-safety improvements

Re-enable caching with some thread-safety improvements #309

Workflow file for this run

name: JS
on:
push:
paths:
- 'javascript/**'
- '!javascript/README.rst'
schedule:
- cron: "0 0 1 * *"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
nodejs:
strategy:
matrix:
version: [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
os: [ubuntu-latest, windows-latest, macos-latest]
exclude:
- os: macos-latest
version: 12
- os: macos-latest
version: 13
- os: macos-latest
version: 14
- os: macos-latest
version: 15
include:
- os: macos-13
version: 12
- os: macos-13
version: 13
- os: macos-13
version: 14
- os: macos-13
version: 15
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.version }}
cache: 'npm'
cache-dependency-path: 'javascript/package-lock.json'
- name: Install dependencies
run: make js_dependencies COV=true
- name: Run tests (serially)
if: ${{ matrix.version == 22 && matrix.os == 'ubuntu-latest' }}
run: make js_test COV=true HAS_NPM=0
- name: Run tests (in parallel)
if: ${{ !(matrix.version == 22 && matrix.os == 'ubuntu-latest') }}
run: make js_test_auto COV=true HAS_NPM=0
- name: Upload coverage reports to Codecov
uses: codecov/[email protected]
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: JavaScript
bun:
strategy:
matrix:
version:
- 1.1.21 # latest
- 1.1.20
- 1.1.15
- 1.1.10
- 1.1.5
- 1.1.0
- 1.0.36
- 1.0.30
- 1.0.25
- 1.0.20
- 1.0.15
- 1.0.10
- 1.0.5
- 1.0.0
os: [ubuntu-latest, macos-latest]
include:
- version: 1.1.21
os: macos-13
- version: 1.1.21
os: windows-latest
- version: 1.1.20
os: windows-latest
- version: 1.1.15
os: windows-latest
- version: 1.1.10
os: windows-latest
- version: 1.1.5
os: windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: 22
- name: Install bun ${{ matrix.version }}
run: npm -g install bun@${{ matrix.version }}
- name: Install dependencies
run: make js_bun_dependencies
- name: Run tests (serially)
run: make js_bun_test ${{ contains(matrix.version, '0.5.') && ' ' || 'COV=true' }}
- name: Upload coverage reports to Codecov
uses: codecov/[email protected]
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: JavaScript