commit | 3b1f8c8e152d8ace71a2448a0a3530f53dff02f0 | [log] [tgz] |
---|---|---|
author | Gary Bressler <geb@fuchsia.infra.roller.google.com> | Tue Mar 26 00:27:05 2024 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Mar 25 17:28:31 2024 -0700 |
tree | 97cd0c96786c6036c5721f09cc21a01a777bb2b9 | |
parent | c39df50ea7ca4d80b7ea9bb54e1bf9261d3b0eb0 [diff] |
[roll] Roll fuchsia [components][dictionaries] Make cycle detection more correct and robust There is a particular class of cml declarations that is less straightforward to add to the dependency graph for cycle detection. Which is the following: - A component `use`s or `offer`s a capability from Self. - The capability is a dictionary or storage capability. - There is a dependency into the capability, which can happen in one of two ways: 1. The capability directly depends on another source (backing_dir for storage, extends for dictionaries). 2. Capabilities are routed into the capability (i.e., offering capabilities into a dictionary). Right now, there is some special logic in `add_strong_dependency` to handle case #1. But case #2 is not tracked correctly (illustrated by new test in this change). This change fixes the logic to handle #2 correctly. It also refactors the code to be more readable and coherent. Instead of bolting special logic into the low-level dependency tracking API, generate these dependencies within the code that validates the manifest, like the others. Original-Bug: 327018873 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1011293 Original-Revision: 6ba2cdb5bc220534a16dc23ecb259e26c83d1f9a GitOrigin-RevId: c6123eceee137448a8b76bc6a4f5a883a432dba3 Change-Id: I079fc97e1e9649603b7bc569852efdfd74c27f04
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia
on Freenode.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party
.