Update 0.3.x for 0.3.11 (#455)
1on:
2 pull_request:
3 push:
4 branches:
5 - main
6 - 0.2.x
7 - 0.3.x
8
9name: Continuous integration
10
11jobs:
12 test-features-none:
13 name: "Test Suite [Features: None]"
14 runs-on: ubuntu-latest
15 steps:
16 - uses: actions/checkout@v3
17 - uses: dtolnay/rust-toolchain@stable
18 - uses: Leafwing-Studios/cargo-cache@v1
19 - run: cargo build --no-default-features
20 - run: cargo test --no-default-features
21
22 test-features-default:
23 name: "Test Suite [Features: Default]"
24 runs-on: ubuntu-latest
25 steps:
26 - uses: actions/checkout@v3
27 - uses: dtolnay/rust-toolchain@stable
28 - run: cargo build
29 - run: cargo test
30
31 test-features-default-with-serde:
32 name: "Test Suite [Features: Default + serde]"
33 runs-on: ubuntu-latest
34 steps:
35 - uses: actions/checkout@v3
36 - uses: dtolnay/rust-toolchain@stable
37 - run: cargo build --features serde
38 - run: cargo test --features serde
39
40 test-features-alloc:
41 name: "Test Suite [Features: alloc]"
42 runs-on: ubuntu-latest
43 steps:
44 - uses: actions/checkout@v3
45 - uses: dtolnay/rust-toolchain@stable
46 - run: cargo build --no-default-features --features alloc,grid
47 - run: cargo test --no-default-features --features alloc,grid
48
49 test-features-alloc-no-grid:
50 name: "Test Suite [Features: alloc (no grid)]"
51 runs-on: ubuntu-latest
52 steps:
53 - uses: actions/checkout@v3
54 - uses: dtolnay/rust-toolchain@stable
55 - run: cargo build --no-default-features --features alloc
56 - run: cargo test --no-default-features --features alloc
57
58 test-features-default-no-grid:
59 name: "Test Suite [Features: std (no grid)]"
60 runs-on: ubuntu-latest
61 steps:
62 - uses: actions/checkout@v3
63 - uses: dtolnay/rust-toolchain@stable
64 - uses: Leafwing-Studios/cargo-cache@v1
65 - run: cargo build --no-default-features --features std
66 - run: cargo test --no-default-features --features std
67
68 fmt:
69 name: Rustfmt
70 runs-on: ubuntu-latest
71 steps:
72 - uses: actions/checkout@v3
73 - uses: dtolnay/rust-toolchain@master
74 with:
75 toolchain: stable
76 components: rustfmt
77 - uses: Leafwing-Studios/cargo-cache@v1
78 - run: cargo fmt --all -- --check
79
80 clippy:
81 name: Clippy
82 runs-on: ubuntu-latest
83 steps:
84 - uses: actions/checkout@v3
85 - uses: dtolnay/rust-toolchain@master
86 with:
87 toolchain: nightly
88 components: clippy
89 - uses: Leafwing-Studios/cargo-cache@v1
90 - run: cargo +nightly clippy --workspace -- -D warnings
91
92 doc:
93 name: Documentation
94 runs-on: ubuntu-latest
95 steps:
96 - uses: actions/checkout@v3
97 - uses: dtolnay/rust-toolchain@master
98 with:
99 toolchain: stable
100 components: clippy
101 - uses: Leafwing-Studios/cargo-cache@v1
102 - run: cargo doc
103 env:
104 RUSTDOCFLAGS: "-D warnings"
105
106 markdownlint:
107 name: Markdown Lint
108 runs-on: ubuntu-latest
109 steps:
110 - uses: actions/checkout@v3
111 with:
112 # Full git history is needed to get a proper list of changed files within `super-linter`
113 fetch-depth: 0
114 - name: Run Markdown Lint
115 uses: docker://ghcr.io/github/super-linter:slim-v4
116 env:
117 VALIDATE_ALL_CODEBASE: true
118 VALIDATE_MARKDOWN: true
119 DEFAULT_BRANCH: master