Commit Graph

216 Commits

Author SHA256 Message Date
ee99c69dc3 Accepting request 606817 from home:luc14n0:branches:devel:languages:rust
Update to version 1.26.0

OBS-URL: https://build.opensuse.org/request/show/606817
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=157
2018-05-13 15:55:39 +00:00
Luke Jones
012930143c Accepting request 605639 from home:mmanu84:rust
- Patch disabled
  * update-config-guess.patch
- Update to 1.25.0
- Language changes:
  + Stabilised `#[repr(align(x))]`.[47006] [RFC 1358]
  + You can now use nested groups of imports.[47948]
    e.g. `use std::{fs::File, io::Read, path::{Path, PathBuf}};`
  + You can now have `|` at the start of a match arm.[47947] e.g.
- Compiler changes:
  + Upgraded to LLVM 6.[47828]
  + Added `-C lto=val` option.[47521]
  + Added `i586-unknown-linux-musl` target[47282]
- Library changes:
  + Impl Send for `process::Command` on Unix.[47760]
  + Impl PartialEq and Eq for `ParseCharError`.[47790]
  + `UnsafeCell::into_inner` is now safe.[47204]
  + Implement libstd for CloudABI.[47268]
  + `Float::{from_bits, to_bits}` is now available in libcore.[46931]
  + Implement `AsRef<Path>` for Component[46985]
  + Implemented `Write` for `Cursor<&mut Vec<u8>>`[46830]
  + Moved `Duration` to libcore.[46666]
- Stabilized APIs
  + `Location::column`
  + `ptr::NonNull`
- Misc
  + Rust by example is now shipped with new releases[46196]
- Compatibility Notes:
  + Deprecated `net::lookup_host`.[47510]
  + `rustdoc` has switched to pulldown as the default markdown renderer.[47398]
  + The borrow checker was sometimes incorrectly permitting overlapping borrows
    around indexing operations (see [#47349][47349]). This has been fixed (which also
    enabled some correct code that used to cause errors (e.g. [#33903][33903] and [#46095][46095]).
  + Removed deprecated unstable attribute `#[simd]`.[47251]

OBS-URL: https://build.opensuse.org/request/show/605639
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=155
2018-05-11 02:31:09 +00:00
368726c495 Accepting request 590331 from home:mmanu84:rust
- Update to 1.24.1
  + Do not abort when unwinding through FFI
  + Make the error index generator work again
- Update Cargo to v0.25.0

OBS-URL: https://build.opensuse.org/request/show/590331
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=151
2018-03-23 02:17:10 +00:00
499b31ac62 Accepting request 579895 from home:mmanu84:rust
- Update to 1.24.0

OBS-URL: https://build.opensuse.org/request/show/579895
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=148
2018-02-27 01:58:47 +00:00
d4e4d28852 Accepting request 577955 from home:coolo:branches:openSUSE:Factory
- add update-config-guess.patch to update config.* from GNU to
  support riscv64 without rpm patching it - as the patch also
  updates the checksums while rpm does not

OBS-URL: https://build.opensuse.org/request/show/577955
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=146
2018-02-19 16:22:31 +00:00
Luke Jones
9f20441b6a Accepting request 568505 from openSUSE:Factory:Staging:O
- Format with spec-cleaner
- Use python3 to run the install/build script as python2 is being
  phased out
- State exclusivearch for all of ix86 and then specify we build as
  i686 which is bit more obvious

OBS-URL: https://build.opensuse.org/request/show/568505
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=144
2018-01-24 06:37:34 +00:00
Manu Maier
9333a7c5fd Accepting request 568200 from home:luke_nukem:branches:devel:languages:rust
- Add "Requires: %{name} to derived packages to fix derived
  packages not being updated with rust (boo#1075883)
- Update to 1.23.0
- Language changes:
  + Arbitrary `auto` traits are now permitted in trait objects.[45772]
  + rustc now uses subtyping on the left hand side of binary operations.[45435]
    Which should fix some confusing errors in some operations.
- Compiler changes:
  + Enabled `TrapUnreachable` in LLVM which should mitigate the impact of
    undefined behaviour.[45920]
  + rustc now suggests renaming import if names clash.[45660]
  + Display errors/warnings correctly when there are zero-width or
    wide characters.[45711]
  + rustc now avoids unnecessary copies of arguments that are
    simple bindings[45380] This should improve memory usage on average by 5-10%.
  + Updated musl used to build musl rustc to 1.1.17[45393]
- Library changes:
  + Allow a trailing comma in `assert_eq/ne` macro[45887]
  + Implement Hash for raw pointers to unsized types[45483]
  + impl `From<*mut T>` for `AtomicPtr<T>`[45610]
  + impl `From<usize/isize>` for `AtomicUsize/AtomicIsize`.[45610]
  + Removed the `T: Sync` requirement for `RwLock<T>: Send`[45267]
  + Removed `T: Sized` requirement for `{<*const T>, <*mut T>}::as_ref`
    an `<*mut T>::as_mut`[44932]
  + Optimized `Thread::{park, unpark}` implementation[45524]
  + Improved `SliceExt::binary_search` performance.[45333]
  + impl `FromIterator<()>` for `()`[45379]
  + Copied `AsciiExt` trait methods to primitive types.[44042] Use of `AsciiExt`
    is now deprecated.
- Misc changes:
  + Releases now ship with the Cargo book documentation.[45692]
  + rustdoc now prints rendering warnings on every run.[45324]
  + Release tarballs now come with rustfmt[45903]
- Compatibility Notes:
  + Changes have been made to type equality to make it more correct,
    in rare cases this could break some code.[45853] [Tracking issue for
    further information[45852]
  + `char::escape_debug` now uses Unicode 10 over 9.[45571]
  + Upgraded Android SDK to 27, and NDK to r15c.[45580] This drops support for
    Android 9, the minimum supported version is Android 14.
  + Bumped the minimum LLVM to 3.9[45326]
- Update to v1.22.1
- Update Cargo to fix an issue with macOS 10.13 "High Sierra"
- Update to v1.22.0
- Language changes:
  + `non_snake_case` lint now allows extern no-mangle functions
  + Now accepts underscores in unicode escapes
  + `T op= &T` now works for numeric types. eg. `let mut x = 2; x += &8;`
  + types that impl `Drop` are now allowed in `const` and `static` types
- Compiler changes:
  + rustc now defaults to having 16 codegen units at debug on supported platforms
  + rustc will no longer inline in codegen units when compiling for debug
    This should decrease compile times for debug builds.
  + strict memory alignment now enabled on ARMv6
  + Remove support for the PNaCl target `le32-unknown-nacl`
- Librarie changes
  + Allow atomic operations up to 32 bits
    on `armv5te_unknown_linux_gnueabi`
  + `Box<Error>` now impls `From<Cow<str>>`
  + `std::mem::Discriminant` is now guaranteed to be `Send + Sync`
  + `fs::copy` now returns the length of the main stream on NTFS.
  + Properly detect overflow in `Instant += Duration`.
  + impl `Hasher` for `{&mut Hasher, Box<Hasher>}`
  + impl `fmt::Debug` for `SplitWhitespace`.][44303]
  + `Option<T>` now impls `Try`. This allows for using `?` with `Option` types.
- Misc
  + `libbacktrace` is now available on Apple platforms.
  + Stabilised the `compile_fail` attribute for code fences in doc-comments.
    This now lets you specify that a given code example will fail to compile.
- Compatibility Notes
  + The minimum Android version that rustc can build for has been bumped
    to `4.0` from `2.3`
  + Allowing `T op= &T` for numeric types has broken some type inference cases
  
- Remove rust-1.21.0-44203-exclude-compiler-rt-test.patch
- Remove rust-1.21.0-44066-ppc64-struct-abi.patch
- Remove rust-1.21.0-44440-s390x-global-align.patch
- Large cleanup of both the spec and config.toml to correct many
  build issues for the new version
- Add rust-1.21.0-44203-exclude-compiler-rt-test.patch
- Add rust-1.21.0-44066-ppc64-struct-abi.patch
- Add rust-1.21.0-44440-s390x-global-align.patch
- Remove add-soname.patch
- Update to 1.21.0
- Language changes:
  + You can now use static references for literals.
  + Relaxed path syntax. Optional `::` before `<` is now allowed in all contexts.
- Compiler changes:
  + Upgraded jemalloc to 4.5.0[43911]
  + Enabled unwinding panics on Redox[43917]
  + Now runs LLVM in parallel during translation phase.[43506]
- Librarie changes:
  + Generate builtin impls for `Clone` for all arrays and tuples that
  are `T: Clone`[43690]
  +`Stdin`, `Stdout`, and `Stderr` now implement `AsRawFd`.[43459]
  + `Rc` and `Arc` now implement `From<&[T]> where T: Clone`, `From<str>`,
  `From<String>`, `From<Box<T>> where T: ?Sized`, and `From<Vec<T>>`.[42565]
- Stabilized APIs
  +`std::mem::discriminant`
- Update add-soname.patch to apply cleanly
- Force enable rust bootstrap so that missing architectures build
- set minimum cmake version
- Update to version 1.20.0
- Remove x86 from build targets
- Language
  + [Associated constants are now stabilised.][42809]
  + [A lot of macro bugs are now fixed.][42913]
- Compiler
  + [Struct fields are now properly coerced to the expected field type.][42807]
  + [Enabled wasm LLVM backend][42571] WASM can now be built with the
  `wasm32-experimental-emscripten` target.
  + [Changed some of the error messages to be more helpful.][42033]
  + [Add support for RELRO(RELocation Read-Only) for platforms that support
  it.][43170]
  + [rustc now reports the total number of errors on compilation failure][43015]
  previously this was only the number of errors in the pass that failed.
  + [Expansion in rustc has been sped up 29x.][42533]
  + [added `msp430-none-elf` target.][43099]
  + [rustc will now suggest one-argument enum variant to fix type mismatch when
  applicable][43178]
  + [Fixes backtraces on Redox][43228]
  + [rustc now identifies different versions of same crate when absolute paths of
  different types match in an error message.][42826]
- Libraries
  + [Relaxed Debug constraints on `{HashMap,BTreeMap}::{Keys,Values}`.][42854]
  + [Impl `PartialEq`, `Eq`, `PartialOrd`, `Ord`, `Debug`, `Hash` for unsized
  tuples.][43011]
  + [Impl `fmt::{Display, Debug}` for `Ref`, `RefMut`, `MutexGuard`,
  `RwLockReadGuard`, `RwLockWriteGuard`][42822]
  + [Impl `Clone` for `DefaultHasher`.][42799]
  + [Impl `Sync` for `SyncSender`.][42397]
  + [Impl `FromStr` for `char`][42271]
  + [Fixed how `{f32, f64}::{is_sign_negative, is_sign_positive}` handles
  NaN.][42431]
  + [allow messages in the `unimplemented!()` macro.][42155]
  ie. `unimplemented!("Waiting for 1.21 to be stable")`
  + [`pub(restricted)` is now supported in the `thread_local!` macro.][43185]
  + [Upgrade to Unicode 10.0.0][42999]
  + [Reimplemented `{f32, f64}::{min, max}` in Rust instead of using CMath.][42430]
  + [Skip the main thread's manual stack guard on Linux][43072]
  + [Iterator::nth for `ops::{Range, RangeFrom}` is now done in O(1) time][43077]
  + [`#[repr(align(N))]` attribute max number is now 2^31   + 1.][43097] This was
  previously 2^15.
  + [`{OsStr, Path}::Display` now avoids allocations where possible][42613]
- Compatibility Notes
  + [Functions with `'static` in their return types will now not be as usable as
  if they were using lifetime parameters instead.][42417]
  + [The reimplementation of `{f32, f64}::is_sign_{negative, positive}` now
  takes the sign of NaN into account where previously didn't.][42430]
- adjust build process and add package for Rust source
- clean-up of useless provides
- add rpmlintrc
- Update to version 1.19
- Language updates:
  + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506]
    For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`.
  + [Macro recursion limit increased to 1024 from 64.][41676]
  + [Added lint for detecting unused macros.][41907]
  + [`loop` can now return a value with `break`.][42016] [RFC 1624]
    For example: `let x = loop { break 7; };`
  + [C compatible `union`s are now available.][42068] [RFC 1444] They can only
    contain `Copy` types and cannot have a `Drop` implementation.
    Example: `union Foo { bar: u8, baz: usize }`
  + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558]
    Example: `let foo: fn(u8) -> u8 = |v: u8| { v };`
- Compiler updates:
  + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370]
  + [Change `arm-linux-androideabi` to correspond to the `armeabi`
    official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI
    you should use `--target armv7-linux-androideabi`.
  + [Fixed ICE when removing a source file between compilation sessions.][41873]
  + [Minor optimisation of string operations.][42037]
  + [Compiler error message is now `aborting due to previous error(s)` instead of
    `aborting due to N previous errors`][42150] This was previously inaccurate and
    would only count certain kinds of errors.
  + [The compiler now supports Visual Studio 2017][42225]
  + [The compiler is now built against LLVM 4.0.1 by default][42948]
  + [Added a lot][42264] of [new error codes][42302]
  + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows
    libraries with C Run-time Libraries(CRT) to be statically linked.
  + [Fixed various ARM codegen bugs][42740]
- Librarie updates:
  + [`String` now implements `FromIterator<Cow<'a, str>>` and
    `Extend<Cow<'a, str>>`][41449]
  + [`Vec` now implements `From<&mut [T]>`][41530]
  + [`Box<[u8]>` now implements `From<Box<str>>`][41258]
  + [`SplitWhitespace` now implements `Clone`][41659]
  + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now
    1.5x faster][41764]
  + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!`
    macros, but for printing to stderr.
- Stabilized APIs
  + [`OsString::shrink_to_fit`]
  + [`cmp::Reverse`]
  + [`Command::envs`]
  + [`thread::ThreadId`]
- Misc
  + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the
    Windows Debugger.
  + [Rust will now release XZ compressed packages][rust-installer/57]
  + [rustup will now prefer to download rust packages with
    XZ compression][rustup/1100] over GZip packages.
  + [Added the ability to escape `#` in rust documentation][41785] By adding
    additional `#`'s ie. `##` is now `#`
- Temporarily disable generation of compiler docs due to build issue
- Change i586 build to produce i686 target instead of i586 so that
  x86 Firefox can be built with Rust.
- Update to 1.18.0
-Language updates:
    + [Stabilize pub(restricted)][40556] `pub` can now accept amodule path to
      make the item visible to just that module tree. Also accepts the keyword
      `crate` to make something public to the whole crate but not users of the
      library. Example: `pub(crate) mod utils;`. [RFC 1422].
    + [Stabilize `#![windows_subsystem]` attribute][40870] conservative exposure of the
      `/SUBSYSTEM` linker flag on Windows platforms. [RFC 1665].
    + [Refactor of trait object type parsing][40043] Now `ty` in macros can accept
      types like `Write + Send`, trailing `+` are now supported in trait objects,
      and better error reporting for trait objects starting with `?Sized`.
    + [0e+10 is now a valid floating point literal][40589]
    + [Now warns if you bind a lifetime parameter to 'static][40734]
    + [Tuples, Enum variant fields, and structs with no `repr` attribute or with
      `#[repr(Rust)]` are reordered to minimize padding and produce a smaller
      representation in some cases.][40377]
-Compiler updates
    + [rustc can now emit mir with `--emit mir`][39891]
    + [Improved LLVM IR for trivial functions][40367]
    + [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723]
    + [rustc compilation is now 15%-20% faster][41469] Thanks to optimisation
      opportunities found through profiling
    + [Improved backtrace formatting when panicking][38165]
- Library updates:
    + [Specialized `Vec::from_iter` being passed `vec::IntoIter`][40731] if the
      iterator hasn't been advanced the original `Vec` is reassembled with no actual
      iteration or reallocation.
    + [Simplified HashMap Bucket interface][40561] provides performance
      improvements for iterating and cloning.
    + [Specialize Vec::from_elem to use calloc][40409]
    + [Fixed Race condition in fs::create_dir_all][39799]
    + [No longer caching stdio on Windows][40516]
    + [Optimized insertion sort in slice][40807] insertion sort in some cases
      2.50%~ faster and in one case now 12.50% faster.
    + [Optimized `AtomicBool::fetch_nand`][41143]
- Stabilized APIs:
    + [`Child::try_wait`]
    + [`HashMap::retain`]
    + [`HashSet::retain`]
    + [`PeekMut::pop`]
    + [`TcpStream::peek`]
    + [`UdpSocket::peek`]
- Misc:
    + [rustdoc can now use pulldown-cmark with the `--enable-commonmark` flag][40338]
    + [Added rust-winbg script for better debugging on Windows][39983]
    + [Rust now uses the official cross compiler for NetBSD][40612]
    + [rustdoc now accepts `#` at the start of files][40828]
    + [Fixed jemalloc support for musl][41168]
- Compatibility Notes:
    + [Changes to how the `0` flag works in format!][40241] Padding zeroes are now
      always placed after the sign if it exists and before the digits. With the `#`
      flag the zeroes are placed after the prefix and before the digits.
    + [Due to the struct field optimisation][40377], using `transmute` on structs
      that have no `repr` attribute or `#[repr(Rust)]` will no longer work. This has
      always been undefined behavior, but is now more likely to break in practice.
    + [The refactor of trait object type parsing][40043] fixed a bug where `+` was
      receiving the wrong priority parsing things like `&for<'a> Tr<'a> + Send` as
      `&(for<'a> Tr<'a> + Send)` instead of `(&for<'a> Tr<'a>) + Send`
    + [Overlapping inherent `impl`s are now a hard error][40728]
    + [`PartialOrd` and `Ord` must agree on the ordering.][41270]
    + [`rustc main.rs -o out --emit=asm,llvm-ir`][41085] Now will output
      `out.asm` and `out.ll` instead of only one of the filetypes.
    + [ calling a function that returns `Self` will no longer work][41805] when
      the size of `Self` cannot be statically determined.
    + [rustc now builds with a "pthreads" flavour of MinGW for Windows GNU][40805]
      this has caused a few regressions namely:
    + Changed the link order of local static/dynamic libraries (respecting the
      order on given rather than having the compiler reorder).
    + Changed how MinGW is linked, native code linked to dynamic libraries
      may require manually linking to the gcc support library (for the native
      code itself)
- Adjustment of rust version dependency to prevent inability to
  build in the adi rings.
- Add the cargo binaries for each arch, used for building rust only
  these are not shipped, and don't factor in to the final product.
- Revert restriction of x86 arch to i586 for the interim.
- Update to 1.17.0
- Language updates
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Updates to libraries
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility Notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Restrict x86 builds to i686 only.
- Revert restriction on previous rust versions used for building
- Change x86 build target from i586 to i686
- Switch .spec to use rust-build compilation system
- Update config.toml to reflect rust-build changes
- Strict versioning for compilation so rustc always use previous
  stable compiler
- Update to 1.16.0
- Language updates
    * Lifetimes in statics and consts default to `'static`. [RFC 1623]
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Library updates
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc fixes
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Remove duplicate license files from _docdir: rpm 4.13 no longer
  implicitly packages those files and we catch them using %license,
- remove bootstrap for s390x as binaries are available in
  openSUSE:Factory:zSystems
- Fixes to build for archs armv7, aarch64, ppc64, s390x
- Update to 1.15.1
- Fix IntoIter::as_mut_slice's signature
- Correct rust-triples use in spec.
- Update to 1.15.0
- Language updates
	* Basic procedural macros allowing custom `#[derive]`, aka "macros 1.1", are
	stable. This allows popular code-generating crates like Serde and Diesel to
	work ergonomically. [RFC 1681].
	* [Tuple structs may be empty. Unary and empty tuple structs may be instantiated
	with curly braces][36868]. Part of [RFC 1506].
	* [A number of minor changes to name resolution have been activated][37127].
	They add up to more consistent semantics, allowing for future evolution of
	Rust macros. Specified in [RFC 1560], see its section on ["changes"] for
	details of what is different. The breaking changes here have been transitioned
	through the [`legacy_imports`] lint since 1.14, with no known regressions.
	* [In `macro_rules`, `path` fragments can now be parsed as type parameter
	bounds][38279]
	* [`?Sized` can be used in `where` clauses][37791]
	* [There is now a limit on the size of monomorphized types and it can be
	modified with the `#![type_size_limit]` crate attribute, similarly to
	the `#![recursion_limit]` attribute][37789]
- Compiler changes
	* [On Windows, the compiler will apply dllimport attributes when linking to
	extern functions][37973]. Additional attributes and flags can control which
	library kind is linked and its name. [RFC 1717].
	* [Rust-ABI symbols are no longer exported from cdylibs][38117]
	* [The `--test` flag works with procedural macro crates][38107]
	* [Fix `extern "aapcs" fn` ABI][37814]
	* [The `-C no-stack-check` flag is deprecated][37636]. It does nothing.
	* [The `format!` expander recognizes incorrect `printf` and shell-style
	formatting directives and suggests the correct format][37613].
	* [Only report one error for all unused imports in an import list][37456]
- Compiler performance
	* [Avoid unnecessary `mk_ty` calls in `Ty::super_fold_with`][37705]
	* [Avoid more unnecessary `mk_ty` calls in `Ty::super_fold_with`][37979]
	* [Don't clone in `UnificationTable::probe`][37848]
	* [Remove `scope_auxiliary` to cut RSS by 10%][37764]
	* [Use small vectors in type walker][37760]
	* [Macro expansion performance was improved][37701]
	* [Change `HirVec<P<T>>` to `HirVec<T>` in `hir::Expr`][37642]
	* [Replace FNV with a faster hash function][37229]
- For full change list, please see
	https://raw.githubusercontent.com/rust-lang/rust/master/RELEASES.md
- Adjust build so that aarch and ARM architectures use bootstrap for
  initial build
- Fix provides/conflicts/obsoletes
- Remove patch 0001-Fix-armv7-autodetection.patch
    + appears to have been fixed upstream.
- Building armv7hl arch with bootstrap binary since previously
  packaged versions haven't successfully built in the past
- Update to version 1.14.0
    + Announcement: https://blog.rust-lang.org/2016/12/22/Rust-1.14.html
    + Details: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1140-2016-12-22
- Release highlights:
    + support for RFC 1492. This small addition lets you use `..`
    in more places, for example when destructuring a struct or tuple
    + println!(), with no arguments, prints newline
    + Wrapping impls standard binary and unary operators on
    references, as well as the Sum and Product iterators, making
    references to these types easier to use
    + Implement From<Cow<str>> for String and From<Cow<[T]>> for
    Vec<T>. These implementations make sense, but were not yet added.
    + Expand .zip() specialization to .map() and .cloned() for
    improved performance.
    + Implement RefUnwindSafe for atomic types, as these types are
    “unwind safe,” though that wasn’t obvious at first.
    + Specialize Vec::extend to Vec::extend_from_slice for
    performance gains.
    + Don’t reuse HashMap random seeds. This helps to mitigate one
    type of DDoS attack.
    + The internal memory layout of HashMap is more cache-friendly,
    for significant improvements in some operations
    + Impl Add<{str, Cow<str>}> for Cow<str>. We already support Add
    for other string types, so not having it on Cow is inconsistent.
- Update to 1.13.0
- Add conflicts to help avoid situations where previous versions
  or rustc-bootstrap may be installed
- Update to 1.12.1
- Remove patches:
    + 0003-Disable-embedding-timestamp-information.patch - fixed
      by upstream
    + 0002-Add-armv6l-autodetection.patch - no-longer viable
- Revert from v1.13 to v1.11 in preparation for alternative
  packaging.
- Add 0001-Fix-armv7-autodetection.patch
- Add 0002-Add-armv6l-autodetection.patch
  * fix armv6 and armv7 builds
- Update to 1.11
  + Add support for cdylib crate types
- Remove merged patches:
  * 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
  * 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Set DT_SONAME when building dylibs
  * Add add-soname.patch
- Move to package named rust
- Update to 1.10
    + -C panic=abort flag for rustc or equivalent in Cargo.toml
    + new crate type cdylib, embeded library for other languages
    + In addition, a number of performance improvements landed in
      the compiler, and so did a number of usability improvements
      across the documentation, rustdoc itself, and various error
      messages.
    + This is the first release, which is guaranteed to be built
    by previous stable release of rustc
- Packaging:
    + drop bootstrap mode and use rustc 1.9
    + move documentation to versioned directory
- Use smp_mflags for parallel building. Avoid sh invocation for
  simple ldconfig calls. Drop archaic %clean section.
  Drop filler words from summary.
- Rename source package to rustc-1_9 to conform to naming standards.
- Rename source package to rustc-190 to avoid unecessary rebuilds
  of rustc packages on upgrade
- Move stage0 binaries into separate package
- Disable embedding timestamp information
- Add 0003-Disable-embedding-timestamp-information.patch
- Rename package to rustc-stable
- Add rpmlintrc
- Make bootstrapping conditional
- Fix misleading indentation errors on GCC 6.0
- Remove snap2.sh
- Add 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
- Add 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Update to version 1.9.0
    + Stabilization of std::panic
    + Deprecation warnings, #[deprecated] attribute
    + Compile time improvements
    + Rolling out use of specialization
    + Library stabilizations
      About 80 library functions and methods are now stable in 1.
    + http://blog.rust-lang.org/2016/05/26/Rust-1.9.html
- Update to version 1.8.0:
    + Various “operator equals” operators, such as += and -=, are now
      overloadable via various traits.
    + Empty struct declaration can contain cutly braces
    + New (non default) cargo based build system for rustc
    + About 20 library functions and methods are now stable in 1.8
- Update to version 1.7.0:
    + Many stabilized APIs
    + Improved library performance
    + BTreeSet and its iterators, Iter, IntoIter, and Range are covariant over their contained type.
    + LinkedList and its iterators, Iter and IntoIter are covariant over their contained type.
    + str::replace now accepts a Pattern, like other string searching methods.
    + Any is implemented for unsized types.
    + Hash is implemented for Duration.
    + Soundness fixes, may break code. See RFC 1214 for more information.
    + Several bugs in the compiler's visibility calculations were fixed.
    + Parsing "." as a float results in an error instead of 0.
    + Borrows of closure parameters may not outlive the closure.
- Update to version 1.6.0:
    + Stabilization of libcore and other library functions
    + Crates.io disallows wildcards
- Update to version 1.4.0:
    + Several changes have been made to fix type soundness and improve the
    behavior of associated types. See RFC 1214. Although we have mostly
    introduced these changes as warnings this release, to become errors next
    release, there are still some scenarios that will see immediate breakage.
    + The str::lines and BufRead::lines iterators treat \r\n as line breaks in
    addition to \n.
    + Loans of 'static lifetime extend to the end of a function.
    + str::parse no longer introduces avoidable rounding error when parsing
    floating point numbers. Together with earlier changes to float
    formatting/output, "round trips" like f.to_string().parse() now preserve
    the value of f exactly.  Additionally, leading plus signs are now accepted.
- Split the gdb support to rust-gdb subpackage
- Update to version 1.3.0:
    + API stabilization, including the new Duration API and
    enhancements to Error and Hash/Hasher.
    + The substring matcher now uses a more efficient algorithm.
    + There were improvements to zero filling that speed up
    Vec::resize and Read::read_to_end.
    + The implementation of Read::read_to_end has been specialized
    for stdin and File, resulting in additional speedups.
    + The PartialEq implementation on slices is now much faster.
- Packaging: renamed source package to rustc to match upstream
- Update to version 1.2.0:
    + An across-the-board improvement to real-world compiler performance.
    Representative crates include hyper (compiles 1.16x faster), html5ever
    (1.62x faster), regex (1.32x faster) and rust-encoding (1.35x faster). You
    can explore some of this performance data at Nick Cameron’s preliminary
    tracking site, using dates 2015-05-15 to 2015-06-25.
    + Parallel codegen is now working, and produces a 33% speedup when
    bootstrapping on a 4 core machine. Parallel codegen is particularly useful
    for debug builds, since it prevents some optimizations; but it can also be
    used with optimizations as an effective -O1 flag. It can be activated
    by passing -C codegen-units=N to rustc, where N is the desired number
    of threads.
- Update to version 1.1.0:
  + The std::fs module has been expanded to expand the set of
    functionality exposed:
    * DirEntry now supports optimizations like file_type and
      metadata which don't incur a syscall on some platforms.
    * A symlink_metadata function has been added.
    * The fs::Metadata structure now lowers to its OS counterpart,
      providing access to all underlying information.
  + The compiler now contains extended explanations of many errors.
    When an error with an explanation occurs the compiler suggests
    using the --explain flag to read the explanation. Error
    explanations are also available online.
  + Thanks to multiple improvements to type checking, as well as other
    work, the time to bootstrap the compiler decreased by 32%.
- drop tar_scm service and use source urls
- Update to version 1.0.0:
  + lint: deny transmuting from immutable to mutable, since it's undefined behavior
  + std: update select internals to not use mutable transmuting
  + std: Remove index notation on slice iterators
  + std: Destabilize io::BufStream
  + Make RwLock::try_write try to obtain a write lock
  + std: Remove addition on vectors for now
  + thread: right now you can't actually set those printers
  + Fix #24872, XSS in docs not found page.
  + Update AUTHORS.txt and RELEASES.md for 1.0
  + std: Mark `mem::forget` as a safe function
  + core: impl AsRef<[u8]> for str
  + collections: impl AsRef<[u8]> for String
  + collections: change bounds of SliceConcatExt implementations to use Borrow instead of AsRef
  + Fix invalid references due to the automated string substitution
  + dropck: must assume `Box<Trait + 'a>` has a destructor of interest.
- Rename binary package to rust
- Add build for i586
- Only run fdupes on SUSE builds
- Changed version format
- Update to version 1.0.0~beta4+git.1430848988.f873dc5:
  + Introduce a `FreeRegionMap` data structure. (#22779)
  + Fix #20616
  + std: Fix inheriting standard handles on windows
  + Fix #24895.
  + Fix zero-normalization of the pos of a `MultiByteChar`.
  + lint for mixing `#[repr(C)]` with an impl of `Drop`.
  + Bump prerelease version to .4
  + Add downcasting to std::error::Error
- Format spec file
- Update to version 1.0.0beta3+git.1429985089.5241bf9:
  + Update Windows caveats
  + Utilize if..let for get_mut doc-comment examples
  + Indicate keywords are code-like in Fuse::reset_fuse doc comment
  + doc: improve/fix 'let' FAQ
  + Fix broken links in the docs
  + Indicate None is code-like in doc comments
  + Fixed typo in hash_map::Entry documentation
  + Remove an unused import on windows
- Version 1.0.0-beta3.

OBS-URL: https://build.opensuse.org/request/show/568200
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=143
2018-01-22 18:14:27 +00:00
Manu Maier
5d1288c0d3 Accepting request 568111 from home:mmanu84:rust
- Update Cargo to v0.24.0

OBS-URL: https://build.opensuse.org/request/show/568111
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=142
2018-01-22 11:23:35 +00:00
Luke Jones
82baa4f98f Accepting request 561771 from home:luke_nukem:branches:devel:languages:rust
- Update to 1.23.0
- Language changes:
  + Arbitrary `auto` traits are now permitted in trait objects.[45772]
  + rustc now uses subtyping on the left hand side of binary operations.[45435]
    Which should fix some confusing errors in some operations.
- Compiler changes:
  + Enabled `TrapUnreachable` in LLVM which should mitigate the impact of
    undefined behaviour.[45920]
  + rustc now suggests renaming import if names clash.[45660]
  + Display errors/warnings correctly when there are zero-width or
    wide characters.[45711]
  + rustc now avoids unnecessary copies of arguments that are
    simple bindings[45380] This should improve memory usage on average by 5-10%.
  + Updated musl used to build musl rustc to 1.1.17[45393]
- Library changes:
  + Allow a trailing comma in `assert_eq/ne` macro[45887]
  + Implement Hash for raw pointers to unsized types[45483]
  + impl `From<*mut T>` for `AtomicPtr<T>`[45610]
  + impl `From<usize/isize>` for `AtomicUsize/AtomicIsize`.[45610]
  + Removed the `T: Sync` requirement for `RwLock<T>: Send`[45267]
  + Removed `T: Sized` requirement for `{<*const T>, <*mut T>}::as_ref`
    an `<*mut T>::as_mut`[44932]
  + Optimized `Thread::{park, unpark}` implementation[45524]
  + Improved `SliceExt::binary_search` performance.[45333]
  + impl `FromIterator<()>` for `()`[45379]
  + Copied `AsciiExt` trait methods to primitive types.[44042] Use of `AsciiExt`
    is now deprecated.
- Misc changes:
  + Releases now ship with the Cargo book documentation.[45692]
  + rustdoc now prints rendering warnings on every run.[45324]
  + Release tarballs now come with rustfmt[45903]
- Compatibility Notes:
  + Changes have been made to type equality to make it more correct,
    in rare cases this could break some code.[45853] [Tracking issue for
    further information[45852]
  + `char::escape_debug` now uses Unicode 10 over 9.[45571]
  + Upgraded Android SDK to 27, and NDK to r15c.[45580] This drops support for
    Android 9, the minimum supported version is Android 14.
  + Bumped the minimum LLVM to 3.9[45326]

OBS-URL: https://build.opensuse.org/request/show/561771
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=140
2018-01-05 00:40:46 +00:00
Luke Jones
d1963b7b15 Accepting request 545493 from home:mmanu84:rust
- Update to v1.22.1
- Update Cargo to fix an issue with macOS 10.13 "High Sierra"

OBS-URL: https://build.opensuse.org/request/show/545493
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=138
2017-11-26 00:27:34 +00:00
Manu Maier
486f1572f5 Accepting request 544501 from home:luke_nukem:branches:devel:languages:rust
- Update to v1.22.0
- Language changes:
  + `non_snake_case` lint now allows extern no-mangle functions
  + Now accepts underscores in unicode escapes
  + `T op= &T` now works for numeric types. eg. `let mut x = 2; x += &8;`
  + types that impl `Drop` are now allowed in `const` and `static` types
- Compiler changes:
  + rustc now defaults to having 16 codegen units at debug on supported platforms
  + rustc will no longer inline in codegen units when compiling for debug
    This should decrease compile times for debug builds.
  + strict memory alignment now enabled on ARMv6
  + Remove support for the PNaCl target `le32-unknown-nacl`
- Librarie changes
  + Allow atomic operations up to 32 bits
    on `armv5te_unknown_linux_gnueabi`
  + `Box<Error>` now impls `From<Cow<str>>`
  + `std::mem::Discriminant` is now guaranteed to be `Send + Sync`
  + `fs::copy` now returns the length of the main stream on NTFS.
  + Properly detect overflow in `Instant += Duration`.
  + impl `Hasher` for `{&mut Hasher, Box<Hasher>}`
  + impl `fmt::Debug` for `SplitWhitespace`.][44303]
  + `Option<T>` now impls `Try`. This allows for using `?` with `Option` types.
- Misc
  + `libbacktrace` is now available on Apple platforms.
  + Stabilised the `compile_fail` attribute for code fences in doc-comments.
    This now lets you specify that a given code example will fail to compile.
- Compatibility Notes
  + The minimum Android version that rustc can build for has been bumped
    to `4.0` from `2.3`
  + Allowing `T op= &T` for numeric types has broken some type inference cases
  
- Remove rust-1.21.0-44203-exclude-compiler-rt-test.patch
- Remove rust-1.21.0-44066-ppc64-struct-abi.patch
- Remove rust-1.21.0-44440-s390x-global-align.patch

OBS-URL: https://build.opensuse.org/request/show/544501
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=137
2017-11-23 08:22:26 +00:00
Luke Jones
34ca306701 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=136 2017-10-25 21:58:28 +00:00
Luke Jones
17e07a5fc5 Accepting request 535320 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/535320
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=133
2017-10-19 21:13:56 +00:00
Luke Jones
45595d2fc4 Accepting request 535104 from home:luke_nukem:branches:devel:languages:rust
- Large cleanup of both the spec and config.toml to correct many
  build issues for the new version
- Add rust-1.21.0-44203-exclude-compiler-rt-test.patch
- Add rust-1.21.0-44066-ppc64-struct-abi.patch
- Add rust-1.21.0-44440-s390x-global-align.patch
- Remove add-soname.patch

OBS-URL: https://build.opensuse.org/request/show/535104
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=132
2017-10-19 05:50:12 +00:00
Luke Jones
6ac0b3d718 Accepting request 534605 from home:luke_nukem:branches:devel:languages:rust
- Update to 1.21.0
- Language changes:
  + You can now use static references for literals.
  + Relaxed path syntax. Optional `::` before `<` is now allowed in all contexts.
- Compiler changes:
  + Upgraded jemalloc to 4.5.0[43911]
  + Enabled unwinding panics on Redox[43917]
  + Now runs LLVM in parallel during translation phase.[43506]
- Librarie changes:
  + Generate builtin impls for `Clone` for all arrays and tuples that
  are `T: Clone`[43690]
  +`Stdin`, `Stdout`, and `Stderr` now implement `AsRawFd`.[43459]
  + `Rc` and `Arc` now implement `From<&[T]> where T: Clone`, `From<str>`,
  `From<String>`, `From<Box<T>> where T: ?Sized`, and `From<Vec<T>>`.[42565]
- Stabilized APIs
  +`std::mem::discriminant`
- Update add-soname.patch to apply cleanly
- Force enable rust bootstrap so that missing architectures build
- set minimum cmake version
- Update to version 1.20.0
- Remove x86 from build targets
- Language
  + [Associated constants are now stabilised.][42809]
  + [A lot of macro bugs are now fixed.][42913]
- Compiler
  + [Struct fields are now properly coerced to the expected field type.][42807]
  + [Enabled wasm LLVM backend][42571] WASM can now be built with the
  `wasm32-experimental-emscripten` target.
  + [Changed some of the error messages to be more helpful.][42033]
  + [Add support for RELRO(RELocation Read-Only) for platforms that support
  it.][43170]
  + [rustc now reports the total number of errors on compilation failure][43015]
  previously this was only the number of errors in the pass that failed.
  + [Expansion in rustc has been sped up 29x.][42533]
  + [added `msp430-none-elf` target.][43099]
  + [rustc will now suggest one-argument enum variant to fix type mismatch when
  applicable][43178]
  + [Fixes backtraces on Redox][43228]
  + [rustc now identifies different versions of same crate when absolute paths of
  different types match in an error message.][42826]
- Libraries
  + [Relaxed Debug constraints on `{HashMap,BTreeMap}::{Keys,Values}`.][42854]
  + [Impl `PartialEq`, `Eq`, `PartialOrd`, `Ord`, `Debug`, `Hash` for unsized
  tuples.][43011]
  + [Impl `fmt::{Display, Debug}` for `Ref`, `RefMut`, `MutexGuard`,
  `RwLockReadGuard`, `RwLockWriteGuard`][42822]
  + [Impl `Clone` for `DefaultHasher`.][42799]
  + [Impl `Sync` for `SyncSender`.][42397]
  + [Impl `FromStr` for `char`][42271]
  + [Fixed how `{f32, f64}::{is_sign_negative, is_sign_positive}` handles
  NaN.][42431]
  + [allow messages in the `unimplemented!()` macro.][42155]
  ie. `unimplemented!("Waiting for 1.21 to be stable")`
  + [`pub(restricted)` is now supported in the `thread_local!` macro.][43185]
  + [Upgrade to Unicode 10.0.0][42999]
  + [Reimplemented `{f32, f64}::{min, max}` in Rust instead of using CMath.][42430]
  + [Skip the main thread's manual stack guard on Linux][43072]
  + [Iterator::nth for `ops::{Range, RangeFrom}` is now done in O(1) time][43077]
  + [`#[repr(align(N))]` attribute max number is now 2^31   + 1.][43097] This was
  previously 2^15.
  + [`{OsStr, Path}::Display` now avoids allocations where possible][42613]
- Compatibility Notes
  + [Functions with `'static` in their return types will now not be as usable as
  if they were using lifetime parameters instead.][42417]
  + [The reimplementation of `{f32, f64}::is_sign_{negative, positive}` now
  takes the sign of NaN into account where previously didn't.][42430]
- adjust build process and add package for Rust source
- clean-up of useless provides
- add rpmlintrc
- Update to version 1.19
- Language updates:
  + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506]
    For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`.
  + [Macro recursion limit increased to 1024 from 64.][41676]
  + [Added lint for detecting unused macros.][41907]
  + [`loop` can now return a value with `break`.][42016] [RFC 1624]
    For example: `let x = loop { break 7; };`
  + [C compatible `union`s are now available.][42068] [RFC 1444] They can only
    contain `Copy` types and cannot have a `Drop` implementation.
    Example: `union Foo { bar: u8, baz: usize }`
  + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558]
    Example: `let foo: fn(u8) -> u8 = |v: u8| { v };`
- Compiler updates:
  + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370]
  + [Change `arm-linux-androideabi` to correspond to the `armeabi`
    official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI
    you should use `--target armv7-linux-androideabi`.
  + [Fixed ICE when removing a source file between compilation sessions.][41873]
  + [Minor optimisation of string operations.][42037]
  + [Compiler error message is now `aborting due to previous error(s)` instead of
    `aborting due to N previous errors`][42150] This was previously inaccurate and
    would only count certain kinds of errors.
  + [The compiler now supports Visual Studio 2017][42225]
  + [The compiler is now built against LLVM 4.0.1 by default][42948]
  + [Added a lot][42264] of [new error codes][42302]
  + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows
    libraries with C Run-time Libraries(CRT) to be statically linked.
  + [Fixed various ARM codegen bugs][42740]
- Librarie updates:
  + [`String` now implements `FromIterator<Cow<'a, str>>` and
    `Extend<Cow<'a, str>>`][41449]
  + [`Vec` now implements `From<&mut [T]>`][41530]
  + [`Box<[u8]>` now implements `From<Box<str>>`][41258]
  + [`SplitWhitespace` now implements `Clone`][41659]
  + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now
    1.5x faster][41764]
  + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!`
    macros, but for printing to stderr.
- Stabilized APIs
  + [`OsString::shrink_to_fit`]
  + [`cmp::Reverse`]
  + [`Command::envs`]
  + [`thread::ThreadId`]
- Misc
  + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the
    Windows Debugger.
  + [Rust will now release XZ compressed packages][rust-installer/57]
  + [rustup will now prefer to download rust packages with
    XZ compression][rustup/1100] over GZip packages.
  + [Added the ability to escape `#` in rust documentation][41785] By adding
    additional `#`'s ie. `##` is now `#`
- Temporarily disable generation of compiler docs due to build issue
- Change i586 build to produce i686 target instead of i586 so that
  x86 Firefox can be built with Rust.
- Update to 1.18.0
-Language updates:
    + [Stabilize pub(restricted)][40556] `pub` can now accept amodule path to
      make the item visible to just that module tree. Also accepts the keyword
      `crate` to make something public to the whole crate but not users of the
      library. Example: `pub(crate) mod utils;`. [RFC 1422].
    + [Stabilize `#![windows_subsystem]` attribute][40870] conservative exposure of the
      `/SUBSYSTEM` linker flag on Windows platforms. [RFC 1665].
    + [Refactor of trait object type parsing][40043] Now `ty` in macros can accept
      types like `Write + Send`, trailing `+` are now supported in trait objects,
      and better error reporting for trait objects starting with `?Sized`.
    + [0e+10 is now a valid floating point literal][40589]
    + [Now warns if you bind a lifetime parameter to 'static][40734]
    + [Tuples, Enum variant fields, and structs with no `repr` attribute or with
      `#[repr(Rust)]` are reordered to minimize padding and produce a smaller
      representation in some cases.][40377]
-Compiler updates
    + [rustc can now emit mir with `--emit mir`][39891]
    + [Improved LLVM IR for trivial functions][40367]
    + [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723]
    + [rustc compilation is now 15%-20% faster][41469] Thanks to optimisation
      opportunities found through profiling
    + [Improved backtrace formatting when panicking][38165]
- Library updates:
    + [Specialized `Vec::from_iter` being passed `vec::IntoIter`][40731] if the
      iterator hasn't been advanced the original `Vec` is reassembled with no actual
      iteration or reallocation.
    + [Simplified HashMap Bucket interface][40561] provides performance
      improvements for iterating and cloning.
    + [Specialize Vec::from_elem to use calloc][40409]
    + [Fixed Race condition in fs::create_dir_all][39799]
    + [No longer caching stdio on Windows][40516]
    + [Optimized insertion sort in slice][40807] insertion sort in some cases
      2.50%~ faster and in one case now 12.50% faster.
    + [Optimized `AtomicBool::fetch_nand`][41143]
- Stabilized APIs:
    + [`Child::try_wait`]
    + [`HashMap::retain`]
    + [`HashSet::retain`]
    + [`PeekMut::pop`]
    + [`TcpStream::peek`]
    + [`UdpSocket::peek`]
- Misc:
    + [rustdoc can now use pulldown-cmark with the `--enable-commonmark` flag][40338]
    + [Added rust-winbg script for better debugging on Windows][39983]
    + [Rust now uses the official cross compiler for NetBSD][40612]
    + [rustdoc now accepts `#` at the start of files][40828]
    + [Fixed jemalloc support for musl][41168]
- Compatibility Notes:
    + [Changes to how the `0` flag works in format!][40241] Padding zeroes are now
      always placed after the sign if it exists and before the digits. With the `#`
      flag the zeroes are placed after the prefix and before the digits.
    + [Due to the struct field optimisation][40377], using `transmute` on structs
      that have no `repr` attribute or `#[repr(Rust)]` will no longer work. This has
      always been undefined behavior, but is now more likely to break in practice.
    + [The refactor of trait object type parsing][40043] fixed a bug where `+` was
      receiving the wrong priority parsing things like `&for<'a> Tr<'a> + Send` as
      `&(for<'a> Tr<'a> + Send)` instead of `(&for<'a> Tr<'a>) + Send`
    + [Overlapping inherent `impl`s are now a hard error][40728]
    + [`PartialOrd` and `Ord` must agree on the ordering.][41270]
    + [`rustc main.rs -o out --emit=asm,llvm-ir`][41085] Now will output
      `out.asm` and `out.ll` instead of only one of the filetypes.
    + [ calling a function that returns `Self` will no longer work][41805] when
      the size of `Self` cannot be statically determined.
    + [rustc now builds with a "pthreads" flavour of MinGW for Windows GNU][40805]
      this has caused a few regressions namely:
    + Changed the link order of local static/dynamic libraries (respecting the
      order on given rather than having the compiler reorder).
    + Changed how MinGW is linked, native code linked to dynamic libraries
      may require manually linking to the gcc support library (for the native
      code itself)
- Adjustment of rust version dependency to prevent inability to
  build in the adi rings.
- Add the cargo binaries for each arch, used for building rust only
  these are not shipped, and don't factor in to the final product.
- Revert restriction of x86 arch to i586 for the interim.
- Update to 1.17.0
- Language updates
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Updates to libraries
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility Notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Restrict x86 builds to i686 only.
- Revert restriction on previous rust versions used for building
- Change x86 build target from i586 to i686
- Switch .spec to use rust-build compilation system
- Update config.toml to reflect rust-build changes
- Strict versioning for compilation so rustc always use previous
  stable compiler
- Update to 1.16.0
- Language updates
    * Lifetimes in statics and consts default to `'static`. [RFC 1623]
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Library updates
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc fixes
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Remove duplicate license files from _docdir: rpm 4.13 no longer
  implicitly packages those files and we catch them using %license,
- remove bootstrap for s390x as binaries are available in
  openSUSE:Factory:zSystems
- Fixes to build for archs armv7, aarch64, ppc64, s390x
- Update to 1.15.1
- Fix IntoIter::as_mut_slice's signature
- Correct rust-triples use in spec.
- Update to 1.15.0
- Language updates
	* Basic procedural macros allowing custom `#[derive]`, aka "macros 1.1", are
	stable. This allows popular code-generating crates like Serde and Diesel to
	work ergonomically. [RFC 1681].
	* [Tuple structs may be empty. Unary and empty tuple structs may be instantiated
	with curly braces][36868]. Part of [RFC 1506].
	* [A number of minor changes to name resolution have been activated][37127].
	They add up to more consistent semantics, allowing for future evolution of
	Rust macros. Specified in [RFC 1560], see its section on ["changes"] for
	details of what is different. The breaking changes here have been transitioned
	through the [`legacy_imports`] lint since 1.14, with no known regressions.
	* [In `macro_rules`, `path` fragments can now be parsed as type parameter
	bounds][38279]
	* [`?Sized` can be used in `where` clauses][37791]
	* [There is now a limit on the size of monomorphized types and it can be
	modified with the `#![type_size_limit]` crate attribute, similarly to
	the `#![recursion_limit]` attribute][37789]
- Compiler changes
	* [On Windows, the compiler will apply dllimport attributes when linking to
	extern functions][37973]. Additional attributes and flags can control which
	library kind is linked and its name. [RFC 1717].
	* [Rust-ABI symbols are no longer exported from cdylibs][38117]
	* [The `--test` flag works with procedural macro crates][38107]
	* [Fix `extern "aapcs" fn` ABI][37814]
	* [The `-C no-stack-check` flag is deprecated][37636]. It does nothing.
	* [The `format!` expander recognizes incorrect `printf` and shell-style
	formatting directives and suggests the correct format][37613].
	* [Only report one error for all unused imports in an import list][37456]
- Compiler performance
	* [Avoid unnecessary `mk_ty` calls in `Ty::super_fold_with`][37705]
	* [Avoid more unnecessary `mk_ty` calls in `Ty::super_fold_with`][37979]
	* [Don't clone in `UnificationTable::probe`][37848]
	* [Remove `scope_auxiliary` to cut RSS by 10%][37764]
	* [Use small vectors in type walker][37760]
	* [Macro expansion performance was improved][37701]
	* [Change `HirVec<P<T>>` to `HirVec<T>` in `hir::Expr`][37642]
	* [Replace FNV with a faster hash function][37229]
- For full change list, please see
	https://raw.githubusercontent.com/rust-lang/rust/master/RELEASES.md
- Adjust build so that aarch and ARM architectures use bootstrap for
  initial build
- Fix provides/conflicts/obsoletes
- Remove patch 0001-Fix-armv7-autodetection.patch
    + appears to have been fixed upstream.
- Building armv7hl arch with bootstrap binary since previously
  packaged versions haven't successfully built in the past
- Update to version 1.14.0
    + Announcement: https://blog.rust-lang.org/2016/12/22/Rust-1.14.html
    + Details: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1140-2016-12-22
- Release highlights:
    + support for RFC 1492. This small addition lets you use `..`
    in more places, for example when destructuring a struct or tuple
    + println!(), with no arguments, prints newline
    + Wrapping impls standard binary and unary operators on
    references, as well as the Sum and Product iterators, making
    references to these types easier to use
    + Implement From<Cow<str>> for String and From<Cow<[T]>> for
    Vec<T>. These implementations make sense, but were not yet added.
    + Expand .zip() specialization to .map() and .cloned() for
    improved performance.
    + Implement RefUnwindSafe for atomic types, as these types are
    “unwind safe,” though that wasn’t obvious at first.
    + Specialize Vec::extend to Vec::extend_from_slice for
    performance gains.
    + Don’t reuse HashMap random seeds. This helps to mitigate one
    type of DDoS attack.
    + The internal memory layout of HashMap is more cache-friendly,
    for significant improvements in some operations
    + Impl Add<{str, Cow<str>}> for Cow<str>. We already support Add
    for other string types, so not having it on Cow is inconsistent.
- Update to 1.13.0
- Add conflicts to help avoid situations where previous versions
  or rustc-bootstrap may be installed
- Update to 1.12.1
- Remove patches:
    + 0003-Disable-embedding-timestamp-information.patch - fixed
      by upstream
    + 0002-Add-armv6l-autodetection.patch - no-longer viable
- Revert from v1.13 to v1.11 in preparation for alternative
  packaging.
- Add 0001-Fix-armv7-autodetection.patch
- Add 0002-Add-armv6l-autodetection.patch
  * fix armv6 and armv7 builds
- Update to 1.11
  + Add support for cdylib crate types
- Remove merged patches:
  * 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
  * 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Set DT_SONAME when building dylibs
  * Add add-soname.patch
- Move to package named rust
- Update to 1.10
    + -C panic=abort flag for rustc or equivalent in Cargo.toml
    + new crate type cdylib, embeded library for other languages
    + In addition, a number of performance improvements landed in
      the compiler, and so did a number of usability improvements
      across the documentation, rustdoc itself, and various error
      messages.
    + This is the first release, which is guaranteed to be built
    by previous stable release of rustc
- Packaging:
    + drop bootstrap mode and use rustc 1.9
    + move documentation to versioned directory
- Use smp_mflags for parallel building. Avoid sh invocation for
  simple ldconfig calls. Drop archaic %clean section.
  Drop filler words from summary.
- Rename source package to rustc-1_9 to conform to naming standards.
- Rename source package to rustc-190 to avoid unecessary rebuilds
  of rustc packages on upgrade
- Move stage0 binaries into separate package
- Disable embedding timestamp information
- Add 0003-Disable-embedding-timestamp-information.patch
- Rename package to rustc-stable
- Add rpmlintrc
- Make bootstrapping conditional
- Fix misleading indentation errors on GCC 6.0
- Remove snap2.sh
- Add 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
- Add 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Update to version 1.9.0
    + Stabilization of std::panic
    + Deprecation warnings, #[deprecated] attribute
    + Compile time improvements
    + Rolling out use of specialization
    + Library stabilizations
      About 80 library functions and methods are now stable in 1.
    + http://blog.rust-lang.org/2016/05/26/Rust-1.9.html
- Update to version 1.8.0:
    + Various “operator equals” operators, such as += and -=, are now
      overloadable via various traits.
    + Empty struct declaration can contain cutly braces
    + New (non default) cargo based build system for rustc
    + About 20 library functions and methods are now stable in 1.8
- Update to version 1.7.0:
    + Many stabilized APIs
    + Improved library performance
    + BTreeSet and its iterators, Iter, IntoIter, and Range are covariant over their contained type.
    + LinkedList and its iterators, Iter and IntoIter are covariant over their contained type.
    + str::replace now accepts a Pattern, like other string searching methods.
    + Any is implemented for unsized types.
    + Hash is implemented for Duration.
    + Soundness fixes, may break code. See RFC 1214 for more information.
    + Several bugs in the compiler's visibility calculations were fixed.
    + Parsing "." as a float results in an error instead of 0.
    + Borrows of closure parameters may not outlive the closure.
- Update to version 1.6.0:
    + Stabilization of libcore and other library functions
    + Crates.io disallows wildcards
- Update to version 1.4.0:
    + Several changes have been made to fix type soundness and improve the
    behavior of associated types. See RFC 1214. Although we have mostly
    introduced these changes as warnings this release, to become errors next
    release, there are still some scenarios that will see immediate breakage.
    + The str::lines and BufRead::lines iterators treat \r\n as line breaks in
    addition to \n.
    + Loans of 'static lifetime extend to the end of a function.
    + str::parse no longer introduces avoidable rounding error when parsing
    floating point numbers. Together with earlier changes to float
    formatting/output, "round trips" like f.to_string().parse() now preserve
    the value of f exactly.  Additionally, leading plus signs are now accepted.
- Split the gdb support to rust-gdb subpackage
- Update to version 1.3.0:
    + API stabilization, including the new Duration API and
    enhancements to Error and Hash/Hasher.
    + The substring matcher now uses a more efficient algorithm.
    + There were improvements to zero filling that speed up
    Vec::resize and Read::read_to_end.
    + The implementation of Read::read_to_end has been specialized
    for stdin and File, resulting in additional speedups.
    + The PartialEq implementation on slices is now much faster.
- Packaging: renamed source package to rustc to match upstream
- Update to version 1.2.0:
    + An across-the-board improvement to real-world compiler performance.
    Representative crates include hyper (compiles 1.16x faster), html5ever
    (1.62x faster), regex (1.32x faster) and rust-encoding (1.35x faster). You
    can explore some of this performance data at Nick Cameron’s preliminary
    tracking site, using dates 2015-05-15 to 2015-06-25.
    + Parallel codegen is now working, and produces a 33% speedup when
    bootstrapping on a 4 core machine. Parallel codegen is particularly useful
    for debug builds, since it prevents some optimizations; but it can also be
    used with optimizations as an effective -O1 flag. It can be activated
    by passing -C codegen-units=N to rustc, where N is the desired number
    of threads.
- Update to version 1.1.0:
  + The std::fs module has been expanded to expand the set of
    functionality exposed:
    * DirEntry now supports optimizations like file_type and
      metadata which don't incur a syscall on some platforms.
    * A symlink_metadata function has been added.
    * The fs::Metadata structure now lowers to its OS counterpart,
      providing access to all underlying information.
  + The compiler now contains extended explanations of many errors.
    When an error with an explanation occurs the compiler suggests
    using the --explain flag to read the explanation. Error
    explanations are also available online.
  + Thanks to multiple improvements to type checking, as well as other
    work, the time to bootstrap the compiler decreased by 32%.
- drop tar_scm service and use source urls
- Update to version 1.0.0:
  + lint: deny transmuting from immutable to mutable, since it's undefined behavior
  + std: update select internals to not use mutable transmuting
  + std: Remove index notation on slice iterators
  + std: Destabilize io::BufStream
  + Make RwLock::try_write try to obtain a write lock
  + std: Remove addition on vectors for now
  + thread: right now you can't actually set those printers
  + Fix #24872, XSS in docs not found page.
  + Update AUTHORS.txt and RELEASES.md for 1.0
  + std: Mark `mem::forget` as a safe function
  + core: impl AsRef<[u8]> for str
  + collections: impl AsRef<[u8]> for String
  + collections: change bounds of SliceConcatExt implementations to use Borrow instead of AsRef
  + Fix invalid references due to the automated string substitution
  + dropck: must assume `Box<Trait + 'a>` has a destructor of interest.
- Rename binary package to rust
- Add build for i586
- Only run fdupes on SUSE builds
- Changed version format
- Update to version 1.0.0~beta4+git.1430848988.f873dc5:
  + Introduce a `FreeRegionMap` data structure. (#22779)
  + Fix #20616
  + std: Fix inheriting standard handles on windows
  + Fix #24895.
  + Fix zero-normalization of the pos of a `MultiByteChar`.
  + lint for mixing `#[repr(C)]` with an impl of `Drop`.
  + Bump prerelease version to .4
  + Add downcasting to std::error::Error
- Format spec file
- Update to version 1.0.0beta3+git.1429985089.5241bf9:
  + Update Windows caveats
  + Utilize if..let for get_mut doc-comment examples
  + Indicate keywords are code-like in Fuse::reset_fuse doc comment
  + doc: improve/fix 'let' FAQ
  + Fix broken links in the docs
  + Indicate None is code-like in doc comments
  + Fixed typo in hash_map::Entry documentation
  + Remove an unused import on windows
- Version 1.0.0-beta3.

OBS-URL: https://build.opensuse.org/request/show/534605
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=130
2017-10-17 23:25:27 +00:00
Luke Jones
925a6fca84 Accepting request 534356 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/534356
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=129
2017-10-17 08:53:46 +00:00
Luke Jones
f15391e07c OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=128 2017-10-17 08:45:39 +00:00
Luke Jones
7d708d2525 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=126 2017-10-16 20:40:01 +00:00
Luke Jones
20816f6551 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=124 2017-10-16 20:30:58 +00:00
Luke Jones
d66aac3b5b Accepting request 528364 from home:luke_nukem:branches:devel:languages:rust
- Force enable rust bootstrap so that missing architectures build

OBS-URL: https://build.opensuse.org/request/show/528364
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=123
2017-09-23 00:31:11 +00:00
Luke Jones
53f7730d6d OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=122 2017-09-23 00:11:54 +00:00
Luke Jones
1db24e5d50 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=121 2017-09-23 00:04:47 +00:00
Luke Jones
7e73995945 Accepting request 528361 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/528361
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=120
2017-09-23 00:01:16 +00:00
Luke Jones
b03258b003 Accepting request 527474 from home:dstoecker
- set minimum cmake version

OBS-URL: https://build.opensuse.org/request/show/527474
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=118
2017-09-20 20:14:46 +00:00
Luke Jones
19fb0c5673 Accepting request 520946 from home:luke_nukem:branches:devel:languages:rust
- Update to version 1.20.0
- Remove x86 from build targets
- Language
  + [Associated constants are now stabilised.][42809]
  + [A lot of macro bugs are now fixed.][42913]
- Compiler
  + [Struct fields are now properly coerced to the expected field type.][42807]
  + [Enabled wasm LLVM backend][42571] WASM can now be built with the
  `wasm32-experimental-emscripten` target.
  + [Changed some of the error messages to be more helpful.][42033]
  + [Add support for RELRO(RELocation Read-Only) for platforms that support
  it.][43170]
  + [rustc now reports the total number of errors on compilation failure][43015]
  previously this was only the number of errors in the pass that failed.
  + [Expansion in rustc has been sped up 29x.][42533]
  + [added `msp430-none-elf` target.][43099]
  + [rustc will now suggest one-argument enum variant to fix type mismatch when
  applicable][43178]
  + [Fixes backtraces on Redox][43228]
  + [rustc now identifies different versions of same crate when absolute paths of
  different types match in an error message.][42826]
- Libraries
  + [Relaxed Debug constraints on `{HashMap,BTreeMap}::{Keys,Values}`.][42854]
  + [Impl `PartialEq`, `Eq`, `PartialOrd`, `Ord`, `Debug`, `Hash` for unsized
  tuples.][43011]
  + [Impl `fmt::{Display, Debug}` for `Ref`, `RefMut`, `MutexGuard`,
  `RwLockReadGuard`, `RwLockWriteGuard`][42822]
  + [Impl `Clone` for `DefaultHasher`.][42799]
  + [Impl `Sync` for `SyncSender`.][42397]
  + [Impl `FromStr` for `char`][42271]
  + [Fixed how `{f32, f64}::{is_sign_negative, is_sign_positive}` handles
  NaN.][42431]
  + [allow messages in the `unimplemented!()` macro.][42155]
  ie. `unimplemented!("Waiting for 1.21 to be stable")`
  + [`pub(restricted)` is now supported in the `thread_local!` macro.][43185]
  + [Upgrade to Unicode 10.0.0][42999]
  + [Reimplemented `{f32, f64}::{min, max}` in Rust instead of using CMath.][42430]
  + [Skip the main thread's manual stack guard on Linux][43072]
  + [Iterator::nth for `ops::{Range, RangeFrom}` is now done in O(1) time][43077]
  + [`#[repr(align(N))]` attribute max number is now 2^31   + 1.][43097] This was
  previously 2^15.
  + [`{OsStr, Path}::Display` now avoids allocations where possible][42613]
- Compatibility Notes
  + [Functions with `'static` in their return types will now not be as usable as
  if they were using lifetime parameters instead.][42417]
  + [The reimplementation of `{f32, f64}::is_sign_{negative, positive}` now
  takes the sign of NaN into account where previously didn't.][42430]
- adjust build process and add package for Rust source
- clean-up of useless provides
- add rpmlintrc
- Update to version 1.19
- Language updates:
  + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506]
    For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`.
  + [Macro recursion limit increased to 1024 from 64.][41676]
  + [Added lint for detecting unused macros.][41907]
  + [`loop` can now return a value with `break`.][42016] [RFC 1624]
    For example: `let x = loop { break 7; };`
  + [C compatible `union`s are now available.][42068] [RFC 1444] They can only
    contain `Copy` types and cannot have a `Drop` implementation.
    Example: `union Foo { bar: u8, baz: usize }`
  + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558]
    Example: `let foo: fn(u8) -> u8 = |v: u8| { v };`
- Compiler updates:
  + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370]
  + [Change `arm-linux-androideabi` to correspond to the `armeabi`
    official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI
    you should use `--target armv7-linux-androideabi`.
  + [Fixed ICE when removing a source file between compilation sessions.][41873]
  + [Minor optimisation of string operations.][42037]
  + [Compiler error message is now `aborting due to previous error(s)` instead of
    `aborting due to N previous errors`][42150] This was previously inaccurate and
    would only count certain kinds of errors.
  + [The compiler now supports Visual Studio 2017][42225]
  + [The compiler is now built against LLVM 4.0.1 by default][42948]
  + [Added a lot][42264] of [new error codes][42302]
  + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows
    libraries with C Run-time Libraries(CRT) to be statically linked.
  + [Fixed various ARM codegen bugs][42740]
- Librarie updates:
  + [`String` now implements `FromIterator<Cow<'a, str>>` and
    `Extend<Cow<'a, str>>`][41449]
  + [`Vec` now implements `From<&mut [T]>`][41530]
  + [`Box<[u8]>` now implements `From<Box<str>>`][41258]
  + [`SplitWhitespace` now implements `Clone`][41659]
  + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now
    1.5x faster][41764]
  + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!`
    macros, but for printing to stderr.
- Stabilized APIs
  + [`OsString::shrink_to_fit`]
  + [`cmp::Reverse`]
  + [`Command::envs`]
  + [`thread::ThreadId`]
- Misc
  + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the
    Windows Debugger.
  + [Rust will now release XZ compressed packages][rust-installer/57]
  + [rustup will now prefer to download rust packages with
    XZ compression][rustup/1100] over GZip packages.
  + [Added the ability to escape `#` in rust documentation][41785] By adding
    additional `#`'s ie. `##` is now `#`
- Temporarily disable generation of compiler docs due to build issue
- Change i586 build to produce i686 target instead of i586 so that
  x86 Firefox can be built with Rust.
- Update to 1.18.0
-Language updates:
    + [Stabilize pub(restricted)][40556] `pub` can now accept amodule path to
      make the item visible to just that module tree. Also accepts the keyword
      `crate` to make something public to the whole crate but not users of the
      library. Example: `pub(crate) mod utils;`. [RFC 1422].
    + [Stabilize `#![windows_subsystem]` attribute][40870] conservative exposure of the
      `/SUBSYSTEM` linker flag on Windows platforms. [RFC 1665].
    + [Refactor of trait object type parsing][40043] Now `ty` in macros can accept
      types like `Write + Send`, trailing `+` are now supported in trait objects,
      and better error reporting for trait objects starting with `?Sized`.
    + [0e+10 is now a valid floating point literal][40589]
    + [Now warns if you bind a lifetime parameter to 'static][40734]
    + [Tuples, Enum variant fields, and structs with no `repr` attribute or with
      `#[repr(Rust)]` are reordered to minimize padding and produce a smaller
      representation in some cases.][40377]
-Compiler updates
    + [rustc can now emit mir with `--emit mir`][39891]
    + [Improved LLVM IR for trivial functions][40367]
    + [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723]
    + [rustc compilation is now 15%-20% faster][41469] Thanks to optimisation
      opportunities found through profiling
    + [Improved backtrace formatting when panicking][38165]
- Library updates:
    + [Specialized `Vec::from_iter` being passed `vec::IntoIter`][40731] if the
      iterator hasn't been advanced the original `Vec` is reassembled with no actual
      iteration or reallocation.
    + [Simplified HashMap Bucket interface][40561] provides performance
      improvements for iterating and cloning.
    + [Specialize Vec::from_elem to use calloc][40409]
    + [Fixed Race condition in fs::create_dir_all][39799]
    + [No longer caching stdio on Windows][40516]
    + [Optimized insertion sort in slice][40807] insertion sort in some cases
      2.50%~ faster and in one case now 12.50% faster.
    + [Optimized `AtomicBool::fetch_nand`][41143]
- Stabilized APIs:
    + [`Child::try_wait`]
    + [`HashMap::retain`]
    + [`HashSet::retain`]
    + [`PeekMut::pop`]
    + [`TcpStream::peek`]
    + [`UdpSocket::peek`]
- Misc:
    + [rustdoc can now use pulldown-cmark with the `--enable-commonmark` flag][40338]
    + [Added rust-winbg script for better debugging on Windows][39983]
    + [Rust now uses the official cross compiler for NetBSD][40612]
    + [rustdoc now accepts `#` at the start of files][40828]
    + [Fixed jemalloc support for musl][41168]
- Compatibility Notes:
    + [Changes to how the `0` flag works in format!][40241] Padding zeroes are now
      always placed after the sign if it exists and before the digits. With the `#`
      flag the zeroes are placed after the prefix and before the digits.
    + [Due to the struct field optimisation][40377], using `transmute` on structs
      that have no `repr` attribute or `#[repr(Rust)]` will no longer work. This has
      always been undefined behavior, but is now more likely to break in practice.
    + [The refactor of trait object type parsing][40043] fixed a bug where `+` was
      receiving the wrong priority parsing things like `&for<'a> Tr<'a> + Send` as
      `&(for<'a> Tr<'a> + Send)` instead of `(&for<'a> Tr<'a>) + Send`
    + [Overlapping inherent `impl`s are now a hard error][40728]
    + [`PartialOrd` and `Ord` must agree on the ordering.][41270]
    + [`rustc main.rs -o out --emit=asm,llvm-ir`][41085] Now will output
      `out.asm` and `out.ll` instead of only one of the filetypes.
    + [ calling a function that returns `Self` will no longer work][41805] when
      the size of `Self` cannot be statically determined.
    + [rustc now builds with a "pthreads" flavour of MinGW for Windows GNU][40805]
      this has caused a few regressions namely:
    + Changed the link order of local static/dynamic libraries (respecting the
      order on given rather than having the compiler reorder).
    + Changed how MinGW is linked, native code linked to dynamic libraries
      may require manually linking to the gcc support library (for the native
      code itself)
- Adjustment of rust version dependency to prevent inability to
  build in the adi rings.
- Add the cargo binaries for each arch, used for building rust only
  these are not shipped, and don't factor in to the final product.
- Revert restriction of x86 arch to i586 for the interim.
- Update to 1.17.0
- Language updates
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Updates to libraries
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility Notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Restrict x86 builds to i686 only.
- Revert restriction on previous rust versions used for building
- Change x86 build target from i586 to i686
- Switch .spec to use rust-build compilation system
- Update config.toml to reflect rust-build changes
- Strict versioning for compilation so rustc always use previous
  stable compiler
- Update to 1.16.0
- Language updates
    * Lifetimes in statics and consts default to `'static`. [RFC 1623]
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Library updates
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc fixes
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Remove duplicate license files from _docdir: rpm 4.13 no longer
  implicitly packages those files and we catch them using %license,
- remove bootstrap for s390x as binaries are available in
  openSUSE:Factory:zSystems
- Fixes to build for archs armv7, aarch64, ppc64, s390x
- Update to 1.15.1
- Fix IntoIter::as_mut_slice's signature
- Correct rust-triples use in spec.
- Update to 1.15.0
- Language updates
	* Basic procedural macros allowing custom `#[derive]`, aka "macros 1.1", are
	stable. This allows popular code-generating crates like Serde and Diesel to
	work ergonomically. [RFC 1681].
	* [Tuple structs may be empty. Unary and empty tuple structs may be instantiated
	with curly braces][36868]. Part of [RFC 1506].
	* [A number of minor changes to name resolution have been activated][37127].
	They add up to more consistent semantics, allowing for future evolution of
	Rust macros. Specified in [RFC 1560], see its section on ["changes"] for
	details of what is different. The breaking changes here have been transitioned
	through the [`legacy_imports`] lint since 1.14, with no known regressions.
	* [In `macro_rules`, `path` fragments can now be parsed as type parameter
	bounds][38279]
	* [`?Sized` can be used in `where` clauses][37791]
	* [There is now a limit on the size of monomorphized types and it can be
	modified with the `#![type_size_limit]` crate attribute, similarly to
	the `#![recursion_limit]` attribute][37789]
- Compiler changes
	* [On Windows, the compiler will apply dllimport attributes when linking to
	extern functions][37973]. Additional attributes and flags can control which
	library kind is linked and its name. [RFC 1717].
	* [Rust-ABI symbols are no longer exported from cdylibs][38117]
	* [The `--test` flag works with procedural macro crates][38107]
	* [Fix `extern "aapcs" fn` ABI][37814]
	* [The `-C no-stack-check` flag is deprecated][37636]. It does nothing.
	* [The `format!` expander recognizes incorrect `printf` and shell-style
	formatting directives and suggests the correct format][37613].
	* [Only report one error for all unused imports in an import list][37456]
- Compiler performance
	* [Avoid unnecessary `mk_ty` calls in `Ty::super_fold_with`][37705]
	* [Avoid more unnecessary `mk_ty` calls in `Ty::super_fold_with`][37979]
	* [Don't clone in `UnificationTable::probe`][37848]
	* [Remove `scope_auxiliary` to cut RSS by 10%][37764]
	* [Use small vectors in type walker][37760]
	* [Macro expansion performance was improved][37701]
	* [Change `HirVec<P<T>>` to `HirVec<T>` in `hir::Expr`][37642]
	* [Replace FNV with a faster hash function][37229]
- For full change list, please see
	https://raw.githubusercontent.com/rust-lang/rust/master/RELEASES.md
- Adjust build so that aarch and ARM architectures use bootstrap for
  initial build
- Fix provides/conflicts/obsoletes
- Remove patch 0001-Fix-armv7-autodetection.patch
    + appears to have been fixed upstream.
- Building armv7hl arch with bootstrap binary since previously
  packaged versions haven't successfully built in the past
- Update to version 1.14.0
    + Announcement: https://blog.rust-lang.org/2016/12/22/Rust-1.14.html
    + Details: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1140-2016-12-22
- Release highlights:
    + support for RFC 1492. This small addition lets you use `..`
    in more places, for example when destructuring a struct or tuple
    + println!(), with no arguments, prints newline
    + Wrapping impls standard binary and unary operators on
    references, as well as the Sum and Product iterators, making
    references to these types easier to use
    + Implement From<Cow<str>> for String and From<Cow<[T]>> for
    Vec<T>. These implementations make sense, but were not yet added.
    + Expand .zip() specialization to .map() and .cloned() for
    improved performance.
    + Implement RefUnwindSafe for atomic types, as these types are
    “unwind safe,” though that wasn’t obvious at first.
    + Specialize Vec::extend to Vec::extend_from_slice for
    performance gains.
    + Don’t reuse HashMap random seeds. This helps to mitigate one
    type of DDoS attack.
    + The internal memory layout of HashMap is more cache-friendly,
    for significant improvements in some operations
    + Impl Add<{str, Cow<str>}> for Cow<str>. We already support Add
    for other string types, so not having it on Cow is inconsistent.
- Update to 1.13.0
- Add conflicts to help avoid situations where previous versions
  or rustc-bootstrap may be installed
- Update to 1.12.1
- Remove patches:
    + 0003-Disable-embedding-timestamp-information.patch - fixed
      by upstream
    + 0002-Add-armv6l-autodetection.patch - no-longer viable
- Revert from v1.13 to v1.11 in preparation for alternative
  packaging.
- Add 0001-Fix-armv7-autodetection.patch
- Add 0002-Add-armv6l-autodetection.patch
  * fix armv6 and armv7 builds
- Update to 1.11
  + Add support for cdylib crate types
- Remove merged patches:
  * 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
  * 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Set DT_SONAME when building dylibs
  * Add add-soname.patch
- Move to package named rust
- Update to 1.10
    + -C panic=abort flag for rustc or equivalent in Cargo.toml
    + new crate type cdylib, embeded library for other languages
    + In addition, a number of performance improvements landed in
      the compiler, and so did a number of usability improvements
      across the documentation, rustdoc itself, and various error
      messages.
    + This is the first release, which is guaranteed to be built
    by previous stable release of rustc
- Packaging:
    + drop bootstrap mode and use rustc 1.9
    + move documentation to versioned directory
- Use smp_mflags for parallel building. Avoid sh invocation for
  simple ldconfig calls. Drop archaic %clean section.
  Drop filler words from summary.
- Rename source package to rustc-1_9 to conform to naming standards.
- Rename source package to rustc-190 to avoid unecessary rebuilds
  of rustc packages on upgrade
- Move stage0 binaries into separate package
- Disable embedding timestamp information
- Add 0003-Disable-embedding-timestamp-information.patch
- Rename package to rustc-stable
- Add rpmlintrc
- Make bootstrapping conditional
- Fix misleading indentation errors on GCC 6.0
- Remove snap2.sh
- Add 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
- Add 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Update to version 1.9.0
    + Stabilization of std::panic
    + Deprecation warnings, #[deprecated] attribute
    + Compile time improvements
    + Rolling out use of specialization
    + Library stabilizations
      About 80 library functions and methods are now stable in 1.
    + http://blog.rust-lang.org/2016/05/26/Rust-1.9.html
- Update to version 1.8.0:
    + Various “operator equals” operators, such as += and -=, are now
      overloadable via various traits.
    + Empty struct declaration can contain cutly braces
    + New (non default) cargo based build system for rustc
    + About 20 library functions and methods are now stable in 1.8
- Update to version 1.7.0:
    + Many stabilized APIs
    + Improved library performance
    + BTreeSet and its iterators, Iter, IntoIter, and Range are covariant over their contained type.
    + LinkedList and its iterators, Iter and IntoIter are covariant over their contained type.
    + str::replace now accepts a Pattern, like other string searching methods.
    + Any is implemented for unsized types.
    + Hash is implemented for Duration.
    + Soundness fixes, may break code. See RFC 1214 for more information.
    + Several bugs in the compiler's visibility calculations were fixed.
    + Parsing "." as a float results in an error instead of 0.
    + Borrows of closure parameters may not outlive the closure.
- Update to version 1.6.0:
    + Stabilization of libcore and other library functions
    + Crates.io disallows wildcards
- Update to version 1.4.0:
    + Several changes have been made to fix type soundness and improve the
    behavior of associated types. See RFC 1214. Although we have mostly
    introduced these changes as warnings this release, to become errors next
    release, there are still some scenarios that will see immediate breakage.
    + The str::lines and BufRead::lines iterators treat \r\n as line breaks in
    addition to \n.
    + Loans of 'static lifetime extend to the end of a function.
    + str::parse no longer introduces avoidable rounding error when parsing
    floating point numbers. Together with earlier changes to float
    formatting/output, "round trips" like f.to_string().parse() now preserve
    the value of f exactly.  Additionally, leading plus signs are now accepted.
- Split the gdb support to rust-gdb subpackage
- Update to version 1.3.0:
    + API stabilization, including the new Duration API and
    enhancements to Error and Hash/Hasher.
    + The substring matcher now uses a more efficient algorithm.
    + There were improvements to zero filling that speed up
    Vec::resize and Read::read_to_end.
    + The implementation of Read::read_to_end has been specialized
    for stdin and File, resulting in additional speedups.
    + The PartialEq implementation on slices is now much faster.
- Packaging: renamed source package to rustc to match upstream
- Update to version 1.2.0:
    + An across-the-board improvement to real-world compiler performance.
    Representative crates include hyper (compiles 1.16x faster), html5ever
    (1.62x faster), regex (1.32x faster) and rust-encoding (1.35x faster). You
    can explore some of this performance data at Nick Cameron’s preliminary
    tracking site, using dates 2015-05-15 to 2015-06-25.
    + Parallel codegen is now working, and produces a 33% speedup when
    bootstrapping on a 4 core machine. Parallel codegen is particularly useful
    for debug builds, since it prevents some optimizations; but it can also be
    used with optimizations as an effective -O1 flag. It can be activated
    by passing -C codegen-units=N to rustc, where N is the desired number
    of threads.
- Update to version 1.1.0:
  + The std::fs module has been expanded to expand the set of
    functionality exposed:
    * DirEntry now supports optimizations like file_type and
      metadata which don't incur a syscall on some platforms.
    * A symlink_metadata function has been added.
    * The fs::Metadata structure now lowers to its OS counterpart,
      providing access to all underlying information.
  + The compiler now contains extended explanations of many errors.
    When an error with an explanation occurs the compiler suggests
    using the --explain flag to read the explanation. Error
    explanations are also available online.
  + Thanks to multiple improvements to type checking, as well as other
    work, the time to bootstrap the compiler decreased by 32%.
- drop tar_scm service and use source urls
- Update to version 1.0.0:
  + lint: deny transmuting from immutable to mutable, since it's undefined behavior
  + std: update select internals to not use mutable transmuting
  + std: Remove index notation on slice iterators
  + std: Destabilize io::BufStream
  + Make RwLock::try_write try to obtain a write lock
  + std: Remove addition on vectors for now
  + thread: right now you can't actually set those printers
  + Fix #24872, XSS in docs not found page.
  + Update AUTHORS.txt and RELEASES.md for 1.0
  + std: Mark `mem::forget` as a safe function
  + core: impl AsRef<[u8]> for str
  + collections: impl AsRef<[u8]> for String
  + collections: change bounds of SliceConcatExt implementations to use Borrow instead of AsRef
  + Fix invalid references due to the automated string substitution
  + dropck: must assume `Box<Trait + 'a>` has a destructor of interest.
- Rename binary package to rust
- Add build for i586
- Only run fdupes on SUSE builds
- Changed version format
- Update to version 1.0.0~beta4+git.1430848988.f873dc5:
  + Introduce a `FreeRegionMap` data structure. (#22779)
  + Fix #20616
  + std: Fix inheriting standard handles on windows
  + Fix #24895.
  + Fix zero-normalization of the pos of a `MultiByteChar`.
  + lint for mixing `#[repr(C)]` with an impl of `Drop`.
  + Bump prerelease version to .4
  + Add downcasting to std::error::Error
- Format spec file
- Update to version 1.0.0beta3+git.1429985089.5241bf9:
  + Update Windows caveats
  + Utilize if..let for get_mut doc-comment examples
  + Indicate keywords are code-like in Fuse::reset_fuse doc comment
  + doc: improve/fix 'let' FAQ
  + Fix broken links in the docs
  + Indicate None is code-like in doc comments
  + Fixed typo in hash_map::Entry documentation
  + Remove an unused import on windows
- Version 1.0.0-beta3.

OBS-URL: https://build.opensuse.org/request/show/520946
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=116
2017-09-05 01:10:50 +00:00
Luke Jones
e499e0d3ab Accepting request 520549 from home:luke_nukem:branches:devel:languages:rust
- adjust build process and add package for Rust source
- clean-up of useless provides
- add rpmlintrc
- Update to version 1.19
- Language updates:
  + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506]
    For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`.
  + [Macro recursion limit increased to 1024 from 64.][41676]
  + [Added lint for detecting unused macros.][41907]
  + [`loop` can now return a value with `break`.][42016] [RFC 1624]
    For example: `let x = loop { break 7; };`
  + [C compatible `union`s are now available.][42068] [RFC 1444] They can only
    contain `Copy` types and cannot have a `Drop` implementation.
    Example: `union Foo { bar: u8, baz: usize }`
  + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558]
    Example: `let foo: fn(u8) -> u8 = |v: u8| { v };`
- Compiler updates:
  + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370]
  + [Change `arm-linux-androideabi` to correspond to the `armeabi`
    official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI
    you should use `--target armv7-linux-androideabi`.
  + [Fixed ICE when removing a source file between compilation sessions.][41873]
  + [Minor optimisation of string operations.][42037]
  + [Compiler error message is now `aborting due to previous error(s)` instead of
    `aborting due to N previous errors`][42150] This was previously inaccurate and
    would only count certain kinds of errors.
  + [The compiler now supports Visual Studio 2017][42225]
  + [The compiler is now built against LLVM 4.0.1 by default][42948]
  + [Added a lot][42264] of [new error codes][42302]
  + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows
    libraries with C Run-time Libraries(CRT) to be statically linked.
  + [Fixed various ARM codegen bugs][42740]
- Librarie updates:
  + [`String` now implements `FromIterator<Cow<'a, str>>` and
    `Extend<Cow<'a, str>>`][41449]
  + [`Vec` now implements `From<&mut [T]>`][41530]
  + [`Box<[u8]>` now implements `From<Box<str>>`][41258]
  + [`SplitWhitespace` now implements `Clone`][41659]
  + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now
    1.5x faster][41764]
  + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!`
    macros, but for printing to stderr.
- Stabilized APIs
  + [`OsString::shrink_to_fit`]
  + [`cmp::Reverse`]
  + [`Command::envs`]
  + [`thread::ThreadId`]
  
- Misc
  + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the
    Windows Debugger.
  + [Rust will now release XZ compressed packages][rust-installer/57]
  + [rustup will now prefer to download rust packages with
    XZ compression][rustup/1100] over GZip packages.
  + [Added the ability to escape `#` in rust documentation][41785] By adding
    additional `#`'s ie. `##` is now `#`
- Temporarily disable generation of compiler docs due to build issue
- Change i586 build to produce i686 target instead of i586 so that
  x86 Firefox can be built with Rust.
- Update to 1.18.0
-Language updates:
    + [Stabilize pub(restricted)][40556] `pub` can now accept amodule path to
      make the item visible to just that module tree. Also accepts the keyword
      `crate` to make something public to the whole crate but not users of the
      library. Example: `pub(crate) mod utils;`. [RFC 1422].
    + [Stabilize `#![windows_subsystem]` attribute][40870] conservative exposure of the
      `/SUBSYSTEM` linker flag on Windows platforms. [RFC 1665].
    + [Refactor of trait object type parsing][40043] Now `ty` in macros can accept
      types like `Write + Send`, trailing `+` are now supported in trait objects,
      and better error reporting for trait objects starting with `?Sized`.
    + [0e+10 is now a valid floating point literal][40589]
    + [Now warns if you bind a lifetime parameter to 'static][40734]
    + [Tuples, Enum variant fields, and structs with no `repr` attribute or with
      `#[repr(Rust)]` are reordered to minimize padding and produce a smaller
      representation in some cases.][40377]
-Compiler updates
    + [rustc can now emit mir with `--emit mir`][39891]
    + [Improved LLVM IR for trivial functions][40367]
    + [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723]
    + [rustc compilation is now 15%-20% faster][41469] Thanks to optimisation
      opportunities found through profiling
    + [Improved backtrace formatting when panicking][38165]
- Library updates:
    + [Specialized `Vec::from_iter` being passed `vec::IntoIter`][40731] if the
      iterator hasn't been advanced the original `Vec` is reassembled with no actual
      iteration or reallocation.
    + [Simplified HashMap Bucket interface][40561] provides performance
      improvements for iterating and cloning.
    + [Specialize Vec::from_elem to use calloc][40409]
    + [Fixed Race condition in fs::create_dir_all][39799]
    + [No longer caching stdio on Windows][40516]
    + [Optimized insertion sort in slice][40807] insertion sort in some cases
      2.50%~ faster and in one case now 12.50% faster.
    + [Optimized `AtomicBool::fetch_nand`][41143]
- Stabilized APIs:
    + [`Child::try_wait`]
    + [`HashMap::retain`]
    + [`HashSet::retain`]
    + [`PeekMut::pop`]
    + [`TcpStream::peek`]
    + [`UdpSocket::peek`]
- Misc:
    + [rustdoc can now use pulldown-cmark with the `--enable-commonmark` flag][40338]
    + [Added rust-winbg script for better debugging on Windows][39983]
    + [Rust now uses the official cross compiler for NetBSD][40612]
    + [rustdoc now accepts `#` at the start of files][40828]
    + [Fixed jemalloc support for musl][41168]
- Compatibility Notes:
    + [Changes to how the `0` flag works in format!][40241] Padding zeroes are now
      always placed after the sign if it exists and before the digits. With the `#`
      flag the zeroes are placed after the prefix and before the digits.
    + [Due to the struct field optimisation][40377], using `transmute` on structs
      that have no `repr` attribute or `#[repr(Rust)]` will no longer work. This has
      always been undefined behavior, but is now more likely to break in practice.
    + [The refactor of trait object type parsing][40043] fixed a bug where `+` was
      receiving the wrong priority parsing things like `&for<'a> Tr<'a> + Send` as
      `&(for<'a> Tr<'a> + Send)` instead of `(&for<'a> Tr<'a>) + Send`
    + [Overlapping inherent `impl`s are now a hard error][40728]
    + [`PartialOrd` and `Ord` must agree on the ordering.][41270]
    + [`rustc main.rs -o out --emit=asm,llvm-ir`][41085] Now will output
      `out.asm` and `out.ll` instead of only one of the filetypes.
    + [ calling a function that returns `Self` will no longer work][41805] when
      the size of `Self` cannot be statically determined.
    + [rustc now builds with a "pthreads" flavour of MinGW for Windows GNU][40805]
      this has caused a few regressions namely:
    + Changed the link order of local static/dynamic libraries (respecting the
      order on given rather than having the compiler reorder).
    + Changed how MinGW is linked, native code linked to dynamic libraries
      may require manually linking to the gcc support library (for the native
      code itself)
- Adjustment of rust version dependency to prevent inability to
  build in the adi rings.
- Add the cargo binaries for each arch, used for building rust only
  these are not shipped, and don't factor in to the final product.
- Revert restriction of x86 arch to i586 for the interim.
- Update to 1.17.0
- Language updates
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
- Updates to libraries
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
- Misc
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility Notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Restrict x86 builds to i686 only.
- Revert restriction on previous rust versions used for building
- Change x86 build target from i586 to i686
- Switch .spec to use rust-build compilation system
- Update config.toml to reflect rust-build changes
- Strict versioning for compilation so rustc always use previous
  stable compiler
- Update to 1.16.0
- Language updates
    * Lifetimes in statics and consts default to `'static`. [RFC 1623]
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
      
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]
    * [`Duration::checked_sub`]
    * [`Duration::checked_div`]
    * [`Duration::checked_mul`]
    * [`str::replacen`]
    * [`str::repeat`]
    * [`SocketAddr::is_ipv4`]
    * [`SocketAddr::is_ipv6`]
    * [`IpAddr::is_ipv4`]
    * [`IpAddr::is_ipv6`]
    * [`Vec::dedup_by`]
    * [`Vec::dedup_by_key`]
    * [`Result::unwrap_or_default`]
    * [`<*const T>::wrapping_offset`]
    * [`<*mut T>::wrapping_offset`]
    * `CommandExt::creation_flags`
    * [`File::set_permissions`]
    * [`String::split_off`]
    
- Library updates
    * [`[T]::binary_search` and `[T]::binary_search_by_key` now take
      their argument by `Borrow` parameter][37761]
    * [All public types in std implement `Debug`][38006]
    * [`IpAddr` implements `From<Ipv4Addr>` and `From<Ipv6Addr>`][38327]
    * [`Ipv6Addr` implements `From<[u16; 8]>`][38131]
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [std: Fix partial writes in `LineWriter`][38062]
    * [std: Clamp max read/write sizes on Unix][38062]
    * [Use more specific panic message for `&str` slicing errors][38066]
    * [`TcpListener::set_only_v6` is deprecated][38304]. This
      functionality cannot be achieved in std currently.
    * [`writeln!`, like `println!`, now accepts a form with no string
      or formatting arguments, to just print a newline][38469]
    * [Implement `iter::Sum` and `iter::Product` for `Result`][38580]
    * [Reduce the size of static data in `std_unicode::tables`][38781]
    * [`char::EscapeDebug`, `EscapeDefault`, `EscapeUnicode`,
      `CaseMappingIter`, `ToLowercase`, `ToUppercase`, implement
      `Display`][38909]
    * [`Duration` implements `Sum`][38712]
    * [`String` implements `ToSocketAddrs`][39048]
    
- Misc fixes
    * [`rustdoc` has a `--sysroot` argument that, like `rustc`, specifies
      the path to the Rust implementation][38589]
    * [The `armv7-linux-androideabi` target no longer enables NEON
      extensions, per Google's ABI guide][38413]
    * [The stock standard library can be compiled for Redox OS][38401]
    * [Rust has initial SPARC support][38726]. Tier 3. No builds
      available.
    * [Rust has experimental support for Nvidia PTX][38559]. Tier 3. No
      builds available.
    * [Fix backtraces on i686-pc-windows-gnu by disabling FPO][39379]
- Compatibility notes
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * In this release, references to uninhabited types can not be
      pattern-matched. This was accidentally allowed in 1.15.
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Ctrl-Z returns from `Stdin.read()` when reading from the console on
      Windows][38274]
    * [Clean up semantics of `self` in an import list][38313]
- Remove duplicate license files from _docdir: rpm 4.13 no longer
  implicitly packages those files and we catch them using %license,
- remove bootstrap for s390x as binaries are available in 
  openSUSE:Factory:zSystems
- Fixes to build for archs armv7, aarch64, ppc64, s390x
- Update to 1.15.1
- Fix IntoIter::as_mut_slice's signature
- Correct rust-triples use in spec.
- Update to 1.15.0
- Language updates
	* Basic procedural macros allowing custom `#[derive]`, aka "macros 1.1", are
	stable. This allows popular code-generating crates like Serde and Diesel to
	work ergonomically. [RFC 1681].
	* [Tuple structs may be empty. Unary and empty tuple structs may be instantiated
	with curly braces][36868]. Part of [RFC 1506].
	* [A number of minor changes to name resolution have been activated][37127].
	They add up to more consistent semantics, allowing for future evolution of
	Rust macros. Specified in [RFC 1560], see its section on ["changes"] for
	details of what is different. The breaking changes here have been transitioned
	through the [`legacy_imports`] lint since 1.14, with no known regressions.
	* [In `macro_rules`, `path` fragments can now be parsed as type parameter
	bounds][38279]
	* [`?Sized` can be used in `where` clauses][37791]
	* [There is now a limit on the size of monomorphized types and it can be
	modified with the `#![type_size_limit]` crate attribute, similarly to
	the `#![recursion_limit]` attribute][37789]
- Compiler changes
	* [On Windows, the compiler will apply dllimport attributes when linking to
	extern functions][37973]. Additional attributes and flags can control which
	library kind is linked and its name. [RFC 1717].
	* [Rust-ABI symbols are no longer exported from cdylibs][38117]
	* [The `--test` flag works with procedural macro crates][38107]
	* [Fix `extern "aapcs" fn` ABI][37814]
	* [The `-C no-stack-check` flag is deprecated][37636]. It does nothing.
	* [The `format!` expander recognizes incorrect `printf` and shell-style
	formatting directives and suggests the correct format][37613].
	* [Only report one error for all unused imports in an import list][37456]
- Compiler performance
	* [Avoid unnecessary `mk_ty` calls in `Ty::super_fold_with`][37705]
	* [Avoid more unnecessary `mk_ty` calls in `Ty::super_fold_with`][37979]
	* [Don't clone in `UnificationTable::probe`][37848]
	* [Remove `scope_auxiliary` to cut RSS by 10%][37764]
	* [Use small vectors in type walker][37760]
	* [Macro expansion performance was improved][37701]
	* [Change `HirVec<P<T>>` to `HirVec<T>` in `hir::Expr`][37642]
	* [Replace FNV with a faster hash function][37229]
- For full change list, please see
	https://raw.githubusercontent.com/rust-lang/rust/master/RELEASES.md
- Adjust build so that aarch and ARM architectures use bootstrap for
  initial build
- Fix provides/conflicts/obsoletes
- Remove patch 0001-Fix-armv7-autodetection.patch
    + appears to have been fixed upstream.
- Building armv7hl arch with bootstrap binary since previously
  packaged versions haven't successfully built in the past
- Update to version 1.14.0
    + Announcement: https://blog.rust-lang.org/2016/12/22/Rust-1.14.html
    + Details: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1140-2016-12-22
- Release highlights:
    + support for RFC 1492. This small addition lets you use `..`
    in more places, for example when destructuring a struct or tuple
    + println!(), with no arguments, prints newline
    + Wrapping impls standard binary and unary operators on
    references, as well as the Sum and Product iterators, making
    references to these types easier to use
    + Implement From<Cow<str>> for String and From<Cow<[T]>> for
    Vec<T>. These implementations make sense, but were not yet added.
    + Expand .zip() specialization to .map() and .cloned() for
    improved performance.
    + Implement RefUnwindSafe for atomic types, as these types are
    “unwind safe,” though that wasn’t obvious at first.
    + Specialize Vec::extend to Vec::extend_from_slice for
    performance gains.
    + Don’t reuse HashMap random seeds. This helps to mitigate one
    type of DDoS attack.
    + The internal memory layout of HashMap is more cache-friendly,
    for significant improvements in some operations
    + Impl Add<{str, Cow<str>}> for Cow<str>. We already support Add
    for other string types, so not having it on Cow is inconsistent.
- Update to 1.13.0
- Add conflicts to help avoid situations where previous versions
  or rustc-bootstrap may be installed
- Update to 1.12.1
- Remove patches:
    + 0003-Disable-embedding-timestamp-information.patch - fixed
      by upstream
    + 0002-Add-armv6l-autodetection.patch - no-longer viable
- Revert from v1.13 to v1.11 in preparation for alternative 
  packaging.
- Add 0001-Fix-armv7-autodetection.patch
- Add 0002-Add-armv6l-autodetection.patch
  * fix armv6 and armv7 builds
- Update to 1.11
  + Add support for cdylib crate types
- Remove merged patches:
  * 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
  * 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Set DT_SONAME when building dylibs
  * Add add-soname.patch
- Move to package named rust 
- Update to 1.10
    + -C panic=abort flag for rustc or equivalent in Cargo.toml
    + new crate type cdylib, embeded library for other languages
    + In addition, a number of performance improvements landed in
      the compiler, and so did a number of usability improvements
      across the documentation, rustdoc itself, and various error
      messages.
    + This is the first release, which is guaranteed to be built
    by previous stable release of rustc
- Packaging:
    + drop bootstrap mode and use rustc 1.9
    + move documentation to versioned directory
- Use smp_mflags for parallel building. Avoid sh invocation for
  simple ldconfig calls. Drop archaic %clean section.
  Drop filler words from summary.
- Rename source package to rustc-1_9 to conform to naming standards. 
- Rename source package to rustc-190 to avoid unecessary rebuilds
  of rustc packages on upgrade
- Move stage0 binaries into separate package
- Disable embedding timestamp information
- Add 0003-Disable-embedding-timestamp-information.patch
- Rename package to rustc-stable
- Add rpmlintrc
- Make bootstrapping conditional
- Fix misleading indentation errors on GCC 6.0
- Remove snap2.sh
- Add 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch 
- Add 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch
- Update to version 1.9.0
    + Stabilization of std::panic
    + Deprecation warnings, #[deprecated] attribute
    + Compile time improvements
    + Rolling out use of specialization
    + Library stabilizations
      About 80 library functions and methods are now stable in 1.
    + http://blog.rust-lang.org/2016/05/26/Rust-1.9.html
- Update to version 1.8.0:
    + Various “operator equals” operators, such as += and -=, are now
      overloadable via various traits.
    + Empty struct declaration can contain cutly braces
    + New (non default) cargo based build system for rustc
    + About 20 library functions and methods are now stable in 1.8
- Update to version 1.7.0:
    + Many stabilized APIs
    + Improved library performance
    + BTreeSet and its iterators, Iter, IntoIter, and Range are covariant over their contained type.
    + LinkedList and its iterators, Iter and IntoIter are covariant over their contained type.
    + str::replace now accepts a Pattern, like other string searching methods.
    + Any is implemented for unsized types.
    + Hash is implemented for Duration.
    + Soundness fixes, may break code. See RFC 1214 for more information.
    + Several bugs in the compiler's visibility calculations were fixed.
    + Parsing "." as a float results in an error instead of 0.
    + Borrows of closure parameters may not outlive the closure.
- Update to version 1.6.0:
    + Stabilization of libcore and other library functions
    + Crates.io disallows wildcards
- Update to version 1.4.0:
    + Several changes have been made to fix type soundness and improve the
    behavior of associated types. See RFC 1214. Although we have mostly
    introduced these changes as warnings this release, to become errors next
    release, there are still some scenarios that will see immediate breakage.
    + The str::lines and BufRead::lines iterators treat \r\n as line breaks in
    addition to \n.
    + Loans of 'static lifetime extend to the end of a function.
    + str::parse no longer introduces avoidable rounding error when parsing
    floating point numbers. Together with earlier changes to float
    formatting/output, "round trips" like f.to_string().parse() now preserve
    the value of f exactly.  Additionally, leading plus signs are now accepted.
- Split the gdb support to rust-gdb subpackage
- Update to version 1.3.0:
    + API stabilization, including the new Duration API and
    enhancements to Error and Hash/Hasher.
    + The substring matcher now uses a more efficient algorithm.
    + There were improvements to zero filling that speed up
    Vec::resize and Read::read_to_end.
    + The implementation of Read::read_to_end has been specialized
    for stdin and File, resulting in additional speedups.
    + The PartialEq implementation on slices is now much faster.
- Packaging: renamed source package to rustc to match upstream
- Update to version 1.2.0:
    + An across-the-board improvement to real-world compiler performance.
    Representative crates include hyper (compiles 1.16x faster), html5ever
    (1.62x faster), regex (1.32x faster) and rust-encoding (1.35x faster). You
    can explore some of this performance data at Nick Cameron’s preliminary
    tracking site, using dates 2015-05-15 to 2015-06-25.
    + Parallel codegen is now working, and produces a 33% speedup when
    bootstrapping on a 4 core machine. Parallel codegen is particularly useful
    for debug builds, since it prevents some optimizations; but it can also be
    used with optimizations as an effective -O1 flag. It can be activated
    by passing -C codegen-units=N to rustc, where N is the desired number
    of threads.
- Update to version 1.1.0:
  + The std::fs module has been expanded to expand the set of
    functionality exposed:
    * DirEntry now supports optimizations like file_type and
      metadata which don't incur a syscall on some platforms.
    * A symlink_metadata function has been added.
    * The fs::Metadata structure now lowers to its OS counterpart,
      providing access to all underlying information.
  + The compiler now contains extended explanations of many errors.
    When an error with an explanation occurs the compiler suggests
    using the --explain flag to read the explanation. Error
    explanations are also available online.
  + Thanks to multiple improvements to type checking, as well as other
    work, the time to bootstrap the compiler decreased by 32%.
- drop tar_scm service and use source urls
- Update to version 1.0.0:
  + lint: deny transmuting from immutable to mutable, since it's undefined behavior
  + std: update select internals to not use mutable transmuting
  + std: Remove index notation on slice iterators
  + std: Destabilize io::BufStream
  + Make RwLock::try_write try to obtain a write lock
  + std: Remove addition on vectors for now
  + thread: right now you can't actually set those printers
  + Fix #24872, XSS in docs not found page.
  + Update AUTHORS.txt and RELEASES.md for 1.0
  + std: Mark `mem::forget` as a safe function
  + core: impl AsRef<[u8]> for str
  + collections: impl AsRef<[u8]> for String
  + collections: change bounds of SliceConcatExt implementations to use Borrow instead of AsRef
  + Fix invalid references due to the automated string substitution
  + dropck: must assume `Box<Trait + 'a>` has a destructor of interest.
- Rename binary package to rust
- Add build for i586
- Only run fdupes on SUSE builds
- Changed version format
- Update to version 1.0.0~beta4+git.1430848988.f873dc5:
  + Introduce a `FreeRegionMap` data structure. (#22779)
  + Fix #20616
  + std: Fix inheriting standard handles on windows
  + Fix #24895.
  + Fix zero-normalization of the pos of a `MultiByteChar`.
  + lint for mixing `#[repr(C)]` with an impl of `Drop`.
  + Bump prerelease version to .4
  + Add downcasting to std::error::Error
- Format spec file
- Update to version 1.0.0beta3+git.1429985089.5241bf9:
  + Update Windows caveats
  + Utilize if..let for get_mut doc-comment examples
  + Indicate keywords are code-like in Fuse::reset_fuse doc comment
  + doc: improve/fix 'let' FAQ
  + Fix broken links in the docs
  + Indicate None is code-like in doc comments
  + Fixed typo in hash_map::Entry documentation
  + Remove an unused import on windows
- Version 1.0.0-beta3.

OBS-URL: https://build.opensuse.org/request/show/520549
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=114
2017-09-04 03:30:42 +00:00
Luke Jones
ea08d07467 Accepting request 520543 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/520543
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=113
2017-09-03 20:37:39 +00:00
Luke Jones
84a53ea00a Accepting request 520410 from home:luke_nukem:branches:devel:languages:rust
- adjust build process and add package for Rust source
- Update to version 1.19
- Language updates:
  + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506]
    For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`.
  + [Macro recursion limit increased to 1024 from 64.][41676]
  + [Added lint for detecting unused macros.][41907]
  + [`loop` can now return a value with `break`.][42016] [RFC 1624]
    For example: `let x = loop { break 7; };`
  + [C compatible `union`s are now available.][42068] [RFC 1444] They can only
    contain `Copy` types and cannot have a `Drop` implementation.
    Example: `union Foo { bar: u8, baz: usize }`
  + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558]
    Example: `let foo: fn(u8) -> u8 = |v: u8| { v };`
- Compiler updates:
  + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370]
  + [Change `arm-linux-androideabi` to correspond to the `armeabi`
    official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI
    you should use `--target armv7-linux-androideabi`.
  + [Fixed ICE when removing a source file between compilation sessions.][41873]
  + [Minor optimisation of string operations.][42037]
  + [Compiler error message is now `aborting due to previous error(s)` instead of
    `aborting due to N previous errors`][42150] This was previously inaccurate and
    would only count certain kinds of errors.
  + [The compiler now supports Visual Studio 2017][42225]
  + [The compiler is now built against LLVM 4.0.1 by default][42948]
  + [Added a lot][42264] of [new error codes][42302]
  + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows
    libraries with C Run-time Libraries(CRT) to be statically linked.
  + [Fixed various ARM codegen bugs][42740]
- Librarie updates:
  + [`String` now implements `FromIterator<Cow<'a, str>>` and
    `Extend<Cow<'a, str>>`][41449]
  + [`Vec` now implements `From<&mut [T]>`][41530]
  + [`Box<[u8]>` now implements `From<Box<str>>`][41258]
  + [`SplitWhitespace` now implements `Clone`][41659]
  + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now
    1.5x faster][41764]
  + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!`
    macros, but for printing to stderr.
- Stabilized APIs
  + [`OsString::shrink_to_fit`]
  + [`cmp::Reverse`]
  + [`Command::envs`]
  + [`thread::ThreadId`]
  
- Misc
  + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the
    Windows Debugger.
  + [Rust will now release XZ compressed packages][rust-installer/57]
  + [rustup will now prefer to download rust packages with
    XZ compression][rustup/1100] over GZip packages.
  + [Added the ability to escape `#` in rust documentation][41785] By adding
    additional `#`'s ie. `##` is now `#`
- Temporarily disable generation of compiler docs due to build issue

OBS-URL: https://build.opensuse.org/request/show/520410
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=112
2017-09-03 19:08:10 +00:00
Luke Jones
876b9d2c70 Accepting request 503550 from home:luke_nukem:branches:devel:languages:rust
Change i586 build to produce i686 instead.
May cause issues on i586 hardware if it is still in use (not likely).

OBS-URL: https://build.opensuse.org/request/show/503550
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=110
2017-06-14 06:25:34 +00:00
Luke Jones
ef4d6663ef Accepting request 502505 from home:luke_nukem:branches:devel:languages:rust
Update to v1.18.0

OBS-URL: https://build.opensuse.org/request/show/502505
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=109
2017-06-09 08:26:16 +00:00
Luke Jones
2c0d88b8e4 Accepting request 494000 from home:luke_nukem:branches:devel:languages:rust
Fix dependencies

OBS-URL: https://build.opensuse.org/request/show/494000
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=107
2017-05-10 07:11:46 +00:00
Luke Jones
097b4d287e Accepting request 492208 from home:luke_nukem:branches:devel:languages:rust
Fix silly error (misplaced 'z')

OBS-URL: https://build.opensuse.org/request/show/492208
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=106
2017-04-30 06:59:06 +00:00
Luke Jones
d9ef151cf5 Accepting request 492185 from home:luke_nukem:branches:devel:languages:rust
Attempt to fix build loop rust<->cargo by including cargo binaries for each arch

OBS-URL: https://build.opensuse.org/request/show/492185
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=105
2017-04-30 06:28:06 +00:00
Luke Jones
8e933b8761 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=104 2017-04-28 21:36:38 +00:00
Luke Jones
445e4444f7 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=103 2017-04-28 11:14:03 +00:00
Luke Jones
8abbd328cc OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=102 2017-04-28 03:42:51 +00:00
Luke Jones
d41ed167f2 Accepting request 491720 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/491720
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=101
2017-04-28 03:15:42 +00:00
Luke Jones
6167565987 Rework of the spec for building.
- Restricts version required for compilation
- Uses rust-build

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=99
2017-03-28 02:38:57 +00:00
Luke Jones
6c6b9c9ffa OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=98 2017-03-25 19:24:18 +00:00
Luke Jones
78cb4d9c91 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=97 2017-03-24 02:54:22 +00:00
Luke Jones
39b50ef005 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=96 2017-03-24 01:57:20 +00:00
Luke Jones
709f026957 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=95 2017-03-23 21:51:29 +00:00
Luke Jones
8d3ab4be55 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=94 2017-03-23 21:50:49 +00:00
Luke Jones
bcd4a406a1 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=93 2017-03-23 19:57:20 +00:00
Luke Jones
56a186d5a8 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=92 2017-03-23 19:53:08 +00:00
Luke Jones
bf55a8ce19 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=91 2017-03-23 09:31:00 +00:00
Luke Jones
1969f62690 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=90 2017-03-23 09:26:48 +00:00
Luke Jones
3c95aaa3ed OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=89 2017-03-23 09:24:40 +00:00
Luke Jones
1016505245 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=88 2017-03-23 09:24:19 +00:00
Luke Jones
34e858afb3 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=87 2017-03-23 09:04:30 +00:00
Luke Jones
c3624e9af9 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=86 2017-03-23 09:01:23 +00:00
Luke Jones
00a579d8ce OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=85 2017-03-23 08:36:45 +00:00
Luke Jones
7c2e5178f9 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=84 2017-03-22 05:40:48 +00:00
Luke Jones
c95311bf32 Accepting request 481904 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/481904
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=83
2017-03-22 05:18:22 +00:00
Luke Jones
2c12758fc1 Accepting request 481900 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/481900
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=82
2017-03-22 03:21:12 +00:00
Luke Jones
b38e308e7b - Update to 1.16.0
- Language updates
    * Lifetimes in statics and consts default to `'static`. [RFC 1623]
    * [The compiler's `dead_code` lint now accounts for type aliases][38051].
    * [Uninhabitable enums (those without any variants) no longer permit wildcard
      match patterns][38069]
    * [Clean up semantics of `self` in an import list][38313]
    * [`Self` may appear in `impl` headers][38920]
    * [`Self` may appear in struct expressions][39282]
- Compiler updates
    * [`rustc` now supports `--emit=metadata`, which causes rustc to emit
      a `.rmeta` file containing only crate metadata][38571]. This can be
      used by tools like the Rust Language Service to perform
      metadata-only builds.
    * [Levenshtein based typo suggestions now work in most places, while
      previously they worked only for fields and sometimes for local
      variables][38927]. Together with the overhaul of "no
      resolution"/"unexpected resolution" errors (#[38154]) they result in
      large and systematic improvement in resolution diagnostics.
    * [Fix `transmute::<T, U>` where `T` requires a bigger alignment than
      `U`][38670]
    * [rustc: use -Xlinker when specifying an rpath with ',' in it][38798]
    * [`rustc` no longer attempts to provide "consider using an explicit
      lifetime" suggestions][37057]. They were inaccurate.
      
- Stabilized APIs
    * [`VecDeque::truncate`]
    * [`VecDeque::resize`]
    * [`String::insert_str`]
    * [`Duration::checked_add`]

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=80
2017-03-17 06:03:21 +00:00
Luke Jones
9a075e3f38 Accepting request 479057 from home:dimstar:Factory
- Remove duplicate license files from _docdir: rpm 4.13 no longer
  implicitly packages those files and we catch them using %license,

OBS-URL: https://build.opensuse.org/request/show/479057
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=78
2017-03-14 19:23:20 +00:00
Luke Jones
34a5c8cd5c Accepting request 459969 from openSUSE:Factory:zSystems
- remove bootstrap for s390x as binaries are available in 
  openSUSE:Factory:zSystems

OBS-URL: https://build.opensuse.org/request/show/459969
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=76
2017-02-23 08:17:04 +00:00
Luke Jones
809d338045 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=73 2017-02-15 02:15:50 +00:00
Luke Jones
f9127d44bc OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=72 2017-02-15 00:12:35 +00:00
Luke Jones
8eb4debe4a OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=71 2017-02-14 20:37:43 +00:00
Luke Jones
d60fb8bad2 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=70 2017-02-14 20:37:10 +00:00
Luke Jones
1ffad44a95 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=69 2017-02-14 09:37:20 +00:00
Luke Jones
1a43cf6465 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=68 2017-02-14 09:35:33 +00:00
Luke Jones
f3ef5d0f6e OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=67 2017-02-14 09:31:28 +00:00
Luke Jones
9ed84e474b Update spec to bootstrap only for releases less than
TW or Leap 42.2. These releases as yet have no successful
builds for which to build n+1 versions.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=66
2017-02-14 02:26:36 +00:00
Luke Jones
f9b6a7ce5b Set conditional builds up correctly.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=63
2017-02-13 20:36:59 +00:00
Luke Jones
5c434839a1 Clean up previous modifications.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=62
2017-02-13 04:23:24 +00:00
Luke Jones
d95e60eefa Fix incorrect conditional tag
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=61
2017-02-13 04:13:22 +00:00
Luke Jones
a0dd104efa Add conditional for building for Leap 42.2 with bootstrap.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=60
2017-02-13 04:09:18 +00:00
Luke Jones
3e55321f25 Add conditionals for ARM, aarch64, ppc64, ppc64le to build using
bootstrap until n+1 version is released upstream.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=59
2017-02-13 04:04:45 +00:00
Luke Jones
bbd20fa1a8 Restrict build to to use rustc n-1 version.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=58
2017-02-13 03:45:30 +00:00
Luke Jones
7a34637a1f OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=56 2017-02-11 18:49:10 +00:00
Luke Jones
3694124264 Accepting request 456412 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/456412
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=55
2017-02-11 18:39:02 +00:00
Luke Jones
78bda059b8 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=54 2017-02-11 11:00:32 +00:00
Luke Jones
4960b8b57d OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=53 2017-02-11 10:56:21 +00:00
Luke Jones
217c5a47ec OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=52 2017-02-11 10:52:06 +00:00
Luke Jones
afc609bcba Accepting request 456385 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/456385
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=51
2017-02-11 09:48:47 +00:00
Luke Jones
f692d29948 Accepting request 456358 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/456358
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=49
2017-02-11 05:21:44 +00:00
Luke Jones
ef63fa83b1 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=48 2017-02-10 20:57:55 +00:00
Luke Jones
2b98259793 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=47 2017-02-10 20:53:47 +00:00
Luke Jones
15728433fa OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=46 2017-02-10 20:50:37 +00:00
Luke Jones
4db3205f93 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=45 2017-02-10 20:47:02 +00:00
Luke Jones
9c2ce4d768 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=43 2017-02-08 04:40:17 +00:00
Luke Jones
524223508d OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=42 2017-02-08 01:48:10 +00:00
Luke Jones
b392518f2e OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=41 2017-02-06 09:56:52 +00:00
Luke Jones
3c4f703ca1 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=40 2017-02-06 09:13:27 +00:00
Luke Jones
18379fe6cd OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=39 2017-02-06 09:09:48 +00:00
Luke Jones
fcd2e997b0 Correct rust-triples use in spec.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=38
2017-02-06 09:07:11 +00:00
Luke Jones
b925753ed9 Correct the rust-triples by removing them for now. Rely on OBS
- Remove rust-triples to rely on OBS

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=37
2017-02-06 08:38:07 +00:00
Luke Jones
a1ecdbb883 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=36 2017-02-06 08:28:22 +00:00
Luke Jones
f189933e4d - Update to 1.15.0
- Language updates
	* Basic procedural macros allowing custom `#[derive]`, aka "macros 1.1", are
	stable. This allows popular code-generating crates like Serde and Diesel to
	work ergonomically. [RFC 1681].
	* [Tuple structs may be empty. Unary and empty tuple structs may be instantiated
	with curly braces][36868]. Part of [RFC 1506].
	* [A number of minor changes to name resolution have been activated][37127].
	They add up to more consistent semantics, allowing for future evolution of
	Rust macros. Specified in [RFC 1560], see its section on ["changes"] for
	details of what is different. The breaking changes here have been transitioned
	through the [`legacy_imports`] lint since 1.14, with no known regressions.
	* [In `macro_rules`, `path` fragments can now be parsed as type parameter
	bounds][38279]
	* [`?Sized` can be used in `where` clauses][37791]
	* [There is now a limit on the size of monomorphized types and it can be
	modified with the `#![type_size_limit]` crate attribute, similarly to
	the `#![recursion_limit]` attribute][37789]
- Compiler changes
	* [On Windows, the compiler will apply dllimport attributes when linking to
	extern functions][37973]. Additional attributes and flags can control which
	library kind is linked and its name. [RFC 1717].
	* [Rust-ABI symbols are no longer exported from cdylibs][38117]
	* [The `--test` flag works with procedural macro crates][38107]
	* [Fix `extern "aapcs" fn` ABI][37814]
	* [The `-C no-stack-check` flag is deprecated][37636]. It does nothing.
	* [The `format!` expander recognizes incorrect `printf` and shell-style
	formatting directives and suggests the correct format][37613].
	* [Only report one error for all unused imports in an import list][37456]
- Compiler performance

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=35
2017-02-06 08:25:50 +00:00
Luke Jones
778c7e38e0 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=34 2017-02-01 09:42:03 +00:00
Luke Jones
d5be603897 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=33 2017-02-01 09:35:55 +00:00
Luke Jones
02b41e2182 - Adjust build so that aarch and ARM architectures use bootstrap for
initial build

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=31
2017-01-31 09:42:28 +00:00
Luke Jones
2b49e822b5 - Fix provides/conflicts/obsoletes
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=30
2017-01-31 04:25:56 +00:00
Luke Jones
9d3a3b3902 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=29 2017-01-31 04:14:42 +00:00
Luke Jones
7bf04bc990 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=28 2017-01-31 04:14:30 +00:00
Luke Jones
a4612e106a - Use the same provides/conflicts as rustc-bootstrap
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=27
2017-01-31 04:08:54 +00:00
Luke Jones
68145c97e7 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=26 2017-01-31 03:16:19 +00:00
Luke Jones
0c051b70c7 - Fix RPM conflicts.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=25
2017-01-31 03:15:13 +00:00
Luke Jones
0e25c140f9 Accepting request 452507 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/452507
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=23
2017-01-25 22:14:18 +00:00
Luke Jones
a1c48bbe77 Accepting request 447471 from home:luke_nukem:branches:devel:languages:rust
* update to v1.14.0
* cleanup spec
* build archv7hl using bootstrap binary since no previous package builds were successful

OBS-URL: https://build.opensuse.org/request/show/447471
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=22
2016-12-23 23:13:37 +00:00
Luke Jones
2f5f2f2954 Accepting request 446883 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/446883
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=21
2016-12-18 17:48:47 +00:00
Luke Jones
235dd914d5 Accepting request 446880 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/446880
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=20
2016-12-18 09:11:16 +00:00
Luke Jones
7324b477db Accepting request 446876 from home:luke_nukem:branches:devel:languages:rust
Update to 1.12.1

OBS-URL: https://build.opensuse.org/request/show/446876
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=19
2016-12-18 08:17:52 +00:00
Luke Jones
0e4a38e467 Accepting request 446855 from home:luke_nukem:branches:devel:languages:rust
Spec file changed to use either the previous packaged version or the rustc-bootstrap for building. v1.11.0 is currently using the bootstrap in an effort to get ARM arch versions up and running.

OBS-URL: https://build.opensuse.org/request/show/446855
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=18
2016-12-18 00:34:00 +00:00
Luke Jones
eb2298a262 - Revert from v1.13 to v1.11 in preparation for alternative
packaging.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=11
2016-12-16 23:28:41 +00:00
Luke Jones
ccecbe087b Accepting request 446549 from home:luke_nukem:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/446549
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=10
2016-12-16 04:07:08 +00:00
Kristoffer Gronlund
0cfbf98002 Accepting request 438487 from home:matwey:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/438487
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=9
2016-11-03 08:08:48 +00:00
Michal Vyskocil
bf3818f75d Accepting request 438072 from home:matwey:branches:devel:languages:rust
OBS-URL: https://build.opensuse.org/request/show/438072
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=8
2016-10-31 19:32:47 +00:00
Kristoffer Gronlund
8108225eac Try to fix Provides/Obsoletes for gdb subpackage
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=7
2016-10-26 08:48:07 +00:00
Kristoffer Gronlund
743ec85b28 Accepting request 437035 from home:KGronlund:branches:devel:languages:rust
- Update to 1.11
  + Add support for cdylib crate types
- Remove merged patches:
  * 0001-Fix-misleading-intentation-errors-on-gcc-6.0.patch
  * 0002-Fix-GCC-6-misleading-indentation-error-in-hoedown.patch

OBS-URL: https://build.opensuse.org/request/show/437035
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=5
2016-10-24 07:34:54 +00:00
Michal Vyskocil
73e6f43584 Accepting request 426134 from home:KGronlund:branches:devel:languages:rust
Revised packaging for rust-gdb to handle conflict
with rustc-1_9-gdb

OBS-URL: https://build.opensuse.org/request/show/426134
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=3
2016-09-09 11:49:01 +00:00
Kristoffer Gronlund
3030dfef14 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=2 2016-09-08 15:15:24 +00:00
Michal Vyskocil
029d4d490e Accepting request 424927 from home:KGronlund:branches:devel:languages:rust
Revised packaging suggestion for rust: Package as
rust from now on. Add Recommends: for cargo.

Will remove rustc-stable.

This makes it easier to submit new versions to
openSUSE:Factory, and easier for users to find
rust.

OBS-URL: https://build.opensuse.org/request/show/424927
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=1
2016-09-06 16:11:34 +00:00