From e7bff2d09da073b06e27ee55d7ea638400b57f4c Mon Sep 17 00:00:00 2001 From: Andrew Kubera Date: Thu, 26 Aug 2021 14:17:25 -0400 Subject: [PATCH 1/4] Fix serde test suite --- src/lib.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index a59f148..8eb3dd6 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1813,6 +1813,9 @@ mod bigdecimal_serde { use serde::{de, ser}; use std::convert::TryFrom; use std::fmt; + use std::str::FromStr; + #[allow(unused_imports)] + use num_traits::FromPrimitive; impl ser::Serialize for BigDecimal { fn serialize(&self, serializer: S) -> Result @@ -1836,7 +1839,6 @@ mod bigdecimal_serde { where E: de::Error, { - use std::str::FromStr; BigDecimal::from_str(value).map_err(|err| E::custom(format!("{}", err))) } @@ -1942,8 +1944,6 @@ mod bigdecimal_serde { #[test] #[cfg(not(feature = "string-only"))] fn test_serde_deserialize_int() { - use traits::FromPrimitive; - let vals = vec![0, 1, 81516161, -370, -8, -99999999999]; for n in vals { let expected = BigDecimal::from_i64(n).unwrap(); From b9cfdc227ac406bfcce42aaec68684229eb8ac2f Mon Sep 17 00:00:00 2001 From: Andrew Kubera Date: Thu, 26 Aug 2021 14:19:12 -0400 Subject: [PATCH 2/4] Include features in testing matrix --- .circleci/config.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 105342f..5ca96ea 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -11,6 +11,9 @@ jobs: debian-version: type: string default: "buster" + rust-features: + type: string + default: "''" docker: - image: rust:<< parameters.rust-version >>-<< parameters.debian-version >> environment: @@ -36,7 +39,7 @@ jobs: command: cargo build - run: name: Test - command: cargo test + command: cargo test --features=<< parameters.rust-features >> upload-coverage: parameters: @@ -91,6 +94,15 @@ workflows: - "1.40.0" - "1.50.0" - "1.54.0" + - build-and-test: + matrix: + parameters: + rust-version: + - "1.50.0" + - "1.54.0" + rust-features: + - "'serde'" + - "'serde,string-only'" - upload-coverage: rust-version: "1.54.0" requires: From 42c62ff18ea973c3fbe9d18959c3ed5fa92b059b Mon Sep 17 00:00:00 2001 From: Andrew Kubera Date: Thu, 26 Aug 2021 14:25:47 -0400 Subject: [PATCH 3/4] Bump num-bigint dependency to v0.4 --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index e1c7e61..9a52150 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,7 +10,7 @@ keywords = ["mathematics", "numerics", "decimal", "arbitrary-precision", "floati license = "MIT/Apache-2.0" [dependencies] -num-bigint = "0.3" +num-bigint = "0.4" num-integer = "0.1" num-traits = "0.2" serde = { version = "1.0", optional = true } From 7d7aebc716e5f9f90d63d973a1a68d6398ce860b Mon Sep 17 00:00:00 2001 From: Andrew Kubera Date: Thu, 26 Aug 2021 14:26:08 -0400 Subject: [PATCH 4/4] Version 0.3.0 --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 9a52150..e17ad59 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bigdecimal" -version = "0.2.2" +version = "0.3.0" authors = ["Andrew Kubera"] description = "Arbitrary precision decimal numbers" documentation = "https://docs.rs/bigdecimal"