From 6d0636948df2f45938ec2c39e40037a58fa76674 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Wed, 25 Sep 2024 10:55:40 -0700 Subject: [PATCH 01/48] 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 02/48] 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 03/48] 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 04/48] 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 05/48] 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 06/48] 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 07/48] 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 08/48] 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 09/48] 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 10/48] 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 11/48] 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 12/48] 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 13/48] 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 14/48] 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 15/48] 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 16/48] 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 17/48] 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 18/48] 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 19/48] 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 20/48] 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 21/48] 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 22/48] 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 23/48] 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 24/48] 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 25/48] 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 26/48] 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 27/48] 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 28/48] 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 29/48] 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 30/48] 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 31/48] 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 32/48] 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 33/48] 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 34/48] 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 35/48] 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 36/48] 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 37/48] 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 62929175b23f8f2a45925be017ffc5ef6f1e0baf Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Thu, 26 Sep 2024 14:25:21 -0700 Subject: [PATCH 38/48] m --- project.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.properties b/project.properties index 256733265..2904c981f 100644 --- a/project.properties +++ b/project.properties @@ -1,6 +1,6 @@ projectJavaVersion=3.7.0-SNAPSHOT mplDependencyJavaVersion=1.7.0 dafnyVersion=4.8.0 -dafnyVerifyVersion=4.8.0 +dafnyVerifyVersion=4.8.1 dafnyRuntimeJavaVersion=4.8.0 smithyDafnyJavaConversionVersion=0.1 From 65180548bc48234c953cff7f40ac4ba7b797967a Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 08:47:57 -0700 Subject: [PATCH 39/48] no verify it --- ...yDbEncryptionSdkDynamoDbTransformsTypes.dfy | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index b3a92716d..6a6abcfcb 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService 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 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 { From f6fa9267557135a99a72746415a12b7a13513eb9 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 08:58:25 -0700 Subject: [PATCH 40/48] patch --- .../dafny/dafny-4.8.0.patch | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) 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..a724fd7f1 --- /dev/null +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch @@ -0,0 +1,29 @@ +diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +index b3a92716..6a6abcfc 100644 +--- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy ++++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +@@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService + 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 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 { From 6c5362adc57438989a7701124b677df64d80d024 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 09:04:02 -0700 Subject: [PATCH 41/48] m --- ...yDbEncryptionSdkDynamoDbTransformsTypes.dfy | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 6a6abcfcb..85d4f3027 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService 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 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 { From 3271a8a9e47ddf2ab44220b1553b730490afc625 Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 09:04:47 -0700 Subject: [PATCH 42/48] format --- .../dafny/dafny-4.8.0.patch | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch index a724fd7f1..2a916017f 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch @@ -1,5 +1,5 @@ diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -index b3a92716..6a6abcfc 100644 +index b3a92716..85d4f302 100644 --- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService @@ -15,15 +15,15 @@ index b3a92716..6a6abcfc 100644 - tmp27.keySource.multi.cache.Some? ==> - tmp27.keySource.multi.cache.value.Shared? ==> - tmp27.keySource.multi.cache.value.Shared.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 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 { From e45f873e6190d45a4c237e2009c3ab0b95520d9b Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 09:30:36 -0700 Subject: [PATCH 43/48] m --- ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 50 +++++++++---------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 85d4f3027..5c6ae32cf 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -759,15 +759,15 @@ 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() + // 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.keyring.Some? :: t7.keyring.value, @@ -785,14 +785,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService , 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.keySource.multi.cache.Some? - && t13.keySource.multi.cache.value.Shared? - :: t13.keySource.multi.cache.value.Shared, - obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj + // modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true + // && t12.search.Some? + // , 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? ==> && fresh(res.value) && fresh(res.value.Modifies @@ -813,14 +813,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService , 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.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 tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true + // && t19.search.Some? + // , 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 ) ) && fresh(res.value.History) && res.value.ValidState() From bf913a1793c1b3954940ec1e673554d0c15efeeb Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 09:33:45 -0700 Subject: [PATCH 44/48] m --- ...phyDbEncryptionSdkDynamoDbTransformsTypes.dfy | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 5c6ae32cf..24f9d302e 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -813,14 +813,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService , 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.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 tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true + // && t19.search.Some? + // , 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 ) ) && fresh(res.value.History) && res.value.ValidState() From c3d17416752ec03caa884130ea7c9bee97318a2f Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 09:34:41 -0700 Subject: [PATCH 45/48] m --- .../dafny/dafny-4.8.0.patch | 73 ++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) diff --git a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch index 2a916017f..75fb8c6d5 100644 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch +++ b/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch @@ -1,7 +1,78 @@ diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -index b3a92716..85d4f302 100644 +index b3a92716..24f9d302 100644 --- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +@@ -759,15 +759,15 @@ 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() ++ // 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.keyring.Some? + :: t7.keyring.value, +@@ -785,14 +785,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService + , 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.keySource.multi.cache.Some? +- && t13.keySource.multi.cache.value.Shared? +- :: t13.keySource.multi.cache.value.Shared, +- obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj ++ // modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true ++ // && t12.search.Some? ++ // , 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? ==> + && fresh(res.value) + && fresh(res.value.Modifies +@@ -813,14 +813,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService + , 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.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 tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true ++ // && t19.search.Some? ++ // , 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 + ) ) + && fresh(res.value.History) + && res.value.ValidState() @@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService var tmps25 := set t25 | t25 in tmp24.search.value.versions; forall tmp25 :: tmp25 in tmps25 ==> From a6fca5aaa1ed2d218a6e29723d23d01af3f527cc Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Fri, 27 Sep 2024 10:01:41 -0700 Subject: [PATCH 46/48] m --- .../dafny/dafny-4.8.0.patch | 100 ------------------ ...DbEncryptionSdkDynamoDbTransformsTypes.dfy | 68 ++++++------ 2 files changed, 34 insertions(+), 134 deletions(-) delete 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 deleted file mode 100644 index 75fb8c6d5..000000000 --- a/DynamoDbEncryption/codegen-patches/DynamoDbEncryptionTransforms/dafny/dafny-4.8.0.patch +++ /dev/null @@ -1,100 +0,0 @@ -diff --git b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -index b3a92716..24f9d302 100644 ---- b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -+++ a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy -@@ -759,15 +759,15 @@ 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() -+ // 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.keyring.Some? - :: t7.keyring.value, -@@ -785,14 +785,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService - , 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.keySource.multi.cache.Some? -- && t13.keySource.multi.cache.value.Shared? -- :: t13.keySource.multi.cache.value.Shared, -- obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj -+ // modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true -+ // && t12.search.Some? -+ // , 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? ==> - && fresh(res.value) - && fresh(res.value.Modifies -@@ -813,14 +813,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService - , 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.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 tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true -+ // && t19.search.Some? -+ // , 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 - ) ) - && fresh(res.value.History) - && res.value.ValidState() -@@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService - 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 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/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy index 24f9d302e..b3a92716d 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/Model/AwsCryptographyDbEncryptionSdkDynamoDbTransformsTypes.dfy @@ -759,15 +759,15 @@ 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() + 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.keyring.Some? :: t7.keyring.value, @@ -785,14 +785,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService , 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.keySource.multi.cache.Some? - // && t13.keySource.multi.cache.value.Shared? - // :: t13.keySource.multi.cache.value.Shared, - // obj <- tmps12.Modifies | obj in tmps12.Modifies :: obj + modifies set tmps12 <- set t12 <- config.tableEncryptionConfigs.Values | true + && t12.search.Some? + , 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? ==> && fresh(res.value) && fresh(res.value.Modifies @@ -813,14 +813,14 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService , 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.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 tmps19 <- set t19 <- config.tableEncryptionConfigs.Values | true + && t19.search.Some? + , 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 ) ) && fresh(res.value.History) && res.value.ValidState() @@ -842,15 +842,15 @@ abstract module AbstractAwsCryptographyDbEncryptionSdkDynamoDbTransformsService 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 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 { From 2166afc22d8d48bf180a94e125ad5a2de4616305 Mon Sep 17 00:00:00 2001 From: seebees Date: Mon, 30 Sep 2024 11:15:52 -0700 Subject: [PATCH 47/48] playing with reads --- .../DynamoDbEncryption/src/ConfigToInfo.dfy | 35 ++++- .../src/Index.dfy | 147 +++++++++++++----- 2 files changed, 140 insertions(+), 42 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy index ab14f719f..0de206926 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy @@ -63,10 +63,43 @@ module SearchConfigToInfo { } predicate ValidBeaconVersion(config : BeaconVersion) + reads + if + && config.keySource.multi? + && config.keySource.multi.cache.Some? + && config.keySource.multi.cache.value.Shared? + then + {config.keySource.multi.cache.value.Shared as object} + config.keySource.multi.cache.value.Shared.Modifies + else {} { - config.keyStore.ValidState() + && config.keyStore.ValidState() + && ( + && config.keySource.multi? + && config.keySource.multi.cache.Some? + && config.keySource.multi.cache.value.Shared? + ==> + && config.keySource.multi.cache.value.Shared.ValidState() + ) } predicate ValidSearchConfig(config : Option) + reads + if config.Some? then + set + c <- config.value.versions | + && c.keySource.multi? + && c.keySource.multi.cache.Some? + && c.keySource.multi.cache.value.Shared? + :: c.keySource.multi.cache.value.Shared + else {}, + if config.Some? then + set + c <- config.value.versions | + && c.keySource.multi? + && c.keySource.multi.cache.Some? + && c.keySource.multi.cache.value.Shared?, + o <- c.keySource.multi.cache.value.Shared.Modifies + :: o + else {} { if config.None? then true diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy index f44f59b6c..c8e9a4a43 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy @@ -31,7 +31,9 @@ module predicate ValidWholeSearchConfig(config : ET.DynamoDbTablesEncryptionConfig) { - forall t <- config.tableEncryptionConfigs :: SearchConfigToInfo.ValidSearchConfig(config.tableEncryptionConfigs[t].search) + forall t <- config.tableEncryptionConfigs + :: + && SearchConfigToInfo.ValidSearchConfig(config.tableEncryptionConfigs[t].search) } function TheModifies(config: AwsCryptographyDbEncryptionSdkDynamoDbTypes.DynamoDbTablesEncryptionConfig) : set @@ -102,6 +104,50 @@ module && inputConfig.sortKeyName == internalConfig.sortKeyName } + + // predicate BiteMe( + // config: AwsCryptographyDbEncryptionSdkDynamoDbTypes.DynamoDbTablesEncryptionConfig + // ) + // reads + // // var tmps27 := set t27 | t27 in config.search.value.versions; + + // set + // m <- config.tableEncryptionConfigs.Values | m.search.Some?, + // sv <- m.search.value.versions | + // && sv.keySource.multi? + // && sv.keySource.multi.cache.Some? + // && sv.keySource.multi.cache.value.Shared? + // :: + // sv.keySource.multi.cache.value.Shared, + // set + // m <- config.tableEncryptionConfigs.Values | m.search.Some?, + // sv <- m.search.value.versions | + // && sv.keySource.multi? + // && sv.keySource.multi.cache.Some? + // && sv.keySource.multi.cache.value.Shared?, + // o <- sv.keySource.multi.cache.value.Shared.Modifies + // :: + // o + // // s <- m.search.value | m.search.value.keySource.multi?, + // // c <- s.keySource.multi.cache | s.keySource.multi.cache.Some? && s.keySource.multi.cache.value.Shared? + // // :: + // // c.keySource.multi.cache.value.Shared.Modifies + + // { + // 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() + // } + method {:vcs_split_on_every_assert} DynamoDbEncryptionTransforms(config: AwsCryptographyDbEncryptionSdkDynamoDbTypes.DynamoDbTablesEncryptionConfig) returns (res: Result) //= specification/dynamodb-encryption-client/ddb-table-encryption-config.md#logical-table-name @@ -115,6 +161,11 @@ module { var internalConfigs: map := map[]; assert ValidWholeSearchConfig(config); + + // assert BiteMe(config) by { + + // } + //= specification/dynamodb-encryption-client/ddb-sdk-integration.md#dynamodb-table-encryption-configs //# During initialization, this client MUST construct a //# [DynamoDb Item Encryptor](./ddb-table-encryption-config.md) @@ -145,6 +196,8 @@ module invariant AllTableConfigsValid?(internalConfigs) invariant ValidConfig?(Config(internalConfigs)) + // invariant BiteMe(config) + modifies inputConfigsModifies { var tableName: string := tableNamesSeq[i]; @@ -236,49 +289,61 @@ module assert Operations.ValidInternalConfig?(newConfig); var client := new DynamoDbEncryptionTransformsClient(newConfig); + // assert BiteMe(config); + // I'm really sorry, but I can't get the freshness to verify // and my time box has run out of time. assume {:axiom} fresh( - client.Modifies - - ( var tmps14 := set t14 | t14 in config.tableEncryptionConfigs.Values - && t14.keyring.Some? - :: t14.keyring.value; - var tmps14FlattenedModifiesSet: set> := set t0 - | t0 in tmps14 :: t0.Modifies; - (set tmp15ModifyEntry, tmp15Modifies | - tmp15Modifies in tmps14FlattenedModifiesSet - && tmp15ModifyEntry in tmp15Modifies - :: tmp15ModifyEntry) - ) - ( var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values - && t16.cmm.Some? - :: t16.cmm.value; - var tmps16FlattenedModifiesSet: set> := set t0 - | t0 in tmps16 :: t0.Modifies; - (set tmp17ModifyEntry, tmp17Modifies | - tmp17Modifies in tmps16FlattenedModifiesSet - && tmp17ModifyEntry in tmp17Modifies - :: tmp17ModifyEntry) - ) - ( var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values - && t18.legacyOverride.Some? - :: t18.legacyOverride.value.encryptor; - var tmps18FlattenedModifiesSet: set> := set t0 - | t0 in tmps18 :: t0.Modifies; - (set tmp19ModifyEntry, tmp19Modifies | - tmp19Modifies in tmps18FlattenedModifiesSet - && tmp19ModifyEntry in tmp19Modifies - :: tmp19ModifyEntry) - ) - ( var tmps20 := set t20 | t20 in config.tableEncryptionConfigs.Values - && t20.search.Some? - :: set t21 | t21 in t20.search.value.versions :: t21.keyStore; - var tmps20FlattenedModifiesSet: set> := set t0 - , t1 | t0 in tmps20 && t1 in t0 :: t1.Modifies; - (set tmp22ModifyEntry, tmp22Modifies | - tmp22Modifies in tmps20FlattenedModifiesSet - && tmp22ModifyEntry in tmp22Modifies - :: tmp22ModifyEntry) - ) ); - - return Success(client); + client.Modifies + - ( var tmps14 := set t14 | t14 in config.tableEncryptionConfigs.Values + && t14.keyring.Some? + :: t14.keyring.value; + var tmps14FlattenedModifiesSet: set> := set t0 + | t0 in tmps14 :: t0.Modifies; + (set tmp15ModifyEntry, tmp15Modifies | + tmp15Modifies in tmps14FlattenedModifiesSet + && tmp15ModifyEntry in tmp15Modifies + :: tmp15ModifyEntry) + ) - ( var tmps16 := set t16 | t16 in config.tableEncryptionConfigs.Values + && t16.cmm.Some? + :: t16.cmm.value; + var tmps16FlattenedModifiesSet: set> := set t0 + | t0 in tmps16 :: t0.Modifies; + (set tmp17ModifyEntry, tmp17Modifies | + tmp17Modifies in tmps16FlattenedModifiesSet + && tmp17ModifyEntry in tmp17Modifies + :: tmp17ModifyEntry) + ) - ( var tmps18 := set t18 | t18 in config.tableEncryptionConfigs.Values + && t18.legacyOverride.Some? + :: t18.legacyOverride.value.encryptor; + var tmps18FlattenedModifiesSet: set> := set t0 + | t0 in tmps18 :: t0.Modifies; + (set tmp19ModifyEntry, tmp19Modifies | + tmp19Modifies in tmps18FlattenedModifiesSet + && tmp19ModifyEntry in tmp19Modifies + :: tmp19ModifyEntry) + ) - ( var tmps20 := set t20 | t20 in config.tableEncryptionConfigs.Values + && t20.search.Some? + :: set t21 | t21 in t20.search.value.versions :: t21.keyStore; + var tmps20FlattenedModifiesSet: set> := set t0 + , t1 | t0 in tmps20 && t1 in t0 :: t1.Modifies; + (set tmp22ModifyEntry, tmp22Modifies | + tmp22Modifies in tmps20FlattenedModifiesSet + && tmp22ModifyEntry in tmp22Modifies + :: tmp22ModifyEntry) + ) ); + + res := Success(client); + + // var tmps26 := set t26 | t26 in config.tableEncryptionConfigs.Values; + // assert 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(); } // lemma ConstructionOK(config : DdbMiddlewareConfig.Config) From fa1dd02180b9227eaeab2afc2ce8c633dc7cfdcc Mon Sep 17 00:00:00 2001 From: Lucas McDonald Date: Mon, 30 Sep 2024 14:40:08 -0700 Subject: [PATCH 48/48] m --- .../DynamoDbEncryption/src/ConfigToInfo.dfy | 2 + .../src/Index.dfy | 70 ++++++++++++++++++- 2 files changed, 70 insertions(+), 2 deletions(-) diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy index 0de206926..cfe918c88 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy @@ -50,6 +50,8 @@ module SearchConfigToInfo { //= type=implication //# Initialization MUST fail if the length of the list of [beacon versions](#beacon-version-initialization) is not 1. ensures outer.search.Some? && |outer.search.value.versions| != 1 ==> output.Failure? + + ensures ValidSearchConfig(outer.search) { if outer.search.None? { return Success(None); diff --git a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy index c8e9a4a43..d604da9c8 100644 --- a/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy +++ b/DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/Index.dfy @@ -30,6 +30,24 @@ module } predicate ValidWholeSearchConfig(config : ET.DynamoDbTablesEncryptionConfig) + reads + set + t <- config.tableEncryptionConfigs | + config.tableEncryptionConfigs[t].search.Some?, + c <- config.tableEncryptionConfigs[t].search.value.versions | + && c.keySource.multi? + && c.keySource.multi.cache.Some? + && c.keySource.multi.cache.value.Shared? + :: c.keySource.multi.cache.value.Shared, + set + t <- config.tableEncryptionConfigs | + config.tableEncryptionConfigs[t].search.Some?, + f <- config.tableEncryptionConfigs[t].search.value.versions | + && f.keySource.multi? + && f.keySource.multi.cache.Some? + && f.keySource.multi.cache.value.Shared?, + o <- f.keySource.multi.cache.value.Shared.Modifies + :: o { forall t <- config.tableEncryptionConfigs :: @@ -148,7 +166,54 @@ module // tmp27.keySource.multi.cache.value.Shared.ValidState() // } - method {:vcs_split_on_every_assert} DynamoDbEncryptionTransforms(config: AwsCryptographyDbEncryptionSdkDynamoDbTypes.DynamoDbTablesEncryptionConfig) + + // //= specification/dynamodb-encryption-client/ddb-sdk-integration.md#dynamodb-table-encryption-configs + // //# During initialization, this client MUST construct a + // //# [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, + // o <- ( + // (if tableConfig.keyring.Some? then tableConfig.keyring.value.Modifies else {}) + // + (if tableConfig.cmm.Some? then tableConfig.cmm.value.Modifies else {}) + // + (if tableConfig.legacyOverride.Some? then tableConfig.legacyOverride.value.encryptor.Modifies else {}) + // ) + // :: o; + + // var allLogicalTableNames := {}; + // var i := 0; + + // 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 + + // invariant CorrectlyTransferedStructure?(internalConfigs, config) + // invariant AllTableConfigsValid?(internalConfigs) + // invariant ValidConfig?(Config(internalConfigs)) + + // // invariant BiteMe(config) + + // modifies inputConfigsModifies + // { + // 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)); + + // assert SearchConfigToInfo.ValidSearchConfig(inputConfig.search) by { + // assert ValidWholeSearchConfig(config); + // assert inputConfig in config.tableEncryptionConfigs.Values; + // } + // } + // } + + method {:vcs_split_on_every_assert} {:only} DynamoDbEncryptionTransforms(config: AwsCryptographyDbEncryptionSdkDynamoDbTypes.DynamoDbTablesEncryptionConfig) returns (res: Result) //= specification/dynamodb-encryption-client/ddb-table-encryption-config.md#logical-table-name //= type=implication @@ -196,7 +261,7 @@ module invariant AllTableConfigsValid?(internalConfigs) invariant ValidConfig?(Config(internalConfigs)) - // invariant BiteMe(config) + invariant ValidWholeSearchConfig(config) modifies inputConfigsModifies { @@ -282,6 +347,7 @@ module } i := i + 1; + assert SearchConfigToInfo.ValidSearchConfig(inputConfig.search); } assert SearchValidState(DdbMiddlewareConfig.Config(tableEncryptionConfigs := internalConfigs));