1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
name: CI
on:
# `push` checks the branch itself, `pull_request` checks the merge result.
push:
pull_request:
# A second push to a branch cancels the run still going for the first one.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
clippy:
# ASIO is Windows-only, and the build script runs `windows-bindgen`
runs-on: windows-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: Clippy (default features)
run: cargo clippy --workspace --all-targets -- -D warnings
- name: Clippy (all features)
run: cargo clippy --workspace --all-targets --all-features -- -D warnings
# Without `--workspace` the features of `azo-sys` are only whatever `azo`
# forwards to it, which is what a dependent crate gets.
- name: Clippy (`azo` on its own)
run: cargo clippy --package azo --all-targets --all-features -- -D warnings
publish-dry-run:
runs-on: windows-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@stable
# `--workspace` verifies `azo` against the locally packaged `azo-sys`,
# rather than the version already on crates.io.
- name: Publish dry-run
run: cargo publish --dry-run --workspace