Skip to content
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: split dynamodb-mapper-codegen into two modules #1414

Merged
merged 9 commits into from
Sep 23, 2024

Conversation

lauzadis
Copy link
Member

@lauzadis lauzadis commented Sep 20, 2024

This PR was intended to fix an outstanding FIXME in Annotations.kt around switching converterName from a string to KClass<ItemConverter<*>>, but we are blocked by a bug in KSP: google/ksp#1129

Part of addressing that FIXME required splitting dynamodb-mapper-codegen into two modules (ops and schema), which is what I've published here.

Issue #

Description of changes

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@lauzadis lauzadis marked this pull request as ready for review September 20, 2024 19:40
@lauzadis lauzadis requested a review from a team as a code owner September 20, 2024 19:40
Copy link

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK


# https://github.com/google/ksp/blob/main/docs/ksp2.md
ksp.useKSP2=true
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question: Is there anything we should be concerned about with V2? Since it's in beta

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nothing major, they have a list of known issues and other migration tips and none of them applied to us. We will need to move to KSP2 once the next version of Kotlin is released:

KSP1 will not support Kotlin 2.1. Please plan transitioning from KSP1 to KSP2 during Kotlin 2.0.


# https://github.com/google/ksp/blob/main/docs/ksp2.md
ksp.useKSP2=true
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: Please end file with a newline

Comment on lines 10 to 13
plugins {
alias(libs.plugins.kotlin.jvm)
`maven-publish`
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question: Is it necessary to publish the ops codegen module? I thought we only had a build-time use case for it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you're right, I'll remove this publication

Copy link

Copy link

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK

@lauzadis lauzadis merged commit e509449 into feat-ddb-mapper Sep 23, 2024
11 checks passed
@lauzadis lauzadis deleted the fix-item-annotation-2 branch September 23, 2024 19:09
ianbotsf added a commit that referenced this pull request Oct 29, 2024
…lin (#1451)

* initial poc commit of DynamoDB Mapper (#1232)

* add support for Mapper initialization (#1237)

* implement mapper pipeline (#1266)

* initial implementation of codegen for low-level operations/types (#1357)

* initial implementation of secondary index support (#1375)

* Create new codegen module and refactor annotation processor to use it (#1382)

* feat: add Schema generator Gradle plugin (#1385)

* Fix plugin test package

* add attribute converters for "standard" values (#1381)

* fix: schema generator plugin test module (#1394)

* feat: annotation processor codegen configuration (#1392)

* feat: add `@DynamoDbIgnore` annotation (#1402)

* DDB Mapper filter expressions (runtime components) (#1401)

* feat: basic annotation processing (#1399)

* add DSL overloads, paginators, and better builder integration for DDB Mapper ops codegen (#1409)

* chore: split dynamodb-mapper-codegen into two modules (#1414)

* emit DDB_MAPPER business metric (#1426)

* feat: setup DynamoDbMapper publication (#1419)

* DDB Mapper filter expressions (codegen components) (#1424)

* correct docs

* mark every HLL/DDBM API experimental (#1428)

* fix accidental inclusion of expression attribute members in high-level DynamoDB Mapper requests (#1432)

* Upgrade to latest build plugin version

* fix: various issues found during testing (#1450)

* chore: update Athena changelog notes for 1.3.57 (2024-10-18) release (#1449)

* feat: update AWS API models

* feat: update AWS service endpoints metadata

* chore: release 1.3.60

* chore: bump snapshot version to 1.3.61-SNAPSHOT

* feat: initial release of Developer Preview of DynamoDB Mapper for Kotlin

* Fix Kotlin gradle-plugin version

* fix: ddb mapper tests (#1453)

* Bump build plugin version

---------

Co-authored-by: Matas <[email protected]>
Co-authored-by: aws-sdk-kotlin-ci <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants