Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking issue for organizing the standard library's #![feature]s #87766

Open
2 of 8 tasks
m-ou-se opened this issue Aug 4, 2021 · 1 comment
Open
2 of 8 tasks

Tracking issue for organizing the standard library's #![feature]s #87766

m-ou-se opened this issue Aug 4, 2021 · 1 comment
Assignees
Labels
A-technical-debt Area: Internal cleanup work C-cleanup Category: PRs that clean code up or issues documenting cleanup. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Comments

@m-ou-se
Copy link
Member

m-ou-se commented Aug 4, 2021

The standard libraries use a lot of #![feature]s. We should organize them a bit and make sure it's acceptable for all of them to be used in the way they are.

It'd be nice to split them in language and library features. For the language features, we should check with the relevant team(s) if it's okay that we're using the feature in the library, and document with which of them we need to be extra careful and what their pitfalls are.

There's also a few features enabled that are no longer in use. We should remove those attributes.

  • Categorize and clean up features
  • Make an overview of used language features
  • Discuss those language features and their uses with the relevant team(s)
  • Document stuff for future contributors and reviewers
@m-ou-se m-ou-se added C-cleanup Category: PRs that clean code up or issues documenting cleanup. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Aug 4, 2021
@m-ou-se m-ou-se self-assigned this Aug 4, 2021
bors added a commit to rust-lang-ci/rust that referenced this issue Aug 5, 2021
…olnay

Core features cleanup

This sorts and categorizes the `#![features]` in `core` and removes unused ones.

This is part of rust-lang#87766

The following feature attributes were unnecessary and are removed:

```diff
// Library features:
-#![feature(bool_to_option)]
-#![feature(char_indices_offset)]
-#![feature(pin_deref_mut)]
-#![feature(str_split_as_str)]
-#![feature(str_split_inclusive_as_str)]

// Language features:
-#![feature(arbitrary_self_types)]
-#![feature(custom_inner_attributes)]
-#![feature(nll)]
```
JohnTitor added a commit to JohnTitor/rust that referenced this issue Oct 19, 2021
…aahc,dtolnay

Alloc features cleanup

This sorts and categorizes the `#![features]` in `alloc` and removes unused ones.

This is part of rust-lang#87766

The following feature attributes were unnecessary and are removed:

```diff
// Library features:
-#![feature(cow_is_borrowed)]
-#![feature(maybe_uninit_uninit_array)]
-#![feature(slice_partition_dedup)]

// Language features:
-#![feature(arbitrary_self_types)]
-#![feature(auto_traits)]
-#![feature(box_patterns)]
-#![feature(decl_macro)]
-#![feature(nll)]
```
@the8472 the8472 added the A-technical-debt Area: Internal cleanup work label Feb 8, 2022
@JmPotato
Copy link
Contributor

JmPotato commented Mar 3, 2022

Hi! I noticed that it had been a while since the last update of this issue, so I took some time to clean up the std library's ![feature]s. Could you please take a look at #94546, thx!

Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? `@m-ou-se`
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? ``@m-ou-se``
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? ```@m-ou-se```
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? ````@m-ou-se````
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? `````@m-ou-se`````
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? ``````````````````@m-ou-se``````````````````
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? `````````````````````@m-ou-se`````````````````````
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? `@m-ou-se`
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 4, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? ``@m-ou-se``
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this issue Mar 5, 2022
…ou-se

Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? `@m-ou-se`
bors added a commit to rust-lang-ci/rust that referenced this issue Mar 5, 2022
Clean up the std library's #![feature]s

Signed-off-by: JmPotato <ghzpotato@gmail.com>

This is part of rust-lang#87766.

r? `@m-ou-se`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-technical-debt Area: Internal cleanup work C-cleanup Category: PRs that clean code up or issues documenting cleanup. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

3 participants