More generally, as Stu said, think of targets in B...
# general
h
More generally, as Stu said, think of targets in BUILD files as a way of saying to Pants “here is some metadata about the code in this dir”. In many cases (e.g., all those
python_sources()
) the metadata is empty. And I get that this is annoying. The reason tailor creates those is that in the past they were necessary. And we still find them to be useful in practice, because they are an obvious place to add metadata when you need to. But - you could replace them with a smaller number of higher-level
python_sources()
with recursive globs over their subdirs, if you wanted to. Tailor is smart enough to not try to regenerate for files that are already owned by some higher-up target.