From a27ed338b86a61cdcc9cffe190398f42c20ba12d Mon Sep 17 00:00:00 2001 From: Andy Jewell Date: Thu, 24 Oct 2024 14:18:42 -0400 Subject: [PATCH 1/4] repair Ord for UseSegment --- src/imports.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/imports.rs b/src/imports.rs index b741dd9b5da..52b6e057a83 100644 --- a/src/imports.rs +++ b/src/imports.rs @@ -943,10 +943,10 @@ impl Ord for UseSegment { version_sort(ia, ib) } else { // snake_case < CamelCase < UPPER_SNAKE_CASE - if ia.starts_with(char::is_uppercase) && ib.starts_with(char::is_lowercase) { + if ia.starts_with(char::is_uppercase) && !ib.starts_with(char::is_uppercase) { return Ordering::Greater; } - if ia.starts_with(char::is_lowercase) && ib.starts_with(char::is_uppercase) { + if !ia.starts_with(char::is_uppercase) && ib.starts_with(char::is_uppercase) { return Ordering::Less; } if is_upper_snake_case(ia) && !is_upper_snake_case(ib) { From c07bb2591f56a0e7784f529a2b0d4321b914d281 Mon Sep 17 00:00:00 2001 From: Andy Jewell Date: Sat, 2 Nov 2024 15:32:12 -0400 Subject: [PATCH 2/4] add test --- tests/target/issue-6333.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 tests/target/issue-6333.rs diff --git a/tests/target/issue-6333.rs b/tests/target/issue-6333.rs new file mode 100644 index 00000000000..9734854c032 --- /dev/null +++ b/tests/target/issue-6333.rs @@ -0,0 +1,22 @@ +pub use crate::r#_StructUtil_Compile::CanonCryptoItem; +pub use crate::r#_StructUtil_Compile::MessageID; +pub use crate::r#_Wrappers_Compile::Outcome; +pub use crate::software::amazon::crypt::dbencryptionsdk::stct::internaldafny::types::Action; +pub use crate::software::amazon::crypt::mat::internaldafny::types::AlgorithmSuiteInfo; +pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptedDataKey; +pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptionMaterials; +pub use crate::software::amazon::crypt::primitives::internaldafny::types::HMacInput; +pub use crate::software::amazon::crypt::primitives::internaldafny::types::IAwsPrimClient; +pub use dafny_runtime::_System::nat; +pub use dafny_runtime::int; +pub use dafny_runtime::itertools::Itertools; +pub use dafny_runtime::rd; +pub use dafny_runtime::string_utf16_of; +pub use dafny_runtime::truncate; +pub use dafny_runtime::DafnyCharUTF16; +pub use dafny_runtime::DafnyType; +pub use dafny_runtime::DafnyTypeEq; +pub use dafny_runtime::MapBuilder; +pub use dafny_runtime::Object; +pub use dafny_runtime::Sequence; +pub use std::rc::Rc; From 7dac153c56fbbd6556fa30a2d43b37f6c7d61464 Mon Sep 17 00:00:00 2001 From: Andy Jewell Date: Sun, 3 Nov 2024 07:28:13 -0500 Subject: [PATCH 3/4] add edition comment and 2024 test --- tests/target/issue-6333-2024.rs | 23 +++++++++++++++++++++++ tests/target/issue-6333.rs | 1 + 2 files changed, 24 insertions(+) create mode 100644 tests/target/issue-6333-2024.rs diff --git a/tests/target/issue-6333-2024.rs b/tests/target/issue-6333-2024.rs new file mode 100644 index 00000000000..6ad3e99691c --- /dev/null +++ b/tests/target/issue-6333-2024.rs @@ -0,0 +1,23 @@ +// rustfmt-style_edition: 2024 +pub use crate::r#_StructUtil_Compile::CanonCryptoItem; +pub use crate::r#_StructUtil_Compile::MessageID; +pub use crate::r#_Wrappers_Compile::Outcome; +pub use crate::software::amazon::crypt::dbencryptionsdk::stct::internaldafny::types::Action; +pub use crate::software::amazon::crypt::mat::internaldafny::types::AlgorithmSuiteInfo; +pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptedDataKey; +pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptionMaterials; +pub use crate::software::amazon::crypt::primitives::internaldafny::types::HMacInput; +pub use crate::software::amazon::crypt::primitives::internaldafny::types::IAwsPrimClient; +pub use dafny_runtime::_System::nat; +pub use dafny_runtime::DafnyCharUTF16; +pub use dafny_runtime::DafnyType; +pub use dafny_runtime::DafnyTypeEq; +pub use dafny_runtime::MapBuilder; +pub use dafny_runtime::Object; +pub use dafny_runtime::Sequence; +pub use dafny_runtime::int; +pub use dafny_runtime::itertools::Itertools; +pub use dafny_runtime::rd; +pub use dafny_runtime::string_utf16_of; +pub use dafny_runtime::truncate; +pub use std::rc::Rc; diff --git a/tests/target/issue-6333.rs b/tests/target/issue-6333.rs index 9734854c032..2c22a91cf88 100644 --- a/tests/target/issue-6333.rs +++ b/tests/target/issue-6333.rs @@ -1,3 +1,4 @@ +// rustfmt-style_edition: 2015 pub use crate::r#_StructUtil_Compile::CanonCryptoItem; pub use crate::r#_StructUtil_Compile::MessageID; pub use crate::r#_Wrappers_Compile::Outcome; From b146c63f89c738b941bc27bcf038ffdb46ab0a1e Mon Sep 17 00:00:00 2001 From: Yacin Tmimi Date: Mon, 4 Nov 2024 14:36:48 -0500 Subject: [PATCH 4/4] update test cases to use the exact test case from the original issue --- tests/source/issue-6333.rs | 24 ++++++++++++++++++ tests/target/issue-6333-2024.rs | 45 +++++++++++++++++---------------- tests/target/issue-6333.rs | 45 +++++++++++++++++---------------- 3 files changed, 70 insertions(+), 44 deletions(-) create mode 100644 tests/source/issue-6333.rs diff --git a/tests/source/issue-6333.rs b/tests/source/issue-6333.rs new file mode 100644 index 00000000000..074610f8252 --- /dev/null +++ b/tests/source/issue-6333.rs @@ -0,0 +1,24 @@ +// rustfmt-edition: 2021 +// rustfmt-max_width: 125 +pub use ::dafny_runtime::Sequence; +pub use ::std::rc::Rc; +pub use crate::r#_StructuredEncryptionUtil_Compile::CanonCryptoItem; +pub use ::dafny_runtime::itertools::Itertools; +pub use crate::software::amazon::cryptography::dbencryptionsdk::structuredencryption::internaldafny::types::CryptoAction; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::EncryptedDataKey; +pub use ::dafny_runtime::Object; +pub use crate::software::amazon::cryptography::primitives::internaldafny::types::IAwsCryptographicPrimitivesClient; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::AlgorithmSuiteInfo; +pub use ::dafny_runtime::DafnyCharUTF16; +pub use crate::r#_StructuredEncryptionUtil_Compile::MessageID; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::EncryptionMaterials; +pub use crate::r#_Wrappers_Compile::Outcome; +pub use ::dafny_runtime::string_utf16_of; +pub use ::dafny_runtime::int; +pub use ::dafny_runtime::MapBuilder; +pub use ::dafny_runtime::_System::nat; +pub use crate::software::amazon::cryptography::primitives::internaldafny::types::HMacInput; +pub use ::dafny_runtime::rd; +pub use ::dafny_runtime::truncate; +pub use ::dafny_runtime::DafnyTypeEq; +pub use ::dafny_runtime::DafnyType; diff --git a/tests/target/issue-6333-2024.rs b/tests/target/issue-6333-2024.rs index 6ad3e99691c..c64d4dff8a8 100644 --- a/tests/target/issue-6333-2024.rs +++ b/tests/target/issue-6333-2024.rs @@ -1,23 +1,24 @@ -// rustfmt-style_edition: 2024 -pub use crate::r#_StructUtil_Compile::CanonCryptoItem; -pub use crate::r#_StructUtil_Compile::MessageID; +// rustfmt-edition: 2024 +// rustfmt-max_width: 125 +pub use crate::r#_StructuredEncryptionUtil_Compile::CanonCryptoItem; +pub use crate::r#_StructuredEncryptionUtil_Compile::MessageID; pub use crate::r#_Wrappers_Compile::Outcome; -pub use crate::software::amazon::crypt::dbencryptionsdk::stct::internaldafny::types::Action; -pub use crate::software::amazon::crypt::mat::internaldafny::types::AlgorithmSuiteInfo; -pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptedDataKey; -pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptionMaterials; -pub use crate::software::amazon::crypt::primitives::internaldafny::types::HMacInput; -pub use crate::software::amazon::crypt::primitives::internaldafny::types::IAwsPrimClient; -pub use dafny_runtime::_System::nat; -pub use dafny_runtime::DafnyCharUTF16; -pub use dafny_runtime::DafnyType; -pub use dafny_runtime::DafnyTypeEq; -pub use dafny_runtime::MapBuilder; -pub use dafny_runtime::Object; -pub use dafny_runtime::Sequence; -pub use dafny_runtime::int; -pub use dafny_runtime::itertools::Itertools; -pub use dafny_runtime::rd; -pub use dafny_runtime::string_utf16_of; -pub use dafny_runtime::truncate; -pub use std::rc::Rc; +pub use crate::software::amazon::cryptography::dbencryptionsdk::structuredencryption::internaldafny::types::CryptoAction; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::AlgorithmSuiteInfo; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::EncryptedDataKey; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::EncryptionMaterials; +pub use crate::software::amazon::cryptography::primitives::internaldafny::types::HMacInput; +pub use crate::software::amazon::cryptography::primitives::internaldafny::types::IAwsCryptographicPrimitivesClient; +pub use ::dafny_runtime::_System::nat; +pub use ::dafny_runtime::DafnyCharUTF16; +pub use ::dafny_runtime::DafnyType; +pub use ::dafny_runtime::DafnyTypeEq; +pub use ::dafny_runtime::MapBuilder; +pub use ::dafny_runtime::Object; +pub use ::dafny_runtime::Sequence; +pub use ::dafny_runtime::int; +pub use ::dafny_runtime::itertools::Itertools; +pub use ::dafny_runtime::rd; +pub use ::dafny_runtime::string_utf16_of; +pub use ::dafny_runtime::truncate; +pub use ::std::rc::Rc; diff --git a/tests/target/issue-6333.rs b/tests/target/issue-6333.rs index 2c22a91cf88..b2f167452c3 100644 --- a/tests/target/issue-6333.rs +++ b/tests/target/issue-6333.rs @@ -1,23 +1,24 @@ -// rustfmt-style_edition: 2015 -pub use crate::r#_StructUtil_Compile::CanonCryptoItem; -pub use crate::r#_StructUtil_Compile::MessageID; +// rustfmt-edition: 2021 +// rustfmt-max_width: 125 +pub use crate::r#_StructuredEncryptionUtil_Compile::CanonCryptoItem; +pub use crate::r#_StructuredEncryptionUtil_Compile::MessageID; pub use crate::r#_Wrappers_Compile::Outcome; -pub use crate::software::amazon::crypt::dbencryptionsdk::stct::internaldafny::types::Action; -pub use crate::software::amazon::crypt::mat::internaldafny::types::AlgorithmSuiteInfo; -pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptedDataKey; -pub use crate::software::amazon::crypt::mat::internaldafny::types::EncryptionMaterials; -pub use crate::software::amazon::crypt::primitives::internaldafny::types::HMacInput; -pub use crate::software::amazon::crypt::primitives::internaldafny::types::IAwsPrimClient; -pub use dafny_runtime::_System::nat; -pub use dafny_runtime::int; -pub use dafny_runtime::itertools::Itertools; -pub use dafny_runtime::rd; -pub use dafny_runtime::string_utf16_of; -pub use dafny_runtime::truncate; -pub use dafny_runtime::DafnyCharUTF16; -pub use dafny_runtime::DafnyType; -pub use dafny_runtime::DafnyTypeEq; -pub use dafny_runtime::MapBuilder; -pub use dafny_runtime::Object; -pub use dafny_runtime::Sequence; -pub use std::rc::Rc; +pub use crate::software::amazon::cryptography::dbencryptionsdk::structuredencryption::internaldafny::types::CryptoAction; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::AlgorithmSuiteInfo; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::EncryptedDataKey; +pub use crate::software::amazon::cryptography::materialproviders::internaldafny::types::EncryptionMaterials; +pub use crate::software::amazon::cryptography::primitives::internaldafny::types::HMacInput; +pub use crate::software::amazon::cryptography::primitives::internaldafny::types::IAwsCryptographicPrimitivesClient; +pub use ::dafny_runtime::_System::nat; +pub use ::dafny_runtime::int; +pub use ::dafny_runtime::itertools::Itertools; +pub use ::dafny_runtime::rd; +pub use ::dafny_runtime::string_utf16_of; +pub use ::dafny_runtime::truncate; +pub use ::dafny_runtime::DafnyCharUTF16; +pub use ::dafny_runtime::DafnyType; +pub use ::dafny_runtime::DafnyTypeEq; +pub use ::dafny_runtime::MapBuilder; +pub use ::dafny_runtime::Object; +pub use ::dafny_runtime::Sequence; +pub use ::std::rc::Rc;