Guidelines for AI coding assistants working with the Apache Paimon codebase.
Prefer the smallest possible build/test scope and use the speedup techniques below to keep feedback loops fast.
mvn -pl <module> -DskipTests compilemvn -pl <module1>,<module2> -DskipTests compilePrefer running the narrowest tests.
mvn -pl <module> -Dtest=TestClassName#methodName testmvn -pl <module> -Dtest=TestClassName testScala tests use scalatest-maven-plugin, not surefire. Use -DwildcardSuites and -Dtest=none:
mvn -pl paimon-spark/paimon-spark-ut -am -Pfast-build -DfailIfNoTests=false \ -DwildcardSuites=org.apache.paimon.spark.sql.WriteMergeSchemaTest \ -Dtest=none test
Use -Pfast-build to skip checkstyle, spotless, enforcer, and rat checks (not for final verification):
mvn -pl <module> -Pfast-build -Dtest=TestClassName#methodName test
Use -am if your target module depends on locally changed modules. Add -DfailIfNoTests=false to avoid failures for modules without tests:
mvn -pl <module> -am -Pfast-build -DfailIfNoTests=false -Dtest=TestClassName#methodName test