Twitter выпустил версию 1.0.0 инструмента сборки Python под названием Pants, инструмента сборки с открытым исходным кодом для репозиториев исходного кода в стиле монорепозитория.
Инструмент нацелен на более крупные кодовые базы, с которыми maven и ant не могут справиться, по словам разработчиков, которые говорят, что он разработан для кодовых баз, которые:
Большие и / или быстро растущие
Состоят из множества подпроектов, которые совместно используют значительный объем кода.
Иметь сложные зависимости от сторонних библиотек
Используйте различные языки, генераторы кода и фреймворки.
Штаны поддерживают интересный набор языков в дополнение к Python, включая Scala, Java, JavaScript, Go, C / C ++, Thrift, protobuf и код Android.
Он также хорошо работает с IntelliJ. Согласно сообщению в блоге Twitter,
«Многие разработчики в Твиттере используют IntelliJ, а плагин IntelliJ Pants импортирует проекты Pants в том виде, в каком это понимает IntelliJ».
Штаны использовались внутри Twitter до того, как были переданы сообществу с открытым исходным кодом, и продолжают оставаться предпочтительным инструментом сборки Twitter. У инструмента есть плагин API, который был стабилизирован для этого выпуска, включив кеширование по умолчанию и удалив некоторые ненужные настройки, чтобы упростить настройку.
Twitter начал разработку Pants, чтобы дать ему возможность поддерживать код в больших репозиториях с одним монорепозиторием, где стандартные инструменты сборки испытали снижение производительности по мере роста кодовой базы и усложнения сборки. Pants был разработан, чтобы хорошо справляться с большими монорепозиториями за счет использования таких методов, как распределенный кеш, параллельное выполнение задач, инкрементная компиляция и детальное управление зависимостями.
Версия 1.0.0 имеет стабилизированный API плагинов, кеширование включено по умолчанию, а некоторые ненужные настройки были удалены, чтобы упростить настройку.