Skip to content

Commit 66e97b7

Browse files
committed
Update circle-ci config
1 parent 88cbab8 commit 66e97b7

File tree

1 file changed

+66
-28
lines changed

1 file changed

+66
-28
lines changed

.circleci/config.yml

+66-28
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
version: 2.1
22
orbs:
3-
# codecov: codecov/codecov@3.2.4
4-
rust: circleci/[email protected].0
3+
# codecov: codecov/codecov@3.3.0
4+
rust: circleci/[email protected].1
55

66
jobs:
77
build-and-test:
88
parameters:
99
rust-version:
1010
type: string
11-
default: "1.69.0"
11+
default: "1.75.0"
1212
debian-version:
1313
type: string
14-
default: "buster"
14+
default: "bookworm"
1515
rust-features:
1616
type: string
1717
default: "--all-targets"
@@ -49,7 +49,7 @@ jobs:
4949
type: string
5050
debian-version:
5151
type: string
52-
default: "bullseye"
52+
default: "bookworm"
5353
machine: true
5454
steps:
5555
- checkout
@@ -65,54 +65,92 @@ jobs:
6565
sh -c 'cargo test -q --no-run && kcov-rust && upload-kcov-results-to-codecov'
6666
- store_artifacts:
6767
path: target/cov
68-
# - store_test_results:
69-
# path: target
7068

7169
lint-check:
7270
docker:
73-
- image: cimg/rust:1.69
71+
- image: cimg/rust:1.75
7472
steps:
7573
- checkout
74+
- run:
75+
name: Generate cargo.lock
76+
command: cargo generate-lockfile
7677
- rust/build:
7778
with_cache: false
7879
# - rust/format
79-
# - rust/clippy
80+
- rust/clippy
8081
- rust/test
8182
- run:
8283
name: Build examples
8384
command: cargo build --examples
8485

86+
cargo-semver-check:
87+
docker:
88+
- image: "akubera/rust:stable"
89+
steps:
90+
- checkout
91+
- run:
92+
name: Tool Versions
93+
command: >
94+
rustc --version
95+
&& cargo --version
96+
&& cargo semver-checks --version
97+
- run:
98+
name: cargo semver-checks
99+
command: cargo semver-checks --verbose
100+
- run:
101+
name: cargo semver-checks (no-std)
102+
command: cargo semver-checks --verbose --only-explicit-features
103+
85104
workflows:
86105
version: 2
87106
cargo:build-and-test:
88107
jobs:
108+
- rust/lint-test-build:
109+
name: "lint-test-build:stable"
110+
release: true
111+
version: "1.75"
112+
pre-steps:
113+
- checkout
114+
- run:
115+
command: cargo generate-lockfile
116+
- rust/lint-test-build:
117+
name: "lint-test-build:1.56"
118+
release: true
119+
version: "1.56"
120+
89121
- lint-check
122+
123+
- build-and-test:
124+
name: build-and-test:MSRV
125+
rust-version: "1.43.1"
126+
debian-version: "buster"
127+
90128
- build-and-test:
91-
matrix:
92-
parameters:
93-
rust-version:
94-
- "1.43.1"
95-
- "1.54.0"
129+
name: build-and-test:MSRV:serde
130+
rust-version: "1.43.1"
131+
debian-version: "buster"
132+
rust-features: "--all-targets --features='serde'"
96133

97134
- build-and-test:
98-
name: build-and-test:latest
99-
debian-version: "bullseye"
135+
name: build-and-test:latest
100136

101137
- build-and-test:
102-
matrix:
103-
parameters:
104-
rust-version:
105-
- "1.43.1"
106-
- "1.69.0"
107-
rust-features:
108-
- "--features='serde'"
109-
- "--features='serde,string-only'"
138+
name: build-and-test:latest:serde
139+
rust-features: "--all-targets --features='serde'"
110140

111141
- build-and-test:
112-
name: build-and-test:no-default-features
113-
rust-features: "--no-default-features"
142+
name: build-and-test:no_std
143+
rust-features: "--no-default-features"
144+
145+
- build-and-test:
146+
name: build-and-test:serde+no_std
147+
rust-features: "--no-default-features --features='serde'"
148+
149+
- cargo-semver-check:
150+
requires:
151+
- build-and-test:latest:serde
114152

115153
- upload-coverage:
116-
rust-version: "1.69.0"
154+
rust-version: "1.75.0"
117155
requires:
118-
- build-and-test:latest
156+
- build-and-test:latest:serde

0 commit comments

Comments
 (0)