Skip to content

google/ksp

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

New behavior changes a lot in terms of synthetic members and ordering,
it is infeasible to adjust test processor logic to get tests aligned.
d21eb39

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
August 28, 2023 02:34
August 31, 2021 16:34
July 20, 2023 16:42
September 26, 2023 21:07
September 13, 2023 04:59
September 18, 2020 17:05
February 2, 2023 16:25
August 31, 2021 16:34

Kotlin Symbol Processing API

Welcome to KSP!

Kotlin Symbol Processing (KSP) is an API that you can use to develop lightweight compiler plugins. KSP provides a simplified compiler plugin API that leverages the power of Kotlin while keeping the learning curve at a minimum. Compared to KAPT, annotation processors that use KSP can run up to 2x faster.

Most of the documentation of KSP can be found on kotlinlang.org. Here are some handy links:

Feedback and Bug Reporting

Please let us know what you think about KSP by filing a Github issue or connecting with our team in the #ksp channel in the Kotlin Slack workspace!

If you are interested in sending PRs, please also check out the Contributor guide.

Ongoing and Future Works

Here are some planned features that have not yet been completely implemented:

  • Support new Kotlin compiler
  • Improve support to multiplatform. E.g., running KSP on a subset of targets / sharing computations between targets
  • Improve performance. There are a bunch of optimizations to be done!
  • Make the IDE aware of the generated code
  • Keep fixing bugs!