From f8f752fccd0b79a5b2d0022f8d12fe70f5f42bb3 Mon Sep 17 00:00:00 2001 From: Abraham Egnor Date: Mon, 22 Aug 2022 11:42:29 -0400 Subject: [PATCH 1/5] RUST-1440 bump clippy version to 1.63.0 --- .evergreen/check-clippy.sh | 2 +- src/lib.rs | 2 +- src/raw/document_buf.rs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.evergreen/check-clippy.sh b/.evergreen/check-clippy.sh index da0c9f68..036b8242 100755 --- a/.evergreen/check-clippy.sh +++ b/.evergreen/check-clippy.sh @@ -5,7 +5,7 @@ set -o errexit . ~/.cargo/env # Pin clippy to the latest version. This should be updated when new versions of Rust are released. -CLIPPY_VERSION=1.62.0 +CLIPPY_VERSION=1.63.0 rustup install $CLIPPY_VERSION diff --git a/src/lib.rs b/src/lib.rs index 8d856fee..ed301c54 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -263,7 +263,7 @@ //! The MSRV for this crate is currently 1.53.0. This will be rarely be increased, and if it ever is, //! it will only happen in a minor or major version release. -#![allow(clippy::cognitive_complexity)] +#![allow(clippy::cognitive_complexity, clippy::derive_partial_eq_without_eq)] #![doc(html_root_url = "https://docs.rs/bson/2.3.0")] #![cfg_attr(docsrs, feature(doc_cfg))] diff --git a/src/raw/document_buf.rs b/src/raw/document_buf.rs index 5c25afe8..a68df0fb 100644 --- a/src/raw/document_buf.rs +++ b/src/raw/document_buf.rs @@ -386,7 +386,7 @@ impl Deref for RawDocumentBuf { impl Borrow for RawDocumentBuf { fn borrow(&self) -> &RawDocument { - &*self + &**self } } From 926c48c05471bea61a097011c0840dd35c81e63e Mon Sep 17 00:00:00 2001 From: Abraham Egnor Date: Wed, 24 Aug 2022 11:26:49 -0400 Subject: [PATCH 2/5] update deprecated constants --- src/datetime.rs | 8 ++++---- src/tests/modules/bson.rs | 13 +++++++------ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/datetime.rs b/src/datetime.rs index 9bb8dc68..67b077ae 100644 --- a/src/datetime.rs +++ b/src/datetime.rs @@ -159,7 +159,7 @@ impl crate::DateTime { /// Convert this [`DateTime`] to a [`chrono::DateTime`]. /// /// Note: Not every BSON datetime can be represented as a [`chrono::DateTime`]. For such dates, - /// [`chrono::MIN_DATETIME`] or [`chrono::MAX_DATETIME`] will be returned, whichever is closer. + /// [`chrono::DateTime::MIN_UTC`] or [`chrono::DateTime::MAX_UTC`] will be returned, whichever is closer. /// /// ``` /// let bson_dt = bson::DateTime::now(); @@ -168,7 +168,7 @@ impl crate::DateTime { /// /// let big = bson::DateTime::from_millis(i64::MAX); /// let chrono_big = big.to_chrono(); - /// assert_eq!(chrono_big, chrono::MAX_DATETIME) + /// assert_eq!(chrono_big, chrono::DateTime::::MAX_UTC) /// ``` #[cfg(feature = "chrono-0_4")] #[cfg_attr(docsrs, doc(cfg(feature = "chrono-0_4")))] @@ -177,9 +177,9 @@ impl crate::DateTime { LocalResult::Single(dt) => dt, _ => { if self.0 < 0 { - chrono::MIN_DATETIME + chrono::DateTime::::MIN_UTC } else { - chrono::MAX_DATETIME + chrono::DateTime::::MAX_UTC } } } diff --git a/src/tests/modules/bson.rs b/src/tests/modules/bson.rs index 171aa3b7..27f5e56b 100644 --- a/src/tests/modules/bson.rs +++ b/src/tests/modules/bson.rs @@ -17,6 +17,7 @@ use crate::{ Timestamp, }; +use chrono::Utc; use serde_json::{json, Value}; #[test] @@ -344,23 +345,23 @@ fn from_external_datetime() { } #[cfg(feature = "chrono-0_4")] { - let bdt = DateTime::from(chrono::MAX_DATETIME); + let bdt = DateTime::from(chrono::DateTime::::MAX_UTC); assert_eq!( bdt.to_chrono().timestamp_millis(), - chrono::MAX_DATETIME.timestamp_millis() + chrono::DateTime::::MAX_UTC.timestamp_millis() ); - let bdt = DateTime::from(chrono::MIN_DATETIME); + let bdt = DateTime::from(chrono::DateTime::::MIN_UTC); assert_eq!( bdt.to_chrono().timestamp_millis(), - chrono::MIN_DATETIME.timestamp_millis() + chrono::DateTime::::MIN_UTC.timestamp_millis() ); let bdt = DateTime::MAX; - assert_eq!(bdt.to_chrono(), chrono::MAX_DATETIME); + assert_eq!(bdt.to_chrono(), chrono::DateTime::::MAX_UTC); let bdt = DateTime::MIN; - assert_eq!(bdt.to_chrono(), chrono::MIN_DATETIME); + assert_eq!(bdt.to_chrono(), chrono::DateTime::::MIN_UTC); } } From ceb8778ec41f00ca3aeb752990c4db67d973ffa8 Mon Sep 17 00:00:00 2001 From: Abraham Egnor Date: Wed, 24 Aug 2022 11:27:25 -0400 Subject: [PATCH 3/5] fmt --- src/datetime.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/datetime.rs b/src/datetime.rs index 67b077ae..17954db0 100644 --- a/src/datetime.rs +++ b/src/datetime.rs @@ -159,7 +159,8 @@ impl crate::DateTime { /// Convert this [`DateTime`] to a [`chrono::DateTime`]. /// /// Note: Not every BSON datetime can be represented as a [`chrono::DateTime`]. For such dates, - /// [`chrono::DateTime::MIN_UTC`] or [`chrono::DateTime::MAX_UTC`] will be returned, whichever is closer. + /// [`chrono::DateTime::MIN_UTC`] or [`chrono::DateTime::MAX_UTC`] will be returned, whichever + /// is closer. /// /// ``` /// let bson_dt = bson::DateTime::now(); From 6334608b86cd925592ef4764c80d7213042d895a Mon Sep 17 00:00:00 2001 From: Abraham Egnor Date: Wed, 24 Aug 2022 11:59:16 -0400 Subject: [PATCH 4/5] fix tests --- src/datetime.rs | 2 +- src/tests/modules/bson.rs | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/datetime.rs b/src/datetime.rs index 17954db0..d212f7a2 100644 --- a/src/datetime.rs +++ b/src/datetime.rs @@ -169,7 +169,7 @@ impl crate::DateTime { /// /// let big = bson::DateTime::from_millis(i64::MAX); /// let chrono_big = big.to_chrono(); - /// assert_eq!(chrono_big, chrono::DateTime::::MAX_UTC) + /// assert_eq!(chrono_big, chrono::DateTime::::MAX_UTC) /// ``` #[cfg(feature = "chrono-0_4")] #[cfg_attr(docsrs, doc(cfg(feature = "chrono-0_4")))] diff --git a/src/tests/modules/bson.rs b/src/tests/modules/bson.rs index 27f5e56b..67b8f4db 100644 --- a/src/tests/modules/bson.rs +++ b/src/tests/modules/bson.rs @@ -17,7 +17,6 @@ use crate::{ Timestamp, }; -use chrono::Utc; use serde_json::{json, Value}; #[test] @@ -345,6 +344,8 @@ fn from_external_datetime() { } #[cfg(feature = "chrono-0_4")] { + use chrono::Utc; + let bdt = DateTime::from(chrono::DateTime::::MAX_UTC); assert_eq!( bdt.to_chrono().timestamp_millis(), From 94a5fa96d301cb894d3438f8791e865d2919d7d7 Mon Sep 17 00:00:00 2001 From: Abraham Egnor Date: Thu, 1 Sep 2022 15:46:08 -0400 Subject: [PATCH 5/5] use deref --- src/raw/document_buf.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/raw/document_buf.rs b/src/raw/document_buf.rs index a68df0fb..5624506e 100644 --- a/src/raw/document_buf.rs +++ b/src/raw/document_buf.rs @@ -386,7 +386,7 @@ impl Deref for RawDocumentBuf { impl Borrow for RawDocumentBuf { fn borrow(&self) -> &RawDocument { - &**self + self.deref() } }