https://kotlinlang.org logo
#announcements
Title
# announcements
c

christiangruber

08/22/2019, 11:40 PM
I'm really struggling with something - I'm working on the bazel rules, but as of 1.3.40, if you pull in any version of kotlin after 1.3.31, code that compiles perfectly well under the existing rules breaks on "internal". But I cannot find, for the life of me, any changelog information relating to the compiler enforcing anew, or more strictly, module-membership. Did something change between 1.3.31 and 1.3.40 that caused this increased strictness? It's literally a matter of same code, same build rules and infrastructure, swap out which version of kotlinc.zip it uses, and it builds or doesn't, if it's at or post 1.3.31 respectively. Any ideas? Any changes that didn't make it into the changelog, but which anyone knows about?
Note, the rules have used -Xfriend-paths for quite a while, and they worked in <= 1.3.31
s

StevieB

08/23/2019, 7:20 PM
The difference between the versions that caused me a problem was with a plugin that builds module-info.java of all sorts of things and it baulked over kotlin.native.concurrent because "native" is a java reserved word, that said, I don't know what bazel is or what "-Xfriendpaths" are. But you did mention modules!
c

christiangruber

08/23/2019, 8:42 PM
This is different. This relates to telling the compiler that bit of code "A" should be able to see "internal" stuff in code "B" that's compiled in a different compilation job.