From 123a35112f3620bf5e789169ed1df302c38f7273 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Sun, 9 Aug 2020 09:45:03 -0700 Subject: [PATCH 1/6] ci: make sure test commands are `&&`-chained The new test command added in e0c627b1bea0f directly followed the prior command, without `&&`-chaining the result. So if the tests before it _failed_, we wouldn't notice... --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 9c3c0004..3a7ead00 100644 --- a/.travis.yml +++ b/.travis.yml @@ -41,7 +41,7 @@ script: cargo build --verbose --features "$FEATURES" && if [ -z "$SKIP_TEST" ]; then cargo test --verbose --features "$FEATURES" && - cargo test --release --verbose --features "$FEATURES" + cargo test --release --verbose --features "$FEATURES" && if [ "$FEATURES" = "serde-1" ]; then cargo test --verbose -p test-serde && cargo test --release --verbose -p test-serde From 132814cc9cac6df94fef4d17fc17917020ee33a2 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Mon, 10 Aug 2020 10:52:34 -0700 Subject: [PATCH 2/6] Set 2018 edition in .rustfmt.toml The edition works automatically when running `cargo fmt`, but not when running `rustfmt` directly as some editors do. --- .rustfmt.toml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .rustfmt.toml diff --git a/.rustfmt.toml b/.rustfmt.toml new file mode 100644 index 00000000..32a9786f --- /dev/null +++ b/.rustfmt.toml @@ -0,0 +1 @@ +edition = "2018" From ef0adaf4b47441f709783a7370cb4d63ab19d1a1 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Thu, 6 Aug 2020 12:40:58 -0700 Subject: [PATCH 3/6] Add a feature to explicitly enable "std" If you know you need "std", e.g. relying on default `S = RandomState`, then you can enable this feature to force it on, bypassing target detection. This may help scenarios where `autocfg` fails detection, like issue #144, but at the very least it will speed up the build script by avoiding extra `rustc` invocations. --- .travis.yml | 3 +++ Cargo.toml | 3 +++ build.rs | 7 +++++-- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3a7ead00..0bb2653b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,9 @@ matrix: - rust: stable env: - FEATURES='rayon' + - rust: stable + env: + - FEATURES='std' - rust: beta - rust: nightly env: diff --git a/Cargo.toml b/Cargo.toml index 5823a0f4..70b97845 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -53,6 +53,9 @@ fxhash = "0.2.1" # Serialization with serde 1.0 serde-1 = ["serde"] +# Force the use of `std`, bypassing target detection. +std = [] + # for testing only, of course test_low_transition_point = [] test_debug = [] diff --git a/build.rs b/build.rs index 645c0f1c..9f9fa054 100644 --- a/build.rs +++ b/build.rs @@ -1,5 +1,8 @@ fn main() { - let ac = autocfg::new(); - ac.emit_sysroot_crate("std"); + // If "std" is explicitly requested, don't bother probing the target for it. + match std::env::var_os("CARGO_FEATURE_STD") { + Some(_) => autocfg::emit("has_std"), + None => autocfg::new().emit_sysroot_crate("std"), + } autocfg::rerun_path("build.rs"); } From 4de0dcf4b46ae22cfa7f7b430ddf7171cbf61c35 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Tue, 1 Sep 2020 12:42:55 -0700 Subject: [PATCH 4/6] Release 1.5.2 --- Cargo.toml | 2 +- README.rst | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 70b97845..7639106f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "indexmap" edition = "2018" -version = "1.5.1" +version = "1.5.2" authors = [ "bluss", "Josh Stone " diff --git a/README.rst b/README.rst index 5fbab927..a935394b 100644 --- a/README.rst +++ b/README.rst @@ -66,6 +66,14 @@ which is roughly: Recent Changes ============== +- 1.5.2 + + - The new "std" feature will force the use of ``std`` for users that explicitly + want the default ``S = RandomState``, bypassing the autodetection added in 1.3.0, + by @cuviper in PR 145_. + +.. _145: https://github.com/bluss/indexmap/pull/145 + - 1.5.1 - Values can now be indexed by their ``usize`` position by @cuviper in PR 132_. From b0006936b1784067b769b14a7adc0daa7e359301 Mon Sep 17 00:00:00 2001 From: Matt Brubeck Date: Thu, 3 Sep 2020 15:13:59 -0700 Subject: [PATCH 5/6] Update to hashbrown 0.9 --- .travis.yml | 3 +-- Cargo.toml | 2 +- README.rst | 4 ++++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0bb2653b..b18175df 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,8 +2,7 @@ language: rust sudo: false matrix: include: - - rust: 1.32.0 - - rust: 1.34.2 + - rust: 1.36.0 - rust: stable env: - FEATURES='serde-1' diff --git a/Cargo.toml b/Cargo.toml index 7639106f..fff41cd6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -37,7 +37,7 @@ serde = { version = "1.0", optional = true, default-features = false } rayon = { version = "1.0", optional = true } [dependencies.hashbrown] -version = "0.8.1" +version = "0.9.0" default-features = false features = ["raw"] diff --git a/README.rst b/README.rst index a935394b..16b9123a 100644 --- a/README.rst +++ b/README.rst @@ -66,6 +66,10 @@ which is roughly: Recent Changes ============== +- Unreleased + + - **MSRV**: Rust 1.36 or later is now required. + - 1.5.2 - The new "std" feature will force the use of ``std`` for users that explicitly From 083f5a762c24a6b17efbf0fd1bfb9011744949b6 Mon Sep 17 00:00:00 2001 From: Matt Brubeck Date: Sat, 5 Sep 2020 09:54:30 -0700 Subject: [PATCH 6/6] Version 1.6.0 --- Cargo.toml | 2 +- README.rst | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index fff41cd6..58a17304 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "indexmap" edition = "2018" -version = "1.5.2" +version = "1.6.0" authors = [ "bluss", "Josh Stone " diff --git a/README.rst b/README.rst index 16b9123a..2c489850 100644 --- a/README.rst +++ b/README.rst @@ -66,10 +66,12 @@ which is roughly: Recent Changes ============== -- Unreleased +- 1.6.0 - **MSRV**: Rust 1.36 or later is now required. + - The ``hashbrown`` dependency has been updated to version 0.9. + - 1.5.2 - The new "std" feature will force the use of ``std`` for users that explicitly