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>
</physicalmemory>
<disk>
<size unit="G">25</size>
<size unit="G">50</size>
</disk>
</hardware>
</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("rustfmt.x86_64: W: no-version-in-last-changelog")
# 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>
@ -43,17 +139,17 @@ Sat Mar 2 05:17:36 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
expression. E.g.
```
enum Creature {
Crab(String),
Lobster(String),
Person(String),
Crab(String),
Lobster(String),
Person(String),
}
fn main() {
let state = Creature::Crab("Ferris");
let state = Creature::Crab("Ferris");
if let Creature::Crab(name) | Creature::Person(name) = state {
println!("This creature's name is: {}", name);
}
if let Creature::Crab(name) | Creature::Person(name) = state {
println!("This creature's name is: {}", name);
}
}
```
- 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 fn bar() -> i32 {
unsafe { foo() }
unsafe { foo() }
}
```
- 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
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>
@ -207,24 +311,24 @@ Thu Jan 17 21:22:11 UTC 2019 - Luke Jones <jones_ld@protonmail.com>
struct Point(i32, i32);
impl Point {
pub fn new(x: i32, y: i32) -> Self {
Self(x, y)
}
pub fn new(x: i32, y: i32) -> Self {
Self(x, y)
}
pub fn is_origin(&self) -> bool {
match self {
Self(0, 0) => true,
_ => false,
}
}
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>`
Self: PartialOrd<Self> // can write `Self` instead of `List<T>`
{
Nil,
Cons(T, Box<Self>) // likewise here
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.
@ -671,11 +775,11 @@ Update to version 1.30.0 (2018-10-25)
trait Trait {}
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 {
fn test(&self) { println!("two"); }
fn test(&self) { println!("two"); }
}
- Update to version 1.27.2:
+ Compatibility Notes
@ -774,6 +878,22 @@ Update to version 1.30.0 (2018-10-25)
+ Misc
- 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
@ -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
- 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)
# 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_previous 1.32.0
%global version_bootstrap 1.32.0
%global version_current 1.34.0
%global version_previous 1.33.0
%global version_bootstrap 1.34.0
# some sub-packages are versioned independantly
%global rustfmt_version 1.0.0
%global rls_version 1.31.6
%global rustfmt_version 1.0.3
%global clippy_version 0.0.212
# Build the rust target triple.
# Some rust arches don't match what SUSE labels them.
@ -57,12 +56,8 @@
# Will build with distro LLVM by default, but the following
# versions do not have a version new enough, >= 6.0
# add --without bundled_llvm option, i.e. enable bundled_llvm by default
# Leap 15.0, SLE 15
%if 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
# Leap 42 to 42.3, SLE12 SP1 to SLE12 SP3, Leap 15.0, SLE15 SP0
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 150000
%bcond_without bundled_llvm
%endif
@ -80,6 +75,9 @@
# Use hardening ldflags.
%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
Version: %{version_current}
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
Source102: %{dl_url}/rust-%{version_bootstrap}-aarch64-unknown-linux-gnu.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
Source106: %{dl_url}/rust-%{version_bootstrap}-powerpc64le-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
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
# Leap 42 to 42.3, SLE12 SP1, SP2
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120200
@ -229,7 +224,6 @@ Group: Development/Languages/Rust
Requires: %{name} = %{version}
Requires: %{name}-analysis = %{version}
Requires: %{name}-src = %{version}
Provides: rls = %{rls_version}
%description -n rls
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
%patch0 -p1
%patch1 -p1
# use python3
sed -i -e "1s|#!.*|#!%{_bindir}/python3|" x.py
@ -358,8 +351,8 @@ rm -rf src/tools/lldb
rm -rf src/stdsimd/ci
# Remove hidden files from source
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 '.appveyor.yml' -exec rm -v '{}' '+'
find src/ -type f -name '.travis.yml' -exec rm -v '{}' '+'
%if !%with bundled_llvm
rm -rf src/llvm/
@ -408,7 +401,7 @@ fi
# BEGIN EXPORTS
# 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!
# If the environments between build and install and different,
# everything will be rebuilt during installation!
@ -429,7 +422,7 @@ export CPPFLAGS="%{optflags}"
%install
# BEGIN EXPORTS
# 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!
# If the environments between build and install and different,
# everything will be rebuilt during installation!
@ -457,6 +450,7 @@ rm %{buildroot}%{_docdir}/%{name}/html/.lock
# Sanitize the HTML documentation
find %{buildroot}%{_docdir}/%{name}/html -empty -delete
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
rm %{buildroot}%{_docdir}/%{name}/{README.md,COPYRIGHT,LICENSE*}
@ -518,6 +512,7 @@ rm -rf %{buildroot}%{_sysconfdir}
%files -n rust-gdb
%{_bindir}/rust-gdb
%{_bindir}/rust-gdbgui
%dir %{rustlibdir}
%dir %{rustlibdir}%{_sysconfdir}
%{rustlibdir}%{_sysconfdir}/debugger_pretty_printers_common.py
@ -587,4 +582,4 @@ rm -rf %{buildroot}%{_sysconfdir}
%dir %{_docdir}/cargo
%{_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