浏览代码

Fix: move miri to the main CI so it gets run less

Jonathan Kelley 1 年之前
父节点
当前提交
016b475c32
共有 2 个文件被更改,包括 31 次插入133 次删除
  1. 31 0
      .github/workflows/main.yml
  2. 0 133
      .github/workflows/miri.yml

+ 31 - 0
.github/workflows/main.yml

@@ -107,6 +107,37 @@ jobs:
       - uses: actions/checkout@v4
       - uses: actions/checkout@v4
       - run: cargo clippy --workspace --examples --tests -- -D warnings
       - run: cargo clippy --workspace --examples --tests -- -D warnings
 
 
+  miri:
+    env:
+      CARGO_UNSTABLE_SPARSE_REGISTRY: 'true'
+      RUSTFLAGS: -Dwarnings
+      RUST_BACKTRACE: 1
+      MIRIFLAGS: -Zmiri-tag-gc=1
+      # Change to specific Rust release to pin
+      rust_stable: stable
+      rust_nightly: nightly-2023-11-16
+      rust_clippy: 1.70.0
+
+    steps:
+      - uses: actions/checkout@v4
+      - uses: ilammy/setup-nasm@v1
+      - 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 -- --exact --nocapture
+          cargo miri test --package dioxus-native-core --test miri_native  -- --exact --nocapture
+        env:
+          MIRIFLAGS: -Zmiri-disable-isolation -Zmiri-strict-provenance -Zmiri-retag-fields
+          PROPTEST_CASES: 10
+
   matrix_test:
   matrix_test:
     runs-on: ${{ matrix.platform.os }}
     runs-on: ${{ matrix.platform.os }}
     env:
     env:

+ 0 - 133
.github/workflows/miri.yml

@@ -1,133 +0,0 @@
-name: Miri Tests
-
-on:
-  push:
-    # Run in PRs and for bors, but not on master.
-    branches:
-      - 'auto'
-      - 'try'
-    paths:
-      - packages/**
-      - examples/**
-      - src/**
-      - .github/**
-      - lib.rs
-      - Cargo.toml
-  pull_request:
-    types: [opened, synchronize, reopened, ready_for_review]
-    branches:
-      - 'master'
-  schedule:
-    - cron: '6 6 * * *' # At 6:06 UTC every day.
-
-env:
-  CARGO_UNSTABLE_SPARSE_REGISTRY: 'true'
-  RUSTFLAGS: -Dwarnings
-  RUST_BACKTRACE: 1
-  # Change to specific Rust release to pin
-  rust_stable: stable
-  rust_nightly: nightly-2023-11-16
-  rust_clippy: 1.70.0
-  # When updating this, also update:
-  # - README.md
-  # - tokio/README.md
-  # - CONTRIBUTING.md
-  # - tokio/Cargo.toml
-  # - tokio-util/Cargo.toml
-  # - tokio-test/Cargo.toml
-  # - tokio-stream/Cargo.toml
-  # rust_min: 1.49.0
-
-concurrency:
-  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
-  cancel-in-progress: true
-
-jobs:
-  test:
-    runs-on: ${{ matrix.os }}
-    env:
-      RUST_BACKTRACE: 1
-      HOST_TARGET: ${{ matrix.host_target }}
-    strategy:
-      fail-fast: false
-      matrix:
-        include:
-          - os: ubuntu-latest
-            host_target: x86_64-unknown-linux-gnu
-          # - os: macos-latest
-          #   host_target: x86_64-apple-darwin
-          # - os: windows-latest
-          #   host_target: i686-pc-windows-msvc
-          # - os: windows-latest
-          #   host_target: i686-pc-windows-msvc
-          # - os: windows-latest
-          #   host_target: i686-pc-windows-msvc
-          # - os: windows-latest
-          #   host_target: i686-pc-windows-msvc
-    steps:
-      - 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@v4
-      - uses: ilammy/setup-nasm@v1
-      - 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 -- --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: 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: |
-      #     if [[ ${{ github.event_name }} == 'schedule' ]]; then
-      #       echo "Building against latest rustc git version"
-      #       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