## What does this PR try to resolve?
Fixes the unhelpful error when a package declares an unstable edition on
a
stable Cargo toolchain. Previously the error told the user to "try a
newer
version of Cargo" but gave no indication of *which* version, forcing
them to
dig through docs.
This PR adds a `help:` line that names the required toolchain version,
derived from the package's `rust-version` field (or from
`Edition::first_version()` once that is set at unstable time).
Before:
```
Consider trying a newer version of Cargo (this may require the nightly release).
See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#unstable-editions
```
After:
```
Consider trying a newer version of Cargo (this may require the nightly release).
help: mypackage@0.1.0 requires rustc 1.90
See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#unstable-editions
```
Also fixes a latent bug in `edition_unstable_gated`: it expected
`feature 'edition{next}'` but current code emits `feature
'unstable-editions'`.
The test was silently skipping because `Edition::LATEST_UNSTABLE` is
`None`.
Fixes#15305