Skip to content

Resolve transaction log data races and position tracking bugs #798

Resolve transaction log data races and position tracking bugs

Resolve transaction log data races and position tracking bugs #798

Workflow file for this run

name: Test
on:
pull_request:
types: [opened, synchronize, reopened]
paths-ignore:
- '**.md'
- 'docs/**'
- 'LICENSE'
- '.gitignore'
concurrency:
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.ref }}
jobs:
checks:
name: Check
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: latest
- name: Use Node.js 24
uses: actions/setup-node@v6
with:
node-version: 24
cache: 'pnpm'
- name: Setup dependencies
uses: ./.github/actions/setup-deps
with:
gh-token: ${{ secrets.GH_TOKEN }}
- name: Check
run: pnpm check
test:
name: Test on Node.js ${{ matrix.node }} and ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
node: [20, 22, 24]
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: latest
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node }}
cache: 'pnpm'
- name: Setup dependencies
uses: ./.github/actions/setup-deps
with:
gh-token: ${{ secrets.GH_TOKEN }}
- name: Build
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
run: pnpm build
- name: Run tests on Node.js ${{ matrix.node }}
run: pnpm coverage
- name: Retry tests on Node.js ${{ matrix.node }} (Windows)
if: failure() && matrix.os == 'windows-latest'
run: pnpm coverage
bun-test:
name: Test on Bun
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: latest
- name: Install Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Setup dependencies
uses: ./.github/actions/setup-deps
with:
gh-token: ${{ secrets.GH_TOKEN }}
- name: Build
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
run: pnpm build
- name: Run tests on Bun
run: pnpm test:bun
- name: Retry tests on Bun (Windows)
if: failure() && matrix.os == 'windows-latest'
run: pnpm test:bun
deno-test:
name: Test on Deno
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: latest
- name: Install Deno
uses: denoland/setup-deno@v2
with:
# Deno 2.7.5 had a bunch of worker related changes that broke under vitest
deno-version: 2.7.4
- name: Setup dependencies
uses: ./.github/actions/setup-deps
with:
gh-token: ${{ secrets.GH_TOKEN }}
- name: Build
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
run: pnpm build
- name: Run tests on Deno
run: pnpm test:deno
- name: Retry tests on Deno (Windows)
if: failure() && matrix.os == 'windows-latest'
run: pnpm test:deno