Closed taiki-e closed 5 months ago
A side effect of https://github.com/rust-lang/cargo/issues/10623 is that pre-1.60 cargo cannot understand weak dependencies and namespace features, so if we generate a lockfile with pre-1.60 cargo, a version compatible with pre-1.60 will be selected.
$ cargo +1.56 generate-lockfile
$ cargo tree -p syn
syn v2.0.56
├── proc-macro2 v1.0.79
│ └── unicode-ident v1.0.12
├── quote v1.0.35
│ └── proc-macro2 v1.0.79 (*)
└── unicode-ident v1.0.12
$ cargo +1.56 check
Finished dev [unoptimized + debuginfo] target(s) in 0.58s
So, as long as syn can be compiled with 1.60, I think we can revert this MSRV bump.
syn 2.0.57 requires it.
https://github.com/dtolnay/syn/commit/585df4726f3f7b3e1196a5ad416cdbd689332f56
Very confusing error message is due to https://github.com/rust-lang/cargo/issues/10623.