From 34890827ae3352371e5e7822ae63edef785deaeb Mon Sep 17 00:00:00 2001 From: "Tobin C. Harding" Date: Tue, 19 Sep 2023 05:37:35 +1000 Subject: [PATCH 1/2] Pin syn to 2.0.32 We have a dependency on `syn` deep in the dependency graph that is breaking MSRV, just pin the damn thing to 2.0.32 --- contrib/test.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/contrib/test.sh b/contrib/test.sh index 79932ad5..b1135699 100755 --- a/contrib/test.sh +++ b/contrib/test.sh @@ -8,6 +8,8 @@ MSRV="1\.48\.0" # Test pinned versions. if cargo --version | grep ${MSRV}; then + cargo update -p syn:2.0.37 --precise 2.0.32 + cargo update -p serde_json --precise 1.0.99 cargo update -p serde --precise 1.0.156 cargo update -p quote --precise 1.0.30 From f5bc9b3cd4cf832735b42b4df2e9179643a3d8b8 Mon Sep 17 00:00:00 2001 From: "Tobin C. Harding" Date: Tue, 19 Sep 2023 06:33:33 +1000 Subject: [PATCH 2/2] Remove pinning docs from readme The pinning docs are stale; the single source of truth for pinning is the CI script. Remove the stale pinning docs and just point devs towards the CI script. --- README.md | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 83ea39fd..33c869a6 100644 --- a/README.md +++ b/README.md @@ -71,18 +71,8 @@ For more information please see `./CONTRIBUTING.md`. This library should always compile with any combination of features on **Rust 1.48.0**. -To build with the MSRV you will need to pin `serde` (if you have the feature enabled) - -``` -# serde 1.0.157 uses syn 2.0 which requires edition 2021 -cargo update -p serde_json --precise 1.0.99 -cargo update -p serde --precise 1.0.156 -cargo update -p quote --precise 1.0.30 -cargo update -p proc-macro2 --precise 1.0.63 -cargo update -p serde_test --precise 1.0.175 -``` - -The above commands are sourced from `./contrib/test.sh`. +To build with the MSRV you will likely need to pin a bunch of dependencies, see `./contrib/test.sh` +for the current list. ## External dependencies