-
Notifications
You must be signed in to change notification settings - Fork 654
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
codegen: Add support for list and maps generated as value members instead of pointer #887
Conversation
d6abc63
to
168e993
Compare
Have you ran |
Yeah verified that all integration tests pass successfully. |
...ws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XmlMemberDeserVisitor.java
Outdated
Show resolved
Hide resolved
...aws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XmlShapeDeserVisitor.java
Show resolved
Hide resolved
...ws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XmlMemberDeserVisitor.java
Show resolved
Hide resolved
Looks like smithy-go dep version is not correct? CI for Java fails as it doesn't find methods from aws/smithy-go#232 |
That's probably result of bad merge. There where no Go changes in the smithy-go change. I won't be able to have CI succeed on this PR until the smithy change is merged because it depends on Java changes in that pr. |
Fixes up documentation comments that were missed in aws#887
Fixes up documentation comments that were missed in #887
Updates the SDK code generation to make use of the new smithy
NullableIndex
and smithy-go'sGoPointableIndex
. These utilities allow the SDK's code generation to be aware of API shapes and members that are nullable, and can be rendered as values by the code generation instead of pointers.This update updates the SDK's code generation types to be value instead of pointer in most cases.
[]string
instead of[]*string
map[string]string
instead ofmap[string]*string
.Number and boolean types that are not boxed (not pointer) will not serialize their zero value unless they are members of a list or map.
This change also significantly refactors how the SDK represents nullability and pointability when generation types and members from an API model. Utilities were added in the smithy-go change that help ensure more consistent logic through the sdk's code generation.
Depends on aws/smithy-go#232
Fixes #896