Many Pants operations require extra metadata in the form of [_targets_](🔗), which are defined in `
You can generate these BUILD files by running `
Often, this will be all you need for Pants to work, thanks to sensible defaults and inference, like [inferring your dependencies](🔗). Sometimes, though, you may need to or want to change certain fields, like setting a longer timeout on a test.
You may also need to add some targets that Pants cannot generate, like [`
resources` and `
We recommend running `
./pants tailor --check` in your [continuous integration](🔗) so that you don't forget to add any targets and BUILD files.
To ignore false positives, set `
[tailor].ignore_paths` and `
[tailor].ignore_adding_targets`. See [tailor](🔗) for more detail.
## Formatting BUILD files with Black or Yapf
./pants run update-build-files` will format your BUILD files, using the [Black Python formatter](🔗) by default. The goal will also fix any safe Pants deprecations like renaming target types.
tailor`, we recommend running `
./pants update-build-files --check` in your [continuous integration](🔗).
You can instead use [Yapf](🔗) by setting `
[update-build-files].formatter = "yapf"` in `