[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-7364":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":16,"starSnapshotCount":16,"syncStatus":28,"lastSyncTime":29,"discoverSource":30},7364,"ksp","google\u002Fksp","google","Kotlin Symbol Processing API","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fksp",null,"Kotlin",3434,398,65,170,0,5,22,64.5,"Apache License 2.0",false,"main",true,[],"2026-06-12 04:00:33","# Kotlin Symbol Processing API\n\nWelcome to KSP!\n\nKotlin Symbol Processing (KSP) is an API that you can use to develop\nlightweight compiler plugins. KSP provides a simplified compiler plugin\nAPI that leverages the power of Kotlin while keeping the learning curve at\na minimum. Compared to KAPT, annotation processors that use KSP can run up to 2x faster.\n\nMost of the documentation of KSP can be found on [kotlinlang.org](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-overview.html). Here are some handy links:\n\n* [Overview](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-overview.html)\n* [Quickstart](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-quickstart.html)\n* [Libraries that support KSP](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-overview.html#supported-libraries)\n* [Why KSP?](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-why-ksp.html)\n* [Examples](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-examples.html)\n* [How KSP models Kotlin code](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-additional-details.html)\n* [Reference for Java annotation processor authors](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-reference.html)\n* [Incremental processing notes](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-incremental.html)\n* [Multiple round processing notes](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-multi-round.html)\n* [KSP on multiplatform projects](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-multiplatform.html)\n* [Running KSP from command line](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-command-line.html)\n* [FAQ](https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fksp-faq.html)\n\nFor debugging and testing processors, as well as KSP itself, please check [DEVELOPMENT.md](DEVELOPMENT.md)\n\n## KSP2 Is Here!\nKSP2 is a new implementation of the KSP API. It is faster and easier to use than KSP 1.x. Please refer to the\n[KSP2 introduction](docs\u002Fksp2.md) for more details.\n\n### Switching Between KSP1 And KSP2\nStarting with KSP 2.0.0, KSP2 is enabled by default. You can still switch back to KSP1 with the Gradle property\n`ksp.useKSP2=false`, or the `ksp` extension in Gradle build scripts:\n\n```\nksp {\n    useKsp2 = false\n}\n```\n\n### KSP1 deprecation schedule\nKSP1 will not be able to support newer Kotlin language features and will be deprecated starting from Kotlin 2.2.0.\nThis is because KSP1 is a compiler plugin of K1, which is already deprecated. Also, the Kotlin Gradle Plugin is\nstandardizing its API and disallowing accesses to its internal implementations on which KSP1 relies.\n\nThe KSP team will try to support KSP1 with best efforts so that users have more time to migrate to KSP2, but no promise\ncan be made. Please plan migrating to KSP2 as early as possible.\n\n### Deprecation notice for KSP1\n\nKSP1 is deprecated and support will be removed. We are focusing our development efforts on KSP2 to provide better performance, improved APIs, and a more robust architecture for the future.\n\n#### Compatibility Limitations\nPlease be aware that KSP1 will not be updated to support upcoming major versions of the Android and Kotlin toolchains. Specifically, KSP1 will not be compatible with:\n* Kotlin version `2.3.0` and higher.\n* Android Gradle Plugin (AGP) version `9.0` and higher.\n\nProjects using KSP1 may not behave correctly (or fail the build) if you upgrade to these or any subsequent versions of AGP or Kotlin.\n\nTo ensure your annotation processors continue to function correctly and to take advantage of future tooling advancements, it is crucial to migrate your projects to use KSP2 (which has been the default since beginning of 2025)\n\nPlease refer to the [KSP2 introduction](docs\u002Fksp2.md) for further details.\n\n\n## Nightly Builds\nNightly builds of KSP for the latest Kotlin stable releases are published here:\n\n```\nmaven(\"https:\u002F\u002Fcentral.sonatype.com\u002Frepository\u002Fmaven-snapshots\u002F\")\n```\n\n## Feedback and Bug Reporting\n\n[Please let us know what you think about KSP by filing a Github issue](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fksp\u002Fissues)\nor connecting with our team in the `#ksp` channel in the\n[Kotlin Slack workspace](https:\u002F\u002Fkotlinlang.slack.com\u002F)!\n\nIf you are interested in sending PRs, please also check out the [Contributor guide](CONTRIBUTING.md).\n\n## Ongoing and Future Works\n\nHere are some planned features that have not yet been completely implemented:\n* Improve support to multiplatform. E.g., running KSP on a subset of targets \u002F sharing computations between targets\n* Improve performance. There are a bunch of optimizations to be done!\n* Keep fixing bugs!\n","Kotlin Symbol Processing (KSP) 是一个用于开发轻量级编译器插件的API。它简化了编译器插件的开发过程，同时利用Kotlin语言的优势，相比KAPT，使用KSP的注解处理器运行速度可提升至两倍。KSP提供了简洁易用的API，降低了学习曲线，并且支持增量处理和多轮处理，提高了编译效率。该项目适用于需要快速高效地处理Kotlin代码符号的场景，如构建自定义注解处理器、代码生成工具等。KSP2作为新版本，带来了更快的速度和更友好的使用体验，是当前推荐使用的版本。",2,"2026-06-11 03:11:57","top_language"]