[Done] Remove or unstabilize all deprecated items in 1.0.0


#1

Per SemVer, major releases are the only time when we get to remove stuff. If 1.0.0 final contains any #[deprecated] item, we’ll be stuck with them until 2.0 (which hopefully will be in a very long time!)

Proposal: Make sure that all #[deprecated] items in 1.0.0 are also marked #[unstable]. This will effectively make them unavailable in beta and release builds, meaning we can remove them in some future 1.x release without breaking backward-compatibility. In terms of release process, this means back-porting a patch to beta. Then a new beta pre-release might be good.

Alternative: remove deprecated items entirely.

CC @brson


#2

Ok, so that’s

  • MarkerTrait

  • PhantomFn

  • std::{f32, f64}::MIN_VALUE, MIN_POS_VALUE, MAX_VALUE, FRAC_2_SQRTPI, SQRT2, FRAC_1_SQRT2

  • {f32, f64}::{is_positive, is_negative}

  • std::num::Int, SignedInt, Float

  • OsStr::from_str

  • AsOsStr


#3

This was all completed in rust-lang/rust#24636


#4

These two still remain:

  • std::num::f64::{is_positive, is_negative}

#5

That’s apparently deliberate: https://github.com/rust-lang/rust/issues/24691#issuecomment-95221929