1
Fork 0

Rollup merge of #136886 - ehuss:remove-prelude-common, r=jhpratt

Remove the common prelude module

This fixes the issues described in https://github.com/rust-lang/rust/issues/136102. Primarily, this resolves some issues with how the documentation for the prelude is generated:

- It avoids showing "unstable" for macros in the prelude that are actually stable.
- Avoids duplication of some pages due to the previous lack of `doc(no_inline)`.
- Makes the different edition preludes consistent, and sets a pattern that can be used by future editions.

We may need to rearrange these modules in the future if we decide to remove anything from the prelude again. If we do, I think we should look into a different solution that avoids the documentation problems.

Closes https://github.com/rust-lang/rust/issues/136102
This commit is contained in:
Matthias Krüger 2025-02-14 16:23:30 +01:00 committed by GitHub
commit c21a76fde0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 13 additions and 25 deletions

View file

@ -9,16 +9,7 @@
#![stable(feature = "core_prelude", since = "1.4.0")]
mod common;
/// The first version of the prelude of The Rust Standard Library.
///
/// See the [module-level documentation](self) for more.
#[stable(feature = "rust1", since = "1.0.0")]
pub mod v1 {
#[stable(feature = "rust1", since = "1.0.0")]
pub use super::common::*;
}
pub mod v1;
/// The 2015 version of the core prelude.
///
@ -64,7 +55,8 @@ pub mod rust_2021 {
#[stable(feature = "prelude_2024", since = "1.85.0")]
pub mod rust_2024 {
#[stable(feature = "rust1", since = "1.0.0")]
pub use super::common::*;
#[doc(no_inline)]
pub use super::v1::*;
#[stable(feature = "prelude_2021", since = "1.55.0")]
#[doc(no_inline)]

View file

@ -1,7 +1,9 @@
//! Items common to the prelude of all editions.
//! The first version of the core prelude.
//!
//! See the [module-level documentation](super) for more.
#![stable(feature = "core_prelude", since = "1.4.0")]
// No formatting: this file is nothing but re-exports, and their order is worth preserving.
#![cfg_attr(rustfmt, rustfmt::skip)]

View file

@ -111,16 +111,7 @@
#![stable(feature = "rust1", since = "1.0.0")]
mod common;
/// The first version of the prelude of The Rust Standard Library.
///
/// See the [module-level documentation](self) for more.
#[stable(feature = "rust1", since = "1.0.0")]
pub mod v1 {
#[stable(feature = "rust1", since = "1.0.0")]
pub use super::common::*;
}
pub mod v1;
/// The 2015 version of the prelude of The Rust Standard Library.
///
@ -162,7 +153,8 @@ pub mod rust_2021 {
#[stable(feature = "prelude_2024", since = "1.85.0")]
pub mod rust_2024 {
#[stable(feature = "rust1", since = "1.0.0")]
pub use super::common::*;
#[doc(no_inline)]
pub use super::v1::*;
#[stable(feature = "prelude_2024", since = "1.85.0")]
#[doc(no_inline)]

View file

@ -1,7 +1,9 @@
//! Items common to the prelude of all editions.
//! The first version of the prelude of The Rust Standard Library.
//!
//! See the [module-level documentation](super) for more.
#![stable(feature = "rust1", since = "1.0.0")]
// No formatting: this file is nothing but re-exports, and their order is worth preserving.
#![cfg_attr(rustfmt, rustfmt::skip)]

View file

@ -9,7 +9,7 @@ const EXPECTED = [
{
'query': 'prelude::vec',
'others': [
{ 'path': 'std::prelude::rust_2024', 'name': 'Vec' },
{ 'path': 'std::prelude::v1', 'name': 'Vec' },
],
},
{