diff -Nru rust-rayon-core-1.5.0/debian/changelog rust-rayon-core-1.5.0/debian/changelog --- rust-rayon-core-1.5.0/debian/changelog 2019-07-14 07:56:18.000000000 +0000 +++ rust-rayon-core-1.5.0/debian/changelog 2019-07-17 04:03:14.000000000 +0000 @@ -1,3 +1,12 @@ +rust-rayon-core (1.5.0-2) unstable; urgency=medium + + * Package rayon-core 1.5.0 from crates.io using debcargo 2.3.1-alpha.0 + + [ kpcyrd ] + * Update the package to build with more recent version of crossbeam-deque + + -- Wolfgang Silbermayr Wed, 17 Jul 2019 06:03:14 +0200 + rust-rayon-core (1.5.0-1) unstable; urgency=medium * Package rayon-core 1.5.0 from crates.io using debcargo 2.3.1-alpha.0 diff -Nru rust-rayon-core-1.5.0/debian/control rust-rayon-core-1.5.0/debian/control --- rust-rayon-core-1.5.0/debian/control 2019-07-14 07:56:18.000000000 +0000 +++ rust-rayon-core-1.5.0/debian/control 2019-07-17 04:03:14.000000000 +0000 @@ -6,7 +6,7 @@ cargo:native , rustc:native , libstd-rust-dev , - librust-crossbeam-deque-0.6+default-dev (>= 0.6.3-~~) , + librust-crossbeam-deque-0.7+default-dev , librust-crossbeam-queue-0.1+default-dev (>= 0.1.2-~~) , librust-crossbeam-utils-0.6+default-dev (>= 0.6.5-~~) , librust-lazy-static-1+default-dev , @@ -24,7 +24,7 @@ Multi-Arch: same Depends: ${misc:Depends}, - librust-crossbeam-deque-0.6+default-dev (>= 0.6.3-~~), + librust-crossbeam-deque-0.7+default-dev, librust-crossbeam-queue-0.1+default-dev (>= 0.1.2-~~), librust-crossbeam-utils-0.6+default-dev (>= 0.6.5-~~), librust-lazy-static-1+default-dev, diff -Nru rust-rayon-core-1.5.0/debian/patches/crossbeam-0.7.patch rust-rayon-core-1.5.0/debian/patches/crossbeam-0.7.patch --- rust-rayon-core-1.5.0/debian/patches/crossbeam-0.7.patch 1970-01-01 00:00:00.000000000 +0000 +++ rust-rayon-core-1.5.0/debian/patches/crossbeam-0.7.patch 2019-07-17 04:03:14.000000000 +0000 @@ -0,0 +1,62 @@ +From e11aad9ff20deede59e89a00c62908ffb30b8fb6 Mon Sep 17 00:00:00 2001 +From: Aaron Hill +Date: Sun, 7 Jul 2019 14:47:20 -0400 +Subject: [PATCH] Update crossbeam-deque to 0.7 + +The only substantive change is to 'take_local_job'. +'Worker::pop` now returns a plain 'Option', so there's +no need to loop anymore + +diff --git a/src/registry.rs b/src/registry.rs +index 76567c37..928ba017 100644 +--- a/src/registry.rs ++++ b/src/registry.rs +@@ -1,4 +1,4 @@ +-use crossbeam_deque::{self as deque, Pop, Steal, Stealer, Worker}; ++use crossbeam_deque::{self as deque, Steal, Stealer, Worker}; + use crossbeam_queue::SegQueue; + #[cfg(rayon_unstable)] + use internal::task::Task; +@@ -224,11 +224,14 @@ impl Registry { + + let (workers, stealers): (Vec<_>, Vec<_>) = (0..n_threads) + .map(|_| { +- if breadth_first { +- deque::fifo() ++ let worker = if breadth_first { ++ deque::Worker::new_fifo() + } else { +- deque::lifo() +- } ++ deque::Worker::new_lifo() ++ }; ++ ++ let stealer = worker.stealer(); ++ (worker, stealer) + }) + .unzip(); + +@@ -674,13 +677,7 @@ impl WorkerThread { + /// bottom. + #[inline] + pub(super) unsafe fn take_local_job(&self) -> Option { +- loop { +- match self.worker.pop() { +- Pop::Empty => return None, +- Pop::Data(d) => return Some(d), +- Pop::Retry => {} +- } +- } ++ self.worker.pop() + } + + /// Wait until the latch is set. Try to keep busy by popping and +@@ -763,7 +760,7 @@ impl WorkerThread { + loop { + match victim.stealer.steal() { + Steal::Empty => return None, +- Steal::Data(d) => { ++ Steal::Success(d) => { + log!(StoleWork { + worker: self.index, + victim: victim_index diff -Nru rust-rayon-core-1.5.0/debian/patches/relax-dep-versions.patch rust-rayon-core-1.5.0/debian/patches/relax-dep-versions.patch --- rust-rayon-core-1.5.0/debian/patches/relax-dep-versions.patch 1970-01-01 00:00:00.000000000 +0000 +++ rust-rayon-core-1.5.0/debian/patches/relax-dep-versions.patch 2019-07-17 04:03:14.000000000 +0000 @@ -0,0 +1,11 @@ +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -49,7 +49,7 @@ + name = "scoped_threadpool" + path = "tests/scoped_threadpool.rs" + [dependencies.crossbeam-deque] +-version = "0.6.3" ++version = "0.7" + + [dependencies.crossbeam-queue] + version = "0.1.2" diff -Nru rust-rayon-core-1.5.0/debian/patches/series rust-rayon-core-1.5.0/debian/patches/series --- rust-rayon-core-1.5.0/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 +++ rust-rayon-core-1.5.0/debian/patches/series 2019-07-17 04:03:14.000000000 +0000 @@ -0,0 +1,2 @@ +relax-dep-versions.patch +crossbeam-0.7.patch