Hello, 1.7.20-1.0.7 is <here>! A major change is that we flipped `blockOtherPlugins` on by default, ...
t
Hello, 1.7.20-1.0.7 is here! A major change is that we flipped
blockOtherPlugins
on by default, meaning that other compiler plugins won't be loaded in KSP's Gradle task. This will prevent most of the unexpected interactions with other compiler plugins. Other than that there are quite a few bug fixes. Thank you for the discussion, bug reports, and pull requests!
❤️ 3
🎉 8
p
Might that ``blockOtherPlugins`` be a reason why showkase https://github.com/airbnb/Showkase is not generating any code with 1.0.7?
t
Can you try to see if turning
blockOtherPlugins
back off would help? by putting a
ksp { blockOtherPlugins = false }
in build.gradle.kts
p
Yes already did and it fixes it
t
🤦 Let me investigate
May I ask for a test case? Or did upgrading to 1.0.7 break
./gradlew test
in Showkase?
p
I can check next week
t
🙏
@Paul Woitaschek Any chance you got some time on repro steps?
p
I actually couldn't
(reproduce)
However in my pet project .7 broke sth: https://github.com/PaulWoitaschek/Voice/pull/1559
t
The build failed when validating
voice.data.repo.internals.Converters
, which referenced some of the symbols that were brought to compile classpath by some other compiler plugins. In 1.0.7 other plugins and their dependencies are NOT included in compiler plugin classpath by default in KSP's task, and therefore they can't be found. Can you check what
voice.data.repo.internals.Converters
depends and add all of them into
compileOnly
dependencies?
p
The same happens. It removed more and more classes and it boils down to classes of another gradle module (the common module, i.e. BookId being referred). The only way to fix that I found was to disable the blocking https://github.com/PaulWoitaschek/Voice/commit/77436370a5d43c5ecbbb85643cc79f2d649b0d1e
t
Looks like
kotlin-serialization
shouldn't be blocked;
ListSerializer
(link) can't be resolved without it. btw, the
BookId
cannot be validate()-ed even with other plugins unblocked. It fails to be validated because of an annotation attached by Compose can't be resolved.
Let me think how to fix this...
and thanks a lot for reporting this issue!
p
@Ting-Yuan Huang I’m still facing this. Did you find a way to fix this?
t
Sorry I'm on a long leave until mid May. @Jiaxiang would you please help with this?
p
Found a way to fix it: instantiating the list serializer everytime inside the function. Then KSP doesn't scan it. But it's a bad solition
If you add it back to a class property the issue will face up again