Jacques>This sounds like it will mean we will need to make calcite-core test artifacts available
Test artifacts publication is yet another anti-pattern just like "base test class". This change has been discussed: https://lists.apache.org/thread/fz96p94h016p11g777otqntjxg2oxgh1 If you want to depend on a class from tests, consider moving it to /testkit module: https://github.com/apache/calcite/tree/0899e6c157632ba1c5369a942cfe2be15fb4ed9f/testkit Jacques>We should think about the rules around Kotlin What happens in calcite-core/tests stays in calcite-core/tests :) It is reasonable to assume that testkit module would have dependencies, and testkit would provide API that is usable from Java and other JVM languages. In that regard, Kotlin dependency in testkit is not much different from Quidem or commons-lang3. Consumers might use Quidem if it fits just like they could use Kotlin if it fits. Vladimir