Commit Graph

121 Commits

Author SHA256 Message Date
William Brown
9b60c66f20 Accepting request 892143 from home:firstyear:branches:devel:languages:rust
- 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

OBS-URL: https://build.opensuse.org/request/show/892143
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=290
2021-05-11 02:03:21 +00:00
William Brown
3daf5fc387 Accepting request 891155 from home:firstyear:branches:devel:languages:rust
- 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`]

OBS-URL: https://build.opensuse.org/request/show/891155
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=288
2021-05-08 10:49:16 +00:00
William Brown
97ea94c873 Accepting request 886366 from home:aaronpuchert:llvm-next
- Add support-llvm12.patch to support building with LLVM 12.

OBS-URL: https://build.opensuse.org/request/show/886366
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=286
2021-04-19 23:49:54 +00:00
William Brown
a5aedbf7e7 Accepting request 883116 from home:firstyear:branches:devel:languages:rust
- 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`]

OBS-URL: https://build.opensuse.org/request/show/883116
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=284
2021-04-06 02:44:03 +00:00
William Brown
2966f54e4b Accepting request 881818 from home:firstyear:branches:devel:languages:rust
- Rebased patches:
  + ignore-Wstring-conversion.patch (offset / fuzz)

OBS-URL: https://build.opensuse.org/request/show/881818
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=283
2021-03-31 23:09:45 +00:00
William Brown
e6be971f1d Accepting request 881724 from home:manfred-h:devel:languages:rust:rust-1.50
- rust.spec: Fix typo.
  Add work-around for cargo not respecting _libexecdir on Leap.

OBS-URL: https://build.opensuse.org/request/show/881724
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=282
2021-03-29 02:28:58 +00:00
1a282984be Accepting request 878393 from home:Guillaume_G:branches:openSUSE:Factory:ARM
- Add bootstrap for armv6

OBS-URL: https://build.opensuse.org/request/show/878393
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=280
2021-03-11 18:57:25 +00:00
c7961c77bd Drop changelog entry about download helper
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=279
2021-03-08 13:30:08 +00:00
266f40cbab Accepting request 877726 from home:Guillaume_G:branches:openSUSE:Factory:ARM
- 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.
- Add download_helper.sh to ease download of bootstrap packages

OBS-URL: https://build.opensuse.org/request/show/877726
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=277
2021-03-08 12:49:24 +00:00
17c7e17fbc Accepting request 862664 from home:manfred-h:devel:languages:rust:rust-1.49
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
2021-01-14 02:48:46 +00:00
311dd77155 - Add riscv64 build
- Add rust.keyring as a source

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=274
2021-01-10 13:20:06 +00:00
34a443633b Add reference to rust.keyring into changes
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=273
2021-01-10 12:50:10 +00:00
17041caeb7 Accepting request 862086 from home:manfred-h:devel:languages:rust:rust-1.48
Final SR - promised :)

- <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  9 09:25:07 UTC 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  3 11:27:23 UTC 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  2 16:50:47 UTC 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)

OBS-URL: https://build.opensuse.org/request/show/862086
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=272
2021-01-10 12:26:42 +00:00
3dbc281a48 Accepting request 851409 from home:bmwiedemann:branches:devel:languages:rust
Check upstream signatures for binaries

OBS-URL: https://build.opensuse.org/request/show/851409
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=271
2020-11-28 01:42:57 +00:00
2b26fbdfa0 Accepting request 849719 from home:manfred-h:devel:languages:rust:rust-1.47
This request actually fixes two issues:

- rust-rpmlintrc: Reflect updated LLVM name in the filter.
#1: LLVM got updated to version 11, but the rpmlint filter does not reflect it. Fixes:

rust.x86_64: E: shlib-policy-name-error (Badness: 10000) libLLVM-11-rust-1_47_0-stable
 Your package contains a single shared library but is not named after its SONAME.

- Make all shared libraries in %{common_libdir} executable; otherwise
  the %{fdupes} macro will not find any duplicates in %{rustlibdir}.
#2: Files which only differ in their protection bits (i.e. execution bit in this case) will not be replaced by a hard link using the %{fdupes} call. This patch fixes:

rust.x86_64: E: files-duplicated-waste (Badness: 100) 4349464
 Your package contains duplicated files that are not hard- or symlinks. You
 should use the %fdupes macro to link the files to one.

Files in question are from /usr/lib/ and /usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/

OBS-URL: https://build.opensuse.org/request/show/849719
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=269
2020-11-22 17:59:38 +00:00
f332e4370a Accepting request 841108 from home:firstyear:branches:devel:languages:rust
- Update to version 1.47.0
  + Language
  - [Closures will now warn when not used.][74869]
  + Compiler
  - [Stabilized the `-C control-flow-guard` codegen option][73893], which enables
    [Control Flow Guard][1.47.0-cfg] for Windows platforms, and is ignored on other
    platforms.
  - [Upgraded to LLVM 11.][73526]
  - [Added tier 3\* support for the `thumbv4t-none-eabi` target.][74419]
  - [Upgrade the FreeBSD toolchain to version 11.4][75204]
  - [`RUST_BACKTRACE`'s output is now more compact.][75048]
  \* Refer to Rust's [platform support page][forge-platform-support] for more
  information on Rust's tiered platform support.
  + Libraries
  - [`CStr` now implements `Index<RangeFrom<usize>>`.][74021]
  - [Traits in `std`/`core` are now implemented for arrays of any length, not just
    those of length less than 33.][74060]
  - [`ops::RangeFull` and `ops::Range` now implement Default.][73197]
  - [`panic::Location` now implements `Copy`, `Clone`, `Eq`, `Hash`, `Ord`,
    `PartialEq`, and `PartialOrd`.][73583]
  + Stabilized APIs
  - [`Ident::new_raw`]
  - [`Range::is_empty`]
  - [`RangeInclusive::is_empty`]
  - [`Result::as_deref`]
  - [`Result::as_deref_mut`]
  - [`Vec::leak`]
  - [`pointer::offset_from`]
  - [`f32::TAU`]
  - [`f64::TAU`]

OBS-URL: https://build.opensuse.org/request/show/841108
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=267
2020-10-27 22:13:16 +00:00
a31c8f45ab Accepting request 840500 from home:firstyear:branches:devel:languages:rust
- Update to version 1.46.0
  + Language
  - [`if`, `match`, and `loop` expressions can now be used in const functions.][72437]
  - [Additionally you are now also able to coerce and cast to slices (`&[T]`) in
    const functions.][73862]
  - [The `#[track_caller]` attribute can now be added to functions to use the
    function's caller's location information for panic messages.][72445]
  - [Recursively indexing into tuples no longer needs parentheses.][71322] E.g.
    `x.0.0` over `(x.0).0`.
  - [`mem::transmute` can now be used in statics and constants.][72920] **Note**
    You currently can't use `mem::transmute` in constant functions.
  + Compiler
  - [You can now use the `cdylib` target on Apple iOS and tvOS platforms.][73516]
  - [Enabled static "Position Independent Executables" by default
    for `x86_64-unknown-linux-musl`.][70740]
  + Libraries
  - [`mem::forget` is now a `const fn`.][73887]
  - [`String` now implements `From<char>`.][73466]
  - [The `leading_ones`, and `trailing_ones` methods have been stabilised for all
    integer types.][73032]
  - [`vec::IntoIter<T>` now implements `AsRef<[T]>`.][72583]
  - [All non-zero integer types (`NonZeroU8`) now implement `TryFrom` for their
    zero-able equivalent (e.g. `TryFrom<u8>`).][72717]
  - [`&[T]` and `&mut [T]` now implement `PartialEq<Vec<T>>`.][71660]
  - [`(String, u16)` now implements `ToSocketAddrs`.][73007]
  - [`vec::Drain<'_, T>` now implements `AsRef<[T]>`.][72584]
  + Stabilized APIs
  - [`Option::zip`]
  - [`vec::Drain::as_slice`]
  + Cargo

OBS-URL: https://build.opensuse.org/request/show/840500
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=265
2020-10-10 20:54:03 +00:00
1554d2b079 Accepting request 831552 from home:firstyear:branches:devel:languages:rust
- Update to version 1.45.2

OBS-URL: https://build.opensuse.org/request/show/831552
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=263
2020-09-10 00:31:19 +00:00
2e33e70f94 Accepting request 826669 from home:MSirringhaus:branches:devel:languages:rust_2
- Set codeunits=1 for all archs to avoid OOM-kills and produce 
  the fastest possible compiler-binaries (at the cost of 
  build-times for this package)

OBS-URL: https://build.opensuse.org/request/show/826669
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=261
2020-08-17 13:36:06 +00:00
436ad59e80 Drop opinionated verbiage from changes entry
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=259
2020-08-14 11:50:27 +00:00
22073b3ccf Accepting request 826288 from home:Andreas_Schwab:riscv:rust
- Pacify dumb source validator

OBS-URL: https://build.opensuse.org/request/show/826288
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=258
2020-08-13 13:48:00 +00:00
4ede2115e5 Accepting request 826251 from home:Andreas_Schwab:riscv:rust
- Add support for riscv64

OBS-URL: https://build.opensuse.org/request/show/826251
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=257
2020-08-13 11:18:32 +00:00
be1fc42de0 Accepting request 824836 from home:manfred-h:devel:languages:rust:rust-1.44.1
- Minimum version needed for LLVM is >= 8.0

OBS-URL: https://build.opensuse.org/request/show/824836
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=255
2020-08-10 13:14:47 +00:00
1dcb483bf1 Accepting request 824719 from home:mrostecki:branches:devel:languages:rust
NOTE: The reason I made an update to 1.44.x instead od 1.45.x is that it's impossible to build 1.45.x with 1.43.x. We will be able to update to 1.45.x after we have 1.44.x compilers reeady.

- Update to version 1.44.1
  * rustfmt accepts rustfmt_skip in cfg_attr again.
  * Don't hash executable filenames on apple platforms, fixing backtraces.
  * Fix crashes when finding backtrace on macOS.
  * Clippy applies lint levels into different files.
- Update to version 1.44.0
  + Language
    - You can now use `async/.await` with `#[no_std]` enabled.
    - Added the `unused_braces` lint.
    - Expansion-driven outline module parsing
  + Compiler
    - Rustc now respects the `-C codegen-units` flag in incremental mode.
      Additionally when in incremental mode rustc defaults to 256 codegen units.
    - Refactored `catch_unwind` to have zero-cost, unless unwinding is enabled and
      a panic is thrown.
    - Added tier 3\* support for the `aarch64-unknown-none` and
      `aarch64-unknown-none-softfloat` targets.
    - Added tier 3 support for `arm64-apple-tvos` and
      `x86_64-apple-tvos` targets.
  + Libraries
    - Special cased `vec![]` to map directly to `Vec::new()`. This allows
      `vec![]` to be able to be used in `const` contexts.
    - `convert::Infallible` now implements `Hash`.
    - `OsString` now implements `DerefMut` and `IndexMut` returning
      a `&mut OsStr`.
    - Unicode 13 is now supported.
    - `String` now implements `From<&mut str>`.
    - `IoSlice` now implements `Copy`.
    - `Vec<T>` now implements `From<[T; N]>`. Where `N` is at most 32.
    - `proc_macro::LexError` now implements `fmt::Display` and `Error`.

OBS-URL: https://build.opensuse.org/request/show/824719
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=254
2020-08-06 16:56:34 +00:00
9ab2ea9b36 Accepting request 807722 from home:MSirringhaus:branches:devel:languages:rust
- Update to version 1.43.1
  - Updated openssl-src to 1.1.1g for CVE-2020-1967.
  - Fixed the stabilization of AVX-512 features.
  - Fixed `cargo package --list` not working with unpublished
    dependencies.

OBS-URL: https://build.opensuse.org/request/show/807722
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=252
2020-06-22 13:31:07 +00:00
fe469f919c Accepting request 800119 from home:namtrac:branches:devel:languages:rust
- Add rust-pr70163-prepare-for-llvm-10-upgrade.patch to fix compilation
  with llvm10

OBS-URL: https://build.opensuse.org/request/show/800119
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=250
2020-05-04 16:35:27 +00:00
1b10ff8fe7 Accepting request 800022 from home:Andreas_Schwab:Factory
- Update rustfmt_version

OBS-URL: https://build.opensuse.org/request/show/800022
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=249
2020-05-04 10:57:27 +00:00
0174a00ee9 Accepting request 800013 from home:MSirringhaus:branches:devel:languages:rust
- Update to version 1.43.0

OBS-URL: https://build.opensuse.org/request/show/800013
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=248
2020-05-04 10:17:14 +00:00
38d7bdb3c5 Accepting request 791945 from home:Andreas_Schwab:Factory
- Avoid duplication of environment settings

OBS-URL: https://build.opensuse.org/request/show/791945
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=247
2020-05-04 09:27:10 +00:00
Federico Mena Quintero
bb50254aff Accepting request 790670 from home:alarrosa:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/790670
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=245
2020-04-01 17:53:48 +00:00
Federico Mena Quintero
4ea0df818b Accepting request 787613 from home:federico-mena:branches:devel:languages:rust
- Update to version 1.41.1:
  - Always check types of static items
  - Always check lifetime bounds of `Copy` impls
  - Fix miscompilation in callers of `Layout::repeat`
- Update to version 1.41.0:
  + Language
    - You can now pass type parameters to foreign items when implementing
      traits. E.g. You can now write `impl<T> From<Foo> for Vec<T> {}`.
    - You can now arbitrarily nest receiver types in the `self` position. E.g. you can
      now write `fn foo(self: Box<Box<Self>>) {}`. Previously only `Self`, `&Self`,
      `&mut Self`, `Arc<Self>`, `Rc<Self>`, and `Box<Self>` were allowed.
    - You can now use any valid identifier in a `format_args` macro.
      Previously identifiers starting with an underscore were not allowed.
    - Visibility modifiers (e.g. `pub`) are now syntactically allowed on trait items and
      enum variants. These are still rejected semantically, but
      can be seen and parsed by procedural macros and conditional compilation.
    
  + Compiler
    - Rustc will now warn if you have unused loop `'label`s.
    - Removed support for the `i686-unknown-dragonfly` target.
    - Added tier 3 support\* for the `riscv64gc-unknown-linux-gnu` target.
    - You can now pass an arguments file passing the `@path` syntax
      to rustc. Note that the format differs somewhat from what is
      found in other tooling; please see the documentation for
      more information.
    - You can now provide `--extern` flag without a path, indicating that it is
      available from the search path or specified with an `-L` flag.
    
    Refer to Rust's [platform support page][forge-platform-support] for more
    information on Rust's tiered platform support.
    
  + Libraries
    - The `core::panic` module is now stable. It was already stable
      through `std`.
    - `NonZero*` numerics now implement `From<NonZero*>` if it's a smaller integer
      width. E.g. `NonZeroU16` now implements `From<NonZeroU8>`.
    - `MaybeUninit<T>` now implements `fmt::Debug`.
    
  + Stabilized APIs
    - `Result::map_or`
    - `Result::map_or_else`
    - `std::rc::Weak::weak_count`
    - `std::rc::Weak::strong_count`
    - `std::sync::Weak::weak_count`
    - `std::sync::Weak::strong_count`
    
  + Cargo
    - Cargo will now document all the private items for binary crates
      by default.
    - `cargo-install` will now reinstall the package if it detects that it is out
      of date.
    - Cargo.lock now uses a more git friendly format that should help to reduce
      merge conflicts.
    - You can now override specific dependencies's build settings. E.g.
      `[profile.dev.package.image] opt-level = 2` sets the `image` crate's
      optimisation level to `2` for debug builds. You can also use
      `[profile.<profile>.build-override]` to override build scripts and
      their dependencies.
  + Misc
    - You can now specify `edition` in documentation code blocks to compile the block
      for that edition. E.g. `edition2018` tells rustdoc that the code sample
      should be compiled the 2018 edition of Rust.
    - You can now provide custom themes to rustdoc with `--theme`, and check the
      current theme with `--check-theme`.
    - You can use `#[cfg(doc)]` to compile an item when building documentation.
    
  + Compatibility Notes
    - As previously announced 1.41.0 will be the last tier 1 release for 32-bit
      Apple targets. This means that the source code is still
      available to build, but the targets are no longer being tested and release
      binaries for those platforms will no longer be distributed by the Rust project.
      Please refer to the linked blog post for more information.

OBS-URL: https://build.opensuse.org/request/show/787613
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=243
2020-03-26 18:40:33 +00:00
6c0a9c7183 Accepting request 765285 from home:dimstar:Factory
- Adjust constraints: Request 20GB HDD for all archs. Simplify the
  file by removing the overrides for various disk sizes. All archs
  are curretnly at roughly 17GB storage in use.

OBS-URL: https://build.opensuse.org/request/show/765285
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=241
2020-01-17 14:09:40 +00:00
Luke Jones
086b65c695 Accepting request 762033 from home:federico-mena:branches:devel:languages:rust
- Bump version of libssh2 for SLE15; we now need a version with
  libssh2_userauth_publickey_frommemory(), which appeared in libssh2
  1.6.0.
- Use the bundled libssh2 prior to SLE15.  SLE12 has 1.4.3, which is
  too old for the ssh crate now.

OBS-URL: https://build.opensuse.org/request/show/762033
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=239
2020-01-12 19:10:19 +00:00
Luke Jones
d5285e9bf9 Accepting request 760082 from home:luke_nukem:branches:devel:languages:rust
- Update to version 1.40.0
Waiting on 1.39 to be merged in Factory.

OBS-URL: https://build.opensuse.org/request/show/760082
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=237
2020-01-01 19:06:39 +00:00
92c01454df - Rename README to README.suse-maint and add it as a source
to stop factory-auto from declining submissions automatically

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=235
2019-11-29 14:44:48 +00:00
a174f5b25f Accepting request 750795 from home:aplanas:branches:devel:languages:rust
- Re-format the spec file
- Add a README to explain the update process
- Add _service file for download the assets and re-base the patches

OBS-URL: https://build.opensuse.org/request/show/750795
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=234
2019-11-29 14:25:00 +00:00
Luke Jones
f55288c081 Accepting request 746768 from home:aplanas:branches:devel:languages:rust
- Add hopefully-fix-rustdoc-build.patch to fix rustdoc compilation
- Update to version 1.39.0
  + Language
    - You can now create async functions and blocks with async fn,
      async move {}, and async {} respectively, and you can now call
      .await on async expressions.
    - You can now use certain attributes on function, closure, and
      function pointer parameters.
    - You can now take shared references to bind-by-move patterns in
      the if guards of match arms.
  + Compiler
    - Added tier 3 support for the i686-unknown-uefi target.
    - Added tier 3 support for the sparc64-unknown-openbsd target.
    - rustc will now trim code snippets in diagnostics to fit in your
      terminal.
    - You can now pass --show-output argument to test binaries to
      print the output of successful tests.
  + For more details:
    https://github.com/rust-lang/rust/blob/stable/RELEASES.md#version-1390-2019-11-07
- Drop patches already merged in upstream:
  + rust-61206-assume-tarball-llvm-is-fresh.patch
  + add-option-to-allow-warnings.patch

OBS-URL: https://build.opensuse.org/request/show/746768
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=233
2019-11-09 09:53:14 +00:00
Luke Jones
3a03c62ad6 Accepting request 742099 from home:rhafer:branches:devel:languages:rust
- Switch to bundled version of libgit2 for now. libgit2-sys seems
  to expect using the bundled variant, which just seems to point
  to a snapshot of the master branch and doesn't match any released
  libgit2 (bsc#1154817).
  See: https://github.com/rust-lang/rust/issues/63476 and
  https://github.com/rust-lang/git2-rs/issues/458 for details.

OBS-URL: https://build.opensuse.org/request/show/742099
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=231
2019-10-23 19:17:39 +00:00
Luke Jones
7ccfc9e547 Accepting request 734169 from home:luke_nukem:branches:devel:languages:rust
- Add patch add-option-to-allow-warnings.patch to add a config option
  which allows warnings and so enables v1.38 to bootstrap itself.
- Update to version 1.38.0
  + Language
    - The `#[global_allocator]` attribute can now be used in submodules.
    - The `#[deprecated]` attribute can now be used on macros.
  + Compiler
    - Added pipelined compilation support to `rustc`. This will
      improve compilation times in some cases.
  + Libraries
    - `ascii::EscapeDefault` now implements `Clone` and `Display`.
    - Derive macros for prelude traits (e.g. `Clone`, `Debug`, `Hash`) are now
	  available at the same path as the trait. (e.g. The `Clone` derive macro
	  is available at `std::clone::Clone`). This also makes all built-in macros
	  available in `std`/`core` root. e.g. `std::include_bytes!`.
    - `str::Chars` now implements `Debug`.
    - `slice::{concat, connect, join}` now accepts `&[T]` in addition to `&T`.
    - `*const T` and `*mut T` now implement `marker::Unpin`.
    - `Arc<[T]>` and `Rc<[T]>` now implement `FromIterator<T>`.
    - Added euclidean remainder and division operations (`div_euclid`,
	  `rem_euclid`) to all numeric primitives. Additionally `checked`,
	  `overflowing`, and `wrapping` versions are available for all
	  integer primitives.
    - `thread::AccessError` now implements `Clone`, `Copy`, `Eq`, `Error`, and
      `PartialEq`.
    - `iter::{StepBy, Peekable, Take}` now implement `DoubleEndedIterator`.
  + Stabilized APIs
    - `<*const T>::cast`
    - `<*mut T>::cast`
    - `Duration::as_secs_f32`
    - `Duration::as_secs_f64`
    - `Duration::div_f32`
    - `Duration::div_f64`
    - `Duration::from_secs_f32`
    - `Duration::from_secs_f64`
    - `Duration::mul_f32`
    - `Duration::mul_f64`
    - `any::type_name`
  + Cargo
    - Added pipelined compilation support to `cargo`.
    - You can now pass the `--features` option multiple times to enable
      multiple features.
  + Misc
    - `rustc` will now warn about some incorrect uses of
      `mem::{uninitialized, zeroed}` that are known to cause undefined behaviour.

OBS-URL: https://build.opensuse.org/request/show/734169
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=229
2019-10-01 03:31:42 +00:00
Luke Jones
5d9a019862 Accepting request 729946 from home:federico-mena:branches:devel:languages:rust
Update for SLE12-SP5

OBS-URL: https://build.opensuse.org/request/show/729946
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=227
2019-09-11 20:29:10 +00:00
Luke Jones
00e7250e8a Accepting request 726623 from home:luke_nukem:branches:devel:languages:rust
Update to 1.37

OBS-URL: https://build.opensuse.org/request/show/726623
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=225
2019-08-28 05:17:19 +00:00
Luke Jones
9850860e3c Accepting request 714305 from home:luke_nukem:branches:devel:languages:rust
- Remove fix-llvm8-build.patch, fixed upstream
- Update to version 1.36.0

OBS-URL: https://build.opensuse.org/request/show/714305
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=223
2019-07-09 21:24:02 +00:00
1d98fa19e2 Accepting request 713004 from home:Andreas_Schwab:Factory
- Add support for ppc

OBS-URL: https://build.opensuse.org/request/show/713004
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=221
2019-07-03 14:01:10 +00:00
Luke Jones
f7540d974d Accepting request 706412 from home:luke_nukem:branches:devel:languages:rust
Update to 1.35.0

OBS-URL: https://build.opensuse.org/request/show/706412
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=219
2019-05-30 03:09:29 +00:00
Luke Jones
9643ad5942 Accepting request 705460 from home:aaronpuchert
Fix build with LLVM 8.

OBS-URL: https://build.opensuse.org/request/show/705460
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=218
2019-05-27 05:15:47 +00:00
Federico Mena Quintero
7721178020 Accepting request 704523 from home:federico-mena:branches:devel:languages:rust
- Fix regexp for .rlib files in rust-rpmlintrc.

- Version 1.0.0-beta3.

OBS-URL: https://build.opensuse.org/request/show/704523
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=217
2019-05-22 15:18:03 +00:00
Luke Jones
f1957779fd Accepting request 697630 from home:marxin:branches:devel:languages:rust
- Disable LTO (boo#1133283).

OBS-URL: https://build.opensuse.org/request/show/697630
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=215
2019-05-01 08:01:31 +00:00
Luke Jones
8439266da0 Accepting request 694642 from home:luke_nukem:branches:devel:languages:rust
- Update to version 1.34.0
  + Language
    - You can now use `#[deprecated = "reason"]` as a shorthand for
      `#[deprecated(note = "reason")]`. This was previously allowed
      by mistake but had no effect.
    - You can now accept token streams in `#[attr()]`,`#[attr[]]`, and
      `#[attr{}]` procedural macros.
    - You can now write `extern crate self as foo;` to import your
      crate's root into the extern prelude.
  + Compiler
    - You can now target `riscv64imac-unknown-none-elf` and
      `riscv64gc-unknown-none-elf`.
    - You can now enable linker plugin LTO optimisations with
      `-C linker-plugin-lto`. This allows rustc to compile your Rust
      code into LLVM bitcode allowing LLVM to perform LTO optimisations
      across C/C++ FFI boundaries.
    - You can now target `powerpc64-unknown-freebsd`.
  + Libraries
    - The trait bounds have been removed on some of `HashMap<K, V, S>`'s
      and `HashSet<T, S>`'s basic methods. Most notably you no longer
      require the `Hash` trait to create an iterator.
    - The `Ord` trait bounds have been removed on some of
      `BinaryHeap<T>`'s basic methods. Most notably you no longer require
      the `Ord` trait to create an iterator.
    - The methods `overflowing_neg` and `wrapping_neg` are now `const`
      functions for all numeric types.
    - Indexing a `str` is now generic over all types that
      implement `SliceIndex<str>`.
    - `str::trim`, `str::trim_matches`, `str::trim_{start, end}`, and
      `str::trim_{start, end}_matches` are now `#[must_use]` and will
      produce a warning if their returning type is unused.
    - The methods `checked_pow`, `saturating_pow`, `wrapping_pow`, and
      `overflowing_pow` are now available for all numeric types. These are
      equivalvent to methods such as `wrapping_add` for the `pow` operation.
  + Stabilized APIs
    - std & core
      + Any::type_id
      + Error::type_id
      + atomic::AtomicI16
      + atomic::AtomicI32
      + atomic::AtomicI64
      + atomic::AtomicI8
      + atomic::AtomicU16
      + atomic::AtomicU32
      + atomic::AtomicU64
      + atomic::AtomicU8
      + convert::Infallible
      + convert::TryFrom
      + convert::TryInto
      + iter::from_fn
      + iter::successors
      + num::NonZeroI128
      + num::NonZeroI16
      + num::NonZeroI32
      + num::NonZeroI64
      + num::NonZeroI8
      + num::NonZeroIsize
      + slice::sort_by_cached_key
      + str::escape_debug
      + str::escape_default
      + str::escape_unicode
      + str::split_ascii_whitespace
    - std
      + Instant::checked_add
      + Instant::checked_sub
      + SystemTime::checked_add
      + SystemTime::checked_sub
  + Cargo
    - You can now use alternative registries to crates.io.
  + Misc
    - You can now use the `?` operator in your documentation
      tests without manually adding `fn main() -> Result<(), _> {}`.
  + Compatibility Notes
    - `Command::before_exec` is now deprecated in favor of the
      unsafe method `Command::pre_exec`.
    - Use of `ATOMIC_{BOOL, ISIZE, USIZE}_INIT` is now deprecated.
      As you can now use `const` functions in `static` variables.
- Remove depreciated-trim_left_matches.patch.
- Rustfmt version bumped to 1.0.3
  + Change description not provided.
- rls version now in sync with rustc.
- Misc fixes to rust.spec

OBS-URL: https://build.opensuse.org/request/show/694642
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=213
2019-04-16 10:32:05 +00:00
Luke Jones
5853a824ca Accepting request 688403 from home:federico-mena:branches:devel:languages:rust
- Use the system's LLVM in SLE15-SP1.  That distribution has LLVM7,
  and we need to use it there, instead of any other version.
- Prevent auto-provides from being created for things under
  rustlibdir, so the RPM does not inadvertently have a Provides for a
  bundled LLVM and the Rust library files.
- Sync changes files between SLE and openSUSE, for ease of maintenance.

OBS-URL: https://build.opensuse.org/request/show/688403
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=209
2019-03-25 20:52:49 +00:00
Luke Jones
2bda63b681 Accepting request 687478 from home:luke_nukem:branches:devel:languages:rust
- Explicitly build only a subset of tools

OBS-URL: https://build.opensuse.org/request/show/687478
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=206
2019-03-22 00:05:38 +00:00