Releases: google/ksp
1.5.31-1.0.1
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
andsynchronized
modifier check for jvm platform. - supported
KSReferenceElement
forKSTypeReference
fromKSAnnotation.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
1.6.0-RC-1.0.1-RC
This release upgrade compiler to 1.6.0-RC, and includes bug fixes for KSP 1.0.1 release.
1.6.0-RC-1.0.0
This release upgrades to Kotlin 1.6.0-M1
1.6.0-M1-1.0.0
This release upgrades to Kotlin 1.6.0-M1
1.5.31-1.0.0
Highlights
This release upgrade compiler version to 1.5.31.
1.5.30-1.0.0
Issues Fixed
#172 Composite KClass cast to KSType will be omitted wrapper type
#107 isError for a non-existing type returns false
#159 getVisibility for KSDeclaration returns java package private as public in .class dependencies
PRs Merged
#602 Add experimental KSDeclarationContainer.declarationsInSourceOrder
#604 handle annotation argument of type kotlin array reflection object
#606 Allowing getting sources from compile tasks
#607 replace all KSTypeImpl creation with additional check for error type
#608 Do not support binary generation for K/N yet
#610 Fix incorrectly placed APIs.
1.5.30-1.0.0-beta09
Highlights
- Supported getting annotation instances if they are available at compile time.
- added
containingFile
as extension properties onKSNode
for getting containing file for symbols (if applicable).
PRs merged
#508 Add support for KSAnnotated annotation methods
#592 Creating PsiFiles multiple times might cause issue on certian platforms, filter new files by file name instead.
#594 support checked exception look up for property accessors
#596 change KSDeclaration.containingFile to an extension property on KSNode
#597 Disable isIntermoduleIncremental when isIncremental is false
#598 Bump Gradle to 7.2
#599 fix isVisibleFrom() for java package visibility
#600 fix visibility check for public override
Resolved issues
#507 getJvmCheckedException does not work for already compiled files
#505 support checked exception query for accessors
#503 javax.annotation.processing.Generated is no longer visible in beta08
#427 build failure due to "Descriptor wasn't found for declaration CLASS"
#53 Annotation values that are default are not visible in KSP
#582 TypeAlias generics are not visible as use-site
1.5.30-1.0.0-beta08
Highlights
- Updated to Kotlin 1.5.30
- Added new API:
KSNode.parent
for accessing parent nodes directly.
Issues Resolved
#376 Some descriptor implementations for sources reports Origin.CLASS
#506 getSymbolsWithAnnotation does not handle type aliases
#476 KSP is unable to resolve self referencing java types in java sources
#194 KSTypeReference implementation without concrete PSI elements are falsely equal regardless of location.
#503 KSValueParameter has no reference to the KSDeclaration where is present
#570 KSP on multiplatform fails to skip disabled targets.
#491 hasBackingField returns wrong value for companion properties
#354 Provide the ability to check if a nullable lambda parameter type has the SUSPEND modifier
#566 InvalidUserDataException with native (androidNative?) targets
#175 Resolver.overrides fails for generics
#529 hasBackingField returns false for lateinit properties
1.5.21-1.0.0-beta07
Highlights
- starting this release, KSP binary has moved from gMaven to MavenCentral repo.
- Kotlin native is now supported.
- ksp.incremental.intermodule is enabled by default
Issues resolved
#60 Using KSP with Kotlin Multiplatform
#411 Publish artifacts to be used with kotlinc command line
#490 KspTask does not support gradle remote cache
#240 java.lang.IllegalStateException: Cannot find descriptor for values
#439 NPE
#518 Configuration on demand does not work with KSP
#540 Publish KSP on Maven Central?
1.5.21-1.0.0-beta06
Highlights
- Supported finer-grained tracking of changes in classpath / different modules for incremental processing. Previously, whenever there was a change in the classpath, a full reprocessing would be triggered. Now only dirty classes that are reachable will invalidate sources. This is disabled by default, however. Please enable it by setting the Gradle property
ksp.incremental.intermodule=true
. - Supported default values in annotations.
- Supported checked exceptions in compiled classes.
- Supported processing without Kotlin sources.
Issues Resolved
#53 Annotation values that are default are not visible in KSP
#233 Incremental processing for classpath changes
#493 Code does not get generated if project has only Java source files
#496 Execution failed for task ':foo:kspKotlin'. > Extension of type 'KspExtension' does not exist.
#507 getJvmCheckedException does not work for already compiled files
#511 About incremental aggregating processor
#531 The AbstractCompile.destinationDir property has been deprecated. This is scheduled to be removed in Gradle 8.0.