Skip to content

fix: resolve properties for @Serializable target classes#21

Merged
wilmveel merged 1 commit intomainfrom
fix/serializable-target-support
Mar 26, 2026
Merged

fix: resolve properties for @Serializable target classes#21
wilmveel merged 1 commit intomainfrom
fix/serializable-target-support

Conversation

@wilmveel
Copy link
Copy Markdown
Contributor

Summary

  • Remove FirBinaryDependenciesModuleData check in resolvePropertyFields() that prevented property resolution for @Serializable target classes
  • Refactor IntegrationTest to support additional Gradle plugins and dependencies via Options
  • Add SerializableTest with three integration tests: auto-map with @Serializable target, @Serializable with sealed interface, and fully auto-mapped @Serializable fields

Closes #20

Test plan

  • SerializableTest.shouldCompile_autoMapWithSerializableTarget passes
  • SerializableTest.shouldCompile_autoMapWithSerializableAndSealedInterface passes
  • SerializableTest.shouldCompile_allFieldsAutoMappedWithSerializable passes
  • Existing integration tests still pass (no regression from removing the binary dependency check)

🤖 Generated with Claude Code

Remove the FirBinaryDependenciesModuleData check that prevented property
resolution for types involving binary dependencies. This blocked mapping
to @serializable target classes because the serialization compiler plugin
adds synthetic properties from binary module data.

Also refactor IntegrationTest to support additional Gradle plugins and
dependencies, enabling integration tests with kotlinx.serialization.

Closes #20

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@wilmveel wilmveel merged commit 11d6252 into main Mar 26, 2026
1 check passed
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.

Auto-mapping in DSL block fails when target has @Serializable annotation

1 participant