Not sure if <#C013BA8EQSE|ksp> isn't a better plac...
# opensource
m
Not sure if #ksp isn't a better place to ask this, but let's try here. Since ksp version is coupled with kotlin version, which in turn makes any library some libraries using ksp coupled too, is there a versioning convention recommended for this? E.g. should I use
1.6.21-0.11.0
and
1.7.0-0.12.0
to signify which kotlin version it's compatible with my lib?
👍 1
b
KSP itself is coupled with kotlin version because kotlin compiler plugin API is not stable yet. That does not mean that KSP-API is. So in short, you can use any ksp lib you wish and the only gotcha is to match ksp plugin version with kotlin plugin version on the end-user's project.
🙏 1
Half of the reasons ksp came to be is to provide a stable meta-programming interface for kotlin since kotlin compiler plugin API is unlikely to be stable in the near future
So they do all the heavy lifting of dealing with breaking compiler plugin API while maintaining stable KSP API
m
Yeah, I kind of realised this along the way, hence crossed "any library". My mistake was trying to apple the ksp plugin for the user in my compiler plugin as part of a greater "reduce weird client-side multiplatform ksp config" scenario. More in this thread: https://kotlinlang.slack.com/archives/C19FD9681/p1656511734507899?thread_ts=1653583730.830919&amp;cid=C19FD9681