Accepting request 694775 from devel:languages:rust

OBS-URL: https://build.opensuse.org/request/show/694775
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/rust?expand=0&rev=36
This commit is contained in:
Dominique Leuenberger 2019-04-18 11:55:59 +00:00 committed by Git OBS Bridge
commit 438286c572
22 changed files with 186 additions and 87 deletions

View File

@ -36,7 +36,7 @@
<size unit="G">8</size> <size unit="G">8</size>
</physicalmemory> </physicalmemory>
<disk> <disk>
<size unit="G">25</size> <size unit="G">50</size>
</disk> </disk>
</hardware> </hardware>
</overwrite> </overwrite>

View File

@ -1,12 +0,0 @@
diff -u ./src/tools/tidy/src/features.rs ../rustc-1.33.0-src/src/tools/tidy/src/features.rs
--- ../rustc-1.33.0-src/src/tools/tidy/src/features.rs 2019-02-28 21:53:35.000000000 +1300
+++ ./src/tools/tidy/src/features.rs 2019-03-04 21:10:20.854805497 +1300
@@ -188,7 +188,7 @@
}
let mut parts = line.split(',');
- let level = match parts.next().map(|l| l.trim().trim_left_matches('(')) {
+ let level = match parts.next().map(|l| l.trim().trim_start_matches('(')) {
Some("active") => Status::Unstable,
Some("removed") => Status::Removed,
Some("accepted") => Status::Stable,

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a530cfc8aadd2cec3b8c63dfb46c940ad8b4b18131641a3da1601ec380619f11
size 116136352

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:456ea506cd920d3470ee935e239b1be2101abf21ec6547133fce8b0f80ee0448
size 117758664

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2e823316c841fe8459f49337fa0ca164df7b8a651e7b8fc4d3375c94766ac228
size 119183916

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:29c015ef1aa37f770e823fe7f000892448f9b5f2ca9ec381b6ad7b7a965b6054
size 146763596

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:237665793c41d794d339d383010d477e8d99025c407bf956a3c52ea51b90814b
size 120518816

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:93a85671ac11446bbedef67941591b06b3151b866df12c3a71d5940068d40bd0
size 124278796

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2ca4b078f3a1c23221f726668a26682651f515fdd8ba57827c87ea41b811006e
size 128857448

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e7ee1fc3c6e2d2dec4bfdc0b38ecc3a80828655bdf6bb44d97c7a9ea76134f86
size 147868652

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:86f94dd8a6fe33fb7acc0b62505a422013a3a36add461687faecfcd2ba550a56
size 120855004

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e99055411977d64d6404d8dd5188bdd26ae7c5e5215a67f26e901fe9c100b5fe
size 124648648

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4afdb869011750a55fe8bb0c80c88a222f8e4657e5fd1ae3d693a3015618d043
size 169552532

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4875891e355a655908e88779d6483f4ddb645ca686711697d0319bd3e4d4e47a
size 125810152

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b6acaf8b0937f0358dcb7d14bf658b7b2d35ae185dbecec3e466dfc9c05a47a0
size 129639888

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c99ea3b93ea9af3322b258102078b705ec61a116abf4ddc0669dc5eec1e61bba
size 134441480

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8182f18251f25de133c5b076ef32821e59a7a5b9eddf6417ac73d6415394a110
size 157382624

View File

@ -13,4 +13,4 @@ addFilter("rls.x86_64: W: no-version-in-last-changelog")
addFilter("rust-analysis.x86_64: W: no-version-in-last-changelog") addFilter("rust-analysis.x86_64: W: no-version-in-last-changelog")
addFilter("rustfmt.x86_64: W: no-version-in-last-changelog") addFilter("rustfmt.x86_64: W: no-version-in-last-changelog")
# error when building with bootstrap. ignore for now # error when building with bootstrap. ignore for now
addFilter(".*shlib-policy-name-error.*libLLVM-8svn.*") addFilter(".*shlib-policy-name-error.*libLLVM-8.*")

View File

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

View File

@ -13,16 +13,15 @@
# 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/
# #
%global version_current 1.33.0 %global version_current 1.34.0
%global version_previous 1.32.0 %global version_previous 1.33.0
%global version_bootstrap 1.32.0 %global version_bootstrap 1.34.0
# some sub-packages are versioned independantly # some sub-packages are versioned independantly
%global rustfmt_version 1.0.0 %global rustfmt_version 1.0.3
%global rls_version 1.31.6
%global clippy_version 0.0.212 %global clippy_version 0.0.212
# Build the rust target triple. # Build the rust target triple.
# Some rust arches don't match what SUSE labels them. # Some rust arches don't match what SUSE labels them.
@ -57,12 +56,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 +75,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
@ -93,14 +91,11 @@ Source100: %{dl_url}/rust-%{version_bootstrap}-x86_64-unknown-linux-gnu.tar
Source101: %{dl_url}/rust-%{version_bootstrap}-i686-unknown-linux-gnu.tar.xz Source101: %{dl_url}/rust-%{version_bootstrap}-i686-unknown-linux-gnu.tar.xz
Source102: %{dl_url}/rust-%{version_bootstrap}-aarch64-unknown-linux-gnu.tar.xz Source102: %{dl_url}/rust-%{version_bootstrap}-aarch64-unknown-linux-gnu.tar.xz
Source103: %{dl_url}/rust-%{version_bootstrap}-armv7-unknown-linux-gnueabihf.tar.xz Source103: %{dl_url}/rust-%{version_bootstrap}-armv7-unknown-linux-gnueabihf.tar.xz
Source104: %{dl_url}/rust-%{version_bootstrap}-arm-unknown-linux-gnueabihf.tar.xz
Source105: %{dl_url}/rust-%{version_bootstrap}-powerpc64-unknown-linux-gnu.tar.xz Source105: %{dl_url}/rust-%{version_bootstrap}-powerpc64-unknown-linux-gnu.tar.xz
Source106: %{dl_url}/rust-%{version_bootstrap}-powerpc64le-unknown-linux-gnu.tar.xz Source106: %{dl_url}/rust-%{version_bootstrap}-powerpc64le-unknown-linux-gnu.tar.xz
Source107: %{dl_url}/rust-%{version_bootstrap}-s390x-unknown-linux-gnu.tar.xz Source107: %{dl_url}/rust-%{version_bootstrap}-s390x-unknown-linux-gnu.tar.xz
# PATCH-FIX-OPENSUSE: edit src/librustc_llvm/build.rs to ignore GCC incompatible flag # PATCH-FIX-OPENSUSE: edit src/librustc_llvm/build.rs to ignore GCC incompatible flag
Patch0: ignore-Wstring-conversion.patch Patch0: ignore-Wstring-conversion.patch
# PATCH-FIX-OPENSUSE: replace depreciated trim_left_matches with trim_start_matches
Patch1: depreciated-trim_left_matches.patch
BuildRequires: ccache BuildRequires: ccache
# Leap 42 to 42.3, SLE12 SP1, SP2 # Leap 42 to 42.3, SLE12 SP1, SP2
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120200 %if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120200
@ -229,7 +224,6 @@ Group: Development/Languages/Rust
Requires: %{name} = %{version} Requires: %{name} = %{version}
Requires: %{name}-analysis = %{version} Requires: %{name}-analysis = %{version}
Requires: %{name}-src = %{version} Requires: %{name}-src = %{version}
Provides: rls = %{rls_version}
%description -n rls %description -n rls
The RLS provides a server that runs in the background, providing IDEs, The RLS provides a server that runs in the background, providing IDEs,
@ -342,7 +336,6 @@ This package includes HTML documentation for Cargo.
%setup -q -n rustc-%{version}-src %setup -q -n rustc-%{version}-src
%patch0 -p1 %patch0 -p1
%patch1 -p1
# use python3 # use python3
sed -i -e "1s|#!.*|#!%{_bindir}/python3|" x.py sed -i -e "1s|#!.*|#!%{_bindir}/python3|" x.py
@ -358,8 +351,8 @@ rm -rf src/tools/lldb
rm -rf src/stdsimd/ci rm -rf src/stdsimd/ci
# Remove hidden files from source # Remove hidden files from source
find src/ -type f -name '.appveyor.yml -exec rm -v '{}' '+' find src/ -type f -name '.appveyor.yml' -exec rm -v '{}' '+'
find src/ -type f -name '.travis.yml -exec rm -v '{}' '+' find src/ -type f -name '.travis.yml' -exec rm -v '{}' '+'
%if !%with bundled_llvm %if !%with bundled_llvm
rm -rf src/llvm/ rm -rf src/llvm/
@ -408,7 +401,7 @@ fi
# BEGIN EXPORTS # BEGIN EXPORTS
# Keep all the "export VARIABLE" together here, so they can be # Keep all the "export VARIABLE" together here, so they can be
# cut&pasted to the %install section below. And please keep them # cut&pasted to the %%install section below. And please keep them
# in sync! # in sync!
# If the environments between build and install and different, # If the environments between build and install and different,
# everything will be rebuilt during installation! # everything will be rebuilt during installation!
@ -429,7 +422,7 @@ export CPPFLAGS="%{optflags}"
%install %install
# BEGIN EXPORTS # BEGIN EXPORTS
# Keep all the "export VARIABLE" together here, so they can be # Keep all the "export VARIABLE" together here, so they can be
# cut&pasted to the %install section below. And please keep them # cut&pasted to the %%install section below. And please keep them
# in sync! # in sync!
# If the environments between build and install and different, # If the environments between build and install and different,
# everything will be rebuilt during installation! # everything will be rebuilt during installation!
@ -457,6 +450,7 @@ rm %{buildroot}%{_docdir}/%{name}/html/.lock
# Sanitize the HTML documentation # Sanitize the HTML documentation
find %{buildroot}%{_docdir}/%{name}/html -empty -delete find %{buildroot}%{_docdir}/%{name}/html -empty -delete
find %{buildroot}%{_docdir}/%{name}/html -type f -exec chmod -x '{}' '+' find %{buildroot}%{_docdir}/%{name}/html -type f -exec chmod -x '{}' '+'
find %{buildroot}%{_docdir}/%{name}/html -type f -name '.nojekyll' -exec rm -v '{}' '+'
# Remove the license files from _docdir: make install put duplicates there # Remove the license files from _docdir: make install put duplicates there
rm %{buildroot}%{_docdir}/%{name}/{README.md,COPYRIGHT,LICENSE*} rm %{buildroot}%{_docdir}/%{name}/{README.md,COPYRIGHT,LICENSE*}
@ -518,6 +512,7 @@ rm -rf %{buildroot}%{_sysconfdir}
%files -n rust-gdb %files -n rust-gdb
%{_bindir}/rust-gdb %{_bindir}/rust-gdb
%{_bindir}/rust-gdbgui
%dir %{rustlibdir} %dir %{rustlibdir}
%dir %{rustlibdir}%{_sysconfdir} %dir %{rustlibdir}%{_sysconfdir}
%{rustlibdir}%{_sysconfdir}/debugger_pretty_printers_common.py %{rustlibdir}%{_sysconfdir}/debugger_pretty_printers_common.py
@ -587,4 +582,4 @@ rm -rf %{buildroot}%{_sysconfdir}
%dir %{_docdir}/cargo %dir %{_docdir}/cargo
%{_docdir}/cargo/html %{_docdir}/cargo/html
%changelog %changelog

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f4b1a72f1a29b23dcc9d7be5f60878f0434560513273906aa93dcd5c0de39b71
size 100635400

3
rustc-1.34.0-src.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a510b3b7ceca370a4b395065039b2a70297e3fb4103b7ff67b1eff771fd98504
size 95055768