Hi all, <KSP version 2.3.10> has been released and...
# ksp
m
Hi all, KSP version 2.3.10 has been released and includes the following changes and bug fixes: • Fix OOMs caused by unstopped coroutine Dispatcher threads by moving KSP task cache to a gradle build service (#2817) • Sanitize ':' in internal-name module suffix so KSP works with Kotlin 2.4.0 default module names (#2964) • Filter source file trees in KspAATask to restore NO-SOURCE skipping behaviour (#2947) • Fix R-class resolution in KSP when AGP 9 built-in Kotlin is enabled (#2857) • Fix KSP2 incremental cache path normalization mismatch (#2854) • Normalize line endings for KspAATask source roots to prevent cross-platform remote build cache misses (#2849) • Fix bug where KSP incremental compilation does not consider library class references in annotations (#3011) • Consume all Kotlin sources in KSP to support other code generators (#3001) • Fix configuration cache invalidation in klib cross-compilation check (#3014) • Memoized hash code for KSTypeImpl to speed up processing (#2896) • Fix incorrect name generation for data classes annotated with @JvmRecord (#2813) • Include kotlinx.coroutines in the distributed uber jar symbol-processing-aa-embeddable (#2938) • New debugging features for incremental compilation, including additional logging and dependency graph visualization (#3015) • Deprecate the ksp(...) Gradle configuration in Kotlin Multiplatform (KMP) projects in favor of target-specific configurations (#2956) Thanks! The KSP Team
🎉 8
e
I tried to update to this new version in our Airbnb Android project and ran into a breaking issue. It seems like code generation isn't working the same for test sources and I'm not seeing the expected generated output for our tests, so they fail I don't have further details or a reproducer to share yet but if necessary I can try to put that together for you and post an issue on GitHub On the bright side, the benchmarking of our most expensive KSP task does show an 18% speed up with this change, which is exciting
I suppose my failing test issue is caused by this? github.com/google/ksp/pull/2956 I need to set
ksp.allow.all.target.configuration
to true explicitly now. It would be nice if this was clearer in the release notes 🙂
j
Hi, Eli thanks for the feedback. I will see what we can do about it. In the meantime, the
ksp(...)
configuration is deprecated for KMP projects, so you may want to specify your targets explicitly. See kotlinlang.org/docs/ksp-multiplatform.html
👍 1