We currently have ~111 BUILD targets serving our python code, and ~106 test targets:
$ find . -name BUILD | xargs grep python_library | wc -l 111 $ find . -name BUILD | xargs grep python_test | wc -l 106 This presents a non-trivial maintenance burden, and i'm not convinced the benefits are worth it. Now that we have a good IDE story, refactors are painless in the source code, but painful when you need to hand-edit all affected BUILD targets. I can think of several motivations for using fine-grained targets 1. Running specific unit tests with pants 2. Limiting the sources included in a binary 3. Carving out libraries to be published I'm not convinced these benefits outweigh the maintenance burden of these files. I propose we reduce our BUILD targets to ~equal to the number of binaries we produce, possibly with a few for libraries shared between components. Does anyone else have opinions on this? Is there something i'm overlooking? -=Bill