Subteam reports 2016-04-08


#1

Lang

Full report

We decided to accept the following RFCs this week:

  • RFC 1494: Amend RFC 550 with misc. follow set corrections
  • RFC 1444: Untagged unions
  • RFC 1513: Stabilize implementing panics as aborts
  • RFC 1398: Allocators, take III

We also placed the following RFCs into FCP:

  • RFC 1429: feature gate extern fn methods
  • RFC 1440: allow drop types in statics/constants
  • RFC 1399: add #[repr(pack = N)]

– nmatsakis

Libs

Full report

This week marked the conclusion of the 1.9 release cycle final comment period (FCP). The libs team discussed the stabilization decisions for all issues, coming to the following conclusions:

  • FCP Issue #27719: Tracking issue for recover stabilization
    • Stabilize with the names catch_unwind, resume_unwind, AssertUnwindSafe, and UnwindSafe.
  • FCP Issue #27751: Tracking issue for raw stabilization
    • Deprecate the Slice type and the Repr trait
  • FCP Issue #27754: Tracking issue for str_char stabilization
    • Stabilize the is_char_boundary method, deprecate char_range_at, char_range_at_reverse, char_at, char_at_reverse, and slice_shift_char.
  • FCP Issue #27780: Tracking issue for <*mut T, *const T>::{as_ref, as_mut_ref}
    • Stabilize both methods with by-value self instead of by-reference
  • FCP Issue #27784: Tracking issue for char encoding methods
    • Postpone stabilization of encode_utf8 pending investigation into the performance of the two methods.
  • FCP Issue #27809: Tracking issue for make_ascii_{upper,lower}case
    • Stabilize both methods as-is
  • FCP Issue #27811: Tracking issue for CommandExt::session_leader
    • Deprecate in favor of CommandExt::befor_exec
  • FCP Issue #27830: Tracking issue for UTF-16 decoding iterators
    • Stabilize functions as-is with a tweak to the error type in the iterator.
  • FCP Issue #28050: Set recovery methods
    • Stabilize as-is
  • FCP Issue #29453: Add Capacity/length methods for OsString
    • Stabilize as-is
  • FCP Issue #29791: Tracking issue for getting pthread_t from JoinHandle
    • Stabilize as-is
  • FCP Issue #29935: Tracking issue for #[deprecated]
    • Stabilize as-is
  • FCP Issue #30014: Tracking issue for OpenOptions expansion
    • Stabilize as-is
  • FCP Issue #30752: Tracking issue for panic::propagate
    • Stabilize with the name resume_unwind
  • FCP Issue #31262: HashMap and HashSet should provide a getter for their hashers
    • Stabilize as-is
  • FCP Issue #31398: Tracking issue for CommandExt::{exec, before_exec}
    • Stabilize the exec function
  • FCP Issue #31405: Tracking issue for file_try_clone
    • Stabilize as-is
  • FCP Issue #31572: Tracking issue for SocketAddr setters
    • Stabilize as-is
  • FCP Issue #31755: Tracking issue for <[T]>::copy_from_slice
    • Stabilize as-is
  • FCP Issue #31756: Tracking issue for ptr::{read,write}_volatile
    • Stabilize as-is

More information about the relevant decision can be found on the issue and final comment as well. Stabilizations have all been applied in rust-lang/rust#32804

Tools

Full report

  • rustup, the successor to multirust, is now available for beta testing. Please feel free to leave feedback on the internals thread!

  • Nightlies for the i586-pc-windows-msvc target are now being produced.

  • Nightly for the aarch64-unknown-linux-gnu target are now being produced.

  • Top level overrides in Cargo have landed, allowing you to specify package overrides in Cargo.toml to work with other collaborators.

  • The following RFCs have been moved into their final comment period to be decided upon ~2 weeks from now:

    • RFC 1510 - Adding a new rdylib crate type. Note that we are specifically interested in hearing about dylib use cases today to see if changing its definition will cause breakage.
    • RFC 1525 - Adding workspaces to Cargo
    • RFC 1535 - Stabilizing -C overflow-checks as a flag

Compiler

Full report

Quiet week.

– nmatsakis