Go to file
Luke Jones c5c57d02d8 Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust
- Update to version 1.32.0
- Language
  + 2018 edition
    - You can now use the `?` operator in macro definitions. The `?`
      operator allows you to specify zero or one repetitions similar to the `*` and
      `+` operators.
    - Module paths with no leading keyword like `super`, `self`, or `crate`, will
      now always resolve to the item (`enum`, `struct`, etc.) available in the
      module if present, before resolving to a external crate or an item the prelude.
      E.g.
      enum Color { Red, Green, Blue }
      use Color::*;
  + All editions
    - You can now match against `PhantomData<T>` types.
    - You can now match against literals in macros with the `literal`
      specifier. This will match against a literal of any type.
      E.g. `1`, `'A'`, `"Hello World"`
    - Self can now be used as a constructor and pattern for unit and tuple structs. E.g.
      struct Point(i32, i32);
      impl Point {
          pub fn new(x: i32, y: i32) -> Self {
              Self(x, y)
          }
          pub fn is_origin(&self) -> bool {
              match self {
                  Self(0, 0) => true,
                  _ => false,
              }
          }
      }
    - Self can also now be used in type definitions. E.g.
      enum List<T>
      where
          Self: PartialOrd<Self> // can write `Self` instead of `List<T>`
      {
          Nil,
          Cons(T, Box<Self>) // likewise here
      }
    - You can now mark traits with `#[must_use]`. This provides a warning if
      a `impl Trait` or `dyn Trait` is returned and unused in the program.
- Compiler
  + The default allocator has changed from jemalloc to the default allocator on
    your system. The compiler itself on Linux & macOS will still use
    jemalloc, but programs compiled with it will use the system allocator.
  + Added the `aarch64-pc-windows-msvc` target.
- Libraries
  + `PathBuf` now implements `FromStr`.
  - `Box<[T]>` now implements `FromIterator<T>`.
  - The `dbg!` macro has been stabilized. This macro enables you to
    easily debug expressions in your rust program. E.g.
    let a = 2;
    let b = dbg!(a * 2) + 1;
    //      ^-- prints: [src/main.rs:4] a * 2 = 4
    assert_eq!(b, 5);
  + The following APIs are now `const` functions and can be used in a
    `const` context.
    - `Cell::as_ptr`
    - `UnsafeCell::get`
    - `char::is_ascii`
    - `iter::empty`
    - `ManuallyDrop::new`
    - `ManuallyDrop::into_inner`
    - `RangeInclusive::start`
    - `RangeInclusive::end`
    - `NonNull::as_ptr`
    - `slice::as_ptr`
    - `str::as_ptr`
    - `Duration::as_secs`
    - `Duration::subsec_millis`
    - `Duration::subsec_micros`
    - `Duration::subsec_nanos`
    - `CStr::as_ptr`
    - `Ipv4Addr::is_unspecified`
    - `Ipv6Addr::new`
    - `Ipv6Addr::octets`
- Stabilized APIs
  + `i8::to_be_bytes`
  + `i8::to_le_bytes`
  + `i8::to_ne_bytes`
  + `i8::from_be_bytes`
  + `i8::from_le_bytes`
  + `i8::from_ne_bytes`
  + `i16::to_be_bytes`
  + `i16::to_le_bytes`
  + `i16::to_ne_bytes`
  + `i16::from_be_bytes`
  + `i16::from_le_bytes`
  + `i16::from_ne_bytes`
  + `i32::to_be_bytes`
  + `i32::to_le_bytes`
  + `i32::to_ne_bytes`
  + `i32::from_be_bytes`
  + `i32::from_le_bytes`
  + `i32::from_ne_bytes`
  + `i64::to_be_bytes`
  + `i64::to_le_bytes`
  + `i64::to_ne_bytes`
  + `i64::from_be_bytes`
  + `i64::from_le_bytes`
  + `i64::from_ne_bytes`
  + `i128::to_be_bytes`
  + `i128::to_le_bytes`
  + `i128::to_ne_bytes`
  + `i128::from_be_bytes`
  + `i128::from_le_bytes`
  + `i128::from_ne_bytes`
  + `isize::to_be_bytes`
  + `isize::to_le_bytes`
  + `isize::to_ne_bytes`
  + `isize::from_be_bytes`
  + `isize::from_le_bytes`
  + `isize::from_ne_bytes`
  + `u8::to_be_bytes`
  + `u8::to_le_bytes`
  + `u8::to_ne_bytes`
  + `u8::from_be_bytes`
  + `u8::from_le_bytes`
  + `u8::from_ne_bytes`
  + `u16::to_be_bytes`
  + `u16::to_le_bytes`
  + `u16::to_ne_bytes`
  + `u16::from_be_bytes`
  + `u16::from_le_bytes`
  + `u16::from_ne_bytes`
  + `u32::to_be_bytes`
  + `u32::to_le_bytes`
  + `u32::to_ne_bytes`
  + `u32::from_be_bytes`
  + `u32::from_le_bytes`
  + `u32::from_ne_bytes`
  + `u64::to_be_bytes`
  + `u64::to_le_bytes`
  + `u64::to_ne_bytes`
  + `u64::from_be_bytes`
  + `u64::from_le_bytes`
  + `u64::from_ne_bytes`
  + `u128::to_be_bytes`
  + `u128::to_le_bytes`
  + `u128::to_ne_bytes`
  + `u128::from_be_bytes`
  + `u128::from_le_bytes`
  + `u128::from_ne_bytes`
  + `usize::to_be_bytes`
  + `usize::to_le_bytes`
  + `usize::to_ne_bytes`
  + `usize::from_be_bytes`
  + `usize::from_le_bytes`
  + `usize::from_ne_bytes`
- Cargo
  + You can now run `cargo c` as an alias for `cargo check`.][cargo/6218]
  + Usernames are now allowed in alt registry URLs.][cargo/6242]
- Misc
  + `libproc_macro` has been added to the `rust-src` distribution.
- Compatibility Notes
  + The argument types for AVX's
  `_mm256_stream_si256`, `_mm256_stream_pd`, `_mm256_stream_ps` have
  been changed from `*const` to `*mut` as the previous implementation
  was unsound.

OBS-URL: https://build.opensuse.org/request/show/667330
OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=179
2019-01-22 01:49:01 +00:00
_constraints Accepting request 656172 from home:luke_nukem:branches:devel:languages:rust 2018-12-10 22:23:11 +00:00
.gitattributes Accepting request 424927 from home:KGronlund:branches:devel:languages:rust 2016-09-06 16:11:34 +00:00
.gitignore Accepting request 424927 from home:KGronlund:branches:devel:languages:rust 2016-09-06 16:11:34 +00:00
ignore-Wstring-conversion.patch Accepting request 646330 from home:luke_nukem:branches:devel:languages:rust 2018-11-05 08:18:23 +00:00
rust-1.31.1-aarch64-unknown-linux-gnu.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-arm-unknown-linux-gnueabihf.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-armv7-unknown-linux-gnueabihf.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-i686-unknown-linux-gnu.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-powerpc64-unknown-linux-gnu.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-powerpc64le-unknown-linux-gnu.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-s390x-unknown-linux-gnu.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-1.31.1-x86_64-unknown-linux-gnu.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust-rpmlintrc Accepting request 646330 from home:luke_nukem:branches:devel:languages:rust 2018-11-05 08:18:23 +00:00
rust.changes Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rust.spec Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00
rustc-1.32.0-src.tar.xz Accepting request 667330 from home:luke_nukem:branches:devel:languages:rust 2019-01-22 01:49:01 +00:00