From 2cc1b23761f3ea5f36e2b38ee736510118bc3da1 Mon Sep 17 00:00:00 2001 From: Nikolay Kim Date: Mon, 16 Jul 2018 12:36:53 +0600 Subject: [PATCH] upgrade example to actix-web 0.7 --- Cargo.lock | 946 ++++++++++++++++++------------ async_db/Cargo.toml | 6 +- async_db/src/db.rs | 84 +-- async_db/src/main.rs | 67 ++- async_ex1/Cargo.toml | 6 +- basics/Cargo.toml | 6 +- basics/src/main.rs | 19 +- cookie-auth/Cargo.toml | 6 +- cookie-auth/src/auth.rs | 24 +- cookie-auth/src/main.rs | 8 +- cookie-session/Cargo.toml | 6 +- cookie-session/src/main.rs | 2 +- diesel/Cargo.toml | 6 +- diesel/src/main.rs | 2 +- form/Cargo.toml | 6 +- hello-world/Cargo.toml | 6 +- hello-world/src/main.rs | 2 +- http-proxy/Cargo.toml | 6 +- http-proxy/src/main.rs | 6 +- http-proxy/src/server.rs | 2 +- json/Cargo.toml | 5 +- json/src/main.rs | 25 +- juniper/Cargo.toml | 6 +- juniper/src/main.rs | 4 +- middleware/Cargo.toml | 5 +- middleware/src/redirect.rs | 2 +- middleware/src/simple.rs | 10 +- multipart/Cargo.toml | 6 +- multipart/src/main.rs | 24 +- protobuf/Cargo.toml | 5 +- protobuf/src/main.rs | 2 +- protobuf/src/protobuf.rs | 86 +-- r2d2/Cargo.toml | 6 +- r2d2/src/main.rs | 4 +- state/Cargo.toml | 6 +- state/src/main.rs | 2 +- static_index/Cargo.toml | 6 +- static_index/src/main.rs | 2 +- template_askama/Cargo.toml | 8 +- template_tera/Cargo.toml | 5 +- tls/Cargo.toml | 5 +- tls/src/main.rs | 2 +- unix-socket/Cargo.toml | 8 +- unix-socket/src/main.rs | 5 +- web-cors/backend/Cargo.toml | 6 +- web-cors/backend/src/main.rs | 5 +- websocket-chat/Cargo.toml | 5 +- websocket-chat/src/main.rs | 28 +- websocket-chat/src/server.rs | 4 +- websocket-tcp-chat/Cargo.toml | 8 +- websocket-tcp-chat/src/client.rs | 15 +- websocket-tcp-chat/src/main.rs | 31 +- websocket-tcp-chat/src/server.rs | 4 +- websocket-tcp-chat/src/session.rs | 27 +- websocket/Cargo.toml | 7 +- websocket/src/client.rs | 8 +- websocket/src/main.rs | 3 +- 57 files changed, 913 insertions(+), 693 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 769e118..bce5c1d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8,42 +8,70 @@ dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-channel 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "skeptic 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-signal 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "actix" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "actix_derive 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-signal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-resolver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "actix-redis" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "backoff 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "cookie 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", "redis-async 0.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "actix-web" -version = "0.6.12" +version = "0.6.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -56,52 +84,103 @@ dependencies = [ "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "flate2 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "http-range 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "httparse 1.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "httparse 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mime 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - "mime_guess 2.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.10 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-openssl 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "actix-web" +version = "0.7.0" +source = "git+https://github.com/actix/actix-web.git#2a8c2fb55eca2b404c60f6a96f40ced5741a5d6a" +dependencies = [ + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "cookie 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", + "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "flate2 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "htmlescape 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "httparse 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazycell 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.10 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-openssl 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "actix-web-cors" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "dotenv 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -112,12 +191,12 @@ dependencies = [ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "aho-corasick" -version = "0.6.4" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -168,18 +247,18 @@ dependencies = [ name = "async_db" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "dotenv 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "r2d2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "r2d2_sqlite 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -196,13 +275,13 @@ dependencies = [ name = "awc_examples" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "validator 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "validator_derive 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -221,7 +300,7 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "backtrace-sys 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", @@ -231,11 +310,11 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "backtrace-sys 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -246,7 +325,7 @@ name = "backtrace-sys" version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -272,11 +351,11 @@ dependencies = [ name = "basics" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -294,7 +373,7 @@ name = "brotli-sys" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -331,39 +410,39 @@ name = "card-validate" version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "cargo_metadata" -version = "0.5.6" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "cc" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "cfg-if" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "chrono" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "num-integer 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", + "num-traits 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -383,18 +462,18 @@ dependencies = [ "base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "cookie-auth" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "cookie 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -402,10 +481,10 @@ dependencies = [ name = "cookie-session" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -419,6 +498,18 @@ dependencies = [ "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crossbeam-channel" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-epoch 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "crossbeam-deque" version = "0.2.0" @@ -443,9 +534,9 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -457,9 +548,22 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -469,7 +573,7 @@ name = "crossbeam-utils" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -477,9 +581,14 @@ name = "crossbeam-utils" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crossbeam-utils" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "dbghelp-sys" version = "0.2.0" @@ -500,7 +609,7 @@ dependencies = [ [[package]] name = "diesel" -version = "1.3.0" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -513,16 +622,16 @@ dependencies = [ name = "diesel-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", - "diesel 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", + "diesel 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "dotenv 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "r2d2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -548,7 +657,7 @@ dependencies = [ [[package]] name = "dtoa" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -620,8 +729,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "humantime 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "termcolor 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -638,7 +747,7 @@ name = "error-chain" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -646,7 +755,7 @@ name = "error-chain" version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -654,7 +763,7 @@ name = "error-chain" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -662,7 +771,7 @@ name = "failure" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", "failure_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -707,10 +816,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "form-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -729,7 +838,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "futures" -version = "0.1.21" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -737,7 +846,7 @@ name = "futures-cpupool" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -753,27 +862,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "h2" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "indexmap 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "string 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "string 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "hello-world" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -786,23 +895,29 @@ dependencies = [ "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "htmlescape" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "http" -version = "0.1.5" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "http-proxy" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -812,7 +927,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "httparse" -version = "1.2.4" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -830,7 +945,7 @@ dependencies = [ [[package]] name = "idna" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -863,7 +978,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "error-chain 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "socket2 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "socket2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "widestring 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "winreg 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -879,7 +994,7 @@ dependencies = [ [[package]] name = "itoa" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -891,15 +1006,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "json-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "json 0.11.13 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -907,13 +1022,13 @@ name = "juniper" version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "chrono 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "juniper_codegen 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", "ordermap 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -921,14 +1036,14 @@ dependencies = [ name = "juniper-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "juniper 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -961,7 +1076,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "lazy_static" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -969,6 +1084,11 @@ name = "lazycell" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "lazycell" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "libc" version = "0.2.42" @@ -980,7 +1100,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "pkg-config 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "vcpkg 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -989,19 +1109,20 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] -name = "log" -version = "0.3.9" +name = "lock_api" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "log" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1042,13 +1163,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "middleware-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", ] [[package]] name = "mime" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicase 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1056,10 +1177,10 @@ dependencies = [ [[package]] name = "mime_guess" -version = "2.0.0-alpha.4" +version = "2.0.0-alpha.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "mime 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "phf 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)", "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1070,13 +1191,13 @@ name = "miniz-sys" version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "mio" -version = "0.6.14" +version = "0.6.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1085,9 +1206,9 @@ dependencies = [ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1099,7 +1220,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1108,7 +1229,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1117,18 +1238,18 @@ dependencies = [ name = "multipart-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "net2" -version = "0.2.32" +version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1148,15 +1269,15 @@ dependencies = [ [[package]] name = "num-integer" -version = "0.1.38" +version = "0.1.39" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "num-traits 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "num-traits" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1173,9 +1294,9 @@ version = "0.10.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.33 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1185,10 +1306,10 @@ name = "openssl-sys" version = "0.9.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "vcpkg 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1196,7 +1317,7 @@ name = "ordermap" version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1216,6 +1337,15 @@ dependencies = [ "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lock_api 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot_core" version = "0.2.14" @@ -1223,7 +1353,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1327,12 +1457,12 @@ dependencies = [ name = "protobuf-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "prost 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "prost-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1377,7 +1507,7 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "antidote 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "scheduled-thread-pool 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1385,16 +1515,16 @@ dependencies = [ name = "r2d2-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "r2d2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "r2d2_sqlite 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "rusqlite 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1429,7 +1559,7 @@ dependencies = [ [[package]] name = "rand" -version = "0.5.1" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1458,7 +1588,7 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1470,9 +1600,9 @@ version = "0.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1481,7 +1611,7 @@ version = "0.1.0" dependencies = [ "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", "actix-redis 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1503,7 +1633,7 @@ name = "regex" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "aho-corasick 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1512,10 +1642,10 @@ dependencies = [ [[package]] name = "regex" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "aho-corasick 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1620,7 +1750,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1630,27 +1760,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.69" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.69" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.14.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_json" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "dtoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", + "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1658,10 +1788,10 @@ name = "serde_urlencoded" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "dtoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1680,11 +1810,11 @@ version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytecount 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "cargo_metadata 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cargo_metadata 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1704,15 +1834,15 @@ dependencies = [ [[package]] name = "smallvec" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "socket2" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1727,25 +1857,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "state" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "static_index" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "string" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1770,7 +1900,7 @@ dependencies = [ [[package]] name = "syn" -version = "0.14.2" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1808,8 +1938,8 @@ dependencies = [ name = "template-askama" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "askama 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1818,29 +1948,29 @@ dependencies = [ name = "template-tera" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 0.11.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tera" -version = "0.11.7" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "chrono 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "pest 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1866,7 +1996,7 @@ name = "thread_local" version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1884,8 +2014,8 @@ dependencies = [ name = "tls-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1895,16 +2025,26 @@ name = "tokio" version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-fs 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-udp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-udp 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "tokio-codec" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1913,15 +2053,15 @@ version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1930,51 +2070,50 @@ name = "tokio-executor" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-fs" -version = "0.1.0" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-io" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-openssl" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-reactor" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1982,12 +2121,27 @@ name = "tokio-signal" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "tokio-signal" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", + "mio-uds 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1997,21 +2151,21 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-threadpool" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2022,37 +2176,38 @@ name = "tokio-timer" version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-udp" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-uds" -version = "0.1.7" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2062,14 +2217,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "idna 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "trust-dns-proto" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "socket2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-udp 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2078,16 +2256,34 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", "ipconfig 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "trust-dns-resolver" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "ipconfig 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-proto 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ucd-util" version = "0.1.1" @@ -2098,7 +2294,7 @@ name = "unicase" version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "version_check 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2106,7 +2302,7 @@ name = "unicase" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "version_check 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2141,10 +2337,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "unix-socket" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-uds 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2162,11 +2358,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "url" -version = "1.7.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "idna 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2182,7 +2378,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2190,7 +2386,7 @@ name = "uuid" version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2200,13 +2396,13 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "card-validate 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "idna 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2222,12 +2418,12 @@ dependencies = [ [[package]] name = "vcpkg" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "version_check" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -2248,46 +2444,46 @@ dependencies = [ name = "websocket" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "websocket-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "websocket-tcp-example" version = "0.1.0" dependencies = [ - "actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", + "actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)", "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2359,10 +2555,12 @@ dependencies = [ [metadata] "checksum actix 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7f0b2daad36916ccd2b162dbc5a04a74df642a29391b1a341c8ee3e82026cb16" +"checksum actix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "611e5db7b5907b570e75b70f5943dcb99e709a6815348238501e1b4696b30489" "checksum actix-redis 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6ed04247bb9ee9a2a9a0ad808049de379d8197719bbb22ea0a56e9a10f55a50" -"checksum actix-web 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "39511e3e552addb839a2db972f5a8096d43c1c4699cd1fa83e39f664c969a033" +"checksum actix-web 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)" = "cebfb353ebcae66f93c190b80ef12b8c82557413856e3e65dbaab662a48ec72d" +"checksum actix-web 0.7.0 (git+https://github.com/actix/actix-web.git)" = "" "checksum actix_derive 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c4b1dc922654b9aca7a8a31eab875fde804fa9fbd67f220f2e457787b23590f2" -"checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4" +"checksum aho-corasick 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c1c6d463cbe7ed28720b5b489e7c083eeb8f90d08be2a0d6bb9e1ffea9ce1afa" "checksum antidote 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "34fde25430d87a9388dadbe6e34d7f72a462c8b43ac8d309b42b0a8505d7e2a5" "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" "checksum askama 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a57e2df69b9fdc5ec981be522d8aff87bd90947b68864f30bf34570e6c5b227a" @@ -2371,7 +2569,7 @@ dependencies = [ "checksum atty 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2fc4a1aa4c24c0718a250f0681885c1af91419d242f29eb8f2ab28502d80dbd1" "checksum backoff 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b7bd67d02cc9dfe9bb1891cb6b4f0169f53cdf0a78b07276ab2141452aaf5789" "checksum backtrace 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "346d7644f0b5f9bc73082d3b2236b69a05fd35cce0cfa3724e184e6a5c9e2a2f" -"checksum backtrace 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "dbdd17cd962b570302f5297aea8648d5923e22e555c2ed2d8b2e34eca646bf6d" +"checksum backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a" "checksum backtrace-sys 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)" = "bff67d0c06556c0b8e6b5f090f0eac52d950d9dfd1d35ba04e4ca3543eaf6a7e" "checksum base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96434f987501f0ed4eb336a411e0631ecd1afa11574fe148587adc4ff96143c9" "checksum base64 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "85415d2594767338a74a30c1d370b2f3262ec1b4ed2d7bba5b3faf4de40467d9" @@ -2383,25 +2581,28 @@ dependencies = [ "checksum byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "74c0b906e9446b0a2e4f760cdb3fa4b2c48cdc6db8766a845c54b6ff063fd2e9" "checksum bytes 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7dd32989a66957d3f0cba6588f15d4281a733f4e9ffc43fcd2385f57d3bf99ff" "checksum card-validate 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "42e836d5f9e13fabd2b181cc133bc007d1b53851fd3e897ce1dd759bde0fd871" -"checksum cargo_metadata 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "682476b87b3e22cd3820d86b26cd8603cd84ab76dce7547b2631858347aa8967" -"checksum cc 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)" = "49ec142f5768efb5b7622aebc3fdbdbb8950a4b9ba996393cb76ef7466e8747d" -"checksum cfg-if 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "405216fd8fe65f718daa7102ea808a946b6ce40c742998fbfd3463645552de18" -"checksum chrono 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a81892f0d5a53f46fc05ef0b917305a81c13f1f13bb59ac91ff595817f0764b1" +"checksum cargo_metadata 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1efca0b863ca03ed4c109fb1c55e0bc4bbeb221d3e103d86251046b06a526bd0" +"checksum cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)" = "2119ea4867bd2b8ed3aecab467709720b2d55b1bcfe09f772fd68066eaf15275" +"checksum cfg-if 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "efe5c877e17a9c717a0bf3613b2709f723202c4e4675cc8f12926ded29bcb17e" +"checksum chrono 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6962c635d530328acc53ac6a955e83093fedc91c5809dfac1fa60fa470830a37" "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" "checksum cookie 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "746858cae4eae40fff37e1998320068df317bc247dc91a67c6cfa053afdc2abb" "checksum crossbeam-channel 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "862becd07e73da5746de6d9b3ba055c9bb8b10afd0d2b51155a6e30d81cd20b3" +"checksum crossbeam-channel 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "258f3c07af0255827670241eacc8b0af7dbfc363df537ad062c6c515ca4a32ee" "checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" "checksum crossbeam-deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fe8153ef04a7594ded05b427ffad46ddeaf22e63fd48d42b3e1e3bb4db07cae7" "checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" "checksum crossbeam-epoch 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2af0e75710d6181e234c8ecc79f14a97907850a541b13b0be1dd10992f2e4620" +"checksum crossbeam-epoch 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "48deb8586d997ab13e98fb7e057b232149f9440321c73845b2f4cee483da29bc" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crossbeam-utils 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d636a8b3bcc1b409d7ffd3facef8f21dcb4009626adbd0c5e6c4305c07253c7b" +"checksum crossbeam-utils 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ea52fab26a99d96cdff39d0ca75c9716125937f5dba2ab83923aaaf5928f684a" "checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" "checksum derive-error-chain 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3c9ca9ade651388daad7c993f005d0d20c4f6fe78c1cdc93e95f161c6f5ede4a" -"checksum diesel 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9db28a518f3e0c61bdb0044d9a8b2b369373c090c19fec07e49e3b8511dcffa" +"checksum diesel 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e71e7a348ae6064e86c4cf0709f0e4c3ef6f30e8e7d3dc05737164af4ebd3511" "checksum diesel_derives 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "03bcaf77491f53e400d5ee3bdd57142ea4e1c47fe9217b3361ff9a76ca0e3d37" "checksum dotenv 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d6f0e2bb24d163428d8031d3ebd2d2bd903ad933205a97d0f18c7c1aade380f3" -"checksum dtoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "09c3753c3db574d215cba4ea76018483895d7bff25a31b49ba45db21c48e50ab" +"checksum dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd" "checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0" "checksum encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" "checksum encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" @@ -2423,59 +2624,62 @@ dependencies = [ "checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" -"checksum futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "1a70b146671de62ec8c8ed572219ca5d594d9b06c0b364d5e67b722fc559b48c" +"checksum futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)" = "884dbe32a6ae4cd7da5c6db9b78114449df9953b8d490c9d7e1b51720b922c62" "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum gcc 0.3.54 (registry+https://github.com/rust-lang/crates.io-index)" = "5e33ec290da0d127825013597dbdfc28bee4964690c7ce1166cbc2a7bd08b1bb" "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" -"checksum h2 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "8111e316d0589775ee2bd671cdfdf3f63c9d97e21d8d16a88bb73dcf99bef7f5" +"checksum h2 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "6229ac66d3392dd83288fe04defd4b353354b15bbe07820d53dda063a736afcc" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" -"checksum http 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "75df369fd52c60635208a4d3e694777c099569b3dcf4844df8f652dc004644ab" +"checksum htmlescape 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e9025058dae765dee5070ec375f591e2ba14638c63feff74f13805a72e523163" +"checksum http 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "4fbced8864b04c030eebcb7d0dc3a81ba5231ac559f5116a29a8ba83ecee22cd" "checksum http-range 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2e4003e6fd05ea9109db00415e670b11f511a42e567ff2d5d771cbdfa24e02" -"checksum httparse 1.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c2f407128745b78abc95c0ffbe4e5d37427fdc0d45470710cfef8c44522a2e37" +"checksum httparse 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7b6288d7db100340ca12873fd4d08ad1b8f206a9457798dfb17c018a33fee540" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0484fda3e7007f2a4a0d9c3a703ca38c71c54c55602ce4660c419fd32e188c9e" -"checksum idna 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "014b298351066f1512874135335d62a789ffe78a9974f94b43ed5621951eaf7d" +"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum if_chain 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "61bb90bdd39e3af69b0172dfc6130f6cd6332bf040fbb9bdd4401d37adbd48b8" "checksum indexmap 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08173ba1e906efb6538785a8844dd496f5d34f0a2d88038e95195172fc667220" "checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" "checksum ipconfig 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9ec4e18c0a0d4340870c14284293632d8421f419008371422dd327892b88877c" "checksum itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f58856976b776fedd95533137617a02fb25719f40e7d9b01c7043cd65474f450" -"checksum itoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c069bbec61e1ca5a596166e55dfe4773ff745c3d16b700013bcaff9a6df2c682" +"checksum itoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "5adb58558dcd1d786b5f0bd15f3226ee23486e24b7b58304b60f64dc68e62606" "checksum json 0.11.13 (registry+https://github.com/rust-lang/crates.io-index)" = "9ad0485404155f45cce53a40d4b2d6ac356418300daed05273d9e26f91c390be" "checksum juniper 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bc520ae5efce621611ad03aa0ad6ebec0aabc60efa1e47df7d835609c079dd31" "checksum juniper_codegen 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d2605e2fd568ff0ad62e2e6ca985950bbe53708c0e75b08d4fc640f05a564c9e" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" "checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" -"checksum lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e6412c5e2ad9584b0b8e979393122026cdd6d2a80b933f890dcd694ddbe73739" +"checksum lazy_static 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fb497c35d362b6a331cfd94956a07fc2c78a4604cdbee844a81170386b996dd3" "checksum lazycell 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a6f08839bc70ef4a3fe1d566d5350f519c5912ea86be0df1740a7d247c7fc0ef" +"checksum lazycell 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d33a48d0365c96081958cc663eef834975cb1e8d8bea3378513fc72bdbf11e50" "checksum libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)" = "b685088df2b950fccadf07a7187c8ef846a959c142338a48f9dc0b94517eb5f1" "checksum libsqlite3-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0e9eb7b8e152b6a01be6a4a2917248381875758250dc3df5d46caf9250341dda" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" -"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" -"checksum log 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6fddaa003a65722a7fb9e26b0ce95921fe4ba590542ced664d8ce2fa26f9f3ac" +"checksum lock_api 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "949826a5ccf18c1b3a7c3d57692778d21768b79e46eb9dd07bfc4c2160036c54" +"checksum log 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "61bd98ae7f7b754bc53dca7d44b604f733c6bba044ea6f41bc8d89272d8161d2" "checksum lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4d06ff7ff06f729ce5f4e227876cb88d10bc59cd4ae1e09fbb2bde15c850dc21" "checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" "checksum memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a" "checksum memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "796fba70e76612589ed2ce7f45282f5af869e0fdd7cc6199fa1aa1f1d591ba9d" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum mime 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0b28683d0b09bbc20be1c9b3f6f24854efb1356ffcffee08ea3f6e65596e85fa" -"checksum mime_guess 2.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)" = "130ea3c9c1b65dba905ab5a4d9ac59234a9585c24d135f264e187fe7336febbd" +"checksum mime 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "fe51c8699d2dc522bf8c1ebe26ea2193d151fb54bcdfd7d0318750c189994cd9" +"checksum mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed" "checksum miniz-sys 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "609ce024854aeb19a0ef7567d348aaa5a746b32fb72e336df7fcc16869d7e2b4" -"checksum mio 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)" = "6d771e3ef92d58a8da8df7d6976bfca9371ed1de6619d9d5a5ce5b1f29b85bfe" +"checksum mio 0.6.15 (registry+https://github.com/rust-lang/crates.io-index)" = "4fcfcb32d63961fb6f367bfd5d21e4600b92cd310f71f9dca25acae196eb1560" "checksum mio-uds 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "84c7b5caa3a118a6e34dbac36504503b1e8dc5835e833306b9d6af0e05929f79" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" -"checksum net2 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)" = "9044faf1413a1057267be51b5afba8eb1090bd2231c693664aa1db716fe1eae0" +"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" "checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2" "checksum nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05aec50c70fd288702bcd93284a8444607f3292dbdf2a30de5ea5dcdbe72287b" -"checksum num-integer 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)" = "6ac0ea58d64a89d9d6b7688031b3be9358d6c919badcf7fbb0527ccfd891ee45" -"checksum num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775393e285254d2f5004596d69bb8bc1149754570dcc08cf30cabeba67955e28" +"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" +"checksum num-traits 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "630de1ef5cc79d0cdd78b7e33b81f083cbfe90de0f4b2b2f07f905867c70e9fe" "checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" "checksum openssl 0.10.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ed18a0f40ec4e9a8a81f8865033d823b7195d16a0a5721e10963ee1b0c2980ca" "checksum openssl-sys 0.9.33 (registry+https://github.com/rust-lang/crates.io-index)" = "d8abc04833dcedef24221a91852931df2f63e3369ae003134e70aff3645775cc" "checksum ordermap 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b81cf3b8cb96aa0e73bbedfcdc9708d09fec2854ba8d474be4e6f666d7379e8b" "checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" "checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" +"checksum parking_lot 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "901d6514273469bb17380c1ac3f51fb3ce54be1f960e51a6f04901eba313ab8d" "checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum pest 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0fce5d8b5cc33983fc74f78ad552b5522ab41442c4ca91606e4236eb4b5ceefc" @@ -2498,7 +2702,7 @@ dependencies = [ "checksum r2d2_sqlite 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "40a2a577eca774497be258ff0f9532f09ed5cec0f8e9cd06eb73c2b866636bbd" "checksum rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)" = "15a732abf9d20f0ad8eeb6f909bf6868722d9a06e1e50802b6a70351f40b4eb1" "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" -"checksum rand 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "482c45f965103f2433002a0c4d908599f38d1b8c1375e66e801a24c1c6cadc03" +"checksum rand 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "12397506224b2f93e6664ffc4f664b29be8208e5157d3d90b44f09b5fae470ea" "checksum rand_core 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "edecf0f94da5551fc9b492093e30b041a891657db7940ee221f9d2f66e82eef2" "checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" "checksum rayon-core 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d24ad214285a7729b174ed6d3bcfcb80177807f959d95fafd5bfc5c4f201ac8" @@ -2506,7 +2710,7 @@ dependencies = [ "checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1" "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" "checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384" -"checksum regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "75ecf88252dce580404a22444fc7d626c01815debba56a7f4f536772a5ff19d3" +"checksum regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "13c93d55961981ba9226a213b385216f83ab43bd6ac53ab16b2eeb47e337cf4e" "checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7" "checksum regex-syntax 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05b06a75f5217880fc5e905952a42750bf44787e56a6c6d6852ed0992f5e1d54" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" @@ -2521,45 +2725,49 @@ dependencies = [ "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)" = "210e5a3b159c566d7527e9b22e44be73f2e0fcc330bb78fef4dbccb56d2e74c8" -"checksum serde_derive 1.0.69 (registry+https://github.com/rust-lang/crates.io-index)" = "dd724d68017ae3a7e63600ee4b2fdb3cad2158ffd1821d44aff4580f63e2b593" -"checksum serde_json 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "fc97cccc2959f39984524026d760c08ef0dd5f0f5948c8d31797dbfae458c875" +"checksum serde 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)" = "0c3adf19c07af6d186d91dae8927b83b0553d07ca56cbf7f2f32560455c91920" +"checksum serde_derive 1.0.70 (registry+https://github.com/rust-lang/crates.io-index)" = "3525a779832b08693031b8ecfb0de81cd71cfd3812088fafe9a7496789572124" +"checksum serde_json 1.0.22 (registry+https://github.com/rust-lang/crates.io-index)" = "84b8035cabe9b35878adec8ac5fe03d5f6bc97ff6edd7ccb96b44c1276ba390e" "checksum serde_urlencoded 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e703cef904312097cfceab9ce131ff6bbe09e8c964a0703345a5f49238757bc1" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" "checksum siphasher 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0df90a788073e8d0235a67e50441d47db7c8ad9debd91cbf43736a2a92d36537" "checksum skeptic 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c4474d6da9593171bcb086890fc344a3a12783cb24e5b141f8a5d0e43561f4b6" "checksum slab 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fdeff4cd9ecff59ec7e3744cbca73dfe5ac35c2aedb2cfba8a1c715a18912e9d" "checksum slug 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "797bcb4d24e91239a8615415814f4afb2d8ca400c472de3c73f803a5a7689e11" -"checksum smallvec 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03dab98ab5ded3a8b43b2c80751194608d0b2aa0f1d46cf95d1c35e192844aa7" -"checksum socket2 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "06dc9f86ee48652b7c80f3d254e3b9accb67a928c562c64d10d7b016d3d98dab" +"checksum smallvec 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "312a7df010092e73d6bbaf141957e868d4f30efd2bfd9bb1028ad91abec58514" +"checksum socket2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "962a516af4d3a7c272cb3a1d50a8cc4e5b41802e4ad54cfb7bee8ba61d37d703" "checksum stable_deref_trait 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ffbc596e092fe5f598b12ef46cc03754085ac2f4d8c739ad61c4ae266cc3b3fa" -"checksum string 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "31f98b200e7caca9efca50fc0aa69cd58a5ec81d5f6e75b2f3ecaad2e998972a" +"checksum string 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00caf261d6f90f588f8450b8e1230fa0d5be49ee6140fdfbcb55335aff350970" "checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" "checksum syn 0.13.11 (registry+https://github.com/rust-lang/crates.io-index)" = "14f9bf6292f3a61d2c716723fdb789a41bbe104168e6f496dc6497e531ea1b9b" -"checksum syn 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c67da57e61ebc7b7b6fff56bb34440ca3a83db037320b0507af4c10368deda7d" +"checksum syn 0.14.4 (registry+https://github.com/rust-lang/crates.io-index)" = "2beff8ebc3658f07512a413866875adddd20f4fd47b2a4e6c9da65cd281baaea" "checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" "checksum synstructure 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3a761d12e6d8dcb4dcf952a7a89b475e3a9d69e4a69307e01a470977642914bd" "checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8" -"checksum tera 0.11.7 (registry+https://github.com/rust-lang/crates.io-index)" = "e815b67d44c26feb06630011fb58b5b243f4e9585aac1ed0592c5795de64cd75" +"checksum tera 0.11.8 (registry+https://github.com/rust-lang/crates.io-index)" = "fc0624177c585227fee0c5021bd6be3a1acf66bdb6f412acb92373637aad728b" "checksum termcolor 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "adc4587ead41bf016f11af03e55a624c06568b5a19db4e90fde573d805074f83" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "279ef31c19ededf577bfd12dfae728040a21f635b06a24cd670ff510edd38963" "checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" "checksum tokio 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "8ee337e5f4e501fc32966fec6fe0ca0cc1c237b0b1b14a335f8bfe3c5f06e286" +"checksum tokio-codec 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "881e9645b81c2ce95fcb799ded2c29ffb9f25ef5bef909089a420e5961dd8ccb" "checksum tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "aeeffbbb94209023feaef3c196a41cbcdafa06b4a6f893f68779bb5e53796f71" "checksum tokio-executor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8cac2a7883ff3567e9d66bb09100d09b33d90311feca0206c7ca034bc0c55113" -"checksum tokio-fs 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "76766830bbf9a2d5bfb50c95350d56a2e79e2c80f675967fff448bc615899708" -"checksum tokio-io 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "6af9eb326f64b2d6b68438e1953341e00ab3cf54de7e35d92bfc73af8555313a" -"checksum tokio-openssl 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7e88cd8a247335be936e713ca68a1cb5227df649e22e975b9a71b4e862169e82" -"checksum tokio-reactor 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b3cedc8e5af5131dc3423ffa4f877cce78ad25259a9a62de0613735a13ebc64b" +"checksum tokio-fs 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "40697ecbea5660df15b15d50a077386477d2f6a35002adf01ce76ff9dd9dce48" +"checksum tokio-io 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a5c9635ee806f26d302b8baa1e145689a280d8f5aa8d0552e7344808da54cc21" +"checksum tokio-openssl 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4646ae1fd623393de3d796ea53af75acd02938dd5579544fbd6d236d041978a6" +"checksum tokio-reactor 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e00ec63bbec2c97ce1178cb0587b2c438b2f6b09d3ee54a33c45a9cf0d530810" "checksum tokio-signal 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e8f46863230f9a05cf52d173721ec391b9c5782a2465f593029922b8782b9ffe" +"checksum tokio-signal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "342d088c63623f63eada591e065778038c63b516939530db2aa09a8df9118507" "checksum tokio-tcp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec9b094851aadd2caf83ba3ad8e8c4ce65a42104f7b94d9e6550023f0407853f" -"checksum tokio-threadpool 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b3c3873a6d8d0b636e024e77b9a82eaab6739578a06189ecd0e731c7308fbc5d" +"checksum tokio-threadpool 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "24ab84f574027b0e875378f31575cf175360891919e93a3490f07e76e00e4efb" "checksum tokio-timer 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "028b94314065b90f026a21826cffd62a4e40a92cda3e5c069cc7b02e5945f5e9" -"checksum tokio-udp 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "137bda266504893ac4774e0ec4c2108f7ccdbcb7ac8dced6305fe9e4e0b5041a" -"checksum tokio-uds 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "65ae5d255ce739e8537221ed2942e0445f4b3b813daebac1c0050ddaaa3587f9" +"checksum tokio-udp 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "43eb534af6e8f37d43ab1b612660df14755c42bd003c5f8d2475ee78cc4600c0" +"checksum tokio-uds 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2e49afa8f5a3449f901d6b1a522364d0a52154d6cd59db118354b19bb89ad479" "checksum trust-dns-proto 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cbbddb93547eeee847367d8f59b68002294a7b4df31c143fbee4109ce0c61a04" +"checksum trust-dns-proto 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "32d7c204ee231f802aa821f9dc2195aa0d0269ef7e9f8c844208565c9e3981e4" "checksum trust-dns-resolver 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9b0a0c9d4f8dd56481209c5ae1a8965ed022461d352c81fb92466ec9d846929e" +"checksum trust-dns-resolver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "28b094ad60c4f51f36a493201d04d6605183c62bd5f0c73008a732f23950c156" "checksum ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd2be2d6639d0f8fe6cdda291ad456e23629558d466e2789d2c3e9892bda285d" "checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" "checksum unicase 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "284b6d3db520d67fbe88fd778c21510d1b0ba4a551e5d0fbb023d33405f6de8a" @@ -2570,14 +2778,14 @@ dependencies = [ "checksum unidecode 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "402bb19d8e03f1d1a7450e2bd613980869438e0666331be3e073089124aa1adc" "checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f392d7819dbe58833e26872f5f6f0d68b7bbbe90fc3667e98731c4a15ad9a7ae" -"checksum url 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f808aadd8cfec6ef90e4a14eb46f24511824d1ac596b9682703c87056c8678b7" +"checksum url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2a321979c09843d272956e73700d12c4e7d3d92b2ee112b31548aef0d4efc5a6" "checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" "checksum uuid 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bcc7e3b898aa6f6c08e5295b6c89258d1331e9ac578cc992fb818759951bdc22" "checksum uuid 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e1436e58182935dcd9ce0add9ea0b558e8a87befe01c1a301e6020aeb0876363" "checksum validator 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0ee73a134910391b2a3ffd99f5ba0a67ebc0731e7cf92d56b6dccd1542823163" "checksum validator_derive 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ac6c1c4023f5feb24a1b54a02e8828ae231659cf72b20f6191a0656163a4ca12" -"checksum vcpkg 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7ed0f6789c8a85ca41bbc1c9d175422116a9869bd1cf31bb08e1493ecce60380" -"checksum version_check 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6b772017e347561807c1aa192438c5fd74242a670a6cffacc40f2defd1dc069d" +"checksum vcpkg 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cbe533e138811704c0e3cbde65a818b35d3240409b4346256c5ede403e082474" +"checksum version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7716c242968ee87e5542f8021178248f267f295a5c4803beae8b8b7fd9bc6051" "checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum walkdir 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "63636bd0eb3d00ccb8b9036381b526efac53caf112b7783b730ab3f8e44da369" "checksum widestring 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7157704c2e12e3d2189c507b7482c52820a16dfa4465ba91add92f266667cadb" diff --git a/async_db/Cargo.toml b/async_db/Cargo.toml index 64e86fd..c0d41f6 100644 --- a/async_db/Cargo.toml +++ b/async_db/Cargo.toml @@ -4,8 +4,10 @@ version = "0.1.0" authors = ["Darin Gordon "] [dependencies] -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + dotenv = "0.10" env_logger = "0.5" failure = "0.1.1" diff --git a/async_db/src/db.rs b/async_db/src/db.rs index 332caa6..a7903d7 100644 --- a/async_db/src/db.rs +++ b/async_db/src/db.rs @@ -1,31 +1,28 @@ use actix::prelude::*; -use std::{time::Duration, thread::sleep}; use failure::Error; use r2d2; use r2d2_sqlite; - +use std::{thread::sleep, time::Duration}; pub type Pool = r2d2::Pool; pub type Connection = r2d2::PooledConnection; - pub struct DbExecutor(pub Pool); impl Actor for DbExecutor { type Context = SyncContext; } - #[derive(Debug, Serialize, Deserialize)] pub enum WeatherAgg { - AnnualAgg {year: i32, total: f64}, - MonthAgg {year: i32, month: i32, total: f64} + AnnualAgg { year: i32, total: f64 }, + MonthAgg { year: i32, month: i32, total: f64 }, } pub enum Queries { GetTopTenHottestYears, GetTopTenColdestYears, GetTopTenHottestMonths, - GetTopTenColdestMonths + GetTopTenColdestMonths, } //pub struct GetTopTenHottestYears; @@ -41,7 +38,7 @@ impl Handler for DbExecutor { match msg { Queries::GetTopTenHottestYears => get_hottest_years(conn), Queries::GetTopTenColdestYears => get_coldest_years(conn), - Queries::GetTopTenHottestMonths =>get_hottest_months(conn), + Queries::GetTopTenHottestMonths => get_hottest_months(conn), Queries::GetTopTenColdestMonths => get_coldest_months(conn), } } @@ -56,13 +53,17 @@ fn get_hottest_years(conn: Connection) -> Result, Error> { GROUP BY theyear ORDER BY total DESC LIMIT 10;"; - let mut prep_stmt = conn.prepare(stmt)?; - let annuals = prep_stmt.query_map(&[], |row| { - WeatherAgg::AnnualAgg{year: row.get(0), - total: row.get(1)}}) - .and_then(|mapped_rows| - Ok(mapped_rows.map(|row| row.unwrap()).collect::>()))?; + let annuals = prep_stmt + .query_map(&[], |row| WeatherAgg::AnnualAgg { + year: row.get(0), + total: row.get(1), + }) + .and_then(|mapped_rows| { + Ok(mapped_rows + .map(|row| row.unwrap()) + .collect::>()) + })?; sleep(Duration::from_secs(2)); @@ -79,11 +80,16 @@ fn get_coldest_years(conn: Connection) -> Result, Error> { ORDER BY total ASC LIMIT 10;"; let mut prep_stmt = conn.prepare(stmt)?; - let annuals = prep_stmt.query_map(&[], |row| { - WeatherAgg::AnnualAgg{year: row.get(0), - total: row.get(1)}}) - .and_then(|mapped_rows| - Ok(mapped_rows.map(|row| row.unwrap()).collect::>()))?; + let annuals = prep_stmt + .query_map(&[], |row| WeatherAgg::AnnualAgg { + year: row.get(0), + total: row.get(1), + }) + .and_then(|mapped_rows| { + Ok(mapped_rows + .map(|row| row.unwrap()) + .collect::>()) + })?; sleep(Duration::from_secs(2)); @@ -91,8 +97,7 @@ fn get_coldest_years(conn: Connection) -> Result, Error> { } fn get_hottest_months(conn: Connection) -> Result, Error> { - let stmt = - "SELECT cast(strftime('%Y', date) as int) as theyear, + let stmt = "SELECT cast(strftime('%Y', date) as int) as theyear, cast(strftime('%m', date) as int) as themonth, sum(tmax) as total FROM nyc_weather @@ -101,20 +106,24 @@ fn get_hottest_months(conn: Connection) -> Result, Error> { ORDER BY total DESC LIMIT 10;"; let mut prep_stmt = conn.prepare(stmt)?; - let annuals = prep_stmt.query_map(&[], |row| { - WeatherAgg::MonthAgg{year: row.get(0), - month: row.get(1), - total: row.get(2)}}) - .and_then(|mapped_rows| - Ok(mapped_rows.map(|row| row.unwrap()).collect::>()))?; + let annuals = prep_stmt + .query_map(&[], |row| WeatherAgg::MonthAgg { + year: row.get(0), + month: row.get(1), + total: row.get(2), + }) + .and_then(|mapped_rows| { + Ok(mapped_rows + .map(|row| row.unwrap()) + .collect::>()) + })?; sleep(Duration::from_secs(2)); Ok(annuals) } fn get_coldest_months(conn: Connection) -> Result, Error> { - let stmt = - "SELECT cast(strftime('%Y', date) as int) as theyear, + let stmt = "SELECT cast(strftime('%Y', date) as int) as theyear, cast(strftime('%m', date) as int) as themonth, sum(tmax) as total FROM nyc_weather @@ -123,12 +132,17 @@ fn get_coldest_months(conn: Connection) -> Result, Error> { ORDER BY total ASC LIMIT 10;"; let mut prep_stmt = conn.prepare(stmt)?; - let annuals = prep_stmt.query_map(&[], |row| { - WeatherAgg::MonthAgg{year: row.get(0), - month: row.get(1), - total: row.get(2)}}) - .and_then(|mapped_rows| - Ok(mapped_rows.map(|row| row.unwrap()).collect::>()))?; + let annuals = prep_stmt + .query_map(&[], |row| WeatherAgg::MonthAgg { + year: row.get(0), + month: row.get(1), + total: row.get(2), + }) + .and_then(|mapped_rows| { + Ok(mapped_rows + .map(|row| row.unwrap()) + .collect::>()) + })?; sleep(Duration::from_secs(2)); Ok(annuals) diff --git a/async_db/src/main.rs b/async_db/src/main.rs index c8e9544..42dcb1b 100644 --- a/async_db/src/main.rs +++ b/async_db/src/main.rs @@ -10,7 +10,7 @@ This project illustrates two examples: */ -#[macro_use] extern crate actix; +extern crate actix; extern crate actix_web; extern crate env_logger; extern crate failure; @@ -19,51 +19,61 @@ extern crate num_cpus; extern crate r2d2; extern crate r2d2_sqlite; extern crate serde; -#[macro_use] extern crate serde_derive; +#[macro_use] +extern crate serde_derive; extern crate serde_json; use actix::prelude::*; use actix_web::{ - http, middleware, server, App, AsyncResponder, FutureResponse, HttpResponse, - State, Error as AWError + http, middleware, server, App, AsyncResponder, Error as AWError, FutureResponse, + HttpResponse, State, }; -use std::error::Error as StdError; -use failure::Error; -use futures::future::{Future, join_all, ok as fut_ok, err as fut_err}; +use futures::future::{join_all, ok as fut_ok, Future}; use r2d2_sqlite::SqliteConnectionManager; mod db; -use db::{DbExecutor, Queries, WeatherAgg, Pool}; +use db::{DbExecutor, Pool, Queries, WeatherAgg}; /// State with DbExecutor address struct AppState { - db: Addr, + db: Addr, } - /// Version 1: Calls 4 queries in sequential order, as an asynchronous handler fn asyncio_weather(state: State) -> FutureResponse { let mut result: Vec> = vec![]; - state.db.send(Queries::GetTopTenHottestYears).from_err() - .and_then(move |res| { - result.push(res.unwrap()); - state.db.send(Queries::GetTopTenColdestYears).from_err() + state + .db + .send(Queries::GetTopTenHottestYears) + .from_err() .and_then(move |res| { result.push(res.unwrap()); - state.db.send(Queries::GetTopTenHottestMonths).from_err() - .and_then(move |res| { - result.push(res.unwrap()); - state.db.send(Queries::GetTopTenColdestMonths).from_err() + state + .db + .send(Queries::GetTopTenColdestYears) + .from_err() .and_then(move |res| { result.push(res.unwrap()); - fut_ok(result) - }) - }) + state + .db + .send(Queries::GetTopTenHottestMonths) + .from_err() + .and_then(move |res| { + result.push(res.unwrap()); + state + .db + .send(Queries::GetTopTenColdestMonths) + .from_err() + .and_then(move |res| { + result.push(res.unwrap()); + fut_ok(result) + }) + }) + }) }) - }) - .and_then(|res| Ok(HttpResponse::Ok().json(res))) - .responder() + .and_then(|res| Ok(HttpResponse::Ok().json(res))) + .responder() } /// Version 2: Calls 4 queries in parallel, as an asynchronous handler @@ -73,12 +83,13 @@ fn parallel_weather(state: State) -> FutureResponse { Box::new(state.db.send(Queries::GetTopTenHottestYears)), Box::new(state.db.send(Queries::GetTopTenColdestYears)), Box::new(state.db.send(Queries::GetTopTenHottestMonths)), - Box::new(state.db.send(Queries::GetTopTenColdestMonths))]; + Box::new(state.db.send(Queries::GetTopTenColdestMonths)), + ]; join_all(fut_result) .map_err(AWError::from) .and_then(|result| { - let res: Vec>> = + let res: Vec>> = result.into_iter().map(|x| x.ok()).collect(); Ok(HttpResponse::Ok().json(res)) @@ -103,10 +114,10 @@ fn main() { App::with_state(AppState{db: addr.clone()}) // enable logger .middleware(middleware::Logger::default()) - .resource("/asyncio_weather", |r| + .resource("/asyncio_weather", |r| r.method(http::Method::GET) .with(asyncio_weather)) - .resource("/parallel_weather", |r| + .resource("/parallel_weather", |r| r.method(http::Method::GET) .with(parallel_weather)) }).bind("127.0.0.1:8080") diff --git a/async_ex1/Cargo.toml b/async_ex1/Cargo.toml index 9b66bbd..eb05d12 100644 --- a/async_ex1/Cargo.toml +++ b/async_ex1/Cargo.toml @@ -4,8 +4,10 @@ version = "0.1.0" authors = ["dowwie "] [dependencies] -actix = "0.5.6" -actix-web = { version = "^0.6", features=["alpn"] } +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + futures = "0.1" serde = "1.0.43" serde_derive = "1.0.43" diff --git a/basics/Cargo.toml b/basics/Cargo.toml index 5009ab3..ec0787f 100644 --- a/basics/Cargo.toml +++ b/basics/Cargo.toml @@ -5,8 +5,10 @@ authors = ["Nikolay Kim "] workspace = "../" [dependencies] +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + futures = "0.1" env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" bytes = "0.4" diff --git a/basics/src/main.rs b/basics/src/main.rs index 7c37e6e..b22f4d8 100644 --- a/basics/src/main.rs +++ b/basics/src/main.rs @@ -21,21 +21,14 @@ use futures::future::{result, FutureResult}; use std::{env, io}; /// favicon handler -fn favicon(req: HttpRequest) -> Result { +fn favicon(req: &HttpRequest) -> Result { Ok(fs::NamedFile::open("static/favicon.ico")?) } /// simple index handler -fn welcome(mut req: HttpRequest) -> Result { +fn welcome(req: &HttpRequest) -> Result { println!("{:?}", req); - // example of ... - if let Ok(ch) = req.poll() { - if let futures::Async::Ready(Some(d)) = ch { - println!("{}", String::from_utf8_lossy(d.as_ref())); - } - } - // session let mut counter = 1; if let Some(count) = req.session().get::("counter")? { @@ -53,12 +46,12 @@ fn welcome(mut req: HttpRequest) -> Result { } /// 404 handler -fn p404(req: HttpRequest) -> Result { +fn p404(req: &HttpRequest) -> Result { Ok(fs::NamedFile::open("static/404.html")?.set_status_code(StatusCode::NOT_FOUND)) } /// async handler -fn index_async(req: HttpRequest) -> FutureResult { +fn index_async(req: &HttpRequest) -> FutureResult { println!("{:?}", req); result(Ok(HttpResponse::Ok().content_type("text/html").body( @@ -78,7 +71,7 @@ fn index_async_body(path: Path) -> HttpResponse { } /// handler with path parameters like `/user/{name}/` -fn with_param(req: HttpRequest) -> HttpResponse { +fn with_param(req: &HttpRequest) -> HttpResponse { println!("{:?}", req); HttpResponse::Ok() @@ -122,7 +115,7 @@ fn main() { io::Error::new(io::ErrorKind::Other, "test"), StatusCode::INTERNAL_SERVER_ERROR) })) // static files - .handler("/static", fs::StaticFiles::new("static")) + .handler("/static", fs::StaticFiles::new("static").unwrap()) // redirect .resource("/", |r| r.method(Method::GET).f(|req| { println!("{:?}", req); diff --git a/cookie-auth/Cargo.toml b/cookie-auth/Cargo.toml index c811812..72ff117 100644 --- a/cookie-auth/Cargo.toml +++ b/cookie-auth/Cargo.toml @@ -5,8 +5,10 @@ authors = ["Nikolay Kim "] workspace = "../" [dependencies] -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + cookie = { version="0.10", features=["percent-encode", "secure"] } futures = "0.1" time = "0.1" diff --git a/cookie-auth/src/auth.rs b/cookie-auth/src/auth.rs index a1477ca..56ec54e 100644 --- a/cookie-auth/src/auth.rs +++ b/cookie-auth/src/auth.rs @@ -14,31 +14,31 @@ use actix_web::{Error, HttpRequest, HttpResponse, Result}; pub trait RequestIdentity { /// Return the claimed identity of the user associated request or /// ``None`` if no identity can be found associated with the request. - fn identity(&mut self) -> Option<&str>; + fn identity(&self) -> Option; /// Remember identity. - fn remember(&mut self, identity: String); + fn remember(&self, identity: String); /// This method is used to 'forget' the current identity on subsequent /// requests. - fn forget(&mut self); + fn forget(&self); } impl RequestIdentity for HttpRequest { - fn identity(&mut self) -> Option<&str> { + fn identity(&self) -> Option { if let Some(id) = self.extensions().get::() { - return id.0.identity(); + return id.0.identity().map(|s| s.to_owned()); } None } - fn remember(&mut self, identity: String) { + fn remember(&self, identity: String) { if let Some(id) = self.extensions_mut().get_mut::() { - return id.0.remember(identity); + return id.0.as_mut().remember(identity); } } - fn forget(&mut self) { + fn forget(&self) { if let Some(id) = self.extensions_mut().get_mut::() { return id.0.forget(); } @@ -86,7 +86,7 @@ unsafe impl Send for IdentityBox {} unsafe impl Sync for IdentityBox {} impl> Middleware for IdentityService { - fn start(&self, req: &mut HttpRequest) -> Result { + fn start(&self, req: &HttpRequest) -> Result { let mut req = req.clone(); let fut = self @@ -102,9 +102,7 @@ impl> Middleware for IdentityService { Ok(Started::Future(Box::new(fut))) } - fn response( - &self, req: &mut HttpRequest, resp: HttpResponse, - ) -> Result { + fn response(&self, req: &HttpRequest, resp: HttpResponse) -> Result { if let Some(mut id) = req.extensions_mut().remove::() { id.0.write(resp) } else { @@ -200,7 +198,7 @@ impl CookieIdentityInner { fn load(&self, req: &mut HttpRequest) -> Option { if let Ok(cookies) = req.cookies() { - for cookie in cookies { + for cookie in cookies.iter() { if cookie.name() == self.name { let mut jar = CookieJar::new(); jar.add_original(cookie.clone()); diff --git a/cookie-auth/src/main.rs b/cookie-auth/src/main.rs index 6b32bf1..f7a0c09 100644 --- a/cookie-auth/src/main.rs +++ b/cookie-auth/src/main.rs @@ -10,16 +10,16 @@ use actix_web::{middleware, server, App, HttpRequest, HttpResponse}; mod auth; use auth::{CookieIdentityPolicy, IdentityService, RequestIdentity}; -fn index(mut req: HttpRequest) -> String { - format!("Hello {}", req.identity().unwrap_or("Anonymous")) +fn index(req: &HttpRequest) -> String { + format!("Hello {}", req.identity().unwrap_or("Anonymous".to_owned())) } -fn login(mut req: HttpRequest) -> HttpResponse { +fn login(req: &HttpRequest) -> HttpResponse { req.remember("user1".to_owned()); HttpResponse::Found().header("location", "/").finish() } -fn logout(mut req: HttpRequest) -> HttpResponse { +fn logout(req: &HttpRequest) -> HttpResponse { req.forget(); HttpResponse::Found().header("location", "/").finish() } diff --git a/cookie-session/Cargo.toml b/cookie-session/Cargo.toml index 45042ca..2e83ce5 100644 --- a/cookie-session/Cargo.toml +++ b/cookie-session/Cargo.toml @@ -5,8 +5,10 @@ authors = ["Nikolay Kim "] workspace = "../" [dependencies] -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + futures = "0.1" time = "0.1" env_logger = "0.5" diff --git a/cookie-session/src/main.rs b/cookie-session/src/main.rs index 0dd10a0..94f736f 100644 --- a/cookie-session/src/main.rs +++ b/cookie-session/src/main.rs @@ -15,7 +15,7 @@ use actix_web::{middleware, server, App, HttpRequest, Result}; use std::env; /// simple index handler with session -fn index(req: HttpRequest) -> Result<&'static str> { +fn index(req: &HttpRequest) -> Result<&'static str> { println!("{:?}", req); // RequestSession trait is used for session access diff --git a/diesel/Cargo.toml b/diesel/Cargo.toml index d9bfc4c..18a2b53 100644 --- a/diesel/Cargo.toml +++ b/diesel/Cargo.toml @@ -6,8 +6,10 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } futures = "0.1" uuid = { version = "0.5", features = ["serde", "v4"] } diff --git a/diesel/src/main.rs b/diesel/src/main.rs index 96b7b79..a94f65a 100644 --- a/diesel/src/main.rs +++ b/diesel/src/main.rs @@ -35,7 +35,7 @@ use db::{CreateUser, DbExecutor}; /// State with DbExecutor address struct AppState { - db: Addr, + db: Addr, } /// Async request handler diff --git a/form/Cargo.toml b/form/Cargo.toml index 436d916..def9166 100644 --- a/form/Cargo.toml +++ b/form/Cargo.toml @@ -4,7 +4,9 @@ version = "0.1.0" authors = ["Gorm Casper "] [dependencies] -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + serde = "1.0" serde_derive = "1.0" diff --git a/hello-world/Cargo.toml b/hello-world/Cargo.toml index a1b1731..d817e42 100644 --- a/hello-world/Cargo.toml +++ b/hello-world/Cargo.toml @@ -6,5 +6,7 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/hello-world/src/main.rs b/hello-world/src/main.rs index d7a5ecd..90d93b7 100644 --- a/hello-world/src/main.rs +++ b/hello-world/src/main.rs @@ -4,7 +4,7 @@ extern crate env_logger; use actix_web::{middleware, server, App, HttpRequest}; -fn index(_req: HttpRequest) -> &'static str { +fn index(_req: &HttpRequest) -> &'static str { "Hello world!" } diff --git a/http-proxy/Cargo.toml b/http-proxy/Cargo.toml index 6a9de25..2e8566b 100644 --- a/http-proxy/Cargo.toml +++ b/http-proxy/Cargo.toml @@ -15,5 +15,7 @@ path = "src/server.rs" [dependencies] env_logger = "0.5" futures = "0.1" -actix = "0.5" -actix-web = { version = "^0.6", features=["alpn"] } + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/http-proxy/src/main.rs b/http-proxy/src/main.rs index 2e75087..3785ae6 100644 --- a/http-proxy/src/main.rs +++ b/http-proxy/src/main.rs @@ -10,7 +10,7 @@ use actix_web::{ use futures::{Future, Stream}; /// Stream client request response and then send body to a server response -fn index(_req: HttpRequest) -> Box> { +fn index(_req: &HttpRequest) -> Box> { client::ClientRequest::get("http://127.0.0.1:8081/") .finish().unwrap() .send() @@ -25,7 +25,7 @@ fn index(_req: HttpRequest) -> Box> { } /// streaming client request to a streaming server response -fn streaming(_req: HttpRequest) -> Box> { +fn streaming(_req: &HttpRequest) -> Box> { // send client request client::ClientRequest::get("https://www.rust-lang.org/en-US/") .finish().unwrap() @@ -35,7 +35,7 @@ fn streaming(_req: HttpRequest) -> Box FutureResponse { +fn index(req: &HttpRequest) -> FutureResponse { req.body() .from_err() .map(|bytes| HttpResponse::Ok().body(bytes)) diff --git a/json/Cargo.toml b/json/Cargo.toml index e331dfe..0467175 100644 --- a/json/Cargo.toml +++ b/json/Cargo.toml @@ -14,5 +14,6 @@ serde_json = "1.0" serde_derive = "1.0" json = "*" -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/json/src/main.rs b/json/src/main.rs index 0e31315..64ea573 100644 --- a/json/src/main.rs +++ b/json/src/main.rs @@ -25,7 +25,7 @@ struct MyObj { } /// This handler uses `HttpRequest::json()` for loading json object. -fn index(req: HttpRequest) -> Box> { +fn index(req: &HttpRequest) -> Box> { req.json() .from_err() // convert all errors into `Error` .and_then(|val: MyObj| { @@ -50,9 +50,9 @@ fn extract_item_limit((item, _req): (Json, HttpRequest)) -> HttpResponse const MAX_SIZE: usize = 262_144; // max payload size is 256k /// This handler manually load request payload and parse json object -fn index_manual(req: HttpRequest) -> Box> { - // HttpRequest is stream of Bytes objects - req +fn index_manual(req: &HttpRequest) -> Box> { + // HttpRequest::payload() is stream of Bytes objects + req.payload() // `Future::from_err` acts like `?` in that it coerces the error type from // the future into the final error type .from_err() @@ -79,8 +79,11 @@ fn index_manual(req: HttpRequest) -> Box Box> { - req.concat2() +fn index_mjsonrust( + req: &HttpRequest, +) -> Box> { + req.payload() + .concat2() .from_err() .and_then(|body| { // body is loaded, now we can deserialize json-rust @@ -107,13 +110,15 @@ fn main() { .middleware(middleware::Logger::default()) .resource("/extractor", |r| { r.method(http::Method::POST) - .with(extract_item) - .limit(4096); // <- limit size of the payload + .with_config(extract_item, |cfg| { + cfg.limit(4096); // <- limit size of the payload + }) }) .resource("/extractor2", |r| { r.method(http::Method::POST) - .with(extract_item_limit) - .0.limit(4096); // <- limit size of the payload + .with_config(extract_item_limit, |cfg| { + cfg.0.limit(4096); // <- limit size of the payload + }) }) .resource("/manual", |r| r.method(http::Method::POST).f(index_manual)) .resource("/mjsonrust", |r| r.method(http::Method::POST).f(index_mjsonrust)) diff --git a/juniper/Cargo.toml b/juniper/Cargo.toml index 95e022b..ffe978e 100644 --- a/juniper/Cargo.toml +++ b/juniper/Cargo.toml @@ -6,8 +6,10 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } futures = "0.1" serde = "1.0" diff --git a/juniper/src/main.rs b/juniper/src/main.rs index 6e3bd61..d06cc5e 100644 --- a/juniper/src/main.rs +++ b/juniper/src/main.rs @@ -27,7 +27,7 @@ use schema::create_schema; use schema::Schema; struct AppState { - executor: Addr, + executor: Addr, } #[derive(Serialize, Deserialize)] @@ -61,7 +61,7 @@ impl Handler for GraphQLExecutor { } } -fn graphiql(_req: HttpRequest) -> Result { +fn graphiql(_req: &HttpRequest) -> Result { let html = graphiql_source("http://127.0.0.1:8080/graphql"); Ok(HttpResponse::Ok() .content_type("text/html; charset=utf-8") diff --git a/middleware/Cargo.toml b/middleware/Cargo.toml index 9db8f0b..78b4002 100644 --- a/middleware/Cargo.toml +++ b/middleware/Cargo.toml @@ -4,5 +4,6 @@ version = "0.1.0" authors = ["Gorm Casper "] [dependencies] -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/middleware/src/redirect.rs b/middleware/src/redirect.rs index 60f54ca..a0d5de6 100644 --- a/middleware/src/redirect.rs +++ b/middleware/src/redirect.rs @@ -7,7 +7,7 @@ pub struct CheckLogin; impl Middleware for CheckLogin { // We only need to hook into the `start` for this middleware. - fn start(&self, req: &mut HttpRequest) -> Result { + fn start(&self, req: &HttpRequest) -> Result { let is_logged_in = false; // Change this to see the change in outcome in the browser if is_logged_in { diff --git a/middleware/src/simple.rs b/middleware/src/simple.rs index e39689a..254f263 100644 --- a/middleware/src/simple.rs +++ b/middleware/src/simple.rs @@ -8,21 +8,17 @@ use actix_web::{HttpRequest, HttpResponse, Result}; pub struct SayHi; impl Middleware for SayHi { - fn start(&self, req: &mut HttpRequest) -> Result { + fn start(&self, req: &HttpRequest) -> Result { println!("Hi from start. You requested: {}", req.path()); Ok(Started::Done) } - fn response( - &self, - _req: &mut HttpRequest, - resp: HttpResponse, - ) -> Result { + fn response(&self, _req: &HttpRequest, resp: HttpResponse) -> Result { println!("Hi from response"); Ok(Response::Done(resp)) } - fn finish(&self, _req: &mut HttpRequest, _resp: &HttpResponse) -> Finished { + fn finish(&self, _req: &HttpRequest, _resp: &HttpResponse) -> Finished { println!("Hi from finish"); Finished::Done } diff --git a/multipart/Cargo.toml b/multipart/Cargo.toml index 0f133d1..d91b243 100644 --- a/multipart/Cargo.toml +++ b/multipart/Cargo.toml @@ -11,5 +11,7 @@ path = "src/main.rs" [dependencies] env_logger = "*" futures = "0.1" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/multipart/src/main.rs b/multipart/src/main.rs index 5643f17..6cea253 100644 --- a/multipart/src/main.rs +++ b/multipart/src/main.rs @@ -4,13 +4,13 @@ extern crate actix_web; extern crate env_logger; extern crate futures; +use std::cell::Cell; use std::fs; use std::io::Write; -use std::cell::Cell; use actix_web::{ - error, http, middleware, multipart, server, App, Error, FutureResponse, HttpMessage, - HttpRequest, HttpResponse, + dev, error, http, middleware, multipart, server, App, Error, FutureResponse, + HttpMessage, HttpRequest, HttpResponse, }; use futures::future; @@ -20,7 +20,9 @@ pub struct AppState { pub counter: Cell, } -pub fn save_file( field: multipart::Field>) -> Box> { +pub fn save_file( + field: multipart::Field, +) -> Box> { let file_path_string = "upload.png"; let mut file = match fs::File::create(file_path_string) { Ok(file) => file, @@ -45,7 +47,9 @@ pub fn save_file( field: multipart::Field>) -> Box>) -> Box> { +pub fn handle_multipart_item( + item: multipart::MultipartItem, +) -> Box> { match item { multipart::MultipartItem::Field(field) => { Box::new(save_file(field).into_stream()) @@ -60,10 +64,9 @@ pub fn handle_multipart_item( item: multipart::MultipartItem) -> FutureResponse { req.state().counter.set(req.state().counter.get() + 1); - println!("{:?}", req.state().counter.get()); + println!("{:?}", req.state().counter.get()); Box::new( - req.clone() - .multipart() + req.multipart() .map_err(error::ErrorInternalServerError) .map(handle_multipart_item) .flatten() @@ -96,8 +99,9 @@ fn main() { let sys = actix::System::new("multipart-example"); server::new(|| { - App::with_state(AppState{counter: Cell::new(0)}) - .middleware(middleware::Logger::default()) + App::with_state(AppState { + counter: Cell::new(0), + }).middleware(middleware::Logger::default()) .resource("/", |r| { r.method(http::Method::GET).with(index); r.method(http::Method::POST).with(upload); diff --git a/protobuf/Cargo.toml b/protobuf/Cargo.toml index 566260b..c217a2f 100644 --- a/protobuf/Cargo.toml +++ b/protobuf/Cargo.toml @@ -13,5 +13,6 @@ env_logger = "*" prost = "0.2.0" prost-derive = "0.2.0" -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/protobuf/src/main.rs b/protobuf/src/main.rs index 5b4d953..aaae1f1 100644 --- a/protobuf/src/main.rs +++ b/protobuf/src/main.rs @@ -26,7 +26,7 @@ pub struct MyObj { } /// This handler uses `ProtoBufMessage` for loading protobuf object. -fn index(req: HttpRequest) -> Box> { +fn index(req: &HttpRequest) -> Box> { protobuf::ProtoBufMessage::new(req) .from_err() // convert all errors into `Error` .and_then(|val: MyObj| { diff --git a/protobuf/src/protobuf.rs b/protobuf/src/protobuf.rs index 9f1974e..a9c2265 100644 --- a/protobuf/src/protobuf.rs +++ b/protobuf/src/protobuf.rs @@ -1,4 +1,4 @@ -use bytes::{Bytes, BytesMut}; +use bytes::BytesMut; use futures::{Future, Poll, Stream}; use bytes::IntoBuf; @@ -8,7 +8,7 @@ use prost::Message; use actix_web::dev::HttpResponseBuilder; use actix_web::error::{Error, PayloadError, ResponseError}; -use actix_web::http::header::{CONTENT_LENGTH, CONTENT_TYPE}; +use actix_web::http::header::CONTENT_TYPE; use actix_web::{HttpMessage, HttpRequest, HttpResponse, Responder}; #[derive(Fail, Debug)] @@ -72,84 +72,32 @@ impl Responder for ProtoBuf { } } -pub struct ProtoBufMessage { - limit: usize, - ct: &'static str, - req: Option, - fut: Option>>, +pub struct ProtoBufMessage { + fut: Box>, } -impl ProtoBufMessage { +impl ProtoBufMessage { /// Create `ProtoBufMessage` for request. - pub fn new(req: T) -> Self { - ProtoBufMessage { - limit: 262_144, - req: Some(req), - fut: None, - ct: "application/protobuf", - } - } + pub fn new(req: &HttpRequest) -> Self { + let fut = req + .payload() + .map_err(|e| ProtoBufPayloadError::Payload(e)) + .fold(BytesMut::new(), move |mut body, chunk| { + body.extend_from_slice(&chunk); + Ok::<_, ProtoBufPayloadError>(body) + }) + .and_then(|body| Ok(::decode(&mut body.into_buf())?)); - /// Change max size of payload. By default max size is 256Kb - pub fn limit(mut self, limit: usize) -> Self { - self.limit = limit; - self - } - - /// Set allowed content type. - /// - /// By default *application/protobuf* content type is used. Set content type - /// to empty string if you want to disable content type check. - pub fn content_type(mut self, ct: &'static str) -> Self { - self.ct = ct; - self + ProtoBufMessage { fut: Box::new(fut) } } } -impl Future for ProtoBufMessage -where - T: HttpMessage + Stream + 'static, -{ +impl Future for ProtoBufMessage where { type Item = U; type Error = ProtoBufPayloadError; fn poll(&mut self) -> Poll { - if let Some(req) = self.req.take() { - if let Some(len) = req.headers().get(CONTENT_LENGTH) { - if let Ok(s) = len.to_str() { - if let Ok(len) = s.parse::() { - if len > self.limit { - return Err(ProtoBufPayloadError::Overflow); - } - } else { - return Err(ProtoBufPayloadError::Overflow); - } - } - } - // check content-type - if !self.ct.is_empty() && req.content_type() != self.ct { - return Err(ProtoBufPayloadError::ContentType); - } - - let limit = self.limit; - let fut = req - .from_err() - .fold(BytesMut::new(), move |mut body, chunk| { - if (body.len() + chunk.len()) > limit { - Err(ProtoBufPayloadError::Overflow) - } else { - body.extend_from_slice(&chunk); - Ok(body) - } - }) - .and_then(|body| Ok(::decode(&mut body.into_buf())?)); - self.fut = Some(Box::new(fut)); - } - - self.fut - .as_mut() - .expect("ProtoBufBody could not be used second time") - .poll() + self.fut.poll() } } diff --git a/r2d2/Cargo.toml b/r2d2/Cargo.toml index 99bbede..bbc07fd 100644 --- a/r2d2/Cargo.toml +++ b/r2d2/Cargo.toml @@ -6,8 +6,10 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } futures = "0.1" uuid = { version = "0.5", features = ["serde", "v4"] } diff --git a/r2d2/src/main.rs b/r2d2/src/main.rs index dbeb825..e3cdb42 100644 --- a/r2d2/src/main.rs +++ b/r2d2/src/main.rs @@ -22,11 +22,11 @@ use db::{CreateUser, DbExecutor}; /// State with DbExecutor address struct State { - db: Addr, + db: Addr, } /// Async request handler -fn index(req: HttpRequest) -> Box> { +fn index(req: &HttpRequest) -> Box> { let name = &req.match_info()["name"]; req.state() diff --git a/state/Cargo.toml b/state/Cargo.toml index c031e7f..c9cdb67 100644 --- a/state/Cargo.toml +++ b/state/Cargo.toml @@ -7,5 +7,7 @@ workspace = "../" [dependencies] futures = "0.1" env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/state/src/main.rs b/state/src/main.rs index 9bc4987..3552b43 100644 --- a/state/src/main.rs +++ b/state/src/main.rs @@ -25,7 +25,7 @@ struct AppState { } /// simple handle -fn index(req: HttpRequest) -> HttpResponse { +fn index(req: &HttpRequest) -> HttpResponse { println!("{:?}", req); req.state().counter.set(req.state().counter.get() + 1); diff --git a/static_index/Cargo.toml b/static_index/Cargo.toml index 853cbdc..132c7db 100644 --- a/static_index/Cargo.toml +++ b/static_index/Cargo.toml @@ -7,5 +7,7 @@ workspace = "../" [dependencies] futures = "0.1" env_logger = "0.5" -actix = "0.5" -actix-web = "0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/static_index/src/main.rs b/static_index/src/main.rs index 3b409a0..25c77c0 100644 --- a/static_index/src/main.rs +++ b/static_index/src/main.rs @@ -17,7 +17,7 @@ fn main() { .middleware(middleware::Logger::default()) .handler( "/", - fs::StaticFiles::new("./static/").index_file("index.html") + fs::StaticFiles::new("./static/").unwrap().index_file("index.html") ) }).bind("127.0.0.1:8080") .expect("Can not start server on given IP/Port") diff --git a/template_askama/Cargo.toml b/template_askama/Cargo.toml index 8648253..95c6ca3 100644 --- a/template_askama/Cargo.toml +++ b/template_askama/Cargo.toml @@ -6,9 +6,11 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" askama = "0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + [build-dependencies] -askama = "0.6" \ No newline at end of file +askama = "0.6" diff --git a/template_tera/Cargo.toml b/template_tera/Cargo.toml index c228866..c60eae8 100644 --- a/template_tera/Cargo.toml +++ b/template_tera/Cargo.toml @@ -6,6 +6,7 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" tera = "*" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/tls/Cargo.toml b/tls/Cargo.toml index 4a689a9..11b32b6 100644 --- a/tls/Cargo.toml +++ b/tls/Cargo.toml @@ -10,6 +10,7 @@ path = "src/main.rs" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = { version = "^0.6", features=["alpn"] } openssl = { version="0.10" } +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/tls/src/main.rs b/tls/src/main.rs index ff47dbe..329e15d 100644 --- a/tls/src/main.rs +++ b/tls/src/main.rs @@ -8,7 +8,7 @@ use actix_web::{http, middleware, server, App, Error, HttpRequest, HttpResponse} use openssl::ssl::{SslAcceptor, SslFiletype, SslMethod}; /// simple handle -fn index(req: HttpRequest) -> Result { +fn index(req: &HttpRequest) -> Result { println!("{:?}", req); Ok(HttpResponse::Ok() .content_type("text/plain") diff --git a/unix-socket/Cargo.toml b/unix-socket/Cargo.toml index af3d325..8551d77 100644 --- a/unix-socket/Cargo.toml +++ b/unix-socket/Cargo.toml @@ -6,6 +6,8 @@ workspace = "../" [dependencies] env_logger = "0.5" -actix = "0.5" -actix-web = "^0.6" -tokio-uds = "0.1" +tokio-uds = "0.2" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/unix-socket/src/main.rs b/unix-socket/src/main.rs index e583e5e..d999f8e 100644 --- a/unix-socket/src/main.rs +++ b/unix-socket/src/main.rs @@ -7,7 +7,7 @@ use actix::*; use actix_web::{middleware, server, App, HttpRequest}; use tokio_uds::UnixListener; -fn index(_req: HttpRequest) -> &'static str { +fn index(_req: &HttpRequest) -> &'static str { "Hello world!" } @@ -16,8 +16,7 @@ fn main() { env_logger::init(); let sys = actix::System::new("unix-socket"); - let listener = UnixListener::bind("/tmp/actix-uds.socket", Arbiter::handle()) - .expect("bind failed"); + let listener = UnixListener::bind("/tmp/actix-uds.socket").expect("bind failed"); server::new(|| { App::new() // enable logger diff --git a/web-cors/backend/Cargo.toml b/web-cors/backend/Cargo.toml index 8645ab6..5e9bca9 100644 --- a/web-cors/backend/Cargo.toml +++ b/web-cors/backend/Cargo.toml @@ -10,8 +10,10 @@ serde_derive = "1.0" serde_json = "1.0" http = "0.1" -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } + dotenv = "0.10" env_logger = "0.5" futures = "0.1" diff --git a/web-cors/backend/src/main.rs b/web-cors/backend/src/main.rs index 24467b7..8191cee 100644 --- a/web-cors/backend/src/main.rs +++ b/web-cors/backend/src/main.rs @@ -8,7 +8,10 @@ extern crate serde; extern crate serde_json; use actix_web::{ - http::{header, Method}, middleware, middleware::cors::Cors, server, App, + http::{header, Method}, + middleware, + middleware::cors::Cors, + server, App, }; use std::env; diff --git a/websocket-chat/Cargo.toml b/websocket-chat/Cargo.toml index 5b53a70..36c78c0 100644 --- a/websocket-chat/Cargo.toml +++ b/websocket-chat/Cargo.toml @@ -20,5 +20,6 @@ env_logger = "*" serde = "1.0" serde_json = "1.0" -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/websocket-chat/src/main.rs b/websocket-chat/src/main.rs index 496ceec..21dc598 100644 --- a/websocket-chat/src/main.rs +++ b/websocket-chat/src/main.rs @@ -24,11 +24,11 @@ mod server; /// This is our websocket route state, this state is shared with all route /// instances via `HttpContext::state()` struct WsChatSessionState { - addr: Addr, + addr: Addr, } /// Entry point for our route -fn chat_route(req: HttpRequest) -> Result { +fn chat_route(req: &HttpRequest) -> Result { ws::start( req, WsChatSession { @@ -63,7 +63,7 @@ impl Actor for WsChatSession { // before processing any other events. // HttpContext::state() is instance of WsChatSessionState, state is shared // across all routes within application - let addr: Addr = ctx.address(); + let addr = ctx.address(); ctx.state() .addr .send(server::Connect { @@ -183,7 +183,7 @@ fn main() { let sys = actix::System::new("websocket-example"); // Start chat server actor in separate thread - let server: Addr = Arbiter::start(|_| server::ChatServer::default()); + let server = Arbiter::start(|_| server::ChatServer::default()); // Create Http server with websocket support HttpServer::new(move || { @@ -193,16 +193,16 @@ fn main() { }; App::with_state(state) - // redirect to websocket.html - .resource("/", |r| r.method(http::Method::GET).f(|_| { - HttpResponse::Found() - .header("LOCATION", "/static/websocket.html") - .finish() - })) - // websocket - .resource("/ws/", |r| r.route().f(chat_route)) - // static resources - .handler("/static/", fs::StaticFiles::new("static/")) + // redirect to websocket.html + .resource("/", |r| r.method(http::Method::GET).f(|_| { + HttpResponse::Found() + .header("LOCATION", "/static/websocket.html") + .finish() + })) + // websocket + .resource("/ws/", |r| r.route().f(chat_route)) + // static resources + .handler("/static/", fs::StaticFiles::new("static/").unwrap()) }).bind("127.0.0.1:8080") .unwrap() .start(); diff --git a/websocket-chat/src/server.rs b/websocket-chat/src/server.rs index 53c1b0e..a4da293 100644 --- a/websocket-chat/src/server.rs +++ b/websocket-chat/src/server.rs @@ -17,7 +17,7 @@ pub struct Message(pub String); #[derive(Message)] #[rtype(usize)] pub struct Connect { - pub addr: Recipient, + pub addr: Recipient, } /// Session is disconnected @@ -56,7 +56,7 @@ pub struct Join { /// `ChatServer` manages chat rooms and responsible for coordinating chat /// session. implementation is super primitive pub struct ChatServer { - sessions: HashMap>, + sessions: HashMap>, rooms: HashMap>, rng: RefCell, } diff --git a/websocket-tcp-chat/Cargo.toml b/websocket-tcp-chat/Cargo.toml index 3461ba7..f3df466 100644 --- a/websocket-tcp-chat/Cargo.toml +++ b/websocket-tcp-chat/Cargo.toml @@ -18,12 +18,14 @@ bytes = "0.4" byteorder = "1.1" futures = "0.1" tokio-io = "0.1" -tokio-core = "0.1" +tokio-tcp = "0.1" +tokio-codec = "0.1" env_logger = "*" serde = "1.0" serde_json = "1.0" serde_derive = "1.0" -actix = "0.5" -actix-web = "^0.6" +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/websocket-tcp-chat/src/client.rs b/websocket-tcp-chat/src/client.rs index 9712d16..9b9e0d5 100644 --- a/websocket-tcp-chat/src/client.rs +++ b/websocket-tcp-chat/src/client.rs @@ -5,8 +5,9 @@ extern crate bytes; extern crate futures; extern crate serde; extern crate serde_json; -extern crate tokio_core; +extern crate tokio_codec; extern crate tokio_io; +extern crate tokio_tcp; #[macro_use] extern crate serde_derive; @@ -15,10 +16,10 @@ use futures::Future; use std::str::FromStr; use std::time::Duration; use std::{io, net, process, thread}; -use tokio_core::net::TcpStream; -use tokio_io::codec::FramedRead; +use tokio_codec::FramedRead; use tokio_io::io::WriteHalf; use tokio_io::AsyncRead; +use tokio_tcp::TcpStream; mod codec; @@ -27,10 +28,10 @@ fn main() { // Connect to server let addr = net::SocketAddr::from_str("127.0.0.1:12345").unwrap(); - Arbiter::handle().spawn( - TcpStream::connect(&addr, Arbiter::handle()) + Arbiter::spawn( + TcpStream::connect(&addr) .and_then(|stream| { - let addr: Addr = ChatClient::create(|ctx| { + let addr = ChatClient::create(|ctx| { let (r, w) = stream.split(); ChatClient::add_stream( FramedRead::new(r, codec::ClientChatCodec), @@ -87,7 +88,7 @@ impl Actor for ChatClient { println!("Disconnected"); // Stop application on disconnect - Arbiter::system().do_send(actix::msgs::SystemExit(0)); + System::current().stop(); } } diff --git a/websocket-tcp-chat/src/main.rs b/websocket-tcp-chat/src/main.rs index 2e12c25..a487453 100644 --- a/websocket-tcp-chat/src/main.rs +++ b/websocket-tcp-chat/src/main.rs @@ -6,8 +6,9 @@ extern crate futures; extern crate rand; extern crate serde; extern crate serde_json; -extern crate tokio_core; +extern crate tokio_codec; extern crate tokio_io; +extern crate tokio_tcp; #[macro_use] extern crate serde_derive; @@ -28,11 +29,11 @@ mod session; /// This is our websocket route state, this state is shared with all route /// instances via `HttpContext::state()` struct WsChatSessionState { - addr: Addr, + addr: Addr, } /// Entry point for our route -fn chat_route(req: HttpRequest) -> Result { +fn chat_route(req: &HttpRequest) -> Result { ws::start( req, WsChatSession { @@ -67,7 +68,7 @@ impl Actor for WsChatSession { // before processing any other events. // HttpContext::state() is instance of WsChatSessionState, state is shared // across all routes within application - let addr: Addr = ctx.address(); + let addr = ctx.address(); ctx.state() .addr .send(server::Connect { @@ -187,7 +188,7 @@ fn main() { let sys = actix::System::new("websocket-example"); // Start chat server actor in separate thread - let server: Addr = Arbiter::start(|_| server::ChatServer::default()); + let server = Arbiter::start(|_| server::ChatServer::default()); // Start tcp server in separate thread let srv = server.clone(); @@ -204,16 +205,16 @@ fn main() { }; App::with_state(state) - // redirect to websocket.html - .resource("/", |r| r.method(http::Method::GET).f(|_| { - HttpResponse::Found() - .header("LOCATION", "/static/websocket.html") - .finish() - })) - // websocket - .resource("/ws/", |r| r.route().f(chat_route)) - // static resources - .handler("/static/", fs::StaticFiles::new("static/")) + // redirect to websocket.html + .resource("/", |r| r.method(http::Method::GET).f(|_| { + HttpResponse::Found() + .header("LOCATION", "/static/websocket.html") + .finish() + })) + // websocket + .resource("/ws/", |r| r.route().f(chat_route)) + // static resources + .handler("/static/", fs::StaticFiles::new("static/").unwrap()) }).bind("127.0.0.1:8080") .unwrap() .start(); diff --git a/websocket-tcp-chat/src/server.rs b/websocket-tcp-chat/src/server.rs index 28e4297..594beb1 100644 --- a/websocket-tcp-chat/src/server.rs +++ b/websocket-tcp-chat/src/server.rs @@ -15,7 +15,7 @@ use session; #[derive(Message)] #[rtype(usize)] pub struct Connect { - pub addr: Recipient, + pub addr: Recipient, } /// Session is disconnected @@ -54,7 +54,7 @@ pub struct Join { /// `ChatServer` manages chat rooms and responsible for coordinating chat /// session. implementation is super primitive pub struct ChatServer { - sessions: HashMap>, + sessions: HashMap>, rooms: HashMap>, rng: RefCell, } diff --git a/websocket-tcp-chat/src/session.rs b/websocket-tcp-chat/src/session.rs index d53ea2a..4898515 100644 --- a/websocket-tcp-chat/src/session.rs +++ b/websocket-tcp-chat/src/session.rs @@ -4,10 +4,10 @@ use futures::Stream; use std::str::FromStr; use std::time::{Duration, Instant}; use std::{io, net}; -use tokio_core::net::{TcpListener, TcpStream}; -use tokio_io::codec::FramedRead; +use tokio_codec::FramedRead; use tokio_io::io::WriteHalf; use tokio_io::AsyncRead; +use tokio_tcp::{TcpListener, TcpStream}; use actix::prelude::*; @@ -23,7 +23,7 @@ pub struct ChatSession { /// unique session id id: usize, /// this is address of chat server - addr: Addr, + addr: Addr, /// Client must send ping at least once per 10 seconds, otherwise we drop /// connection. hb: Instant, @@ -45,7 +45,7 @@ impl Actor for ChatSession { // register self in chat server. `AsyncContext::wait` register // future within context, but context waits until this future resolves // before processing any other events. - let addr: Addr = ctx.address(); + let addr = ctx.address(); self.addr .send(server::Connect { addr: addr.recipient(), @@ -133,7 +133,7 @@ impl Handler for ChatSession { /// Helper methods impl ChatSession { pub fn new( - addr: Addr, + addr: Addr, framed: actix::io::FramedWrite, ChatCodec>, ) -> ChatSession { ChatSession { @@ -172,14 +172,14 @@ impl ChatSession { /// Define tcp server that will accept incoming tcp connection and create /// chat actors. pub struct TcpServer { - chat: Addr, + chat: Addr, } impl TcpServer { - pub fn new(s: &str, chat: Addr) { + pub fn new(s: &str, chat: Addr) { // Create server listener let addr = net::SocketAddr::from_str("127.0.0.1:12345").unwrap(); - let listener = TcpListener::bind(&addr, Arbiter::handle()).unwrap(); + let listener = TcpListener::bind(&addr).unwrap(); // Our chat server `Server` is an actor, first we need to start it // and then add stream on incoming tcp connections to it. @@ -187,12 +187,9 @@ impl TcpServer { // items So to be able to handle this events `Server` actor has to // implement stream handler `StreamHandler<(TcpStream, // net::SocketAddr), io::Error>` - let _: () = TcpServer::create(|ctx| { + TcpServer::create(|ctx| { ctx.add_message_stream( - listener - .incoming() - .map_err(|_| ()) - .map(|(t, a)| TcpConnect(t, a)), + listener.incoming().map_err(|_| ()).map(|s| TcpConnect(s)), ); TcpServer { chat: chat } }); @@ -206,7 +203,7 @@ impl Actor for TcpServer { } #[derive(Message)] -struct TcpConnect(TcpStream, net::SocketAddr); +struct TcpConnect(TcpStream); /// Handle stream of TcpStream's impl Handler for TcpServer { @@ -216,7 +213,7 @@ impl Handler for TcpServer { // For each incoming connection we create `ChatSession` actor // with out chat server address. let server = self.chat.clone(); - let _: () = ChatSession::create(|ctx| { + ChatSession::create(|ctx| { let (r, w) = msg.0.split(); ChatSession::add_stream(FramedRead::new(r, ChatCodec), ctx); ChatSession::new(server, actix::io::FramedWrite::new(w, ChatCodec, ctx)) diff --git a/websocket/Cargo.toml b/websocket/Cargo.toml index 2736d7e..7f13f22 100644 --- a/websocket/Cargo.toml +++ b/websocket/Cargo.toml @@ -15,6 +15,7 @@ path = "src/client.rs" [dependencies] env_logger = "*" futures = "0.1" -tokio-core = "0.1" -actix = "0.5" -actix-web = "^0.6" + +actix = "0.7" +#actix-web = "^0.7" +actix-web = { git = "https://github.com/actix/actix-web.git" } diff --git a/websocket/src/client.rs b/websocket/src/client.rs index 15c0dcd..fa3f231 100644 --- a/websocket/src/client.rs +++ b/websocket/src/client.rs @@ -5,13 +5,11 @@ extern crate actix; extern crate actix_web; extern crate env_logger; extern crate futures; -extern crate tokio_core; use std::time::Duration; use std::{io, thread}; use actix::*; -use actix_web::ws::WsWriter; use actix_web::ws::{Client, ClientWriter, Message, ProtocolError}; use futures::Future; @@ -20,7 +18,7 @@ fn main() { let _ = env_logger::init(); let sys = actix::System::new("ws-example"); - Arbiter::handle().spawn( + Arbiter::spawn( Client::new("http://127.0.0.1:8080/ws/") .connect() .map_err(|e| { @@ -28,7 +26,7 @@ fn main() { () }) .map(|(reader, writer)| { - let addr: Addr = ChatClient::create(|ctx| { + let addr = ChatClient::create(|ctx| { ChatClient::add_stream(reader, ctx); ChatClient(writer) }); @@ -67,7 +65,7 @@ impl Actor for ChatClient { println!("Disconnected"); // Stop application on disconnect - Arbiter::system().do_send(actix::msgs::SystemExit(0)); + System::current().stop(); } } diff --git a/websocket/src/main.rs b/websocket/src/main.rs index 6d35b76..c7c5594 100644 --- a/websocket/src/main.rs +++ b/websocket/src/main.rs @@ -14,7 +14,7 @@ use actix_web::{ }; /// do websocket handshake and start `MyWebSocket` actor -fn ws_index(r: HttpRequest) -> Result { +fn ws_index(r: &HttpRequest) -> Result { ws::start(r, MyWebSocket) } @@ -56,6 +56,7 @@ fn main() { .resource("/ws/", |r| r.method(http::Method::GET).f(ws_index)) // static files .handler("/", fs::StaticFiles::new("static/") + .unwrap() .index_file("index.html"))) // start http server on 127.0.0.1:8080 .bind("127.0.0.1:8080").unwrap()