Hey everyone, we’re excited to announce the alpha ...
# ksp
t
Hey everyone, we’re excited to announce the alpha release of KSP! Big thanks to everyone in this group for all of the helpful feedback over the last 7 months. Check out the release blog post here. In addition to Kotlin 1.4.30 support, this release introduces multiple round processing, better support for incremental processing, and improvements to support for Android build variants. As for next steps, we’re continuing to add features and refine the API during this alpha period. If you’ve been waiting to try KSP, now is a great time to get started with it. Happy symbol processing!
👏 3
🙌 2
🎉 24
The most notable API changes to previous release are •
SymbolProcessor.process()
 will be called multiple times until there is no newly generated file. •
SymbolProcessor.process()
 now returns a 
List<KSAnnotated>
, which will be processed again in the next round. The detailed behavior of multiple round processing can be found here.
e
Congrats on the release, looking forward to trying this out soon 🙂 I have a general question about KSP. Historically KAPT has been fairly buggy, with many fixes to it released over the years. Even in the latest 1.4.30 release there were quite a few KAPT fixes. How closely is your team looking at the bugs and mistakes in KAPT and ensuring that KSP does not include the same bugs? For example, the recent fix for ”
KT-42182
 KAPT: Does not consider generated sources for incremental compilation.” was really important to us and it would be reassuring to know that KSP won’t regress on progress like that. Thanks!
t
I've just subscribed kapt on youtrack and will keep an eye on it. Meanwhile, KSP is open to changes at this alpha stage so please feel free to reach out to us while seeing any bugs or areas to improve, whether they are in the implementation or API design.
🙏 1
Make sense. Please allow me to examine this idea carefully before making any promise or change.
👍 1
e
Hey @Ting-Yuan Huang, this weekend I did hack the KSP code for learning purposes and actually ended up with a working implementation of the proposed API. I'm not sure this has other implications so I opened a PR in my fork repo. Would you mind taking a look? https://github.com/edrd-f/ksp/pull/1 I'd love to contribute to the project, and if these changes make sense, I'll be glad to open the PR on the project repo and keep it updated with
master
.
t
Sorry I'm blocked by other things. Will look into the PR after the release on Wed.
e
Sure, no problem
j
Hi, sorry for delay, just reviewed your PR
❤️ 1
e
Thanks @Jiaxiang. I'll update the branch and apply the changes you mentioned, and then open a PR on the project repo.