# general


01/23/2023, 6:31 AM
My coworker had some thoughts on using pants at his previous job
Copy code
Pants had scalability issues, and both pants and buck are not as easily extensible as Bazel with skylark
Just so I can provide accurate information on whether we should move forward with pants to use bazel, it seems like there are two versions of pants, and he is possibly referring to pants v1? Also, my understanding is pants v2 is known to be used on repos with thousands of python files but pants v1 was proven to work on monorepos a magnitude larger? And pants v2 is more extensible than bazel's skylark, from my understanding?


01/23/2023, 6:49 AM
It's very likely that your coworker's impressions are from Pants v1, and it was definitely limited compared to v2 (and bazel).
What language(s) are in use in this repo?
At least for Python, I would argue that Pants v2 is a better, more scalable choice than Bazel. And it is more extensible in the sense that the plugin APIs use full typed async Python 3, not limited starlark. Also the Pants v2 rules have more expressive power - they can request inputs dynamically based on runtime information (in build system terminology they are "monadic" vs Bazel's "applicative" API, see this paper if you like gory science details)
So yeah, some of the bad impressions of Pants v1 are justified, but Pants v2 is a radically different system.


01/23/2023, 7:04 AM
appreciate your tips. I will take a look. We are using primarily python and he wants to get builds for pyspark. I searched this channel and found some examples of pyspark integrations that I will show it to him.