# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# -------------- READ BEFORE EDITING ---------------
# This file describes the third-party packages used by Rust code and
# how they should be built.
#
# Every edit to this file should be followed by:
# - fx update-rustc-third-party
#
# Always request non-default features you use. This can sometimes get
# missed if another third-party crate in our build requests the same
# feature you use: your builds will usually work, but `fx rustdoc` will
# fail.
#
# More information is available in
# https://fuchsia.dev/fuchsia-src/development/languages/rust/external_crates .

[package]
name = "fuchsia-third-party"
version = "0.1.0"

[dependencies]
# Keep this sorted alphabetically, please.
aead = { version = "0.4.2", features = ["std"] }
aes = "0.8.4"
aes-gcm = "0.10.1"
aes-gcm-siv = { version = "0.11.1", features = ["std"] }
ahash = { version = "0.8.6", default-features = false, features = [ "runtime-rng" ] }
ansi_term = "0.12.0"
anyhow = "1.0.75"
arbitrary = { version = "1.0.3", features = ["derive"] }
argh = "0.1.12"
arrayref = "0.3.5"
arrayvec = "0.7.1"
ash = { version = "0.37.0", features = ["linked"], default-features = false }
assert_matches = "1.5.0"
async-channel = "1.8.0"
async-lock = "2.3"
async-stream = "0.3.5"
async-trait = "0.1.71"
atty = "0.2.11"
base64 = "0.21.7"
bincode = "1.3"
bitfield = "0.14.0"
bitflags = { version = "2.4.1", features = ["serde"] }
bit-set = "0.5.3"
bit-vec = { version = "0.6.3", features = [ "serde" ] }
blocking = "1.0.2"
bstr = { version = "1.5.0", default-features = false, features = [ "std" ] }
bumpalo = { version = "3.2.1", features = [ "collections" ] }
byteorder = { version = "1.4.3", features = ["i128"] }
bytes = "1.0.1"
camino = { version = "1.1.1", features = ["proptest1", "serde1"] }
# NB: morally we'd like to default-features = false here, but we have
# transitive dependencies on this crate that *do* enable default features.
# Cargo does something called "feature unification"
# (https://doc.rust-lang.org/cargo/reference/features.html#feature-unification)
# which causes a particular crate to be compiled with the superset of all
# features requested of it by any of its dependents. In this case, that means
# we get chrono with its default dependencies regardless of what we write here
# so long as any of our dependencies themselves depend on chrono with its
# default dependencies. In particular, an old version of the time crate is an
# optional dependency of chrono that is enabled by default; we don't want to
# write default-features = false here lest we prevent some unrelated crate
# upgrade by causing it to unexpectedly remove features we ourselves rely on.
#
# The sanity of this behavior is debated in
# https://github.com/rust-lang/cargo/issues/4463. Until there's an escape
# hatch, all we can do is document and shed a silent tear while we wait for the
# ecosystem to migrate away from time 0.1.
chrono = "0.4.11"
chrono-english = "0.1.7"
clap = "2.34"
crc = "1.8.1"
criterion = { version = "0.2", default-features = false }
crossbeam = "0.8.0"
crossbeam-utils = "0.8.14"
crypto-mac = { version = "0.11.1", features = ["std"] }
cfg-if = "1.0.0"
chacha20 = "0.9.0"
csv = "1.2.1"
darling = "0.12.0"
data-encoding = "2.1.2"
derivative = { version = "2.2.0", features = ["use_core"] }
derive_builder = "0.11.1"
derp = "0.0.14"
difference = "2.0.0"
digest = "0.10.7"
downcast-rs = "1.2.0"
dyn-clone = "1.0.5"
ecdsa = { version = "0.14.3", features = ["pkcs8"] }
elliptic-curve = { version = "0.12.3", features = [ "ecdh" ] }
either = "1.5.0"
eui48 = { version = "1.1.0", default-features = false, features = ["serde", "disp_hexstring"] }
event-listener = "2.5.1"
# TODO(https://fxbug.dev/112722): We're importing this explicitly for now, but eventually
# it will be imported by valico and the dt-schema tool.
# Remove this line when valico uses fancy-regex.
fancy-regex = "0.8"
fatfs = "0.3.6"
flate2 = { version = "1.0.14", default-features = false, features = ["rust_backend"] }
fragile = "=1.0.0"
futures = "=0.3.19"
futures-executor = "=0.3.19"
futures-io = "=0.3.19"
futures-lite = "1.11.3"
futures-test = "=0.3.19"
futures-util = "=0.3.19"
getrandom = { version = "0.2.10" }
glob = "0.3.0"
gpt = "3.0.0"
half = "1.6.0"
handlebars = "4.3.5"
heck = "0.3.1"
hex = "0.3.2"
hmac = "0.12.1"
hkdf = "0.12.3"
hound = "3.5.0"
humansize = "1.1.1"
http = "0.2.4"
# TODO(https://fxbug.dev/100964): We intentionally did not enable http2, since we're
# currently not using it on Fuchsia. Please see this ticket if you want to
# enable it.
hyper = { version = "0.14.19", default-features = false, features = ["stream", "http1", "client", "server"] }
indexmap = "1.9.2"
iota = "0.2.2"
itertools = "0.10"
itoa = "0.4"
json5format = "0.2.6"
lazy_static = "1.4"
libc = { version = "0.2.149", features = ["extra_traits"] }
libm = "0.2.1"
linked-hash-map = "0.5.3"
lock_api = "0.4.11"
log = { version = "0.4.20", features = ["std"] }
lru-cache = "0.1.2"
maplit = "1.0"
macro_rules_attribute = "0.1.3"
maybe-owned = "0.3.2"
md-5 = "0.10.5"
memchr = "2.7.1"
memoffset = "0.7.1"
miniz_oxide = "0.3.6"
mockall = "0.9"
netlink-packet-core = "0.7.0"
netlink-packet-route = "0.20.0"
netlink-packet-sock-diag = "0.4.2"
netlink-packet-utils = "0.5.2"
netlink-packet-generic = "0.3.3"
nix = "0.26.2"
nom = { version = "5.0.0", default-features = false, features = ["std", "regexp_macros"] }
nom_locate = "2.0.0"
num = { version = "0.4.0", features = ["rand"] }
num-derive = "0.4.2"
num-traits = "0.2.18"
omaha_client = "0.1"
once_cell = "1.17.0"
p256 = { version = "0.11.1", features = ["pem", "serde"] }
pkcs8 = "0.9.0"
paste = "1.0"
pathdiff = { version = "0.2.1", features = ["camino"] }
pem = "0.8.3"
percent-encoding = "2.1"
pest = "2.7.8"
pest_derive = "2.7.8"
pin-project = "1.0.11"
pin-project-lite = "0.2.13"
png = "0.14" # saved for future use
pretty_assertions = "1.2.1"
prettytable-rs = "0.8.0"
proptest = "1.0.0"
proptest-derive = "0.3.0"
prost = "0.11.0"
prost-build = "0.11.1"
prost-types = "0.11.1"
rand = { version = "0.8", features = ["small_rng"] }
rand_xorshift = "0.3"
rayon = "1.2.1"
ref-cast = "1.0.9"
regex = "1.7.3"
regex-syntax = "0.8.3"
ring = "0.16.20"
rustc-hash = "1.0.1"
rustls = { version = "0.19.1", features = ["dangerous_configuration"] }
rustyline = "2.1.0"
schemars = { version = "0.8", features = ["chrono", "preserve_order"] }
scopeguard = "1.1.0"
scrypt = "0.10.0"
serde = { version = "1.0.147", features = ["derive"] }
serde_cbor = "0.11.1"
serde_derive = "1.0.147"
serde_json = "1.0.87"
serde_json5 = "0.1.0"
serde_repr = "0.1.7"
sha1 = "0.10.5"
sha2 = "0.10.2"
signature =  "1.4.0"
siphasher = "0.3.10"
slab = "0.4.7"
smallvec = {version= "1.8", features = ["const_generics", "const_new", "union"]}
socket2 = { version = "0.5.5", features = ["all"] }
splines = "2.2.0"
static_assertions = "1.1.0"
strsim = "0.10.0"
structopt = "0.2.14"
tempfile = "3.2"
termtree = "0.4.1"
tuf = { version = "0.3.0-beta11", default-features = false, features = ["hyper"] }
termion = "1.5.3"
test-case = "3.2.1"
textwrap = "0.11.0"
thiserror = "1.0.57"
tokio-rustls = "0.22.0"
toml = "0.5"
toml_edit = "0.2.1"
tracing = { version = "0.1.40", default-features = false, features = ["std", "attributes"] }
tracing-core = "0.1.32"
tracing-log = "0.1.3"
tracing-mutex = { version = "0.3.0", features = ["lockapi", "parkinglot"] }
typed-builder = "0.10.0"
unicase = "2.7.0"
untrusted = "0.7.1"
url = "2.3"
uuid = { version = "1.1.2", features = ["serde", "v4"] } # move ?
valico = "2.4.2"
vte = "0.3"
webpki = "0.21"
xml-rs = "0.8"
unic-char-range = "0.9"
unic-ucd-block = "0.9"
unicode-segmentation = "1.10"
unicode-width = "0.1.3"
unicode-xid = "0.2.0"
utf8parse = "0.1"
vm-device = "0.1.0"
walkdir = "2.2.7"
which = "4.0.2"
zerocopy = { version = "0.8.0-alpha.5", features = ["derive", "simd"] }
zstd = "0.11.2"

[dependencies.tracing-subscriber]
version = "0.3.15"
default-features = false
features = ["env-filter", "fmt", "registry", "std", "tracing-log"]

# Target-side only dependencies
[target.'cfg(target_os = "fuchsia")'.dependencies]
# do not add back without verifying certificate transparency is ready to use - see https://fxbug.dev/25100
# ct-logs = "0.6"
euclid = { version = "0.22.1", features = [ "serde" ] }
getopts = "0.2"
hyper-rustls = { version = "0.22.1", default-features = false }
lipsum = "0.6.0"
openat = "0.1.17"
pretty = "0.5.2"
rust_icu_common = { version = "5.0.0", default-features = false, features = ["renaming"] }
rust_icu_sys = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] }
rust_icu_ucal = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_uchar = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] }
rust_icu_udat = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_udata = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_uenum = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env"] }
rust_icu_uloc = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] }
rust_icu_unorm2 = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env", "icu_version_67_plus"] }
rust_icu_ustring = { version = "5.0.0", default-features = false, features = ["renaming", "icu_version_in_env"] }
tokio = { version = "=1.25.2", default-features = false }
trust-dns-proto = { version = "0.22.0", default-features = false, features = ["testing"] }
trust-dns-resolver = { version = "0.22.0", default-features = false, features = ["testing"] }
ttf-parser = "0.10.1"
unicode-normalization = "0.1"
vk-sys = "0.7.0"

# Host-side only dependencies
[target.'cfg(not(target_os = "fuchsia"))'.dependencies]
async-executor = "1.5.0"
async-fs = "1.6.0"
async-io = "1.12.0"
async-net = "1.7.0"
cargo_metadata = "0.14.1"
crossterm = "0.19"
easy-parallel = "3.1"
fs_extra = "1.2.0"
fuse3 = { version = "0.6.1", features = ["tokio-runtime", "unprivileged"] }
home = "0.5.3"
hyper-rustls = { version = "0.22.1", default-features = false, features = ["rustls-native-certs"] }
indoc = "1.0.3"
loom = "0.7.1"
# TODO(https://fxbug.dev/106164) Remove this explicit mio dependency when it can be
# pulled in automatically by tokio
mio = { version = "0.8.9", features = ["net", "os-ext", "os-poll"] }
notify = { version = "5.1.0", default-features = false, features = ["macos_fsevent"] }
# See b/42169853, not used for target-side code to avoid system-wide impact of yield in spinloops.
parking_lot = "0.9"
petgraph = { version = "0.6.2" }
proc-macro2 = { version = "1.0.79", features = ["span-locations"] }
pulldown-cmark = "0.6.0"
quote = "1.0.35"
rustfix = "0.6.1"
rustls-native-certs = "0.5.0"
serde_yaml = "0.9.14" # To use on Fuchsia, serde_yaml and unsafe-libyaml will need to be re-audited.
serial_test = "0.5.1" # Not for use on Fuchsia, only for a single process.
shared_child = "1.0.0"
signal-hook = "0.3.17"
simplelog = "0.10.2"
strum = "0.25.0"
strum_macros = "0.25.3"
syn = { version = "2.0.52", features = ["full", "visit", "visit-mut", "extra-traits"] }
synstructure = "0.12.1"
tar = "0.4.25"
term_grid = "0.2.0"
termios = "0.3.2"
tinyjson = "2.5.0"
# TODO(https://fxbug.dev/106164) Enable the "rt" and "net" features here once gnaw
# supports target-specific feature resolution
tokio = { version = "=1.25.2", default-features = false }
tokio-stream = "0.1.14"
zip = { version = "0.5.5", default-features = false, features = ["deflate"] }

# For crates we don't want to vendor, follow instructions at
# //docs/development/languages/rust/external_crates.md.
[patch.crates-io]
# Keep each section sorted alphabetically, please.

### In-tree Crates: crates which are on crates.io but which we build from our in-tree copy
fuchsia-cprng = { path = "intree/fuchsia-cprng" }

### Ask to Patch: crates which require a policy exception to contribute to.
aho-corasick = { path = "ask2patch/aho-corasick" }
byteorder = { path = "ask2patch/byteorder" }
csv = { path = "ask2patch/csv" }
csv-core = { path = "ask2patch/csv-core" }
memchr = { path = "ask2patch/memchr" }
regex-automata = { path = "ask2patch/regex-automata" }
same-file = { path = "ask2patch/same-file" }
termcolor = { path = "ask2patch/termcolor" }
walkdir = { path = "ask2patch/walkdir" }

### Empty Forks: empty forks kept only for satisfying cargo's resolution
cc = { path = "empty/cc" }
crossterm_winapi = { path = "empty/crossterm_winapi" }
ctor = { path = "empty/ctor" }
miow = { path = "empty/miow" }
ntapi = { path = "empty/ntapi" }
output_vt100 = { path = "empty/output_vt100" }
redox_syscall = { path = "empty/redox_syscall" }
rustversion = { path = "empty/rustversion" }
wasi-0_10_1 = { path = "empty/wasi-0.10.1", package = "wasi" }
wasi-0_10_0_preview1 = { path = "empty/wasi-0.10.0+wasi-snapshot-preview1", package = "wasi" }
wasi-0_11_0_preview1 = { path = "empty/wasi-0.11.0+wasi-snapshot-preview1", package = "wasi" }
web-sys = { path = "empty/web-sys" }
wepoll-ffi = { path = "empty/wepoll-ffi" }
winapi = { path = "empty/winapi" }
winapi-util = { path = "empty/winapi-util" }
windows = { path = "empty/windows" }
windows-sys-0_42_0 = { package = "windows-sys", path = "empty/windows-sys-0.42.0" }
windows-sys-0_45_0 = { package = "windows-sys", path = "empty/windows-sys-0.45.0" }
windows-sys-0_48_0 = { package = "windows-sys", path = "empty/windows-sys-0.48.0" }
windows-targets = { path = "empty/windows-targets" }

### Forks: vendored crates whose code doesn't match the upstream version
async-io = { path = "forks/async-io" }
fatfs = { path = "forks/fatfs" }
fuse3 = { path = "forks/fuse3" }
hound = { path = "forks/hound" }
libm = { path = "forks/libm" }
# FIXME(121001): Revert once pull request is accepted and rolled into a crates.io release.
nix = { path = "forks/nix" }
notify = { path = "forks/notify" }
# FIXME(118248): We can unfork once undefined behavior is resolved.
prettytable-rs = { path = "forks/prettytable-rs" }
pulldown-cmark = { path = "forks/pulldown-cmark" }
# FIXME(87798): We can unfork to 0.19.1 once we've updated hyper to 0.14.x, and
# tokio to 1.x.
rustls = { path = "forks/rustls" }
rustyline = { path = "forks/rustyline" }
netlink-packet-route = { path="forks/netlink-packet-route-0.20.0" }
netlink-packet-utils = { path="forks/netlink-packet-utils-0.5.2" }
netlink-packet-core = {path = "forks/netlink-packet-core-0.7.0"}
netlink-packet-sock-diag = {path = "forks/netlink-packet-sock-diag-0.4.2"}
netlink-packet-generic = {path = "forks/netlink-packet-generic-0.3.3"}
security-framework = { path = "forks/security-framework" }
tracing-core = { path = "forks/tracing-core" }
zeroize = { path = "forks/zeroize" }
zstd-sys = { path = "forks/zstd-sys" }

### Mirrors: forked crates managed as separate git repos
serde_json5 = { path = "mirrors/serde_json5" } # TODO(https://fxbug.dev/75491) remove

#################################################################################
###                            Cargo GNaw Configs                             ###
###                                                                           ###
### See GNaw's documentation in //tools/cargo-gnaw/README.md for more details ###
### and examples.                                                             ###
#################################################################################

# IMPORTANT: The expression ${gn_source_root} must be used to reference
# a path to the root source directory relative to the current directory
# (which would be the Ninja build directory in the case of Fuchsia).
#
# Apart from that, it is ok to use relative paths with any number of ../ in them
# as long as these are relative to source locations instead.

#
# Global GN configs that will be added or removed from all generated targets

[gn.config]
remove_cfgs = [
  # Fuchsia forces targets to comply with 2018 idioms. third_party can ignore this
  "//build/config/rust:2018_idioms",
]
add_cfgs = []

require_licenses = true

#################################################################################
# Per-package config
#################################################################################
# The below config data is for the targets being used by cargo-gnaw. This
# provides custom input that is usually provided by build.rs scripts. If the
# build.rs script is simple enough,
# cargo-gnaw will suggest what to put in here. if not, usually reading the
# build.rs script is sufficient.
#
# Some dependencies have build scripts but do not actually requiring setting any
# config here. cargo-gnaw still requires an empty config section to acknowledge
# the presence of the build script.
#
# Some dependencies do not have build scripts but make use of environment
# variables normally populated by cargo, those can be configured here as well.
#
# Keep this sorted alphabetically, please.

[gn]
# Crates which only have a subset of features audited and approved for use. See individual package
# configs for approved features.
require_feature_reviews = [
  "bitflags",
  "bstr",
]

[gn.package.aes."0.8.4"]
rustflags = [ "--cfg=aes_armv8" ]

[gn.package.ahash."0.8.6".platform."cfg(any(target_arch = \"x86_64\", target_arch = \"aarch64\", target_arch = \"mips64\", target_arch = \"powerpc64\", target_arch = \"riscv64gc\", target_arch = \"s390x\"))"]
rustflags = [ "--cfg=feature=\\\"folded_multiply\\\"" ]

[gn.package.anyhow."1.0.75"]
# TODO(https://github.com/rust-lang/rust/pull/99301): uncomment when generic member access is stable
#rustflags = ["--cfg=backtrace"]

[gn.package.ash."0.37.0+1.3.209"]
rustflags = []

[gn.package.async-fs."1.6.0"]
rustflags = []

[gn.package.async-io."1.12.0"]
rustflags = []

[gn.package.async-net."1.7.0"]
rustflags = []

[gn.package.async-trait."0.1.71"]
rustflags = []

[gn.package.base64."0.13.0"]
#visibility = [":*", "//third_party/alacritty/alacritty_terminal:*" ]
# FIXME: temporarily allow anyone to depend on 0.13.0 to enable a soft migration.
visibility = [":*", "//*"]

[gn.package.bitflags."1.3.2"]
visibility = [":*", "//third_party/alacritty/alacritty_terminal:*" ]
reviewed_features = ["default"]

[gn.package.bitflags."2.4.1"]
reviewed_features = ["serde"]

# The unicode feature is excluded so we don't need to spend time auditing it.
[gn.package.bstr."1.5.0"]
reviewed_features = [ "std", "alloc" ]

[gn.package.camino."1.1.1"]
rustflags = [
  "--cfg=path_buf_capacity",
  "--cfg=shrink_to",
  "--cfg=try_reserve_2",
]

[gn.package.core-foundation-sys."0.8.3".platform."cfg(target_os = \"macos\")"]
rustflags = ["-lframework=CoreFoundation"]

[gn.package.crc."1.8.1"]
env_vars = ["OUT_DIR=../../../compat/crc"]

[gn.package.crc32fast."1.2.0"]
rustflags = ["--cfg=crc32fast_stdarchx86"]

[gn.package.crossbeam-epoch."0.8.2"]
# Has build script but no config needed.

[gn.package.crossbeam-utils."0.7.2"]
# Has build script but no config needed.

[gn.package.crossbeam-utils."0.8.14"]
rustflags = []

[gn.package.fancy-regex."0.8.0"]
# TODO(https://fxbug.dev/112722): We're importing this explicitly for now, but eventually
# it will be imported by valico and the dt-schema tool.
# Remove this line when valico uses fancy-regex.
visibility = [":*"]

[gn.package.fuchsia-cprng."0.1.1"]
# Lives in-tree
uses_fuchsia_license = true

[gn.package.futures-channel."0.3.19"]
env_vars = [ "CARGO_PKG_NAME=futures-channel" ]

[gn.package.futures-core."0.3.19"]
env_vars = [ "CARGO_PKG_NAME=futures-core" ]

[gn.package.futures-macro."0.3.19"]
env_vars = [ "CARGO_PKG_NAME=futures-macro" ]
rustflags = [ "--cfg=fn_like_proc_macro" ]

[gn.package.futures-task."0.3.19"]
env_vars = [ "CARGO_PKG_NAME=futures-task" ]

[gn.package.futures-util."0.3.19"]
env_vars = [ "CARGO_PKG_NAME=futures-util" ]
rustflags = [ "--cfg=fn_like_proc_macro" ]

# generator has not gone through a thorough safety review yet, and needs to be
# re-reviewed before it can be used outside of tests.
[gn.package.generator."0.7.5"]
visibility = [ ":loom-v0_7_1" ]
testonly = true
deps = [
  "//build/validate:non_production_tag",
]

# generator's asm deps are only supported on x64 and arm64 so far, and we need
# to not include the asm target when there's no suitable implementation to be
# selected.
[gn.package.generator."0.7.5".platform."cfg(not(target_os = \"fuchsia\"))"]
deps = [
  "//third_party/rust_crates/compat/generator:asm",
]

[gn.package.generic-array."0.14.5"]
rustflags = [ "--cfg=relaxed_coherence" ]

[gn.package.getrandom."0.2.10"]
env_vars = [ "CARGO_PKG_NAME=getrandom", "CARGO_PKG_VERSION=0.2.10", "CARGO_MANIFEST_DIR=${gn_source_root}/third_party/rust_crates/vendor/getrandom-0.2.10" ]
rustflags = []

[gn.package.handlebars."4.3.5"]
# pest relies on this being set to find the grammar file
env_vars = [ "CARGO_MANIFEST_DIR=${gn_source_root}/third_party/rust_crates/vendor/handlebars-4.3.5" ]

[gn.package.httparse."1.7.1"]
rustflags = ["--cfg=httparse_simd"]

[gn.package.indexmap."1.9.2"]
rustflags = ["--cfg=has_std"]

[gn.package.libc."0.2.149"]
rustflags = [
  "--cfg=libc_priv_mod_use",
  "--cfg=libc_union",
  "--cfg=libc_const_size_of",
  "--cfg=libc_align",
  "--cfg=libc_core_cvoid",
  "--cfg=libc_packedN",
  "--cfg=libc_cfg_target_vendor",
  "--cfg=libc_int128",
  "--cfg=libc_non_exhaustive",
  "--cfg=libc_long_array",
  "--cfg=libc_ptr_addr_of",
  "--cfg=libc_underscore_const_names",
  "--cfg=libc_const_extern_fn",
 ]

[gn.package.libc."0.2.149".platform."cfg(target_os = \"freebsd\")"]
rustflags = ["--cfg=freebsd11"]

[gn.package.libm."0.2.1"]
# It is a fork:
uses_fuchsia_license = true

[gn.package.lock_api."0.4.11"]
rustflags = ["--cfg=has_const_fn_trait_bound"]

[gn.package.log."0.4.20"]
group_visibility = { import = "//src/lib/diagnostics/log/log_visibility.gni", variable = "third_party_rust_crate_log_visibility" }

# Loom has not gone through a thorough safety review yet, and needs to be
# re-reviewed before it can be used outside of tests.
[gn.package.loom."0.7.1"]
deps = [ "//build/validate:non_production_tag" ]
testonly = true

[gn.package.maybe-uninit."2.0.0"]
rustflags = ["--cfg=derive_copy", "--cfg=repr_transparent", "--cfg=native_uninit"]

[gn.package.md-5."0.10.5"]
group_visibility = { import = "//third_party/rust_crates/visibility.gni", variable = "md5_visibility" }

[gn.package.memoffset."0.5.3"]
# Has build script but no config needed.

[gn.package.memoffset."0.6.3"]
rustflags = ["--cfg=tuple_ty", "--cfg=allow_clippy", "--cfg=maybe_uninit", "--cfg=doctests", "--cfg=raw_ref_macros"]

[gn.package.memoffset."0.7.1"]
rustflags = ["--cfg=tuple_ty", "--cfg=allow_clippy", "--cfg=maybe_uninit", "--cfg=doctests", "--cfg=raw_ref_macros"]


[gn.package.mockall."0.9.0"]
deps = ["//build/validate:non_production_tag"]

[gn.package.nix."0.26.2"]
group_visibility = { import = "//src/lib/fuchsia_nix/nix_visibility.gni", variable = "nix_visibility" }
visibility = [":*", "//third_party/rust_crates/compat/rustyline:*"]

[gn.package.nom."5.0.0"]
# Has build script but no config needed.

[gn.package.num-bigint."0.4.3"]
rustflags = [
  "--cfg=u64_digit",
  "--cfg=has_try_from",
]
env_vars = ["OUT_DIR=../../../../compat/num-bigint"]

[gn.package.num-bigint."0.4.3".platform."cfg(target_arch = \"x86_64\")"]
rustflags = ["--cfg=use_addcarry"]

[gn.package.num-complex."0.4.0"]
rustflags = ["--cfg=has_i128", "--cfg=has_const_fn"]

[gn.package.num-integer."0.1.44"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-iter."0.1.42"]
rustflags = ["--cfg=has_i128"]

[gn.package.num-rational."0.4.0"]
rustflags = ["--cfg=has_int_exp_fmt"]

[gn.package.num-traits."0.2.18"]
rustflags = [
  "--cfg=has_copysign",
  "--cfg=has_div_euclid",
  "--cfg=has_float_to_from_bytes",
  "--cfg=has_int_to_from_bytes",
  "--cfg=has_is_subnormal",
  "--cfg=has_leading_trailing_ones",
  "--cfg=has_reverse_bits",
  "--cfg=has_to_int_unchecked",
  "--cfg=has_total_cmp",
]

[gn.package.parking_lot."0.9.0"]
# Funnel usage of parking_lot through fuchsia_sync.
visibility = ["//src/lib/fuchsia-sync", "//third_party/rust_crates:*"]

[gn.package.parking_lot_core."0.6.2"]
# Has build script but no config needed.

[gn.package.parking_lot_core."0.9.9"]
rustflags = []

[gn.package.polling."2.4.0"]
rustflags = []

# "--cfg=use_fallback" is required in order to avoid using the unstable
# proc_macro_diagnostic feature.
[gn.package.proc-macro-error."1.0.4"]
rustflags = ["--cfg=use_fallback"]

# "--cfg=use_fallback" is required in order to avoid using the unstable
# proc_macro_diagnostic feature.
[gn.package.proc-macro-error-attr."1.0.4"]
rustflags = ["--cfg=use_fallback"]

[gn.package.proc-macro2."0.4.27"]
rustflags = ["--cfg=u128", "--cfg=use_proc_macro", "--cfg=wrap_proc_macro"]

# cargo-gnaw suggested "--cfg=proc_macro_span" as well but proc_macro_span is still an unstable feature.
[gn.package.proc-macro2."1.0.79"]
rustflags = ["--cfg=span_locations", "--cfg=wrap_proc_macro"]

[gn.package.pulldown-cmark."0.6.0"]
# Has build script but no config needed.

# The `build.rs` file in this version of quote checks for rustc versions less
# than 53; for later rustc versions (including the one that we vendor with
# Fuchsia), the logic in `build.rs` is a no-op.
[gn.package.quote."1.0.35"]
rustflags = []

[gn.package.rand."0.6.5"]
rustflags = ["--cfg=rustc_1_25","--cfg=rustc_1_26",  "--cfg=rustc_1_27",]

[gn.package.rand_chacha."0.1.1"]
rustflags = ["--cfg=rustc_1_26"]

[gn.package.rand_pcg."0.1.1"]
rustflags = ["--cfg=rust_1_26"]

[gn.package.rayon-core."1.7.0"]
# Has build script but no config needed.

[gn.package.ref-cast."1.0.9"]
rustflags = []

[gn.package.ring."0.16.20"]
# See https://fxbug.dev/104855 if you want to change this: Please talk to Security team.
# Thank you!
visibility = [
  ":ring",
  ":rustls-v0_19_1",
  ":sct-v0_6_0",
  ":trust-dns-proto-v0_21_2",
  ":tuf-v0_3_0-beta11",
  ":webpki-v0_21_0",
]
deps = [ "//third_party/rust_crates/compat/ring:ring-core" ]

# Please keep the rust_icu_* crates together in this list.
# Refer to //build/icu/README.md for the details of the approach.
[gn.package.rust_icu_common."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_sys."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_ucal."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_uchar."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_udat."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_udata."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_uenum."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_uloc."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_unorm2."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }
[gn.package.rust_icu_ustring."5.0.0"]
configs = [ "//src/lib/icu:version" ]
target_renaming = { import = "//build/icu/icu_rust_crates.gni", group_name = "icu_group", rule_name = "icu_rust_library" }

[gn.package.ryu."1.0.3"]
rustflags = ["--cfg=integer128", "--cfg=must_use_return", "--cfg=maybe_uninit"]

[gn.package.schemars."0.8.10"]
rustflags = ["--cfg=std_atomic64", "--cfg=std_atomic"]

# scoped-tls has not gone through a thorough safety review yet, and needs to be
# re-reviewed before it can be used outside of tests.
[gn.package.scoped-tls."1.0.1"]
deps = [ "//build/validate:non_production_tag" ]
visibility = [ ":loom-v0_7_1" ]
testonly = true

# We always want to optimize scrypt for speed, because a single key derivation
# that takes 150 msec when speed-optimized takes 20 seconds (!) when not
# optimized, and that's a terrible experience for checking passwords.
[gn.package.scrypt."0.10.0"]
configs = [ "//build/config:optimize_speed" ]

[gn.package.semver."1.0.4"]
rustflags = []

[gn.package.serde."1.0.147"]
rustflags = []

[gn.package.serde_derive."1.0.147"]
rustflags = []

[gn.package.serde_json."1.0.87"]
rustflags = ["--cfg=limb_width_64"]

[gn.package.sha1."0.10.5"]
group_visibility = { import = "//third_party/rust_crates/visibility.gni", variable = "sha1_visibility" }

[gn.package.signal-hook."0.3.17"]
rustflags = []

[gn.package.slab."0.4.7"]
rustflags = []

[gn.package.syn."1.0.98"]
# Has build script but no config needed.
# FIXME(https://fxbug.dev/332277415): temporarily allow legacy targets to
# depend on 1.0.98 to enable a soft migration. New projects should be using syn
# 2.x.
visibility = [
  ":*",
  "//src/connectivity/bluetooth/testing/test-harness-macro:*",
  "//src/connectivity/lib/ip-test-macro:*",
  "//src/connectivity/lib/ip-test-macro/test:*",
  "//src/connectivity/lib/net-declare:*",
  "//src/connectivity/lib/net-types:*",
  "//src/connectivity/lowpan/lib/spinel_pack/spinel_pack_macros:*",
  "//src/connectivity/network/lib/todo_unused:*",
  "//src/connectivity/network/netstack3/core/macros:*",
  "//src/connectivity/network/tests/integration/macros:*",
  "//src/connectivity/network/tests/integration/multicast-forwarding/macros:*",
  "//src/connectivity/wlan/lib/bitfield:*",
  "//src/connectivity/wlan/lib/frame_writer/macro:*",
  "//src/connectivity/wlan/lib/statemachine/macro:*",
  "//src/developer/ffx/config/macro/proc_macro:*",
  "//src/developer/ffx/core/macro:*",
  "//src/developer/ffx/lib/fho/macro:*",
  "//src/developer/ffx/lib/protocols/macros:*",
  "//src/developer/ffx/lib/validation/proc_macro:*",
  "//src/developer/ffx/plugins/fuzz/shell_args:*",
  "//src/lib/assembly/file_relative_path:*",
  "//src/lib/diagnostics/inspect/derive/macro:*",
  "//src/lib/fidl_table_validation/fidl_table_validation_derive:*",
  "//src/lib/from-enum:*",
  "//src/lib/fuchsia-async-macro:*",
  "//src/lib/fuchsia/macro:*",
  "//src/lib/fuzzing/rust:*",
  "//src/lib/include_bytes_from_working_dir:*",
  "//src/lib/include_str_from_working_dir:*",
  "//src/lib/testing/fixture:*",
  "//src/starnix/lib/filter_methods_macro:*",
  "//src/storage/fxfs:*",
  "//src/storage/fxfs/trace/macros:*",
  "//src/storage/lib/vfs/rust/macros:*",
  "//src/storage/type-fprint:*",
  "//src/sys/lib/cm_rust:*",
  "//src/sys/time/lib/inspect-writable/macro:*",
  "//tools/lib/config_client:*",
  "//tools/lib/reference_doc/macro:*",
]

[gn.package.thiserror."1.0.57"]
# Has build script but no config needed.

# Not actually used in the gn build at all, just for the rules_rust bazel rules.
[gn.package.tinyjson."2.5.0"]
group_visibility = { import = "//third_party/rust_crates/private_visibility.gni", variable = "private_visibility" }

# TODO(https://fxbug.dev/106164) This manual configuration enables the "rt", "net"
# "fs" and "sync" features on non-Fuchsia targets. It should be removed
# once gnaw supports target-specific features.
[gn.package.tokio."1.25.2".platform."cfg(not(target_os = \"fuchsia\"))"]
deps = [
  ":bytes-v1_0_1",
  ":libc-v0_2_149",
  ":memchr-v2_7_1",
  ":mio-v0_8_9",
  ":num_cpus-v1_13_0",
  ":signal-hook-registry-v1_4_1",
  ":socket2-v0_4_4",
]
rustflags = [
  "--cfg=feature=\\\"libc\\\"",
  "--cfg=feature=\\\"fs\\\"",
  "--cfg=feature=\\\"mio\\\"",
  "--cfg=feature=\\\"net\\\"",
  "--cfg=feature=\\\"num_cpus\\\"",
  "--cfg=feature=\\\"process\\\"",
  "--cfg=feature=\\\"io-util\\\"",
  "--cfg=feature=\\\"bytes\\\"",
  "--cfg=feature=\\\"signal-hook-registry\\\"",
  "--cfg=feature=\\\"rt\\\"",
  "--cfg=feature=\\\"rt-multi-thread\\\"",
  "--cfg=feature=\\\"socket2\\\"",
  "--cfg=feature=\\\"sync\\\"",
  "--cfg=feature=\\\"time\\\"",
]

# TODO(https://fxbug.dev/106164) This manual configuration enables the "log" so that
# tracing macros also emit log events and binaries with setting up a
# log::Logger receive tracing events as logs. On Fuchsia we don't need that
# since all binaries set up a tracing Subscriber.
[gn.package.tracing."0.1.40".platform."cfg(not(target_os = \"fuchsia\"))"]
deps = [ ":log-v0_4_20" ]
rustflags = [
  "--cfg=feature=\\\"log\\\"",
]

# No build script but relies on cargo to populate environment variables.
[gn.package.trust-dns-resolver."0.22.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.22.0\\\"" ]

[gn.package.typenum."1.15.0"]
env_vars = [
  "TYPENUM_BUILD_CONSTS=../../../compat/typenum/consts.rs",
  "TYPENUM_BUILD_OP=../../../compat/typenum/op.rs",
]

[gn.package.unic-common."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-common\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-ucd-version."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-ucd-version\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-char-range."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-char-range\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-char-property."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-char-property\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]
[gn.package.unic-ucd-block."0.9.0"]
env_vars = [ "CARGO_PKG_VERSION=\\\"0.9.0\\\"", "CARGO_PKG_NAME=\\\"unic-ucd-block\\\"",  "CARGO_PKG_DESCRIPTION=\\\"\\\"", ]

[gn.package.unicase."2.7.0"]
rustflags = [
  "--cfg=__unicase__iter_cmp",
  "--cfg=__unicase__default_hasher",
  "--cfg=__unicase__const_fns",
  "--cfg=__unicase__core_and_alloc",
]

[gn.package.url."1.7.2"]
# FIXME(91750): Blocked on updating valico to 3.x.
visibility = [":*", "//build/sdk/meta:*"]

[gn.package.valico."2.4.2"]
env_vars = ["OUT_DIR=../../../../compat/valico"]

[gn.package.valuable."0.1.0"]
rustflags = []

[gn.package.zerocopy."0.8.0-alpha.5"]
rustflags = [ "--cfg=zerocopy_generic_bounds_in_const_fn", "--cfg=zerocopy_aarch64_simd", "--cfg=zerocopy_panic_in_const" ]

[gn.package.zstd-safe."5.0.2+zstd.1.5.2"]
rustflags = []

[gn.package.zstd-sys."2.0.1+zstd.1.5.2"]
rustflags = []
# It is a fork:
uses_fuchsia_license = true
