mozilla/grcov

proc-macro2 v1.0.52 broken on current Rust nightly

Closed this issue · 0 comments

The Cargo.lock file currently specifies v1.0.52 for proc-macro2:

grcov/Cargo.lock

Lines 1070 to 1072 in 2dac8cf

[[package]]
name = "proc-macro2"
version = "1.0.52"

That version of proc-macro2 is broken on nightly since nightly-2023-06-28.
It looks like it is fixed since proc-macro2 v1.0.60.

The issue can be reproduced with grcov by installing it with Cargo's --locked option:
cargo +nightly install --locked grcov --force

Output:

$ cargo +nightly install --locked grcov --force
    Updating crates.io index
  Installing grcov v0.8.18
    Updating crates.io index
warning: package `hermit-abi v0.3.1` in Cargo.lock is yanked in registry `crates-io`, consider running without --locked
    Updating crates.io index
   Compiling libc v0.2.140
   Compiling proc-macro2 v1.0.52
   Compiling unicode-ident v1.0.3
   Compiling quote v1.0.26
   Compiling version_check v0.9.4
   Compiling cfg-if v1.0.0
   Compiling memchr v2.5.0
   Compiling autocfg v1.1.0
error[E0635]: unknown feature `proc_macro_span_shrink`
  --> /home/dennis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.52/src/lib.rs:92:30
   |
92 |     feature(proc_macro_span, proc_macro_span_shrink)
   |                              ^^^^^^^^^^^^^^^^^^^^^^

For more information about this error, try `rustc --explain E0635`.
error: could not compile `proc-macro2` (lib) due to previous error
warning: build failed, waiting for other jobs to finish...
error: failed to compile `grcov v0.8.18`, intermediate artifacts can be found at `/tmp/cargo-installyJXfYg`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

It might be nice to update the version specified in the Cargo.lock file.