Skip to content

feat(error): add stable error hierarchy #247

feat(error): add stable error hierarchy

feat(error): add stable error hierarchy #247

Workflow file for this run

name: CI
on:
push:
tags:
- '*'
pull_request:
paths-ignore:
- 'docs/**'
- 'benchmark/**'
- 'examples/**'
- '*.md'
workflow_dispatch:
env:
CARGO_TERM_COLOR: always
jobs:
rust-checks:
name: Rust Checks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Run cargo fmt
run: cargo fmt -- --check
- name: Run cargo clippy
run: cargo clippy --all-targets --all-features -- -D warnings
linux-tests:
name: Linux Tests (${{ matrix.os }}, ${{ matrix.ruby }})
runs-on: ${{ matrix.os }}
env:
HTTPBIN_URL: https://httpbin.io
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
ruby: ['3.3', '3.4', '4.0']
steps:
- uses: actions/checkout@v7
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Install dependencies
run: bundle install
- name: Compile native extension
run: bundle exec rake compile
- name: Run tests
run: bundle exec rake test
macos-tests:
name: macOS Tests (macos-latest, ${{ matrix.ruby }})
runs-on: macos-latest
env:
HTTPBIN_URL: https://httpbin.io
strategy:
fail-fast: false
matrix:
ruby: ['3.3', '3.4', '4.0']
steps:
- uses: actions/checkout@v7
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Install dependencies
run: bundle install
- name: Compile native extension
run: bundle exec rake compile
- name: Run tests
run: bundle exec rake test
windows-gnu-tests:
name: Windows Tests (windows-latest, ${{ matrix.ruby }})
runs-on: windows-latest
env:
CARGO_BUILD_TARGET: x86_64-pc-windows-gnu
HTTPBIN_URL: https://httpbin.io
strategy:
fail-fast: false
matrix:
ruby: ['3.3', '3.4', '4.0']
steps:
- uses: actions/checkout@v7
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-pc-windows-gnu
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests
shell: pwsh
run: ./script/build_windows_gnu.ps1 -SkipBundleInstall -RunTests