Releases: ZacSweers/MoshiX
Releases · ZacSweers/MoshiX
0.28.0
- Make moshi-ir Gradle plugin compatible with Gradle's incubating "Project Isolation" feature.
- Update to Kotlin
2.0.20
. Note that this release requires Kotlin2.0.20
or later for moshi-ir due to changes in the IR API. It may work on older releases, but it's untested. - Update Guava to
33.3.0-jre
. - Build against KSP
2.0.20-1.0.24
. - Build against Gradle
8.10
.
Special thanks to @ansman for contributing to this release!
What's Changed
- Update plugin moshix to v0.27.1 by @renovate in #604
- Update dependency com.google.guava:guava to v33.2.1-jre by @renovate in #607
- Update plugin lint to v8.6.0-alpha04 by @renovate in #606
- Update dependency gradle to v8.8 by @renovate in #608
- Update kotlinCompileTesting to v0.5.0 by @renovate in #610
- Update dependency com.facebook:ktfmt to v0.50 by @renovate in #611
- Update plugin lint to v8.6.0-alpha05 by @renovate in #612
- Update dependency com.android.tools.build:gradle to v8.5.0 by @renovate in #614
- introduce immutable-adapters in readme.md by @beigirad in #615
- Update dependency dev.zacsweers.autoservice:auto-service-ksp to v1.2.0 by @renovate in #613
- Update ksp to v2.0.0-1.0.22 by @renovate in #609
- Update dependency com.facebook:ktfmt to v0.51 by @renovate in #617
- Update plugin lint to v8.6.0-alpha06 by @renovate in #618
- Update plugin mavenPublish to v0.29.0 by @renovate in #620
- Update plugin lint to v8.6.0-alpha07 by @renovate in #619
- Fix generated Proguard rules not using valid fully qualified name by @mhelder in #626
- Update dependency com.google.truth:truth to v1.4.3 by @renovate in #625
- Update plugin lint to v8.6.0-alpha08 by @renovate in #627
- Update dependency gradle to v8.9 by @renovate in #635
- Update ksp to v2.0.0-1.0.23 by @renovate in #636
- Update dependency com.android.tools.build:gradle to v8.5.1 by @renovate in #637
- Update dependency com.google.truth:truth to v1.4.4 by @renovate in #638
- Update kotlinpoet to v1.18.0 - autoclosed by @renovate in #631
- Update plugin lint to v8.6.0-beta01 by @renovate in #634
- Update dependency org.assertj:assertj-core to v3.26.3 by @renovate in #633
- Update plugin kotlinBinaryCompatibilityValidator to v0.15.1 by @renovate in #632
- Update plugin moshix to v0.27.2 by @renovate in #629
- Update kotlinCompileTesting to v0.5.1 by @renovate in #628
- Update plugin kotlinBinaryCompatibilityValidator to v0.16.0 by @renovate in #640
- Update plugin kotlinBinaryCompatibilityValidator to v0.16.1 by @renovate in #641
- Update plugin kotlinBinaryCompatibilityValidator to v0.16.2 by @renovate in #642
- Update kotlinpoet to v1.18.1 by @renovate in #639
- Update plugin lint to v8.6.0-beta02 by @renovate in #644
- Update plugin kotlinBinaryCompatibilityValidator to v0.16.3 by @renovate in #646
- Update dependency com.android.tools.build:gradle to v8.5.2 by @renovate in #649
- Update plugin lint to v8.6.0-rc01 by @renovate in #648
- Update ksp to v2.0.10-1.0.24 by @renovate in #645
- Update dependency gradle to v8.10 by @renovate in #650
- Update dependency com.google.guava:guava to v33.3.0-jre by @renovate in #651
- Update to Kotlin 2.0.20 by @ZacSweers in #621
- Update gradle/actions action to v4 by @renovate in #647
- Update plugin lint to v8.7.0-alpha07 by @renovate in #655
- Replace all usages of findProperty by @ansman in #652
New Contributors
Full Changelog: 0.27.1...0.28.0
0.27.2
- [moshi-proguard-rule-gen] Fix proguard rule gen when using nested classes or packages with soft-keyword segments.
- [docs] Add immutable-adapters in
README.md
. - Build against KSP to
2.0.0-1.0.22
. - Build against Gradle
8.8
.
Special thanks to @mhelder and @beigirad for contributing to this release!
What's Changed
- Update plugin moshix to v0.27.1 by @renovate in #604
- Update dependency com.google.guava:guava to v33.2.1-jre by @renovate in #607
- Update plugin lint to v8.6.0-alpha04 by @renovate in #606
- Update dependency gradle to v8.8 by @renovate in #608
- Update kotlinCompileTesting to v0.5.0 by @renovate in #610
- Update dependency com.facebook:ktfmt to v0.50 by @renovate in #611
- Update plugin lint to v8.6.0-alpha05 by @renovate in #612
- Update dependency com.android.tools.build:gradle to v8.5.0 by @renovate in #614
- introduce immutable-adapters in readme.md by @beigirad in #615
- Update dependency dev.zacsweers.autoservice:auto-service-ksp to v1.2.0 by @renovate in #613
- Update ksp to v2.0.0-1.0.22 by @renovate in #609
- Update dependency com.facebook:ktfmt to v0.51 by @renovate in #617
- Update plugin lint to v8.6.0-alpha06 by @renovate in #618
- Update plugin mavenPublish to v0.29.0 by @renovate in #620
- Update plugin lint to v8.6.0-alpha07 by @renovate in #619
- Fix generated Proguard rules not using valid fully qualified name by @mhelder in #626
- Update dependency com.google.truth:truth to v1.4.3 by @renovate in #625
- Update plugin lint to v8.6.0-alpha08 by @renovate in #627
New Contributors
Full Changelog: 0.27.1...0.27.2
0.27.1
- [moshi-sealed] Improve moshi-sealed KSP error messages.
- [moshi-ir] Fix fallback adapter support in IR code gen not recognizing Moshi parameters to primary constructors.
- [moshi-sealed and moshi-ir] Check for same subtypes before erroring on duplicate labels in moshi-sealed IR.
- [moshi-proguard-rule-gen] Fix proguard rule gen not capturing non-sealed subtypes.
- [moshi-proguard-rule-gen] Don't write empty proguard rule files if not rules were necessary.
- Update KotlinPoet to
1.17.0
.
What's Changed
- Update plugin moshix to v0.27.0 by @renovate in #596
- Update kotlinpoet to v1.17.0 by @renovate in #598
- Update dependency org.assertj:assertj-core to v3.26.0 by @renovate in #599
- Update plugin lint to v8.6.0-alpha03 by @renovate in #597
- Update kotlinCompileTesting to v0.5.0-alpha08 by @renovate in #595
- Fix fallback adapter support in IR code gen not recognizing Moshi parameters to primary constructors by @ZacSweers in #600
- Improve moshi-sealed KSP error messages by @ZacSweers in #601
- Check for same subtypes before erroring on duplicate labels by @ZacSweers in #602
- Fix proguard rule gen not capturing non-sealed subtypes. by @ZacSweers in #603
Full Changelog: 0.27.0...0.27.1
0.27.0
Update to K2
This release updates to K2, aka Kotlin 2.0.0
. This also builds against KSP 2.0.0-1.0.21
.
- [moshi-metadata-reflect] Update to stable kotlin metadata API that ships in K2. The new transitive dependency is now
org.jetbrains.kotlin:kotlin-metadata-jvm:2.0.0
. - [ksp] All KSP processors are tested against both KSP 1 and the in-beta KSP2.
- [moshi-ir] Support K2 IR API changes. We may explore building out FIR support for better IDE support in the future, but for now the entire implementation remains in an IR-only plugin.
What's Changed
- Update plugin moshix to v0.26.0 by @renovate in #588
- Update dependency com.android.tools.build:gradle to v8.4.1 by @renovate in #590
- Update to K2 by @ZacSweers in #510
Full Changelog: 0.26.0...0.27.0
0.26.0
New: Publish a new moshi-immutable-adapters
artifact with support for kotlinx.collections.immutable.
Gradle dependency
dependencies {
implementation("dev.zacsweers.moshix:moshi-immutable-adapters:<version>")
}
In code
val moshi = Moshi.Builder().add(ImmutableCollectionsJsonAdapterFactory()).build()
Supported types
ImmutableCollection
ImmutableList
ImmutableSet
ImmutableMap
PersistentCollection
PersistentList
PersistentSet
PersistentMap
Misc
- Omit the stdlib from transitive dependencies on the compiler plugin and Gradle plugin artifacts. Both kotlinc and Gradle impose their own versions on the classpath.
- Update Moshi to
1.15.1
. - Update kotlinx-metadata to
0.9.0
. - Update KotlinPoet to
1.16.0
. - Update Kotlin to
1.9.24
. - Update KSP to
1.9.24-1.0.20
. - Update Guava to
33.2.0-jre
. - Compile against Gradle
8.7
.
What's Changed
- Update ksp to v1.9.21-1.0.15 by @renovate in #514
- Update plugin moshix to v0.25.1 by @renovate in #513
- Update plugin spotless to v6.23.1 by @renovate in #512
- Update kotlinpoet to v1.15.2 by @renovate in #518
- Update dependency com.android.tools.build:gradle to v8.2.0 by @renovate in #520
- Update dependency gradle to v8.5 by @renovate in #515
- Update actions/setup-java action to v4 by @renovate in #516
- Update plugin spotless to v6.23.2 by @renovate in #517
- Update kotlinpoet to v1.15.3 by @renovate in #523
- Update dependency com.google.truth:truth to v1.2.0 by @renovate in #527
- Update plugin mavenPublish to v0.26.0 by @renovate in #526
- Update dependency com.google.guava:guava to v33 by @renovate in #525
- Update ksp to v1.9.21-1.0.16 by @renovate in #524
- Update plugin spotless to v6.23.3 by @renovate in #522
- Update dependency com.android.tools.build:gradle to v8.2.1 by @renovate in #531
- Update dependency org.assertj:assertj-core to v3.25.1 by @renovate in #529
- Update kotlin to 1.9.22 and kotlinx-metadata to 0.8.0 by @renovate in #519
- Update ksp to v1.9.22-1.0.16 by @renovate in #528
- Update plugin mavenPublish to v0.27.0 by @renovate in #535
- Update plugin spotless to v6.25.0 by @renovate in #537
- Update kotlinpoet to v1.16.0 by @renovate in #539
- Update dependency com.google.truth:truth to v1.4.0 by @renovate in #541
- Update dependency com.android.tools.build:gradle to v8.2.2 by @renovate in #542
- Update dependency org.assertj:assertj-core to v3.25.2 by @renovate in #543
- Update plugin kotlinBinaryCompatibilityValidator to v0.14.0 by @renovate in #544
- Update dependency com.squareup.moshi:moshi to v1.15.1 by @renovate in #545
- Update ksp to v1.9.22-1.0.17 by @renovate in #540
- Update moshi to v1.15.1 by @renovate in #547
- Update gradle/wrapper-validation-action action to v2 by @renovate in #548
- Update dependency org.assertj:assertj-core to v3.25.3 by @renovate in #550
- Update dependency com.google.truth:truth to v1.4.1 by @renovate in #552
- Add lint by @ZacSweers in #553
- Update plugin dokka to v1.9.20 by @renovate in #561
- Update dependency com.google.truth:truth to v1.4.2 by @renovate in #559
- Update plugin lint to v8.4.0-alpha12 by @renovate in #560
- Update dependency com.android.tools.build:gradle to v8.3.0 by @renovate in #558
- Update ksp to v1.9.22-1.0.18 by @renovate in #557
- Update plugin lint to v8.4.0-alpha13 by @renovate in #562
- Update ksp to v1.9.23-1.0.19 by @renovate in #563
- Update dependency com.android.tools.build:gradle to v8.3.1 by @renovate in #566
- Update retrofit to v2.10.0 by @renovate in #567
- Update dependency com.google.guava:guava to v33.1.0-jre by @renovate in #565
- Update plugin mavenPublish to v0.28.0 by @renovate in #564
- Small plugin improvements by @ZacSweers in #568
- Update dependency gradle to v8.7 by @renovate in #570
- Update kotlinCompileTesting to v0.4.1 by @renovate in #571
- Update plugin lint to v8.4.0-beta01 by @renovate in #569
- Update plugin lint to v8.5.0-alpha03 by @renovate in #573
- Update retrofit to v2.11.0 by @renovate in #572
- Update dependency com.android.tools.build:gradle to v8.3.2 by @renovate in #577
- Update plugin lint to v8.5.0-alpha04 by @renovate in #576
- Update ksp to v1.9.23-1.0.20 - autoclosed by @renovate in #575
- Update plugin lint to v8.5.0-alpha06 by @renovate in #578
- Update gradle/wrapper-validation-action action to v3 by @renovate in #579
- Update dependency com.facebook:ktfmt to v0.49 by @renovate in #580
- Update dependency com.android.tools.build:gradle to v8.4.0 by @renovate in #582
- Update dependency com.google.guava:guava to v33.2.0-jre by @renovate in #583
- Update plugin lint to v8.5.0-alpha08 by @renovate in #581
- Update kotlin & ksp to v1.9.24-1.0.20 by @renovate in #584
- Update plugin lint to v8.5.0-beta01 by @renovate in #585
- Implement kotlinx immutable adapters by @ZacSweers in #586
- Omit stdlib from compiler and gradle artifact deps by @ZacSweers in #587
Full Changelog: 0.25.1...0.26.0
0.25.1
- Update to Kotlin
1.9.21
. - Update to KSP
1.9.20-1.0.14
. - Update to KotlinPoet
1.15.1
.
What's Changed
- Update kotlinpoet to v1.15.0 by @renovate in #508
- Update plugin moshix to v0.25.0 by @renovate in #505
- Update ksp to v1.9.20-1.0.14 by @renovate in #506
- Update kotlin monorepo to v1.9.21 by @renovate in #511
- Update kotlinpoet to v1.15.1 by @renovate in #509
Full Changelog: 0.25.0...0.25.1
0.25.0
- Update to Kotlin
1.9.20
. moshi-ir now requires Kotlin1.9.20
. - Update to KSP
1.9.20-1.0.13
. - Update to Guava
32.1.3-jre
. - Build against Gradle
8.4
.
What's Changed
- Update plugin moshix to v0.24.3 by @renovate in #493
- Update dependency gradle to v8.4 by @renovate in #497
- Update plugin dokka to v1.9.10 by @renovate in #501
- Update dependency com.google.guava:guava to v32.1.3-jre by @renovate in #500
- Update plugin spotless to v6.22.0 by @renovate in #496
- Update okhttp to v4.12.0 by @renovate in #502
- Update dependency com.facebook:ktfmt to v0.46 by @renovate in #494
- Prepare for Kotlin 1.9.20 by @ZacSweers in #495
Full Changelog: 0.24.3...0.25.0
0.24.3
- Fix: Enable KSP proguard rule gen again in moshi-ir. We accidentally encountered a bug in KSP and work around it now.
What's Changed
- Update plugin moshix to v0.24.2 by @renovate in #490
- Update actions/checkout action to v4 by @renovate in #491
- Enable KSP proguard rule gen in ir tests + fix them! by @ZacSweers in #492
Full Changelog: 0.24.2...0.24.3
0.24.2
- Fix: Use correct platform-specific configuration for applying KSP dependency in moshi-ir.
- Fix: Don't enable moshi-ir/ksp on non-JVM/Android platforms until they're supported upstream.
What's Changed
Full Changelog: 0.24.1...0.24.2
0.24.1
- Fix: Use correct name for each
KotlinCompilation
'simplementation
configuration in KMP projects. Note that Moshi still only supports JVM/Android. - Update to Kotlin 1.9.10.
- Update to KSP 1.9.10-1.0.13.
- Compile against Gradle 8.3.
- Remove shaded anvil-compiler-utils dependency from moshi-ir.
What's Changed
- Update kotlinCompileTesting to v0.3.2 by @renovate in #472
- Update ksp to v1.9.0-1.0.13 by @renovate in #473
- Update plugin moshix to v0.24.0 by @renovate in #467
- Update dependency com.android.tools.build:gradle to v8.1.0 by @renovate in #469
- Update dependency com.google.guava:guava to v32.1.2-jre by @renovate in #471
- Remove anvil compiler utils by @ZacSweers in #474
- Update dependency gradle to v8.3 by @renovate in #475
- Update dependency com.android.tools.build:gradle to v8.1.1 by @renovate in #479
- Update plugin dokka to v1.9.0 by @renovate in #484
- Update plugin spotless to v6.21.0 by @renovate in #483
- Update kotlin monorepo to v1.9.10 by @renovate in #481
- Fix configuration name reading in gradle by @ZacSweers in #487
Full Changelog: 0.24.0...0.24.1