sapling/eden/mononoke/gotham_ext/Cargo.toml
Evgenii Kazakov 579e3cbd1c mononoke/lfs_server: Update Mononoke LFS reverse DNS lookups to use the trust-dns crate
Summary:
Before this diff, we did DNS lookups using a crate called `dns_lookup`. This crate is a thin layer over libc DNS lookups. Those lookups are blocking (i.e. they hold a thread), so they're not very friendly to asynchronous code. We currently offload them on a dedicated thread pool to mitigate the issue, but this isn't ideal: if we experience e.g. slow DNS responses, we could saturate this thread pool pretty easily.

I updated it to use the trust-dns crate, which provides an asynchronous implementation of DNS lookups, and is currently used in other parts of Mononoke.

Reviewed By: krallin

Differential Revision: D25849872

fbshipit-source-id: 826ab4e5618844f3b48e5def4ad9bd163753ebb1
2021-01-11 18:03:11 -08:00

36 lines
1.2 KiB
TOML

[package]
name = "gotham_ext"
edition = "2018"
version = "0.1.0"
authors = ['Facebook']
license = "GPLv2+"
include = ["src/**/*.rs"]
[dependencies]
permission_checker = { path = "../permission_checker" }
scuba_ext = { path = "../common/scuba_ext" }
cached_config = { git = "https://github.com/facebookexperimental/rust-shed.git", branch = "master" }
time_ext = { git = "https://github.com/facebookexperimental/rust-shed.git", branch = "master" }
anyhow = "1.0"
async-compression = { version = "0.3", features = ["all"] }
async-trait = "0.1.29"
bytes = { version = "0.5", features = ["serde"] }
futures = { version = "0.3.5", features = ["async-await", "compat"] }
gotham = { version = "=0.5.0", default-features = false }
gotham_derive = "=0.5.0"
hex = "0.4"
http = "0.2"
hyper = "0.13"
itertools = "0.8"
lazy_static = "1.0"
mime = "0.3.14"
openssl = "0.10"
percent-encoding = "2.1"
pin-project = "0.4"
serde = { version = "1.0", features = ["derive", "rc"] }
serde_derive = "1.0"
serde_json = { version = "1.0", features = ["float_roundtrip"] }
slog = { version = "2.5", features = ["max_level_debug"] }
tokio = { version = "=0.2.13", features = ["full"] }
trust-dns-resolver = "0.19"