diff --git a/.github/workflows/miri.yml b/.github/workflows/miri.yml new file mode 100644 index 0000000..fd65e1a --- /dev/null +++ b/.github/workflows/miri.yml @@ -0,0 +1,46 @@ +# SPDX-FileCopyrightText: 2025 RAprogramm +# SPDX-License-Identifier: MIT + +name: Miri + +on: + push: + branches: [main] + pull_request: + branches: [main] + schedule: + - cron: '0 3 * * 1' + +permissions: + contents: read + +env: + CARGO_TERM_COLOR: always + RUST_BACKTRACE: 1 + +jobs: + miri: + name: Miri + runs-on: ubuntu-latest + permissions: + contents: read + actions: write + steps: + - uses: actions/checkout@v4 + + - name: Install Rust nightly with Miri + uses: dtolnay/rust-toolchain@nightly + with: + components: miri + + - name: Setup Rust cache + uses: Swatinem/rust-cache@v2 + with: + key: miri + + - name: Run Miri tests + run: | + cargo miri setup + cargo miri test --all-features + env: + MIRIFLAGS: -Zmiri-symbolic-alignment-check -Zmiri-disable-isolation