blob: 70c86a1afc2549e44a17c95774248f8d0871edae [file] [log] [blame]
# 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
# - fx build
# - fx update-rustc-crate-map --output third_party/rust_crates/crate_map.json
#
# 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
# docs/development/languages/rust/third_party.md.
[package]
name = "fuchsia-third-party"
version = "0.1.0"
[dependencies]
# Keep this sorted alphabetically, please.
anyhow = "1.0.25"
argh = "0.1"
base64 = "0.9"
bitfield = "0.13"
bitflags = "1"
byteorder = { version = "1", features = ["i128"] }
chrono = "0.4.2"
clap = "2.33"
crc = "1.8.1"
criterion = { version = "0.2", default-features = false }
csv = "1.0.7"
difference = "2.0.0"
futures = { version = "0.3.4", features = ["io-compat"] }
futures-executor = "0.3.4"
futures-io = "0.3.4"
futures-test = "0.3.4"
futures-util = { version = "0.3.4", features = ["io-compat"] }
heck = "0.3.1"
itertools = "0.8"
json5 = "0.2.4"
lazy_static = "1"
libc = "0.2"
log = { version = "0.4.4", features = ["std"] }
maplit = "1.0"
matches = "0.1.8"
maybe-owned = "0.3.2"
memchr = "2.0"
nom = { version = "5.0.0", default-features = false, features = ["std", "regexp_macros"] }
nom_locate = "2.0.0"
num-derive = "0.2.4"
num-traits= "0.2.5"
numtoa = "0.1.0"
once_cell = { version = "1.2.0", features = ["parking_lot"] }
parking_lot = "0.9"
paste = "0.1"
percent-encoding = "2.1"
pest = "2.1"
pest_derive = "2.1"
png = "0.14" # saved for future use
pretty_assertions = "0.5.1"
proc-macro-hack = "0.5.7"
rand = "0.6"
rand_core = "0.4.0"
rand_os = "0.1.2"
rayon = "1.1"
regex = "1.0.6"
regex-syntax = "0.6.5"
ring = "0.16"
rustc-hash = "1.0.1"
scopeguard = "0.3.3"
serde = "1.0.99"
serde_derive = "1.0.99"
serde_json = "1"
slab = "0.4"
splines = "2.2.0"
static_assertions = "1.1.0"
structopt = "0.2.14"
tempfile = "3.1"
termion = "1.5.3"
test-case = "1.0.0"
thiserror = "1.0.9"
timebomb = "0.1.2"
tracing = { version = "0.1.10", features = ["log"] }
tracing-futures = "0.2.0"
unicase = "2.2.0"
url = "2.1"
uuid = { version = "0.7.2", features = ["serde", "v4"] } # move ?
valico = "2.4.2"
xml-rs = "0.8"
# move once target-side tests of host-side code have been removed
# in wayland/scanner:lib and unicode_block_generator :
num = "0.2"
unic-char-range = "0.9"
unic-ucd-block = "0.9"
[dependencies.tracing-subscriber]
version = "0.1.6"
default-features = false
features = ["chrono", "tracing-log"]
# Target-side only dependencies
[target.'cfg(target_os = "fuchsia")'.dependencies]
async-trait = "0.1.11"
bincode = "1"
bytes = "0.5.4"
crossbeam = "0.5"
ct-logs = "0.6"
data-encoding = "2.1.2"
derivative = "1.0.2"
derp = "0.0.13"
euclid = "0.19"
eui48 = { version = "0.4.6", features = ["serde", "disp_hexstring"] }
freetype = "0.4" # saved for future use
getopts = "0.2"
glob = "0.3.0"
harfbuzz = { version = "0.3.1", default-features = false } # saved for future use
hex = "0.3.2"
http = "0.1"
hyper = { version = "0.12.13", default-features = false }
hyper-rustls = { version = "0.17.1", default-features = false }
id_tree = "1.5"
itoa = "0.4"
lipsum = "0.6.0"
net2 = "0.2"
num-bigint = { version = "0.2", features = ["rand"] }
openat = "0.1.17"
owning_ref = "0.4.0"
pin-project = "0.4.6"
pin-utils = "=0.1.0-alpha.4"
pretty = "0.5.2"
prettytable-rs = "0.8.0"
proc-macro-nested = "0.1.2"
proptest = "0.9.3"
proptest-derive = "0.1.1"
rand_core = "0.4.0"
rand_os = "0.1.2"
rand_xorshift = "0.1.1"
rental = "0.5.4"
rouille = "3.0.0"
rust-crypto = "0.2"
rust_icu_common = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_sys = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_ucal = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_udat = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_udata = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_uenum = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_uloc = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_ustring = { version = "0.0.5", default-features = false, features = ["renaming"] }
rust_icu_utext = { version = "0.0.5", default-features = false, features = ["renaming"] }
rustls = { version = "0.16", features = ["dangerous_configuration"] }
rusttype = "0.7.3"
serde_repr = "0.1.3"
smallvec = "0.6"
textwrap = "0.11.0"
time = "0.1"
tokio-rustls = "0.10.2" # For its async server TlsAcceptor/TlsStream types. Not actually using tokio.
trust-dns-proto = { version = "0.19.2", default-features = false, features = ["testing"] }
trust-dns-resolver = { version = "0.19.2", default-features = false, features = ["testing"] }
unicode-normalization = "0.1"
unicode-segmentation = "1.0"
unicode-width = "0.1.3"
untrusted = "0.7"
utf8parse = "0.1"
vk-sys = "0.4.0"
void = "1.0.2"
vte = "0.3"
walkdir = "2.2.7"
webpki = "0.21"
# Host-side only dependencies
[target.'cfg(not(target_os = "fuchsia"))'.dependencies]
flate2 = "1.0.7"
handlebars = "2.0.0-beta.2"
indoc = "0.3.3"
pulldown-cmark = "0.6.0"
proc-macro2 = "1.0.1"
quote = "1.0.2"
signal-hook = "0.1.13"
syn = { version = "1.0.5", features = ["full", "visit-mut", "extra-traits"] }
synstructure = "0.12.1"
tar = "0.4.25"
tokio = "0.1.22"
# For crates that we don't want to vendor, create a dummy package in tiny_mirrors/ (see existing
# examples).
[patch.crates-io]
# Keep this sorted alphabetically, please.
backtrace-sys = { path = "tiny_mirrors/backtrace-sys" }
cmake = { path = "tiny_mirrors/cmake"}
fuchsia-cprng = { path = "../../garnet/public/rust/fuchsia-cprng" }
nom_locate = { path = "tiny_mirrors/nom_locate" }
pkg-config = { path = "tiny_mirrors/pkg-config" }
rust-crypto = { path = "../rust-mirrors/rust-crypto" }
servo-freetype-sys = { path = "tiny_mirrors/servo-freetype-sys" }
web-sys = { path = "tiny_mirrors/web-sys" }
winapi = { path = "tiny_mirrors/winapi" }
winapi-util = { path = "tiny_mirrors/winapi-util" }