Skip to content

Commit 6758b56

Browse files
committed
ci: update CI settings
1 parent f94b818 commit 6758b56

1 file changed

Lines changed: 27 additions & 75 deletions

File tree

.github/workflows/ci.yml

Lines changed: 27 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -17,95 +17,55 @@ jobs:
1717
name: Quality Checks
1818
runs-on: ubuntu-latest
1919
steps:
20-
- uses: actions/checkout@v4
20+
- uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1
2121

22-
- name: Cache dependencies
23-
uses: Swatinem/rust-cache@v2
22+
- uses: oxc-project/setup-rust@cd82e1efec7fef815e2c23d296756f31c7cdc03d # v1.0.0
23+
with:
24+
save-cache: ${{ github.ref_name == 'main' }}
25+
cache-key: warm
26+
components: clippy rustfmt
27+
tools: typos-cli,cargo-deny,cargo-machete
2428

2529
- name: Check formatting
2630
run: cargo fmt --all -- --check
2731

2832
- name: Clippy
2933
run: cargo clippy --all-targets --all-features -- -D warnings
3034

31-
- name: Install typos-cli
32-
uses: taiki-e/install-action@v2
33-
with:
34-
tool: typos-cli
35-
3635
- name: Check for typos
3736
run: typos
3837

39-
- name: Install cargo-deny
40-
uses: taiki-e/install-action@v2
41-
with:
42-
tool: cargo-deny
43-
4438
- name: Run cargo-deny
4539
run: cargo deny check
4640

47-
- name: Install cargo-machete
48-
uses: taiki-e/install-action@v2
49-
with:
50-
tool: cargo-machete
51-
5241
- name: Run cargo-machete
5342
run: cargo machete
5443

5544
# Test on multiple platforms with different Rust versions
5645
test:
57-
name: Test ${{ matrix.os }} - ${{ matrix.rust }} ${{ matrix.features != '' && format('({0})', matrix.features) || '' }}
46+
name: Test ${{ matrix.os }} - ${{ matrix.features != '' && format('({0})', matrix.features) || '' }}
5847
runs-on: ${{ matrix.os }}
5948
needs: quality
6049
strategy:
6150
fail-fast: false
6251
matrix:
6352
os: [ubuntu-latest, windows-latest]
64-
rust: [stable, nightly, 1.90.0]
6553
features: [""]
6654
include:
6755
# MacOS with fsevent
6856
- os: macos-latest
69-
rust: stable
70-
features: "--no-default-features --features macos_fsevent"
71-
- os: macos-latest
72-
rust: nightly
73-
features: "--no-default-features --features macos_fsevent"
74-
- os: macos-latest
75-
rust: 1.90.0
7657
features: "--no-default-features --features macos_fsevent"
7758
# MacOS with kqueue
7859
- os: macos-latest
79-
rust: stable
80-
features: "--no-default-features --features macos_kqueue"
81-
- os: macos-latest
82-
rust: nightly
83-
features: "--no-default-features --features macos_kqueue"
84-
- os: macos-latest
85-
rust: 1.90.0
8660
features: "--no-default-features --features macos_kqueue"
8761

8862
steps:
89-
- uses: actions/checkout@v4
90-
91-
- name: Remove rust-toolchain.toml (Unix)
92-
if: runner.os != 'Windows'
93-
run: rm -f rust-toolchain.toml
94-
95-
- name: Remove rust-toolchain.toml (Windows)
96-
if: runner.os == 'Windows'
97-
run: |
98-
if (Test-Path rust-toolchain.toml) {
99-
Remove-Item -Path rust-toolchain.toml
100-
}
63+
- uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1
10164

102-
- name: Install Rust ${{ matrix.rust }}
103-
uses: dtolnay/rust-toolchain@master
65+
- uses: oxc-project/setup-rust@cd82e1efec7fef815e2c23d296756f31c7cdc03d # v1.0.0
10466
with:
105-
toolchain: ${{ matrix.rust }}
106-
107-
- name: Cache dependencies
108-
uses: Swatinem/rust-cache@v2
67+
save-cache: ${{ github.ref_name == 'main' }}
68+
cache-key: warm
10969

11070
- name: Build
11171
run: cargo build --verbose ${{ matrix.features }}
@@ -122,23 +82,18 @@ jobs:
12282
runs-on: ubuntu-latest
12383
needs: quality
12484
steps:
125-
- uses: actions/checkout@v4
126-
127-
- name: Remove rust-toolchain.toml
128-
run: rm -f rust-toolchain.toml
85+
- uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1
12986

130-
- name: Install Rust
131-
uses: dtolnay/rust-toolchain@stable
87+
- uses: oxc-project/setup-rust@f03aedf4620c1d3aa169a2510e24787d362bbe0b # v1.0.8
13288
with:
133-
targets: armv7-linux-androideabi, aarch64-linux-android
134-
135-
- name: Cache dependencies
136-
uses: Swatinem/rust-cache@v2
89+
save-cache: ${{ github.ref_name == 'main' }}
90+
cache-key: warm
91+
tools: cargo-ndk
13792

138-
- name: Install cargo-ndk
139-
uses: taiki-e/install-action@v2
140-
with:
141-
tool: cargo-ndk
93+
- name: Add Rust targets
94+
run: |
95+
rustup target add armv7-linux-androideabi
96+
rustup target add aarch64-linux-android
14297
14398
- name: Build for Android (arm64)
14499
run: cargo ndk --target aarch64-linux-android build --verbose
@@ -152,18 +107,15 @@ jobs:
152107
# runs-on: ubuntu-latest
153108
# needs: quality
154109
# steps:
155-
# - uses: actions/checkout@v4
156-
157-
# - name: Remove rust-toolchain.toml
158-
# run: rm -f rust-toolchain.toml
110+
# - uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1
159111

160-
# - name: Install Rust
161-
# uses: dtolnay/rust-toolchain@nightly
112+
# - uses: oxc-project/setup-rust@f03aedf4620c1d3aa169a2510e24787d362bbe0b # v1.0.8
162113
# with:
163-
# targets: wasm32-wasip2
114+
# save-cache: ${{ github.ref_name == 'main' }}
115+
# cache-key: warm
164116

165-
# - name: Cache dependencies
166-
# uses: Swatinem/rust-cache@v2
117+
# - name: Add Rust target
118+
# run: rustup target add wasm32-wasip2
167119

168120
# - name: Build for WASI
169121
# run: cargo build --target wasm32-wasip2 --verbose

0 commit comments

Comments
 (0)