3838 env :
3939 NETCOREHOST_TEST_NETCORE_VERSION : net${{ matrix.dotnet }}
4040 steps :
41- - uses : actions/checkout@v4
41+ - uses : actions/checkout@v6
4242
4343 - name : Uninstall .NET SDKs
4444 run : ./.github/scripts/uninstall-dotnet-${{ matrix.os }}
5252 run : dotnet --info
5353
5454 - name : Install latest ${{ matrix.toolchain }}
55- uses : dtolnay/rust-toolchain@stable
55+ uses : dtolnay/rust-toolchain@master
5656 with :
5757 target : ${{ matrix.target }}
5858 toolchain : ${{ matrix.toolchain }}
@@ -64,30 +64,22 @@ jobs:
6464 - name : Test
6565 run : cargo test --target ${{ matrix.target }} --all-targets --no-fail-fast --no-default-features --features "nethost-download $("net" + "${{ matrix.dotnet }}".replace(".", "_"))" -- --nocapture
6666 shell : pwsh
67-
68- cross :
67+
68+ arm-build :
6969 runs-on : ubuntu-latest
7070 strategy :
7171 fail-fast : false
7272 matrix :
7373 toolchain : ["beta"]
7474 target : ["aarch64-unknown-linux-gnu", "armv7-unknown-linux-gnueabihf"]
75-
7675 steps :
77- - uses : actions/checkout@v4
78-
79- - name : Install latest ${{ matrix.toolchain }}
80- uses : dtolnay/rust-toolchain@stable
81- with :
82- target : ${{ matrix.target }}
83- toolchain : ${{ matrix.toolchain }}
84-
85- - name : Install cross
86- # temporary fix, see cross-rs/cross#1561
87- run : RUSTFLAGS="" cargo install cross --git https://github.com/cross-rs/cross
88-
89- - name : Build
90- run : cross build --target ${{ matrix.target }}
76+ - uses : actions/checkout@v6
77+ - name : Install latest rust nightly for ${{ matrix.target }}
78+ uses : dtolnay/rust-toolchain@nightly
79+ with :
80+ targets : ${{ matrix.target }}
81+ - name : Check main crate
82+ run : cargo check --target ${{ matrix.target }} --all-features
9183
9284 examples :
9385 runs-on : ubuntu-latest
@@ -96,17 +88,58 @@ jobs:
9688 toolchain : ["beta"]
9789 example : ["run-app", "run-app-with-args", "call-managed-function", "passing-parameters", "return-string-from-managed"]
9890 steps :
99- - uses : actions/checkout@v4
91+ - uses : actions/checkout@v6
10092 - name : Install latest ${{ matrix.toolchain }}
101- uses : dtolnay/rust-toolchain@stable
93+ uses : dtolnay/rust-toolchain@master
10294 with :
103- toolchain : ${{ matrix.toolchain }}
95+ toolchain : ${{ matrix.toolchain }}
10496 - name : Build .NET project for '${{ matrix.example }}'
10597 working-directory : ./examples/${{ matrix.example }}/ExampleProject
10698 run : dotnet build
10799 - name : Run example '${{ matrix.example }}'
108100 run : cargo run --example ${{ matrix.example }}
109-
101+
102+ nightly-examples :
103+ runs-on : windows-latest
104+ strategy :
105+ matrix :
106+ toolchain : ["nightly"]
107+ example : ["call-native-function"]
108+ steps :
109+ - uses : actions/checkout@v6
110+ - name : Install latest ${{ matrix.toolchain }}
111+ uses : dtolnay/rust-toolchain@master
112+ with :
113+ toolchain : ${{ matrix.toolchain }}
114+ - name : Build .NET project for '${{ matrix.example }}'
115+ working-directory : ./examples/${{ matrix.example }}/ExampleProject
116+ run : dotnet build
117+ - name : Run example '${{ matrix.example }}'
118+ env :
119+ RUSTFLAGS : -Z export-executable-symbols
120+ run : cargo run --example ${{ matrix.example }}
121+
122+ hack :
123+ runs-on : ubuntu-latest
124+ steps :
125+ - uses : actions/checkout@v6
126+ - name : Install latest nightly
127+ uses : dtolnay/rust-toolchain@nightly
128+ - name : cargo install cargo-hack
129+ uses : taiki-e/install-action@cargo-hack
130+ - name : cargo hack
131+ run : cargo hack --feature-powerset check
132+
133+ machete :
134+ runs-on : ubuntu-latest
135+ steps :
136+ - uses : actions/checkout@v6
137+ - name : Install latest nightly
138+ uses : dtolnay/rust-toolchain@nightly
139+ - name : cargo install cargo-machete
140+ uses : taiki-e/install-action@cargo-machete
141+ - run : cargo machete
142+
110143 documentation :
111144 runs-on : ${{ matrix.os }}-latest
112145 strategy :
@@ -115,11 +148,9 @@ jobs:
115148 - os : ubuntu
116149 - os : windows
117150 steps :
118- - uses : actions/checkout@v4
151+ - uses : actions/checkout@v6
119152 - name : Install latest nightly
120- uses : dtolnay/rust-toolchain@stable
121- with :
122- toolchain : nightly
153+ uses : dtolnay/rust-toolchain@nightly
123154 - name : Generate documentation
124155 run : cargo doc --all-features
125156 - name : Install cargo-deadlinks
@@ -135,12 +166,11 @@ jobs:
135166 - os : ubuntu
136167 - os : windows
137168 steps :
138- - uses : actions/checkout@v4
169+ - uses : actions/checkout@v6
139170 - name : Install latest nightly
140- uses : dtolnay/rust-toolchain@stable
171+ uses : dtolnay/rust-toolchain@nightly
141172 with :
142- toolchain : nightly
143- components : clippy
173+ components : clippy
144174
145175 - name : Clippy check
146176 run : cargo clippy --all-features
@@ -153,11 +183,10 @@ jobs:
153183 - os : ubuntu
154184 - os : windows
155185 steps :
156- - uses : actions/checkout@v4
186+ - uses : actions/checkout@v6
157187 - name : Install latest nightly
158- uses : dtolnay/rust-toolchain@stable
188+ uses : dtolnay/rust-toolchain@nightly
159189 with :
160- toolchain : nightly
161190 components : rustfmt
162191
163192 - name : Format check
0 commit comments