From 48e3204b1857754dc5b7a5f8523b7f5ddfa02be6 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 21 Aug 2024 13:39:14 -0700 Subject: [PATCH 01/66] primitives name --- DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy | 2 +- .../dafny/DynamoDbEncryption/src/CompoundBeacon.dfy | 2 +- .../dafny/DynamoDbEncryption/src/ConfigToInfo.dfy | 2 +- DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy | 2 +- .../dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy | 2 +- ...ryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy | 2 +- TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy | 2 +- TestVectors/dafny/DDBEncryption/src/TestVectors.dfy | 2 +- submodules/MaterialProviders | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy index 93fe32e16..ab4722ede 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy @@ -19,7 +19,7 @@ module BaseBeacon { import DDB = ComAmazonawsDynamodbTypes import Prim = AwsCryptographyPrimitivesTypes - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import UTF8 import SortedSets import TermLoc diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy index f2ff84f45..2b4910055 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy @@ -16,7 +16,7 @@ module CompoundBeacon { import opened DdbVirtualFields import Prim = AwsCryptographyPrimitivesTypes - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import UTF8 import Seq import SortedSets diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy index ab14f719f..45a521205 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy @@ -32,7 +32,7 @@ module SearchConfigToInfo { import CB = CompoundBeacon import SE = AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes import MPT = AwsCryptographyMaterialProvidersTypes - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives // convert configured SearchConfig to internal SearchInfo method Convert(outer : DynamoDbTableEncryptionConfig) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy index 810f880dc..ca2b9b841 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy @@ -21,7 +21,7 @@ module SearchableEncryptionInfo { import UTF8 import opened Time import KeyStore = AwsCryptographyKeyStoreTypes - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import Prim = AwsCryptographyPrimitivesTypes import MP = AwsCryptographyMaterialProvidersTypes import KeyStoreTypes = AwsCryptographyKeyStoreTypes diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy index 7244fa87a..a5e710966 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy @@ -17,7 +17,7 @@ module BeaconTestFixtures { import DDBC = Com.Amazonaws.Dynamodb import KTypes = AwsCryptographyKeyStoreTypes import SI = SearchableEncryptionInfo - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import MaterialProviders import MPT = AwsCryptographyMaterialProvidersTypes import SortedSets diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy index 38ffa9db7..d2b3247d5 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy @@ -19,7 +19,7 @@ module AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations refines Abst import Prim = AwsCryptographyPrimitivesTypes import StructuredEncryptionHeader import Random - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import Header = StructuredEncryptionHeader import Footer = StructuredEncryptionFooter import MaterialProviders diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy index dca910df0..c86054c8b 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy @@ -19,7 +19,7 @@ module StructuredEncryptionCrypt { import CMP = AwsCryptographyMaterialProvidersTypes import Prim = AwsCryptographyPrimitivesTypes - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import UTF8 import Header = StructuredEncryptionHeader import HKDF diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy index 8d44ee51e..903bc4e52 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy @@ -23,7 +23,7 @@ module StructuredEncryptionFooter { import opened StandardLibrary.UInt import opened AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes import opened StructuredEncryptionUtil - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import Materials import Header = StructuredEncryptionHeader diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy index c0ab990f1..0a667a421 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy @@ -9,7 +9,7 @@ module { import Operations = AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import MaterialProviders function method DefaultStructuredEncryptionConfig(): StructuredEncryptionConfig diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy index 60242e1e1..1802a5c62 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy @@ -17,7 +17,7 @@ module TestHeader { import opened StructuredEncryptionHeader import opened StructuredEncryptionPaths import opened UTF8 - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import AlgorithmSuites import Canonize diff --git a/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy b/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy index 3bd397aa1..e7d5d2f22 100644 --- a/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy +++ b/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy @@ -27,7 +27,7 @@ module {:options "-functionSyntax:4"} JsonConfig { import KeyVectorsTypes = AwsCryptographyMaterialProvidersTestVectorKeysTypes import KeyMaterial import UTF8 - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import ParseJsonManifests import CreateInterceptedDDBClient import DynamoDbItemEncryptor diff --git a/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy b/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy index 09a490d7d..1f95e439d 100644 --- a/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy +++ b/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy @@ -39,7 +39,7 @@ module {:options "-functionSyntax:4"} DdbEncryptionTestVectors { import SI = SearchableEncryptionInfo import MaterialProviders import MPT = AwsCryptographyMaterialProvidersTypes - import Aws.Cryptography.Primitives + import AtomicPrimitives as Primitives import ParseJsonManifests diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index cdd4885cb..1baeefb60 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit cdd4885cb22957b04167b11d8b40edbdf4301d8d +Subproject commit 1baeefb6064199cc899b8c10203e7f5b0a503702 From 2bbf4572db3c998671a0947a980427da23eaeb0c Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 21 Aug 2024 13:44:30 -0700 Subject: [PATCH 02/66] oop --- DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy | 2 +- .../dafny/DynamoDbEncryption/src/CompoundBeacon.dfy | 2 +- .../dafny/DynamoDbEncryption/src/ConfigToInfo.dfy | 2 +- DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy | 2 +- .../dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy | 2 +- ...ryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy | 2 +- DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy | 2 +- TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy | 2 +- TestVectors/dafny/DDBEncryption/src/TestVectors.dfy | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy index ab4722ede..6d423cc91 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/Beacon.dfy @@ -19,7 +19,7 @@ module BaseBeacon { import DDB = ComAmazonawsDynamodbTypes import Prim = AwsCryptographyPrimitivesTypes - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import UTF8 import SortedSets import TermLoc diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy index 2b4910055..e8fc00e35 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/CompoundBeacon.dfy @@ -16,7 +16,7 @@ module CompoundBeacon { import opened DdbVirtualFields import Prim = AwsCryptographyPrimitivesTypes - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import UTF8 import Seq import SortedSets diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy index 45a521205..5a4062999 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy @@ -32,7 +32,7 @@ module SearchConfigToInfo { import CB = CompoundBeacon import SE = AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes import MPT = AwsCryptographyMaterialProvidersTypes - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives // convert configured SearchConfig to internal SearchInfo method Convert(outer : DynamoDbTableEncryptionConfig) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy index ca2b9b841..e1299454f 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy @@ -21,7 +21,7 @@ module SearchableEncryptionInfo { import UTF8 import opened Time import KeyStore = AwsCryptographyKeyStoreTypes - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import Prim = AwsCryptographyPrimitivesTypes import MP = AwsCryptographyMaterialProvidersTypes import KeyStoreTypes = AwsCryptographyKeyStoreTypes diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy index a5e710966..f4a1eadc6 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy @@ -17,7 +17,7 @@ module BeaconTestFixtures { import DDBC = Com.Amazonaws.Dynamodb import KTypes = AwsCryptographyKeyStoreTypes import SI = SearchableEncryptionInfo - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import MaterialProviders import MPT = AwsCryptographyMaterialProvidersTypes import SortedSets diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy index d2b3247d5..e2aef0b72 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations.dfy @@ -19,7 +19,7 @@ module AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations refines Abst import Prim = AwsCryptographyPrimitivesTypes import StructuredEncryptionHeader import Random - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import Header = StructuredEncryptionHeader import Footer = StructuredEncryptionFooter import MaterialProviders diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy index c86054c8b..f8c178764 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Crypt.dfy @@ -19,7 +19,7 @@ module StructuredEncryptionCrypt { import CMP = AwsCryptographyMaterialProvidersTypes import Prim = AwsCryptographyPrimitivesTypes - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import UTF8 import Header = StructuredEncryptionHeader import HKDF diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy index 903bc4e52..6c7f537ee 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Footer.dfy @@ -23,7 +23,7 @@ module StructuredEncryptionFooter { import opened StandardLibrary.UInt import opened AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes import opened StructuredEncryptionUtil - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import Materials import Header = StructuredEncryptionHeader diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy index 0a667a421..19533014a 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Index.dfy @@ -9,7 +9,7 @@ module { import Operations = AwsCryptographyDbEncryptionSdkStructuredEncryptionOperations - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import MaterialProviders function method DefaultStructuredEncryptionConfig(): StructuredEncryptionConfig diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy index 1802a5c62..be8905c86 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/test/Header.dfy @@ -17,7 +17,7 @@ module TestHeader { import opened StructuredEncryptionHeader import opened StructuredEncryptionPaths import opened UTF8 - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import AlgorithmSuites import Canonize diff --git a/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy b/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy index e7d5d2f22..650e9fd21 100644 --- a/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy +++ b/TestVectors/dafny/DDBEncryption/src/JsonConfig.dfy @@ -27,7 +27,7 @@ module {:options "-functionSyntax:4"} JsonConfig { import KeyVectorsTypes = AwsCryptographyMaterialProvidersTestVectorKeysTypes import KeyMaterial import UTF8 - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import ParseJsonManifests import CreateInterceptedDDBClient import DynamoDbItemEncryptor diff --git a/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy b/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy index 1f95e439d..647249e30 100644 --- a/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy +++ b/TestVectors/dafny/DDBEncryption/src/TestVectors.dfy @@ -39,7 +39,7 @@ module {:options "-functionSyntax:4"} DdbEncryptionTestVectors { import SI = SearchableEncryptionInfo import MaterialProviders import MPT = AwsCryptographyMaterialProvidersTypes - import AtomicPrimitives as Primitives + import Primitives = AtomicPrimitives import ParseJsonManifests From 4369a3c8914aaa8f980b85f11661151e66d9de0a Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 21 Aug 2024 16:02:13 -0700 Subject: [PATCH 03/66] snap --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 47f297e65..5f79e8f97 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.6.1-SNAPSHOT -mplDependencyJavaVersion=1.5.1 +mplDependencyJavaVersion=1.5.1-SNAPSHOT dafnyVersion=4.2.0 dafnyVerifyVersion=4.7.0 dafnyRuntimeJavaVersion=4.2.0 From b89564335fc9a64cbd4d440b8ff47ae4e8fb5ff1 Mon Sep 17 00:00:00 2001 From: Andy Jewell Date: Thu, 22 Aug 2024 17:29:48 -0400 Subject: [PATCH 04/66] remove unnecessary asserts --- .../src/QueryTransform.dfy | 10 ---------- .../DynamoDbEncryptionTransforms/src/ScanTransform.dfy | 10 ---------- 2 files changed, 20 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/QueryTransform.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/QueryTransform.dfy index 6eefe7fa2..e9d601f94 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/QueryTransform.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/QueryTransform.dfy @@ -92,16 +92,6 @@ module QueryTransform { var decryptRes := tableConfig.itemEncryptor.DecryptItem(decryptInput); var decrypted :- MapError(decryptRes); - // If the decrypted result was plaintext, i.e. has no parsedHeader - // then this is expected IFF the table config allows plaintext read - assert decrypted.parsedHeader.None? ==> - && EncOps.IsPlaintextItem(encryptedItems[x]) - && !tableConfig.plaintextOverride.FORBID_PLAINTEXT_WRITE_FORBID_PLAINTEXT_READ? - && ( - || tableConfig.plaintextOverride.FORBID_PLAINTEXT_WRITE_ALLOW_PLAINTEXT_READ? - || tableConfig.plaintextOverride.FORCE_PLAINTEXT_WRITE_ALLOW_PLAINTEXT_READ? - ); - if keyId.KeyId? && decrypted.parsedHeader.Some? { :- Need(|decrypted.parsedHeader.value.encryptedDataKeys| == 1, E("Query result has more than one Encrypted Data Key")); if decrypted.parsedHeader.value.encryptedDataKeys[0].keyProviderInfo == keyIdUtf8 { diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/ScanTransform.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/ScanTransform.dfy index 034cd7943..e412e5121 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/ScanTransform.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/ScanTransform.dfy @@ -90,16 +90,6 @@ module ScanTransform { var decryptRes := tableConfig.itemEncryptor.DecryptItem(decryptInput); var decrypted :- MapError(decryptRes); - // If the decrypted result was plaintext, i.e. has no parsedHeader - // then this is expected IFF the table config allows plaintext read - assert decrypted.parsedHeader.None? ==> - && EncOps.IsPlaintextItem(encryptedItems[x]) - && !tableConfig.plaintextOverride.FORBID_PLAINTEXT_WRITE_FORBID_PLAINTEXT_READ? - && ( - || tableConfig.plaintextOverride.FORBID_PLAINTEXT_WRITE_ALLOW_PLAINTEXT_READ? - || tableConfig.plaintextOverride.FORCE_PLAINTEXT_WRITE_ALLOW_PLAINTEXT_READ? - ); - if keyId.KeyId? && decrypted.parsedHeader.Some? { :- Need(|decrypted.parsedHeader.value.encryptedDataKeys| == 1, E("Scan result has more than one Encrypted Data Key")); if decrypted.parsedHeader.value.encryptedDataKeys[0].keyProviderInfo == keyIdUtf8 { From 81d8b26581cf3145b3ef661291d7c6cd1e8b006f Mon Sep 17 00:00:00 2001 From: Andy Jewell Date: Thu, 22 Aug 2024 18:27:43 -0400 Subject: [PATCH 05/66] m --- .../dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy | 1 + 1 file changed, 1 insertion(+) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy index 2667e361c..eebc07f85 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy @@ -243,6 +243,7 @@ module TestFixtures { ensures fresh(encryption) ensures fresh(encryption.Modifies) { + expect sortKey.None? || IsValid_KeySchemaAttributeName(sortKey.value); var keyring := GetKmsKeyring(); encryption :- expect DynamoDbEncryptionTransforms.DynamoDbEncryptionTransforms( DynamoDbTablesEncryptionConfig( From 482571293b777a64c33d2a75bc1d39faec3b58ab Mon Sep 17 00:00:00 2001 From: Andy Jewell Date: Thu, 22 Aug 2024 18:30:37 -0400 Subject: [PATCH 06/66] m --- .../dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy index eebc07f85..bb6633666 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy @@ -243,7 +243,7 @@ module TestFixtures { ensures fresh(encryption) ensures fresh(encryption.Modifies) { - expect sortKey.None? || IsValid_KeySchemaAttributeName(sortKey.value); + expect sortKey.None? || DDB.IsValid_KeySchemaAttributeName(sortKey.value); var keyring := GetKmsKeyring(); encryption :- expect DynamoDbEncryptionTransforms.DynamoDbEncryptionTransforms( DynamoDbTablesEncryptionConfig( From 7283823164d291d2e8cc089d8f5b74e35975efa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Mon, 26 Aug 2024 14:29:44 -0700 Subject: [PATCH 07/66] chore: add ddb local to dafny interop test vectors (#1316) * chore: add ddb local to dafny interop test vectors * bump setup-dafny --- .github/workflows/ci_codegen.yml | 2 +- .github/workflows/ci_examples_java.yml | 2 +- .github/workflows/ci_examples_net.yml | 2 +- .github/workflows/ci_test_java.yml | 2 +- .github/workflows/ci_test_net.yml | 2 +- .github/workflows/ci_test_vector_java.yml | 2 +- .github/workflows/ci_test_vector_net.yml | 2 +- .github/workflows/dafny_interop_examples_java.yml | 4 ++-- .github/workflows/dafny_interop_examples_net.yml | 4 ++-- .github/workflows/dafny_interop_java.yml | 4 ++-- .github/workflows/dafny_interop_test_net.yml | 4 ++-- .github/workflows/dafny_interop_test_vector_java.yml | 4 ++-- .github/workflows/dafny_interop_test_vector_net.yml | 9 +++++++-- .github/workflows/library_dafny_verification.yml | 2 +- .github/workflows/library_format.yml | 2 +- .github/workflows/test_vector_verification.yml | 2 +- 16 files changed, 27 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci_codegen.yml b/.github/workflows/ci_codegen.yml index cb04c3af8..5426d8777 100644 --- a/.github/workflows/ci_codegen.yml +++ b/.github/workflows/ci_codegen.yml @@ -38,7 +38,7 @@ jobs: # and to translate version strings such as "nightly-latest" # to an actual DAFNY_VERSION. - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/ci_examples_java.yml b/.github/workflows/ci_examples_java.yml index 63114b4d7..08e1b30b4 100644 --- a/.github/workflows/ci_examples_java.yml +++ b/.github/workflows/ci_examples_java.yml @@ -53,7 +53,7 @@ jobs: java-version: ${{ matrix.java-version }} - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/ci_examples_net.yml b/.github/workflows/ci_examples_net.yml index ed6c953a3..f9f458287 100644 --- a/.github/workflows/ci_examples_net.yml +++ b/.github/workflows/ci_examples_net.yml @@ -46,7 +46,7 @@ jobs: dotnet-version: ${{ matrix.dotnet-version }} - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/ci_test_java.yml b/.github/workflows/ci_test_java.yml index b36eb989a..e64e26873 100644 --- a/.github/workflows/ci_test_java.yml +++ b/.github/workflows/ci_test_java.yml @@ -47,7 +47,7 @@ jobs: submodules: recursive - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/ci_test_net.yml b/.github/workflows/ci_test_net.yml index f3145f4a5..6656e3060 100644 --- a/.github/workflows/ci_test_net.yml +++ b/.github/workflows/ci_test_net.yml @@ -47,7 +47,7 @@ jobs: dotnet-version: ${{ matrix.dotnet-version }} - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/ci_test_vector_java.yml b/.github/workflows/ci_test_vector_java.yml index 4e793163e..08cb684b9 100644 --- a/.github/workflows/ci_test_vector_java.yml +++ b/.github/workflows/ci_test_vector_java.yml @@ -56,7 +56,7 @@ jobs: submodules: recursive - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/ci_test_vector_net.yml b/.github/workflows/ci_test_vector_net.yml index dea03fc6a..a06af88df 100644 --- a/.github/workflows/ci_test_vector_net.yml +++ b/.github/workflows/ci_test_vector_net.yml @@ -52,7 +52,7 @@ jobs: submodules: recursive - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/dafny_interop_examples_java.yml b/.github/workflows/dafny_interop_examples_java.yml index c691218be..5e6b02cca 100644 --- a/.github/workflows/dafny_interop_examples_java.yml +++ b/.github/workflows/dafny_interop_examples_java.yml @@ -47,7 +47,7 @@ jobs: fetch-depth: 0 - name: Setup MPL Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.mpl-dafny }} @@ -74,7 +74,7 @@ jobs: make build_java CORES=$CORES - name: Setup DBESDK Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dbesdk-dafny}} diff --git a/.github/workflows/dafny_interop_examples_net.yml b/.github/workflows/dafny_interop_examples_net.yml index 5fcc96ece..245cada7e 100644 --- a/.github/workflows/dafny_interop_examples_net.yml +++ b/.github/workflows/dafny_interop_examples_net.yml @@ -47,7 +47,7 @@ jobs: dotnet-version: ${{ matrix.dotnet-version }} - name: Setup MPL Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.mpl-dafny }} @@ -81,7 +81,7 @@ jobs: make transpile_net CORES=$CORES - name: Setup DBESDK Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dbesdk-dafny}} diff --git a/.github/workflows/dafny_interop_java.yml b/.github/workflows/dafny_interop_java.yml index 75036f78d..90fa6322e 100644 --- a/.github/workflows/dafny_interop_java.yml +++ b/.github/workflows/dafny_interop_java.yml @@ -47,7 +47,7 @@ jobs: fetch-depth: 0 - name: Setup MPL Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.mpl-dafny }} @@ -74,7 +74,7 @@ jobs: make build_java CORES=$CORES - name: Setup DBESDK Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dbesdk-dafny}} diff --git a/.github/workflows/dafny_interop_test_net.yml b/.github/workflows/dafny_interop_test_net.yml index 276db70a7..07f2ede8a 100644 --- a/.github/workflows/dafny_interop_test_net.yml +++ b/.github/workflows/dafny_interop_test_net.yml @@ -47,7 +47,7 @@ jobs: dotnet-version: ${{ matrix.dotnet-version }} - name: Setup MPL Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.mpl-dafny }} @@ -81,7 +81,7 @@ jobs: make transpile_net CORES=$CORES - name: Setup DBESDK Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dbesdk-dafny}} diff --git a/.github/workflows/dafny_interop_test_vector_java.yml b/.github/workflows/dafny_interop_test_vector_java.yml index 3a4bb4636..57f5f57ab 100644 --- a/.github/workflows/dafny_interop_test_vector_java.yml +++ b/.github/workflows/dafny_interop_test_vector_java.yml @@ -56,7 +56,7 @@ jobs: fetch-depth: 0 - name: Setup MPL Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.mpl-dafny }} @@ -84,7 +84,7 @@ jobs: make mvn_local_deploy - name: Setup DBESDK Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dbesdk-dafny}} diff --git a/.github/workflows/dafny_interop_test_vector_net.yml b/.github/workflows/dafny_interop_test_vector_net.yml index 6d8127afa..33d45ebb7 100644 --- a/.github/workflows/dafny_interop_test_vector_net.yml +++ b/.github/workflows/dafny_interop_test_vector_net.yml @@ -33,6 +33,11 @@ jobs: DOTNET_CLI_TELEMETRY_OPTOUT: 1 DOTNET_NOLOGO: 1 steps: + - name: Setup DynamoDB Local + uses: rrainn/dynamodb-action@v4.0.0 + with: + port: 8000 + cors: "*" - name: Support longpaths on Git checkout run: | git config --global core.longpaths true @@ -47,7 +52,7 @@ jobs: dotnet-version: ${{ matrix.dotnet-version }} - name: Setup MPL Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.mpl-dafny }} @@ -81,7 +86,7 @@ jobs: make transpile_net CORES=$CORES - name: Setup DBESDK Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dbesdk-dafny}} diff --git a/.github/workflows/library_dafny_verification.yml b/.github/workflows/library_dafny_verification.yml index 350f08fc1..b1803683d 100644 --- a/.github/workflows/library_dafny_verification.yml +++ b/.github/workflows/library_dafny_verification.yml @@ -53,7 +53,7 @@ jobs: submodules: recursive - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} diff --git a/.github/workflows/library_format.yml b/.github/workflows/library_format.yml index 1b4b8f59d..af4af2ed2 100644 --- a/.github/workflows/library_format.yml +++ b/.github/workflows/library_format.yml @@ -37,7 +37,7 @@ jobs: submodules: recursive - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ '4.2.0' }} diff --git a/.github/workflows/test_vector_verification.yml b/.github/workflows/test_vector_verification.yml index 4d3ef8406..aa4a488dc 100644 --- a/.github/workflows/test_vector_verification.yml +++ b/.github/workflows/test_vector_verification.yml @@ -43,7 +43,7 @@ jobs: submodules: recursive - name: Setup Dafny - uses: dafny-lang/setup-dafny-action@v1.7.2 + uses: dafny-lang/setup-dafny-action@v1.8.0 with: dafny-version: ${{ inputs.dafny }} From 621e9ccb94f5b1b0bbbf0f379600ddbdcec337e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Wed, 28 Aug 2024 10:01:14 -0700 Subject: [PATCH 08/66] fix: remove usage of `:|` (#1320) --- .../src/BatchGetItemTransform.dfy | 13 ++++++----- .../src/BatchWriteItemTransform.dfy | 22 ++++++++++++++----- .../src/Index.dfy | 14 +++++++----- 3 files changed, 33 insertions(+), 16 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchGetItemTransform.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchGetItemTransform.dfy index 26c0172ba..25dad2033 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchGetItemTransform.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchGetItemTransform.dfy @@ -11,6 +11,7 @@ module BatchGetItemTransform { import opened AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes import EncTypes = AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes import Seq + import SortedSets method Input(config: Config, input: BatchGetItemInputTransformInput) returns (output: Result) @@ -34,14 +35,15 @@ module BatchGetItemTransform { return Success(BatchGetItemOutputTransformOutput(transformedOutput := input.sdkOutput)); } var tableNames := input.sdkOutput.Responses.value.Keys; + var tableNamesSeq := SortedSets.ComputeSetToSequence(tableNames); + ghost var tableNamesSet' := tableNames; + var i := 0; var result := map[]; - while tableNames != {} - decreases |tableNames| - invariant tableNames <= input.sdkOutput.Responses.value.Keys + while i < |tableNamesSeq| + invariant tableNamesSet' <= input.sdkOutput.Responses.value.Keys // true but expensive -- invariant result.Keys + tableNames == input.sdkOutput.Responses.value.Keys { - var tableName :| tableName in tableNames; - tableNames := tableNames - { tableName }; + var tableName := tableNamesSeq[i]; var responses := input.sdkOutput.Responses.value[tableName]; if tableName in config.tableEncryptionConfigs { var tableConfig := config.tableEncryptionConfigs[tableName]; @@ -74,6 +76,7 @@ module BatchGetItemTransform { } else { result := result + map[tableName := responses]; } + i := i + 1; } return Success(BatchGetItemOutputTransformOutput(transformedOutput := input.sdkOutput.(Responses := Some(result)))); } diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchWriteItemTransform.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchWriteItemTransform.dfy index 482a222c1..5073b5c4e 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchWriteItemTransform.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/BatchWriteItemTransform.dfy @@ -11,9 +11,10 @@ module BatchWriteItemTransform { import opened AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes import EncTypes = AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes import Seq + import SortedSets import Util = DynamoDbEncryptionUtil - method Input(config: Config, input: BatchWriteItemInputTransformInput) + method {:vcs_split_on_every_assert} Input(config: Config, input: BatchWriteItemInputTransformInput) returns (output: Result) requires ValidConfig?(config) ensures ValidConfig?(config) @@ -21,12 +22,16 @@ module BatchWriteItemTransform { { var tableNames := input.sdkInput.RequestItems.Keys; var result : map := map[]; - while tableNames != {} - decreases |tableNames| - invariant tableNames <= input.sdkInput.RequestItems.Keys + var tableNamesSeq := SortedSets.ComputeSetToSequence(tableNames); + ghost var tableNamesSet' := tableNames; + var i := 0; + while i < |tableNamesSeq| + invariant Seq.HasNoDuplicates(tableNamesSeq) + invariant forall j | i <= j < |tableNamesSeq| :: tableNamesSeq[j] in tableNamesSet' + invariant |tableNamesSet'| == |tableNamesSeq| - i + invariant tableNamesSet' <= input.sdkInput.RequestItems.Keys { - var tableName :| tableName in tableNames; - tableNames := tableNames - { tableName }; + var tableName := tableNamesSeq[i]; var writeRequests : DDB.WriteRequests := input.sdkInput.RequestItems[tableName]; //= specification/dynamodb-encryption-client/ddb-sdk-integration.md#encrypt-before-batchwriteitem @@ -64,6 +69,11 @@ module BatchWriteItemTransform { } writeRequests := encryptedItems; } + tableNamesSet' := tableNamesSet' - {tableName}; + i := i + 1; + assert forall j | i <= j < |tableNamesSeq| :: tableNamesSeq[j] in tableNamesSet' by { + reveal Seq.HasNoDuplicates(); + } result := result[tableName := writeRequests]; } :- Need(|result| == |input.sdkInput.RequestItems|, E("Internal Error")); // Dafny gets too confused diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy index bf08e3e59..f44f59b6c 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy @@ -16,6 +16,7 @@ module import DynamoDbItemEncryptor import SearchConfigToInfo import Seq + import SortedSets import ET = AwsCryptographyDbEncryptionSdkDynamoDbTypes import SET = AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes import DDB = ComAmazonawsDynamodbTypes @@ -119,6 +120,9 @@ module //# [DynamoDb Item Encryptor](./ddb-table-encryption-config.md) //# per configured table, using these table encryption configs. var m' := config.tableEncryptionConfigs; + var mKeys := m'.Keys; + var tableNamesSeq := SortedSets.ComputeSetToSequence(mKeys); + ghost var mKeysSet := mKeys; ghost var inputConfigsModifies: set := set tableConfig <- config.tableEncryptionConfigs.Values, @@ -130,8 +134,9 @@ module :: o; var allLogicalTableNames := {}; + var i := 0; - while m'.Keys != {} + while i < |tableNamesSeq| invariant m'.Keys <= config.tableEncryptionConfigs.Keys invariant forall k <- m' :: m'[k] == config.tableEncryptionConfigs[k] invariant forall internalConfig <- internalConfigs.Values :: internalConfig.logicalTableName in allLogicalTableNames @@ -140,10 +145,10 @@ module invariant AllTableConfigsValid?(internalConfigs) invariant ValidConfig?(Config(internalConfigs)) - decreases m'.Keys modifies inputConfigsModifies { - var tableName: string :| tableName in m'; + var tableName: string := tableNamesSeq[i]; + var inputConfig := config.tableEncryptionConfigs[tableName]; :- Need(inputConfig.logicalTableName !in allLogicalTableNames, E("Duplicate logical table maped to multipule physical tables: " + inputConfig.logicalTableName)); @@ -223,8 +228,7 @@ module assert ConfigsMatch(tableName, internalConfig, inputConfig); } - // Pop 'tableName' off the map, so that we may continue iterating - m' := map k' | k' in m' && k' != tableName :: m'[k']; + i := i + 1; } assert SearchValidState(DdbMiddlewareConfig.Config(tableEncryptionConfigs := internalConfigs)); From 4c608d26feab53e0dc67beedf6e98b56324a7717 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Thu, 29 Aug 2024 12:18:01 -0700 Subject: [PATCH 09/66] chore: add check only keyword action (#1327) --- .github/workflows/check_only_key_word.yml | 40 +++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .github/workflows/check_only_key_word.yml diff --git a/.github/workflows/check_only_key_word.yml b/.github/workflows/check_only_key_word.yml new file mode 100644 index 000000000..94e2fe95a --- /dev/null +++ b/.github/workflows/check_only_key_word.yml @@ -0,0 +1,40 @@ +# This workflow checks if you are checking in dafny code +# with the keyword {:only}, it adds a message to the pull +# request to remind you to remove it. +name: Check {:only} decorator presence + +on: + pull_request: + +jobs: + grep-only-verification-keyword: + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Check only keyword + id: only-keyword + shell: bash + run: + # checking in code with the dafny decorator {:only} + # will not verify the entire file or maybe the entire project depending on its configuration + # This action checks if you are either adding or removing the {:only} decorator and posting on the pr if you are. + echo "ONLY_KEYWORD=$(git diff origin/main origin/${GITHUB_HEAD_REF} **/*.dfy | grep -i {:only})" >> "$GITHUB_OUTPUT" + + - name: Check if ONLY_KEYWORD is not empty + id: comment + env: + PR_NUMBER: ${{ github.event.number }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ONLY_KEYWORD: ${{ steps.only-keyword.outputs.ONLY_KEYWORD }} + if: ${{env.ONLY_KEYWORD != ''}} + run: | + COMMENT="It looks like you are adding or removing the dafny keyword {:only}.\nIs this intended?" + COMMENT_URL="https://api.github.com/repos/${{ github.repository }}/issues/${PR_NUMBER}/comments" + curl -s -H "Authorization: token ${GITHUB_TOKEN}" -X POST $COMMENT_URL -d "{\"body\":\"$COMMENT\"}" + exit 1 From cd69b161a0c3bc0387ef1d2ee0ac7714ec49562a Mon Sep 17 00:00:00 2001 From: Andrew Jewell <107044381+ajewellamz@users.noreply.github.com> Date: Tue, 10 Sep 2024 12:37:12 -0400 Subject: [PATCH 10/66] chore: remove /// from smithy files (#1349) --- .../dafny/DynamoDbEncryption/Model/DynamoDbEncryption.smithy | 1 - .../DynamoDbItemEncryptor/Model/DynamoDbItemEncryptor.smithy | 1 - .../dafny/StructuredEncryption/Model/StructuredEncryption.smithy | 1 - 3 files changed, 3 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/DynamoDbEncryption.smithy b/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/DynamoDbEncryption.smithy index b4fa422a0..64b4c82ac 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/DynamoDbEncryption.smithy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/DynamoDbEncryption.smithy @@ -873,7 +873,6 @@ structure CreateDynamoDbEncryptionBranchKeyIdSupplierOutput { branchKeyIdSupplier: BranchKeyIdSupplierReference } -///////////// // Errors @error("client") diff --git a/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/DynamoDbItemEncryptor.smithy b/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/DynamoDbItemEncryptor.smithy index d128547b4..ae11f9361 100644 --- a/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/DynamoDbItemEncryptor.smithy +++ b/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/DynamoDbItemEncryptor.smithy @@ -224,7 +224,6 @@ structure AtomicPrimitivesReference {} @aws.polymorph#reference(service: aws.cryptography.dbEncryptionSdk.structuredEncryption#StructuredEncryption) structure StructuredEncryptionReference {} -///////////// // Errors @error("client") diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/Model/StructuredEncryption.smithy b/DynamoDbEncryption/dafny/StructuredEncryption/Model/StructuredEncryption.smithy index c44a6bc00..a8e2fff5d 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/Model/StructuredEncryption.smithy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/Model/StructuredEncryption.smithy @@ -405,7 +405,6 @@ list AuthList { @aws.polymorph#reference(service: aws.cryptography.primitives#AwsCryptographicPrimitives) structure AtomicPrimitivesReference {} -///////////// // Errors @error("client") From e8bcd12486562794160d2d79cd84f4f0c02c0a22 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Tue, 24 Sep 2024 15:50:38 -0700 Subject: [PATCH 11/66] m --- .../action.yml | 21 +++ .github/workflows/ci_codegen.yml | 12 +- DynamoDbEncryption/.gitignore | 2 + .../dotnet/dafny-4.8.0.patch | 51 +++++++ .../dotnet/dafny-4.8.0.patch | 15 ++ .../dotnet/dafny-4.8.0.patch | 15 ++ .../dotnet/dafny-4.8.0.patch | 15 ++ .../test/TestFixtures.dfy | 51 ++++--- .../DynamoDbKeyBranchKeyIdSupplier.java | 12 +- .../dbencryptionsdk/dynamodb/ToDafny.java | 134 ++++++++++++++---- .../dynamodb/itemencryptor/ToDafny.java | 51 +++++-- .../dynamodb/transforms/ToDafny.java | 5 +- .../BatchGetItemInputTransformInput.java | 12 ++ .../BatchGetItemInputTransformOutput.java | 12 ++ .../BatchGetItemOutputTransformInput.java | 24 ++++ .../BatchGetItemOutputTransformOutput.java | 12 ++ .../BatchWriteItemInputTransformInput.java | 12 ++ .../BatchWriteItemInputTransformOutput.java | 12 ++ .../BatchWriteItemOutputTransformInput.java | 24 ++++ .../BatchWriteItemOutputTransformOutput.java | 12 ++ .../model/DeleteItemInputTransformInput.java | 12 ++ .../model/DeleteItemInputTransformOutput.java | 12 ++ .../model/DeleteItemOutputTransformInput.java | 24 ++++ .../DeleteItemOutputTransformOutput.java | 12 ++ .../model/GetItemInputTransformInput.java | 12 ++ .../model/GetItemInputTransformOutput.java | 12 ++ .../model/GetItemOutputTransformInput.java | 24 ++++ .../model/GetItemOutputTransformOutput.java | 12 ++ .../model/PutItemInputTransformInput.java | 12 ++ .../model/PutItemInputTransformOutput.java | 12 ++ .../model/PutItemOutputTransformInput.java | 24 ++++ .../model/PutItemOutputTransformOutput.java | 12 ++ .../model/QueryInputTransformInput.java | 12 ++ .../model/QueryInputTransformOutput.java | 12 ++ .../model/QueryOutputTransformInput.java | 24 ++++ .../model/QueryOutputTransformOutput.java | 12 ++ .../model/ScanInputTransformInput.java | 12 ++ .../model/ScanInputTransformOutput.java | 12 ++ .../model/ScanOutputTransformInput.java | 24 ++++ .../model/ScanOutputTransformOutput.java | 12 ++ .../model/UpdateItemInputTransformInput.java | 12 ++ .../model/UpdateItemInputTransformOutput.java | 12 ++ .../model/UpdateItemOutputTransformInput.java | 24 ++++ .../UpdateItemOutputTransformOutput.java | 12 ++ .../structuredencryption/ToDafny.java | 51 ++++++- SharedMakefile.mk | 11 ++ TestVectors/project.properties | 4 + .../wrapped/TestDynamoDbEncryption.java | 24 +++- .../Generated/DDBEncryption/TypeConversion.cs | 4 + project.properties | 8 +- submodules/MaterialProviders | 2 +- submodules/smithy-dafny | 2 +- 52 files changed, 881 insertions(+), 89 deletions(-) create mode 100644 .github/actions/install_smithy_dafny_codegen_dependencies/action.yml create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch create mode 100644 DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch create mode 100644 TestVectors/project.properties diff --git a/.github/actions/install_smithy_dafny_codegen_dependencies/action.yml b/.github/actions/install_smithy_dafny_codegen_dependencies/action.yml new file mode 100644 index 000000000..d4df6ab8a --- /dev/null +++ b/.github/actions/install_smithy_dafny_codegen_dependencies/action.yml @@ -0,0 +1,21 @@ +# +# This local action sets up code dependencies +# to run Smithy-Dafny CI in GitHub Actions workflows. +# + +name: "Install Smithy-Dafny codegen dependencies" +description: "Install Java package dependencies required to run Smithy-Dafny codegen" +runs: + using: "composite" + steps: + - name: Install smithy-dafny-codegen Rust dependencies locally + uses: gradle/gradle-build-action@v2 + with: + arguments: :codegen-client:pTML :codegen-core:pTML :rust-runtime:pTML + build-root-directory: submodules/smithy-dafny/smithy-dafny-codegen-modules/smithy-rs + + - name: Install smithy-dafny-codegen Python dependencies locally + uses: gradle/gradle-build-action@v2 + with: + arguments: :smithy-python-codegen:pTML + build-root-directory: submodules/smithy-dafny/codegen/smithy-dafny-codegen-modules/smithy-python/codegen diff --git a/.github/workflows/ci_codegen.yml b/.github/workflows/ci_codegen.yml index 5426d8777..092259a40 100644 --- a/.github/workflows/ci_codegen.yml +++ b/.github/workflows/ci_codegen.yml @@ -33,6 +33,7 @@ jobs: - uses: actions/checkout@v3 with: submodules: recursive + - run: git submodule update --init --recursive submodules/smithy-dafny # Only used to format generated code # and to translate version strings such as "nightly-latest" @@ -47,8 +48,17 @@ jobs: with: dotnet-version: ${{ matrix.dotnet-version }} + - name: Setup Java 17 for codegen + uses: actions/setup-java@v3 + with: + distribution: "corretto" + java-version: "17" + + - name: Install Smithy-Dafny codegen dependencies + uses: ./.github/actions/install_smithy_dafny_codegen_dependencies + - uses: ./.github/actions/polymorph_codegen with: - dafny: ${{ env.DAFNY_VERSION }} + dafny: ${{ inputs.dafny }} library: ${{ matrix.library }} diff-generated-code: true diff --git a/DynamoDbEncryption/.gitignore b/DynamoDbEncryption/.gitignore index b8d4ccd01..e652cbedf 100644 --- a/DynamoDbEncryption/.gitignore +++ b/DynamoDbEncryption/.gitignore @@ -1,6 +1,8 @@ TestResults ImplementationFromDafny.cs TestsFromDafny.cs +ImplementationFromDafny-cs.dtr +TestsFromDafny-cs.dtr **/bin **/obj node_modules diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..4f80638b8 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,51 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +index 9601968..a2a04f8 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +@@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; ++ // BEGIN MANUAL EDIT ++ public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) ++ { ++ if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) ++ { ++ return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); ++ } ++ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); ++ } ++ public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) ++ { ++ if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) ++ { ++ return nativeValue.impl(); ++ } ++ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); ++ } ++ public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) ++ { ++ if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; ++ return new LegacyDynamoDbEncryptor(value); + ++ } ++ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) ++ { ++ switch (value) ++ { ++ case LegacyDynamoDbEncryptor valueWithImpl: ++ return valueWithImpl._impl; ++ case LegacyDynamoDbEncryptorBase nativeImpl: ++ return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); ++ default: ++ throw new System.ArgumentException( ++ "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); ++ } ++ } ++ // END MANUAL EDIT + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..e4f743fff --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch @@ -0,0 +1,15 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +index 2f95341..36226d3 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; +- + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..5631d0784 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch @@ -0,0 +1,15 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +index da904fc..c5b0bed 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; +- + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..4f5051d38 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,15 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +index d0a4e58..4e9890c 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; +- + public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) + { + if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy index bb6633666..6a6a1ef7b 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/test/TestFixtures.dfy @@ -237,32 +237,31 @@ module TestFixtures { assume {:axiom} fresh(encryption.Modifies); } - method GetDynamoDbEncryptionTransforms2(actions : AttributeActions, sortKey : Option) - returns (encryption: DynamoDbEncryptionTransforms.DynamoDbEncryptionTransformsClient) - ensures encryption.ValidState() - ensures fresh(encryption) - ensures fresh(encryption.Modifies) - { - expect sortKey.None? || DDB.IsValid_KeySchemaAttributeName(sortKey.value); - var keyring := GetKmsKeyring(); - encryption :- expect DynamoDbEncryptionTransforms.DynamoDbEncryptionTransforms( - DynamoDbTablesEncryptionConfig( - tableEncryptionConfigs := map[ - "foo" := DynamoDbTableEncryptionConfig( - logicalTableName := "foo", - partitionKeyName := "bar", - sortKeyName := sortKey, - attributeActionsOnEncrypt := actions, - allowedUnsignedAttributes := Some(["plain"]), - allowedUnsignedAttributePrefix := None(), - algorithmSuiteId := None(), - keyring := Some(keyring) - ) - ] - ) - ); - assume {:axiom} fresh(encryption.Modifies); - } + // method GetDynamoDbEncryptionTransforms2(actions : AttributeActions, sortKey : Option) + // returns (encryption: DynamoDbEncryptionTransforms.DynamoDbEncryptionTransformsClient) + // ensures encryption.ValidState() + // ensures fresh(encryption) + // ensures fresh(encryption.Modifies) + // { + // var keyring := GetKmsKeyring(); + // encryption :- expect DynamoDbEncryptionTransforms.DynamoDbEncryptionTransforms( + // DynamoDbTablesEncryptionConfig( + // tableEncryptionConfigs := map[ + // "foo" := DynamoDbTableEncryptionConfig( + // logicalTableName := "foo", + // partitionKeyName := "bar", + // sortKeyName := sortKey, + // attributeActionsOnEncrypt := actions, + // allowedUnsignedAttributes := Some(["plain"]), + // allowedUnsignedAttributePrefix := None(), + // algorithmSuiteId := None(), + // keyring := Some(keyring) + // ) + // ] + // ) + // ); + // assume {:axiom} fresh(encryption.Modifies); + // } // type AttributeActions = map diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/DynamoDbKeyBranchKeyIdSupplier.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/DynamoDbKeyBranchKeyIdSupplier.java index 9c0d33bbc..2e67b9012 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/DynamoDbKeyBranchKeyIdSupplier.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/DynamoDbKeyBranchKeyIdSupplier.java @@ -103,9 +103,17 @@ > GetBranchKeyIdFromDdbKey( this._impl.GetBranchKeyIdFromDdbKey(nativeInput); software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetBranchKeyIdFromDdbKeyOutput dafnyOutput = ToDafny.GetBranchKeyIdFromDdbKeyOutput(nativeOutput); - return Result.create_Success(dafnyOutput); + return Result.create_Success( + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetBranchKeyIdFromDdbKeyOutput._typeDescriptor(), + Error._typeDescriptor(), + dafnyOutput + ); } catch (RuntimeException ex) { - return Result.create_Failure(ToDafny.Error(ex)); + return Result.create_Failure( + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetBranchKeyIdFromDdbKeyOutput._typeDescriptor(), + Error._typeDescriptor(), + ToDafny.Error(ex) + ); } } diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java index 88677a441..a20f1f9d3 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java @@ -6,6 +6,7 @@ import Wrappers_Compile.Option; import dafny.DafnyMap; import dafny.DafnySequence; +import dafny.TypeDescriptor; import java.lang.Boolean; import java.lang.Character; import java.lang.IllegalArgumentException; @@ -129,31 +130,45 @@ public static BeaconVersion BeaconVersion( (Objects.nonNull(nativeValue.compoundBeacons()) && nativeValue.compoundBeacons().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor(CompoundBeacon._typeDescriptor()), ToDafny.CompoundBeaconList(nativeValue.compoundBeacons()) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(CompoundBeacon._typeDescriptor()) + ); Option> virtualFields; virtualFields = (Objects.nonNull(nativeValue.virtualFields()) && nativeValue.virtualFields().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor(VirtualField._typeDescriptor()), ToDafny.VirtualFieldList(nativeValue.virtualFields()) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(VirtualField._typeDescriptor()) + ); Option> encryptedParts; encryptedParts = (Objects.nonNull(nativeValue.encryptedParts()) && nativeValue.encryptedParts().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor(EncryptedPart._typeDescriptor()), ToDafny.EncryptedPartsList(nativeValue.encryptedParts()) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(EncryptedPart._typeDescriptor()) + ); Option> signedParts; signedParts = (Objects.nonNull(nativeValue.signedParts()) && nativeValue.signedParts().size() > 0) - ? Option.create_Some(ToDafny.SignedPartsList(nativeValue.signedParts())) - : Option.create_None(); + ? Option.create_Some( + DafnySequence._typeDescriptor(SignedPart._typeDescriptor()), + ToDafny.SignedPartsList(nativeValue.signedParts()) + ) + : Option.create_None( + DafnySequence._typeDescriptor(SignedPart._typeDescriptor()) + ); return new BeaconVersion( version, keyStore, @@ -184,22 +199,33 @@ public static CompoundBeacon CompoundBeacon( (Objects.nonNull(nativeValue.encrypted()) && nativeValue.encrypted().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor(EncryptedPart._typeDescriptor()), ToDafny.EncryptedPartsList(nativeValue.encrypted()) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(EncryptedPart._typeDescriptor()) + ); Option> signed; signed = (Objects.nonNull(nativeValue.signed()) && nativeValue.signed().size() > 0) - ? Option.create_Some(ToDafny.SignedPartsList(nativeValue.signed())) - : Option.create_None(); + ? Option.create_Some( + DafnySequence._typeDescriptor(SignedPart._typeDescriptor()), + ToDafny.SignedPartsList(nativeValue.signed()) + ) + : Option.create_None( + DafnySequence._typeDescriptor(SignedPart._typeDescriptor()) + ); Option> constructors; constructors = (Objects.nonNull(nativeValue.constructors()) && nativeValue.constructors().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor(Constructor._typeDescriptor()), ToDafny.ConstructorList(nativeValue.constructors()) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(Constructor._typeDescriptor()) + ); return new CompoundBeacon(name, split, encrypted, signed, constructors); } @@ -273,16 +299,22 @@ public static DynamoDbTableEncryptionConfig DynamoDbTableEncryptionConfig( sortKeyName = Objects.nonNull(nativeValue.sortKeyName()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.sortKeyName() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); Option search; search = Objects.nonNull(nativeValue.search()) - ? Option.create_Some(ToDafny.SearchConfig(nativeValue.search())) - : Option.create_None(); + ? Option.create_Some( + SearchConfig._typeDescriptor(), + ToDafny.SearchConfig(nativeValue.search()) + ) + : Option.create_None(SearchConfig._typeDescriptor()); DafnyMap< ? extends DafnySequence, ? extends CryptoAction @@ -296,61 +328,78 @@ public static DynamoDbTableEncryptionConfig DynamoDbTableEncryptionConfig( (Objects.nonNull(nativeValue.allowedUnsignedAttributes()) && nativeValue.allowedUnsignedAttributes().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ), software.amazon.cryptography.services.dynamodb.internaldafny.ToDafny.AttributeNameList( nativeValue.allowedUnsignedAttributes() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ) + ); Option> allowedUnsignedAttributePrefix; allowedUnsignedAttributePrefix = Objects.nonNull(nativeValue.allowedUnsignedAttributePrefix()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.allowedUnsignedAttributePrefix() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); Option algorithmSuiteId; algorithmSuiteId = Objects.nonNull(nativeValue.algorithmSuiteId()) ? Option.create_Some( + DBEAlgorithmSuiteId._typeDescriptor(), software.amazon.cryptography.materialproviders.ToDafny.DBEAlgorithmSuiteId( nativeValue.algorithmSuiteId() ) ) - : Option.create_None(); + : Option.create_None(DBEAlgorithmSuiteId._typeDescriptor()); Option keyring; keyring = Objects.nonNull(nativeValue.keyring()) ? Option.create_Some( + TypeDescriptor.reference(IKeyring.class), software.amazon.cryptography.materialproviders.ToDafny.Keyring( nativeValue.keyring() ) ) - : Option.create_None(); + : Option.create_None(TypeDescriptor.reference(IKeyring.class)); Option cmm; cmm = Objects.nonNull(nativeValue.cmm()) ? Option.create_Some( + TypeDescriptor.reference(ICryptographicMaterialsManager.class), software.amazon.cryptography.materialproviders.ToDafny.CryptographicMaterialsManager( nativeValue.cmm() ) ) - : Option.create_None(); + : Option.create_None( + TypeDescriptor.reference(ICryptographicMaterialsManager.class) + ); Option legacyOverride; legacyOverride = Objects.nonNull(nativeValue.legacyOverride()) ? Option.create_Some( + LegacyOverride._typeDescriptor(), ToDafny.LegacyOverride(nativeValue.legacyOverride()) ) - : Option.create_None(); + : Option.create_None(LegacyOverride._typeDescriptor()); Option plaintextOverride; plaintextOverride = Objects.nonNull(nativeValue.plaintextOverride()) ? Option.create_Some( + PlaintextOverride._typeDescriptor(), ToDafny.PlaintextOverride(nativeValue.plaintextOverride()) ) - : Option.create_None(); + : Option.create_None(PlaintextOverride._typeDescriptor()); return new DynamoDbTableEncryptionConfig( logicalTableName, partitionKeyName, @@ -393,29 +442,38 @@ public static EncryptedDataKeyDescription EncryptedDataKeyDescription( keyProviderInfo = Objects.nonNull(nativeValue.keyProviderInfo()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.keyProviderInfo() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); Option> branchKeyId; branchKeyId = Objects.nonNull(nativeValue.branchKeyId()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.branchKeyId() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); Option> branchKeyVersion; branchKeyVersion = Objects.nonNull(nativeValue.branchKeyVersion()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.branchKeyVersion() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); return new EncryptedDataKeyDescription( keyProviderId, keyProviderInfo, @@ -570,11 +628,12 @@ public static LegacyOverride LegacyOverride( defaultAttributeFlag = Objects.nonNull(nativeValue.defaultAttributeFlag()) ? Option.create_Some( + CryptoAction._typeDescriptor(), software.amazon.cryptography.dbencryptionsdk.structuredencryption.ToDafny.CryptoAction( nativeValue.defaultAttributeFlag() ) ) - : Option.create_None(); + : Option.create_None(CryptoAction._typeDescriptor()); return new LegacyOverride( policy, encryptor, @@ -603,11 +662,12 @@ public static MultiKeyStore MultiKeyStore( cache = Objects.nonNull(nativeValue.cache()) ? Option.create_Some( + CacheType._typeDescriptor(), software.amazon.cryptography.materialproviders.ToDafny.CacheType( nativeValue.cache() ) ) - : Option.create_None(); + : Option.create_None(CacheType._typeDescriptor()); return new MultiKeyStore(keyFieldName, cacheTTL, cache); } @@ -666,11 +726,14 @@ public static SignedPart SignedPart( loc = Objects.nonNull(nativeValue.loc()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.loc() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); return new SignedPart(name, prefix, loc); } @@ -701,16 +764,22 @@ public static StandardBeacon StandardBeacon( loc = Objects.nonNull(nativeValue.loc()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.loc() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); Option style; style = Objects.nonNull(nativeValue.style()) - ? Option.create_Some(ToDafny.BeaconStyle(nativeValue.style())) - : Option.create_None(); + ? Option.create_Some( + BeaconStyle._typeDescriptor(), + ToDafny.BeaconStyle(nativeValue.style()) + ) + : Option.create_None(BeaconStyle._typeDescriptor()); return new StandardBeacon(name, length, loc, style); } @@ -744,8 +813,13 @@ public static VirtualPart VirtualPart( Option> trans; trans = (Objects.nonNull(nativeValue.trans()) && nativeValue.trans().size() > 0) - ? Option.create_Some(ToDafny.VirtualTransformList(nativeValue.trans())) - : Option.create_None(); + ? Option.create_Some( + DafnySequence._typeDescriptor(VirtualTransform._typeDescriptor()), + ToDafny.VirtualTransformList(nativeValue.trans()) + ) + : Option.create_None( + DafnySequence._typeDescriptor(VirtualTransform._typeDescriptor()) + ); return new VirtualPart(loc, trans); } diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java index c0ea35b5a..37d593f32 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java @@ -6,6 +6,7 @@ import Wrappers_Compile.Option; import dafny.DafnyMap; import dafny.DafnySequence; +import dafny.TypeDescriptor; import java.lang.Byte; import java.lang.Character; import java.lang.RuntimeException; @@ -92,8 +93,11 @@ public static DecryptItemOutput DecryptItemOutput( Option parsedHeader; parsedHeader = Objects.nonNull(nativeValue.parsedHeader()) - ? Option.create_Some(ToDafny.ParsedHeader(nativeValue.parsedHeader())) - : Option.create_None(); + ? Option.create_Some( + ParsedHeader._typeDescriptor(), + ToDafny.ParsedHeader(nativeValue.parsedHeader()) + ) + : Option.create_None(ParsedHeader._typeDescriptor()); return new DecryptItemOutput(plaintextItem, parsedHeader); } @@ -114,11 +118,14 @@ public static DynamoDbItemEncryptorConfig DynamoDbItemEncryptorConfig( sortKeyName = Objects.nonNull(nativeValue.sortKeyName()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.sortKeyName() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); DafnyMap< ? extends DafnySequence, ? extends CryptoAction @@ -134,65 +141,82 @@ public static DynamoDbItemEncryptorConfig DynamoDbItemEncryptorConfig( (Objects.nonNull(nativeValue.allowedUnsignedAttributes()) && nativeValue.allowedUnsignedAttributes().size() > 0) ? Option.create_Some( + DafnySequence._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ), software.amazon.cryptography.services.dynamodb.internaldafny.ToDafny.AttributeNameList( nativeValue.allowedUnsignedAttributes() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ) + ); Option> allowedUnsignedAttributePrefix; allowedUnsignedAttributePrefix = Objects.nonNull(nativeValue.allowedUnsignedAttributePrefix()) ? Option.create_Some( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR), software.amazon.smithy.dafny.conversion.ToDafny.Simple.CharacterSequence( nativeValue.allowedUnsignedAttributePrefix() ) ) - : Option.create_None(); + : Option.create_None( + DafnySequence._typeDescriptor(TypeDescriptor.CHAR) + ); Option algorithmSuiteId; algorithmSuiteId = Objects.nonNull(nativeValue.algorithmSuiteId()) ? Option.create_Some( + DBEAlgorithmSuiteId._typeDescriptor(), software.amazon.cryptography.materialproviders.ToDafny.DBEAlgorithmSuiteId( nativeValue.algorithmSuiteId() ) ) - : Option.create_None(); + : Option.create_None(DBEAlgorithmSuiteId._typeDescriptor()); Option keyring; keyring = Objects.nonNull(nativeValue.keyring()) ? Option.create_Some( + TypeDescriptor.reference(IKeyring.class), software.amazon.cryptography.materialproviders.ToDafny.Keyring( nativeValue.keyring() ) ) - : Option.create_None(); + : Option.create_None(TypeDescriptor.reference(IKeyring.class)); Option cmm; cmm = Objects.nonNull(nativeValue.cmm()) ? Option.create_Some( + TypeDescriptor.reference(ICryptographicMaterialsManager.class), software.amazon.cryptography.materialproviders.ToDafny.CryptographicMaterialsManager( nativeValue.cmm() ) ) - : Option.create_None(); + : Option.create_None( + TypeDescriptor.reference(ICryptographicMaterialsManager.class) + ); Option legacyOverride; legacyOverride = Objects.nonNull(nativeValue.legacyOverride()) ? Option.create_Some( + LegacyOverride._typeDescriptor(), software.amazon.cryptography.dbencryptionsdk.dynamodb.ToDafny.LegacyOverride( nativeValue.legacyOverride() ) ) - : Option.create_None(); + : Option.create_None(LegacyOverride._typeDescriptor()); Option plaintextOverride; plaintextOverride = Objects.nonNull(nativeValue.plaintextOverride()) ? Option.create_Some( + PlaintextOverride._typeDescriptor(), software.amazon.cryptography.dbencryptionsdk.dynamodb.ToDafny.PlaintextOverride( nativeValue.plaintextOverride() ) ) - : Option.create_None(); + : Option.create_None(PlaintextOverride._typeDescriptor()); return new DynamoDbItemEncryptorConfig( logicalTableName, partitionKeyName, @@ -236,8 +260,11 @@ public static EncryptItemOutput EncryptItemOutput( Option parsedHeader; parsedHeader = Objects.nonNull(nativeValue.parsedHeader()) - ? Option.create_Some(ToDafny.ParsedHeader(nativeValue.parsedHeader())) - : Option.create_None(); + ? Option.create_Some( + ParsedHeader._typeDescriptor(), + ToDafny.ParsedHeader(nativeValue.parsedHeader()) + ) + : Option.create_None(ParsedHeader._typeDescriptor()); return new EncryptItemOutput(encryptedItem, parsedHeader); } diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java index a2b9dc32a..b1d3deba6 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java @@ -6,6 +6,7 @@ import Wrappers_Compile.Option; import dafny.DafnyMap; import dafny.DafnySequence; +import dafny.TypeDescriptor; import java.lang.Character; import java.lang.Integer; import java.lang.RuntimeException; @@ -596,8 +597,8 @@ public static ResolveAttributesInput ResolveAttributesInput( Option version; version = Objects.nonNull(nativeValue.Version()) - ? Option.create_Some((nativeValue.Version())) - : Option.create_None(); + ? Option.create_Some(TypeDescriptor.INT, (nativeValue.Version())) + : Option.create_None(TypeDescriptor.INT); return new ResolveAttributesInput(tableName, item, version); } diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformInput.java index 360c70c49..a0f0bd0e9 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformInput.java @@ -8,12 +8,18 @@ public class BatchGetItemInputTransformInput { + /** + *

Represents the input of a BatchGetItem operation.

+ */ private final BatchGetItemRequest sdkInput; protected BatchGetItemInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a BatchGetItem operation.

+ */ public BatchGetItemRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a BatchGetItem operation.

+ */ Builder sdkInput(BatchGetItemRequest sdkInput); + /** + * @return

Represents the input of a BatchGetItem operation.

+ */ BatchGetItemRequest sdkInput(); BatchGetItemInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformOutput.java index ca9f10aa4..807674dd3 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemInputTransformOutput.java @@ -8,12 +8,18 @@ public class BatchGetItemInputTransformOutput { + /** + *

Represents the input of a BatchGetItem operation.

+ */ private final BatchGetItemRequest transformedInput; protected BatchGetItemInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a BatchGetItem operation.

+ */ public BatchGetItemRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a BatchGetItem operation.

+ */ Builder transformedInput(BatchGetItemRequest transformedInput); + /** + * @return

Represents the input of a BatchGetItem operation.

+ */ BatchGetItemRequest transformedInput(); BatchGetItemInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformInput.java index 5769cb985..c6afc9f5f 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformInput.java @@ -9,8 +9,14 @@ public class BatchGetItemOutputTransformInput { + /** + *

Represents the output of a BatchGetItem operation.

+ */ private final BatchGetItemResponse sdkOutput; + /** + *

Represents the input of a BatchGetItem operation.

+ */ private final BatchGetItemRequest originalInput; protected BatchGetItemOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected BatchGetItemOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a BatchGetItem operation.

+ */ public BatchGetItemResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a BatchGetItem operation.

+ */ public BatchGetItemRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a BatchGetItem operation.

+ */ Builder sdkOutput(BatchGetItemResponse sdkOutput); + /** + * @return

Represents the output of a BatchGetItem operation.

+ */ BatchGetItemResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a BatchGetItem operation.

+ */ Builder originalInput(BatchGetItemRequest originalInput); + /** + * @return

Represents the input of a BatchGetItem operation.

+ */ BatchGetItemRequest originalInput(); BatchGetItemOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformOutput.java index 551a85a67..efbb90723 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchGetItemOutputTransformOutput.java @@ -8,12 +8,18 @@ public class BatchGetItemOutputTransformOutput { + /** + *

Represents the output of a BatchGetItem operation.

+ */ private final BatchGetItemResponse transformedOutput; protected BatchGetItemOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a BatchGetItem operation.

+ */ public BatchGetItemResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a BatchGetItem operation.

+ */ Builder transformedOutput(BatchGetItemResponse transformedOutput); + /** + * @return

Represents the output of a BatchGetItem operation.

+ */ BatchGetItemResponse transformedOutput(); BatchGetItemOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformInput.java index 2b162ea90..eb493cc6d 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformInput.java @@ -8,12 +8,18 @@ public class BatchWriteItemInputTransformInput { + /** + *

Represents the input of a BatchWriteItem operation.

+ */ private final BatchWriteItemRequest sdkInput; protected BatchWriteItemInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a BatchWriteItem operation.

+ */ public BatchWriteItemRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a BatchWriteItem operation.

+ */ Builder sdkInput(BatchWriteItemRequest sdkInput); + /** + * @return

Represents the input of a BatchWriteItem operation.

+ */ BatchWriteItemRequest sdkInput(); BatchWriteItemInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformOutput.java index 62014c5d1..317a931ba 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemInputTransformOutput.java @@ -8,12 +8,18 @@ public class BatchWriteItemInputTransformOutput { + /** + *

Represents the input of a BatchWriteItem operation.

+ */ private final BatchWriteItemRequest transformedInput; protected BatchWriteItemInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a BatchWriteItem operation.

+ */ public BatchWriteItemRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a BatchWriteItem operation.

+ */ Builder transformedInput(BatchWriteItemRequest transformedInput); + /** + * @return

Represents the input of a BatchWriteItem operation.

+ */ BatchWriteItemRequest transformedInput(); BatchWriteItemInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformInput.java index 711e59ed8..f720aa65e 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformInput.java @@ -9,8 +9,14 @@ public class BatchWriteItemOutputTransformInput { + /** + *

Represents the output of a BatchWriteItem operation.

+ */ private final BatchWriteItemResponse sdkOutput; + /** + *

Represents the input of a BatchWriteItem operation.

+ */ private final BatchWriteItemRequest originalInput; protected BatchWriteItemOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected BatchWriteItemOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a BatchWriteItem operation.

+ */ public BatchWriteItemResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a BatchWriteItem operation.

+ */ public BatchWriteItemRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a BatchWriteItem operation.

+ */ Builder sdkOutput(BatchWriteItemResponse sdkOutput); + /** + * @return

Represents the output of a BatchWriteItem operation.

+ */ BatchWriteItemResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a BatchWriteItem operation.

+ */ Builder originalInput(BatchWriteItemRequest originalInput); + /** + * @return

Represents the input of a BatchWriteItem operation.

+ */ BatchWriteItemRequest originalInput(); BatchWriteItemOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformOutput.java index cb6d0a66c..19bc50307 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/BatchWriteItemOutputTransformOutput.java @@ -8,12 +8,18 @@ public class BatchWriteItemOutputTransformOutput { + /** + *

Represents the output of a BatchWriteItem operation.

+ */ private final BatchWriteItemResponse transformedOutput; protected BatchWriteItemOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a BatchWriteItem operation.

+ */ public BatchWriteItemResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a BatchWriteItem operation.

+ */ Builder transformedOutput(BatchWriteItemResponse transformedOutput); + /** + * @return

Represents the output of a BatchWriteItem operation.

+ */ BatchWriteItemResponse transformedOutput(); BatchWriteItemOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformInput.java index 94f14a622..b459bc907 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformInput.java @@ -8,12 +8,18 @@ public class DeleteItemInputTransformInput { + /** + *

Represents the input of a DeleteItem operation.

+ */ private final DeleteItemRequest sdkInput; protected DeleteItemInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a DeleteItem operation.

+ */ public DeleteItemRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a DeleteItem operation.

+ */ Builder sdkInput(DeleteItemRequest sdkInput); + /** + * @return

Represents the input of a DeleteItem operation.

+ */ DeleteItemRequest sdkInput(); DeleteItemInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformOutput.java index f4295e34b..e1668f03a 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemInputTransformOutput.java @@ -8,12 +8,18 @@ public class DeleteItemInputTransformOutput { + /** + *

Represents the input of a DeleteItem operation.

+ */ private final DeleteItemRequest transformedInput; protected DeleteItemInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a DeleteItem operation.

+ */ public DeleteItemRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a DeleteItem operation.

+ */ Builder transformedInput(DeleteItemRequest transformedInput); + /** + * @return

Represents the input of a DeleteItem operation.

+ */ DeleteItemRequest transformedInput(); DeleteItemInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformInput.java index 0147e9520..8cd44af88 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformInput.java @@ -9,8 +9,14 @@ public class DeleteItemOutputTransformInput { + /** + *

Represents the output of a DeleteItem operation.

+ */ private final DeleteItemResponse sdkOutput; + /** + *

Represents the input of a DeleteItem operation.

+ */ private final DeleteItemRequest originalInput; protected DeleteItemOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected DeleteItemOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a DeleteItem operation.

+ */ public DeleteItemResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a DeleteItem operation.

+ */ public DeleteItemRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a DeleteItem operation.

+ */ Builder sdkOutput(DeleteItemResponse sdkOutput); + /** + * @return

Represents the output of a DeleteItem operation.

+ */ DeleteItemResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a DeleteItem operation.

+ */ Builder originalInput(DeleteItemRequest originalInput); + /** + * @return

Represents the input of a DeleteItem operation.

+ */ DeleteItemRequest originalInput(); DeleteItemOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformOutput.java index 8c9f1d184..883df60bc 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/DeleteItemOutputTransformOutput.java @@ -8,12 +8,18 @@ public class DeleteItemOutputTransformOutput { + /** + *

Represents the output of a DeleteItem operation.

+ */ private final DeleteItemResponse transformedOutput; protected DeleteItemOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a DeleteItem operation.

+ */ public DeleteItemResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a DeleteItem operation.

+ */ Builder transformedOutput(DeleteItemResponse transformedOutput); + /** + * @return

Represents the output of a DeleteItem operation.

+ */ DeleteItemResponse transformedOutput(); DeleteItemOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformInput.java index 99808cc7d..9ab5e25f0 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformInput.java @@ -8,12 +8,18 @@ public class GetItemInputTransformInput { + /** + *

Represents the input of a GetItem operation.

+ */ private final GetItemRequest sdkInput; protected GetItemInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a GetItem operation.

+ */ public GetItemRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a GetItem operation.

+ */ Builder sdkInput(GetItemRequest sdkInput); + /** + * @return

Represents the input of a GetItem operation.

+ */ GetItemRequest sdkInput(); GetItemInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformOutput.java index a94eb1600..b0b057d00 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemInputTransformOutput.java @@ -8,12 +8,18 @@ public class GetItemInputTransformOutput { + /** + *

Represents the input of a GetItem operation.

+ */ private final GetItemRequest transformedInput; protected GetItemInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a GetItem operation.

+ */ public GetItemRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a GetItem operation.

+ */ Builder transformedInput(GetItemRequest transformedInput); + /** + * @return

Represents the input of a GetItem operation.

+ */ GetItemRequest transformedInput(); GetItemInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformInput.java index 764fe7cdc..b11d9e391 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformInput.java @@ -9,8 +9,14 @@ public class GetItemOutputTransformInput { + /** + *

Represents the output of a GetItem operation.

+ */ private final GetItemResponse sdkOutput; + /** + *

Represents the input of a GetItem operation.

+ */ private final GetItemRequest originalInput; protected GetItemOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected GetItemOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a GetItem operation.

+ */ public GetItemResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a GetItem operation.

+ */ public GetItemRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a GetItem operation.

+ */ Builder sdkOutput(GetItemResponse sdkOutput); + /** + * @return

Represents the output of a GetItem operation.

+ */ GetItemResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a GetItem operation.

+ */ Builder originalInput(GetItemRequest originalInput); + /** + * @return

Represents the input of a GetItem operation.

+ */ GetItemRequest originalInput(); GetItemOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformOutput.java index 8ebf42a5b..814006edd 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/GetItemOutputTransformOutput.java @@ -8,12 +8,18 @@ public class GetItemOutputTransformOutput { + /** + *

Represents the output of a GetItem operation.

+ */ private final GetItemResponse transformedOutput; protected GetItemOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a GetItem operation.

+ */ public GetItemResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a GetItem operation.

+ */ Builder transformedOutput(GetItemResponse transformedOutput); + /** + * @return

Represents the output of a GetItem operation.

+ */ GetItemResponse transformedOutput(); GetItemOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformInput.java index 9bf02f0fe..094c9f629 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformInput.java @@ -8,12 +8,18 @@ public class PutItemInputTransformInput { + /** + *

Represents the input of a PutItem operation.

+ */ private final PutItemRequest sdkInput; protected PutItemInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a PutItem operation.

+ */ public PutItemRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a PutItem operation.

+ */ Builder sdkInput(PutItemRequest sdkInput); + /** + * @return

Represents the input of a PutItem operation.

+ */ PutItemRequest sdkInput(); PutItemInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformOutput.java index cc06df561..574819d92 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemInputTransformOutput.java @@ -8,12 +8,18 @@ public class PutItemInputTransformOutput { + /** + *

Represents the input of a PutItem operation.

+ */ private final PutItemRequest transformedInput; protected PutItemInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a PutItem operation.

+ */ public PutItemRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a PutItem operation.

+ */ Builder transformedInput(PutItemRequest transformedInput); + /** + * @return

Represents the input of a PutItem operation.

+ */ PutItemRequest transformedInput(); PutItemInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformInput.java index 7e5afed34..a0b58c3f1 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformInput.java @@ -9,8 +9,14 @@ public class PutItemOutputTransformInput { + /** + *

Represents the output of a PutItem operation.

+ */ private final PutItemResponse sdkOutput; + /** + *

Represents the input of a PutItem operation.

+ */ private final PutItemRequest originalInput; protected PutItemOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected PutItemOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a PutItem operation.

+ */ public PutItemResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a PutItem operation.

+ */ public PutItemRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a PutItem operation.

+ */ Builder sdkOutput(PutItemResponse sdkOutput); + /** + * @return

Represents the output of a PutItem operation.

+ */ PutItemResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a PutItem operation.

+ */ Builder originalInput(PutItemRequest originalInput); + /** + * @return

Represents the input of a PutItem operation.

+ */ PutItemRequest originalInput(); PutItemOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformOutput.java index deec37efb..8961e2fee 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/PutItemOutputTransformOutput.java @@ -8,12 +8,18 @@ public class PutItemOutputTransformOutput { + /** + *

Represents the output of a PutItem operation.

+ */ private final PutItemResponse transformedOutput; protected PutItemOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a PutItem operation.

+ */ public PutItemResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a PutItem operation.

+ */ Builder transformedOutput(PutItemResponse transformedOutput); + /** + * @return

Represents the output of a PutItem operation.

+ */ PutItemResponse transformedOutput(); PutItemOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformInput.java index fe180f0d0..d1ee2f6e7 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformInput.java @@ -8,12 +8,18 @@ public class QueryInputTransformInput { + /** + *

Represents the input of a Query operation.

+ */ private final QueryRequest sdkInput; protected QueryInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a Query operation.

+ */ public QueryRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a Query operation.

+ */ Builder sdkInput(QueryRequest sdkInput); + /** + * @return

Represents the input of a Query operation.

+ */ QueryRequest sdkInput(); QueryInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformOutput.java index 9d8b0c0b6..a869c8253 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryInputTransformOutput.java @@ -8,12 +8,18 @@ public class QueryInputTransformOutput { + /** + *

Represents the input of a Query operation.

+ */ private final QueryRequest transformedInput; protected QueryInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a Query operation.

+ */ public QueryRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a Query operation.

+ */ Builder transformedInput(QueryRequest transformedInput); + /** + * @return

Represents the input of a Query operation.

+ */ QueryRequest transformedInput(); QueryInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformInput.java index c645ff4fa..6b97fde68 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformInput.java @@ -9,8 +9,14 @@ public class QueryOutputTransformInput { + /** + *

Represents the output of a Query operation.

+ */ private final QueryResponse sdkOutput; + /** + *

Represents the input of a Query operation.

+ */ private final QueryRequest originalInput; protected QueryOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected QueryOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a Query operation.

+ */ public QueryResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a Query operation.

+ */ public QueryRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a Query operation.

+ */ Builder sdkOutput(QueryResponse sdkOutput); + /** + * @return

Represents the output of a Query operation.

+ */ QueryResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a Query operation.

+ */ Builder originalInput(QueryRequest originalInput); + /** + * @return

Represents the input of a Query operation.

+ */ QueryRequest originalInput(); QueryOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformOutput.java index 494b68583..8280489d4 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/QueryOutputTransformOutput.java @@ -8,12 +8,18 @@ public class QueryOutputTransformOutput { + /** + *

Represents the output of a Query operation.

+ */ private final QueryResponse transformedOutput; protected QueryOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a Query operation.

+ */ public QueryResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a Query operation.

+ */ Builder transformedOutput(QueryResponse transformedOutput); + /** + * @return

Represents the output of a Query operation.

+ */ QueryResponse transformedOutput(); QueryOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformInput.java index 1c6ce9ae1..95c93a410 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformInput.java @@ -8,12 +8,18 @@ public class ScanInputTransformInput { + /** + *

Represents the input of a Scan operation.

+ */ private final ScanRequest sdkInput; protected ScanInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of a Scan operation.

+ */ public ScanRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of a Scan operation.

+ */ Builder sdkInput(ScanRequest sdkInput); + /** + * @return

Represents the input of a Scan operation.

+ */ ScanRequest sdkInput(); ScanInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformOutput.java index 295b284a5..bbd53da9a 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanInputTransformOutput.java @@ -8,12 +8,18 @@ public class ScanInputTransformOutput { + /** + *

Represents the input of a Scan operation.

+ */ private final ScanRequest transformedInput; protected ScanInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of a Scan operation.

+ */ public ScanRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of a Scan operation.

+ */ Builder transformedInput(ScanRequest transformedInput); + /** + * @return

Represents the input of a Scan operation.

+ */ ScanRequest transformedInput(); ScanInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformInput.java index f2b693935..41a7149f7 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformInput.java @@ -9,8 +9,14 @@ public class ScanOutputTransformInput { + /** + *

Represents the output of a Scan operation.

+ */ private final ScanResponse sdkOutput; + /** + *

Represents the input of a Scan operation.

+ */ private final ScanRequest originalInput; protected ScanOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected ScanOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of a Scan operation.

+ */ public ScanResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of a Scan operation.

+ */ public ScanRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of a Scan operation.

+ */ Builder sdkOutput(ScanResponse sdkOutput); + /** + * @return

Represents the output of a Scan operation.

+ */ ScanResponse sdkOutput(); + /** + * @param originalInput

Represents the input of a Scan operation.

+ */ Builder originalInput(ScanRequest originalInput); + /** + * @return

Represents the input of a Scan operation.

+ */ ScanRequest originalInput(); ScanOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformOutput.java index bcf82a72d..33dbb173e 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/ScanOutputTransformOutput.java @@ -8,12 +8,18 @@ public class ScanOutputTransformOutput { + /** + *

Represents the output of a Scan operation.

+ */ private final ScanResponse transformedOutput; protected ScanOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of a Scan operation.

+ */ public ScanResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of a Scan operation.

+ */ Builder transformedOutput(ScanResponse transformedOutput); + /** + * @return

Represents the output of a Scan operation.

+ */ ScanResponse transformedOutput(); ScanOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformInput.java index 8c9a6ffde..056f3cd96 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformInput.java @@ -8,12 +8,18 @@ public class UpdateItemInputTransformInput { + /** + *

Represents the input of an UpdateItem operation.

+ */ private final UpdateItemRequest sdkInput; protected UpdateItemInputTransformInput(BuilderImpl builder) { this.sdkInput = builder.sdkInput(); } + /** + * @return

Represents the input of an UpdateItem operation.

+ */ public UpdateItemRequest sdkInput() { return this.sdkInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkInput

Represents the input of an UpdateItem operation.

+ */ Builder sdkInput(UpdateItemRequest sdkInput); + /** + * @return

Represents the input of an UpdateItem operation.

+ */ UpdateItemRequest sdkInput(); UpdateItemInputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformOutput.java index 7b9635893..0d45bc38a 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemInputTransformOutput.java @@ -8,12 +8,18 @@ public class UpdateItemInputTransformOutput { + /** + *

Represents the input of an UpdateItem operation.

+ */ private final UpdateItemRequest transformedInput; protected UpdateItemInputTransformOutput(BuilderImpl builder) { this.transformedInput = builder.transformedInput(); } + /** + * @return

Represents the input of an UpdateItem operation.

+ */ public UpdateItemRequest transformedInput() { return this.transformedInput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedInput

Represents the input of an UpdateItem operation.

+ */ Builder transformedInput(UpdateItemRequest transformedInput); + /** + * @return

Represents the input of an UpdateItem operation.

+ */ UpdateItemRequest transformedInput(); UpdateItemInputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformInput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformInput.java index 702b7c5fb..6046efe54 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformInput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformInput.java @@ -9,8 +9,14 @@ public class UpdateItemOutputTransformInput { + /** + *

Represents the output of an UpdateItem operation.

+ */ private final UpdateItemResponse sdkOutput; + /** + *

Represents the input of an UpdateItem operation.

+ */ private final UpdateItemRequest originalInput; protected UpdateItemOutputTransformInput(BuilderImpl builder) { @@ -18,10 +24,16 @@ protected UpdateItemOutputTransformInput(BuilderImpl builder) { this.originalInput = builder.originalInput(); } + /** + * @return

Represents the output of an UpdateItem operation.

+ */ public UpdateItemResponse sdkOutput() { return this.sdkOutput; } + /** + * @return

Represents the input of an UpdateItem operation.

+ */ public UpdateItemRequest originalInput() { return this.originalInput; } @@ -35,12 +47,24 @@ public static Builder builder() { } public interface Builder { + /** + * @param sdkOutput

Represents the output of an UpdateItem operation.

+ */ Builder sdkOutput(UpdateItemResponse sdkOutput); + /** + * @return

Represents the output of an UpdateItem operation.

+ */ UpdateItemResponse sdkOutput(); + /** + * @param originalInput

Represents the input of an UpdateItem operation.

+ */ Builder originalInput(UpdateItemRequest originalInput); + /** + * @return

Represents the input of an UpdateItem operation.

+ */ UpdateItemRequest originalInput(); UpdateItemOutputTransformInput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformOutput.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformOutput.java index e7a5f5c83..ea8d8d5aa 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformOutput.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/UpdateItemOutputTransformOutput.java @@ -8,12 +8,18 @@ public class UpdateItemOutputTransformOutput { + /** + *

Represents the output of an UpdateItem operation.

+ */ private final UpdateItemResponse transformedOutput; protected UpdateItemOutputTransformOutput(BuilderImpl builder) { this.transformedOutput = builder.transformedOutput(); } + /** + * @return

Represents the output of an UpdateItem operation.

+ */ public UpdateItemResponse transformedOutput() { return this.transformedOutput; } @@ -27,8 +33,14 @@ public static Builder builder() { } public interface Builder { + /** + * @param transformedOutput

Represents the output of an UpdateItem operation.

+ */ Builder transformedOutput(UpdateItemResponse transformedOutput); + /** + * @return

Represents the output of an UpdateItem operation.

+ */ UpdateItemResponse transformedOutput(); UpdateItemOutputTransformOutput build(); diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java index 3ec5e6a19..d3d49d587 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java @@ -6,6 +6,7 @@ import Wrappers_Compile.Option; import dafny.DafnyMap; import dafny.DafnySequence; +import dafny.TypeDescriptor; import java.lang.Byte; import java.lang.Character; import java.lang.IllegalArgumentException; @@ -125,11 +126,20 @@ public static DecryptPathStructureInput DecryptPathStructureInput( (Objects.nonNull(nativeValue.encryptionContext()) && nativeValue.encryptionContext().size() > 0) ? Option.create_Some( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ), software.amazon.cryptography.materialproviders.ToDafny.EncryptionContext( nativeValue.encryptionContext() ) ) - : Option.create_None(); + : Option.create_None( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ) + ); return new DecryptPathStructureInput( tableName, encryptedStructure, @@ -183,11 +193,20 @@ public static DecryptStructureInput DecryptStructureInput( (Objects.nonNull(nativeValue.encryptionContext()) && nativeValue.encryptionContext().size() > 0) ? Option.create_Some( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ), software.amazon.cryptography.materialproviders.ToDafny.EncryptionContext( nativeValue.encryptionContext() ) ) - : Option.create_None(); + : Option.create_None( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ) + ); return new DecryptStructureInput( tableName, encryptedStructure, @@ -239,11 +258,12 @@ public static EncryptPathStructureInput EncryptPathStructureInput( algorithmSuiteId = Objects.nonNull(nativeValue.algorithmSuiteId()) ? Option.create_Some( + DBEAlgorithmSuiteId._typeDescriptor(), software.amazon.cryptography.materialproviders.ToDafny.DBEAlgorithmSuiteId( nativeValue.algorithmSuiteId() ) ) - : Option.create_None(); + : Option.create_None(DBEAlgorithmSuiteId._typeDescriptor()); Option< DafnyMap< ? extends DafnySequence, @@ -254,11 +274,20 @@ public static EncryptPathStructureInput EncryptPathStructureInput( (Objects.nonNull(nativeValue.encryptionContext()) && nativeValue.encryptionContext().size() > 0) ? Option.create_Some( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ), software.amazon.cryptography.materialproviders.ToDafny.EncryptionContext( nativeValue.encryptionContext() ) ) - : Option.create_None(); + : Option.create_None( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ) + ); return new EncryptPathStructureInput( tableName, plaintextStructure, @@ -306,11 +335,12 @@ public static EncryptStructureInput EncryptStructureInput( algorithmSuiteId = Objects.nonNull(nativeValue.algorithmSuiteId()) ? Option.create_Some( + DBEAlgorithmSuiteId._typeDescriptor(), software.amazon.cryptography.materialproviders.ToDafny.DBEAlgorithmSuiteId( nativeValue.algorithmSuiteId() ) ) - : Option.create_None(); + : Option.create_None(DBEAlgorithmSuiteId._typeDescriptor()); Option< DafnyMap< ? extends DafnySequence, @@ -321,11 +351,20 @@ public static EncryptStructureInput EncryptStructureInput( (Objects.nonNull(nativeValue.encryptionContext()) && nativeValue.encryptionContext().size() > 0) ? Option.create_Some( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ), software.amazon.cryptography.materialproviders.ToDafny.EncryptionContext( nativeValue.encryptionContext() ) ) - : Option.create_None(); + : Option.create_None( + DafnyMap._typeDescriptor( + DafnySequence._typeDescriptor(TypeDescriptor.BYTE), + DafnySequence._typeDescriptor(TypeDescriptor.BYTE) + ) + ); return new EncryptStructureInput( tableName, plaintextStructure, diff --git a/SharedMakefile.mk b/SharedMakefile.mk index d93ba5857..37f18d5f6 100644 --- a/SharedMakefile.mk +++ b/SharedMakefile.mk @@ -12,3 +12,14 @@ GRADLEW := ./runtimes/java/gradlew include $(SMITHY_DAFNY_ROOT)/SmithyDafnyMakefile.mk VERIFY_TIMEOUT := 250 + +verify:DAFNY_OPTIONS=--allow-warnings --allow-external-contracts --log-format csv +verify_single:DAFNY_OPTIONS=--allow-warnings --allow-external-contracts --log-format csv +verify_service:DAFNY_OPTIONS=--allow-warnings --allow-external-contracts --log-format csv + +transpile_implementation_net: DAFNY_OPTIONS=--allow-warnings --compile-suffix --legacy-module-names --allow-external-contracts +transpile_test_net: DAFNY_OPTIONS=--allow-warnings --include-test-runner --compile-suffix --legacy-module-names --allow-external-contracts + +transpile_implementation_java: DAFNY_OPTIONS=--allow-warnings --compile-suffix --legacy-data-constructors --legacy-module-names --allow-external-contracts +transpile_test_java: DAFNY_OPTIONS=--allow-warnings --include-test-runner --compile-suffix --legacy-data-constructors --legacy-module-names --allow-external-contracts + diff --git a/TestVectors/project.properties b/TestVectors/project.properties new file mode 100644 index 000000000..02e193a7d --- /dev/null +++ b/TestVectors/project.properties @@ -0,0 +1,4 @@ +# This file stores the top level dafny version information. +# All elements of the project need to agree on this version. +dafnyVersion=4.8.0 +dafnyRuntimeJavaVersion=4.8.0 diff --git a/TestVectors/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/wrapped/TestDynamoDbEncryption.java b/TestVectors/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/wrapped/TestDynamoDbEncryption.java index acf30bd1e..d9df0b96e 100644 --- a/TestVectors/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/wrapped/TestDynamoDbEncryption.java +++ b/TestVectors/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/wrapped/TestDynamoDbEncryption.java @@ -42,9 +42,17 @@ > CreateDynamoDbEncryptionBranchKeyIdSupplier( this._impl.CreateDynamoDbEncryptionBranchKeyIdSupplier(nativeInput); CreateDynamoDbEncryptionBranchKeyIdSupplierOutput dafnyOutput = ToDafny.CreateDynamoDbEncryptionBranchKeyIdSupplierOutput(nativeOutput); - return Result.create_Success(dafnyOutput); + return Result.create_Success( + CreateDynamoDbEncryptionBranchKeyIdSupplierOutput._typeDescriptor(), + Error._typeDescriptor(), + dafnyOutput + ); } catch (RuntimeException ex) { - return Result.create_Failure(ToDafny.Error(ex)); + return Result.create_Failure( + CreateDynamoDbEncryptionBranchKeyIdSupplierOutput._typeDescriptor(), + Error._typeDescriptor(), + ToDafny.Error(ex) + ); } } @@ -61,9 +69,17 @@ > GetEncryptedDataKeyDescription( this._impl.GetEncryptedDataKeyDescription(nativeInput); GetEncryptedDataKeyDescriptionOutput dafnyOutput = ToDafny.GetEncryptedDataKeyDescriptionOutput(nativeOutput); - return Result.create_Success(dafnyOutput); + return Result.create_Success( + GetEncryptedDataKeyDescriptionOutput._typeDescriptor(), + Error._typeDescriptor(), + dafnyOutput + ); } catch (RuntimeException ex) { - return Result.create_Failure(ToDafny.Error(ex)); + return Result.create_Failure( + GetEncryptedDataKeyDescriptionOutput._typeDescriptor(), + Error._typeDescriptor(), + ToDafny.Error(ex) + ); } } diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index 6a0902fa9..d517f861e 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; diff --git a/project.properties b/project.properties index 1d808a93c..4f9d620ce 100644 --- a/project.properties +++ b/project.properties @@ -1,6 +1,6 @@ projectJavaVersion=3.6.2-SNAPSHOT -mplDependencyJavaVersion=1.5.1-SNAPSHOT -dafnyVersion=4.2.0 -dafnyVerifyVersion=4.7.0 -dafnyRuntimeJavaVersion=4.2.0 +mplDependencyJavaVersion=1.6.0 +dafnyVersion=4.8.0 +dafnyVerifyVersion=4.8.0 +dafnyRuntimeJavaVersion=4.8.0 smithyDafnyJavaConversionVersion=0.1 diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index 1baeefb60..f027f78f7 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit 1baeefb6064199cc899b8c10203e7f5b0a503702 +Subproject commit f027f78f7a72ed526195e53774538d72119cceb1 diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index d9c596cb8..98939e130 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit d9c596cb85ce55434efb57a5f88e6dd7fb68d505 +Subproject commit 98939e130695095386059967509a19299dfac320 From 7e3681b374e09946e8c544aa25111c8e55b77214 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Tue, 17 Sep 2024 11:21:15 -0700 Subject: [PATCH 12/66] chore(release): 3.7.0 (#1368) Co-authored-by: semantic-release-bot --- CHANGELOG.md | 18 ++++++++++++++++++ .../runtimes/net/AssemblyInfo.cs | 2 +- .../runtimes/net/DynamoDbEncryption.csproj | 2 +- project.properties | 2 +- 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8fd95afbd..ec4d21f6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [3.7.0](https://github.com/aws/aws-database-encryption-sdk-dynamodb/compare/v3.6.2...v3.7.0) (2024-09-17) + +### Features + +- bump to dafny 4.8.0 and mpl 1.6.0 ([#1356](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1356)) ([fedc0ad](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/fedc0ad2d490eaa853c103cae2cb7406c526a550)) + +### Fixes + +- remove usage of `:|` ([#1320](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1320)) ([eeb3f51](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/eeb3f513ab7a27c62a97529a0a94c1933da1422c)) + +### Maintenance + +- add check only keyword action ([#1327](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1327)) ([5d777d6](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/5d777d6aa975831ef0ce3faeb0b848a1eb108981)) +- add ddb local to dafny interop test vectors ([#1316](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1316)) ([6128a39](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/6128a39f13fbd28d25682d8cbf3d6655f1e41fb5)) +- allow local testing ([#1311](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1311)) ([e758e97](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/e758e97cafdb32b911737ac73a43091b12d98e31)) +- remove /// from smithy files ([#1349](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1349)) ([303a8bd](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/303a8bd4ed2d0bd1b9fd763030c7742058fb6f9f)) +- remove assert to fix verification ([#1360](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues/1360)) ([8849c1e](https://github.com/aws/aws-database-encryption-sdk-dynamodb/commit/8849c1e5d32f6580ac00cbe3ff6de065a88ca9d2)) + ## [3.6.2](https://github.com/aws/aws-database-encryption-sdk-dynamodb/compare/v3.6.1...v3.6.2) (2024-08-22) ### Fixes diff --git a/DynamoDbEncryption/runtimes/net/AssemblyInfo.cs b/DynamoDbEncryption/runtimes/net/AssemblyInfo.cs index 744cb3ccb..bd1671dc8 100644 --- a/DynamoDbEncryption/runtimes/net/AssemblyInfo.cs +++ b/DynamoDbEncryption/runtimes/net/AssemblyInfo.cs @@ -3,5 +3,5 @@ [assembly: AssemblyTitle("AWS.Cryptography.DbEncryptionSDK.DynamoDb")] // This should be kept in sync with the version number in MPL.csproj -[assembly: AssemblyVersion("3.6.2")] +[assembly: AssemblyVersion("3.7.0")] diff --git a/DynamoDbEncryption/runtimes/net/DynamoDbEncryption.csproj b/DynamoDbEncryption/runtimes/net/DynamoDbEncryption.csproj index 90dbd704f..a7563301c 100644 --- a/DynamoDbEncryption/runtimes/net/DynamoDbEncryption.csproj +++ b/DynamoDbEncryption/runtimes/net/DynamoDbEncryption.csproj @@ -5,7 +5,7 @@ false true - 3.6.2 + 3.7.0 AWS.Cryptography.DbEncryptionSDK.DynamoDb AWS.Cryptography.DbEncryptionSDK.DynamoDb diff --git a/project.properties b/project.properties index 4f9d620ce..22a0b53cd 100644 --- a/project.properties +++ b/project.properties @@ -1,4 +1,4 @@ -projectJavaVersion=3.6.2-SNAPSHOT +projectJavaVersion=3.7.0 mplDependencyJavaVersion=1.6.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 From d43649842799974269722a8743004dc8b628d8d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Tue, 17 Sep 2024 12:51:58 -0700 Subject: [PATCH 13/66] chore: fix dafny version release scripts (#1369) --- codebuild/release/release-prod.yml | 2 +- codebuild/release/validate-release.yml | 2 +- codebuild/staging/release-staging.yml | 2 +- codebuild/staging/validate-staging.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/codebuild/release/release-prod.yml b/codebuild/release/release-prod.yml index 84aa8332d..0f578bbf5 100644 --- a/codebuild/release/release-prod.yml +++ b/codebuild/release/release-prod.yml @@ -19,7 +19,7 @@ phases: commands: - cd .. # Get Dafny - - curl https://github.com/dafny-lang/dafny/releases/download/v4.2.0/dafny-4.2.0-x64-ubuntu-20.04.zip -L -o dafny.zip + - curl https://github.com/dafny-lang/dafny/releases/download/v4.8.0/dafny-4.8.0-x64-ubuntu-20.04.zip -L -o dafny.zip - unzip -qq dafny.zip && rm dafny.zip - export PATH="$PWD/dafny:$PATH" # Get Gradle 7.6 diff --git a/codebuild/release/validate-release.yml b/codebuild/release/validate-release.yml index 23c2eae67..3235615ac 100644 --- a/codebuild/release/validate-release.yml +++ b/codebuild/release/validate-release.yml @@ -14,7 +14,7 @@ phases: commands: - cd .. # Get Dafny - - curl https://github.com/dafny-lang/dafny/releases/download/v4.2.0/dafny-4.2.0-x64-ubuntu-20.04.zip -L -o dafny.zip + - curl https://github.com/dafny-lang/dafny/releases/download/v4.8.0/dafny-4.8.0-x64-ubuntu-20.04.zip -L -o dafny.zip - unzip -qq dafny.zip && rm dafny.zip - export PATH="$PWD/dafny:$PATH" # Get Gradle 7.6 diff --git a/codebuild/staging/release-staging.yml b/codebuild/staging/release-staging.yml index e299f88ab..541dbe66d 100644 --- a/codebuild/staging/release-staging.yml +++ b/codebuild/staging/release-staging.yml @@ -21,7 +21,7 @@ phases: commands: - cd .. # Get Dafny - - curl https://github.com/dafny-lang/dafny/releases/download/v4.2.0/dafny-4.2.0-x64-ubuntu-20.04.zip -L -o dafny.zip + - curl https://github.com/dafny-lang/dafny/releases/download/v4.8.0/dafny-4.8.0-x64-ubuntu-20.04.zip -L -o dafny.zip - unzip -qq dafny.zip && rm dafny.zip - export PATH="$PWD/dafny:$PATH" # Get Gradle 7.6 diff --git a/codebuild/staging/validate-staging.yml b/codebuild/staging/validate-staging.yml index 24a7cf9d8..0b57ac93c 100644 --- a/codebuild/staging/validate-staging.yml +++ b/codebuild/staging/validate-staging.yml @@ -18,7 +18,7 @@ phases: commands: - cd .. # Get Dafny - - curl https://github.com/dafny-lang/dafny/releases/download/v4.2.0/dafny-4.2.0-x64-ubuntu-20.04.zip -L -o dafny.zip + - curl https://github.com/dafny-lang/dafny/releases/download/v4.8.0/dafny-4.8.0-x64-ubuntu-20.04.zip -L -o dafny.zip - unzip -qq dafny.zip && rm dafny.zip - export PATH="$PWD/dafny:$PATH" # Get Gradle 7.6 From 8d304026e5aa6ca461ee88a37fa33d78ac303889 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Fri, 20 Sep 2024 11:26:17 -0700 Subject: [PATCH 14/66] chore: enable local testing (#1380) --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 22a0b53cd..62662e92f 100644 --- a/project.properties +++ b/project.properties @@ -1,4 +1,4 @@ -projectJavaVersion=3.7.0 +projectJavaVersion=3.7.0-SNAPSHOT mplDependencyJavaVersion=1.6.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 From 40a1f797c2c60e525a0749b94a6ef70b8a891a72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Corella?= <39066999+josecorella@users.noreply.github.com> Date: Fri, 20 Sep 2024 13:32:50 -0700 Subject: [PATCH 15/66] chore(CI): make smithy fidd check smarter (#1381) --- .github/workflows/smithy-diff.yml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/smithy-diff.yml b/.github/workflows/smithy-diff.yml index b874861c1..3092c9470 100644 --- a/.github/workflows/smithy-diff.yml +++ b/.github/workflows/smithy-diff.yml @@ -3,7 +3,8 @@ name: Check Smithy Files on: - pull_request: + pull_request_review: + types: [submitted] jobs: require-approvals: @@ -19,20 +20,22 @@ jobs: - name: Get Files changed id: file-changes shell: bash + env: + GITHUB_HEAD: ${{github.event.pull_request.head.ref}} run: # Checks to see if any of the smithy Models are being updated. # Doing this check allows us to catch things like, missing @javadoc trait documentation or bug in smithy dafny that has not be resolved. - echo "FILES=$(git diff --name-only origin/main origin/${GITHUB_HEAD_REF} | grep '\.smithy$' | tr '\n' ' ')" >> "$GITHUB_OUTPUT" + echo "FILES=$(git diff --name-only origin/main origin/${GITHUB_HEAD} | grep '\.smithy$' | tr '\n' ' ')" >> "$GITHUB_OUTPUT" - name: Check if FILES is not empty id: comment env: - PR_NUMBER: ${{ github.event.number }} + PR_NUMBER: ${{ github.event.pull_request.number }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} FILES: ${{ steps.file-changes.outputs.FILES }} if: ${{env.FILES != ''}} run: | # TODO: If https://github.com/smithy-lang/smithy-dafny/issues/491 is resolved, remove comment about this issue. - COMMENT="@${{github.actor}}, I noticed you are updating the smithy model files.\nDoes this update need new or updated javadoc trait documentation?\n Are you adding constraints inside list, map or union? Do you know about this issue: https://github.com/smithy-lang/smithy-dafny/issues/491?" + COMMENT="@${{github.event.pull_request.user.login}} and @${{github.actor}}, I noticed you are updating the smithy model files.\nDoes this update need new or updated javadoc trait documentation?\n Are you adding constraints inside list, map or union? Do you know about this issue: https://github.com/smithy-lang/smithy-dafny/issues/491?" COMMENT_URL="https://api.github.com/repos/${{ github.repository }}/issues/${PR_NUMBER}/comments" curl -s -H "Authorization: token ${GITHUB_TOKEN}" -X POST $COMMENT_URL -d "{\"body\":\"$COMMENT\"}" From e1fde21f16dc0c5e05dc5202f6650678ac66689f Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Tue, 24 Sep 2024 17:17:23 -0700 Subject: [PATCH 16/66] m --- submodules/MaterialProviders | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index f027f78f7..b3145c3ff 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit f027f78f7a72ed526195e53774538d72119cceb1 +Subproject commit b3145c3ff54aa884a95ba336a842aaeb2d3593ca From bdb0533a305bd83b81b54fd859c4989e15b48d5a Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 10:00:14 -0700 Subject: [PATCH 17/66] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 62662e92f..256733265 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.6.0 +mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From 3536f1675aad3233020f49c8e6f5b98be6eb4670 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 10:17:31 -0700 Subject: [PATCH 18/66] m --- DynamoDbEncryption/runtimes/java/build.gradle.kts | 2 +- Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts | 2 +- .../runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts | 2 +- .../java/Migration/PlaintextToAWSDBE/build.gradle.kts | 2 +- TestVectors/runtimes/java/build.gradle.kts | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/DynamoDbEncryption/runtimes/java/build.gradle.kts b/DynamoDbEncryption/runtimes/java/build.gradle.kts index 2659e9b08..97e51e50e 100644 --- a/DynamoDbEncryption/runtimes/java/build.gradle.kts +++ b/DynamoDbEncryption/runtimes/java/build.gradle.kts @@ -81,7 +81,7 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts index bcf62436d..025b0ba2d 100644 --- a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts +++ b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts @@ -68,7 +68,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:arns") diff --git a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts index fa2bcc413..eacbf65f0 100644 --- a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts index d548fe6f5..42bde5a5d 100644 --- a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/TestVectors/runtimes/java/build.gradle.kts b/TestVectors/runtimes/java/build.gradle.kts index 62b9cf443..5373d4ae7 100644 --- a/TestVectors/runtimes/java/build.gradle.kts +++ b/TestVectors/runtimes/java/build.gradle.kts @@ -88,9 +88,9 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") + implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") From 6d0636948df2f45938ec2c39e40037a58fa76674 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 10:55:40 -0700 Subject: [PATCH 19/66] chore: Bump to MPL 1.7 and localtests --- .../dafny/dafny-4.8.0.patch | 145 ++++++++++++++++++ .../runtimes/java/build.gradle.kts | 2 +- .../java/DynamoDbEncryption/build.gradle.kts | 2 +- .../Migration/DDBECToAWSDBE/build.gradle.kts | 2 +- .../PlaintextToAWSDBE/build.gradle.kts | 2 +- TestVectors/runtimes/java/build.gradle.kts | 4 +- 6 files changed, 151 insertions(+), 6 deletions(-) create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch new file mode 100644 index 000000000..b6ddf55b9 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch @@ -0,0 +1,145 @@ +diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +index 9a8ed7f4..1ffa8b55 100644 +--- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy ++++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +@@ -759,94 +759,62 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService + var tmps4 := set t4 | t4 in tmp3.search.value.versions; + forall tmp4 :: tmp4 in tmps4 ==> + tmp4.keyStore.ValidState() +- requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; +- forall tmp5 :: tmp5 in tmps5 ==> +- tmp5.search.Some? ==> +- var tmps6 := set t6 | t6 in tmp5.search.value.versions; +- forall tmp6 :: tmp6 in tmps6 ==> +- tmp6.keySource.multi? ==> +- tmp6.keySource.multi.cache.Some? ==> +- tmp6.keySource.multi.cache.value.Shared? ==> +- tmp6.keySource.multi.cache.value.Shared.ValidState() ++ modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true ++ && t5.keyring.Some? ++ :: t5.keyring.value, ++ obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj ++ modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true ++ && t6.cmm.Some? ++ :: t6.cmm.value, ++ obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj + modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true +- && t7.keyring.Some? +- :: t7.keyring.value, ++ && t7.legacyOverride.Some? ++ :: t7.legacyOverride.value.encryptor, + obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj + modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true +- && t8.cmm.Some? +- :: t8.cmm.value, ++ && t8.search.Some? ++ , t9 <- t8.search.value.versions :: t9.keyStore, + obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj +- modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true +- && t9.legacyOverride.Some? +- :: t9.legacyOverride.value.encryptor, +- obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj +- modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true +- && t10.search.Some? +- , t11 <- t10.search.value.versions :: t11.keyStore, +- obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj +- modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true +- && t12.search.Some? +- , t13 <- t12.search.value.versions && t13.keySource.multi? +- && t13.keySource.multi.cache.Some? +- && t13.keySource.multi.cache.value.Shared? +- :: t13.keySource.multi.cache.value.Shared, +- obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj + ensures res.Success? ==> + && fresh(res.value) + && fresh(res.value.Modifies +- - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true +- && t14.keyring.Some? +- :: t14.keyring.value, +- obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj +- ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true +- && t15.cmm.Some? +- :: t15.cmm.value, +- obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj +- ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true +- && t16.legacyOverride.Some? +- :: t16.legacyOverride.value.encryptor, +- obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj +- ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true +- && t17.search.Some? +- , t18 <- t17.search.value.versions :: t18.keyStore, +- obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj +- ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true +- && t19.search.Some? +- , t20 <- t19.search.value.versions && t20.keySource.multi? +- && t20.keySource.multi.cache.Some? +- && t20.keySource.multi.cache.value.Shared? +- :: t20.keySource.multi.cache.value.Shared, +- obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj ++ - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true ++ && t10.keyring.Some? ++ :: t10.keyring.value, ++ obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj ++ ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true ++ && t11.cmm.Some? ++ :: t11.cmm.value, ++ obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj ++ ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true ++ && t12.legacyOverride.Some? ++ :: t12.legacyOverride.value.encryptor, ++ obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ++ ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true ++ && t13.search.Some? ++ , t14 <- t13.search.value.versions :: t14.keyStore, ++ obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj + ) ) + && fresh(res.value.History) + && res.value.ValidState() +- ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; +- forall tmp21 :: tmp21 in tmps21 ==> +- tmp21.keyring.Some? ==> +- tmp21.keyring.value.ValidState() +- ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; +- forall tmp22 :: tmp22 in tmps22 ==> +- tmp22.cmm.Some? ==> +- tmp22.cmm.value.ValidState() +- ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; +- forall tmp23 :: tmp23 in tmps23 ==> +- tmp23.legacyOverride.Some? ==> +- tmp23.legacyOverride.value.encryptor.ValidState() +- ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; +- forall tmp24 :: tmp24 in tmps24 ==> +- tmp24.search.Some? ==> +- var tmps25 := set t25 | t25 in tmp24.search.value.versions; +- forall tmp25 :: tmp25 in tmps25 ==> +- tmp25.keyStore.ValidState() +- ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; +- forall tmp26 :: tmp26 in tmps26 ==> +- tmp26.search.Some? ==> +- var tmps27 := set t27 | t27 in tmp26.search.value.versions; +- forall tmp27 :: tmp27 in tmps27 ==> +- tmp27.keySource.multi? ==> +- tmp27.keySource.multi.cache.Some? ==> +- tmp27.keySource.multi.cache.value.Shared? ==> +- tmp27.keySource.multi.cache.value.Shared.ValidState() ++ ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; ++ forall tmp15 :: tmp15 in tmps15 ==> ++ tmp15.keyring.Some? ==> ++ tmp15.keyring.value.ValidState() ++ ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; ++ forall tmp16 :: tmp16 in tmps16 ==> ++ tmp16.cmm.Some? ==> ++ tmp16.cmm.value.ValidState() ++ ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; ++ forall tmp17 :: tmp17 in tmps17 ==> ++ tmp17.legacyOverride.Some? ==> ++ tmp17.legacyOverride.value.encryptor.ValidState() ++ ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; ++ forall tmp18 :: tmp18 in tmps18 ==> ++ tmp18.search.Some? ==> ++ var tmps19 := set t19 | t19 in tmp18.search.value.versions; ++ forall tmp19 :: tmp19 in tmps19 ==> ++ tmp19.keyStore.ValidState() + + // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals + function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/runtimes/java/build.gradle.kts b/DynamoDbEncryption/runtimes/java/build.gradle.kts index 2659e9b08..97e51e50e 100644 --- a/DynamoDbEncryption/runtimes/java/build.gradle.kts +++ b/DynamoDbEncryption/runtimes/java/build.gradle.kts @@ -81,7 +81,7 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts index bcf62436d..025b0ba2d 100644 --- a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts +++ b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts @@ -68,7 +68,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:arns") diff --git a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts index fa2bcc413..eacbf65f0 100644 --- a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts index d548fe6f5..42bde5a5d 100644 --- a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/TestVectors/runtimes/java/build.gradle.kts b/TestVectors/runtimes/java/build.gradle.kts index 62b9cf443..5373d4ae7 100644 --- a/TestVectors/runtimes/java/build.gradle.kts +++ b/TestVectors/runtimes/java/build.gradle.kts @@ -88,9 +88,9 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") + implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") From ce14c7e5c7b5ca2ad60af97c1765e9c860304125 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 10:57:57 -0700 Subject: [PATCH 20/66] m --- DynamoDbEncryption/runtimes/java/build.gradle.kts | 2 +- Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts | 2 +- .../runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts | 2 +- .../java/Migration/PlaintextToAWSDBE/build.gradle.kts | 2 +- TestVectors/runtimes/java/build.gradle.kts | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/DynamoDbEncryption/runtimes/java/build.gradle.kts b/DynamoDbEncryption/runtimes/java/build.gradle.kts index 97e51e50e..2659e9b08 100644 --- a/DynamoDbEncryption/runtimes/java/build.gradle.kts +++ b/DynamoDbEncryption/runtimes/java/build.gradle.kts @@ -81,7 +81,7 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts index 025b0ba2d..bcf62436d 100644 --- a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts +++ b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts @@ -68,7 +68,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:arns") diff --git a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts index eacbf65f0..fa2bcc413 100644 --- a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts index 42bde5a5d..d548fe6f5 100644 --- a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/TestVectors/runtimes/java/build.gradle.kts b/TestVectors/runtimes/java/build.gradle.kts index 5373d4ae7..62b9cf443 100644 --- a/TestVectors/runtimes/java/build.gradle.kts +++ b/TestVectors/runtimes/java/build.gradle.kts @@ -88,9 +88,9 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") From a86f24ec71d6552ebb2702c0533fa027194fadbb Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 10:58:36 -0700 Subject: [PATCH 21/66] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 62662e92f..256733265 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.6.0 +mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From 3cc75ed5e5c99e3a98349754acb87a7bcfdd874f Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 11:29:36 -0700 Subject: [PATCH 22/66] m --- submodules/MaterialProviders | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index 66a04bf31..ce33f761f 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit 66a04bf31bcfd8fd514acea740d8e670ab565ed9 +Subproject commit ce33f761fd970c3c621aa565ca89ddf20e6a3560 From 7996a61724ebd151a756adf71543aea6354fe33a Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 11:43:17 -0700 Subject: [PATCH 23/66] m --- .../dotnet/dafny-4.8.0.patch | 59 ++++++++++++++++++- .../dotnet/dafny-4.8.0.patch | 59 ++++++++++++++++++- .../dotnet/dafny-4.8.0.patch | 2 +- .../dotnet/dafny-4.8.0.patch | 2 +- 4 files changed, 118 insertions(+), 4 deletions(-) diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch index 4f80638b8..95d162fec 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -index 9601968..a2a04f8 100644 +index aabc5433..a2a04f8c 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb @@ -49,3 +49,60 @@ index 9601968..a2a04f8 100644 public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; +@@ -925,11 +958,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -954,10 +982,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) +@@ -1130,14 +1154,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1308,18 +1324,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch index e4f743fff..97b2f6a95 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -index 2f95341..36226d3 100644 +index 6aef75f5..36226d34 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms @@ -13,3 +13,60 @@ index 2f95341..36226d3 100644 public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; +@@ -5778,11 +5774,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -5807,10 +5798,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) +@@ -5946,14 +5933,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) + { + return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); +@@ -6060,18 +6039,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch index 5631d0784..220d3cf3e 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs -index da904fc..c5b0bed 100644 +index da904fc3..c5b0bedd 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor diff --git a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch index 4f5051d38..a872a9264 100644 --- a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs -index d0a4e58..4e9890c 100644 +index d0a4e585..4e9890cf 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption From 6cd82f71f449a27326f2550c704d5a94fa0d4b1b Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 12:05:05 -0700 Subject: [PATCH 24/66] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 256733265..3e9183e05 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.7.0 +mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From a740c4a046586fa03751ce944662b81755a93773 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 12:05:15 -0700 Subject: [PATCH 25/66] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 3e9183e05..256733265 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.7.0 +mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From 663cbf1588aa6891160d576dd0aad4b0bf5d83f0 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 12:20:00 -0700 Subject: [PATCH 26/66] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 256733265..3e9183e05 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.7.0 +mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From dbc0893412e0bcd472826d43b1892aa0a2584bba Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 12:20:07 -0700 Subject: [PATCH 27/66] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 3e9183e05..256733265 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.7.0 +mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From 4a386ba988ee7b10525c56ac1b185fe697133237 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 12:38:34 -0700 Subject: [PATCH 28/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 157 ++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..f0ef35ce2 --- /dev/null +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,157 @@ +diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +index 043049f3..d517f861 100644 +--- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs ++++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +@@ -573,8 +573,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); + } +- +- [Obsolete] + public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -593,8 +591,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) + )); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); +@@ -603,8 +599,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) + { + return new System.IO.MemoryStream(value.Elements); +@@ -924,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -953,14 +942,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1083,8 +1066,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); + } +- +- [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1133,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1311,20 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1333,8 +1292,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromString(value); + } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1343,8 +1300,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromString(value); + } +- +- [Obsolete] + public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) + { + return new System.IO.MemoryStream(value.Elements); +@@ -1358,8 +1313,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + return Dafny.Sequence.FromArray(value.ToArray()); + + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); +@@ -1368,8 +1321,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); +@@ -1378,8 +1329,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); +@@ -1398,8 +1347,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) + )); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From 8162cc626b53f1b38ea8c58e95c7ac98a2405f9a Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 12:57:38 -0700 Subject: [PATCH 29/66] m --- submodules/smithy-dafny | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 98939e130..1143f1320 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 98939e130695095386059967509a19299dfac320 +Subproject commit 1143f132071f7988b6b40cd6fdd17b378c880e55 From 6c06933a687d729a412334b01389d9198c0390aa Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:11:33 -0700 Subject: [PATCH 30/66] no patch --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 157 ------------------ 1 file changed, 157 deletions(-) delete mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch deleted file mode 100644 index f0ef35ce2..000000000 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,157 +0,0 @@ -diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 043049f3..d517f861 100644 ---- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -+++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -573,8 +573,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); - } -- -- [Obsolete] - public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -593,8 +591,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) - )); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); -@@ -603,8 +599,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) - { - return new System.IO.MemoryStream(value.Elements); -@@ -924,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -953,14 +942,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1083,8 +1066,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); - } -- -- [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1133,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1311,20 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1333,8 +1292,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromString(value); - } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1343,8 +1300,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromString(value); - } -- -- [Obsolete] - public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) - { - return new System.IO.MemoryStream(value.Elements); -@@ -1358,8 +1313,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - return Dafny.Sequence.FromArray(value.ToArray()); - - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); -@@ -1368,8 +1321,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); -@@ -1378,8 +1329,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); -@@ -1398,8 +1347,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) - )); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From 5a76f3e2f449e3771751df53889bdca4a9147783 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:13:28 -0700 Subject: [PATCH 31/66] m --- submodules/smithy-dafny | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 1143f1320..98939e130 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 1143f132071f7988b6b40cd6fdd17b378c880e55 +Subproject commit 98939e130695095386059967509a19299dfac320 From dc5b4827088a5ef934e85c94dfb5d1458ae3f725 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:18:25 -0700 Subject: [PATCH 32/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 157 ++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..f0ef35ce2 --- /dev/null +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,157 @@ +diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +index 043049f3..d517f861 100644 +--- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs ++++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +@@ -573,8 +573,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); + } +- +- [Obsolete] + public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -593,8 +591,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) + )); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); +@@ -603,8 +599,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) + { + return new System.IO.MemoryStream(value.Elements); +@@ -924,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -953,14 +942,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1083,8 +1066,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); + } +- +- [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1133,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1311,20 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1333,8 +1292,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromString(value); + } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1343,8 +1300,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromString(value); + } +- +- [Obsolete] + public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) + { + return new System.IO.MemoryStream(value.Elements); +@@ -1358,8 +1313,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + return Dafny.Sequence.FromArray(value.ToArray()); + + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); +@@ -1368,8 +1321,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); +@@ -1378,8 +1329,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); +@@ -1398,8 +1347,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) + )); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From d476ff583ef783e9c473417322888c731015085e Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:38:47 -0700 Subject: [PATCH 33/66] m --- TestVectors/runtimes/java/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TestVectors/runtimes/java/build.gradle.kts b/TestVectors/runtimes/java/build.gradle.kts index 62b9cf443..c9ae10bdb 100644 --- a/TestVectors/runtimes/java/build.gradle.kts +++ b/TestVectors/runtimes/java/build.gradle.kts @@ -90,7 +90,7 @@ dependencies { implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") + implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}-SNAPSHOT") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") From 680320735f0bf28533137bb117c27548a827388c Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:44:15 -0700 Subject: [PATCH 34/66] m --- .../Generated/DDBEncryption/TypeConversion.cs | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index d517f861e..b8502aa22 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -573,6 +573,8 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types // Therefore it defers to the dependant module for conversion return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); } + + [Obsolete] public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) { return new string(value.Elements); @@ -591,6 +593,8 @@ public static Dafny.ISequence ToDafny_N6_smithy__N3_api__S6_String(string new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) )); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); @@ -599,6 +603,8 @@ public static Dafny.ISequence ToDafny_N6_smithy__N3_api__S6_String(string { return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); } + + [Obsolete] public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) { return new System.IO.MemoryStream(value.Elements); @@ -944,6 +950,8 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) { return new string(value.Elements); @@ -1066,6 +1074,8 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) { return new string(value.Elements); @@ -1284,6 +1294,8 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); @@ -1292,6 +1304,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return Dafny.Sequence.FromString(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) { return new string(value.Elements); @@ -1300,6 +1314,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return Dafny.Sequence.FromString(value); } + + [Obsolete] public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) { return new System.IO.MemoryStream(value.Elements); @@ -1313,6 +1329,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S return Dafny.Sequence.FromArray(value.ToArray()); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); @@ -1321,6 +1339,8 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); @@ -1329,6 +1349,8 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); @@ -1347,6 +1369,8 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) )); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From ce4138599fe1c2bdd23165e3dc27f2fc8cd66050 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:50:26 -0700 Subject: [PATCH 35/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 112 ++---------------- .../Generated/DDBEncryption/TypeConversion.cs | 50 ++++++++ 2 files changed, 58 insertions(+), 104 deletions(-) diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch index f0ef35ce2..363d2d9e7 100644 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -1,35 +1,8 @@ diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 043049f3..d517f861 100644 +index 043049f3..b8502aa2 100644 --- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -573,8 +573,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); - } -- -- [Obsolete] - public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -593,8 +591,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) - )); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); -@@ -603,8 +599,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) - { - return new System.IO.MemoryStream(value.Elements); -@@ -924,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -924,11 +924,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } @@ -41,7 +14,7 @@ index 043049f3..d517f861 100644 throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -953,14 +942,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -953,10 +948,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } @@ -51,21 +24,8 @@ index 043049f3..d517f861 100644 - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1083,8 +1066,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); - } -- -- [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1133,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + +@@ -1133,14 +1124,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } @@ -80,7 +40,7 @@ index 043049f3..d517f861 100644 public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1311,20 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -1311,18 +1294,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } @@ -96,62 +56,6 @@ index 043049f3..d517f861 100644 - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1333,8 +1292,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromString(value); - } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1343,8 +1300,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromString(value); - } -- -- [Obsolete] - public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) - { - return new System.IO.MemoryStream(value.Elements); -@@ -1358,8 +1313,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - return Dafny.Sequence.FromArray(value.ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); -@@ -1368,8 +1321,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); -@@ -1378,8 +1329,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); -@@ -1398,8 +1347,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) - )); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); + [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index b8502aa22..fdb6a9f6f 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -366,6 +366,8 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_DynamoDbEncryptionException__M7_message(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -382,6 +384,8 @@ public static Dafny.ISequence ToDafny_N3_aws__N12_cryptography__N15_dbEncr { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_GetBranchKeyIdFromDdbKeyOutput__M11_branchKeyId(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -398,6 +402,8 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn { return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion(value); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S36_GetEncryptedDataKeyDescriptionOutput__M33_EncryptedDataKeyDescriptionOutput(Dafny.ISequence value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); @@ -406,6 +412,8 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn { return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); } + + [Obsolete] public static System.IO.MemoryStream FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion__M6_header(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S4_Blob(value); @@ -712,6 +720,8 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetSegments(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(value.Split), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M3_low(value.Low), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M4_high(value.High)); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S14_SingleKeyStore__M5_keyId(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -728,6 +738,8 @@ public static int ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dyna { return ToDafny_N6_smithy__N3_api__S7_Integer(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S13_MultiKeyStore__M12_keyFieldName(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -752,6 +764,8 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 { return value == null ? Wrappers_Compile.Option.create_None() : Wrappers_Compile.Option.create_Some(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType((AWS.Cryptography.MaterialProviders.CacheType)value)); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Shared__M5_other(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -760,6 +774,8 @@ public static Dafny.ISequence ToDafny_N3_aws__N12_cryptography__N15_dbEncr { return ToDafny_N6_smithy__N3_api__S6_String(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S9_SharedSet__M5_other(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -768,6 +784,8 @@ public static Dafny.ISequence ToDafny_N3_aws__N12_cryptography__N15_dbEncr { return ToDafny_N6_smithy__N3_api__S6_String(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); @@ -792,6 +810,8 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn { return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S12_AttributeMap__M3_key(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); @@ -808,6 +828,8 @@ public static software.amazon.cryptography.services.dynamodb.internaldafny.types { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Insert__M7_literal(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -848,6 +870,8 @@ public static int ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dyna { return ToDafny_N6_smithy__N3_api__S7_Integer(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S10_GetSegment__M5_split(Dafny.ISequence value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); @@ -864,6 +888,8 @@ public static int ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dyna { return ToDafny_N6_smithy__N3_api__S7_Integer(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(Dafny.ISequence value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); @@ -1124,6 +1150,8 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1132,6 +1160,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_N(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); @@ -1140,6 +1170,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); } + + [Obsolete] public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_B(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); @@ -1148,6 +1180,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_SS(Dafny.ISequence> value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); @@ -1156,6 +1190,8 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_NS(Dafny.ISequence> value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); @@ -1164,6 +1200,8 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_BS(Dafny.ISequence> value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(value); @@ -1180,6 +1218,8 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue(value); } + + [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_L(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(value); @@ -1204,6 +1244,8 @@ public static bool ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S21_BooleanAttributeValue(value); } + + [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -1491,6 +1533,8 @@ public static int ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_S { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S14_CountingNumber(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1499,6 +1543,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); @@ -1507,6 +1553,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); } + + [Obsolete] public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); @@ -1515,6 +1563,8 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); } + + [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); From 7615cdcff4651363f8362cf370505595b4fdbb01 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 13:56:48 -0700 Subject: [PATCH 36/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 228 +++++++++++++++++- 1 file changed, 223 insertions(+), 5 deletions(-) diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch index 363d2d9e7..efdb292dd 100644 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -1,8 +1,125 @@ diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 043049f3..b8502aa2 100644 +index 043049f3..fdb6a9f6 100644 --- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -924,11 +924,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -366,6 +366,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_DynamoDbEncryptionException__M7_message(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -382,6 +384,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_GetBranchKeyIdFromDdbKeyOutput__M11_branchKeyId(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -398,6 +402,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion(value); + } ++ ++ [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S36_GetEncryptedDataKeyDescriptionOutput__M33_EncryptedDataKeyDescriptionOutput(Dafny.ISequence value) + { + return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); +@@ -406,6 +412,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); + } ++ ++ [Obsolete] + public static System.IO.MemoryStream FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion__M6_header(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S4_Blob(value); +@@ -712,6 +720,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetSegments(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(value.Split), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M3_low(value.Low), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M4_high(value.High)); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S14_SingleKeyStore__M5_keyId(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -728,6 +738,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N6_smithy__N3_api__S7_Integer(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S13_MultiKeyStore__M12_keyFieldName(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -752,6 +764,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return value == null ? Wrappers_Compile.Option.create_None() : Wrappers_Compile.Option.create_Some(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType((AWS.Cryptography.MaterialProviders.CacheType)value)); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Shared__M5_other(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -760,6 +774,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N6_smithy__N3_api__S6_String(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S9_SharedSet__M5_other(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -768,6 +784,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N6_smithy__N3_api__S6_String(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); +@@ -792,6 +810,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S12_AttributeMap__M3_key(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); +@@ -808,6 +828,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Insert__M7_literal(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -848,6 +870,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N6_smithy__N3_api__S7_Integer(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S10_GetSegment__M5_split(Dafny.ISequence value) + { + return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); +@@ -864,6 +888,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N6_smithy__N3_api__S7_Integer(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(Dafny.ISequence value) + { + return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); +@@ -924,11 +950,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } @@ -14,7 +131,7 @@ index 043049f3..b8502aa2 100644 throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -953,10 +948,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -953,10 +974,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } @@ -25,7 +142,7 @@ index 043049f3..b8502aa2 100644 throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } -@@ -1133,14 +1124,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -1133,14 +1150,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } @@ -37,10 +154,75 @@ index 043049f3..b8502aa2 100644 - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } ++ ++ [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1311,18 +1294,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -1149,6 +1160,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_N(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); +@@ -1157,6 +1170,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); + } ++ ++ [Obsolete] + public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_B(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); +@@ -1165,6 +1180,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); + } ++ ++ [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_SS(Dafny.ISequence> value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); +@@ -1173,6 +1190,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); + } ++ ++ [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_NS(Dafny.ISequence> value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); +@@ -1181,6 +1200,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); + } ++ ++ [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_BS(Dafny.ISequence> value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(value); +@@ -1197,6 +1218,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue(value); + } ++ ++ [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_L(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(value); +@@ -1221,6 +1244,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S21_BooleanAttributeValue(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(Dafny.ISequence value) + { + return FromDafny_N6_smithy__N3_api__S6_String(value); +@@ -1311,18 +1336,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } @@ -59,3 +241,39 @@ index 043049f3..b8502aa2 100644 [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) +@@ -1520,6 +1533,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S14_CountingNumber(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1528,6 +1543,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); +@@ -1536,6 +1553,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); + } ++ ++ [Obsolete] + public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); +@@ -1544,6 +1563,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); + } ++ ++ [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); From 3f8ae2660697d4b0528b2df797d8efe56d4ead62 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 14:10:34 -0700 Subject: [PATCH 37/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 279 ------------------ .../Generated/DDBEncryption/TypeConversion.cs | 79 ++--- 2 files changed, 29 insertions(+), 329 deletions(-) delete mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch deleted file mode 100644 index efdb292dd..000000000 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,279 +0,0 @@ -diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 043049f3..fdb6a9f6 100644 ---- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -+++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -366,6 +366,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_DynamoDbEncryptionException__M7_message(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -382,6 +384,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_GetBranchKeyIdFromDdbKeyOutput__M11_branchKeyId(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -398,6 +402,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion(value); - } -+ -+ [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S36_GetEncryptedDataKeyDescriptionOutput__M33_EncryptedDataKeyDescriptionOutput(Dafny.ISequence value) - { - return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); -@@ -406,6 +412,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); - } -+ -+ [Obsolete] - public static System.IO.MemoryStream FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion__M6_header(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S4_Blob(value); -@@ -712,6 +720,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetSegments(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(value.Split), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M3_low(value.Low), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M4_high(value.High)); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S14_SingleKeyStore__M5_keyId(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -728,6 +738,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N6_smithy__N3_api__S7_Integer(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S13_MultiKeyStore__M12_keyFieldName(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -752,6 +764,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return value == null ? Wrappers_Compile.Option.create_None() : Wrappers_Compile.Option.create_Some(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType((AWS.Cryptography.MaterialProviders.CacheType)value)); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Shared__M5_other(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -760,6 +774,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N6_smithy__N3_api__S6_String(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S9_SharedSet__M5_other(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -768,6 +784,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N6_smithy__N3_api__S6_String(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); -@@ -792,6 +810,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S12_AttributeMap__M3_key(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); -@@ -808,6 +828,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Insert__M7_literal(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -848,6 +870,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N6_smithy__N3_api__S7_Integer(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S10_GetSegment__M5_split(Dafny.ISequence value) - { - return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); -@@ -864,6 +888,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N6_smithy__N3_api__S7_Integer(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(Dafny.ISequence value) - { - return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); -@@ -924,11 +950,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -953,10 +974,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - -@@ -1133,14 +1150,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1149,6 +1160,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_N(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); -@@ -1157,6 +1170,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); - } -+ -+ [Obsolete] - public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_B(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); -@@ -1165,6 +1180,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); - } -+ -+ [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_SS(Dafny.ISequence> value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); -@@ -1173,6 +1190,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); - } -+ -+ [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_NS(Dafny.ISequence> value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); -@@ -1181,6 +1200,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); - } -+ -+ [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_BS(Dafny.ISequence> value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(value); -@@ -1197,6 +1218,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue(value); - } -+ -+ [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_L(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(value); -@@ -1221,6 +1244,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S21_BooleanAttributeValue(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(Dafny.ISequence value) - { - return FromDafny_N6_smithy__N3_api__S6_String(value); -@@ -1311,18 +1336,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - - [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) -@@ -1520,6 +1533,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S14_CountingNumber(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1528,6 +1543,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); -@@ -1536,6 +1553,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); - } -+ -+ [Obsolete] - public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); -@@ -1544,6 +1563,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); - } -+ -+ [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index fdb6a9f6f..043049f39 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -366,8 +366,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_DynamoDbEncryptionException__M7_message(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -384,8 +382,6 @@ public static Dafny.ISequence ToDafny_N3_aws__N12_cryptography__N15_dbEncr { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_GetBranchKeyIdFromDdbKeyOutput__M11_branchKeyId(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -402,8 +398,6 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn { return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion(value); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S36_GetEncryptedDataKeyDescriptionOutput__M33_EncryptedDataKeyDescriptionOutput(Dafny.ISequence value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); @@ -412,8 +406,6 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn { return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(value); } - - [Obsolete] public static System.IO.MemoryStream FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S35_GetEncryptedDataKeyDescriptionUnion__M6_header(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S4_Blob(value); @@ -720,8 +712,6 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.GetSegments(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(value.Split), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M3_low(value.Low), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M4_high(value.High)); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S14_SingleKeyStore__M5_keyId(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -738,8 +728,6 @@ public static int ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dyna { return ToDafny_N6_smithy__N3_api__S7_Integer(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S13_MultiKeyStore__M12_keyFieldName(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -764,8 +752,6 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 { return value == null ? Wrappers_Compile.Option.create_None() : Wrappers_Compile.Option.create_Some(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType((AWS.Cryptography.MaterialProviders.CacheType)value)); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Shared__M5_other(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -774,8 +760,6 @@ public static Dafny.ISequence ToDafny_N3_aws__N12_cryptography__N15_dbEncr { return ToDafny_N6_smithy__N3_api__S6_String(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S9_SharedSet__M5_other(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -784,8 +768,6 @@ public static Dafny.ISequence ToDafny_N3_aws__N12_cryptography__N15_dbEncr { return ToDafny_N6_smithy__N3_api__S6_String(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); @@ -810,8 +792,6 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn { return ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S12_AttributeMap__M3_key(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); @@ -828,8 +808,6 @@ public static software.amazon.cryptography.services.dynamodb.internaldafny.types { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S6_Insert__M7_literal(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -870,8 +848,6 @@ public static int ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dyna { return ToDafny_N6_smithy__N3_api__S7_Integer(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S10_GetSegment__M5_split(Dafny.ISequence value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); @@ -888,8 +864,6 @@ public static int ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dyna { return ToDafny_N6_smithy__N3_api__S7_Integer(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_GetSegments__M5_split(Dafny.ISequence value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(value); @@ -950,6 +924,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -974,6 +953,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } @@ -1150,8 +1133,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } - - [Obsolete] + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1160,8 +1149,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_N(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); @@ -1170,8 +1157,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); } - - [Obsolete] public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_B(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); @@ -1180,8 +1165,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_SS(Dafny.ISequence> value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); @@ -1190,8 +1173,6 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(value); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_NS(Dafny.ISequence> value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); @@ -1200,8 +1181,6 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(value); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M2_BS(Dafny.ISequence> value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(value); @@ -1218,8 +1197,6 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue(value); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_L(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(value); @@ -1244,8 +1221,6 @@ public static bool ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S21_BooleanAttributeValue(value); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(Dafny.ISequence value) { return FromDafny_N6_smithy__N3_api__S6_String(value); @@ -1336,6 +1311,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) @@ -1533,8 +1520,6 @@ public static int ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_S { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S14_CountingNumber(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1543,8 +1528,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); @@ -1553,8 +1536,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(value); } - - [Obsolete] public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); @@ -1563,8 +1544,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(value); From b4959f605d21952eed3e80afc37015b673e5554c Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 14:28:53 -0700 Subject: [PATCH 38/66] m --- .../Generated/DDBEncryption/TypeConversion.cs | 53 ------------------- 1 file changed, 53 deletions(-) diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index 043049f39..d517f861e 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -573,8 +573,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types // Therefore it defers to the dependant module for conversion return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); } - - [Obsolete] public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) { return new string(value.Elements); @@ -593,8 +591,6 @@ public static Dafny.ISequence ToDafny_N6_smithy__N3_api__S6_String(string new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) )); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); @@ -603,8 +599,6 @@ public static Dafny.ISequence ToDafny_N6_smithy__N3_api__S6_String(string { return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); } - - [Obsolete] public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) { return new System.IO.MemoryStream(value.Elements); @@ -924,11 +918,6 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } - if (value.is_Shared) - { - converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); - return converted; - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -953,14 +942,8 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } - if (value.IsSetShared()) - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) { return new string(value.Elements); @@ -1083,8 +1066,6 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); } - - [Obsolete] public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) { return new string(value.Elements); @@ -1133,14 +1114,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1311,20 +1284,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); @@ -1333,8 +1292,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return Dafny.Sequence.FromString(value); } - - [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) { return new string(value.Elements); @@ -1343,8 +1300,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S { return Dafny.Sequence.FromString(value); } - - [Obsolete] public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) { return new System.IO.MemoryStream(value.Elements); @@ -1358,8 +1313,6 @@ public static Dafny.ISequence ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S return Dafny.Sequence.FromArray(value.ToArray()); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); @@ -1368,8 +1321,6 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); @@ -1378,8 +1329,6 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo { return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); @@ -1398,8 +1347,6 @@ public static System.Collections.Generic.List FromDafny_N3_com__N9_amazo new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) )); } - - [Obsolete] public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) { return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From 362c3b3f0c959f3d66c30b6e1b84abacad28a253 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 14:39:53 -0700 Subject: [PATCH 39/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 157 ++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..f0ef35ce2 --- /dev/null +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,157 @@ +diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +index 043049f3..d517f861 100644 +--- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs ++++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +@@ -573,8 +573,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); + } +- +- [Obsolete] + public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -593,8 +591,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) + )); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); +@@ -603,8 +599,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) + { + return new System.IO.MemoryStream(value.Elements); +@@ -924,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -953,14 +942,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1083,8 +1066,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); + } +- +- [Obsolete] + public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1133,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1311,20 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1333,8 +1292,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromString(value); + } +- +- [Obsolete] + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); +@@ -1343,8 +1300,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence.FromString(value); + } +- +- [Obsolete] + public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) + { + return new System.IO.MemoryStream(value.Elements); +@@ -1358,8 +1313,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + return Dafny.Sequence.FromArray(value.ToArray()); + + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); +@@ -1368,8 +1321,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); +@@ -1378,8 +1329,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); +@@ -1398,8 +1347,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) + )); + } +- +- [Obsolete] + public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) + { + return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From 32842c736ca201b74e47f4f2da3df5014afe2565 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 14:48:34 -0700 Subject: [PATCH 40/66] m --- .github/actions/polymorph_codegen/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/polymorph_codegen/action.yml b/.github/actions/polymorph_codegen/action.yml index 6f7a64fa5..c861a5f1f 100644 --- a/.github/actions/polymorph_codegen/action.yml +++ b/.github/actions/polymorph_codegen/action.yml @@ -62,6 +62,7 @@ runs: working-directory: submodules/MaterialProviders shell: bash run: | + dotnet --version git checkout main git pull git submodule update --init --recursive From 4851473eba5ebe7137d8d73937e522847e4698f9 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 14:52:02 -0700 Subject: [PATCH 41/66] m --- .github/actions/polymorph_codegen/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/polymorph_codegen/action.yml b/.github/actions/polymorph_codegen/action.yml index c861a5f1f..97528420b 100644 --- a/.github/actions/polymorph_codegen/action.yml +++ b/.github/actions/polymorph_codegen/action.yml @@ -62,7 +62,6 @@ runs: working-directory: submodules/MaterialProviders shell: bash run: | - dotnet --version git checkout main git pull git submodule update --init --recursive @@ -105,6 +104,7 @@ runs: working-directory: ./${{ inputs.library }} shell: bash run: | + dotnet --version make polymorph_dafny ${{ steps.dependencies.outputs.PROJECT_DEPENDENCIES }} - name: Set up prettier in MPL From 4498ca102328f5db38bc9b01b54f75a43c830e9f Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 14:57:02 -0700 Subject: [PATCH 42/66] m --- .github/actions/polymorph_codegen/action.yml | 1 - .../DDBEncryption/dotnet/dafny-4.8.0.patch | 106 +----------------- 2 files changed, 5 insertions(+), 102 deletions(-) diff --git a/.github/actions/polymorph_codegen/action.yml b/.github/actions/polymorph_codegen/action.yml index 97528420b..6f7a64fa5 100644 --- a/.github/actions/polymorph_codegen/action.yml +++ b/.github/actions/polymorph_codegen/action.yml @@ -104,7 +104,6 @@ runs: working-directory: ./${{ inputs.library }} shell: bash run: | - dotnet --version make polymorph_dafny ${{ steps.dependencies.outputs.PROJECT_DEPENDENCIES }} - name: Set up prettier in MPL diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch index f0ef35ce2..89aec37d6 100644 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -1,35 +1,8 @@ diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 043049f3..d517f861 100644 +index 009ce943..d517f861 100644 --- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -573,8 +573,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S28_BranchKeyIdSupplierReference(value); - } -- -- [Obsolete] - public static string FromDafny_N6_smithy__N3_api__S6_String(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -593,8 +591,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S3_Key__M5_value(pair.Value)) - )); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList(Dafny.ISequence value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member)); -@@ -603,8 +599,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromArray(value.Select(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S31_EncryptedDataKeyDescriptionList__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.IO.MemoryStream FromDafny_N6_smithy__N3_api__S4_Blob(Dafny.ISequence value) - { - return new System.IO.MemoryStream(value.Elements); -@@ -924,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -918,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } @@ -41,7 +14,7 @@ index 043049f3..d517f861 100644 throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -953,14 +942,8 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -947,10 +942,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } @@ -51,21 +24,8 @@ index 043049f3..d517f861 100644 - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } -- -- [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1083,8 +1066,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - string var_branchKeyVersion = value.IsSetBranchKeyVersion() ? value.BranchKeyVersion : (string)null; - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.EncryptedDataKeyDescription(ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M13_keyProviderId(value.KeyProviderId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M15_keyProviderInfo(var_keyProviderInfo), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M11_branchKeyId(var_branchKeyId), ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S27_EncryptedDataKeyDescription__M16_branchKeyVersion(var_branchKeyVersion)); - } -- -- [Obsolete] - public static string FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S4_Char(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1133,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -1123,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } @@ -80,7 +40,7 @@ index 043049f3..d517f861 100644 public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1311,20 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped +@@ -1301,18 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } @@ -96,62 +56,6 @@ index 043049f3..d517f861 100644 - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } -- -- [Obsolete] public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); -@@ -1333,8 +1292,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromString(value); - } -- -- [Obsolete] - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_NumberAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); -@@ -1343,8 +1300,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence.FromString(value); - } -- -- [Obsolete] - public static System.IO.MemoryStream FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_BinaryAttributeValue(Dafny.ISequence value) - { - return new System.IO.MemoryStream(value.Elements); -@@ -1358,8 +1313,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - return Dafny.Sequence.FromArray(value.ToArray()); - - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member)); -@@ -1368,8 +1321,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_StringSetAttributeValue__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member)); -@@ -1378,8 +1329,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return Dafny.Sequence>.FromArray(value.Select(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_NumberSetAttributeValue__M6_member).ToArray()); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue(Dafny.ISequence> value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S23_BinarySetAttributeValue__M6_member)); -@@ -1398,8 +1347,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - new Dafny.Pair, software.amazon.cryptography.services.dynamodb.internaldafny.types._IAttributeValue>(ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M3_key(pair.Key), ToDafny_N3_com__N9_amazonaws__N8_dynamodb__S17_MapAttributeValue__M5_value(pair.Value)) - )); - } -- -- [Obsolete] - public static System.Collections.Generic.List FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue(Dafny.ISequence value) - { - return new System.Collections.Generic.List(value.Elements.Select(FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S18_ListAttributeValue__M6_member)); From 36b6d1b594cdb98bb3c6067e5e445f9085e56b95 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 15:09:32 -0700 Subject: [PATCH 43/66] m --- TestVectors/runtimes/java/build.gradle.kts | 2 +- submodules/MaterialProviders | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/TestVectors/runtimes/java/build.gradle.kts b/TestVectors/runtimes/java/build.gradle.kts index c9ae10bdb..62b9cf443 100644 --- a/TestVectors/runtimes/java/build.gradle.kts +++ b/TestVectors/runtimes/java/build.gradle.kts @@ -90,7 +90,7 @@ dependencies { implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index ce33f761f..ea0fe508d 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit ce33f761fd970c3c621aa565ca89ddf20e6a3560 +Subproject commit ea0fe508dca214b9c9bdaf0fc21122e83971ef1b From 58556cacaa44b9cfa7702da6da25f68f24927f38 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 10:19:33 -0700 Subject: [PATCH 44/66] m --- .../dotnet/dafny-4.2.0.patch | 48 ------ .../dotnet/dafny-4.8.0.patch | 108 ------------- .../dafny/dafny-4.8.0.patch | 145 ------------------ .../dotnet/dafny-4.8.0.patch | 72 --------- .../dotnet/dafny-4.8.0.patch | 15 -- .../dotnet/dafny-4.8.0.patch | 15 -- ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 124 +++++++++------ .../DynamoDbEncryption/TypeConversion.cs | 68 ++++---- .../TypeConversion.cs | 33 ++++ .../DynamoDbItemEncryptor/TypeConversion.cs | 4 + .../StructuredEncryption/TypeConversion.cs | 4 + .../DDBEncryption/dotnet/dafny-4.8.0.patch | 61 -------- .../Generated/DDBEncryption/TypeConversion.cs | 29 ++++ 13 files changed, 180 insertions(+), 546 deletions(-) delete mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch delete mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch delete mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch delete mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch delete mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch delete mode 100644 DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch delete mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch deleted file mode 100644 index e777b5f4a..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -index 9a951767..5c0cee33 100644 ---- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -+++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -@@ -7,6 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - { - public static class TypeConversion - { -+ // BEGIN MANUAL EDIT -+ public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) -+ { -+ if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) -+ { -+ return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); -+ } -+ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); -+ } -+ public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) -+ { -+ if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) -+ { -+ return nativeValue.impl(); -+ } -+ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); -+ } -+ public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) -+ { -+ if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; -+ return new LegacyDynamoDbEncryptor(value); -+ -+ } -+ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) -+ { -+ switch (value) -+ { -+ case LegacyDynamoDbEncryptor valueWithImpl: -+ return valueWithImpl._impl; -+ case LegacyDynamoDbEncryptorBase nativeImpl: -+ return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); -+ default: -+ throw new System.ArgumentException( -+ "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); -+ } -+ } -+ // END MANUAL EDIT - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) - { - software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch deleted file mode 100644 index 95d162fec..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -index aabc5433..a2a04f8c 100644 ---- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -+++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -@@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - { - public static class TypeConversion - { -- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; -- -- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; -+ // BEGIN MANUAL EDIT -+ public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) -+ { -+ if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) -+ { -+ return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); -+ } -+ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); -+ } -+ public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) -+ { -+ if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) -+ { -+ return nativeValue.impl(); -+ } -+ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); -+ } -+ public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) -+ { -+ if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; -+ return new LegacyDynamoDbEncryptor(value); - -+ } -+ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) -+ { -+ switch (value) -+ { -+ case LegacyDynamoDbEncryptor valueWithImpl: -+ return valueWithImpl._impl; -+ case LegacyDynamoDbEncryptorBase nativeImpl: -+ return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); -+ default: -+ throw new System.ArgumentException( -+ "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); -+ } -+ } -+ // END MANUAL EDIT - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) - { - software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; -@@ -925,11 +958,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -954,10 +982,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) -@@ -1130,14 +1154,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1308,18 +1324,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch deleted file mode 100644 index b6ddf55b9..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch +++ /dev/null @@ -1,145 +0,0 @@ -diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -index 9a8ed7f4..1ffa8b55 100644 ---- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -+++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -@@ -759,94 +759,62 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService - var tmps4 := set t4 | t4 in tmp3.search.value.versions; - forall tmp4 :: tmp4 in tmps4 ==> - tmp4.keyStore.ValidState() -- requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; -- forall tmp5 :: tmp5 in tmps5 ==> -- tmp5.search.Some? ==> -- var tmps6 := set t6 | t6 in tmp5.search.value.versions; -- forall tmp6 :: tmp6 in tmps6 ==> -- tmp6.keySource.multi? ==> -- tmp6.keySource.multi.cache.Some? ==> -- tmp6.keySource.multi.cache.value.Shared? ==> -- tmp6.keySource.multi.cache.value.Shared.ValidState() -+ modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true -+ && t5.keyring.Some? -+ :: t5.keyring.value, -+ obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj -+ modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true -+ && t6.cmm.Some? -+ :: t6.cmm.value, -+ obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj - modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true -- && t7.keyring.Some? -- :: t7.keyring.value, -+ && t7.legacyOverride.Some? -+ :: t7.legacyOverride.value.encryptor, - obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj - modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true -- && t8.cmm.Some? -- :: t8.cmm.value, -+ && t8.search.Some? -+ , t9 <- t8.search.value.versions :: t9.keyStore, - obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj -- modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true -- && t9.legacyOverride.Some? -- :: t9.legacyOverride.value.encryptor, -- obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj -- modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true -- && t10.search.Some? -- , t11 <- t10.search.value.versions :: t11.keyStore, -- obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj -- modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true -- && t12.search.Some? -- , t13 <- t12.search.value.versions && t13.keySource.multi? -- && t13.keySource.multi.cache.Some? -- && t13.keySource.multi.cache.value.Shared? -- :: t13.keySource.multi.cache.value.Shared, -- obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj - ensures res.Success? ==> - && fresh(res.value) - && fresh(res.value.Modifies -- - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true -- && t14.keyring.Some? -- :: t14.keyring.value, -- obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj -- ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true -- && t15.cmm.Some? -- :: t15.cmm.value, -- obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj -- ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true -- && t16.legacyOverride.Some? -- :: t16.legacyOverride.value.encryptor, -- obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj -- ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true -- && t17.search.Some? -- , t18 <- t17.search.value.versions :: t18.keyStore, -- obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj -- ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true -- && t19.search.Some? -- , t20 <- t19.search.value.versions && t20.keySource.multi? -- && t20.keySource.multi.cache.Some? -- && t20.keySource.multi.cache.value.Shared? -- :: t20.keySource.multi.cache.value.Shared, -- obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj -+ - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true -+ && t10.keyring.Some? -+ :: t10.keyring.value, -+ obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj -+ ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true -+ && t11.cmm.Some? -+ :: t11.cmm.value, -+ obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj -+ ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true -+ && t12.legacyOverride.Some? -+ :: t12.legacyOverride.value.encryptor, -+ obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj -+ ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true -+ && t13.search.Some? -+ , t14 <- t13.search.value.versions :: t14.keyStore, -+ obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj - ) ) - && fresh(res.value.History) - && res.value.ValidState() -- ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; -- forall tmp21 :: tmp21 in tmps21 ==> -- tmp21.keyring.Some? ==> -- tmp21.keyring.value.ValidState() -- ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; -- forall tmp22 :: tmp22 in tmps22 ==> -- tmp22.cmm.Some? ==> -- tmp22.cmm.value.ValidState() -- ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; -- forall tmp23 :: tmp23 in tmps23 ==> -- tmp23.legacyOverride.Some? ==> -- tmp23.legacyOverride.value.encryptor.ValidState() -- ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; -- forall tmp24 :: tmp24 in tmps24 ==> -- tmp24.search.Some? ==> -- var tmps25 := set t25 | t25 in tmp24.search.value.versions; -- forall tmp25 :: tmp25 in tmps25 ==> -- tmp25.keyStore.ValidState() -- ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; -- forall tmp26 :: tmp26 in tmps26 ==> -- tmp26.search.Some? ==> -- var tmps27 := set t27 | t27 in tmp26.search.value.versions; -- forall tmp27 :: tmp27 in tmps27 ==> -- tmp27.keySource.multi? ==> -- tmp27.keySource.multi.cache.Some? ==> -- tmp27.keySource.multi.cache.value.Shared? ==> -- tmp27.keySource.multi.cache.value.Shared.ValidState() -+ ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; -+ forall tmp15 :: tmp15 in tmps15 ==> -+ tmp15.keyring.Some? ==> -+ tmp15.keyring.value.ValidState() -+ ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; -+ forall tmp16 :: tmp16 in tmps16 ==> -+ tmp16.cmm.Some? ==> -+ tmp16.cmm.value.ValidState() -+ ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; -+ forall tmp17 :: tmp17 in tmps17 ==> -+ tmp17.legacyOverride.Some? ==> -+ tmp17.legacyOverride.value.encryptor.ValidState() -+ ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; -+ forall tmp18 :: tmp18 in tmps18 ==> -+ tmp18.search.Some? ==> -+ var tmps19 := set t19 | t19 in tmp18.search.value.versions; -+ forall tmp19 :: tmp19 in tmps19 ==> -+ tmp19.keyStore.ValidState() - - // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals - function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch deleted file mode 100644 index 97b2f6a95..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -index 6aef75f5..36226d34 100644 ---- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -+++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - { - public static class TypeConversion - { -- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; -- -- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; -- - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) - { - software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; -@@ -5778,11 +5774,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -5807,10 +5798,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) -@@ -5946,14 +5933,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) - { - return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); -@@ -6060,18 +6039,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) - { - software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch deleted file mode 100644 index 220d3cf3e..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs -index da904fc3..c5b0bedd 100644 ---- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs -+++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs -@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor - { - public static class TypeConversion - { -- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; -- -- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; -- - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) - { - software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch deleted file mode 100644 index a872a9264..000000000 --- a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs -index d0a4e585..4e9890cf 100644 ---- b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs -+++ a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs -@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption - { - public static class TypeConversion - { -- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; -- -- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; -- - public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) - { - if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 1ffa8b553..9a8ed7f49 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -759,62 +759,94 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService var tmps4 := set t4 | t4 in tmp3.search.value.versions; forall tmp4 :: tmp4 in tmps4 ==> tmp4.keyStore.ValidState() - modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true - && t5.keyring.Some? - :: t5.keyring.value, - obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj - modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true - && t6.cmm.Some? - :: t6.cmm.value, - obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj + requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; + forall tmp5 :: tmp5 in tmps5 ==> + tmp5.search.Some? ==> + var tmps6 := set t6 | t6 in tmp5.search.value.versions; + forall tmp6 :: tmp6 in tmps6 ==> + tmp6.keySource.multi? ==> + tmp6.keySource.multi.cache.Some? ==> + tmp6.keySource.multi.cache.value.Shared? ==> + tmp6.keySource.multi.cache.value.Shared.ValidState() modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true - && t7.legacyOverride.Some? - :: t7.legacyOverride.value.encryptor, + && t7.keyring.Some? + :: t7.keyring.value, obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true - && t8.search.Some? - , t9 <- t8.search.value.versions :: t9.keyStore, + && t8.cmm.Some? + :: t8.cmm.value, obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj + modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true + && t9.legacyOverride.Some? + :: t9.legacyOverride.value.encryptor, + obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj + modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true + && t10.search.Some? + , t11 <- t10.search.value.versions :: t11.keyStore, + obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj + modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true + && t12.search.Some? + , t13 <- t12.search.value.versions && t13.keySource.multi? + && t13.keySource.multi.cache.Some? + && t13.keySource.multi.cache.value.Shared? + :: t13.keySource.multi.cache.value.Shared, + obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ensures res.Success? ==> && fresh(res.value) && fresh(res.value.Modifies - - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true - && t10.keyring.Some? - :: t10.keyring.value, - obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj - ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true - && t11.cmm.Some? - :: t11.cmm.value, - obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj - ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true - && t12.legacyOverride.Some? - :: t12.legacyOverride.value.encryptor, - obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj - ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true - && t13.search.Some? - , t14 <- t13.search.value.versions :: t14.keyStore, - obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj + - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true + && t14.keyring.Some? + :: t14.keyring.value, + obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj + ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true + && t15.cmm.Some? + :: t15.cmm.value, + obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj + ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true + && t16.legacyOverride.Some? + :: t16.legacyOverride.value.encryptor, + obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj + ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true + && t17.search.Some? + , t18 <- t17.search.value.versions :: t18.keyStore, + obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj + ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true + && t19.search.Some? + , t20 <- t19.search.value.versions && t20.keySource.multi? + && t20.keySource.multi.cache.Some? + && t20.keySource.multi.cache.value.Shared? + :: t20.keySource.multi.cache.value.Shared, + obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj ) ) && fresh(res.value.History) && res.value.ValidState() - ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; - forall tmp15 :: tmp15 in tmps15 ==> - tmp15.keyring.Some? ==> - tmp15.keyring.value.ValidState() - ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; - forall tmp16 :: tmp16 in tmps16 ==> - tmp16.cmm.Some? ==> - tmp16.cmm.value.ValidState() - ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; - forall tmp17 :: tmp17 in tmps17 ==> - tmp17.legacyOverride.Some? ==> - tmp17.legacyOverride.value.encryptor.ValidState() - ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; - forall tmp18 :: tmp18 in tmps18 ==> - tmp18.search.Some? ==> - var tmps19 := set t19 | t19 in tmp18.search.value.versions; - forall tmp19 :: tmp19 in tmps19 ==> - tmp19.keyStore.ValidState() + ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; + forall tmp21 :: tmp21 in tmps21 ==> + tmp21.keyring.Some? ==> + tmp21.keyring.value.ValidState() + ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; + forall tmp22 :: tmp22 in tmps22 ==> + tmp22.cmm.Some? ==> + tmp22.cmm.value.ValidState() + ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; + forall tmp23 :: tmp23 in tmps23 ==> + tmp23.legacyOverride.Some? ==> + tmp23.legacyOverride.value.encryptor.ValidState() + ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; + forall tmp24 :: tmp24 in tmps24 ==> + tmp24.search.Some? ==> + var tmps25 := set t25 | t25 in tmp24.search.value.versions; + forall tmp25 :: tmp25 in tmps25 ==> + tmp25.keyStore.ValidState() + ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; + forall tmp26 :: tmp26 in tmps26 ==> + tmp26.search.Some? ==> + var tmps27 := set t27 | t27 in tmp26.search.value.versions; + forall tmp27 :: tmp27 in tmps27 ==> + tmp27.keySource.multi? ==> + tmp27.keySource.multi.cache.Some? ==> + tmp27.keySource.multi.cache.value.Shared? ==> + tmp27.keySource.multi.cache.value.Shared.ValidState() // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index a2a04f8ca..aabc54336 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,43 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb { public static class TypeConversion { - // BEGIN MANUAL EDIT - public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) - { - if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) - { - return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); - } - throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); - } - public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) - { - if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) - { - return nativeValue.impl(); - } - throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); - } - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) - { - if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; - return new LegacyDynamoDbEncryptor(value); + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - } - public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) - { - switch (value) - { - case LegacyDynamoDbEncryptor valueWithImpl: - return valueWithImpl._impl; - case LegacyDynamoDbEncryptorBase nativeImpl: - return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); - default: - throw new System.ArgumentException( - "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); - } - } - // END MANUAL EDIT public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; @@ -958,6 +925,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -982,6 +954,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) @@ -1154,6 +1130,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1324,6 +1308,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 36226d34f..6aef75f56 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; @@ -5774,6 +5778,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -5798,6 +5807,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) @@ -5933,6 +5946,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); @@ -6039,6 +6060,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs index c5b0bedd1..da904fc30 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs index 4e9890cfe..d0a4e585a 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) { if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch deleted file mode 100644 index 89aec37d6..000000000 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 009ce943..d517f861 100644 ---- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -+++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -918,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -947,10 +942,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) -@@ -1123,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1301,18 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index d517f861e..009ce943e 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -918,6 +918,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -942,6 +947,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) @@ -1114,6 +1123,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1284,6 +1301,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); From 5f01a6e132fe52831d9e04650279212b33950db9 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 10:20:00 -0700 Subject: [PATCH 45/66] m --- .../dotnet/dafny-4.2.0.patch | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch new file mode 100644 index 000000000..e777b5f4a --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.2.0.patch @@ -0,0 +1,48 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +index 9a951767..5c0cee33 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +@@ -7,6 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + public static class TypeConversion + { ++ // BEGIN MANUAL EDIT ++ public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) ++ { ++ if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) ++ { ++ return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); ++ } ++ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); ++ } ++ public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) ++ { ++ if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) ++ { ++ return nativeValue.impl(); ++ } ++ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); ++ } ++ public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) ++ { ++ if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; ++ return new LegacyDynamoDbEncryptor(value); ++ ++ } ++ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) ++ { ++ switch (value) ++ { ++ case LegacyDynamoDbEncryptor valueWithImpl: ++ return valueWithImpl._impl; ++ case LegacyDynamoDbEncryptorBase nativeImpl: ++ return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); ++ default: ++ throw new System.ArgumentException( ++ "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); ++ } ++ } ++ // END MANUAL EDIT + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; From ebe03ae70a8043d15b4c0ed2795cc123a3075ae9 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 10:23:55 -0700 Subject: [PATCH 46/66] m --- .../dotnet/dafny-4.8.0.patch | 51 +++++++++++++++++++ .../dotnet/dafny-4.8.0.patch | 15 ++++++ .../dotnet/dafny-4.8.0.patch | 15 ++++++ .../dotnet/dafny-4.8.0.patch | 15 ++++++ 4 files changed, 96 insertions(+) create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch create mode 100644 DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..4f80638b8 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,51 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +index 9601968..a2a04f8 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +@@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; ++ // BEGIN MANUAL EDIT ++ public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) ++ { ++ if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) ++ { ++ return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); ++ } ++ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); ++ } ++ public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) ++ { ++ if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) ++ { ++ return nativeValue.impl(); ++ } ++ throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); ++ } ++ public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) ++ { ++ if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; ++ return new LegacyDynamoDbEncryptor(value); + ++ } ++ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) ++ { ++ switch (value) ++ { ++ case LegacyDynamoDbEncryptor valueWithImpl: ++ return valueWithImpl._impl; ++ case LegacyDynamoDbEncryptorBase nativeImpl: ++ return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); ++ default: ++ throw new System.ArgumentException( ++ "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); ++ } ++ } ++ // END MANUAL EDIT + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..e4f743fff --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch @@ -0,0 +1,15 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +index 2f95341..36226d3 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; +- + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..5631d0784 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch @@ -0,0 +1,15 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +index da904fc..c5b0bed 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; +- + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..4f5051d38 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,15 @@ +diff --git b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +index d0a4e58..4e9890c 100644 +--- b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs ++++ a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +@@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption + { + public static class TypeConversion + { +- private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; +- +- private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; +- + public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) + { + if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; From dadb50be8598107a0ecdf6719838416019d8d591 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 10:51:28 -0700 Subject: [PATCH 47/66] m --- .../DynamoDbEncryption/TypeConversion.cs | 39 +++++++++++++++++-- .../TypeConversion.cs | 4 -- .../DynamoDbItemEncryptor/TypeConversion.cs | 4 -- .../StructuredEncryption/TypeConversion.cs | 4 -- 4 files changed, 36 insertions(+), 15 deletions(-) diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index aabc54336..0044c6b7c 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + // BEGIN MANUAL EDIT + public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) + { + if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) + { + return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); + } + throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); + } + public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) + { + if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) + { + return nativeValue.impl(); + } + throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); + } + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) + { + if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; + return new LegacyDynamoDbEncryptor(value); + } + public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) + { + switch (value) + { + case LegacyDynamoDbEncryptor valueWithImpl: + return valueWithImpl._impl; + case LegacyDynamoDbEncryptorBase nativeImpl: + return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); + default: + throw new System.ArgumentException( + "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); + } + } + // END MANUAL EDIT public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 6aef75f56..69852084b 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs index da904fc30..c5b0bedd1 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs index d0a4e585a..4e9890cfe 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) { if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; From 44b0666299ee3d9f3f651fb928c7473e202eb88f Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 11:03:50 -0700 Subject: [PATCH 48/66] m --- .../codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch | 2 +- .../DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch | 2 +- .../DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch | 2 +- .../StructuredEncryption/dotnet/dafny-4.8.0.patch | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch index 4f80638b8..d2ad2bdb3 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -index 9601968..a2a04f8 100644 +index aabc5433..0044c6b7 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch index e4f743fff..2f121d0c1 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -index 2f95341..36226d3 100644 +index 6aef75f5..69852084 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch index 5631d0784..220d3cf3e 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs -index da904fc..c5b0bed 100644 +index da904fc3..c5b0bedd 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor diff --git a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch index 4f5051d38..a872a9264 100644 --- a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs -index d0a4e58..4e9890c 100644 +index d0a4e585..4e9890cf 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption From bd47477baf6b2e3aa4e00ca13414c9f77c41fe6e Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 11:06:22 -0700 Subject: [PATCH 49/66] use passing one --- .../dotnet/dafny-4.8.0.patch | 59 ++++++- .../dafny/dafny-4.8.0.patch | 145 ++++++++++++++++++ .../dotnet/dafny-4.8.0.patch | 59 ++++++- ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 124 ++++++--------- .../DynamoDbEncryption/TypeConversion.cs | 29 ---- .../TypeConversion.cs | 29 ---- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 61 ++++++++ .../Generated/DDBEncryption/TypeConversion.cs | 29 ---- 8 files changed, 368 insertions(+), 167 deletions(-) create mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch create mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch index d2ad2bdb3..95d162fec 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -index aabc5433..0044c6b7 100644 +index aabc5433..a2a04f8c 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb @@ -49,3 +49,60 @@ index aabc5433..0044c6b7 100644 public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; +@@ -925,11 +958,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -954,10 +982,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) +@@ -1130,14 +1154,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1308,18 +1324,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch new file mode 100644 index 000000000..b6ddf55b9 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch @@ -0,0 +1,145 @@ +diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +index 9a8ed7f4..1ffa8b55 100644 +--- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy ++++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +@@ -759,94 +759,62 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService + var tmps4 := set t4 | t4 in tmp3.search.value.versions; + forall tmp4 :: tmp4 in tmps4 ==> + tmp4.keyStore.ValidState() +- requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; +- forall tmp5 :: tmp5 in tmps5 ==> +- tmp5.search.Some? ==> +- var tmps6 := set t6 | t6 in tmp5.search.value.versions; +- forall tmp6 :: tmp6 in tmps6 ==> +- tmp6.keySource.multi? ==> +- tmp6.keySource.multi.cache.Some? ==> +- tmp6.keySource.multi.cache.value.Shared? ==> +- tmp6.keySource.multi.cache.value.Shared.ValidState() ++ modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true ++ && t5.keyring.Some? ++ :: t5.keyring.value, ++ obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj ++ modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true ++ && t6.cmm.Some? ++ :: t6.cmm.value, ++ obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj + modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true +- && t7.keyring.Some? +- :: t7.keyring.value, ++ && t7.legacyOverride.Some? ++ :: t7.legacyOverride.value.encryptor, + obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj + modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true +- && t8.cmm.Some? +- :: t8.cmm.value, ++ && t8.search.Some? ++ , t9 <- t8.search.value.versions :: t9.keyStore, + obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj +- modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true +- && t9.legacyOverride.Some? +- :: t9.legacyOverride.value.encryptor, +- obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj +- modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true +- && t10.search.Some? +- , t11 <- t10.search.value.versions :: t11.keyStore, +- obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj +- modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true +- && t12.search.Some? +- , t13 <- t12.search.value.versions && t13.keySource.multi? +- && t13.keySource.multi.cache.Some? +- && t13.keySource.multi.cache.value.Shared? +- :: t13.keySource.multi.cache.value.Shared, +- obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj + ensures res.Success? ==> + && fresh(res.value) + && fresh(res.value.Modifies +- - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true +- && t14.keyring.Some? +- :: t14.keyring.value, +- obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj +- ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true +- && t15.cmm.Some? +- :: t15.cmm.value, +- obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj +- ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true +- && t16.legacyOverride.Some? +- :: t16.legacyOverride.value.encryptor, +- obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj +- ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true +- && t17.search.Some? +- , t18 <- t17.search.value.versions :: t18.keyStore, +- obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj +- ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true +- && t19.search.Some? +- , t20 <- t19.search.value.versions && t20.keySource.multi? +- && t20.keySource.multi.cache.Some? +- && t20.keySource.multi.cache.value.Shared? +- :: t20.keySource.multi.cache.value.Shared, +- obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj ++ - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true ++ && t10.keyring.Some? ++ :: t10.keyring.value, ++ obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj ++ ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true ++ && t11.cmm.Some? ++ :: t11.cmm.value, ++ obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj ++ ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true ++ && t12.legacyOverride.Some? ++ :: t12.legacyOverride.value.encryptor, ++ obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ++ ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true ++ && t13.search.Some? ++ , t14 <- t13.search.value.versions :: t14.keyStore, ++ obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj + ) ) + && fresh(res.value.History) + && res.value.ValidState() +- ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; +- forall tmp21 :: tmp21 in tmps21 ==> +- tmp21.keyring.Some? ==> +- tmp21.keyring.value.ValidState() +- ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; +- forall tmp22 :: tmp22 in tmps22 ==> +- tmp22.cmm.Some? ==> +- tmp22.cmm.value.ValidState() +- ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; +- forall tmp23 :: tmp23 in tmps23 ==> +- tmp23.legacyOverride.Some? ==> +- tmp23.legacyOverride.value.encryptor.ValidState() +- ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; +- forall tmp24 :: tmp24 in tmps24 ==> +- tmp24.search.Some? ==> +- var tmps25 := set t25 | t25 in tmp24.search.value.versions; +- forall tmp25 :: tmp25 in tmps25 ==> +- tmp25.keyStore.ValidState() +- ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; +- forall tmp26 :: tmp26 in tmps26 ==> +- tmp26.search.Some? ==> +- var tmps27 := set t27 | t27 in tmp26.search.value.versions; +- forall tmp27 :: tmp27 in tmps27 ==> +- tmp27.keySource.multi? ==> +- tmp27.keySource.multi.cache.Some? ==> +- tmp27.keySource.multi.cache.value.Shared? ==> +- tmp27.keySource.multi.cache.value.Shared.ValidState() ++ ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; ++ forall tmp15 :: tmp15 in tmps15 ==> ++ tmp15.keyring.Some? ==> ++ tmp15.keyring.value.ValidState() ++ ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; ++ forall tmp16 :: tmp16 in tmps16 ==> ++ tmp16.cmm.Some? ==> ++ tmp16.cmm.value.ValidState() ++ ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; ++ forall tmp17 :: tmp17 in tmps17 ==> ++ tmp17.legacyOverride.Some? ==> ++ tmp17.legacyOverride.value.encryptor.ValidState() ++ ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; ++ forall tmp18 :: tmp18 in tmps18 ==> ++ tmp18.search.Some? ==> ++ var tmps19 := set t19 | t19 in tmp18.search.value.versions; ++ forall tmp19 :: tmp19 in tmps19 ==> ++ tmp19.keyStore.ValidState() + + // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals + function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch index 2f121d0c1..97b2f6a95 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -index 6aef75f5..69852084 100644 +index 6aef75f5..36226d34 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms @@ -13,3 +13,60 @@ index 6aef75f5..69852084 100644 public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; +@@ -5778,11 +5774,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -5807,10 +5798,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) +@@ -5946,14 +5933,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) + { + return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); +@@ -6060,18 +6039,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) + { + software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 9a8ed7f49..1ffa8b553 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -759,94 +759,62 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService var tmps4 := set t4 | t4 in tmp3.search.value.versions; forall tmp4 :: tmp4 in tmps4 ==> tmp4.keyStore.ValidState() - requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; - forall tmp5 :: tmp5 in tmps5 ==> - tmp5.search.Some? ==> - var tmps6 := set t6 | t6 in tmp5.search.value.versions; - forall tmp6 :: tmp6 in tmps6 ==> - tmp6.keySource.multi? ==> - tmp6.keySource.multi.cache.Some? ==> - tmp6.keySource.multi.cache.value.Shared? ==> - tmp6.keySource.multi.cache.value.Shared.ValidState() + modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true + && t5.keyring.Some? + :: t5.keyring.value, + obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj + modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true + && t6.cmm.Some? + :: t6.cmm.value, + obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true - && t7.keyring.Some? - :: t7.keyring.value, + && t7.legacyOverride.Some? + :: t7.legacyOverride.value.encryptor, obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true - && t8.cmm.Some? - :: t8.cmm.value, + && t8.search.Some? + , t9 <- t8.search.value.versions :: t9.keyStore, obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj - modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true - && t9.legacyOverride.Some? - :: t9.legacyOverride.value.encryptor, - obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj - modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true - && t10.search.Some? - , t11 <- t10.search.value.versions :: t11.keyStore, - obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj - modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true - && t12.search.Some? - , t13 <- t12.search.value.versions && t13.keySource.multi? - && t13.keySource.multi.cache.Some? - && t13.keySource.multi.cache.value.Shared? - :: t13.keySource.multi.cache.value.Shared, - obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ensures res.Success? ==> && fresh(res.value) && fresh(res.value.Modifies - - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true - && t14.keyring.Some? - :: t14.keyring.value, - obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj - ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true - && t15.cmm.Some? - :: t15.cmm.value, - obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj - ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true - && t16.legacyOverride.Some? - :: t16.legacyOverride.value.encryptor, - obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj - ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true - && t17.search.Some? - , t18 <- t17.search.value.versions :: t18.keyStore, - obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj - ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true - && t19.search.Some? - , t20 <- t19.search.value.versions && t20.keySource.multi? - && t20.keySource.multi.cache.Some? - && t20.keySource.multi.cache.value.Shared? - :: t20.keySource.multi.cache.value.Shared, - obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj + - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true + && t10.keyring.Some? + :: t10.keyring.value, + obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj + ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true + && t11.cmm.Some? + :: t11.cmm.value, + obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj + ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true + && t12.legacyOverride.Some? + :: t12.legacyOverride.value.encryptor, + obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj + ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true + && t13.search.Some? + , t14 <- t13.search.value.versions :: t14.keyStore, + obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj ) ) && fresh(res.value.History) && res.value.ValidState() - ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; - forall tmp21 :: tmp21 in tmps21 ==> - tmp21.keyring.Some? ==> - tmp21.keyring.value.ValidState() - ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; - forall tmp22 :: tmp22 in tmps22 ==> - tmp22.cmm.Some? ==> - tmp22.cmm.value.ValidState() - ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; - forall tmp23 :: tmp23 in tmps23 ==> - tmp23.legacyOverride.Some? ==> - tmp23.legacyOverride.value.encryptor.ValidState() - ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; - forall tmp24 :: tmp24 in tmps24 ==> - tmp24.search.Some? ==> - var tmps25 := set t25 | t25 in tmp24.search.value.versions; - forall tmp25 :: tmp25 in tmps25 ==> - tmp25.keyStore.ValidState() - ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; - forall tmp26 :: tmp26 in tmps26 ==> - tmp26.search.Some? ==> - var tmps27 := set t27 | t27 in tmp26.search.value.versions; - forall tmp27 :: tmp27 in tmps27 ==> - tmp27.keySource.multi? ==> - tmp27.keySource.multi.cache.Some? ==> - tmp27.keySource.multi.cache.value.Shared? ==> - tmp27.keySource.multi.cache.value.Shared.ValidState() + ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; + forall tmp15 :: tmp15 in tmps15 ==> + tmp15.keyring.Some? ==> + tmp15.keyring.value.ValidState() + ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; + forall tmp16 :: tmp16 in tmps16 ==> + tmp16.cmm.Some? ==> + tmp16.cmm.value.ValidState() + ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; + forall tmp17 :: tmp17 in tmps17 ==> + tmp17.legacyOverride.Some? ==> + tmp17.legacyOverride.value.encryptor.ValidState() + ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; + forall tmp18 :: tmp18 in tmps18 ==> + tmp18.search.Some? ==> + var tmps19 := set t19 | t19 in tmp18.search.value.versions; + forall tmp19 :: tmp19 in tmps19 ==> + tmp19.keyStore.ValidState() // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index 0044c6b7c..a2a04f8ca 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -958,11 +958,6 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } - if (value.is_Shared) - { - converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); - return converted; - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -987,10 +982,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } - if (value.IsSetShared()) - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) @@ -1163,14 +1154,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1341,18 +1324,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 69852084b..36226d34f 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -5774,11 +5774,6 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } - if (value.is_Shared) - { - converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); - return converted; - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -5803,10 +5798,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } - if (value.IsSetShared()) - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) @@ -5942,14 +5933,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); @@ -6056,18 +6039,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch new file mode 100644 index 000000000..89aec37d6 --- /dev/null +++ b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch @@ -0,0 +1,61 @@ +diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +index 009ce943..d517f861 100644 +--- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs ++++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +@@ -918,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); + return converted; + } +- if (value.is_Shared) +- { +- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); +- return converted; +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) +@@ -947,10 +942,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); + } +- if (value.IsSetShared()) +- { +- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); +- } + throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); + } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) +@@ -1123,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) + { + return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); +@@ -1301,18 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped + int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; + return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); + } +- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } +- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) +- { +- // This is converting a reference type in a dependant module. +- // Therefore it defers to the dependant module for conversion +- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); +- } + public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) + { + return new string(value.Elements); diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index 009ce943e..d517f861e 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -918,11 +918,6 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } - if (value.is_Shared) - { - converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); - return converted; - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -947,10 +942,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } - if (value.IsSetShared()) - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); - } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) @@ -1123,14 +1114,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1301,18 +1284,6 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } - public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) - { - // This is converting a reference type in a dependant module. - // Therefore it defers to the dependant module for conversion - return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); - } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); From 241d9a973d20af9dc346b8f388af3543e37efc14 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 11:14:57 -0700 Subject: [PATCH 50/66] m --- .../dotnet/dafny-4.8.0.patch | 59 +------ .../dafny/dafny-4.8.0.patch | 145 ------------------ .../dotnet/dafny-4.8.0.patch | 59 +------ .../dotnet/dafny-4.8.0.patch | 2 +- .../dotnet/dafny-4.8.0.patch | 2 +- ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 124 +++++++++------ .../DynamoDbEncryption/TypeConversion.cs | 68 ++++---- .../TypeConversion.cs | 33 ++++ .../DynamoDbItemEncryptor/TypeConversion.cs | 4 + .../StructuredEncryption/TypeConversion.cs | 4 + 10 files changed, 155 insertions(+), 345 deletions(-) delete mode 100644 DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch index 95d162fec..4f80638b8 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs -index aabc5433..a2a04f8c 100644 +index 9601968..a2a04f8 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb @@ -49,60 +49,3 @@ index aabc5433..a2a04f8c 100644 public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; -@@ -925,11 +958,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -954,10 +982,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) -@@ -1130,14 +1154,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1308,18 +1324,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch deleted file mode 100644 index b6ddf55b9..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch +++ /dev/null @@ -1,145 +0,0 @@ -diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -index 9a8ed7f4..1ffa8b55 100644 ---- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -+++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -@@ -759,94 +759,62 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService - var tmps4 := set t4 | t4 in tmp3.search.value.versions; - forall tmp4 :: tmp4 in tmps4 ==> - tmp4.keyStore.ValidState() -- requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; -- forall tmp5 :: tmp5 in tmps5 ==> -- tmp5.search.Some? ==> -- var tmps6 := set t6 | t6 in tmp5.search.value.versions; -- forall tmp6 :: tmp6 in tmps6 ==> -- tmp6.keySource.multi? ==> -- tmp6.keySource.multi.cache.Some? ==> -- tmp6.keySource.multi.cache.value.Shared? ==> -- tmp6.keySource.multi.cache.value.Shared.ValidState() -+ modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true -+ && t5.keyring.Some? -+ :: t5.keyring.value, -+ obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj -+ modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true -+ && t6.cmm.Some? -+ :: t6.cmm.value, -+ obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj - modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true -- && t7.keyring.Some? -- :: t7.keyring.value, -+ && t7.legacyOverride.Some? -+ :: t7.legacyOverride.value.encryptor, - obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj - modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true -- && t8.cmm.Some? -- :: t8.cmm.value, -+ && t8.search.Some? -+ , t9 <- t8.search.value.versions :: t9.keyStore, - obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj -- modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true -- && t9.legacyOverride.Some? -- :: t9.legacyOverride.value.encryptor, -- obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj -- modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true -- && t10.search.Some? -- , t11 <- t10.search.value.versions :: t11.keyStore, -- obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj -- modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true -- && t12.search.Some? -- , t13 <- t12.search.value.versions && t13.keySource.multi? -- && t13.keySource.multi.cache.Some? -- && t13.keySource.multi.cache.value.Shared? -- :: t13.keySource.multi.cache.value.Shared, -- obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj - ensures res.Success? ==> - && fresh(res.value) - && fresh(res.value.Modifies -- - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true -- && t14.keyring.Some? -- :: t14.keyring.value, -- obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj -- ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true -- && t15.cmm.Some? -- :: t15.cmm.value, -- obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj -- ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true -- && t16.legacyOverride.Some? -- :: t16.legacyOverride.value.encryptor, -- obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj -- ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true -- && t17.search.Some? -- , t18 <- t17.search.value.versions :: t18.keyStore, -- obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj -- ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true -- && t19.search.Some? -- , t20 <- t19.search.value.versions && t20.keySource.multi? -- && t20.keySource.multi.cache.Some? -- && t20.keySource.multi.cache.value.Shared? -- :: t20.keySource.multi.cache.value.Shared, -- obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj -+ - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true -+ && t10.keyring.Some? -+ :: t10.keyring.value, -+ obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj -+ ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true -+ && t11.cmm.Some? -+ :: t11.cmm.value, -+ obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj -+ ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true -+ && t12.legacyOverride.Some? -+ :: t12.legacyOverride.value.encryptor, -+ obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj -+ ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true -+ && t13.search.Some? -+ , t14 <- t13.search.value.versions :: t14.keyStore, -+ obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj - ) ) - && fresh(res.value.History) - && res.value.ValidState() -- ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; -- forall tmp21 :: tmp21 in tmps21 ==> -- tmp21.keyring.Some? ==> -- tmp21.keyring.value.ValidState() -- ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; -- forall tmp22 :: tmp22 in tmps22 ==> -- tmp22.cmm.Some? ==> -- tmp22.cmm.value.ValidState() -- ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; -- forall tmp23 :: tmp23 in tmps23 ==> -- tmp23.legacyOverride.Some? ==> -- tmp23.legacyOverride.value.encryptor.ValidState() -- ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; -- forall tmp24 :: tmp24 in tmps24 ==> -- tmp24.search.Some? ==> -- var tmps25 := set t25 | t25 in tmp24.search.value.versions; -- forall tmp25 :: tmp25 in tmps25 ==> -- tmp25.keyStore.ValidState() -- ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; -- forall tmp26 :: tmp26 in tmps26 ==> -- tmp26.search.Some? ==> -- var tmps27 := set t27 | t27 in tmp26.search.value.versions; -- forall tmp27 :: tmp27 in tmps27 ==> -- tmp27.keySource.multi? ==> -- tmp27.keySource.multi.cache.Some? ==> -- tmp27.keySource.multi.cache.value.Shared? ==> -- tmp27.keySource.multi.cache.value.Shared.ValidState() -+ ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; -+ forall tmp15 :: tmp15 in tmps15 ==> -+ tmp15.keyring.Some? ==> -+ tmp15.keyring.value.ValidState() -+ ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; -+ forall tmp16 :: tmp16 in tmps16 ==> -+ tmp16.cmm.Some? ==> -+ tmp16.cmm.value.ValidState() -+ ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; -+ forall tmp17 :: tmp17 in tmps17 ==> -+ tmp17.legacyOverride.Some? ==> -+ tmp17.legacyOverride.value.encryptor.ValidState() -+ ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; -+ forall tmp18 :: tmp18 in tmps18 ==> -+ tmp18.search.Some? ==> -+ var tmps19 := set t19 | t19 in tmp18.search.value.versions; -+ forall tmp19 :: tmp19 in tmps19 ==> -+ tmp19.keyStore.ValidState() - - // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals - function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch index 97b2f6a95..e4f743fff 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs -index 6aef75f5..36226d34 100644 +index 2f95341..36226d3 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms @@ -13,60 +13,3 @@ index 6aef75f5..36226d34 100644 public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; -@@ -5778,11 +5774,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -5807,10 +5798,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) -@@ -5946,14 +5933,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) - { - return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); -@@ -6060,18 +6039,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) - { - software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch index 220d3cf3e..5631d0784 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbItemEncryptor/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs -index da904fc3..c5b0bedd 100644 +index da904fc..c5b0bed 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor diff --git a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch index a872a9264..4f5051d38 100644 --- a/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/StructuredEncryption/dotnet/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs -index d0a4e585..4e9890cf 100644 +index d0a4e58..4e9890c 100644 --- b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 1ffa8b553..9a8ed7f49 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -759,62 +759,94 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService var tmps4 := set t4 | t4 in tmp3.search.value.versions; forall tmp4 :: tmp4 in tmps4 ==> tmp4.keyStore.ValidState() - modifies set tmps5 <- set t5 <- config.tableEncryptionConfigs.Values | true - && t5.keyring.Some? - :: t5.keyring.value, - obj <- tmps5.Modifies | obj in tmps5.Modifies :: obj - modifies set tmps6 <- set t6 <- config.tableEncryptionConfigs.Values | true - && t6.cmm.Some? - :: t6.cmm.value, - obj <- tmps6.Modifies | obj in tmps6.Modifies :: obj + requires var tmps5 := set t5 | t5 in config.tableEncryptionConfigs.Values; + forall tmp5 :: tmp5 in tmps5 ==> + tmp5.search.Some? ==> + var tmps6 := set t6 | t6 in tmp5.search.value.versions; + forall tmp6 :: tmp6 in tmps6 ==> + tmp6.keySource.multi? ==> + tmp6.keySource.multi.cache.Some? ==> + tmp6.keySource.multi.cache.value.Shared? ==> + tmp6.keySource.multi.cache.value.Shared.ValidState() modifies set tmps7 <- set t7 <- config.tableEncryptionConfigs.Values | true - && t7.legacyOverride.Some? - :: t7.legacyOverride.value.encryptor, + && t7.keyring.Some? + :: t7.keyring.value, obj <- tmps7.Modifies | obj in tmps7.Modifies :: obj modifies set tmps8 <- set t8 <- config.tableEncryptionConfigs.Values | true - && t8.search.Some? - , t9 <- t8.search.value.versions :: t9.keyStore, + && t8.cmm.Some? + :: t8.cmm.value, obj <- tmps8.Modifies | obj in tmps8.Modifies :: obj + modifies set tmps9 <- set t9 <- config.tableEncryptionConfigs.Values | true + && t9.legacyOverride.Some? + :: t9.legacyOverride.value.encryptor, + obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj + modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true + && t10.search.Some? + , t11 <- t10.search.value.versions :: t11.keyStore, + obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj + modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true + && t12.search.Some? + , t13 <- t12.search.value.versions && t13.keySource.multi? + && t13.keySource.multi.cache.Some? + && t13.keySource.multi.cache.value.Shared? + :: t13.keySource.multi.cache.value.Shared, + obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ensures res.Success? ==> && fresh(res.value) && fresh(res.value.Modifies - - ( set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true - && t10.keyring.Some? - :: t10.keyring.value, - obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj - ) - ( set tmps11 <- set t11 <- config.tableEncryptionConfigs.Values | true - && t11.cmm.Some? - :: t11.cmm.value, - obj <- tmps11.Modifies | obj in tmps11.Modifies :: obj - ) - ( set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true - && t12.legacyOverride.Some? - :: t12.legacyOverride.value.encryptor, - obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj - ) - ( set tmps13 <- set t13 <- config.tableEncryptionConfigs.Values | true - && t13.search.Some? - , t14 <- t13.search.value.versions :: t14.keyStore, - obj <- tmps13.Modifies | obj in tmps13.Modifies :: obj + - ( set tmps14 <- set t14 <- config.tableEncryptionConfigs.Values | true + && t14.keyring.Some? + :: t14.keyring.value, + obj <- tmps14.Modifies | obj in tmps14.Modifies :: obj + ) - ( set tmps15 <- set t15 <- config.tableEncryptionConfigs.Values | true + && t15.cmm.Some? + :: t15.cmm.value, + obj <- tmps15.Modifies | obj in tmps15.Modifies :: obj + ) - ( set tmps16 <- set t16 <- config.tableEncryptionConfigs.Values | true + && t16.legacyOverride.Some? + :: t16.legacyOverride.value.encryptor, + obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj + ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true + && t17.search.Some? + , t18 <- t17.search.value.versions :: t18.keyStore, + obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj + ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true + && t19.search.Some? + , t20 <- t19.search.value.versions && t20.keySource.multi? + && t20.keySource.multi.cache.Some? + && t20.keySource.multi.cache.value.Shared? + :: t20.keySource.multi.cache.value.Shared, + obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj ) ) && fresh(res.value.History) && res.value.ValidState() - ensures var tmps15 := set t15 | t15 in config.tableEncryptionConfigs.Values; - forall tmp15 :: tmp15 in tmps15 ==> - tmp15.keyring.Some? ==> - tmp15.keyring.value.ValidState() - ensures var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values; - forall tmp16 :: tmp16 in tmps16 ==> - tmp16.cmm.Some? ==> - tmp16.cmm.value.ValidState() - ensures var tmps17 := set t17 | t17 in config.tableEncryptionConfigs.Values; - forall tmp17 :: tmp17 in tmps17 ==> - tmp17.legacyOverride.Some? ==> - tmp17.legacyOverride.value.encryptor.ValidState() - ensures var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values; - forall tmp18 :: tmp18 in tmps18 ==> - tmp18.search.Some? ==> - var tmps19 := set t19 | t19 in tmp18.search.value.versions; - forall tmp19 :: tmp19 in tmps19 ==> - tmp19.keyStore.ValidState() + ensures var tmps21 := set t21 | t21 in config.tableEncryptionConfigs.Values; + forall tmp21 :: tmp21 in tmps21 ==> + tmp21.keyring.Some? ==> + tmp21.keyring.value.ValidState() + ensures var tmps22 := set t22 | t22 in config.tableEncryptionConfigs.Values; + forall tmp22 :: tmp22 in tmps22 ==> + tmp22.cmm.Some? ==> + tmp22.cmm.value.ValidState() + ensures var tmps23 := set t23 | t23 in config.tableEncryptionConfigs.Values; + forall tmp23 :: tmp23 in tmps23 ==> + tmp23.legacyOverride.Some? ==> + tmp23.legacyOverride.value.encryptor.ValidState() + ensures var tmps24 := set t24 | t24 in config.tableEncryptionConfigs.Values; + forall tmp24 :: tmp24 in tmps24 ==> + tmp24.search.Some? ==> + var tmps25 := set t25 | t25 in tmp24.search.value.versions; + forall tmp25 :: tmp25 in tmps25 ==> + tmp25.keyStore.ValidState() + ensures var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; + forall tmp26 :: tmp26 in tmps26 ==> + tmp26.search.Some? ==> + var tmps27 := set t27 | t27 in tmp26.search.value.versions; + forall tmp27 :: tmp27 in tmps27 ==> + tmp27.keySource.multi? ==> + tmp27.keySource.multi.cache.Some? ==> + tmp27.keySource.multi.cache.value.Shared? ==> + tmp27.keySource.multi.cache.value.Shared.ValidState() // Helper functions for the benefit of native code to create a Success(client) without referring to Dafny internals function method CreateSuccessOfClient(client: IDynamoDbEncryptionTransformsClient): Result { diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index a2a04f8ca..aabc54336 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,43 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb { public static class TypeConversion { - // BEGIN MANUAL EDIT - public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) - { - if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) - { - return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); - } - throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); - } - public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) - { - if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) - { - return nativeValue.impl(); - } - throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); - } - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) - { - if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; - return new LegacyDynamoDbEncryptor(value); + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - } - public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) - { - switch (value) - { - case LegacyDynamoDbEncryptor valueWithImpl: - return valueWithImpl._impl; - case LegacyDynamoDbEncryptorBase nativeImpl: - return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); - default: - throw new System.ArgumentException( - "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); - } - } - // END MANUAL EDIT public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; @@ -958,6 +925,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -982,6 +954,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) @@ -1154,6 +1130,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1324,6 +1308,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 36226d34f..6aef75f56 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; @@ -5774,6 +5778,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -5798,6 +5807,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static int FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconBitLength(int value) @@ -5933,6 +5946,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S11_BeaconStyle__M8_partOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) { return FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(value); @@ -6039,6 +6060,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S8_PartOnly(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IPartOnly value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.PartOnly)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.PartOnly(); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs index c5b0bedd1..da904fc30 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs index 4e9890cfe..d0a4e585a 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,6 +7,10 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption { public static class TypeConversion { + private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; + + private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) { if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; From 9fd74113f94ce101ed3874b7ffbc1bea071f3ed3 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 13:03:11 -0700 Subject: [PATCH 51/66] fix --- ...phyDbEncryptionSdkDynamoDbTransformsTypes.dfy | 16 ++++++++-------- submodules/smithy-dafny | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 9a8ed7f49..c2e87648b 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -782,13 +782,13 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true && t10.search.Some? - , t11 <- t10.search.value.versions :: t11.keyStore, + , t11 <- t10.search.value.versions | true :: t11.keyStore, obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true && t12.search.Some? - , t13 <- t12.search.value.versions && t13.keySource.multi? - && t13.keySource.multi.cache.Some? - && t13.keySource.multi.cache.value.Shared? + , t13 <- t12.search.value.versions | true && t13.keySource.multi? + && t13.keySource.multi.cache.Some? + && t13.keySource.multi.cache.value.Shared? :: t13.keySource.multi.cache.value.Shared, obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ensures res.Success? ==> @@ -808,13 +808,13 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true && t17.search.Some? - , t18 <- t17.search.value.versions :: t18.keyStore, + , t18 <- t17.search.value.versions | true :: t18.keyStore, obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true && t19.search.Some? - , t20 <- t19.search.value.versions && t20.keySource.multi? - && t20.keySource.multi.cache.Some? - && t20.keySource.multi.cache.value.Shared? + , t20 <- t19.search.value.versions | true && t20.keySource.multi? + && t20.keySource.multi.cache.Some? + && t20.keySource.multi.cache.value.Shared? :: t20.keySource.multi.cache.value.Shared, obj <- tmps19.Modifies | obj in tmps19.Modifies :: obj ) ) diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 98939e130..9a950a279 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 98939e130695095386059967509a19299dfac320 +Subproject commit 9a950a279b143ffa24933364d7b61f0bc54fc067 From 1d6ac496882900fd865061a65b5b6edf23bc4109 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 13:10:04 -0700 Subject: [PATCH 52/66] m --- .../DynamoDbEncryption/TypeConversion.cs | 39 +++++++++++++++++-- .../TypeConversion.cs | 4 -- .../DynamoDbItemEncryptor/TypeConversion.cs | 4 -- .../StructuredEncryption/TypeConversion.cs | 4 -- 4 files changed, 36 insertions(+), 15 deletions(-) diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index aabc54336..0044c6b7c 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -7,10 +7,43 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; + // BEGIN MANUAL EDIT + public static AWS.Cryptography.KeyStore.KeyStore FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient value) + { + if (value is software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient dafnyValue) + { + return new AWS.Cryptography.KeyStore.KeyStore(dafnyValue); + } + throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); + } + public static software.amazon.cryptography.keystore.internaldafny.types.IKeyStoreClient ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S17_KeyStoreReference(AWS.Cryptography.KeyStore.KeyStore value) + { + if (value is AWS.Cryptography.KeyStore.KeyStore nativeValue) + { + return nativeValue.impl(); + } + throw new System.ArgumentException("Custom implementations of AWS.Cryptography.KeyStore.KeyStore are not supported yet"); + } + public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor value) + { + if (value is NativeWrapper_LegacyDynamoDbEncryptor nativeWrapper) return nativeWrapper._impl; + return new LegacyDynamoDbEncryptor(value); + } + public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.ILegacyDynamoDbEncryptor ToDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S32_LegacyDynamoDbEncryptorReference(AWS.Cryptography.DbEncryptionSDK.DynamoDb.ILegacyDynamoDbEncryptor value) + { + switch (value) + { + case LegacyDynamoDbEncryptor valueWithImpl: + return valueWithImpl._impl; + case LegacyDynamoDbEncryptorBase nativeImpl: + return new NativeWrapper_LegacyDynamoDbEncryptor(nativeImpl); + default: + throw new System.ArgumentException( + "Custom implementations of LegacyDynamoDbEncryptor must extend LegacyDynamoDbEncryptorBase."); + } + } + // END MANUAL EDIT public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.BeaconKeySource FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S15_BeaconKeySource(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IBeaconKeySource value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.BeaconKeySource)value; diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 6aef75f56..69852084b 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Transforms { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig(software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types._IDynamoDbTablesEncryptionConfig value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.DynamoDbTablesEncryptionConfig)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.DynamoDbTablesEncryptionConfig(); converted.TableEncryptionConfigs = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__S30_DynamoDbTablesEncryptionConfig__M22_tableEncryptionConfigs(concrete._tableEncryptionConfigs); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs index da904fc30..c5b0bedd1 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - public static AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput(software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types._IDecryptItemInput value) { software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput concrete = (software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.DecryptItemInput)value; AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput converted = new AWS.Cryptography.DbEncryptionSDK.DynamoDb.ItemEncryptor.DecryptItemInput(); converted.EncryptedItem = (System.Collections.Generic.Dictionary)FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N8_dynamoDb__N13_itemEncryptor__S16_DecryptItemInput__M13_encryptedItem(concrete._encryptedItem); return converted; diff --git a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs index d0a4e585a..4e9890cfe 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -7,10 +7,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.StructuredEncryption { public static class TypeConversion { - private const string ISO8601DateFormat = "yyyy-MM-dd\\THH:mm:ss.fff\\Z"; - - private const string ISO8601DateFormatNoMS = "yyyy-MM-dd\\THH:mm:ss\\Z"; - public static AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction FromDafny_N3_aws__N12_cryptography__N15_dbEncryptionSdk__N20_structuredEncryption__S18_AuthenticateAction(software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types._IAuthenticateAction value) { if (value.is_SIGN) return AWS.Cryptography.DbEncryptionSDK.StructuredEncryption.AuthenticateAction.SIGN; From c3d0cc88fff0cc696281e8a1c36ae7d10afdf78a Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 13:11:21 -0700 Subject: [PATCH 53/66] m --- .../DDBEncryption/dotnet/dafny-4.8.0.patch | 61 ------------------- .../Generated/DDBEncryption/TypeConversion.cs | 29 +++++++++ 2 files changed, 29 insertions(+), 61 deletions(-) delete mode 100644 TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch diff --git a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch b/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch deleted file mode 100644 index 89aec37d6..000000000 --- a/TestVectors/codegen-patches/DDBEncryption/dotnet/dafny-4.8.0.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff --git b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -index 009ce943..d517f861 100644 ---- b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -+++ a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs -@@ -918,11 +918,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); - return converted; - } -- if (value.is_Shared) -- { -- converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); -- return converted; -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) -@@ -947,10 +942,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); - } -- if (value.IsSetShared()) -- { -- return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); -- } - throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); - } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) -@@ -1123,14 +1114,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - { - return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) - { - return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); -@@ -1301,18 +1284,6 @@ namespace AWS.Cryptography.DbEncryptionSDK.DynamoDb.Wrapped - int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; - return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); - } -- public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } -- public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) -- { -- // This is converting a reference type in a dependant module. -- // Therefore it defers to the dependant module for conversion -- return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); -- } - public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) - { - return new string(value.Elements); diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index d517f861e..009ce943e 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -918,6 +918,11 @@ public static AWS.Cryptography.MaterialProviders.CacheType FromDafny_N3_aws__N12 converted.StormTracking = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(concrete.dtor_StormTracking); return converted; } + if (value.is_Shared) + { + converted.Shared = FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(concrete.dtor_Shared); + return converted; + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static software.amazon.cryptography.materialproviders.internaldafny.types._ICacheType ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType(AWS.Cryptography.MaterialProviders.CacheType value) @@ -942,6 +947,10 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_StormTracking(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M13_StormTracking(value.StormTracking)); } + if (value.IsSetShared()) + { + return software.amazon.cryptography.materialproviders.internaldafny.types.CacheType.create_Shared(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(value.Shared)); + } throw new System.ArgumentException("Invalid AWS.Cryptography.MaterialProviders.CacheType state"); } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S13_AttributeName(Dafny.ISequence value) @@ -1114,6 +1123,14 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types { return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache(value); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + return FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S9_CacheType__M6_Shared(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + return ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S14_AttributeValue__M1_S(Dafny.ISequence value) { return FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(value); @@ -1284,6 +1301,18 @@ public static software.amazon.cryptography.materialproviders.internaldafny.types int? var_entryPruningTailSize = value.IsSetEntryPruningTailSize() ? value.EntryPruningTailSize : (int?)null; return new software.amazon.cryptography.materialproviders.internaldafny.types.StormTrackingCache(ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_entryCapacity(value.EntryCapacity), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M20_entryPruningTailSize(var_entryPruningTailSize), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_gracePeriod(value.GracePeriod), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M13_graceInterval(value.GraceInterval), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M6_fanOut(value.FanOut), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M11_inFlightTTL(value.InFlightTTL), ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S18_StormTrackingCache__M10_sleepMilli(value.SleepMilli)); } + public static AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.FromDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } + public static software.amazon.cryptography.materialproviders.internaldafny.types.ICryptographicMaterialsCache ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(AWS.Cryptography.MaterialProviders.ICryptographicMaterialsCache value) + { + // This is converting a reference type in a dependant module. + // Therefore it defers to the dependant module for conversion + return AWS.Cryptography.MaterialProviders.TypeConversion.ToDafny_N3_aws__N12_cryptography__N17_materialProviders__S36_CryptographicMaterialsCacheReference(value); + } public static string FromDafny_N3_com__N9_amazonaws__N8_dynamodb__S20_StringAttributeValue(Dafny.ISequence value) { return new string(value.Elements); From 24a1f2197ce2bb2494d54cfaf896de4af8102af7 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 13:22:13 -0700 Subject: [PATCH 54/66] m --- ...ographyDbEncryptionSdkDynamoDbTransformsTypes.dfy | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index c2e87648b..b3a92716d 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -782,11 +782,13 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService obj <- tmps9.Modifies | obj in tmps9.Modifies :: obj modifies set tmps10 <- set t10 <- config.tableEncryptionConfigs.Values | true && t10.search.Some? - , t11 <- t10.search.value.versions | true :: t11.keyStore, + , t11 <- t10.search.value.versions | true + :: t11.keyStore, obj <- tmps10.Modifies | obj in tmps10.Modifies :: obj modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true && t12.search.Some? - , t13 <- t12.search.value.versions | true && t13.keySource.multi? + , t13 <- t12.search.value.versions | true + && t13.keySource.multi? && t13.keySource.multi.cache.Some? && t13.keySource.multi.cache.value.Shared? :: t13.keySource.multi.cache.value.Shared, @@ -808,11 +810,13 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService obj <- tmps16.Modifies | obj in tmps16.Modifies :: obj ) - ( set tmps17 <- set t17 <- config.tableEncryptionConfigs.Values | true && t17.search.Some? - , t18 <- t17.search.value.versions | true :: t18.keyStore, + , t18 <- t17.search.value.versions | true + :: t18.keyStore, obj <- tmps17.Modifies | obj in tmps17.Modifies :: obj ) - ( set tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true && t19.search.Some? - , t20 <- t19.search.value.versions | true && t20.keySource.multi? + , t20 <- t19.search.value.versions | true + && t20.keySource.multi? && t20.keySource.multi.cache.Some? && t20.keySource.multi.cache.value.Shared? :: t20.keySource.multi.cache.value.Shared, From 84d65747edfbfdc6f70a133de8369ef514f693f5 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 13:46:07 -0700 Subject: [PATCH 55/66] bump smithy-dafny to main --- submodules/smithy-dafny | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 9a950a279..55c68f474 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 9a950a279b143ffa24933364d7b61f0bc54fc067 +Subproject commit 55c68f474d8dadd767a312781bc6fd78f922ada6 From 5665d3bfeeaa65e055e02ab80675d0a34abd64cf Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 14:01:13 -0700 Subject: [PATCH 56/66] clean --- DynamoDbEncryption/runtimes/java/build.gradle.kts | 2 +- Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts | 2 +- .../runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts | 2 +- .../java/Migration/PlaintextToAWSDBE/build.gradle.kts | 2 +- TestVectors/runtimes/java/build.gradle.kts | 4 ++-- submodules/MaterialProviders | 2 +- submodules/smithy-dafny | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/DynamoDbEncryption/runtimes/java/build.gradle.kts b/DynamoDbEncryption/runtimes/java/build.gradle.kts index 97e51e50e..2659e9b08 100644 --- a/DynamoDbEncryption/runtimes/java/build.gradle.kts +++ b/DynamoDbEncryption/runtimes/java/build.gradle.kts @@ -81,7 +81,7 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts index 025b0ba2d..bcf62436d 100644 --- a/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts +++ b/Examples/runtimes/java/DynamoDbEncryption/build.gradle.kts @@ -68,7 +68,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:arns") diff --git a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts index eacbf65f0..fa2bcc413 100644 --- a/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/DDBECToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts index 42bde5a5d..d548fe6f5 100644 --- a/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts +++ b/Examples/runtimes/java/Migration/PlaintextToAWSDBE/build.gradle.kts @@ -67,7 +67,7 @@ repositories { dependencies { implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.19.1")) implementation("software.amazon.awssdk:dynamodb") diff --git a/TestVectors/runtimes/java/build.gradle.kts b/TestVectors/runtimes/java/build.gradle.kts index 5373d4ae7..62b9cf443 100644 --- a/TestVectors/runtimes/java/build.gradle.kts +++ b/TestVectors/runtimes/java/build.gradle.kts @@ -88,9 +88,9 @@ val dynamodb by configurations.creating dependencies { implementation("org.dafny:DafnyRuntime:${dafnyRuntimeJavaVersion}") implementation("software.amazon.smithy.dafny:conversion:${smithyDafnyJavaConversionVersion}") - implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation("software.amazon.cryptography:aws-database-encryption-sdk-dynamodb:${ddbecVersion}") - implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}-SNAPSHOT") + implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") implementation(platform("software.amazon.awssdk:bom:2.26.25")) implementation("software.amazon.awssdk:dynamodb") diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index b3145c3ff..ea0fe508d 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit b3145c3ff54aa884a95ba336a842aaeb2d3593ca +Subproject commit ea0fe508dca214b9c9bdaf0fc21122e83971ef1b diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 98939e130..55c68f474 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 98939e130695095386059967509a19299dfac320 +Subproject commit 55c68f474d8dadd767a312781bc6fd78f922ada6 From 9b3f20a3a8798be85e4142b017674202b693663b Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 14:02:08 -0700 Subject: [PATCH 57/66] m --- submodules/MaterialProviders | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index ea0fe508d..b3145c3ff 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit ea0fe508dca214b9c9bdaf0fc21122e83971ef1b +Subproject commit b3145c3ff54aa884a95ba336a842aaeb2d3593ca From 5e38451899ead1921c13c745ef58e2d4b79468c3 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Tue, 29 Oct 2024 11:46:05 -0700 Subject: [PATCH 58/66] update --- submodules/MaterialProviders | 2 +- submodules/smithy-dafny | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index b3145c3ff..a952fc32e 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit b3145c3ff54aa884a95ba336a842aaeb2d3593ca +Subproject commit a952fc32e77fe38cdfabfc4655788493b2d17565 diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 55c68f474..9e2b88b09 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 55c68f474d8dadd767a312781bc6fd78f922ada6 +Subproject commit 9e2b88b09d3a63d0be7f03df39fbfe3cc0f02dfa From c97ebff937c040ab340c9004c228d40a95910863 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Tue, 29 Oct 2024 11:58:56 -0700 Subject: [PATCH 59/66] repoly --- ...yptographyDbEncryptionSdkDynamoDbTypes.dfy | 14 +++++--- ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 2 +- ...ncryptionSdkDynamoDbItemEncryptorTypes.dfy | 2 +- ...EncryptionSdkStructuredEncryptionTypes.dfy | 2 +- .../dbencryptionsdk/dynamodb/ToDafny.java | 18 ++++++++-- .../dynamodb/itemencryptor/ToDafny.java | 18 ++++++++-- .../itemencryptor/model/OpaqueError.java | 34 +++++++++++++++++++ .../dynamodb/model/OpaqueError.java | 34 +++++++++++++++++++ .../dynamodb/transforms/ToDafny.java | 18 ++++++++-- .../transforms/model/OpaqueError.java | 34 +++++++++++++++++++ .../structuredencryption/ToDafny.java | 18 ++++++++-- .../model/OpaqueError.java | 34 +++++++++++++++++++ .../DynamoDbEncryption/TypeConversion.cs | 6 ++-- .../TypeConversion.cs | 6 ++-- .../DynamoDbItemEncryptor/TypeConversion.cs | 6 ++-- .../StructuredEncryption/TypeConversion.cs | 6 ++-- 16 files changed, 225 insertions(+), 27 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy index 4700779b8..a7214f838 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy @@ -143,7 +143,9 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.internald && output.value.branchKeyIdSupplier.ValidState() && output.value.branchKeyIdSupplier.Modifies !! {History} && fresh(output.value.branchKeyIdSupplier) - && fresh ( output.value.branchKeyIdSupplier.Modifies - Modifies - {History} - input.ddbKeyBranchKeyIdSupplier.Modifies ) ) + && fresh ( output.value.branchKeyIdSupplier.Modifies + - Modifies - {History} + - input.ddbKeyBranchKeyIdSupplier.Modifies ) ) ensures CreateDynamoDbEncryptionBranchKeyIdSupplierEnsuresPublicly(input, output) ensures History.CreateDynamoDbEncryptionBranchKeyIdSupplier == old(History.CreateDynamoDbEncryptionBranchKeyIdSupplier) + [DafnyCallEvent(input, output)] @@ -474,7 +476,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.internald // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object) + | Opaque(obj: object, alt_text : string := "") type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbService @@ -535,7 +537,9 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbService && output.value.branchKeyIdSupplier.ValidState() && output.value.branchKeyIdSupplier.Modifies !! {History} && fresh(output.value.branchKeyIdSupplier) - && fresh ( output.value.branchKeyIdSupplier.Modifies - Modifies - {History} - input.ddbKeyBranchKeyIdSupplier.Modifies ) ) + && fresh ( output.value.branchKeyIdSupplier.Modifies + - Modifies - {History} + - input.ddbKeyBranchKeyIdSupplier.Modifies ) ) ensures CreateDynamoDbEncryptionBranchKeyIdSupplierEnsuresPublicly(input, output) ensures History.CreateDynamoDbEncryptionBranchKeyIdSupplier == old(History.CreateDynamoDbEncryptionBranchKeyIdSupplier) + [DafnyCallEvent(input, output)] { @@ -592,7 +596,9 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbOperations { && ( output.Success? ==> && output.value.branchKeyIdSupplier.ValidState() && fresh(output.value.branchKeyIdSupplier) - && fresh ( output.value.branchKeyIdSupplier.Modifies - ModifiesInternalConfig(config) - input.ddbKeyBranchKeyIdSupplier.Modifies ) ) + && fresh ( output.value.branchKeyIdSupplier.Modifies + - ModifiesInternalConfig(config) + - input.ddbKeyBranchKeyIdSupplier.Modifies ) ) ensures CreateDynamoDbEncryptionBranchKeyIdSupplierEnsuresPublicly(input, output) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index b3a92716d..0bd0c4aaf 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -728,7 +728,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.transform // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object) + | Opaque(obj: object, alt_text : string := "") type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService diff --git a/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy index 8ce36d14e..cbce893b0 100644 --- a/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy @@ -159,7 +159,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencry // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object) + | Opaque(obj: object, alt_text : string := "") type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorService diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy index b2caf8e88..c8a66a265 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy @@ -283,7 +283,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.structuredencrypti // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object) + | Opaque(obj: object, alt_text : string := "") type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkStructuredEncryptionService diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java index a20f1f9d3..d99098568 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java @@ -84,11 +84,25 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque(nativeValue); + return Error.create_Opaque( + nativeValue, + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.getMessage()) + ? nativeValue.getMessage() + : "" + ) + ); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque(nativeValue.obj()); + return Error.create_Opaque( + nativeValue.obj(), + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.altText()) + ? nativeValue.altText() + : "" + ) + ); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java index 37d593f32..0530c6fce 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java @@ -44,11 +44,25 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque(nativeValue); + return Error.create_Opaque( + nativeValue, + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.getMessage()) + ? nativeValue.getMessage() + : "" + ) + ); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque(nativeValue.obj()); + return Error.create_Opaque( + nativeValue.obj(), + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.altText()) + ? nativeValue.altText() + : "" + ) + ); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java index 1962ee979..3f4eff61d 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java @@ -10,8 +10,14 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; + /** + * A best effort text representation of obj. + */ + private final String altText; + protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); + this.altText = builder.altText(); this.obj = builder.obj(); } @@ -46,6 +52,13 @@ public Object obj() { return this.obj; } + /** + * @return A best effort text representation of obj. + */ + public String altText() { + return this.altText; + } + public Builder toBuilder() { return new BuilderImpl(this); } @@ -85,6 +98,16 @@ public interface Builder { */ Object obj(); + /** + * @param altText A best effort text representation of obj. + */ + Builder altText(String altText); + + /** + * @return A best effort text representation of obj. + */ + String altText(); + OpaqueError build(); } @@ -96,6 +119,8 @@ static class BuilderImpl implements Builder { protected Object obj; + protected String altText; + protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -131,6 +156,15 @@ public Object obj() { return this.obj; } + public Builder altText(String altText) { + this.altText = altText; + return this; + } + + public String altText() { + return this.altText; + } + public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java index 4d14ddd42..b80840003 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java @@ -10,8 +10,14 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; + /** + * A best effort text representation of obj. + */ + private final String altText; + protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); + this.altText = builder.altText(); this.obj = builder.obj(); } @@ -46,6 +52,13 @@ public Object obj() { return this.obj; } + /** + * @return A best effort text representation of obj. + */ + public String altText() { + return this.altText; + } + public Builder toBuilder() { return new BuilderImpl(this); } @@ -85,6 +98,16 @@ public interface Builder { */ Object obj(); + /** + * @param altText A best effort text representation of obj. + */ + Builder altText(String altText); + + /** + * @return A best effort text representation of obj. + */ + String altText(); + OpaqueError build(); } @@ -96,6 +119,8 @@ static class BuilderImpl implements Builder { protected Object obj; + protected String altText; + protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -131,6 +156,15 @@ public Object obj() { return this.obj; } + public Builder altText(String altText) { + this.altText = altText; + return this; + } + + public String altText() { + return this.altText; + } + public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java index b1d3deba6..5c08b44df 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java @@ -113,11 +113,25 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque(nativeValue); + return Error.create_Opaque( + nativeValue, + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.getMessage()) + ? nativeValue.getMessage() + : "" + ) + ); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque(nativeValue.obj()); + return Error.create_Opaque( + nativeValue.obj(), + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.altText()) + ? nativeValue.altText() + : "" + ) + ); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java index 86a831c90..bb818bc53 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java @@ -10,8 +10,14 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; + /** + * A best effort text representation of obj. + */ + private final String altText; + protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); + this.altText = builder.altText(); this.obj = builder.obj(); } @@ -46,6 +52,13 @@ public Object obj() { return this.obj; } + /** + * @return A best effort text representation of obj. + */ + public String altText() { + return this.altText; + } + public Builder toBuilder() { return new BuilderImpl(this); } @@ -85,6 +98,16 @@ public interface Builder { */ Object obj(); + /** + * @param altText A best effort text representation of obj. + */ + Builder altText(String altText); + + /** + * @return A best effort text representation of obj. + */ + String altText(); + OpaqueError build(); } @@ -96,6 +119,8 @@ static class BuilderImpl implements Builder { protected Object obj; + protected String altText; + protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -131,6 +156,15 @@ public Object obj() { return this.obj; } + public Builder altText(String altText) { + this.altText = altText; + return this; + } + + public String altText() { + return this.altText; + } + public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java index d3d49d587..e53d633e4 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java @@ -56,11 +56,25 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque(nativeValue); + return Error.create_Opaque( + nativeValue, + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.getMessage()) + ? nativeValue.getMessage() + : "" + ) + ); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque(nativeValue.obj()); + return Error.create_Opaque( + nativeValue.obj(), + dafny.DafnySequence.asString( + java.util.Objects.nonNull(nativeValue.altText()) + ? nativeValue.altText() + : "" + ) + ); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java index 0e8c7b28f..b490de0f4 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java @@ -10,8 +10,14 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; + /** + * A best effort text representation of obj. + */ + private final String altText; + protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); + this.altText = builder.altText(); this.obj = builder.obj(); } @@ -46,6 +52,13 @@ public Object obj() { return this.obj; } + /** + * @return A best effort text representation of obj. + */ + public String altText() { + return this.altText; + } + public Builder toBuilder() { return new BuilderImpl(this); } @@ -85,6 +98,16 @@ public interface Builder { */ Object obj(); + /** + * @param altText A best effort text representation of obj. + */ + Builder altText(String altText); + + /** + * @return A best effort text representation of obj. + */ + String altText(); + OpaqueError build(); } @@ -96,6 +119,8 @@ static class BuilderImpl implements Builder { protected Object obj; + protected String altText; + protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -131,6 +156,15 @@ public Object obj() { return this.obj; } + public Builder altText(String altText) { + this.altText = altText; + return this; + } + + public String altText() { + return this.altText; + } + public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index 0044c6b7c..6553f676d 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -1644,12 +1644,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); } } } diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 69852084b..4c91b4fe3 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -6719,12 +6719,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.i ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(value); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); } } } diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs index c5b0bedd1..82079b95b 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -1040,12 +1040,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencrypto ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(value); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); } } } diff --git a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs index 4e9890cfe..b55a56701 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -981,12 +981,12 @@ public static software.amazon.cryptography.dbencryptionsdk.structuredencryption. ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(value); + return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); } } } From 1deae4197813cd1ca6d96f47861a64f63dfa34e6 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Tue, 29 Oct 2024 13:16:18 -0700 Subject: [PATCH 60/66] local testing? --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 028eb4c7c..421c38f5a 100644 --- a/project.properties +++ b/project.properties @@ -1,5 +1,5 @@ projectJavaVersion=3.7.0-SNAPSHOT -mplDependencyJavaVersion=1.7.0 +mplDependencyJavaVersion=1.7.2-SNAPSHOT dafnyVersion=4.8.0 dafnyVerifyVersion=4.8.0 dafnyRuntimeJavaVersion=4.8.0 From b6aa520048fd5e90c0600e243c72050ca9bf3bf8 Mon Sep 17 00:00:00 2001 From: seebees Date: Wed, 30 Oct 2024 11:24:52 -0700 Subject: [PATCH 61/66] refine the cache Use the provided cache. Calling `mpl.CreateCryptographicMaterialsCache` with a `Shared` cache will result in an error. Update the testing to ensure that no shared cache is passed. --- .../DynamoDbEncryption/src/ConfigToInfo.dfy | 21 ++++++++++++------- .../test/BeaconTestFixtures.dfy | 3 +++ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy index 5a4062999..09f9393e2 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy @@ -137,14 +137,19 @@ module SearchConfigToInfo { else MPT.Default(Default := MPT.DefaultCache(entryCapacity := 1)); - //= specification/searchable-encryption/search-config.md#key-store-cache - //# For a Beacon Key Source a [CMC](../../submodules/MaterialProviders/aws-encryption-sdk-specification/framework/cryptographic-materials-cache.md) - //# MUST be created. - var input := MPT.CreateCryptographicMaterialsCacheInput( - cache := cacheType - ); - var maybeCache := mpl.CreateCryptographicMaterialsCache(input); - var cache :- maybeCache.MapFailure(e => AwsCryptographyMaterialProviders(e)); + var cache; + if cacheType.Shared? { + cache := cacheType.Shared; + } else { + //= specification/searchable-encryption/search-config.md#key-store-cache + //# For a Beacon Key Source a [CMC](../../submodules/MaterialProviders/aws-encryption-sdk-specification/framework/cryptographic-materials-cache.md) + //# MUST be created. + var input := MPT.CreateCryptographicMaterialsCacheInput( + cache := cacheType + ); + var maybeCache := mpl.CreateCryptographicMaterialsCache(input); + cache :- maybeCache.MapFailure(e => AwsCryptographyMaterialProviders(e)); + } if config.multi? { :- Need(0 < config.multi.cacheTTL, E("Beacon Cache TTL must be at least 1.")); diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy index f4a1eadc6..6476fc10b 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy @@ -181,6 +181,9 @@ module BeaconTestFixtures { ensures output.keyStore.ValidState() ensures fresh(output.keyStore.Modifies) ensures output.version == 1 + ensures + && output.keySource.multi? + && output.keySource.multi.cache.None? { var store := GetKeyStore(); return BeaconVersion ( From f945592c58981b9a2faf88a5fa57400711ad0876 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 30 Oct 2024 13:26:36 -0700 Subject: [PATCH 62/66] m --- .../net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs | 2 +- .../runtimes/net/Generated/DDBEncryption/TypeConversion.cs | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs index cc97276fc..0af7e9668 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs @@ -62,7 +62,7 @@ private software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.type Dafny.Sequence.FromString(collectionOfErrors.Message) ); default: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(error); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(error, Dafny.Sequence.FromString(error.ToString())); } } diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index 009ce943e..07f36bb90 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -1604,12 +1604,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); } } } From b11dc2e75fc54b798c701073450b9c54dcb7f888 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 31 Oct 2024 10:50:16 -0700 Subject: [PATCH 63/66] m --- .github/workflows/library_format.yml | 2 +- .../dafny/DynamoDbEncryption/src/SearchInfo.dfy | 10 +++++----- .../DynamoDbEncryption/test/BeaconTestFixtures.dfy | 4 ++-- .../dafny/StructuredEncryption/src/Header.dfy | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/library_format.yml b/.github/workflows/library_format.yml index af4af2ed2..1faa244b3 100644 --- a/.github/workflows/library_format.yml +++ b/.github/workflows/library_format.yml @@ -39,7 +39,7 @@ jobs: - name: Setup Dafny uses: dafny-lang/setup-dafny-action@v1.8.0 with: - dafny-version: ${{ '4.2.0' }} + dafny-version: ${{ inputs.dafny }} - name: Check format of Java code et al run: | diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy index deea2dd2d..92a730fad 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/SearchInfo.dfy @@ -71,11 +71,11 @@ module SearchableEncryptionInfo { //# MUST be generated in accordance with [HMAC Key Generation](#hmac-key-generation). var newKey :- GetBeaconKey(client, key, keysLeft[0]); reveal Seq.HasNoDuplicates(); - //= specification/searchable-encryption/search-config.md#get-beacon-key-materials - //# [Beacon Key Materials](../../submodules/MaterialProviders/aws-encryption-sdk-specification/framework/structures.md#beacon-key-materials) MUST be generated - //# with the [beacon key id](#beacon-key-id) equal to the `beacon key id` - //# and the [HMAC Keys](../../submodules/MaterialProviders/aws-encryption-sdk-specification/framework/structures.md#hmac-keys) equal to a map - //# of every [standard beacons](beacons.md#standard-beacon-initialization) name to its generated HMAC key. + //= specification/searchable-encryption/search-config.md#get-beacon-key-materials + //# [Beacon Key Materials](../../submodules/MaterialProviders/aws-encryption-sdk-specification/framework/structures.md#beacon-key-materials) MUST be generated + //# with the [beacon key id](#beacon-key-id) equal to the `beacon key id` + //# and the [HMAC Keys](../../submodules/MaterialProviders/aws-encryption-sdk-specification/framework/structures.md#hmac-keys) equal to a map + //# of every [standard beacons](beacons.md#standard-beacon-initialization) name to its generated HMAC key. output := GetHmacKeys(client, allKeys, keysLeft[1..], key, acc[keysLeft[0] := newKey]); } } diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy index 6476fc10b..bbf448e00 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/test/BeaconTestFixtures.dfy @@ -182,8 +182,8 @@ module BeaconTestFixtures { ensures fresh(output.keyStore.Modifies) ensures output.version == 1 ensures - && output.keySource.multi? - && output.keySource.multi.cache.None? + && output.keySource.multi? + && output.keySource.multi.cache.None? { var store := GetKeyStore(); return BeaconVersion ( diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/src/Header.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/src/Header.dfy index 32c22df42..66169eea6 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/src/Header.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/src/Header.dfy @@ -132,7 +132,7 @@ module StructuredEncryptionHeader { + SerializeLegend(legend) + SerializeContext(encContext) + SerializeDataKeys(dataKeys) - ) + ) { var context := SerializeContext(encContext); var keys := SerializeDataKeys(dataKeys); @@ -630,7 +630,7 @@ module StructuredEncryptionHeader { + k.keyProviderInfo + UInt16ToSeq(cipherSize) + k.ciphertext - ) + ) { UInt16ToSeq(|k.keyProviderId| as uint16) + k.keyProviderId From 8f750985344acbe4111e2347d16fdbd2e45004bf Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 31 Oct 2024 11:19:38 -0700 Subject: [PATCH 64/66] m --- submodules/MaterialProviders | 2 +- submodules/smithy-dafny | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index a952fc32e..f6254c121 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit a952fc32e77fe38cdfabfc4655788493b2d17565 +Subproject commit f6254c1213a1ce12eb660797ce82a6f3f840333f diff --git a/submodules/smithy-dafny b/submodules/smithy-dafny index 9e2b88b09..c47e0832b 160000 --- a/submodules/smithy-dafny +++ b/submodules/smithy-dafny @@ -1 +1 @@ -Subproject commit 9e2b88b09d3a63d0be7f03df39fbfe3cc0f02dfa +Subproject commit c47e0832b9dfafaa112593dd493728823804cc9b From a73fbc678ddba11d720e0c123780af22ab70734b Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 31 Oct 2024 11:22:35 -0700 Subject: [PATCH 65/66] main mpl --- submodules/MaterialProviders | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/MaterialProviders b/submodules/MaterialProviders index f6254c121..139f903e9 160000 --- a/submodules/MaterialProviders +++ b/submodules/MaterialProviders @@ -1 +1 @@ -Subproject commit f6254c1213a1ce12eb660797ce82a6f3f840333f +Subproject commit 139f903e9ebfbb77ac6008f2b81b73565915835e From 8bf0a7bffdf9eac6e9c1f6055b6f975911fd5245 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 31 Oct 2024 11:27:41 -0700 Subject: [PATCH 66/66] repoly --- ...yptographyDbEncryptionSdkDynamoDbTypes.dfy | 2 +- ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 2 +- ...ncryptionSdkDynamoDbItemEncryptorTypes.dfy | 2 +- ...EncryptionSdkStructuredEncryptionTypes.dfy | 2 +- .../dbencryptionsdk/dynamodb/ToDafny.java | 18 ++-------- .../dynamodb/itemencryptor/ToDafny.java | 18 ++-------- .../itemencryptor/model/OpaqueError.java | 34 ------------------- .../dynamodb/model/OpaqueError.java | 34 ------------------- .../dynamodb/transforms/ToDafny.java | 18 ++-------- .../transforms/model/OpaqueError.java | 34 ------------------- .../structuredencryption/ToDafny.java | 18 ++-------- .../model/OpaqueError.java | 34 ------------------- .../DynamoDbEncryption/TypeConversion.cs | 6 ++-- .../TypeConversion.cs | 6 ++-- .../DynamoDbItemEncryptor/TypeConversion.cs | 6 ++-- .../StructuredEncryption/TypeConversion.cs | 6 ++-- .../DDBEncryption/DynamoDbEncryptionShim.cs | 2 +- .../Generated/DDBEncryption/TypeConversion.cs | 6 ++-- 18 files changed, 28 insertions(+), 220 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy index a7214f838..48fe485e0 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/Model/AwsCryptographyDbEncryptionSdkDynamoDbTypes.dfy @@ -476,7 +476,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.internald // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object, alt_text : string := "") + | Opaque(obj: object) type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbService diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 0bd0c4aaf..b3a92716d 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -728,7 +728,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.transform // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object, alt_text : string := "") + | Opaque(obj: object) type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService diff --git a/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy index cbce893b0..8ce36d14e 100644 --- a/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbItemEncryptor/Model/AwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorTypes.dfy @@ -159,7 +159,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencry // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object, alt_text : string := "") + | Opaque(obj: object) type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbItemEncryptorService diff --git a/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy b/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy index c8a66a265..b2caf8e88 100644 --- a/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy +++ b/DynamoDbEncryption/dafny/StructuredEncryption/Model/AwsCryptographyDbEncryptionSdkStructuredEncryptionTypes.dfy @@ -283,7 +283,7 @@ module {:extern "software.amazon.cryptography.dbencryptionsdk.structuredencrypti // || (!exit(A(I)) && !access(B(I))) | CollectionOfErrors(list: seq, nameonly message: string) // The Opaque error, used for native, extern, wrapped or unknown errors - | Opaque(obj: object, alt_text : string := "") + | Opaque(obj: object) type OpaqueError = e: Error | e.Opaque? witness * } abstract module AbstractAwsCryptographyDbEncryptionSdkStructuredEncryptionService diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java index d99098568..a20f1f9d3 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/ToDafny.java @@ -84,25 +84,11 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque( - nativeValue, - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.getMessage()) - ? nativeValue.getMessage() - : "" - ) - ); + return Error.create_Opaque(nativeValue); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque( - nativeValue.obj(), - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.altText()) - ? nativeValue.altText() - : "" - ) - ); + return Error.create_Opaque(nativeValue.obj()); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java index 0530c6fce..37d593f32 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/ToDafny.java @@ -44,25 +44,11 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque( - nativeValue, - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.getMessage()) - ? nativeValue.getMessage() - : "" - ) - ); + return Error.create_Opaque(nativeValue); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque( - nativeValue.obj(), - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.altText()) - ? nativeValue.altText() - : "" - ) - ); + return Error.create_Opaque(nativeValue.obj()); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java index 3f4eff61d..1962ee979 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/itemencryptor/model/OpaqueError.java @@ -10,14 +10,8 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; - /** - * A best effort text representation of obj. - */ - private final String altText; - protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); - this.altText = builder.altText(); this.obj = builder.obj(); } @@ -52,13 +46,6 @@ public Object obj() { return this.obj; } - /** - * @return A best effort text representation of obj. - */ - public String altText() { - return this.altText; - } - public Builder toBuilder() { return new BuilderImpl(this); } @@ -98,16 +85,6 @@ public interface Builder { */ Object obj(); - /** - * @param altText A best effort text representation of obj. - */ - Builder altText(String altText); - - /** - * @return A best effort text representation of obj. - */ - String altText(); - OpaqueError build(); } @@ -119,8 +96,6 @@ static class BuilderImpl implements Builder { protected Object obj; - protected String altText; - protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -156,15 +131,6 @@ public Object obj() { return this.obj; } - public Builder altText(String altText) { - this.altText = altText; - return this; - } - - public String altText() { - return this.altText; - } - public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java index b80840003..4d14ddd42 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/model/OpaqueError.java @@ -10,14 +10,8 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; - /** - * A best effort text representation of obj. - */ - private final String altText; - protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); - this.altText = builder.altText(); this.obj = builder.obj(); } @@ -52,13 +46,6 @@ public Object obj() { return this.obj; } - /** - * @return A best effort text representation of obj. - */ - public String altText() { - return this.altText; - } - public Builder toBuilder() { return new BuilderImpl(this); } @@ -98,16 +85,6 @@ public interface Builder { */ Object obj(); - /** - * @param altText A best effort text representation of obj. - */ - Builder altText(String altText); - - /** - * @return A best effort text representation of obj. - */ - String altText(); - OpaqueError build(); } @@ -119,8 +96,6 @@ static class BuilderImpl implements Builder { protected Object obj; - protected String altText; - protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -156,15 +131,6 @@ public Object obj() { return this.obj; } - public Builder altText(String altText) { - this.altText = altText; - return this; - } - - public String altText() { - return this.altText; - } - public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java index 5c08b44df..b1d3deba6 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/ToDafny.java @@ -113,25 +113,11 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque( - nativeValue, - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.getMessage()) - ? nativeValue.getMessage() - : "" - ) - ); + return Error.create_Opaque(nativeValue); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque( - nativeValue.obj(), - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.altText()) - ? nativeValue.altText() - : "" - ) - ); + return Error.create_Opaque(nativeValue.obj()); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java index bb818bc53..86a831c90 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/dynamodb/transforms/model/OpaqueError.java @@ -10,14 +10,8 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; - /** - * A best effort text representation of obj. - */ - private final String altText; - protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); - this.altText = builder.altText(); this.obj = builder.obj(); } @@ -52,13 +46,6 @@ public Object obj() { return this.obj; } - /** - * @return A best effort text representation of obj. - */ - public String altText() { - return this.altText; - } - public Builder toBuilder() { return new BuilderImpl(this); } @@ -98,16 +85,6 @@ public interface Builder { */ Object obj(); - /** - * @param altText A best effort text representation of obj. - */ - Builder altText(String altText); - - /** - * @return A best effort text representation of obj. - */ - String altText(); - OpaqueError build(); } @@ -119,8 +96,6 @@ static class BuilderImpl implements Builder { protected Object obj; - protected String altText; - protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -156,15 +131,6 @@ public Object obj() { return this.obj; } - public Builder altText(String altText) { - this.altText = altText; - return this; - } - - public String altText() { - return this.altText; - } - public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java index e53d633e4..d3d49d587 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/ToDafny.java @@ -56,25 +56,11 @@ public static Error Error(RuntimeException nativeValue) { if (nativeValue instanceof CollectionOfErrors) { return ToDafny.Error((CollectionOfErrors) nativeValue); } - return Error.create_Opaque( - nativeValue, - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.getMessage()) - ? nativeValue.getMessage() - : "" - ) - ); + return Error.create_Opaque(nativeValue); } public static Error Error(OpaqueError nativeValue) { - return Error.create_Opaque( - nativeValue.obj(), - dafny.DafnySequence.asString( - java.util.Objects.nonNull(nativeValue.altText()) - ? nativeValue.altText() - : "" - ) - ); + return Error.create_Opaque(nativeValue.obj()); } public static Error Error(CollectionOfErrors nativeValue) { diff --git a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java index b490de0f4..0e8c7b28f 100644 --- a/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java +++ b/DynamoDbEncryption/runtimes/java/src/main/smithy-generated/software/amazon/cryptography/dbencryptionsdk/structuredencryption/model/OpaqueError.java @@ -10,14 +10,8 @@ public class OpaqueError extends RuntimeException { */ private final Object obj; - /** - * A best effort text representation of obj. - */ - private final String altText; - protected OpaqueError(BuilderImpl builder) { super(messageFromBuilder(builder), builder.cause()); - this.altText = builder.altText(); this.obj = builder.obj(); } @@ -52,13 +46,6 @@ public Object obj() { return this.obj; } - /** - * @return A best effort text representation of obj. - */ - public String altText() { - return this.altText; - } - public Builder toBuilder() { return new BuilderImpl(this); } @@ -98,16 +85,6 @@ public interface Builder { */ Object obj(); - /** - * @param altText A best effort text representation of obj. - */ - Builder altText(String altText); - - /** - * @return A best effort text representation of obj. - */ - String altText(); - OpaqueError build(); } @@ -119,8 +96,6 @@ static class BuilderImpl implements Builder { protected Object obj; - protected String altText; - protected BuilderImpl() {} protected BuilderImpl(OpaqueError model) { @@ -156,15 +131,6 @@ public Object obj() { return this.obj; } - public Builder altText(String altText) { - this.altText = altText; - return this; - } - - public String altText() { - return this.altText; - } - public OpaqueError build() { if ( this.obj != null && this.cause == null && this.obj instanceof Throwable diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs index 6553f676d..0044c6b7c 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryption/TypeConversion.cs @@ -1644,12 +1644,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value); } } } diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs index 4c91b4fe3..69852084b 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbEncryptionTransforms/TypeConversion.cs @@ -6719,12 +6719,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.i ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(exception); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.transforms.internaldafny.types.Error_Opaque(value); } } } diff --git a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs index 82079b95b..c5b0bedd1 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/DynamoDbItemEncryptor/TypeConversion.cs @@ -1040,12 +1040,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencrypto ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(exception); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.itemencryptor.internaldafny.types.Error_Opaque(value); } } } diff --git a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs index b55a56701..4e9890cfe 100644 --- a/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs +++ b/DynamoDbEncryption/runtimes/net/Generated/StructuredEncryption/TypeConversion.cs @@ -981,12 +981,12 @@ public static software.amazon.cryptography.dbencryptionsdk.structuredencryption. ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(exception); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny.types.Error_Opaque(value); } } } diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs index 0af7e9668..cc97276fc 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/DynamoDbEncryptionShim.cs @@ -62,7 +62,7 @@ private software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.type Dafny.Sequence.FromString(collectionOfErrors.Message) ); default: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(error, Dafny.Sequence.FromString(error.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(error); } } diff --git a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs index 07f36bb90..009ce943e 100644 --- a/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs +++ b/TestVectors/runtimes/net/Generated/DDBEncryption/TypeConversion.cs @@ -1604,12 +1604,12 @@ public static software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafn ); // OpaqueError is redundant, but listed for completeness. case OpaqueError exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); case System.Exception exception: - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception, Dafny.Sequence.FromString(exception.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(exception); default: // The switch MUST be complete for System.Exception, so `value` MUST NOT be an System.Exception. (How did you get here?) - return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value, Dafny.Sequence.FromString(value.ToString())); + return new software.amazon.cryptography.dbencryptionsdk.dynamodb.internaldafny.types.Error_Opaque(value); } } }