From 601e5008e730efe00b4ea2993964e21a8d77b70b Mon Sep 17 00:00:00 2001 From: Gagan Trivedi Date: Mon, 10 Aug 2026 19:22:32 +0530 Subject: [PATCH] feat!: declare MSRV 1.86 and enforce it in CI The reqwest 0.13 bump (#49) raised the crate's effective MSRV: a fresh resolve pulls icu_* 2.2.0 and idna_adapter 1.2.2 (via url -> idna), which require rustc 1.86. Declare rust-version = "1.86.0" and add an MSRV workflow so future dependency bumps cannot silently invalidate it. BREAKING CHANGE: reqwest 0.13 changes the public API (reqwest::Error From impl, http 1.x HeaderMap), switches the default TLS backend from native-tls to rustls + aws-lc-rs, and requires rustc >= 1.86. --- .github/workflows/msrv.yml | 22 ++++++++++++++++++++++ Cargo.toml | 1 + 2 files changed, 23 insertions(+) create mode 100644 .github/workflows/msrv.yml diff --git a/.github/workflows/msrv.yml b/.github/workflows/msrv.yml new file mode 100644 index 0000000..bba8d4f --- /dev/null +++ b/.github/workflows/msrv.yml @@ -0,0 +1,22 @@ +name: MSRV + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +env: + CARGO_TERM_COLOR: always + +jobs: + msrv: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + - name: Install MSRV toolchain + run: rustup toolchain install 1.86.0 --profile minimal + - name: Check with MSRV + run: cargo +1.86.0 check --verbose diff --git a/Cargo.toml b/Cargo.toml index 5cf558b..bedb274 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,6 +10,7 @@ repository = "https://github.com/Flagsmith/flagsmith-rust-client" readme = "README.md" categories = ["config", "api-bindings"] keywords = ["Flagsmith", "feature-flag", "remote-config"] +rust-version = "1.86.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html