Hm, I think in this regard ::std/::crate
proposal is isomorphic to variant 1? Like, in V1 we deprecate use std::foo
and require to write use extern::std::foo
. In ::std/::crate
we as well deprecate use std::foo
and require to write use ::std::foo
. The ::
plays exactly the same role as extern::
, but is strictly shorter
Am I correct that we don't want to lean on epochs to make a breaking change here, because "to upgrade to a newer epoch, you must change every use statement" is unacceptable?