Description
If I clone rental and run cargo +beta test
on it, I get t he following warning:
> cargo +beta check warning: using `procedural-masquerade` crate --> src/lib.rs:94:8 | 94 | enum ProceduralMasqueradeDummyType { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ... 117 | define_rental_traits!(32); | -------------------------- in this macro invocation | = note: `#[warn(proc_macro_back_compat)]` on by default = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! = note: for more information, see issue #83125 <https://github.com/rust-lang/rust/issues/83125> = note: The `procedural-masquerade` crate has been unnecessary since Rust 1.30.0. Versions of this crate below 0.1.7 will eventually stop compiling. = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
This also occurs in crates that use rental, e.g. one of glium's examples.
cc #83125 (tracking issue)
The warning itself has been added by PR #83168, whose justification was that the procedural-masquerade
crate sees little use anyways. And indeed, on crates.io it "only" has 27,419
recent downloads. Rental on the other hand has 193,341
recent downloads, or almost 10 times as many. Furthermore, you can fix the warning on your side by just removing use of that crate as it's become redundant. Rental on the other hand is not redundant, so your only option is to switch to an alternative, which might be expensive.
I would approach fixing of this issue with the following steps:
- Fixing the issue in rental, releasing a new version with the fix. This help from the maintainer. cc @jpernst
- Improvement of the error message to include rental: Only apply
procedural-masquerade
back-compat hack torental
#85387