Neal Gompa
17c7e17fbc
FWIW, I've now used rust-1.49.0 successfully to build both MozillaFirefox-84.0.2 and firefox-esr-78.6.1! FWIW2, I raised the memory constraints for x86_64 from 8 to 11G, because otherwise a build got killed due to OOM too often. This SR contains everything which got accepted for 1.48 just recently. - 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) OBS-URL: https://build.opensuse.org/request/show/862664 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=275
50 lines
1.1 KiB
XML
50 lines
1.1 KiB
XML
<?xml version="1.0"?>
|
|
<constraints>
|
|
<hardware>
|
|
<processors>8</processors>
|
|
<memory>
|
|
<size unit="G">8</size>
|
|
</memory>
|
|
<disk>
|
|
<size unit="G">20</size>
|
|
</disk>
|
|
</hardware>
|
|
<!-- i586, armv6 and armv7 tend to run out of memory during builds -->
|
|
<overwrite>
|
|
<conditions>
|
|
<arch>i586</arch>
|
|
<arch>armv6l</arch>
|
|
<arch>armv7l</arch>
|
|
<arch>ppc</arch>
|
|
</conditions>
|
|
<hardware>
|
|
<processors>2</processors>
|
|
<physicalmemory>
|
|
<size unit="G">4</size>
|
|
</physicalmemory>
|
|
</hardware>
|
|
</overwrite>
|
|
<!-- x86_64 to use physical memory to speed builds up -->
|
|
<overwrite>
|
|
<conditions>
|
|
<arch>x86_64</arch>
|
|
</conditions>
|
|
<hardware>
|
|
<physicalmemory>
|
|
<size unit="G">11</size>
|
|
</physicalmemory>
|
|
</hardware>
|
|
</overwrite>
|
|
<!-- aarch64 is a time consuming build, try to use RAM -->
|
|
<overwrite>
|
|
<conditions>
|
|
<arch>aarch64</arch>
|
|
</conditions>
|
|
<hardware>
|
|
<physicalmemory>
|
|
<size unit="G">8</size>
|
|
</physicalmemory>
|
|
</hardware>
|
|
</overwrite>
|
|
</constraints>
|