Skip to content

Conversation

kgangineni
Copy link
Collaborator

@kgangineni kgangineni commented Oct 17, 2025

Summary of changes

  • Implementation of Kotlin serialization for all serializables
  • Removes Gson from the demo project, replaces it with Kotlin serialization

Checklist

  • Added a changelog entry

Authors

List GitHub usernames for everyone who contributed to this pull request.

kgangineni and others added 7 commits August 22, 2025 15:08
* ⏺ Configure ABI validation in subprojects and add CI check
  - Add apiCheck task to GitHub Actions static analysis workflow
  - Demo project excluded from API check

* Apply apiCheck plugin on a per-module basis until we solidify Gradle best practices for making plugin declarations DRY.
- serialize request using kotlin serialization in confirm-payment-source
- integrate kotlin serialization with TrackingEventsAPI
- Remove PaymentsJSON.kt
- Migrate to typed data classes for the response
- simplify CardResponseParser.kt
- added GraphQLResponse, GraphQLRequest
- used kotlin serialization for serialization and deserialization in GraphQLClient
- migrated DataVaultPaymentMethodTokensAPI to use kotlin serialization and strong data types
- update API
- change extensions to generic JSONObject
- handle non 200 response from graphQL
* Migrate Demo app to Kotlin Serialization
  - Add kotlinx.serialization plugin and dependencies
  - Create strongly-typed serializable models for API requests and responses
  - Implement KotlinSerializationConverterFactory for Retrofit
  - Update API services to use typed request/response models
  - Replace manual JSON parsing with automatic deserialization
  - Update all use cases to use the new serialization models

* fix detekt issues

* rename properties to match name in Request/Response structure
@kgangineni kgangineni marked this pull request as ready for review October 20, 2025 19:26
@kgangineni kgangineni merged commit cd6abd4 into develop Oct 20, 2025
8 checks passed
@kgangineni kgangineni deleted the feature/kotlin_serialization branch October 20, 2025 20:02
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.

2 participants