mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
acc0d428cc
Summary: This adds support for compressing responses in the LFS Server, based on what the client sent in `Accept-Encoding`. The compression changes are fairly simple. Most of the codes changes are around the fact that when we compress, we don't send a Content-Length (because we don't know how long the content will be). Note that this is largely implemented in StreamBody. This means it can be used for free by the EdenAPI server as well. The reason it's in there is because we need to avoid setting the Content-Length when compression is going to be used (`StreamBody` is what takes charge for doing this). This also exposes a callback to get access to the stream post-compression, which also needs to be exposed in `StreamBody`, since that's where compression happens. Reviewed By: aslpavel Differential Revision: D23652334 fbshipit-source-id: 8f462d69139991c3e1d37f392d448904206ec0d2
37 lines
1.2 KiB
TOML
37 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" }
|
|
cached_config = { git = "https://github.com/facebookexperimental/rust-shed.git", branch = "master" }
|
|
scuba = { 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"] }
|
|
dns-lookup = "1.0"
|
|
failure = "0.1"
|
|
futures = { version = "0.3.5", features = ["async-await", "compat"] }
|
|
gotham = { version = "=0.5.0-dev", default-features = false }
|
|
gotham_derive = "=0.5.0-dev"
|
|
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 = "1.0"
|
|
slog = { version = "2.5", features = ["max_level_debug"] }
|
|
tokio = { version = "=0.2.13", features = ["full"] }
|