Resource hub
Learn more about Pants and related topics from these talks, posts and podcasts featuring Pants contributors and users.
Case Studies
Describes why and how the maintainers of Bazel's Haskell rules chose to use Pants for a client's Python monorepo. Also covers some gotchas for newcomers.
Self-driving vehicle company's successful journey to adopting Pants locally and in CI.
Coinbase
September 1, 2022 "Part 1: Building a Python ecosystem for efficient and reliable development"Describes how the company developed an efficient, reliable Python ecosystem using Pants, and solved the challenge of managing Python applications at a large scale at Coinbase.
Coinbase
October 27, 2022 "Part 2: Building a Python ecosystem for efficient and reliable development"Explains the technical details of the continuous integration/continuous delivery (CI/CD) infrastructure and dependency management of the company's Python ecosystem.
Watson Orders is an IBM Silicon Valley based technology development group targeting the development of world-class conversational AI. This posts walks through the process of migrating off Bazel, where they maintained 19,000 lines of BUILD file metadata, to Pants where that was slashed to 2,400 lines thanks to dependency inference. CI build time for PRs dropped from 10-12 minutes with Bazel to under 4 minutes with Pants.
...We found it incredibly easy to hook in our existing remote caching systems to Pants, and added other nice features like running tailor in a check-only mode to highlight any inconsistencies in our repo. As a side benefit, Pants has helped us gain better insight into our repository by being able to easily scan for and report the transitive dependencies of modules. Having that insight has helped us plan out how to minimize the coupling of our modules...
About the intersection of Twitter data science, monorepos, Pants, Pex, and the pants-jupyter-plugin.
Tutorials
What if you needed to put strict code convention rules through a linter and apply them with the help of Pants?
A follow-up to "Your first Pants plugin" detailing how to manage code quality via plugins, continuous integration checks, and pre-commit hooks.
A newcomer's walk-through of the code and experience of writing one's first Pants plugin.
Podcasts
The Real Python Podcast
December 16, 2022 "Episode 137: Start Using a Build System & Continuous Integration in Python"What advantages can a build system provide for a Python developer? What new skills are required when working with a team of developers? Pants core maintainer and co-author Benjy Weinberger discusses Pants and getting started with continuous integration (CI).
Happy Path Programming Podcast
December 16, 2022 "Episode 72: Pants Makes Developers Happier and More Productive, with Benjy Weinberger"Pants core maintainer Eric Arellano and Pants contributor Nick Grisafi discuss what Pants team has learned from philosophical concepts such as The Curse of Knowledge, Beginners Mind, and The Power of the Outsider.
Podcast.__init__
February 14, 2022 "Episode 352: Simplify And Scale Your Software Development Cycles By Putting On Pants (Build Tool)"Pants core maintainers Stu Hood, Eric Arellano, and Andreas Stenius guest.
Pants core maintainer Benjy Weinberger guests.
Pants core maintainer Benjy Weinberger guests.
Pants core maintainers Stu Hood and Eric Arellano guest.
Posts & Articles
How the cache solutions offered by CI providers work, why they are often of limited benefit, and how Pants supports a much more effective caching paradigm.
"If you're responsible for your organization's codebase architecture, then at some point you have to make some emphatic choices about how to manage growth in a scalable way..."
Talks
Pants maintainer Josh Reed gives a talk about the challenges about running CI on a large monolith codebase, and mentions Pants as part of the ensemble of soultions to help wrangle the complexity that comes with scale.
Pycon 2022
April 24, 2022 ""Hermetic Environments in Pantsbuild" aka "Fast and Reproducible Tests, Packaging, and Deploys with Pantsbuild""Pants maintainer Chris Neugebauer gives a deep dive into the sandboxing model used by Pants, the priorities driving its design, and the pros and cons.
Chris Neugebauer gives a swift and cheeky introduction to Pants.
A discussion of the advantages of monorepos for Python codebases, and the kinds of tooling and processes we can use to make working in a Python monorepo effective.
A dive into how Pants 2 benefits from making unconventional use of certain Python 3 features.
Cuando hay problemas de rendimiento, las extensiones nativas de Python se empoderan para mejorar el rendimiento del "critical path", y también seguir usando Python y evitar una reinscripción costosa.
Repositories
Example: Python with Pants and PEX
https://github.com/StephanErb/pexampleA running example of the Pants Build system and Python packaging with PEX.
Example: Pylint custom linter rules for a Python project using Pants
https://github.com/DoctrineLegal/demo-pants-pylintA ready-to-use example of a repository that contains a Python project and Pylint custom linter rules
Press
InfoWorld: A brief intro to the Pants build system
February 17, 2022 "A brief intro to the Pants build system"IT Technology Series
December 6, 2021 "New Preview Release Version of Pants Adds Support for Java, Scala, and Go"Interviews
Interview with long-time Pants maintainer Benjy Weinberger, who explains why developers need a simpler open-source build system.
Interview with long-time maintainer Benjy Weinberger.