Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
Name: rust | Distribution: openSUSE Tumbleweed |
Version: 1.82.0 | Vendor: openSUSE |
Release: 1.1 | Build date: Fri Oct 18 04:42:06 2024 |
Group: Development/Languages/Rust | Build host: reproducible |
Size: 79 | Source RPM: rust-1.82.0-1.1.src.rpm |
Packager: http://bugs.opensuse.org | |
Url: https://www.rust-lang.org | |
Summary: A systems programming language |
Rust is a systems programming language focused on three goals: safety, speed, and concurrency. ⚠️ This is the Rust toolchain intended for build pipelines. If you want to install Rust for a development environment, you should install 'rustup' instead.
Apache-2.0 OR MIT
* Fri Oct 18 2024 William Brown <william.brown@suse.com> - Update to version 1.82.0 - for details see the rust1.82 package * Mon Sep 09 2024 Xiaoguang Wang <xiaoguang.wang@suse.com> - Update to version 1.81.0 - for details see the rust1.81 package * Fri Jul 26 2024 William Brown <william.brown@suse.com> - Update to version 1.80.0 - for details see the rust1.80 package * Fri Jun 14 2024 Xiaoguang Wang <xiaoguang.wang@suse.com> - Update to version 1.79.0 - for details see the rust1.79 package * Tue May 14 2024 William Brown <william.brown@suse.com> - Update to version 1.78.0 - for details see the rust1.78 package * Tue Mar 26 2024 William Brown <william.brown@suse.com> - Update to version 1.77.0 - for details see the rust1.77 package * Fri Feb 09 2024 William Brown <william.brown@suse.com> - Update to version 1.76.0 - for details see the rust1.76 package * Mon Jan 01 2024 William Brown <william.brown@suse.com> - Update to version 1.75.0 - for details see the rust1.75 package * Fri Nov 17 2023 William Brown <william.brown@suse.com> - Update to version 1.74.0 - for details see the rust1.74 package * Fri Oct 06 2023 William Brown <william.brown@suse.com> - Update to version 1.73.0 - for details see the rust1.73 package * Sun Aug 27 2023 William Brown <william.brown@suse.com> - Update to version 1.72.0 - for details see the rust1.72 package * Mon Jul 17 2023 William Brown <william.brown@suse.com> - Update to version 1.71.0 - for details see the rust1.71 package * Sat Jun 03 2023 William Brown <william.brown@suse.com> - Update to version 1.70.0 - for details see the rust1.70 package * Fri Apr 21 2023 William Brown <william.brown@suse.com> - Update to version 1.69.0 - for details see the rust1.69 package * Fri Mar 10 2023 William Brown <william.brown@suse.com> - Update to version 1.68.0 - for details see the rust1.68 package * Tue Feb 14 2023 William Brown <william.brown@suse.com> - Update to version 1.67.1 - for details see the rust1.67 package * Tue Jan 31 2023 William Brown <william.brown@suse.com> - Update to version 1.67.0 - for details see the rust1.67 package * Fri Dec 16 2022 William Brown <william.brown@suse.com> - Update to version 1.66.0 - for details see the rust1.66 package * Fri Nov 04 2022 William Brown <william.brown@suse.com> - Update to version 1.65.0 - for details see the rust1.65 package * Wed Sep 28 2022 Guillaume GARDET <guillaume.gardet@opensuse.org> - Enable armv6 again - boo#1196328 * Sun Sep 25 2022 William Brown <william.brown@suse.com> - Update to version 1.64.0 - for details see the rust1.64 package * Tue Aug 23 2022 William Brown <william.brown@suse.com> - Update to version 1.63.0 - for details see the rust1.63 package * Mon Jul 04 2022 William Brown <william.brown@suse.com> - Update to version 1.62.0 - for details see the rust1.62 package * Fri May 20 2022 William Brown <william.brown@suse.com> - Update to version 1.61.0 - for details see the rust1.61 package * Fri Apr 08 2022 William Brown <william.brown@suse.com> - Update to version 1.60.0 - for details see the rust1.60 package * Fri Feb 25 2022 William Brown <william.brown@suse.com> - Update to version 1.59.0 - for details see the rust1.59 package * Wed Feb 16 2022 William Brown <william.brown@suse.com> - Update package description to help users choose what tooling to install. * Mon Jan 17 2022 Dominique Leuenberger <dimstar@opensuse.org> - Provide rust+cargo by cargo: all cargo<n> package provide this symbol too. Having the meta package provide it allows OBS to have a generic prefernece on the meta package for all packages 'just' requiring rust+cargo. * Fri Jan 14 2022 William Brown <william.brown@suse.com> - Update to version 1.58.0 * Fri Dec 03 2021 William Brown <william.brown@suse.com> - Update to version 1.57.0 * Mon Nov 08 2021 William Brown <william.brown@suse.com> - Update to version 1.56.1 * Mon Oct 25 2021 William Brown <william.brown@suse.com> - Remove rls/gdb as they are superceded by rustup * Fri Sep 10 2021 William Brown <william.brown@suse.com> - Update to version 1.55 * Mon Aug 16 2021 William Brown <william.brown@suse.com> - Change expression of dependency requirements to resolve zypper dup issues * Fri Jul 30 2021 William Brown <william.brown@suse.com> - Update to version 1.54 * Tue Jul 06 2021 Dominique Leuenberger <dimstar@opensuse.org> - Only install rls/README when building devtools, as otherwise this file would end up in no package. * Tue Jul 06 2021 William Brown <william.brown@suse.com> - Revert package to be arch dependent based on reviewer feedback * Mon Jun 28 2021 William Brown <william.brown@suse.com> - Migrate to parallel versioned rust installs. - Remove artefacts for building rust * ignore-Wstring-conversion.patch * Fri Jun 18 2021 William Brown <william.brown@suse.com> - Update to version 1.53: + Language - [You can now use unicode for identifiers.][83799] This allows multilingual identifiers but still doesn't allow glyphs that are not considered characters such as `◆` or `🦀`. More specifically you can now use any identifier that matches the UAX #31 "Unicode Identifier and Pattern Syntax" standard. This is the same standard as languages like Python, however Rust uses NFC normalization which may be different from other languages. - [You can now specify "or patterns" inside pattern matches.][79278] Previously you could only use `|` (OR) on complete patterns. E.g. ```rust let x = Some(2u8); // Before matches!(x, Some(1) | Some(2)); // Now matches!(x, Some(1 | 2)); ``` - [Added the `:pat_param` `macro_rules!` matcher.][83386] This matcher has the same semantics as the `:pat` matcher. This is to allow `:pat` to change semantics to being a pattern fragment in a future edition. + Compiler - [Updated the minimum external LLVM version to LLVM 10.][83387] - [Added Tier 3\* support for the `wasm64-unknown-unknown` target.][80525] - [Improved debuginfo for closures and async functions on Windows MSVC.][83941] \* Refer to Rust's [platform support page][platform-support-doc] for more information on Rust's tiered platform support. + Libraries - [Abort messages will now forward to `android_set_abort_message` on Android platforms when available.][81469] - [`slice::IterMut<'_, T>` now implements `AsRef<[T]>`][82771] - [Arrays of any length now implement `IntoIterator`.][84147] Currently calling `.into_iter()` as a method on an array will return `impl Iterator<Item=&T>`, but this may change in a future edition to change `Item` to `T`. Calling `IntoIterator::into_iter` directly on arrays will provide `impl Iterator<Item=T>` as expected. - [`leading_zeros`, and `trailing_zeros` are now available on all `NonZero` integer types.][84082] - [`{f32, f64}::from_str` now parse and print special values (`NaN`, `-0`) according to IEEE RFC 754.][78618] - [You can now index into slices using `(Bound<usize>, Bound<usize>)`.][77704] - [Add the `BITS` associated constant to all numeric types.][82565] + Cargo - [Cargo now supports git repositories where the default `HEAD` branch is not "master".][cargo/9392] This also includes a switch to the version 3 `Cargo.lock` format which can handle default branches correctly. - [macOS targets now default to `unpacked` split-debuginfo.][cargo/9298] - [The `authors` field is no longer included in `Cargo.toml` for new projects.][cargo/9282] + Rustdoc - [Added the `rustdoc::bare_urls` lint that warns when you have URLs without hyperlinks.][81764] + Compatibility Notes - [Implement token-based handling of attributes during expansion][82608] - [`Ipv4::from_str` will now reject octal format IP addresses in addition to rejecting hexadecimal IP addresses.][83652] The octal format can lead to confusion and potential security vulnerabilities and [is no longer recommended][ietf6943]. * Mon May 10 2021 William Brown <william.brown@suse.com> - Update to version 1.52.1: - This release works around broken builds on 1.52.0, which are caused by newly added verification. The bugs this verification detects are present in all Rust versions, and can trigger miscompilations in incremental builds, so downgrading to a prior stable version is not a fix. - What should a Rust programmer do in response? - upgrade to 1.52.1 - deleting your incremental compilation cache (e.g. by running cargo clean) - forcing incremental compilation to be disabled, by setting CARGO_INCREMENTAL=0 in your environment or build.incremental to false in the config.toml. - For more: https://blog.rust-lang.org/2021/05/10/Rust-1.52.1.html * Fri May 07 2021 William Brown <william.brown@suse.com> - Update to version 1.52: + Language - [Added the `unsafe_op_in_unsafe_fn` lint, which checks whether the unsafe code in an `unsafe fn` is wrapped in a `unsafe` block.][79208] This lint is allowed by default, and may become a warning or hard error in a future edition. - [You can now cast mutable references to arrays to a pointer of the same type as the element.][81479] + Compiler - [Upgraded the default LLVM to LLVM 12.][81451] - Added tier 3\* support for the following targets. - [`s390x-unknown-linux-musl`][82166] - [`riscv32gc-unknown-linux-musl` & `riscv64gc-unknown-linux-musl`][82202] - [`powerpc-unknown-openbsd`][82733] + Libraries - [`OsString` now implements `Extend` and `FromIterator`.][82121] - [`cmp::Reverse` now has `#[repr(transparent)]` representation.][81879] - [`Arc<impl Error>` now implements `error::Error`.][80553] - [All integer division and remainder operations are now `const`.][80962] + Stabilised APIs - [`Arguments::as_str`] - [`char::MAX`] - [`char::REPLACEMENT_CHARACTER`] - [`char::UNICODE_VERSION`] - [`char::decode_utf16`] - [`char::from_digit`] - [`char::from_u32_unchecked`] - [`char::from_u32`] - [`slice::partition_point`] - [`str::rsplit_once`] - [`str::split_once`] The following previously stable APIs are now `const`. - [`char::len_utf8`] - [`char::len_utf16`] - [`char::to_ascii_uppercase`] - [`char::to_ascii_lowercase`] - [`char::eq_ignore_ascii_case`] - [`u8::to_ascii_uppercase`] - [`u8::to_ascii_lowercase`] - [`u8::eq_ignore_ascii_case`] + Rustdoc - [Rustdoc lints are now treated as a tool lint, meaning that lints are now prefixed with `rustdoc::` (e.g. `#[warn(rustdoc::non_autolinks)]`).][80527] Using the old style is still allowed, and will become a warning in a future release. - [Rustdoc now supports argument files.][82261] - [Rustdoc now generates smart punctuation for documentation.][79423] - [You can now use "task lists" in Rustdoc Markdown.][81766] E.g. ```markdown - [x] Complete - [ ] Todo ``` + Misc - [You can now pass multiple filters to tests.][81356] E.g. `cargo test -- foo bar` will run all tests that match `foo` and `bar`. - [Rustup now distributes PDB symbols for the `std` library on Windows, allowing you to see `std` symbols when debugging.][82218] + Internal Only These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools. - [Check the result cache before the DepGraph when ensuring queries][81855] - [Try fast_reject::simplify_type in coherence before doing full check][81744] - [Only store a LocalDefId in some HIR nodes][81611] - [Store HIR attributes in a side table][79519] + Compatibility Notes - ------------------ - [Cargo build scripts are now forbidden from setting `RUSTC_BOOTSTRAP`.][cargo/9181] - [Removed support for the `x86_64-rumprun-netbsd` target.][82594] - [Deprecated the `x86_64-sun-solaris` target in favor of `x86_64-pc-solaris`.][82216] - [Rustdoc now only accepts `,`, ` `, and `\t` as delimiters for specifying languages in code blocks.][78429] - [Rustc now catches more cases of `pub_use_of_private_extern_crate`][80763] - [Changes in how proc macros handle whitespace may lead to panics when used with older `proc-macro-hack` versions. A `cargo update` should be sufficient to fix this in all cases.][84136] - Remove support-llvm12.patch - feature of 1.52 * Sat Apr 17 2021 Aaron Puchert <aaronpuchert@alice-dsl.net> - Add support-llvm12.patch to support building with LLVM 12. * Tue Apr 06 2021 William Brown <william.brown@suse.com> - Update to version 1.51: + Language - [You can now parameterize items such as functions, traits, and `struct`s by constant values in addition to by types and lifetimes.][79135] Also known as "const generics" E.g. you can now write the following. Note: Only values of primitive integers, `bool`, or `char` types are currently permitted. + Compiler - [Added the `-Csplit-debuginfo` codegen option for macOS platforms.][79570] This option controls whether debug information is split across multiple files or packed into a single file. **Note** This option is unstable on other platforms. - [Added tier 3\* support for `aarch64_be-unknown-linux-gnu`, `aarch64-unknown-linux-gnu_ilp32`, and `aarch64_be-unknown-linux-gnu_ilp32` targets.][81455] - [Added tier 3 support for `i386-unknown-linux-gnu` and `i486-unknown-linux-gnu` targets.][80662] - [The `target-cpu=native` option will now detect individual features of CPUs.][80749] \* Refer to Rust's [platform support page][platform-support-doc] for more information on Rust's tiered platform support. + Libraries - [`Box::downcast` is now also implemented for any `dyn Any + Send + Sync` object.][80945] - [`str` now implements `AsMut<str>`.][80279] - [`u64` and `u128` now implement `From<char>`.][79502] - [`Error` is now implemented for `&T` where `T` implements `Error`.][75180] - [`Poll::{map_ok, map_err}` are now implemented for `Poll<Option<Result<T, E>>>`.][80968] - [`unsigned_abs` is now implemented for all signed integer types.][80959] - [`io::Empty` now implements `io::Seek`.][78044] - [`rc::Weak<T>` and `sync::Weak<T>`'s methods such as `as_ptr` are now implemented for `T: ?Sized` types.][80764] + Stabilized APIs - [`Arc::decrement_strong_count`] - [`Arc::increment_strong_count`] - [`Once::call_once_force`] - [`Peekable::next_if_eq`] - [`Peekable::next_if`] - [`Seek::stream_position`] - [`array::IntoIter`] - [`panic::panic_any`] - [`ptr::addr_of!`] - [`ptr::addr_of_mut!`] - [`slice::fill_with`] - [`slice::split_inclusive_mut`] - [`slice::split_inclusive`] - [`slice::strip_prefix`] - [`slice::strip_suffix`] - [`str::split_inclusive`] - [`sync::OnceState`] - [`task::Wake`] + Cargo - [Added the `split-debuginfo` profile option to control the -Csplit-debuginfo codegen option.][cargo/9112] - [Added the `resolver` field to `Cargo.toml` to enable the new feature resolver and CLI option behavior.][cargo/8997] Version 2 of the feature resolver will try to avoid unifying features of dependencies where that unification could be unwanted. Such as using the same dependency with a `std` feature in a build scripts and proc-macros, while using the `no-std` feature in the final binary. See the [Cargo book documentation][feature-resolver@2.0] for more information on the feature. + Rustdoc - [Rustdoc will now include documentation for methods available from _nested_ `Deref` traits.][80653] - [You can now provide a `--default-theme` flag which sets the default theme to use for documentation.][79642] Various improvements to intra-doc links: - [You can link to non-path primitives such as `slice`.][80181] - [You can link to associated items.][74489] - [You can now include generic parameters when linking to items, like `Vec<T>`.][76934] + Misc - [You can now pass `--include-ignored` to tests (e.g. with `cargo test -- --include-ignored`) to include testing tests marked `#[ignore]`.][80053] + Compatibility Notes - [WASI platforms no longer use the `wasm-bindgen` ABI, and instead use the wasm32 ABI.][79998] - [`rustc` no longer promotes division, modulo and indexing operations to `const` that could fail.][80579] - [The minimum version of glibc for the following platforms has been bumped to version 2.31 for the distributed artifacts.][81521] - `armv5te-unknown-linux-gnueabi` - `sparc64-unknown-linux-gnu` - `thumbv7neon-unknown-linux-gnueabihf` - `armv7-unknown-linux-gnueabi` - `x86_64-unknown-linux-gnux32` * Mon Mar 29 2021 opensuse-packaging@opensuse.org - Rebased patches: + ignore-Wstring-conversion.patch (offset / fuzz) * Sun Mar 28 2021 Manfred Hollstein <manfred.h@gmx.net> - rust.spec: Fix typo. Add work-around for cargo not respecting _libexecdir on Leap. * Thu Mar 11 2021 Guillaume GARDET <guillaume.gardet@opensuse.org> - Add bootstrap for armv6 * Wed Feb 24 2021 Guillaume GARDET <guillaume.gardet@opensuse.org> - Update to version 1.50: * This fixes build on armv7 - boo#1181643 + Language - You can now use const values for x in [x; N] array expressions. This has been technically possible since 1.38.0, as it was unintentionally stabilized. - Assignments to ManuallyDrop<T> union fields are now considered safe. + Compiler - Added tier 3* support for the armv5te-unknown-linux-uclibceabi target. - Added tier 3 support for the aarch64-apple-ios-macabi target. - The x86_64-unknown-freebsd is now built with the full toolset. - Dropped support for all cloudabi targets. * Refer to Rust's platform support page for more information on Rust's tiered platform support. + Libraries - proc_macro::Punct now implements PartialEq<char>. - ops::{Index, IndexMut} are now implemented for fixed sized arrays of any length. - On Unix platforms, the std::fs::File type now has a "niche" of -1. This value cannot be a valid file descriptor, and now means Option<File> takes up the same amount of space as File. + Stabilized APIs bool::then btree_map::Entry::or_insert_with_key f32::clamp f64::clamp hash_map::Entry::or_insert_with_key Ord::clamp RefCell::take slice::fill UnsafeCell::get_mut - The following previously stable methods are now const. IpAddr::is_ipv4 IpAddr::is_ipv6 IpAddr::is_unspecified IpAddr::is_loopback IpAddr::is_multicast Ipv4Addr::octets Ipv4Addr::is_loopback Ipv4Addr::is_private Ipv4Addr::is_link_local Ipv4Addr::is_multicast Ipv4Addr::is_broadcast Ipv4Addr::is_documentation Ipv4Addr::to_ipv6_compatible Ipv4Addr::to_ipv6_mapped Ipv6Addr::segments Ipv6Addr::is_unspecified Ipv6Addr::is_loopback Ipv6Addr::is_multicast Ipv6Addr::to_ipv4 Layout::size Layout::align Layout::from_size_align pow for all integer types. checked_pow for all integer types. saturating_pow for all integer types. wrapping_pow for all integer types. next_power_of_two for all unsigned integer types. checked_next_power_of_two for all unsigned integer types. + Cargo - Added the [build.rustc-workspace-wrapper] option. This option sets a wrapper to execute instead of rustc, for workspace members only. - cargo:rerun-if-changed will now, if provided a directory, scan the entire contents of that directory for changes. - Added the --workspace flag to the cargo update command. + Misc - The search results tab and the help button are focusable with keyboard in rustdoc. - Running tests will now print the total time taken to execute. + Compatibility Notes - The compare_and_swap method on atomics has been deprecated. It's recommended to use the compare_exchange and compare_exchange_weak methods instead. - Changes in how TokenStreams are checked have fixed some cases where you could write unhygenic macro_rules! macros. - #![test] as an inner attribute is now considered unstable like other inner macro attributes, and reports an error by default through the soft_unstable lint. - Overriding a forbid lint at the same level that it was set is now a hard error. - You can no longer intercept panic! calls by supplying your own macro. It's recommended to use the #[panic_handler] attribute to provide your own implementation. - Semi-colons after item statements (e.g. struct Foo {};) now produce a warning. * Sun Jan 10 2021 Neal Gompa <ngompa13@gmail.com> - Add riscv64 build * Sat Jan 09 2021 Manfred Hollstein <manfred.h@gmx.net> - <https://github.com/rust-lang/rust/issues/74976>: Add "--stage 1" to the "./x.py doc" call to ensure the newly built compiler gets used. * Sat Jan 09 2021 Manfred Hollstein <manfred.h@gmx.net> - Leap 15.3 does not provide a suitable llvm-devel package, hence explicitly require llvm9-devel. Details can be seen in the following e-mail thread <https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/thread/ZQWAMG2VYBSI2BFM7G3H5YG26ALXWAOA/> * Sun Jan 03 2021 Manfred Hollstein <manfred.h@gmx.net> - Update to version 1.49.0 + Language - Unions can now implement Drop, and you can now have a field in a union with ManuallyDrop<T>. - You can now cast uninhabited enums to integers. - You can now bind by reference and by move in patterns. This allows you to selectively borrow individual components of a type. E.g. [#][derive(Debug)] struct Person { name: String, age: u8, } let person = Person { name: String::from("Alice"), age: 20, }; // `name` is moved out of person, but `age` is referenced. let Person { name, ref age } = person; println!("{} {}", name, age); + Compiler - Added tier 1* support for aarch64-unknown-linux-gnu. - Added tier 2 support for aarch64-apple-darwin. - Added tier 2 support for aarch64-pc-windows-msvc. - Added tier 3 support for mipsel-unknown-none. - Raised the minimum supported LLVM version to LLVM 9. - Output from threads spawned in tests is now captured. - Change os and vendor values to "none" and "unknown" for some targets * Refer to Rust's platform support page for more information on Rust's tiered platform support. + Libraries - RangeInclusive now checks for exhaustion when calling contains and indexing. - ToString::to_string now no longer shrinks the internal buffer in the default implementation. - ops::{Index, IndexMut} are now implemented for fixed sized arrays of any length. + Stabilized APIs - slice::select_nth_unstable - slice::select_nth_unstable_by - slice::select_nth_unstable_by_key The following previously stable methods are now const. - Poll::is_ready - Poll::is_pending + Cargo - Building a crate with cargo-package should now be independently reproducible. - cargo-tree now marks proc-macro crates. - Added CARGO_PRIMARY_PACKAGE build-time environment variable. This variable will be set if the crate being built is one the user selected to build, either with -p or through defaults. - You can now use glob patterns when specifying packages & targets. + Compatibility Notes - Demoted i686-unknown-freebsd from host tier 2 to target tier 2 support. - Macros that end with a semi-colon are now treated as statements even if they expand to nothing. - Rustc will now check for the validity of some built-in attributes on enum variants. Previously such invalid or unused attributes could be ignored. - Leading whitespace is stripped more uniformly in documentation comments, which may change behavior. You read this post about the changes for more details. - Trait bounds are no longer inferred for associated types. + Internal Only These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools. - rustc's internal crates are now compiled using the initial-exec Thread Local Storage model. - Calculate visibilities once in resolve. - Added system to the llvm-libunwind bootstrap config option. - Added --color for configuring terminal color support to bootstrap. - Rebased patches: + ignore-Wstring-conversion.patch (location) * Sun Jan 03 2021 Manfred Hollstein <manfred.h@gmx.net> - LLVM >= 9.0 is needed nowadays. - Disable usage of "ninja" for all distributions older than Leap 15.2 * Sat Jan 02 2021 Manfred Hollstein <manfred.h@gmx.net> - Update to version 1.48.0 + Language - The `unsafe` keyword is now syntactically permitted on modules. This is still rejected semantically, but can now be parsed by procedural macros. + Compiler - Stabilised the `-C link-self-contained=<yes|no>` compiler flag. This tells `rustc` whether to link its own C runtime and libraries or to rely on a external linker to find them. (Supported only on `windows-gnu`, `linux-musl`, and `wasi` platforms.) - You can now use `-C target-feature=+crt-static` on `linux-gnu` targets. Note: If you're using cargo you must explicitly pass the `--target` flag. - Added tier 2* support for aarch64-unknown-linux-musl. * Refer to Rust's platform support page for more information on Rust's tiered platform support. + Libraries - io::Write is now implemented for &ChildStdin &Sink, &Stdout, and &Stderr. - All arrays of any length now implement TryFrom<Vec<T>>. - The matches! macro now supports having a trailing comma. - Vec<A> now implements PartialEq<[B]> where A: PartialEq<B>. - The RefCell::{replace, replace_with, clone} methods now all use #[track_caller]. + Stabilized APIs - slice::as_ptr_range - slice::as_mut_ptr_range - VecDeque::make_contiguous - future::pending - future::ready The following previously stable methods are now `const fn's`: - Option::is_some - Option::is_none - Option::as_ref - Result::is_ok - Result::is_err - Result::as_ref - Ordering::reverse - Ordering::then + Cargo + Rustdoc - You can now link to items in rustdoc using the intra-doc link syntax. E.g. /// Uses [`std::future`] will automatically generate a link to std::future's documentation. See "Linking to items by name" for more information. - You can now specify #[doc(alias = "<alias>")] on items to add search aliases when searching through rustdoc's UI. + Compatibility Notes - Promotion of references to 'static lifetime inside const fn now follows the same rules as inside a fn body. In particular, &foo() will not be promoted to 'static lifetime any more inside const fns. - Associated type bindings on trait objects are now verified to meet the bounds declared on the trait when checking that they implement the trait. - When trait bounds on associated types or opaque types are ambiguous, the compiler no longer makes an arbitrary choice on which bound to use. - Fixed recursive nonterminals not being expanded in macros during pretty-print/reparse check. This may cause errors if your macro wasn't correctly handling recursive nonterminal tokens. - &mut references to non zero-sized types are no longer promoted. - rustc will now warn if you use attributes like #[link_name] or [#][cold] in places where they have no effect. - Updated _mm256_extract_epi8 and _mm256_extract_epi16 signatures in arch::{x86, x86_64} to return i32 to match the vendor signatures. - mem::uninitialized will now panic if any inner types inside a struct or enum disallow zero-initialization. - #[target_feature] will now error if used in a place where it has no effect. - Foreign exceptions are now caught by catch_unwind and will cause an abort. Note: This behaviour is not guaranteed and is still considered undefined behaviour, see the catch_unwind documentation for further information. + Internal Only These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools. - Building rustc from source now uses ninja by default over make. You can continue building with make by setting ninja=false in your config.toml. - cg_llvm: fewer_names in uncached_llvm_type - Made ensure_sufficient_stack() non-generic - Rebased patches: + ignore-Wstring-conversion.patch (location)
/usr/share/doc/packages/rust /usr/share/doc/packages/rust/README
Generated by rpm2html 1.8.1
Fabrice Bellet, Thu Dec 5 23:54:35 2024