Fix changes that broke resource filtering, and document related confusion

Recent changes:
1) Started passing all resources to processors, ignoring the filtered
ResourceContainers, and
2) Started loading an unfiltered LocalResourceContainer into binary resource
processing, in addition to the filtered container.

Fix both of these. To fix the former, we need to split the misleadingly-named
'transitiveResourceRoots' (actually transitive resource and assets artifacts)
into transitive resources and assets.

Update resource filtering tests to catch bugs like these.

Also, rename getters for resource containers to make clear that they are not
getters for resources.

Finally, document some weirdness and partially-completed migrations encountered
as part of investigating these issues, and add appropriate TODOs and
deprecation.

RELNOTES: None
PiperOrigin-RevId: 172929936
16 files changed
tree: b692ed84f349622d5532bada9cd9c7ea892c6c2b
  1. examples/
  2. scripts/
  3. site/
  4. src/
  5. third_party/
  6. tools/
  7. .gitattributes
  8. .gitignore
  9. AUTHORS
  10. BUILD
  11. CHANGELOG.md
  12. combine_distfiles.py
  13. combine_distfiles_to_tar.sh
  14. compile.sh
  15. CONTRIBUTING.md
  16. CONTRIBUTORS
  17. ISSUE_TEMPLATE.md
  18. LICENSE
  19. README.md
  20. WORKSPACE
README.md

Bazel

{Fast, Correct} - Choose two

Build and test software of any size, quickly and reliably.

  • Speed up your builds and tests: Bazel only rebuilds what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.

  • One tool, multiple languages: Build and test Java, C++, Android, iOS, Go and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.

  • Scalable: Bazel helps you scale your organization, codebase and Continuous Integration system. It handles codebases of any size, in multiple repositories or a huge monorepo.

  • Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.

Getting Started

Documentation

Contributing to Bazel

See CONTRIBUTING.md

Build Status

Bazel is released in ‘Beta’. See the product roadmap to learn about the path toward a stable 1.0 release.