BT

Your opinion matters! Please fill in the InfoQ Survey!

Twitter Releases Pants 1.0 Polyglot Build Tool

| by Michael Redlich Follow 6 Followers on May 28, 2016. Estimated reading time: 1 minute |

A note to our readers: As per your request we have developed a set of features that allow you to reduce the noise, while not losing sight of anything that is important. Get email and web notifications by choosing the topics you are interested in.

Five years in the making, Twitter has released the milestone version 1.0 of their Pants build tool. Occupying a similar space as popular build systems like Maven, Gradle, and Ant, Pants distinguishes itself with support for languages such as C/C++, Java, Python, and Scala. Twitter cites the need for scalability as the driving force behind Pants.

Some of the features introduced in this release include:

  • An easier installation process (more details below).
  • A redefined, consistent deprecation policy.

Twitter initiated the development of Pants when they discovered the build tools they were using at the time couldn’t scale to their growth they were experiencing.  After two years of internally developing Pants for their own use, Twitter contributed Pants to the open source community.

Pants addresses the challenges of maintaining code in a single, large repository (also known as a “monorepo”).  Performance of a complex build can quickly degrade if the version control system and build tool aren’t scalable to meet growth.  Pants can build a large monorepo, by employing features such as fine-grained dependency management, concurrent task execution, and incremental compilation.  Many other popular build systems weren’t designed for this purpose.

Pants can be integrated into existing Java projects, because it recognizes standard source and testing directory naming conventions such as Gradle’s src/main/java and src/test/java.  For developers interested in migrating from Maven to Pants, there are instructions on their website. IntelliJ IDEA users will appreciate the Pants plug-in for the popular IDE.

Pants can be installed in the root folder of any new or existing project as follows:

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

This installation automatically establishes a local executable of Pants with the appropriate permissions and creates an empty pants.ini file ready for editing.

Despite the fact that there is no support for Windows OS, the Pants community is committed to supporting developers using Linux and Mac OS X getting started with Pants.  There are several ways that developers can contribute to the project or request help, namely:

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Hilarious by William Smith

As a Brit I have to say the name "pants" - as in "Twitter's build tool is completely pants" is, um, unfortunate.

Funny though.

Re: Hilarious by Dan Mendes

its not a very nice name to google

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

2 Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT