File _patchinfo of Package patchinfo.27262

<patchinfo incident="27262">
  <packager>firstyear</packager>
  <rating>moderate</rating>
  <category>recommended</category>
  <summary>Recommended update for rust, rust1.66</summary>
  <description>This update for rust, rust1.66 fixes the following issues:

This update ships rust 1.66.

Version 1.66.0 (2022-12-15)
==========================

Language
--------

- Permit specifying explicit discriminants on all `repr(Int)` enums
  ```rust
  #[repr(u8)]
  enum Foo {
      A(u8) = 0,
      B(i8) = 1,
      C(bool) = 42,
  }
  ```
- Allow transmutes between the same type differing only in lifetimes
- Change constant evaluation errors from a deny-by-default lint to a hard error
- Trigger `must_use` on `impl Trait` for supertraits
  This makes `impl ExactSizeIterator` respect the existing `#[must_use]` annotation on `Iterator`.
- Allow `..X` and `..=X` in patterns
- Uplift `clippy::for_loops_over_fallibles` lint into rustc
- Stabilize `sym` operands in inline assembly
- Update to Unicode 15
- Opaque types no longer imply lifetime bounds
  This is a soundness fix which may break code that was erroneously relying on this behavior.

Compiler
--------

- Add armv5te-none-eabi and thumbv5te-none-eabi tier 3 targets
  - Refer to Rust's [platform support page][platform-support-doc] for more
    information on Rust's tiered platform support.
- Add support for linking against macOS universal libraries

Libraries
---------

- Fix `#[derive(Default)]` on a generic `#[default]` enum adding unnecessary `Default` bounds
- Update to Unicode 15

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

- `proc_macro::Span::source_text`](https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.source_text)
- `uX::{checked_add_signed, overflowing_add_signed, saturating_add_signed, wrapping_add_signed}`](https://doc.rust-lang.org/stable/std/primitive.u8.html#method.checked_add_signed)
- `iX::{checked_add_unsigned, overflowing_add_unsigned, saturating_add_unsigned, wrapping_add_unsigned}`](https://doc.rust-lang.org/stable/std/primitive.i8.html#method.checked_add_unsigned)
- `iX::{checked_sub_unsigned, overflowing_sub_unsigned, saturating_sub_unsigned, wrapping_sub_unsigned}`](https://doc.rust-lang.org/stable/std/primitive.i8.html#method.checked_sub_unsigned)
- `BTreeSet::{first, last, pop_first, pop_last}`](https://doc.rust-lang.org/stable/std/collections/struct.BTreeSet.html#method.first)
- `BTreeMap::{first_key_value, last_key_value, first_entry, last_entry, pop_first, pop_last}`](https://doc.rust-lang.org/stable/std/collections/struct.BTreeMap.html#method.first_key_value)
- Add `AsFd` implementations for stdio lock types on WASI.
- `impl TryFrom&lt;Vec&lt;T&gt;&gt; for Box&lt;[T; N]&gt;`](https://doc.rust-lang.org/stable/std/boxed/struct.Box.html#impl-TryFrom%3CVec%3CT%2C%20Global%3E%3E-for-Box%3C%5BT%3B%20N%5D%2C%20Global%3E)
- `core::hint::black_box`](https://doc.rust-lang.org/stable/std/hint/fn.black_box.html)
- `Duration::try_from_secs_{f32,f64}`](https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.try_from_secs_f32)
- `Option::unzip`](https://doc.rust-lang.org/stable/std/option/enum.Option.html#method.unzip)
- `std::os::fd`](https://doc.rust-lang.org/stable/std/os/fd/index.html)

Rustdoc
-------

- Add Rustdoc warning for invalid HTML tags in the documentation

Cargo
-----

- Added `cargo remove` to remove dependencies from Cargo.toml](https://doc.rust-lang.org/nightly/cargo/commands/cargo-remove.html)
- `cargo publish` now waits for the new version to be downloadable before exiting
See [detailed release notes] for more.

Compatibility Notes
-------------------
 
- Only apply `ProceduralMasquerade` hack to older versions of `rental`]
- Don't export `__heap_base` and `__data_end` on wasm32-wasi.]
- Don't export `__wasm_init_memory` on WebAssembly.]
- Only export `__tls_*` on wasm32-unknown-unknown.]
- Don't link to `libresolv` in libstd on Darwin]
- Update libstd's libc to 0.2.135 (to make `libstd` no longer pull in `libiconv.dylib` on Darwin)]
- Opaque types no longer imply lifetime bounds]
  This is a soundness fix which may break code that was erroneously relying on this behavior.
- Make `order_dependent_trait_objects` show up in future-breakage reports]
- Change std::process::Command spawning to default to inheriting the parent's signal mask]

Changes in rust:

- Update to version 1.66.0 - for details see the rust1.66 package
</description>
</patchinfo>
openSUSE Build Service is sponsored by