2021-11-08 14:20:26 +00:00
|
|
|
# How to Contribute
|
|
|
|
|
|
|
|
## Formatting
|
|
|
|
|
|
|
|
Starlark files should be formatted by buildifier.
|
|
|
|
We suggest using a pre-commit hook to automate this.
|
|
|
|
First [install pre-commit](https://pre-commit.com/#installation),
|
|
|
|
then run
|
|
|
|
|
|
|
|
```shell
|
|
|
|
pre-commit install
|
|
|
|
```
|
|
|
|
|
|
|
|
Otherwise later tooling on CI may yell at you about formatting/linting violations.
|
|
|
|
|
|
|
|
## Updating BUILD files
|
|
|
|
|
|
|
|
Some targets are generated from sources.
|
|
|
|
Currently this is just the `bzl_library` targets.
|
|
|
|
Run `bazel run //:gazelle` to keep them up-to-date.
|
|
|
|
|
|
|
|
## Using this as a development dependency of other rules
|
|
|
|
|
|
|
|
You'll commonly find that you develop in another WORKSPACE, such as
|
2021-11-08 14:40:36 +00:00
|
|
|
some other ruleset that depends on bazel_lib, or in a nested
|
2021-11-08 14:20:26 +00:00
|
|
|
WORKSPACE in the integration_tests folder.
|
|
|
|
|
|
|
|
To always tell Bazel to use this directory rather than some release
|
|
|
|
artifact or a version fetched from the internet, run this from this
|
|
|
|
directory:
|
|
|
|
|
|
|
|
```sh
|
2021-11-08 14:40:36 +00:00
|
|
|
OVERRIDE="--override_repository=bazel_lib=$(pwd)/bazel_lib"
|
2021-11-08 14:20:26 +00:00
|
|
|
echo "build $OVERRIDE" >> ~/.bazelrc
|
|
|
|
echo "query $OVERRIDE" >> ~/.bazelrc
|
|
|
|
```
|
|
|
|
|
2021-11-08 14:40:36 +00:00
|
|
|
This means that any usage of `@aspect_bazel_lib` on your system will point to this folder.
|