[roll] Roll fuchsia [cargo-gnaw] Enforce visibility on versioned targets

Fuchsia targets are not supposed to directly depend on the versioned
targets in third_party/rust_crates/BUILD.gn, since many of those targets
are only approved for indirect use through dependencies. This uses GN
visibility to make sure these dependencies can only be used in tree.

As part of this, we found a few indirect dependencies are being used in
tree, which this exposes:

* cfg-if 1.0.0
* either 1.5.0
* lru-cache 0.1.2
* rustls-native-certs 0.3.0
* tower-service 0.3.0

Finally, we saw that build/sdk/meta is built upon valico, which uses url
1.7.2, even though the rest of fuchsia is using url 2.1.0. Updating
valico to the latest version is non-trivial, so instead this patch then
uses visibility to make sure that only that target can use the old url
crate.

Original-Bug: 72581
Original-Bug: 91750

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/634161
Original-Revision: d1be76a30e297708ca9a81f4b3f13726b9efdd1c
GitOrigin-RevId: 92103e0562201870437fda39a138af9b43d4daef
Change-Id: Id9d9a3b443b298385b553e3f208178a0489a25e8
1 file changed
tree: 2a9fe98f642ad6431e6d838572828c1156aeee6f
  1. infra/
  2. third_party/
  3. cts
  4. firmware
  5. flower
  6. jiri.lock
  7. minimal
  8. prebuilts
  9. README.md
  10. stem
  11. test_durations
  12. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

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.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.