-
Notifications
You must be signed in to change notification settings - Fork 23
chore: Adopt SmithyDafnyMakefile.mk, fix nightly build #638
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: Adopt SmithyDafnyMakefile.mk, fix nightly build #638
Conversation
…to robin-aws/use-smithy-dafny-makefile-and-fix-nightly-build
…fix-nightly-build
seebees
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that the biggest changes are in the C# proj file.
We need to make sure that local development and published artifacts are both easy and safe.
AwsEncryptionSDK/runtimes/net/Generated/AwsEncryptionSdk/TypeConversion.cs
Show resolved
Hide resolved
AwsEncryptionSDK/dafny/AwsEncryptionSdk/Model/AwsCryptographyEncryptionSdkTypes.dfy
Show resolved
Hide resolved
Co-authored-by: seebees <ryanemer@amazon.com>
seebees
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LKTM
## 4.1.0 ### Notes - [(#646)](10daadf) Enforces input constraints. Prior to this fix, the AWS Encryption SDK in .NET (ESDK-NET) failed to enforce user input constraints. Input shapes without required members set would always result in a `NullReferenceException`. Now, the ESDK-NET will throw its own Exceptions when illegal user input is submitted. ### Fixes * fix: throw an exception when MemoryStream instance has an empty backing array [(#633)](550c714) ### Features * feat: enforce input constraints [(#646)](10daadf) ### Maintenance * fix(CI): Daily CI uses correct workflow [(#641)](771835e) * chore(ci): fix role to assume [(#622)](c1f04fc) * chore(CI/CD): add semantic release automation [(#647)](e7b5392) * chore: Adopt SmithyDafnyMakefile.mk, fix nightly build [(#638)](cd19979) * chore(CI): add interop tests to daily ci [(#640)](c9ad018) * chore: only run net48 on windows and use node 17 to run integration-node [(#639)](d6c62fb) * chore(.NET): Add ESDK-Net v4.0.1 generated vectors[(#636)](efef497) * chore(NET-SupportPolicy): Mark 3.x as Support [(#631)](3c36f7a) * chore: Add manual trigger for nightly_dafny.yml [(#629)](419b1cb) * chore: split vc gen on some methods to migrate to Dafny 4.4 [(#627)](fdc65ca) * test: restore CODEOWNERS and daily CI [(#624)](ff823ac) * chore: update template to point to public repo [(#626)](2b07a39) * chore: remove unused release step in test-prod [(#623)](9883933)
Description of changes:
Replaces nearly all of the
SharedMakefile.mkwith the commonsmithy-dafny/SmithyDafnyMakefile.mkmakefile, just retaining configuration variables specific to this repo (such as the path to thesmithy-dafnysubmodule). Uses the new features in that makefile andsmithy-dafnyitself to make the projects forwards-compatible with the latest Dafny nightly prerelease, and hence will fix the nightly build once merged - see here for a manual run.Highlights of the changes:
smithy-dafnyto regenerate code, either to check that the output matches what's checked in (in a new separate codegen workflow) or to be compatible with newer versions of Dafny in the nightly build (in existing workflows).smithy-dafnycode generation automatically formats, all the generated code has trivial layout changes.smithy-dafnyNote that this changes the Makefile targets as a result:
CODEGEN_CLI_ROOT(thesmithy-dafnysubmodule copy) so that variable is now optionalpolymorph_codegenalso now apply to dependencies transitively, just like targets such astranspile_java. Because the current state of the MPL submodule doesn't use the same smithy-dafny version or Makefile targets, this doesn't work by default, so for working locally it will generally be better to only generate for the current library viamake polymorph_codegen PROJECT_DEPENDENCIES=Open questions for reviewer:
AWSSDK.Coreversion slightly to make this work allowed? Or is there a more conservative way to deal with the version conflict you get when using the head of MPL?By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.