Miri tests #1783
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Miri tests | |
on: | |
push: | |
paths-ignore: | |
- '.devcontainer/**' | |
- '.gitpod.yml' | |
- '.vscode/**' | |
- 'tests/**' | |
pull_request: | |
paths-ignore: | |
- '.devcontainer/**' | |
- '.gitpod.yml' | |
- '.vscode/**' | |
- 'tests/**' | |
schedule: | |
# Run against the last commit on the default branch on Friday at 9pm (UTC?) | |
- cron: '0 21 * * 5' | |
jobs: | |
pre_job: | |
runs-on: ubuntu-latest | |
outputs: | |
should_skip: ${{ steps.skip_check.outputs.should_skip }} | |
steps: | |
- id: skip_check | |
# https://github.com/marketplace/actions/skip-duplicate-actions | |
uses: fkirc/skip-duplicate-actions@v5 | |
with: | |
concurrent_skipping: 'same_content' | |
do_not_skip: '["pull_request", "workflow_dispatch", "schedule"]' | |
test: | |
needs: pre_job | |
if: needs.pre_job.outputs.should_skip != 'true' | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Moka | |
uses: actions/checkout@v4 | |
- name: Install Rust nightly toolchain with Miri | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: nightly | |
components: miri | |
- run: cargo miri setup | |
- name: Run Miri test on deque module using tree borrows | |
run: cargo miri test deque --features 'sync, future' | |
env: | |
MIRIFLAGS: '-Zmiri-tree-borrows' | |
- name: Run Miri test on timer_wheel module using tree borrows | |
run: cargo miri test timer_wheel --features 'sync, future' | |
env: | |
MIRIFLAGS: '-Zmiri-tree-borrows' | |
- name: Run Miri test on deque module using stacked borrows | |
run: cargo miri test deque --features 'sync, future' | |
- name: Run Miri test on timer_wheel module using stacked borrows | |
run: cargo miri test timer_wheel --features 'sync, future' |