Skip to content

Commit

Permalink
add relnotes
Browse files Browse the repository at this point in the history
  • Loading branch information
BoxyUwU committed Jan 2, 2025
1 parent a89ca2c commit 5a2e2a9
Showing 1 changed file with 114 additions and 0 deletions.
114 changes: 114 additions & 0 deletions RELEASES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,117 @@
Version 1.84.0 (2025-01-09)
==========================

<a id="
Language"></a>

Language
--------
- [Allow `#[deny]` inside `#[forbid]` as a no-op](https://github.com/rust-lang/rust/pull/121560/)
- [Show a warning when `-Ctarget-feature` is used to toggle features that can lead to unsoundness due to ABI mismatches](https://github.com/rust-lang/rust/pull/129884)
- [Use the next-generation trait solver in coherence](https://github.com/rust-lang/rust/pull/130654)
- [Allow coercions to drop the principal of trait objects](https://github.com/rust-lang/rust/pull/131857)
- [Support `/` as the path separator for `include!()` in all cases on Windows](https://github.com/rust-lang/rust/pull/125205)
- [Taking a raw ref (`raw (const|mut)`) of a deref of a pointer (`*ptr`) is now safe](https://github.com/rust-lang/rust/pull/129248)
- [Stabilize s390x inline assembly](https://github.com/rust-lang/rust/pull/131258)
- [Stabilize Arm64EC inline assembly](https://github.com/rust-lang/rust/pull/131781)
- [Lint against creating pointers to immediately dropped temporaries](https://github.com/rust-lang/rust/pull/128985)
- [Execute drop glue when unwinding in an `extern "C"` function](https://github.com/rust-lang/rust/pull/129582)

<a id="1.84.0-Compiler"></a>

Compiler
--------
- [Add `--print host-tuple` flag to print the host target tuple and affirm the "target tuple" terminology over "target triple"](https://github.com/rust-lang/rust/pull/125579)
- [Declaring functions with a calling convention not supported on the current target now triggers a hard error](https://github.com/rust-lang/rust/pull/129935)
- [Set up indirect access to external data for `loongarch64-unknown-linux-{musl,ohos}`](https://github.com/rust-lang/rust/pull/131583)
- [Enable XRay instrumentation for LoongArch Linux targets](https://github.com/rust-lang/rust/pull/131818)
- [Extend the `unexpected_cfgs` lint to also warn in external macros](https://github.com/rust-lang/rust/pull/132577)
- [Stabilize WebAssembly `multivalue`, `reference-types`, and `tail-call` target features](https://github.com/rust-lang/rust/pull/131080)
- [Added Tier 2 support for the `wasm32v1-none` target](https://github.com/rust-lang/rust/pull/131487)

<a id="1.84.0-Libraries"></a>

Libraries
---------
- [Implement `From<&mut {slice}>` for `Box/Rc/Arc<{slice}>`](https://github.com/rust-lang/rust/pull/129329)
- [Move `<float>::copysign`, `<float>::abs`, `<float>::signum` to `core`](https://github.com/rust-lang/rust/pull/131304)
- [Add `LowerExp` and `UpperExp` implementations to `NonZero`](https://github.com/rust-lang/rust/pull/131377)
- [Implement `FromStr` for `CString` and `TryFrom<CString>` for `String`](https://github.com/rust-lang/rust/pull/130608)
- [`std::os::darwin` has been made public](https://github.com/rust-lang/rust/pull/130635)

<a id="1.84.0-Stabilized-APIs"></a>

Stabilized APIs
---------------

- [`Ipv6Addr::is_unique_local`]
- [`Ipv6Addr::is_unicast_link_local`]
- [`core::ptr::with_exposed_provenance`]
- [`core::ptr::with_exposed_provenance::mut`]
- [`<ptr>::addr`]
- [`<ptr>::expose_provenance`]
- [`<ptr>::with_addr`]
- [`<ptr>::map_addr`]

These APIs are now stable in const contexts

- [`AtomicBool::from_ptr`]
- [`AtomicPtr::from_ptr`]
- [`AtomicU8::from_ptr`]
- [`AtomicU16::from_ptr`]
- [`AtomicU32::from_ptr`]
- [`AtomicU64::from_ptr`]
- [`AtomicUsize::from_ptr`]
- [`AtomicI8::from_ptr`]
- [`AtomicI16::from_ptr`]
- [`AtomicI32::from_ptr`]
- [`AtomicI64::from_ptr`]
- [`AtomicIsize::from_ptr`]
- [`<ptr>::is_null`]
- [`<ptr>::as_ref`]
- [`<ptr>::as_mut`]
- [`core::ptr::without_provenance`]
- [`core::ptr::without_provenance_mut`]
- [`core::ptr::dangling`]
- [`core::ptr::dangling_mut`]
- [`Pin::new`]
- [`Pin::new_unchecked`]
- [`Pin::get_ref`]
- [`Pin::into_ref`]
- [`Pin::get_mut`]
- [`Pin::get_unchecked_mut`]
- [`Pin::static_ref`]
- [`Pin::static_mut`]
- [`<int>::isqrt`]
- [`<int>::checked_isqrt`]
- [`<uint>::isqrt`]
- [`NonZero::isqrt`]

<a id="1.84.0-Cargo"></a>

Cargo
-----
- [Stabilize MSRV-aware resolver config](https://github.com/rust-lang/cargo/pull/14639/)
- [Stabilize resolver v3](https://github.com/rust-lang/cargo/pull/14754/)

<a id="1.84-Rustdoc"></a>

Rustdoc
-------

- [rustdoc-search: improve type-driven search](https://github.com/rust-lang/rust/pull/127589)

<a id="1.84.0-Compatibility-Notes"></a>

Compatibility Notes
-------------------
- [Enable by default the `LSX` target feature for LoongArch Linux targets](https://github.com/rust-lang/rust/pull/132140)
- [The unstable `-Zprofile` flag (“gcov-style” coverage instrumentation) has been removed.](https://github.com/rust-lang/rust/pull/131829) This does not affect the stable flags for coverage instrumentation (`-Cinstrument-coverage`) and profile-guided optimization (`-Cprofile-generate`, `-Cprofile-use`), which are unrelated and remain available.
- Support for the target named `wasm32-wasi` has been removed as the target is now named `wasm32-wasip1`. This completes the [transition](https://github.com/rust-lang/compiler-team/issues/607) [plan](https://github.com/rust-lang/compiler-team/issues/695) for this target following [the introduction of `wasm32-wasip1`](https://github.com/rust-lang/rust/pull/120468) in Rust 1.78. Compiler warnings on [use of `wasm32-wasi`](https://github.com/rust-lang/rust/pull/126662) introduced in Rust 1.81 are now gone as well as the target is removed.
- [The syntax `&pin (mut|const) T` is now parsed as a type which in theory could affect macro expansion results in some edge cases](https://github.com/rust-lang/rust/pull/130635#issuecomment-2375462821)
- [Legacy syntax for calling `std::arch` functions is no longer permitted to declare items or bodies (such as closures, inline consts, or async blocks).](https://github.com/rust-lang/rust/pull/130443#issuecomment-2445678945)
- The `wasm32-unknown-emscripten` target's binary release of the standard library is now [built with the latest emsdk 3.1.68](https://github.com/rust-lang/rust/pull/131533), which fixes an ABI-incompatibility with Emscripten >= 3.1.42. If you are locally using a version of emsdk with an incompatible ABI (e.g. before 3.1.42 or a future one), you should build your code with `-Zbuild-std` to ensure that `std` uses the correct ABI.

Version 1.83.0 (2024-11-28)
==========================

Expand Down

0 comments on commit 5a2e2a9

Please sign in to comment.