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

Some features were removed instead of deprecated/stabilized #60427

Closed
jethrogb opened this issue Apr 30, 2019 · 6 comments
Closed

Some features were removed instead of deprecated/stabilized #60427

jethrogb opened this issue Apr 30, 2019 · 6 comments
Labels
T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@jethrogb
Copy link
Contributor

jethrogb commented Apr 30, 2019

From @varkor in #52644 (comment):

it seems some past features were simply removed outright rather than being deprecated as they should be. ... I think we'll need to retroactively make these features deprecated.

This applies at least to the following features:

  • collections
  • str_char
  • unicode
  • alloc

There might be others.

@jethrogb jethrogb changed the title Some features were removed instead of deprecated Some features were removed instead of deprecated/stabilized Apr 30, 2019
@Centril Centril added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label May 1, 2019
@Centril
Copy link
Contributor

Centril commented May 1, 2019

If they were stabilized they should be added to the accepted list and otherwise to the removed list.

@rasendubi
Copy link
Contributor

rasendubi commented May 2, 2019

  1. All of the mentioned flags are lib flags. Is it OK to add them to feature_gate.rs? (I am not sure as these are "lang" features and might be handled differently.)

  2. e.g., fs_read_write was stabilized as fs_read_write_bytes (0600d0f). Should we add the old name? as accepted?

  3. A part of alloc was renamed to alloc_prelude (without stabilization) (5d1022a). The rest was stabilized as alloc (fc928a1). @jethrogb are you sure you get an error when using alloc?

(If anyone feels like doing code archeology, a simple git log -p -G '"str_char"' seems to give pretty good results.)

@jethrogb
Copy link
Contributor Author

jethrogb commented May 2, 2019

  1. e.g., fs_read_write was stabilized as fs_read_write_bytes (0600d0f). Should we add the old name? as accepted?

I think they should be added as removed

  1. ... @jethrogb are you sure you get an error when using alloc?

I thought I was with some nightly version between nightly-2018-08-14 and nightly-2019-04-27, but I can't reproduce this right now.

@varkor
Copy link
Member

varkor commented May 4, 2019

  1. All of the mentioned flags are lib flags. Is it OK to add them to feature_gate.rs? (I am not sure as these are "lang" features and might be handled differently.)

Yeah, I'm not sure whether we want to flag removed libs features differently. It'd probably be nice to keep a record, but I'm not sure if the difference is valuable.

  1. e.g., fs_read_write was stabilized as fs_read_write_bytes (0600d0f). Should we add the old name? as accepted?

I agree with @jethrogb: we should probably mark it as removed. (Alternatively, we could track "renamings of feature flags", like we do for lints, so we could produce better diagnostics.)

@Centril
Copy link
Contributor

Centril commented May 4, 2019

It's rather weird to add libs features to the language feature list. I also think it's not the end of the world to just throw away the removed feature gate list entirely (dump it in a document somewhere outside of the code); it's essentially technical debt that we are monotonically increasing at the moment. The only think that we'd need to do is to not error. Adding these features, which seemingly hasn't bothered anyone for a long time, only for the purposes of consistency seems to be a weak motivation.

@Enselic
Copy link
Member

Enselic commented Nov 20, 2023

Triage: Since many years has passed now the risk of messing with feature flags seems greater than the benefit of fixing them (and I'm unsure exactly what that means atm tbh). I'll go ahead and close this with this motivation from above comment:

Adding these features, which seemingly hasn't bothered anyone for a long time, only for the purposes of consistency seems to be a weak motivation.

@Enselic Enselic closed this as not planned Won't fix, can't repro, duplicate, stale Nov 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

5 participants