From 5b5d727fcd2616b1f5314db03f4e6b96791a303d Mon Sep 17 00:00:00 2001 From: Taiki Endo Date: Tue, 15 Oct 2019 23:07:30 +0900 Subject: [PATCH 1/2] Fix breakage with nightly feature --- crossbeam-epoch/src/lib.rs | 5 +---- crossbeam-skiplist/src/lib.rs | 5 +---- crossbeam-utils/src/lib.rs | 5 +---- src/lib.rs | 5 +---- 4 files changed, 4 insertions(+), 16 deletions(-) diff --git a/crossbeam-epoch/src/lib.rs b/crossbeam-epoch/src/lib.rs index e3116dcf7..112180b25 100644 --- a/crossbeam-epoch/src/lib.rs +++ b/crossbeam-epoch/src/lib.rs @@ -73,10 +73,7 @@ cfg_if! { } } -#[cfg_attr( - feature = "nightly", - cfg(all(target_has_atomic = "cas", target_has_atomic = "ptr")) -)] +#[cfg_attr(feature = "nightly", cfg(target_has_atomic = "ptr"))] cfg_if! { if #[cfg(any(feature = "alloc", feature = "std"))] { extern crate crossbeam_utils; diff --git a/crossbeam-skiplist/src/lib.rs b/crossbeam-skiplist/src/lib.rs index 942b0a9d8..17e4a7bfb 100644 --- a/crossbeam-skiplist/src/lib.rs +++ b/crossbeam-skiplist/src/lib.rs @@ -18,10 +18,7 @@ cfg_if! { } } -#[cfg_attr( - feature = "nightly", - cfg(all(target_has_atomic = "cas", target_has_atomic = "ptr")) -)] +#[cfg_attr(feature = "nightly", cfg(target_has_atomic = "ptr"))] cfg_if! { if #[cfg(any(feature = "alloc", feature = "std"))] { extern crate crossbeam_epoch as epoch; diff --git a/crossbeam-utils/src/lib.rs b/crossbeam-utils/src/lib.rs index 4df2ac8a4..06f23beb4 100644 --- a/crossbeam-utils/src/lib.rs +++ b/crossbeam-utils/src/lib.rs @@ -44,10 +44,7 @@ cfg_if! { } } -#[cfg_attr( - feature = "nightly", - cfg(all(target_has_atomic = "cas", target_has_atomic = "ptr")) -)] +#[cfg_attr(feature = "nightly", cfg(target_has_atomic = "ptr"))] pub mod atomic; mod cache_padded; diff --git a/src/lib.rs b/src/lib.rs index ecff332ee..01c5a8fde 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -68,10 +68,7 @@ pub use _epoch::crossbeam_epoch as epoch; extern crate crossbeam_utils; -#[cfg_attr( - feature = "nightly", - cfg(all(target_has_atomic = "cas", target_has_atomic = "ptr")) -)] +#[cfg_attr(feature = "nightly", cfg(target_has_atomic = "ptr"))] pub use crossbeam_utils::atomic; /// Miscellaneous utilities. From 4dce6d788bf24c741279872a05b37f83faa8ef45 Mon Sep 17 00:00:00 2001 From: Taiki Endo Date: Wed, 16 Oct 2019 00:00:44 +0900 Subject: [PATCH 2/2] Downgrade dependencies on minimum versions build --- .travis.yml | 7 +++++++ ci/downgrade-dependencies.sh | 5 +++++ 2 files changed, 12 insertions(+) create mode 100644 ci/downgrade-dependencies.sh diff --git a/.travis.yml b/.travis.yml index c8d5312d5..99af8f600 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,24 +16,31 @@ matrix: - rust: 1.28.0 name: "crossbeam on 1.28.0" script: ./ci/crossbeam.sh + before_script: ./ci/downgrade-dependencies.sh - rust: 1.26.0 name: "crossbeam-channel on 1.26.0" script: ./ci/crossbeam-channel.sh + before_script: ./ci/downgrade-dependencies.sh - rust: 1.28.0 name: "crossbeam-deque on 1.28.0" script: ./ci/crossbeam-deque.sh + before_script: ./ci/downgrade-dependencies.sh - rust: 1.26.0 name: "crossbeam-epoch on 1.26.0" script: ./ci/crossbeam-epoch.sh + before_script: ./ci/downgrade-dependencies.sh - rust: 1.26.0 name: "crossbeam-queue on 1.26.0" script: ./ci/crossbeam-queue.sh + before_script: ./ci/downgrade-dependencies.sh - rust: 1.28.0 name: "crossbeam-skiplist on 1.28.0" script: ./ci/crossbeam-skiplist.sh + before_script: ./ci/downgrade-dependencies.sh - rust: 1.26.0 name: "crossbeam-utils on 1.26.0" script: ./ci/crossbeam-utils.sh + before_script: ./ci/downgrade-dependencies.sh # Test crates on nightly Rust. - rust: nightly diff --git a/ci/downgrade-dependencies.sh b/ci/downgrade-dependencies.sh new file mode 100644 index 000000000..0b4bcb6e0 --- /dev/null +++ b/ci/downgrade-dependencies.sh @@ -0,0 +1,5 @@ +# lazy_static 1.4 requires Rust 1.27+ +# and cfg-if 1.10 requires Rust 1.31+ so downgrade it. +- cargo generate-lockfile +- cargo update -p cfg-if --precise 1.9 +- cargo update -p lazy_static --precise 1.3