Releases: ZacSweers/redacted-compiler-plugin
Releases · ZacSweers/redacted-compiler-plugin
1.12.0
- Fix FIR diagnostics rendering in the IDE. Note this only works in the K2 Kotlin IDE plugin + setting the IntelliJ
kotlin.k2.only.bundled.compiler.plugins.enabled
registry key tofalse
. - When custom annotations are defined, report those names in FIR error messages.
- Support multiple custom annotations.
- For Gradle configuration, the singular
*Annotation
properties are deprecated in favor of plural*Annotations
SetProperty
types. - For CLI consumers, the
redactedAnnotation
andunredactedAnnotation
properties are nowredactedAnnotations
andunredactedAnnotations
.
- For Gradle configuration, the singular
- Build against Gradle
8.12
. - Only report errors in FIR now. Removes the
validateIr
plugin option. - No longer support K1.
- Raise Gradle plugin Kotlin target to
1.9
.
This release goes all in on FIR for in-IDE error reporting!
What's Changed
- Update dependency gradle to v8.12 by @renovate in #274
- Update plugin binaryCompatibilityValidator to v0.17.0 by @renovate in #273
- Fix diagnostics reporting in the IDE by @ZacSweers in #275
- Move checkers to FIR only + run sample tests on KMP by @ZacSweers in #276
- Update dependency io.ktor:ktor-utils to v3.0.3 by @renovate in #277
- Report custom names in FIR errors by @ZacSweers in #278
- Support multiple custom annotations by @ZacSweers in #279
- Update plugin dokka to v2 by @renovate in #272
Full Changelog: 1.11.0...1.12.0
1.11.0
- Update to Kotlin
2.1.0
. This plugin now requires2.1.0
or later. - Build against Gradle
8.11.1
.
What's Changed
- Update ksp to v2.0.20-1.0.25 by @renovate in #250
- Update dependency com.facebook:ktfmt to v0.52 by @renovate in #246
- Update actions/checkout digest to eef6144 by @renovate in #256
- Update plugin spotless to v7.0.0.BETA3 by @renovate in #260
- Update ksp to v2.0.21-1.0.25 by @renovate in #258
- Update kotlin monorepo to v2.0.21 by @renovate in #257
- Update dependency gradle to v8.10.2 by @renovate in #255
- Update plugin mavenPublish to v0.30.0 - autoclosed by @renovate in #259
- Update actions/checkout digest to 11bd719 by @renovate in #261
- Update plugin spotless to v7.0.0.BETA4 by @renovate in #263
- Update dependency gradle to v8.11 by @renovate in #265
- Update kotlinCompileTesting to v0.6.0 by @renovate in #266
- Update dependency com.facebook:ktfmt to v0.53 by @renovate in #264
- Update ksp to v2.0.21-1.0.27 by @renovate in #262
- Update ksp to v2.0.21-1.0.28 by @renovate in #267
- Prep for Kotlin 2.1.0 by @ZacSweers in #254
Full Changelog: 1.10.0...1.11.0
1.10.0
- Update to Kotlin
2.0.20
. - Build against Gradle
8.10
.
What's Changed
- Update ksp to v2.0.0-1.0.22 by @renovate in #225
- Update dependency gradle to v8.8 by @renovate in #224
- Update kotlinCompileTesting by @renovate in #223
- Update dependency dev.zacsweers.autoservice:auto-service-ksp to v1.2.0 by @renovate in #227
- Update dependency com.facebook:ktfmt to v0.51 by @renovate in #226
- Update actions/checkout digest to 692973e by @renovate in #228
- Update plugin mavenPublish to v0.29.0 by @renovate in #229
- Update plugin binaryCompatibilityValidator to v0.15.0 by @renovate in #231
- Update dependency gradle to v8.9 by @renovate in #235
- Update ksp to v2.0.0-1.0.23 by @renovate in #236
- Update plugin binaryCompatibilityValidator to v0.15.1 by @renovate in #234
- Update dependency com.google.truth:truth to v1.4.4 by @renovate in #232
- Update kotlinCompileTesting to v0.5.1 by @renovate in #233
- Update dependency com.google.truth:truth to v1.4.4 by @renovate in #237
- Update plugin binaryCompatibilityValidator to v0.16.0 by @renovate in #238
- Update plugin binaryCompatibilityValidator to v0.16.2 by @renovate in #239
- Update plugin binaryCompatibilityValidator to v0.16.3 by @renovate in #242
- Kotlin 2.0.10 by @ZacSweers in #240
- Update gradle/actions action to v4 by @renovate in #243
- Update dependency gradle to v8.10 by @renovate in #245
- Update to Kotlin 2.0.20 by @ZacSweers in #230
Full Changelog: 1.9.0...1.10.0
1.9.0
- Update to Kotlin
2.0.0
(aka K2). This plugin now assumes 2.0, but can be used with Kotlin 1.9.x as well. - Fully implement validation checks in FIR, allowing the plugin to report errors earlier and also (eventually) have errors appear automatically in the IDE.
- The IR plugin no longer validates by default.
- At the time of writing, I'm not able to get errors to appear in the IDE even if non-bundled plugins are force-enabled. Follow KTIJ-29248 for more info.
- The
enabled
compiler option is no longer required and just defaults to true. - 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.
What's Changed
- Update dependency com.facebook:ktfmt to v0.49 by @renovate in #213
- Update actions/checkout digest to 44c2b7a by @renovate in #216
- Update actions/checkout digest to 0ad4b8f by @renovate in #217
- Update kotlin to 1.9.24 by @renovate in #215
- Omit the stdlib from the compiler plugin and gradle plugin artifacts by @ZacSweers in #218
- Switch back to macos latest by @ZacSweers in #219
- Update actions/checkout digest to a5ac7e5 by @renovate in #220
- Update to K2 by @ZacSweers in #179
Full Changelog: 1.8.1...1.9.0
1.8.1
- Allow
@Unredacted
to be applied to a class, only when a supertype is@Redacted
- Allow
@Redacted
supertypes to be inherited by objects, only when the child does not implement a customtoString
method - Fail compilation when
@Unredacted
and@Redacted
are applied to the same class
Special thanks to @DrewCarlson for contributing to this release!
What's Changed
- Update actions/checkout digest to 1d96c77 by @renovate in #209
- Update actions/checkout digest to 0ad4b8f by @renovate in #211
- Allow
@Unredacted
classes &@Redacted
child objects by @DrewCarlson in #212
Full Changelog: 1.8.0...1.8.1
1.8.0
- New: Support for annotating interfaces and non-final classes as
@Redacted
. In this event, alldata
/value
subclasses will be treated as@Redacted
. - New: Support for
@Unredacted
to explicitly opt out of redacting specific properties in otherwise-redacted classes.@Redacted data class User( @Unredacted val name: String, val phoneNumber: String ) // This will redact `phoneNumber` but not `name` // User(name=Bob, phoneNumber=██)
- Update Kotlin to
1.9.23
.
Special thanks to @DrewCarlson for contributing to this release!
What's Changed
- Update actions/setup-java action to v4 by @renovate in #183
- Update plugin spotless to v6.23.1 by @renovate in #181
- Update dependency gradle to v8.5 by @renovate in #182
- Update dependency com.google.truth:truth to v1.2.0 by @renovate in #188
- Update kotlin monorepo by @renovate in #186
- Update plugin mavenPublish to v0.26.0 by @renovate in #187
- Update plugin spotless to v6.23.3 by @renovate in #184
- Update ksp to v1.9.22-1.0.16 by @renovate in #185
- Update plugin spotless to v6.24.0 by @renovate in #191
- Update dependency org.jetbrains.kotlinx:kotlinx-metadata-jvm to v0.9.0 by @renovate in #190
- Update plugin mavenPublish to v0.27.0 by @renovate in #189
- Update dependency gradle to v8.6 by @renovate in #198
- Update gradle/wrapper-validation-action action to v2 by @renovate in #197
- Update plugin binaryCompatibilityValidator to v0.14.0 by @renovate in #196
- Update dependency com.google.truth:truth to v1.4.0 by @renovate in #194
- Update ksp to v1.9.22-1.0.17 by @renovate in #193
- Update CI and spotless by @renovate in #195
- Update kotlin monorepo to v1.9.23 by @renovate in #203
- Update ksp to v1.9.23-1.0.19 by @renovate in #201
- Update plugin mavenPublish to v0.28.0 by @renovate in #204
- Update dependency com.google.truth:truth to v1.4.2 by @renovate in #200
- Update plugin dokka to v1.9.20 by @renovate in #202
- Update dependency gradle to v8.7 by @renovate in #205
- Update kotlinCompileTesting to v0.4.1 by @renovate in #206
- Update ksp to v1.9.23-1.0.20 by @renovate in #207
- Update gradle/wrapper-validation-action action to v3 by @renovate in #208
- Support Unredacted properties and supertype based redaction by @DrewCarlson in #210
Full Changelog: 1.7.1...1.8.0
1.7.1
1.7.0
- Update to Kotlin
1.9.20
. This plugin now requires1.9.20
. - Update wasm target to
wasmJs
.
What's Changed
- Update actions/checkout action to v4 by @renovate in #169
- Update dependency gradle to v8.4 by @renovate in #175
- Update plugin dokka to v1.9.10 by @renovate in #177
- Update plugin spotless to v6.22.0 by @renovate in #174
- Update actions/checkout digest to b4ffde6 by @renovate in #173
- Update dependency com.facebook:ktfmt to v0.46 by @renovate in #170
- Prepare for Kotlin 1.9.20 by @ZacSweers in #171
Full Changelog: 1.6.1...1.7.0
1.6.1
- Enhancement: Simplify lookup of
KotlinCompilation
'simplementation
configuration name in the Gradle plugin when using the default annotation. - Update to Kotlin
1.9.10
. - Build against Gradle
8.3
.
What's Changed
- Update dependency dev.zacsweers.autoservice:auto-service-ksp to v1.1.0 by @renovate in #157
- Update ksp to v1.9.0-1.0.12 by @renovate in #160
- Update plugin spotless to v6.20.0 by @renovate in #159
- Update dependency org.jetbrains.kotlinx:kotlinx-metadata-jvm to v0.7.0 by @renovate in #154
- Update dependency gradle to v8.2.1 by @renovate in #158
- Update ksp to v1.9.0-1.0.13 by @renovate in #161
- Update kotlinCompileTesting to v0.3.2 by @renovate in #155
- Update dependency macos to v13 by @renovate in #162
- Update dependency gradle to v8.3 by @renovate in #163
- Update kotlin monorepo to v1.9.10 by @renovate in #164
- Update ksp to v1.9.10-1.0.13 by @renovate in #165
- Update plugin spotless to v6.21.0 by @renovate in #166
- Simplify configuration name resolution by @ZacSweers in #168
- Update plugin dokka to v1.9.0 by @renovate in #167
Full Changelog: 1.6.0...1.6.1
1.6.0
- New: Support
value class
types. Note that only annotating the class is supported, as annotating the property would be redundant.
What's Changed
- Update dependency gradle to v8.2 by @renovate in #152
- Support value classes by @ZacSweers in #156
Full Changelog: 1.5.0...1.6.0