Skip to content

Releases: google/ksp

1.6.20-RC2-1.0.4

24 Mar 00:21
Compare
Choose a tag to compare
1.6.20-RC2-1.0.4 Pre-release
Pre-release

KSP 1.0.4 release for Kotlin 1.6.20-RC2

1.6.20-RC-1.0.4

01 Mar 22:34
Compare
Choose a tag to compare
1.6.20-RC-1.0.4 Pre-release
Pre-release

KSP 1.0.4 release for Kotlin 1.6.20-RC

1.6.10-1.0.4

23 Feb 01:05
Compare
Choose a tag to compare

This is a hotfix version of 1.0.3, where an ABI incompatibility was introduced by accident.

Issues fixed:
#849 1.0.3 broke build
#854 Compilation error is not thrown from KSPLogger logging error

PRs merged:
#857 Fix ABI compatibility
#860 Recover CONST modifier in descriptor-based property impl. (Thanks to @Jeffset !)
#864 Allow empty list to asType
#865 Option to toggle workaround for KT-30172

1.6.10-1.0.3

16 Feb 23:30
Compare
Choose a tag to compare

New API

#827 APIs for api/compiler versions and target info
#841 Add Resolver.overrides(overrider: KSDeclaration, overridee: KSDeclaration, containingClass: KSClassDeclaration): Boolean

Important Changes

The output folder has also changed from build/generated/ksp/<source set>/<kotlin or java or classes or resources>/ to build/generated/ksp/<platform>/<source set>/<kotlin or java or classes or resources>/ to accommodate HMPP, where sources sets can be shared among different platforms.

Issues fixed

#611 Consider exposing language version, api version, and jvm target as options
#767 Exception in DepInvalidator
#773 getJavaWildcard ignores wildcard annotations
#774 getJavaWildcard doesn't handle nested references
#775 KSFunctionDeclaration.isAbstract returns true for static methods inside java interface.
#778 Default annotation param value is null when the param is a local Enum
#784 Null default value for an annotation argument of an inner annotation type
#787 Enum declaration constructors are not private
#789 MemoizedSequence might skip elements if concurrently collected
#792 KSP needs a variant of Resolver.overrides that receives the containing ClassDeclaration
#794 getSymbolsWithAnnotation does not handle import aliases
#796 Room + KSP : KSErrorType cannot be cast to class KSTypeImpl
#797 Unknown error in kotlin compiler
#798 KSP throws IllegalStateException when resolving type of property in inner class (Java source)
#810 Add an API for retrieving JVM target source version
#813 incompatibility with -Xuse-fir
#814 incremental: dirtiness propagation among recursive outputs and dependencies
#816 parent and parentDeclaration of the generated value and valueOf static function from Java enums are null

Contributors

Thank you for your pull requests!
@yigit
@ZacSweers
@Jeffset

1.6.20-M1-1.0.2

08 Feb 21:14
Compare
Choose a tag to compare
1.6.20-M1-1.0.2 Pre-release
Pre-release

KSP 1.0.2 release for Kotlin 1.6.20-M1

Kotlin 1.6.20 enabled hierarchical structure by default. Therefore there is a noticeable change in KSP's configuration with regard to metadata compilation for common source set in multiplatform. Previously, kspMetadata was specified to apply processors to metadata compilation for common source set. Now it becomes kspCommonMainMetadata by default or more generally ksp<shared source set>Metadata.

The output folder has also changed from build/generated/ksp/<source set>/<kotlin or java or classes or resources>/ to build/generated/ksp/<platform>/<source set>/<kotlin or java or classes or resources>/ to accommodate HMPP, where sources sets can be shared among different platforms.

Other than that this is a rebuild with the new Kotlin compiler.

1.6.10-1.0.2

14 Dec 20:54
Compare
Choose a tag to compare

KSP 1.0.2 release for Kotlin 1.6.10

1.6.0-1.0.2

13 Dec 18:57
Compare
Choose a tag to compare

New APIs
#732 Introduced Resolver.getJavaWildcard(reference: KSTypeReference): KSTypeReference which propagates declaration-site variance into use-site whenever applicable. It mimics the behavior of the JVM backend which utilizes Java wildcard in the generated code.

Issues Fixed
#717 Provide APIs to resolve positional types for parameters
#723 1.5.31-1.0.1 is not compatible with Gradle 6.8
#727 KSClassDeclaration.getDeclaredProperties should list constructor params first
#728 getSymbolsWithAnnotation not working properly with JS/IR
#744 kspJs failing with "Collection has more than one element." when processing code in commonMain
#752 Logger.error() does not quit compiler as expected
#764 Unable to load class 'org.gradle.util.internal.VersionNumber'

Contributors
Thank you for your pull requests!
@ansman
@elect86
@glureau
@liujingxing
@ZacSweers

1.6.10-RC-1.0.1

08 Dec 02:27
Compare
Choose a tag to compare
1.6.10-RC-1.0.1 Pre-release
Pre-release

KSP 1.0.1 release for Kotlin 1.6.10-RC

1.6.0-1.0.1

16 Nov 21:09
Compare
Choose a tag to compare

This release bumps kotlin compiler version to 1.6.0.

1.5.31-1.0.1

12 Nov 00:55
Compare
Choose a tag to compare

Highlights

  • Per source set ksp configuration, which allows processors to be applied individually for each source set
  • new ksp option: allWarningsAsErrors
  • supported transient, volatile, strictfp and synchronized modifier check for jvm platform.
  • supported KSReferenceElement for KSTypeReference from KSAnnotation.annotationType in Java source and KSFunction for java * constructors.
  • Various performance optimizations
  • See full list of fixed bugs here

Credit to community contributors

@AlexBeggs
@bennyhuo
@danysantiago
@daugeldauge
@elect86
@evant
@gavra0
@natario1
@ZacSweers