Accepting request 688403 from home:federico-mena:branches:devel:languages:rust
- Use the system's LLVM in SLE15-SP1. That distribution has LLVM7, and we need to use it there, instead of any other version. - Prevent auto-provides from being created for things under rustlibdir, so the RPM does not inadvertently have a Provides for a bundled LLVM and the Rust library files. - Sync changes files between SLE and openSUSE, for ease of maintenance. OBS-URL: https://build.opensuse.org/request/show/688403 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=209
This commit is contained in:
parent
9dca7ce326
commit
5853a824ca
79
rust.changes
79
rust.changes
@ -1,3 +1,13 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 25 16:09:44 UTC 2019 - Federico Mena Quintero <federico@suse.com>
|
||||||
|
|
||||||
|
- Use the system's LLVM in SLE15-SP1. That distribution has LLVM7,
|
||||||
|
and we need to use it there, instead of any other version.
|
||||||
|
- Prevent auto-provides from being created for things under
|
||||||
|
rustlibdir, so the RPM does not inadvertently have a Provides for a
|
||||||
|
bundled LLVM and the Rust library files.
|
||||||
|
- Sync changes files between SLE and openSUSE, for ease of maintenance.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Mar 22 00:02:26 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
Fri Mar 22 00:02:26 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
||||||
|
|
||||||
@ -43,17 +53,17 @@ Sat Mar 2 05:17:36 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
|||||||
expression. E.g.
|
expression. E.g.
|
||||||
```
|
```
|
||||||
enum Creature {
|
enum Creature {
|
||||||
Crab(String),
|
Crab(String),
|
||||||
Lobster(String),
|
Lobster(String),
|
||||||
Person(String),
|
Person(String),
|
||||||
}
|
}
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let state = Creature::Crab("Ferris");
|
let state = Creature::Crab("Ferris");
|
||||||
|
|
||||||
if let Creature::Crab(name) | Creature::Person(name) = state {
|
if let Creature::Crab(name) | Creature::Person(name) = state {
|
||||||
println!("This creature's name is: {}", name);
|
println!("This creature's name is: {}", name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
- You can now have irrefutable `if let` and `while let` patterns. Using
|
- You can now have irrefutable `if let` and `while let` patterns. Using
|
||||||
@ -65,7 +75,7 @@ Sat Mar 2 05:17:36 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
|||||||
```
|
```
|
||||||
const unsafe fn foo() -> i32 { 5 }
|
const unsafe fn foo() -> i32 { 5 }
|
||||||
const fn bar() -> i32 {
|
const fn bar() -> i32 {
|
||||||
unsafe { foo() }
|
unsafe { foo() }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
- You can now specify multiple attributes in a `cfg_attr` attribute.
|
- You can now specify multiple attributes in a `cfg_attr` attribute.
|
||||||
@ -183,6 +193,14 @@ Sat Feb 23 01:58:47 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
|||||||
prevent building everything twice (second time without correct
|
prevent building everything twice (second time without correct
|
||||||
flags).
|
flags).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 22 18:19:47 UTC 2019 - federico@suse.com
|
||||||
|
|
||||||
|
- Remove
|
||||||
|
CVE-2018-1000622-prevent-rustdoc-loads-uncontrolled-plugins-path.patch,
|
||||||
|
since rustdoc plugins are fixed since version 1.27.1 (bsc#1100691,
|
||||||
|
CVE-2018-1000622).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Jan 17 21:22:11 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
Thu Jan 17 21:22:11 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
||||||
|
|
||||||
@ -207,24 +225,24 @@ Thu Jan 17 21:22:11 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
|
|||||||
struct Point(i32, i32);
|
struct Point(i32, i32);
|
||||||
|
|
||||||
impl Point {
|
impl Point {
|
||||||
pub fn new(x: i32, y: i32) -> Self {
|
pub fn new(x: i32, y: i32) -> Self {
|
||||||
Self(x, y)
|
Self(x, y)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn is_origin(&self) -> bool {
|
pub fn is_origin(&self) -> bool {
|
||||||
match self {
|
match self {
|
||||||
Self(0, 0) => true,
|
Self(0, 0) => true,
|
||||||
_ => false,
|
_ => false,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
- Self can also now be used in type definitions. E.g.
|
- Self can also now be used in type definitions. E.g.
|
||||||
enum List<T>
|
enum List<T>
|
||||||
where
|
where
|
||||||
Self: PartialOrd<Self> // can write `Self` instead of `List<T>`
|
Self: PartialOrd<Self> // can write `Self` instead of `List<T>`
|
||||||
{
|
{
|
||||||
Nil,
|
Nil,
|
||||||
Cons(T, Box<Self>) // likewise here
|
Cons(T, Box<Self>) // likewise here
|
||||||
}
|
}
|
||||||
- You can now mark traits with `#[must_use]`. This provides a warning if
|
- 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.
|
a `impl Trait` or `dyn Trait` is returned and unused in the program.
|
||||||
@ -671,11 +689,11 @@ Update to version 1.30.0 (2018-10-25)
|
|||||||
trait Trait {}
|
trait Trait {}
|
||||||
|
|
||||||
impl Trait + Send {
|
impl Trait + Send {
|
||||||
fn test(&self) { println!("one"); } //~ ERROR duplicate definitions with name `test`
|
fn test(&self) { println!("one"); } //~ ERROR duplicate definitions with name `test`
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Trait + Send + Send {
|
impl Trait + Send + Send {
|
||||||
fn test(&self) { println!("two"); }
|
fn test(&self) { println!("two"); }
|
||||||
}
|
}
|
||||||
- Update to version 1.27.2:
|
- Update to version 1.27.2:
|
||||||
+ Compatibility Notes
|
+ Compatibility Notes
|
||||||
@ -774,6 +792,22 @@ Update to version 1.30.0 (2018-10-25)
|
|||||||
+ Misc
|
+ Misc
|
||||||
- Added “The Rustc book” into the official documentation.
|
- Added “The Rustc book” into the official documentation.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Oct 11 10:00:22 UTC 2018 - qkzhu@suse.com
|
||||||
|
|
||||||
|
- Add CVE-2018-1000622-prevent-rustdoc-loads-uncontrolled-plugins-path.patch:
|
||||||
|
+ This patch consists of requiring `--plugin-path` to be passed
|
||||||
|
whenever `--plugin` is passed
|
||||||
|
+ rustdoc plugins will be removed entirely on 1.28.0, we should
|
||||||
|
drop this patch after 1.28.0(bsc#1100691, CVE-2018-1000622).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 9 10:18:06 UTC 2018 - mschnitzer@suse.com
|
||||||
|
|
||||||
|
- Ship rust-std on SLE-15 (bsc#1096945)
|
||||||
|
|
||||||
|
No new changes came with this update of rust.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Jun 6 10:37:27 UTC 2018 - mmanu84@outlook.de
|
Wed Jun 6 10:37:27 UTC 2018 - mmanu84@outlook.de
|
||||||
|
|
||||||
@ -1933,4 +1967,3 @@ Wed Apr 29 13:07:54 UTC 2015 - opensuse-packaging@opensuse.org
|
|||||||
Wed Apr 29 12:56:15 UTC 2015 - kgronlund@suse.com
|
Wed Apr 29 12:56:15 UTC 2015 - kgronlund@suse.com
|
||||||
|
|
||||||
- Version 1.0.0-beta3.
|
- Version 1.0.0-beta3.
|
||||||
|
|
||||||
|
13
rust.spec
13
rust.spec
@ -13,7 +13,7 @@
|
|||||||
# license that conforms to the Open Source Definition (Version 1.9)
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
# published by the Open Source Initiative.
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
@ -57,12 +57,8 @@
|
|||||||
# Will build with distro LLVM by default, but the following
|
# Will build with distro LLVM by default, but the following
|
||||||
# versions do not have a version new enough, >= 6.0
|
# versions do not have a version new enough, >= 6.0
|
||||||
# add --without bundled_llvm option, i.e. enable bundled_llvm by default
|
# add --without bundled_llvm option, i.e. enable bundled_llvm by default
|
||||||
# Leap 15.0, SLE 15
|
# Leap 42 to 42.3, SLE12 SP1 to SLE12 SP3, Leap 15.0, SLE15 SP0
|
||||||
%if 0%{?sle_version} == 150000
|
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 150000
|
||||||
%bcond_without bundled_llvm
|
|
||||||
%endif
|
|
||||||
# Leap 42 to 42.3, SLE12 SP1 to SLE12 SP3
|
|
||||||
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120400
|
|
||||||
%bcond_without bundled_llvm
|
%bcond_without bundled_llvm
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -80,6 +76,9 @@
|
|||||||
# Use hardening ldflags.
|
# Use hardening ldflags.
|
||||||
%global rustflags -Clink-arg=-Wl,-z,relro,-z,now
|
%global rustflags -Clink-arg=-Wl,-z,relro,-z,now
|
||||||
|
|
||||||
|
# Exclude implicitly-scanned Provides, especially the libLLVM.so ones:
|
||||||
|
%global __provides_exclude_from ^%{rustlibdir}/.*$
|
||||||
|
|
||||||
Name: rust
|
Name: rust
|
||||||
Version: %{version_current}
|
Version: %{version_current}
|
||||||
Release: 0
|
Release: 0
|
||||||
|
Loading…
Reference in New Issue
Block a user