commit | 3c2c821e2e7d0bee29f1ae4c13aaa37626d0d76c | [log] [tgz] |
---|---|---|
author | lberki <lberki@google.com> | Wed Oct 21 04:00:04 2020 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Oct 21 04:01:20 2020 -0700 |
tree | 29261b240ba0c1843b57779097a98ed1f2b5c965 | |
parent | 4876aa484e4a38931b46f70196665db099e7ef59 [diff] |
Remove the distinction between visible and non-visible aspects in AspectCollection. This has not been used in the code since unknown commit. I don't claim I understood this completely when I authored that change, but it turns out that the distinction wasn't necessary in the first place. AspectFunction can have incoming dependencies in two ways: first, when traversing down the configured target graph, second, when traversing the graph of aspects attached to a single configured target. In the first case, for reasons of consistency, if another aspect is visible on the configured target attached the aspect is attached to (in the "target" argument of ctx), it should also be visible on the direct dependencies, too. In the second case, When multiple aspects are attached to a configured target and an outer aspect is not interested in an inner one, they are already filtered out when the AspectCollection is computed when traversing down the configured target graph. The test cases that needed to be updated were those when AspectCollection has a different set of propagated and visible aspects, which is not possible anymore. Also update comments with the newly acquired knowledge. RELNOTES: None. PiperOrigin-RevId: 338235579
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only 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 solution. 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.
Follow our tutorials:
See CONTRIBUTING.md