From 1ce18164dc34d20b1ca44903a38820166f6bf31d Mon Sep 17 00:00:00 2001 From: Alan Somers Date: Sun, 1 Dec 2024 16:12:15 +0000 Subject: [PATCH 1/2] Switch CI's minver check to use -Zminimal-versions Using -Zdirect-minimal-versions now fails due to an indirect dependency (futures-util) now depending on a direct dependency (futures-channel). -Zdirect-minimal-versions brings in the latest version of every indirect dependency, which conflicts with bringing in the oldest version of futures-channel. A complicating factor is that every version of futures-util from 0.3.0 to 0.3.30, inclusive, has been yanked. Unwisely, IMHO. --- .cirrus.yml | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 96ed6cb..62aa401 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -43,7 +43,7 @@ test_task: - fi minver_script: - if rustc --version | grep -q nightly; then - - cargo update -Zdirect-minimal-versions + - cargo update -Zminimal-versions - cargo check --all-targets - fi before_cache_script: rm -rf $CARGO_HOME/registry/index diff --git a/Cargo.toml b/Cargo.toml index 764298e..3b9da07 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -30,7 +30,7 @@ tokio = { version = "1.2", features = ["rt"], optional = true } [dev-dependencies] futures = "0.3.11" tokio = { version = "1.2", features = ["sync", "macros", "rt-multi-thread"] } -tokio-test = { version = "0.4.2" } +tokio-test = { version = "0.4.3" } [[test]] name = "functional" From da6944973c0f0ea810a63efa94f7c169d3b4c129 Mon Sep 17 00:00:00 2001 From: Alan Somers Date: Sun, 1 Dec 2024 16:34:48 +0000 Subject: [PATCH 2/2] Raise MSRV from 1.49 to 1.65 Just because futures-util yanked all of its versions that are compatible with older compilers. --- .cirrus.yml | 4 ++-- CHANGELOG.md | 8 ++++++++ Cargo.toml | 1 + README.md | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 62aa401..eef6318 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -4,7 +4,7 @@ test_task: RUSTDOCFLAGS: -D warnings matrix: - container: - image: rust:1.49.0 + image: rust:1.65.0 - container: image: rust:latest - container: @@ -12,7 +12,7 @@ test_task: cargo_cache: folder: $CARGO_HOME/registry build_script: - - if rustc --version | grep -q 1.49.0; then + - if rustc --version | grep -q 1.65.0; then - cp Cargo.lock.msrv Cargo.lock - fi - if rustc --version | grep -q nightly; then diff --git a/CHANGELOG.md b/CHANGELOG.md index 226cc11..cae3c5f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). +## [Unreleased] - ReleaseDate + +### Changed + +- MSRV has been raised to 1.65.0, due to the futures-util crate yanking all + versions compatible with older compilers. + ([#61](/~https://github.com/asomers/futures-locks/pull/61)) + ## [0.7.1] - 2022-12-07 - The published package on crates.io now includes functional tests. No diff --git a/Cargo.toml b/Cargo.toml index 3b9da07..f98ac47 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,6 +13,7 @@ categories = ["asynchronous"] documentation = "https://docs.rs/futures-locks" autotests = false include = ["src/**/*", "tests/**/*", "LICENSE-*", "README.md", "CHANGELOG.md"] +rust-version = "1.65" [package.metadata.docs.rs] features = ["tokio"] diff --git a/README.md b/README.md index 09d7bae..f201d56 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ standard library. But instead of blocking until ready, they return Futures which will become ready when the lock is acquired. See the doc comments for individual examples. -`futures-locks` requires Rust 1.49.0 or higher. +`futures-locks` requires Rust 1.65.0 or higher. # License