From 7969f17b1cc9ab8ef68fcd580f05f68730cfbc5a Mon Sep 17 00:00:00 2001 From: texastony <5892063+texastony@users.noreply.github.com> Date: Mon, 23 Dec 2024 16:09:36 -0600 Subject: [PATCH] fix(.NET): Improve Collection of Errors string --- .../dotnet/dafny-4.9.0.patch | 39 +++++++++++++++ .../dotnet/dafny-4.9.0.patch | 50 +++++++++++++++++++ .../CollectionOfErrors.cs | 11 +++- .../CollectionOfErrors.cs | 12 ++++- .../codegen-patches/dotnet/dafny-4.9.0.patch | 24 +++++++++ .../net/Generated/CollectionOfErrors.cs | 11 +++- 6 files changed, 143 insertions(+), 4 deletions(-) create mode 100644 AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographicMaterialProviders/dotnet/dafny-4.9.0.patch create mode 100644 AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographyKeyStore/dotnet/dafny-4.9.0.patch create mode 100644 AwsCryptographyPrimitives/codegen-patches/dotnet/dafny-4.9.0.patch diff --git a/AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographicMaterialProviders/dotnet/dafny-4.9.0.patch b/AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographicMaterialProviders/dotnet/dafny-4.9.0.patch new file mode 100644 index 000000000..803231711 --- /dev/null +++ b/AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographicMaterialProviders/dotnet/dafny-4.9.0.patch @@ -0,0 +1,39 @@ +diff --git b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs +index 8f7200422..39f044046 100644 +--- b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs ++++ a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs +@@ -8,9 +8,18 @@ namespace AWS.Cryptography.MaterialProviders + public class CollectionOfErrors : Exception + { + public readonly System.Collections.Generic.List list; +- public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message) { this.list = list; } ++ public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message + $"\n List: \n{ListAsString(list)}") { this.list = list; } + public CollectionOfErrors(string message) : base(message) { this.list = new System.Collections.Generic.List(); } + public CollectionOfErrors() : base("CollectionOfErrors") { this.list = new System.Collections.Generic.List(); } ++ ++ private static string ListAsString(List list) ++ { ++ if (list.Count < 1) return ""; ++ string[] msgArr = new string[list.Count]; ++ for (int i = 0; i < list.Count; i++) ++ msgArr[i] = $"{list[i].GetType().Name} :: {list[i].Message}"; ++ return String.Join("\n\t", msgArr); ++ } + } + + } +diff --git b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/TypeConversion.cs a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/TypeConversion.cs +index d5ab49915..446365249 100644 +--- b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/TypeConversion.cs ++++ a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/TypeConversion.cs +@@ -3946,7 +3946,9 @@ namespace AWS.Cryptography.MaterialProviders + dafnyVal._ComAmazonawsDynamodb + ); + case software.amazon.cryptography.materialproviders.internaldafny.types.Error_ComAmazonawsKms dafnyVal: +- return Com.Amazonaws.KMS.TypeConversion.FromDafny_CommonError( ++ // BEGIN MANUAL EDIT ++ return Com.Amazonaws.Kms.TypeConversion.FromDafny_CommonError( ++ // END MANUAL EDIT + dafnyVal._ComAmazonawsKms + ); + case software.amazon.cryptography.materialproviders.internaldafny.types.Error_AwsCryptographicMaterialProvidersException dafnyVal: diff --git a/AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographyKeyStore/dotnet/dafny-4.9.0.patch b/AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographyKeyStore/dotnet/dafny-4.9.0.patch new file mode 100644 index 000000000..e1ddc111a --- /dev/null +++ b/AwsCryptographicMaterialProviders/codegen-patches/AwsCryptographyKeyStore/dotnet/dafny-4.9.0.patch @@ -0,0 +1,50 @@ +diff --git b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs +index e752a715a..e203599b2 100644 +--- b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs ++++ a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs +@@ -8,9 +8,17 @@ namespace AWS.Cryptography.KeyStore + public class CollectionOfErrors : Exception + { + public readonly System.Collections.Generic.List list; +- public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message) { this.list = list; } ++ public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message + $"\n List: \n{ListAsString(list)}") { this.list = list; } + public CollectionOfErrors(string message) : base(message) { this.list = new System.Collections.Generic.List(); } + public CollectionOfErrors() : base("CollectionOfErrors") { this.list = new System.Collections.Generic.List(); } +- } + ++ private static string ListAsString(List list) ++ { ++ if (list.Count < 1) return ""; ++ string[] msgArr = new string[list.Count]; ++ for (int i = 0; i < list.Count; i++) ++ msgArr[i] = $"{list[i].GetType().Name} :: {list[i].Message}"; ++ return String.Join("\n\t", msgArr); ++ } ++ } + } +diff --git b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/TypeConversion.cs a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/TypeConversion.cs +index b7ee7eb89..9c9b351d5 100644 +--- b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/TypeConversion.cs ++++ a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/TypeConversion.cs +@@ -736,7 +736,9 @@ namespace AWS.Cryptography.KeyStore + dafnyVal._ComAmazonawsDynamodb + ); + case software.amazon.cryptography.keystore.internaldafny.types.Error_ComAmazonawsKms dafnyVal: +- return Com.Amazonaws.KMS.TypeConversion.FromDafny_CommonError( ++ // BEGIN MANUAL EDIT ++ return Com.Amazonaws.Kms.TypeConversion.FromDafny_CommonError( ++ // END MANUAL EDIT + dafnyVal._ComAmazonawsKms + ); + case software.amazon.cryptography.keystore.internaldafny.types.Error_KeyStoreException dafnyVal: +@@ -761,7 +763,9 @@ namespace AWS.Cryptography.KeyStore + { + case "Com.Amazonaws.KMS": + return software.amazon.cryptography.keystore.internaldafny.types.Error.create_ComAmazonawsKms( +- Com.Amazonaws.KMS.TypeConversion.ToDafny_CommonError(value) ++ // BEGIN MANUAL EDIT ++ Com.Amazonaws.Kms.TypeConversion.ToDafny_CommonError(value) ++ // END MANUAL EDIT + ); + case "Com.Amazonaws.Dynamodb": + return software.amazon.cryptography.keystore.internaldafny.types.Error.create_ComAmazonawsDynamodb( diff --git a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs index 8f7200422..39f044046 100644 --- a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs +++ b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographicMaterialProviders/CollectionOfErrors.cs @@ -8,9 +8,18 @@ namespace AWS.Cryptography.MaterialProviders public class CollectionOfErrors : Exception { public readonly System.Collections.Generic.List list; - public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message) { this.list = list; } + public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message + $"\n List: \n{ListAsString(list)}") { this.list = list; } public CollectionOfErrors(string message) : base(message) { this.list = new System.Collections.Generic.List(); } public CollectionOfErrors() : base("CollectionOfErrors") { this.list = new System.Collections.Generic.List(); } + + private static string ListAsString(List list) + { + if (list.Count < 1) return ""; + string[] msgArr = new string[list.Count]; + for (int i = 0; i < list.Count; i++) + msgArr[i] = $"{list[i].GetType().Name} :: {list[i].Message}"; + return String.Join("\n\t", msgArr); + } } } diff --git a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs index e752a715a..e203599b2 100644 --- a/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs +++ b/AwsCryptographicMaterialProviders/runtimes/net/Generated/AwsCryptographyKeyStore/CollectionOfErrors.cs @@ -8,9 +8,17 @@ namespace AWS.Cryptography.KeyStore public class CollectionOfErrors : Exception { public readonly System.Collections.Generic.List list; - public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message) { this.list = list; } + public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message + $"\n List: \n{ListAsString(list)}") { this.list = list; } public CollectionOfErrors(string message) : base(message) { this.list = new System.Collections.Generic.List(); } public CollectionOfErrors() : base("CollectionOfErrors") { this.list = new System.Collections.Generic.List(); } - } + private static string ListAsString(List list) + { + if (list.Count < 1) return ""; + string[] msgArr = new string[list.Count]; + for (int i = 0; i < list.Count; i++) + msgArr[i] = $"{list[i].GetType().Name} :: {list[i].Message}"; + return String.Join("\n\t", msgArr); + } + } } diff --git a/AwsCryptographyPrimitives/codegen-patches/dotnet/dafny-4.9.0.patch b/AwsCryptographyPrimitives/codegen-patches/dotnet/dafny-4.9.0.patch new file mode 100644 index 000000000..dc3291bb6 --- /dev/null +++ b/AwsCryptographyPrimitives/codegen-patches/dotnet/dafny-4.9.0.patch @@ -0,0 +1,24 @@ +diff --git b/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs a/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs +index ed41bb43b..1df996dd0 100644 +--- b/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs ++++ a/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs +@@ -8,9 +8,18 @@ namespace AWS.Cryptography.Primitives + public class CollectionOfErrors : Exception + { + public readonly System.Collections.Generic.List list; +- public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message) { this.list = list; } ++ public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message + $"\n List: \n{ListAsString(list)}") { this.list = list; } + public CollectionOfErrors(string message) : base(message) { this.list = new System.Collections.Generic.List(); } + public CollectionOfErrors() : base("CollectionOfErrors") { this.list = new System.Collections.Generic.List(); } ++ ++ private static string ListAsString(List list) ++ { ++ if (list.Count < 1) return ""; ++ string[] msgArr = new string[list.Count]; ++ for (int i = 0; i < list.Count; i++) ++ msgArr[i] = $"{list[i].GetType().Name} :: {list[i].Message}"; ++ return String.Join("\n\t", msgArr); ++ } + } + + } diff --git a/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs b/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs index ed41bb43b..1df996dd0 100644 --- a/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs +++ b/AwsCryptographyPrimitives/runtimes/net/Generated/CollectionOfErrors.cs @@ -8,9 +8,18 @@ namespace AWS.Cryptography.Primitives public class CollectionOfErrors : Exception { public readonly System.Collections.Generic.List list; - public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message) { this.list = list; } + public CollectionOfErrors(System.Collections.Generic.List list, string message) : base(message + $"\n List: \n{ListAsString(list)}") { this.list = list; } public CollectionOfErrors(string message) : base(message) { this.list = new System.Collections.Generic.List(); } public CollectionOfErrors() : base("CollectionOfErrors") { this.list = new System.Collections.Generic.List(); } + + private static string ListAsString(List list) + { + if (list.Count < 1) return ""; + string[] msgArr = new string[list.Count]; + for (int i = 0; i < list.Count; i++) + msgArr[i] = $"{list[i].GetType().Name} :: {list[i].Message}"; + return String.Join("\n\t", msgArr); + } } }