There are duplicate type definitions when a composite attribute is used multiple times as the range key for an index. This PR moves the logic for these struct definitions to be calculated per composite attribute rather than per index. I also ended up finding a bug with the tests - not all of an object's required fields are specified for saving to the db, which causes null pointer dereferences. This specifically happens for a the required fields for composite attribute since we have to access the fields when creating the attribute.
[x] Run make build
[x] Run make generate
[x] Update the current version in the /VERSION file.
There are duplicate type definitions when a composite attribute is used multiple times as the range key for an index. This PR moves the logic for these struct definitions to be calculated per composite attribute rather than per index. I also ended up finding a bug with the tests - not all of an object's required fields are specified for saving to the db, which causes null pointer dereferences. This specifically happens for a the required fields for composite attribute since we have to access the fields when creating the attribute.
make build
make generate
/VERSION
file.