BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Twitterが多言語ビルドツールPants 1.0をリリース

Twitterが多言語ビルドツールPants 1.0をリリース

原文(投稿日:https://www.infoq.com/news/2016/05/twitter-release-pants-build-tool)へのリンク

5年間の開発期間を経て,TwitterがビルドツールPantsのマイルストンとなるバージョン1.0をリリースした。MavenやGradle,Antなどと同じ分野のビルドツールであるPantsは,C/C++やJava,Python,Scalaなどの言語をサポートすることで自らを差別化している。Pantsを開発した動機として,Twitterは,スケーラビリティの必要性をあげている。

今回のリリースで導入された機能は次のようなものだ。

  • インストールプロセスの簡易化(詳細は後述)。
  • 一貫性のある非推奨ポリシの再定義。

TwitterがPantsの開発に着手したのは,当時使用していたビルドツールが,彼らの期待するような拡張に対応することができなかったためだ。社内利用を目的として2年間の開発を行なった後,TwitterはPantsをオープンソースコミュニティに提供することとした。

Pantsは,単一かつ大規模なリポジトリ(いわゆる“モノレポ(monorepo)”)を扱う上での問題に対処している。複雑なビルドのパフォーマンスは,バージョン管理システムやビルドツールに十分なスケーラビリティがなければ,急速に低下する。Pantsは,きめ細かな依存性管理やタスクの並列実行,インクリメンタルコンパイルといった機能を駆使して,大規模なモノレポのビルドを可能にしている。他のビルドシステムの大部分は,このような目的のためには設計されていない。

Pantsは,Gradleのsrc/main/javaとsrc/test/javaなど,標準的なソースディレクトリやテストディレクトリの命名規則を理解できるので,既存のJavaプロジェクトに統合することができる。MavenからPantsへのマイグレーションに関心のある開発者には,インストラクションがWebサイトにある。IntelliJ IDEAユーザには,専用のPantsプラグインも用意されている。

Pantsは次のように,新規ないし既存のプロジェクトのルートフォルダにインストールする

curl -L -O https://pantsbuild.github.io/setup/pants && chmod +x pants && touch pants.ini

このインストールは,Pantsのローカル実行ファイルに適切なパーミッションを設定した上で,編集可能な空のpants.iniファイルを生成する。

Windows OSがサポートされていないという問題はあるが,Pantsコミュニティでは現在,LinuxおよびMac OS Xを使用する開発者のPants導入をサポートする開発に取り組んでいる。プロジェクトへのコントリビューションやヘルプを求めるには,次のようないくつかの方法がある。

 
 

この記事を評価

関連性
形式
 
 

この記事に星をつける

おすすめ度
スタイル

BT