|
@@ -38,36 +38,54 @@ jobs:
|
|
|
# - os: windows-latest
|
|
|
# host_target: i686-pc-windows-msvc
|
|
|
steps:
|
|
|
- - uses: actions/checkout@v3
|
|
|
-
|
|
|
- name: Set the tag GC interval to 1 on linux
|
|
|
if: runner.os == 'Linux'
|
|
|
run: echo "MIRIFLAGS=-Zmiri-tag-gc=1" >> $GITHUB_ENV
|
|
|
|
|
|
+ - uses: actions/checkout@v3
|
|
|
+ - name: Install Rust ${{ env.rust_nightly }}
|
|
|
+ uses: dtolnay/rust-toolchain@master
|
|
|
+ with:
|
|
|
+ toolchain: ${{ env.rust_nightly }}
|
|
|
+ components: miri
|
|
|
+ - uses: Swatinem/rust-cache@v2
|
|
|
+ - name: miri
|
|
|
+ # Many of tests in tokio/tests and doctests use #[tokio::test] or
|
|
|
+ # #[tokio::main] that calls epoll_create1 that Miri does not support.
|
|
|
+ # run: cargo miri test --features full --lib --no-fail-fast
|
|
|
+ run: |
|
|
|
+ cargo miri test --package dioxus-core --test miri_stress -- --exact --nocapture
|
|
|
+ cargo miri test --package dioxus-native-core --test miri_native -- --exact --nocapture
|
|
|
+
|
|
|
+ # working-directory: tokio
|
|
|
+ env:
|
|
|
+ MIRIFLAGS: -Zmiri-disable-isolation -Zmiri-strict-provenance -Zmiri-retag-fields
|
|
|
+ PROPTEST_CASES: 10
|
|
|
+
|
|
|
# Cache the global cargo directory, but NOT the local `target` directory which
|
|
|
# we cannot reuse anyway when the nightly changes (and it grows quite large
|
|
|
# over time).
|
|
|
- - name: Add cache for cargo
|
|
|
- id: cache
|
|
|
- uses: actions/cache@v3
|
|
|
- with:
|
|
|
- path: |
|
|
|
- # Taken from <https://doc.rust-lang.org/nightly/cargo/guide/cargo-home.html#caching-the-cargo-home-in-ci>.
|
|
|
- ~/.cargo/bin
|
|
|
- ~/.cargo/registry/index
|
|
|
- ~/.cargo/registry/cache
|
|
|
- ~/.cargo/git/db
|
|
|
- # contains package information of crates installed via `cargo install`.
|
|
|
- ~/.cargo/.crates.toml
|
|
|
- ~/.cargo/.crates2.json
|
|
|
- key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
|
|
- restore-keys: ${{ runner.os }}-cargo
|
|
|
+ # - name: Add cache for cargo
|
|
|
+ # id: cache
|
|
|
+ # uses: actions/cache@v3
|
|
|
+ # with:
|
|
|
+ # path: |
|
|
|
+ # # Taken from <https://doc.rust-lang.org/nightly/cargo/guide/cargo-home.html#caching-the-cargo-home-in-ci>.
|
|
|
+ # ~/.cargo/bin
|
|
|
+ # ~/.cargo/registry/index
|
|
|
+ # ~/.cargo/registry/cache
|
|
|
+ # ~/.cargo/git/db
|
|
|
+ # # contains package information of crates installed via `cargo install`.
|
|
|
+ # ~/.cargo/.crates.toml
|
|
|
+ # ~/.cargo/.crates2.json
|
|
|
+ # key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
|
|
+ # restore-keys: ${{ runner.os }}-cargo
|
|
|
|
|
|
- - name: Install rustup-toolchain-install-master
|
|
|
- if: ${{ steps.cache.outputs.cache-hit != 'true' }}
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- cargo install -f rustup-toolchain-install-master
|
|
|
+ # - name: Install rustup-toolchain-install-master
|
|
|
+ # if: ${{ steps.cache.outputs.cache-hit != 'true' }}
|
|
|
+ # shell: bash
|
|
|
+ # run: |
|
|
|
+ # cargo install -f rustup-toolchain-install-master
|
|
|
# - name: Install "master" toolchain
|
|
|
# shell: bash
|
|
|
# run: |
|
|
@@ -76,12 +94,12 @@ jobs:
|
|
|
# git ls-remote https://github.com/rust-lang/rust/ HEAD | cut -f 1 > rust-version
|
|
|
# fi
|
|
|
# toolchain --host ${{ matrix.host_target }}
|
|
|
- - name: Show Rust version
|
|
|
- run: |
|
|
|
- rustup show
|
|
|
- rustc -Vv
|
|
|
- cargo -V
|
|
|
- - name: Test
|
|
|
- run: |
|
|
|
- MIRIFLAGS="-Zmiri-disable-isolation -Zmiri-ignore-leaks" cargo +nightly miri test --package dioxus-core --test miri_stress -- --exact --nocapture
|
|
|
- MIRIFLAGS="-Zmiri-disable-isolation -Zmiri-ignore-leaks" cargo +nightly miri test --package dioxus-native-core --test miri_native -- --exact --nocapture
|
|
|
+ # - name: Show Rust version
|
|
|
+ # run: |
|
|
|
+ # rustup show
|
|
|
+ # rustc -Vv
|
|
|
+ # cargo -V
|
|
|
+ # - name: Test
|
|
|
+ # run: |
|
|
|
+ # MIRIFLAGS="-Zmiri-disable-isolation -Zmiri-ignore-leaks" cargo +nightly miri test --package dioxus-core --test miri_stress -- --exact --nocapture
|
|
|
+ # MIRIFLAGS="-Zmiri-disable-isolation -Zmiri-ignore-leaks" cargo +nightly miri test --package dioxus-native-core --test miri_native -- --exact --nocapture
|