Pants — это быстрая, расширяемая и юзер-френдли сборочная система для различных языков. Сейчас разработчики сфокусированы на Python, Shell, Docker и Go, но версия 2.9 позволяет работать с Java и Scala.
Главным изменением в релизе 2.9 стала поддержка Java и Scala. Эти языки ещё находятся на стадии тестирования, поэтому разработчики добавили минимальное количество фич, достаточное для работы с ними:
- nailgun для JVM компиляторов и инструментов;
- ScalaTest для Scala и JUnit для Java и Scala;
- Scalafmt и Google Java Format;
- поддержку Scala Repl;
- Protobuf-генерацию кода со ScalaPB;
- дебаггинг через ./pants test --debug $file;
- плагины для Scala-компилятора;
- поддержку компиляции кода между Java и Scala;
- поддержку Coursier.
Разработчики улучшили видимость во время выполнения и кэширования для тестов. Pants 2.9 теперь рендерит статус тестов во время выполнения и кэширования в отдельном файле для всех поддерживаемых языков.
В интеграции с Docker исправили баги и улучшили документацию, а также обновили бэкенд Docker.
Go теперь имеет свой файл с подключаемыми пакетами — go_package. Он позволяет устанавливать test_timeout для пакетов в секундах, включать файлы resource для использования во время выполнения кода и файлы files для тестирования.
Подробнее прочитать об обновлениях можно на официальном сайте Pants.