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

std: Stabilize APIs for the 1.8 release #31928

Merged
merged 2 commits into from
Feb 29, 2016

Conversation

alexcrichton
Copy link
Member

This commit is the result of the FCPs ending for the 1.8 release cycle for both
the libs and the lang suteams. The full list of changes are:

Stabilized

  • braced_empty_structs
  • augmented_assignments
  • str::encode_utf16 - renamed from utf16_units
  • str::EncodeUtf16 - renamed from Utf16Units
  • Ref::map
  • RefMut::map
  • ptr::drop_in_place
  • time::Instant
  • time::SystemTime
  • {Instant,SystemTime}::now
  • {Instant,SystemTime}::duration_since - renamed from duration_from_earlier
  • {Instant,SystemTime}::elapsed
  • Various Add/Sub impls for Time and SystemTime
  • SystemTimeError
  • SystemTimeError::duration
  • Various impls for SystemTimeError
  • UNIX_EPOCH
  • ops::{Add,Sub,Mul,Div,Rem,BitAnd,BitOr,BitXor,Shl,Shr}Assign

Deprecated

  • Scoped TLS (the scoped_thread_local! macro)
  • Ref::filter_map
  • RefMut::filter_map
  • RwLockReadGuard::map
  • RwLockWriteGuard::map
  • Condvar::wait_timeout_with

Closes #27714
Closes #27715
Closes #27746
Closes #27748
Closes #27908
Closes #29866
Closes #28235
Closes #29720

@rust-highfive
Copy link
Collaborator

r? @aturon

(rust_highfive has picked a reviewer for you, use r? to override)

@@ -849,10 +854,18 @@ impl str {
#[unstable(feature = "str_utf16",
reason = "this functionality may only be provided by libunicode",
issue = "27714")]
#[rustc_deprecated(since = "1.8.0", reason = "renamed to encode_utf16")]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Argh, this is another one of those cases where we don't really want the deprecation to go into effect on nightly until 1.8 is actually on the stable channel. This is probably used rarely enough that it doesn't matter, but we really need to get our story straight there.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't that just for deprecating stable APIs? For deprecating unstable APIs everyone should be able to immediately switch, right?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gah, I make this mistake every time. Ignore me.

@aturon
Copy link
Member

aturon commented Feb 27, 2016

Yay, some very good stuff in this one! I left a few concerns here and there.

@alexcrichton
Copy link
Member Author

@bors: r=aturon ffef000f46147084000f7fd125335aaa043cedf3

@Manishearth
Copy link
Member

../src/libstd\sys/windows\compat.rs:31:39: 31:50 error: use of deprecated item: renamed to encode_utf16, #[deny(deprecated)] on by default
../src/libstd\sys/windows\compat.rs:31     let mut module: Vec<u16> = module.utf16_units().collect();
                                                                             ^~~~~~~~~~~
../src/libstd\sys/windows\stdio.rs:59:28: 59:39 error: use of deprecated item: renamed to encode_utf16, #[deny(deprecated)] on by default
../src/libstd\sys/windows\stdio.rs:59         Some(utf8) => utf8.utf16_units().collect::<Vec<u16>>(),
                                                                 ^~~~~~~~~~~
error: aborting due to 2 previous errors

bors added a commit that referenced this pull request Feb 27, 2016
@bors
Copy link
Contributor

bors commented Feb 27, 2016

⌛ Testing commit ffef000 with merge 18a736a...

@bors
Copy link
Contributor

bors commented Feb 27, 2016

💔 Test failed - auto-win-msvc-32-opt

@alexcrichton alexcrichton force-pushed the stabilize-1.8 branch 2 times, most recently from fae5fcb to aa7c581 Compare February 28, 2016 06:23
@alexcrichton
Copy link
Member Author

@bors: r=aturon aa7c581

@bors
Copy link
Contributor

bors commented Feb 28, 2016

⌛ Testing commit aa7c581 with merge c7a3250...

@bors
Copy link
Contributor

bors commented Feb 28, 2016

💔 Test failed - auto-win-msvc-64-opt

@Manishearth
Copy link
Member


../src/libstd\sys/windows\stdio.rs:59:28: 59:39 error: use of deprecated item: renamed to encode_utf16, #[deny(deprecated)] on by default
../src/libstd\sys/windows\stdio.rs:59         Some(utf8) => utf8.utf16_units().collect::<Vec<u16>>(),
                                                                 ^~~~~~~~~~~

@alexcrichton
Copy link
Member Author

@bors: r=aturon 7dc363c

@bors
Copy link
Contributor

bors commented Feb 28, 2016

⌛ Testing commit 7dc363c with merge 1573036...

@bors
Copy link
Contributor

bors commented Feb 28, 2016

💔 Test failed - auto-linux-64-nopt-t

This commit is the result of the FCPs ending for the 1.8 release cycle for both
the libs and the lang suteams. The full list of changes are:

Stabilized

* `braced_empty_structs`
* `augmented_assignments`
* `str::encode_utf16` - renamed from `utf16_units`
* `str::EncodeUtf16` - renamed from `Utf16Units`
* `Ref::map`
* `RefMut::map`
* `ptr::drop_in_place`
* `time::Instant`
* `time::SystemTime`
* `{Instant,SystemTime}::now`
* `{Instant,SystemTime}::duration_since` - renamed from `duration_from_earlier`
* `{Instant,SystemTime}::elapsed`
* Various `Add`/`Sub` impls for `Time` and `SystemTime`
* `SystemTimeError`
* `SystemTimeError::duration`
* Various impls for `SystemTimeError`
* `UNIX_EPOCH`
* `ops::{Add,Sub,Mul,Div,Rem,BitAnd,BitOr,BitXor,Shl,Shr}Assign`

Deprecated

* Scoped TLS (the `scoped_thread_local!` macro)
* `Ref::filter_map`
* `RefMut::filter_map`
* `RwLockReadGuard::map`
* `RwLockWriteGuard::map`
* `Condvar::wait_timeout_with`

Closes rust-lang#27714
Closes rust-lang#27715
Closes rust-lang#27746
Closes rust-lang#27748
Closes rust-lang#27908
Closes rust-lang#29866
This applies the same fix as added in 595d5b2 which is to just compile all
valgrind tests statically instead of dynamically. It looks like this is a
resurgence of either rust-lang#30383 or rust-lang#31328 in some weird fashion.

I'm not actually sure what's going on with the bots, and it's unclear whether
this is a valgrind bug or a libstd bug, but for now let's just get things
landing again.

Closes rust-lang#30383
@alexcrichton
Copy link
Member Author

@bors: r=aturon 95560c1

cc @brson, @nrc

The most recent failure log matches the failures seen on #31335. These valgrind failures are unfortunately preventing things from landing, so we need a fix fr them soon. In 595d5b2 I fixed a test by adding // no-prefer-dynamic (compile tests statically instead of dynamically) and that seemed to at least paper over the bug.

I'm not really sure what's going on here with valgrind, but as part of this PR (to land it) I'm updating all tests to have that flag. This is gonna close #30383 but I'll open a new issue about tracking this.

@bors
Copy link
Contributor

bors commented Feb 29, 2016

⌛ Testing commit 95560c1 with merge 52cb8a9...

bors added a commit that referenced this pull request Feb 29, 2016
This commit is the result of the FCPs ending for the 1.8 release cycle for both
the libs and the lang suteams. The full list of changes are:

Stabilized

* `braced_empty_structs`
* `augmented_assignments`
* `str::encode_utf16` - renamed from `utf16_units`
* `str::EncodeUtf16` - renamed from `Utf16Units`
* `Ref::map`
* `RefMut::map`
* `ptr::drop_in_place`
* `time::Instant`
* `time::SystemTime`
* `{Instant,SystemTime}::now`
* `{Instant,SystemTime}::duration_since` - renamed from `duration_from_earlier`
* `{Instant,SystemTime}::elapsed`
* Various `Add`/`Sub` impls for `Time` and `SystemTime`
* `SystemTimeError`
* `SystemTimeError::duration`
* Various impls for `SystemTimeError`
* `UNIX_EPOCH`
* `ops::{Add,Sub,Mul,Div,Rem,BitAnd,BitOr,BitXor,Shl,Shr}Assign`

Deprecated

* Scoped TLS (the `scoped_thread_local!` macro)
* `Ref::filter_map`
* `RefMut::filter_map`
* `RwLockReadGuard::map`
* `RwLockWriteGuard::map`
* `Condvar::wait_timeout_with`

Closes #27714
Closes #27715
Closes #27746
Closes #27748
Closes #27908
Closes #29866
Closes #28235
Closes #29720
@alexcrichton
Copy link
Member Author

Tracking issue: #31968

@bors bors merged commit 95560c1 into rust-lang:master Feb 29, 2016
@alexcrichton alexcrichton deleted the stabilize-1.8 branch March 1, 2016 00:39
nojunpark pushed a commit to nojunpark/foxbox that referenced this pull request Mar 2, 2016
nojunpark pushed a commit to nojunpark/foxbox that referenced this pull request Mar 2, 2016
@brson brson added the relnotes Marks issues that should be documented in the release notes of the next release. label Apr 7, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relnotes Marks issues that should be documented in the release notes of the next release.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants