Merge pull request #19485 from Veykril/push-mqlnvzkuplnm
chore: Clean CI a bit
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 0e023bf..30ba633 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -34,7 +34,6 @@
- 'editors/code/**'
proc-macro-srv:
- needs: changes
if: github.repository == 'rust-lang/rust-analyzer'
name: proc-macro-srv
runs-on: ubuntu-latest
@@ -72,7 +71,7 @@
name: Rust
runs-on: ${{ matrix.os }}
env:
- RUSTFLAGS: "-D warnings"
+ RUSTFLAGS: "-Dwarnings"
CC: deny_c
strategy:
@@ -89,7 +88,7 @@
run: |
rustup update --no-self-update stable
rustup default stable
- rustup component add --toolchain stable rust-src
+ rustup component add --toolchain stable rust-src clippy
# We always use a nightly rustfmt, regardless of channel, because we need
# --file-lines.
rustup toolchain install nightly --profile minimal --component rustfmt
@@ -98,24 +97,24 @@
if: matrix.os == 'ubuntu-latest'
run: echo "::add-matcher::.github/rust.json"
- - name: Cache Dependencies
- uses: Swatinem/rust-cache@27b8ea9368cf428f0bfe41b0876b1a7e809d9844
- with:
- workspaces: |
- . -> target
- crates/proc-macro-srv/proc-macro-test/imp -> target
-
- - uses: taiki-e/install-action@nextest
-
- name: Bump opt-level
if: matrix.os == 'ubuntu-latest'
run: sed -i '/\[profile.dev]/a opt-level=1' Cargo.toml
+ - name: Cache Dependencies
+ uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6
+ with:
+ workspaces: |
+ . -> target
+ ./crates/proc-macro-srv/proc-macro-test/imp -> target
+
+ - uses: taiki-e/install-action@nextest
+
- name: Codegen checks (rust-analyzer)
run: cargo codegen --check
- name: Compile (tests)
- run: cargo test --no-run --locked
+ run: cargo test --no-run
# It's faster to `test` before `build` ¯\_(ツ)_/¯
- name: Compile (rust-analyzer)
@@ -126,31 +125,53 @@
if: matrix.os == 'ubuntu-latest' || matrix.os == 'windows-latest' || github.event_name == 'push'
run: cargo nextest run --no-fail-fast --hide-progress-bar --status-level fail
- - name: Switch to stable toolchain
- run: |
- rustup update --no-self-update stable
- rustup component add --toolchain stable rust-src clippy
- rustup default stable
-
- - name: Run analysis-stats on rust-analyzer
- if: matrix.os == 'ubuntu-latest'
- run: target/${{ matrix.target }}/debug/rust-analyzer analysis-stats .
-
- - name: Run analysis-stats on the rust standard libraries
- if: matrix.os == 'ubuntu-latest'
- env:
- RUSTC_BOOTSTRAP: 1
- run: target/${{ matrix.target }}/debug/rust-analyzer analysis-stats --with-deps --no-sysroot --no-test $(rustc --print sysroot)/lib/rustlib/src/rust/library/
-
- name: clippy
if: matrix.os == 'macos-latest'
run: cargo clippy --all-targets -- -D clippy::disallowed_macros -D clippy::dbg_macro -D clippy::todo -D clippy::print_stdout -D clippy::print_stderr
- - name: rustfmt
- if: matrix.os == 'ubuntu-latest'
- run: cargo fmt -- --check
+ analysis-stats:
+ if: github.repository == 'rust-lang/rust-analyzer'
+ name: miri
+ runs-on: ubuntu-latest
- # Weird targets to catch non-portable code
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v4
+
+ - name: Install Rust toolchain
+ run: |
+ rustup update --no-self-update stable
+ rustup default stable
+ rustup component add rustfmt
+
+ - name: Cache Dependencies
+ uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6
+
+ - name: ./rust-analyzer
+ run: cargo run -p rust-analyzer -- analysis-stats . -q
+
+ - name: sysroot/lib/rustlib/src/rust/library/
+ env:
+ RUSTC_BOOTSTRAP: 1
+ run: cargo run -p rust-analyzer -- analysis-stats --with-deps --no-sysroot --no-test $(rustc --print sysroot)/lib/rustlib/src/rust/library/ -q
+
+ rustfmt:
+ if: github.repository == 'rust-lang/rust-analyzer'
+ name: miri
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v4
+
+ - name: Install Rust toolchain
+ run: |
+ rustup update --no-self-update stable
+ rustup default stable
+ rustup component add rustfmt
+
+ - run: cargo fmt -- --check
+
miri:
if: github.repository == 'rust-lang/rust-analyzer'
name: miri
@@ -163,12 +184,13 @@
- name: Install Rust toolchain
run: |
rustup update --no-self-update nightly
- rustup component add miri --toolchain nightly
+ rustup default nightly
+ rustup component add miri
- name: Cache Dependencies
- uses: Swatinem/rust-cache@9bdad043e88c75890e36ad3bbc8d27f0090dd609
+ uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6
- - run: cargo +nightly miri test -p intern --locked
+ - run: cargo miri test -p intern
# Weird targets to catch non-portable code
rust-cross:
@@ -193,7 +215,7 @@
rustup target add ${{ env.targets }} ${{ env.targets_ide }}
- name: Cache Dependencies
- uses: Swatinem/rust-cache@9bdad043e88c75890e36ad3bbc8d27f0090dd609
+ uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6
- name: Check
run: |