Update to percent-encoding 2.0

This commit is contained in:
Simon Sapin 2019-07-23 18:22:22 +02:00
parent 9392180007
commit 734fa6da2b
5 changed files with 29 additions and 14 deletions

6
Cargo.lock generated
View file

@ -3085,7 +3085,7 @@ dependencies = [
"msg 0.0.1", "msg 0.0.1",
"net_traits 0.0.1", "net_traits 0.0.1",
"openssl 0.10.11 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.11 (registry+https://github.com/rust-lang/crates.io-index)",
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pixels 0.0.1", "pixels 0.0.1",
"profile_traits 0.0.1", "profile_traits 0.0.1",
"rayon 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@ -3137,7 +3137,7 @@ dependencies = [
"mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1", "msg 0.0.1",
"num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pixels 0.0.1", "pixels 0.0.1",
"serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)",
"servo_arc 0.1.1", "servo_arc 0.1.1",
@ -4018,7 +4018,7 @@ dependencies = [
"net_traits 0.0.1", "net_traits 0.0.1",
"num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
"phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
"phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",

View file

@ -42,7 +42,7 @@ mime_guess = "2.0.0-alpha.6"
msg = {path = "../msg"} msg = {path = "../msg"}
net_traits = {path = "../net_traits"} net_traits = {path = "../net_traits"}
openssl = "0.10" openssl = "0.10"
percent-encoding = "1.0" percent-encoding = "2.0"
pixels = {path = "../pixels"} pixels = {path = "../pixels"}
profile_traits = {path = "../profile_traits"} profile_traits = {path = "../profile_traits"}
rayon = "1" rayon = "1"

View file

@ -29,7 +29,7 @@ malloc_size_of_derive = "0.1"
mime = "0.3" mime = "0.3"
msg = {path = "../msg"} msg = {path = "../msg"}
num-traits = "0.2" num-traits = "0.2"
percent-encoding = "1.0" percent-encoding = "2.0"
pixels = {path = "../pixels"} pixels = {path = "../pixels"}
serde = "1.0" serde = "1.0"
servo_arc = {path = "../servo_arc"} servo_arc = {path = "../servo_arc"}

View file

@ -653,14 +653,29 @@ pub fn trim_http_whitespace(mut slice: &[u8]) -> &[u8] {
} }
pub fn http_percent_encode(bytes: &[u8]) -> String { pub fn http_percent_encode(bytes: &[u8]) -> String {
percent_encoding::define_encode_set! {
// This encode set is used for HTTP header values and is defined at // This encode set is used for HTTP header values and is defined at
// https://tools.ietf.org/html/rfc5987#section-3.2 // https://tools.ietf.org/html/rfc5987#section-3.2
pub HTTP_VALUE = [percent_encoding::SIMPLE_ENCODE_SET] | { const HTTP_VALUE: &percent_encoding::AsciiSet = &percent_encoding::CONTROLS
' ', '"', '%', '\'', '(', ')', '*', ',', '/', ':', ';', '<', '-', '>', '?', .add(b' ')
'[', '\\', ']', '{', '}' .add(b'"')
} .add(b'%')
} .add(b'\'')
.add(b'(')
.add(b')')
.add(b'*')
.add(b',')
.add(b'/')
.add(b':')
.add(b';')
.add(b'<')
.add(b'-')
.add(b'>')
.add(b'?')
.add(b'[')
.add(b'\\')
.add(b']')
.add(b'{')
.add(b'}');
percent_encoding::percent_encode(bytes, HTTP_VALUE).to_string() percent_encoding::percent_encode(bytes, HTTP_VALUE).to_string()
} }

View file

@ -79,7 +79,7 @@ msg = {path = "../msg"}
net_traits = {path = "../net_traits"} net_traits = {path = "../net_traits"}
num-traits = "0.2" num-traits = "0.2"
parking_lot = "0.8" parking_lot = "0.8"
percent-encoding = "1.0" percent-encoding = "2.0"
phf = "0.7" phf = "0.7"
pixels = {path = "../pixels"} pixels = {path = "../pixels"}
profile_traits = {path = "../profile_traits"} profile_traits = {path = "../profile_traits"}