Skip to content

Commit 931ed4d

Browse files
Merge pull request #986 from knurling-rs/ci-fixes
Update CI & Bump Host MSRV
2 parents 8e517f8 + 37b2045 commit 931ed4d

File tree

8 files changed

+41
-23
lines changed

8 files changed

+41
-23
lines changed

.github/workflows/ci.yml

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- windows-latest
2424
toolchain:
2525
- "stable"
26-
- "1.76" # MSRV
26+
- "1.81" # host MSRV
2727
runs-on: ${{ matrix.os }}
2828
timeout-minutes: 20
2929
steps:
@@ -36,14 +36,14 @@ jobs:
3636
if: matrix.os == 'ubuntu-latest'
3737
run: sudo apt-get update && sudo apt-get install libudev-dev libusb-1.0-0-dev
3838
- name: Check that all crates that can be compiled for the host build, check that defmt compiles with different features, run all unit tests on the host
39-
run: cargo xtask -d test-host ${{ matrix.toolchain == '1.76' && '--skip-ui-tests' || '' }}
39+
run: cargo xtask -d test-host ${{ matrix.toolchain == '1.81' && '--skip-ui-tests' || '' }}
4040

4141
cross:
4242
strategy:
4343
matrix:
4444
toolchain:
4545
- "stable"
46-
- "1.76" # MSRV
46+
- "1.76" # firmware MSRV
4747
runs-on: ubuntu-latest
4848
steps:
4949
- uses: actions/checkout@v4
@@ -59,7 +59,7 @@ jobs:
5959
matrix:
6060
toolchain:
6161
- "1.87" # we pin clippy because it keeps adding new lints
62-
- "1.76" # MSRV
62+
- "1.76" # firmware MSRV
6363
runs-on: ubuntu-latest
6464
steps:
6565
- uses: actions/checkout@v4
@@ -71,17 +71,27 @@ jobs:
7171
run: cargo xtask test-lint-cross
7272

7373
cargo-deny:
74-
runs-on: ubuntu-latest
74+
runs-on: ubuntu-22.04
75+
strategy:
76+
matrix:
77+
checks:
78+
- advisories
79+
- bans licenses sources
80+
# Prevent sudden announcement of a new advisory from failing ci:
81+
continue-on-error: ${{ matrix.checks == 'advisories' }}
7582
steps:
76-
- uses: actions/checkout@v4
77-
- uses: EmbarkStudios/cargo-deny-action@v1
83+
- uses: actions/checkout@v4
84+
- uses: EmbarkStudios/cargo-deny-action@v2
85+
with:
86+
command: check ${{ matrix.checks }}
87+
rust-version: stable
7888

7989
lint:
8090
strategy:
8191
matrix:
8292
toolchain:
8393
- "1.87" # we pin clippy because it keeps adding new lints
84-
- "1.76" # MSRV
94+
- "1.81" # host MSRV
8595
runs-on: ubuntu-latest
8696
timeout-minutes: 10
8797
steps:
@@ -98,7 +108,7 @@ jobs:
98108
matrix:
99109
toolchain:
100110
- "stable"
101-
- "1.76" # MSRV
111+
- "1.81" # host MSRV
102112
runs-on: ubuntu-latest
103113
steps:
104114
- uses: actions/checkout@v4
@@ -114,7 +124,7 @@ jobs:
114124
matrix:
115125
toolchain:
116126
- "stable"
117-
- "1.76" # MSRV
127+
- "1.81" # host MSRV
118128
runs-on: ubuntu-latest
119129
timeout-minutes: 10
120130
steps:
@@ -135,8 +145,8 @@ jobs:
135145
matrix:
136146
toolchain:
137147
- stable
138-
- "1.76" # MSRV
139-
- nightly # some tests use unstable features
148+
- "1.81" # host MSRV
149+
- nightly-2025-08-05 # some tests use unstable features, but avoid LLVM21 due to https://github.com/rust-lang/rust/issues/146065
140150
runs-on: ubuntu-latest
141151
steps:
142152
- uses: actions/checkout@v4
@@ -156,7 +166,7 @@ jobs:
156166
matrix:
157167
toolchain:
158168
- "stable"
159-
- "1.76" # MSRV
169+
- "1.81" # host MSRV
160170
runs-on: ubuntu-latest
161171
steps:
162172
- uses: actions/checkout@v4

CHANGELOG.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -510,6 +510,7 @@ Initial release
510510

511511
* [#952] Support sending dtr on connection for serial port input
512512
* [#965] Also support `--log-format=online` or `--log-format=default`
513+
* [#986] Bump MSRV to 1.81
513514

514515
### [defmt-print-v1.0.0] (2025-04-01)
515516

@@ -590,6 +591,7 @@ Initial release
590591
### [defmt-decoder-next]
591592

592593
* [#958] Update to object 0.36
594+
* [#986] Bump MSRV to 1.81
593595

594596
### [defmt-decoder-v1.0.0] (2025-04-01)
595597

@@ -662,7 +664,8 @@ Initial release
662664

663665
### [defmt-parser-next]
664666

665-
* [#956]: Link LICENSE-* in the crate folder
667+
* [#956] Link `LICENSE-*` in the crate folder
668+
* [#986] Bump MSRV to 1.81
666669

667670
### [defmt-parser-v1.0.0] (2025-04-01)
668671

@@ -918,7 +921,7 @@ Initial release
918921

919922
### [defmt-json-schema-next]
920923

921-
* No changes
924+
* [#986] Bump MSRV to 1.78
922925

923926
### [defmt-json-schema-v0.1.0] (2022-03-10)
924927

@@ -948,6 +951,7 @@ Initial release
948951

949952
---
950953

954+
[#986]: https://github.com/knurling-rs/defmt/pull/986
951955
[#972]: https://github.com/knurling-rs/defmt/pull/972
952956
[#968]: https://github.com/knurling-rs/defmt/pull/968
953957
[#965]: https://github.com/knurling-rs/defmt/pull/965

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ This repository contains the following packages:
2525

2626
## MSRV
2727

28-
The minimum supported Rust version is 1.76 (or Ferrocene 24.05). `defmt` is tested against the latest stable Rust version and the MSRV.
28+
The minimum supported Rust version is 1.76 (or Ferrocene 24.05) for the crates that cross-compile to your microcontroller. The minimum supported Rust version is 1.81 for all host-side crates.
29+
30+
`defmt` is tested against the latest stable Rust version and the MSRV.
2931

3032
## Developer Information
3133

decoder/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ into formatted strings. It is used by
1010

1111
## MSRV
1212

13-
The minimum supported Rust version is 1.76 (or Ferrocene 24.05). `defmt` is tested against the latest stable Rust version and the MSRV.
13+
The minimum supported Rust version is 1.81. `defmt` is tested against the latest stable Rust version and the MSRV.
1414

1515
## Support
1616

decoder/defmt-json-schema/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ This library describes the JSON output from
99

1010
## MSRV
1111

12-
The minimum supported Rust version is 1.76 (or Ferrocene 24.05). `defmt` is tested against the latest stable Rust version and the MSRV.
12+
The minimum supported Rust version is 1.81. `defmt` is tested against the latest stable Rust version and the MSRV.
1313

1414
## Support
1515

deny.toml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,11 @@ confidence-threshold = 0.8
105105
# Allow 1 or more licenses on a per-crate basis, so that particular licenses
106106
# aren't accepted for every possible crate as with the normal allow list
107107
exceptions = [
108-
# Each entry is the crate and version constraint, and its specific allow
109-
# list
110-
#{ allow = ["Zlib"], crate = "adler32" },
108+
# These crates are only used host-side so we are more flexible with
109+
# the licences. We only need to avoid copyleft on the firmware side.
110+
{ allow = ["MPL-2.0"], crate = "serialport" },
111+
{ allow = ["MPL-2.0"], crate = "colored" },
112+
{ allow = ["MPL-2.0"], crate = "alterable_logger" },
111113
]
112114

113115
# Some crates don't have (easily) machine readable licensing information,

parser/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ using that crate to this one.
1010

1111
## MSRV
1212

13-
The minimum supported Rust version is 1.76 (or Ferrocene 24.05). `defmt` is tested against the latest stable Rust version and the MSRV.
13+
The minimum supported Rust version is 1.81. `defmt` is tested against the latest stable Rust version and the MSRV.
1414

1515
## Support
1616

print/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@ anyhow = "1"
1717
clap = { version = "4.0", features = ["derive", "env"] }
1818
defmt-decoder = { version = "=1.0.0", path = "../decoder" }
1919
log = "0.4"
20-
notify = "7"
20+
notify = "8"
2121
tokio = { version = "1.38", features = ["full"] }
2222
tokio-serial = "5.4"

0 commit comments

Comments
 (0)