Skip to content

fix: implement ref store batch writes #21

fix: implement ref store batch writes

fix: implement ref store batch writes #21

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
types:
- opened
- reopened
- review_requested
- ready_for_review
- synchronize
workflow_dispatch:
permissions:
contents: read
jobs:
linux:
runs-on: ${{ matrix.platform.runner }}
if: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.draft == false) }}
strategy:
matrix:
platform:
- runner: ubuntu-24.04
target: x86_64
- runner: ubuntu-24.04
target: aarch64
- runner: ubuntu-24.04
target: armv7
- runner: ubuntu-24.04
target: s390x
- runner: ubuntu-24.04
target: ppc64le
steps:
- uses: actions/checkout@v4
# The toolchain comes from rust-toolchain.toml, which pins an exact
# nightly: Nemo uses `#![feature(...)]`, so there is no stable build.
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache: true
- uses: taiki-e/install-action@nextest
- name: Build and compile project
run: cargo nextest run --workspace --all-features --no-run
# Single-threaded on purpose: Nemo's evaluator enters a process-global
# timing mutex, so concurrent evaluations in one process panic and poison
# it. See DEVPLAN.md 2.11.
- name: Run tests
run: cargo nextest run --workspace --all-features --test-threads=1
- name: Run doctests
run: cargo test --doc --workspace --all-features -- --test-threads=1
musllinux:
runs-on: ${{ matrix.platform.runner }}
if: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.draft == false) }}
strategy:
matrix:
platform:
- runner: ubuntu-24.04
target: x86_64
- runner: ubuntu-24.04
target: aarch64
- runner: ubuntu-24.04
target: armv7
steps:
- uses: actions/checkout@v4
# The toolchain comes from rust-toolchain.toml, which pins an exact
# nightly: Nemo uses `#![feature(...)]`, so there is no stable build.
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache: true
- uses: taiki-e/install-action@nextest
- name: Build and compile project
run: cargo nextest run --workspace --all-features --no-run
# Single-threaded on purpose: Nemo's evaluator enters a process-global
# timing mutex, so concurrent evaluations in one process panic and poison
# it. See DEVPLAN.md 2.11.
- name: Run tests
run: cargo nextest run --workspace --all-features --test-threads=1
- name: Run doctests
run: cargo test --doc --workspace --all-features -- --test-threads=1
windows:
runs-on: ${{ matrix.platform.runner }}
if: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.draft == false) }}
strategy:
matrix:
platform:
- runner: windows-latest
target: x64
steps:
- uses: actions/checkout@v4
# The toolchain comes from rust-toolchain.toml, which pins an exact
# nightly: Nemo uses `#![feature(...)]`, so there is no stable build.
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache: true
- uses: taiki-e/install-action@nextest
- name: Build and compile project
run: cargo nextest run --workspace --all-features --no-run
# Single-threaded on purpose: Nemo's evaluator enters a process-global
# timing mutex, so concurrent evaluations in one process panic and poison
# it. See DEVPLAN.md 2.11.
- name: Run tests
run: cargo nextest run --workspace --all-features --test-threads=1
- name: Run doctests
run: cargo test --doc --workspace --all-features -- --test-threads=1
macos:
runs-on: ${{ matrix.platform.runner }}
if: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.draft == false) }}
strategy:
matrix:
platform:
- runner: macos-14
target: aarch64
steps:
- uses: actions/checkout@v4
# The toolchain comes from rust-toolchain.toml, which pins an exact
# nightly: Nemo uses `#![feature(...)]`, so there is no stable build.
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache: true
- uses: taiki-e/install-action@nextest
- name: Build and compile project
run: cargo nextest run --workspace --all-features --no-run
# Single-threaded on purpose: Nemo's evaluator enters a process-global
# timing mutex, so concurrent evaluations in one process panic and poison
# it. See DEVPLAN.md 2.11.
- name: Run tests
run: cargo nextest run --workspace --all-features --test-threads=1
- name: Run doctests
run: cargo test --doc --workspace --all-features -- --test-threads=1
ci:
name: CI
if: ${{ always() && (github.event_name == 'workflow_dispatch' || github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.draft == false)) }}
needs: [linux, musllinux, windows, macos]
runs-on: ubuntu-latest
steps:
- run: |
result="${{ (contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')) && 'failure' || 'success' }}"
echo "result: $result"
[[ "$result" == "success" ]] || exit 1