fix: set correct suggested_update_target for write_source_files macros with multiple files (#120)

3 files changed
tree: b4f0a0d875521e82850685e8b6941396e6b31f9e
  1. .bazelci/
  2. .github/
  3. docs/
  4. e2e/
  5. lib/
  6. tools/
  7. .bazelrc
  8. .bazelversion
  9. .gitattributes
  10. .gitignore
  11. .pre-commit-config.yaml
  12. .prettierignore
  13. BUILD.bazel
  14. CONTRIBUTING.md
  15. internal_deps.bzl
  16. LICENSE
  17. MODULE.bazel
  18. README.md
  19. WORKSPACE
README.md

Aspect's Bazel helpers library

Base Starlark libraries and basic Bazel rules which are useful for constructing rulesets and BUILD files.

This module depends on bazel-skylib. In theory all these utilities could be upstreamed to bazel-skylib, but the declared scope of that project is narrow and it‘s very difficult to get anyone’s attention to review PRs there.

See a full listing of our rules on our docsite.

Need help? This ruleset has support provided by https://aspect.dev.

Copying files

  • copy_directory Copies directories to another package.
  • copy_file Copies files to another package.
  • copy_to_bin Copies a source file to output tree at the same workspace-relative path.
  • copy_to_directory Copies and arranges files and directories into a new directory.
  • write_source_files Write to one or more files or folders in the source tree. Stamp out tests that ensure the sources exist and are up to date.

Transforming files

  • jq A toolchain and custom rule for running jq, a tool that is “like sed for json”.
  • yq A toolchain and custom rule for running yq, a “YAML, JSON and XML processor”.

Manipulating paths

  • directory_path Provide a label to reference some path within a directory, via DirectoryPathInfo.
  • output_files Forwards a subset of the files (via the DefaultInfo provider) from a given target's DefaultInfo or OutputGroupInfo.

Writing rules

  • expand_make_vars Perform make variable and location substitions in strings and templates.
  • paths Useful path resolution methods.
  • transitions Transition sources to a provided platform.
  • utils Various utils for labels and globs.
  • params_file Generate encoded params file from a list of arguments.
  • repo_utils Useful methods for repository rule implementations.
  • run_binary Like skylib's run_binary but adds directory output support.

Generating documentation

  • docs Rules for generating docs and stamping tests to ensure they are up to date.

Installation

From the release you wish to use: https://github.com/aspect-build/bazel-lib/releases copy the WORKSPACE snippet into your WORKSPACE file.