Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/dev' into dynamic-blocks-kdev

Konstantin Seiler 5 anni fa
parent
commit
e75021b213

+ 111 - 166
Cargo.lock

@@ -75,7 +75,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "alsa-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "alsa-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "nix 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "nix 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -84,7 +84,7 @@ name = "alsa-sys"
 version = "0.1.2"
 version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -122,7 +122,7 @@ name = "atty"
 version = "0.2.13"
 version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -138,7 +138,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "backtrace-sys 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)",
  "backtrace-sys 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -147,8 +147,8 @@ name = "backtrace-sys"
 version = "0.1.31"
 version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "cc 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -261,11 +261,6 @@ name = "byte-tools"
 version = "0.3.1"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 
-[[package]]
-name = "byteorder"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
 [[package]]
 [[package]]
 name = "byteorder"
 name = "byteorder"
 version = "1.3.2"
 version = "1.3.2"
@@ -289,14 +284,9 @@ dependencies = [
  "ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
-[[package]]
-name = "c_linked_list"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
 [[package]]
 [[package]]
 name = "cc"
 name = "cc"
-version = "1.0.38"
+version = "1.0.47"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 
 [[package]]
 [[package]]
@@ -317,7 +307,7 @@ name = "chrono"
 version = "0.4.7"
 version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
  "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -329,7 +319,7 @@ version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -360,7 +350,7 @@ name = "core-foundation-sys"
 version = "0.5.1"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -389,7 +379,7 @@ dependencies = [
  "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "coreaudio-rs 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "coreaudio-rs 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "stdweb 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "stdweb 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -459,22 +449,12 @@ dependencies = [
  "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
-[[package]]
-name = "dns-parser"
-version = "0.3.2"
-source = "git+https://github.com/plietar/dns-parser#1d3e5a5591bc72eb061c23bd426c4a25f2f73791"
-dependencies = [
- "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
 [[package]]
 [[package]]
 name = "dns-sd"
 name = "dns-sd"
 version = "0.1.3"
 version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -583,26 +563,6 @@ dependencies = [
  "typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
-[[package]]
-name = "get_if_addrs"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "c_linked_list 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "get_if_addrs-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "get_if_addrs-sys"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
 [[package]]
 [[package]]
 name = "getopts"
 name = "getopts"
 version = "0.2.19"
 version = "0.2.19"
@@ -617,7 +577,7 @@ version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -705,7 +665,7 @@ name = "iovec"
 version = "0.1.2"
 version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -722,7 +682,7 @@ dependencies = [
  "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "jack-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "jack-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -731,7 +691,7 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -769,7 +729,7 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "libc"
 name = "libc"
-version = "0.2.60"
+version = "0.2.65"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 
 [[package]]
 [[package]]
@@ -787,12 +747,32 @@ name = "libm"
 version = "0.1.4"
 version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 
+[[package]]
+name = "libmdns"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "futures 0.1.28 (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.65 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "multimap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+ "nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "socket2 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
 [[package]]
 [[package]]
 name = "libpulse-sys"
 name = "libpulse-sys"
 version = "0.0.0"
 version = "0.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -813,7 +793,7 @@ dependencies = [
  "librespot-protocol 0.1.0",
  "librespot-protocol 0.1.0",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rpassword 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "rpassword 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -835,11 +815,11 @@ dependencies = [
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "lewton 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "lewton 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "librespot-core 0.1.0",
  "librespot-core 0.1.0",
+ "librespot-tremor 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "tremor 0.1.0 (git+https://github.com/plietar/rust-tremor)",
  "vorbis 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -854,13 +834,13 @@ dependencies = [
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)",
  "hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libmdns 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "librespot-core 0.1.0",
  "librespot-core 0.1.0",
  "librespot-playback 0.1.0",
  "librespot-playback 0.1.0",
  "librespot-protocol 0.1.0",
  "librespot-protocol 0.1.0",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
- "mdns 0.2.0 (git+https://github.com/plietar/rust-mdns)",
  "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -891,7 +871,7 @@ dependencies = [
  "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.97 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -915,7 +895,7 @@ dependencies = [
  "librespot-core 0.1.0",
  "librespot-core 0.1.0",
  "librespot-protocol 0.1.0",
  "librespot-protocol 0.1.0",
  "linear-map 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "linear-map 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -927,7 +907,7 @@ dependencies = [
  "cpal 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "cpal 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "jack 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "jack 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "libpulse-sys 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libpulse-sys 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "librespot-audio 0.1.0",
  "librespot-audio 0.1.0",
  "librespot-core 0.1.0",
  "librespot-core 0.1.0",
@@ -942,9 +922,20 @@ dependencies = [
 name = "librespot-protocol"
 name = "librespot-protocol"
 version = "0.1.0"
 version = "0.1.0"
 dependencies = [
 dependencies = [
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf-codegen 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf-codegen-pure 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf-codegen 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf-codegen-pure 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "librespot-tremor"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -990,33 +981,12 @@ dependencies = [
  "rawpointer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rawpointer 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
-[[package]]
-name = "mdns"
-version = "0.2.0"
-source = "git+https://github.com/plietar/rust-mdns#66a74033da6c9f1a06e7b0a29f4544fd189d6479"
-dependencies = [
- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "dns-parser 0.3.2 (git+https://github.com/plietar/dns-parser)",
- "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
- "get_if_addrs 0.5.3 (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.60 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
- "multimap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
- "nix 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "socket2 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
 [[package]]
 [[package]]
 name = "memchr"
 name = "memchr"
 version = "1.0.2"
 version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -1049,7 +1019,7 @@ dependencies = [
  "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "kernel32-sys 0.2.2 (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.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "miow 0.2.1 (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.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1074,7 +1044,7 @@ version = "0.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "iovec 0.1.2 (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.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1127,7 +1097,7 @@ version = "0.2.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1138,19 +1108,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
 name = "nix"
 name = "nix"
-version = "0.11.1"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "cc 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1227,7 +1198,7 @@ name = "num_cpus"
 version = "1.10.1"
 version = "1.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -1244,7 +1215,7 @@ version = "0.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1275,7 +1246,7 @@ name = "parking_lot_core"
 version = "0.4.0"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
  "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1317,7 +1288,7 @@ version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "portaudio-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "portaudio-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1326,7 +1297,7 @@ name = "portaudio-sys"
 version = "0.1.1"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1353,24 +1324,24 @@ dependencies = [
 
 
 [[package]]
 [[package]]
 name = "protobuf"
 name = "protobuf"
-version = "2.8.0"
+version = "2.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 
 [[package]]
 [[package]]
 name = "protobuf-codegen"
 name = "protobuf-codegen"
-version = "2.8.0"
+version = "2.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
 name = "protobuf-codegen-pure"
 name = "protobuf-codegen-pure"
-version = "2.8.0"
+version = "2.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "protobuf-codegen 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "protobuf-codegen 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -1399,7 +1370,7 @@ name = "rand"
 version = "0.3.23"
 version = "0.3.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1409,7 +1380,7 @@ version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1422,7 +1393,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -1433,7 +1404,7 @@ version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "autocfg 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "autocfg 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1451,7 +1422,7 @@ version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "getrandom 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "getrandom 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1525,7 +1496,7 @@ name = "rand_jitter"
 version = "0.1.4"
 version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -1537,7 +1508,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1650,7 +1621,7 @@ version = "3.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "kernel32-sys 0.2.2 (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.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1699,7 +1670,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "num 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
  "num 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
  "sdl2-sys 0.32.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "sdl2-sys 0.32.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1711,7 +1682,7 @@ version = "0.32.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -1787,7 +1758,7 @@ name = "signal-hook"
 version = "0.1.10"
 version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "signal-hook-registry 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "signal-hook-registry 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
@@ -1797,7 +1768,7 @@ version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "arc-swap 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "arc-swap 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -1827,7 +1798,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "kernel32-sys 0.2.2 (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.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.2.8 (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)",
  "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -1838,7 +1809,7 @@ version = "0.3.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -1908,7 +1879,7 @@ version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
  "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1944,7 +1915,7 @@ name = "time"
 version = "0.1.42"
 version = "0.1.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -2046,7 +2017,7 @@ dependencies = [
  "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio-named-pipes 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio-named-pipes 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2105,7 +2076,7 @@ version = "0.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "signal-hook 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
  "signal-hook 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2186,7 +2157,7 @@ dependencies = [
  "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
  "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
  "iovec 0.1.2 (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.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2195,26 +2166,6 @@ dependencies = [
  "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
-[[package]]
-name = "tremor"
-version = "0.1.0"
-source = "git+https://github.com/plietar/rust-tremor#5958cc302e78f535dad90e9665da981ddff4000a"
-dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
- "tremor-sys 0.1.0 (git+https://github.com/plietar/rust-tremor)",
-]
-
-[[package]]
-name = "tremor-sys"
-version = "0.1.0"
-source = "git+https://github.com/plietar/rust-tremor#5958cc302e78f535dad90e9665da981ddff4000a"
-dependencies = [
- "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
- "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
 [[package]]
 [[package]]
 name = "try-lock"
 name = "try-lock"
 version = "0.1.0"
 version = "0.1.0"
@@ -2317,7 +2268,7 @@ name = "vorbis"
 version = "0.1.0"
 version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis-encoder 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis-encoder 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2331,7 +2282,7 @@ version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2343,7 +2294,7 @@ version = "0.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
@@ -2354,7 +2305,7 @@ version = "0.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
  "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "pkg-config 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2375,7 +2326,7 @@ name = "which"
 version = "1.0.5"
 version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
 dependencies = [
- "libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 ]
 
 
 [[package]]
 [[package]]
@@ -2465,12 +2416,10 @@ dependencies = [
 "checksum block-modes 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "31aa8410095e39fdb732909fb5730a48d5bd7c2e3cd76bd1b07b3dbea130c529"
 "checksum block-modes 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "31aa8410095e39fdb732909fb5730a48d5bd7c2e3cd76bd1b07b3dbea130c529"
 "checksum block-padding 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09"
 "checksum block-padding 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09"
 "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
 "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
-"checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855"
 "checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
 "checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
 "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
 "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
 "checksum c2-chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101"
 "checksum c2-chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101"
-"checksum c_linked_list 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4964518bd3b4a8190e832886cdc0da9794f12e8e6c1613a9e90ff331c4c8724b"
-"checksum cc 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)" = "ce400c638d48ee0e9ab75aef7997609ec57367ccfe1463f21bf53c3eca67bf46"
+"checksum cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)" = "aa87058dce70a3ff5621797f1506cb837edd02ac4c0ae642b4542dce802908b8"
 "checksum cexpr 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "42aac45e9567d97474a834efdee3081b3c942b2205be932092f53354ce503d6c"
 "checksum cexpr 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "42aac45e9567d97474a834efdee3081b3c942b2205be932092f53354ce503d6c"
 "checksum cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
 "checksum cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
 "checksum chrono 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "77d81f58b7301084de3b958691458a53c3f7e0b1d702f77e550b6a88e3a88abe"
 "checksum chrono 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "77d81f58b7301084de3b958691458a53c3f7e0b1d702f77e550b6a88e3a88abe"
@@ -2488,7 +2437,6 @@ dependencies = [
 "checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5"
 "checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5"
 "checksum ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "022cd691704491df67d25d006fe8eca083098253c4d43516c2206479c58c6736"
 "checksum ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "022cd691704491df67d25d006fe8eca083098253c4d43516c2206479c58c6736"
 "checksum digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
 "checksum digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
-"checksum dns-parser 0.3.2 (git+https://github.com/plietar/dns-parser)" = "<none>"
 "checksum dns-sd 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d748509dea20228f63ba519bf142ce2593396386125b01f5b0d6412dab972087"
 "checksum dns-sd 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d748509dea20228f63ba519bf142ce2593396386125b01f5b0d6412dab972087"
 "checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b"
 "checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b"
 "checksum env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
 "checksum env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
@@ -2504,8 +2452,6 @@ dependencies = [
 "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
 "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
 "checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
 "checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
 "checksum generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
 "checksum generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
-"checksum get_if_addrs 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "abddb55a898d32925f3148bd281174a68eeb68bbfd9a5938a57b18f506ee4ef7"
-"checksum get_if_addrs-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0d04f9fb746cf36b191c00f3ede8bde9c8e64f9f4b05ae2694a9ccf5e3f5ab48"
 "checksum getopts 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "72327b15c228bfe31f1390f93dd5e9279587f0463836393c9df719ce62a3e450"
 "checksum getopts 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "72327b15c228bfe31f1390f93dd5e9279587f0463836393c9df719ce62a3e450"
 "checksum getrandom 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "e65cce4e5084b14874c4e7097f38cab54f47ee554f9194673456ea379dcc4c55"
 "checksum getrandom 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "e65cce4e5084b14874c4e7097f38cab54f47ee554f9194673456ea379dcc4c55"
 "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
 "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
@@ -2524,17 +2470,18 @@ dependencies = [
 "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
 "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
 "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
 "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
 "checksum lewton 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8d542c1a317036c45c2aa1cf10cc9d403ca91eb2d333ef1a4917e5cb10628bd0"
 "checksum lewton 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8d542c1a317036c45c2aa1cf10cc9d403ca91eb2d333ef1a4917e5cb10628bd0"
-"checksum libc 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)" = "d44e80633f007889c7eff624b709ab43c92d708caad982295768a7b13ca3b5eb"
+"checksum libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "1a31a0627fdf1f6a39ec0dd577e101440b7db22672c0901fe00a9a6fbb5c24e8"
 "checksum libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fd38073de8f7965d0c17d30546d4bb6da311ab428d1c7a3fc71dff7f9d4979b9"
 "checksum libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fd38073de8f7965d0c17d30546d4bb6da311ab428d1c7a3fc71dff7f9d4979b9"
 "checksum libm 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
 "checksum libm 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
+"checksum libmdns 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "10a5de2d38a254122ddb711aa0a5d48ffc501efe7cba4be7ea531b80a274bc0d"
 "checksum libpulse-sys 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9bb11b06faf883500c1b625cf4453e6c7737e9df9c7ba01df3f84b22b083e4ac"
 "checksum libpulse-sys 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9bb11b06faf883500c1b625cf4453e6c7737e9df9c7ba01df3f84b22b083e4ac"
+"checksum librespot-tremor 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b155a7dc4e4d272e01c37a1b85c1ee1bee7f04980ad4a7784c1a6e0f2de5929b"
 "checksum linear-map 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee"
 "checksum linear-map 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee"
 "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c"
 "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c"
 "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
 "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
 "checksum log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c275b6ad54070ac2d665eef9197db647b32239c9d244bfb6f041a766d00da5b3"
 "checksum log 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c275b6ad54070ac2d665eef9197db647b32239c9d244bfb6f041a766d00da5b3"
 "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
 "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
 "checksum matrixmultiply 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dcfed72d871629daa12b25af198f110e8095d7650f5f4c61c5bac28364604f9b"
 "checksum matrixmultiply 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dcfed72d871629daa12b25af198f110e8095d7650f5f4c61c5bac28364604f9b"
-"checksum mdns 0.2.0 (git+https://github.com/plietar/rust-mdns)" = "<none>"
 "checksum memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
 "checksum memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
 "checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
 "checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
 "checksum memoffset 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ce6075db033bbbb7ee5a0bbd3a3186bbae616f57fb001c485c7ff77955f8177f"
 "checksum memoffset 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ce6075db033bbbb7ee5a0bbd3a3186bbae616f57fb001c485c7ff77955f8177f"
@@ -2547,7 +2494,7 @@ dependencies = [
 "checksum multimap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb04b9f127583ed176e163fb9ec6f3e793b87e21deedd5734a69386a18a0151"
 "checksum multimap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb04b9f127583ed176e163fb9ec6f3e793b87e21deedd5734a69386a18a0151"
 "checksum nalgebra 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8e12856109b5cb8e2934b5e45e4624839416e1c6c1f7d286711a7a66b79db29d"
 "checksum nalgebra 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8e12856109b5cb8e2934b5e45e4624839416e1c6c1f7d286711a7a66b79db29d"
 "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
 "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
-"checksum nix 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "becb657d662f1cd2ef38c7ad480ec6b8cf9e96b27adb543e594f9cf0f2e6065c"
+"checksum nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f"
 "checksum nix 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a2c5afeb0198ec7be8569d666644b574345aad2e95a53baf3a532da3e0f3fb32"
 "checksum nix 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a2c5afeb0198ec7be8569d666644b574345aad2e95a53baf3a532da3e0f3fb32"
 "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
 "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
 "checksum nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05aec50c70fd288702bcd93284a8444607f3292dbdf2a30de5ea5dcdbe72287b"
 "checksum nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05aec50c70fd288702bcd93284a8444607f3292dbdf2a30de5ea5dcdbe72287b"
@@ -2573,9 +2520,9 @@ dependencies = [
 "checksum ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
 "checksum ppv-lite86 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
 "checksum proc-macro2 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cd07deb3c6d1d9ff827999c7f9b04cdfd66b1b17ae508e14fe47b620f2282ae0"
 "checksum proc-macro2 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cd07deb3c6d1d9ff827999c7f9b04cdfd66b1b17ae508e14fe47b620f2282ae0"
 "checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
 "checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
-"checksum protobuf 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8aefcec9f142b524d98fc81d07827743be89dd6586a1ba6ab21fa66a500b3fa5"
-"checksum protobuf-codegen 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "31539be8028d6b9e8e1b3b7c74e2fa3555302e27b2cc20dbaee6ffba648f75e2"
-"checksum protobuf-codegen-pure 2.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "00993dc5fbbfcf9d8a005f6b6c29fd29fd6d86deba3ae3f41fd20c624c414616"
+"checksum protobuf 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "40361836defdd5871ff7e84096c6f6444af7fc157f8ef1789f54f147687caa20"
+"checksum protobuf-codegen 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "12c6abd78435445fc86898ebbd0521a68438063d4a73e23527b7134e6bf58b4a"
+"checksum protobuf-codegen-pure 2.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c1646acda5319f5b28b0bff4a484324df43ddae2c0f5a3f3e63c0b26095cd600"
 "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
 "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
 "checksum quote 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1eca14c727ad12702eb4b6bfb5a232287dcf8385cb8ca83a3eeaf6519c44c408"
 "checksum quote 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1eca14c727ad12702eb4b6bfb5a232287dcf8385cb8ca83a3eeaf6519c44c408"
 "checksum quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
 "checksum quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
@@ -2664,8 +2611,6 @@ dependencies = [
 "checksum tokio-timer 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "f2106812d500ed25a4f38235b9cae8f78a09edf43203e16e59c3b769a342a60e"
 "checksum tokio-timer 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "f2106812d500ed25a4f38235b9cae8f78a09edf43203e16e59c3b769a342a60e"
 "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92"
 "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92"
 "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445"
 "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445"
-"checksum tremor 0.1.0 (git+https://github.com/plietar/rust-tremor)" = "<none>"
-"checksum tremor-sys 0.1.0 (git+https://github.com/plietar/rust-tremor)" = "<none>"
 "checksum try-lock 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee2aa4715743892880f70885373966c83d73ef1b0838a664ef0c76fffd35e7c2"
 "checksum try-lock 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee2aa4715743892880f70885373966c83d73ef1b0838a664ef0c76fffd35e7c2"
 "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
 "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
 "checksum ucd-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa9b3b49edd3468c0e6565d85783f51af95212b6fa3986a5500954f00b460874"
 "checksum ucd-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa9b3b49edd3468c0e6565d85783f51af95212b6fa3986a5500954f00b460874"

+ 10 - 4
Cargo.toml

@@ -1,11 +1,11 @@
 [package]
 [package]
 name = "librespot"
 name = "librespot"
 version = "0.1.0"
 version = "0.1.0"
-authors = ["Paul Liétar <paul@lietar.net>"]
+authors = ["Librespot Org"]
 license = "MIT"
 license = "MIT"
-description = "Open Source Spotify client library"
+description = "An open source client library for Spotify, with support for Spotify Connect"
 keywords = ["spotify"]
 keywords = ["spotify"]
-repository = "https://github.com/plietar/librespot"
+repository = "https://github.com/librespot-org/librespot"
 readme = "README.md"
 readme = "README.md"
 
 
 [workspace]
 [workspace]
@@ -21,16 +21,22 @@ doc = false
 
 
 [dependencies.librespot-audio]
 [dependencies.librespot-audio]
 path = "audio"
 path = "audio"
+version = "0.1.0"
 [dependencies.librespot-connect]
 [dependencies.librespot-connect]
 path = "connect"
 path = "connect"
+version = "0.1.0"
 [dependencies.librespot-core]
 [dependencies.librespot-core]
 path = "core"
 path = "core"
+version = "0.1.0"
 [dependencies.librespot-metadata]
 [dependencies.librespot-metadata]
 path = "metadata"
 path = "metadata"
+version = "0.1.0"
 [dependencies.librespot-playback]
 [dependencies.librespot-playback]
 path = "playback"
 path = "playback"
+version = "0.1.0"
 [dependencies.librespot-protocol]
 [dependencies.librespot-protocol]
 path = "protocol"
 path = "protocol"
+version = "0.1.0"
 
 
 [dependencies]
 [dependencies]
 base64 = "0.10"
 base64 = "0.10"
@@ -40,7 +46,7 @@ getopts = "0.2"
 hyper = "0.11"
 hyper = "0.11"
 log = "0.4"
 log = "0.4"
 num-bigint = "0.2"
 num-bigint = "0.2"
-protobuf = "2.8.*"
+protobuf = "2.8.1"
 rand = "0.7"
 rand = "0.7"
 rpassword = "3.0"
 rpassword = "3.0"
 tokio-core = "0.1"
 tokio-core = "0.1"

+ 9 - 0
PUBLISHING.md

@@ -0,0 +1,9 @@
+# Publishing
+
+Publishing librespot to crates.io is a slightly convoluted affair due to the various dependencies that each package has on other local packages. The order of publising that has been found to work is as follows:
+
+`protocol -> core -> audio -> metadata -> playback -> connect -> librespot`
+
+The `protocol` package needs to be published with `cargo publish --no-verify` due to the build script modifying the source during compile time.
+
+Publishing can be done using the command `cargo publish` in each of the directories of the respecive crate.

+ 6 - 0
README.md

@@ -1,5 +1,6 @@
 [![Build Status](https://travis-ci.org/librespot-org/librespot.svg?branch=master)](https://travis-ci.org/librespot-org/librespot)
 [![Build Status](https://travis-ci.org/librespot-org/librespot.svg?branch=master)](https://travis-ci.org/librespot-org/librespot)
 [![Gitter chat](https://badges.gitter.im/librespot-org/librespot.png)](https://gitter.im/librespot-org/spotify-connect-resources)
 [![Gitter chat](https://badges.gitter.im/librespot-org/librespot.png)](https://gitter.im/librespot-org/spotify-connect-resources)
+[![Crates.io](https://img.shields.io/crates/v/librespot.svg)](https://crates.io/crates/librespot)
 
 
 Current maintainer is @awiouy folks.
 Current maintainer is @awiouy folks.
 
 
@@ -11,6 +12,11 @@ which are not available in the official library.
 
 
 _Note: librespot only works with Spotify Premium. This will remain the case for the forseeable future, as we are unlikely to work on implementing the features such as limited skips and adverts that would be required to make librespot compliant with free accounts._
 _Note: librespot only works with Spotify Premium. This will remain the case for the forseeable future, as we are unlikely to work on implementing the features such as limited skips and adverts that would be required to make librespot compliant with free accounts._
 
 
+## Quick start
+We're available on [crates.io](https://crates.io/crates/librespot) as the _librespot_ package. Simply run `cargo install librespot` to install librespot on your system. Check the wiki for more info and possible [usage options](https://github.com/librespot-org/librespot/wiki/Options).
+
+After installation, you can run librespot form the CLI using a command such as `librespot -n "Librespot Speaker" -b 192` to create a speaker called _Librespot Speaker_ serving 192kbps audio.
+
 ## This fork
 ## This fork
 As the origin by [plietar](https://github.com/plietar/) is no longer actively maintained, this organisation and repository have been set up so that the project may be maintained and upgraded in the future.
 As the origin by [plietar](https://github.com/plietar/) is no longer actively maintained, this organisation and repository have been set up so that the project may be maintained and upgraded in the future.
 
 

+ 5 - 2
audio/Cargo.toml

@@ -2,9 +2,12 @@
 name = "librespot-audio"
 name = "librespot-audio"
 version = "0.1.0"
 version = "0.1.0"
 authors = ["Paul Lietar <paul@lietar.net>"]
 authors = ["Paul Lietar <paul@lietar.net>"]
+description="The audio fetching and processing logic for librespot"
+license="MIT"
 
 
 [dependencies.librespot-core]
 [dependencies.librespot-core]
 path = "../core"
 path = "../core"
+version = "0.1.0"
 
 
 [dependencies]
 [dependencies]
 bit-set = "0.5"
 bit-set = "0.5"
@@ -18,9 +21,9 @@ num-traits = "0.2"
 tempfile = "3.1"
 tempfile = "3.1"
 aes-ctr = "0.3"
 aes-ctr = "0.3"
 
 
-tremor = { git = "https://github.com/plietar/rust-tremor", optional = true }
+librespot-tremor = { version = "0.1.0", optional = true }
 vorbis = { version ="0.1.0", optional = true }
 vorbis = { version ="0.1.0", optional = true }
 
 
 [features]
 [features]
-with-tremor = ["tremor"]
+with-tremor = ["librespot-tremor"]
 with-vorbis = ["vorbis"]
 with-vorbis = ["vorbis"]

+ 1 - 1
audio/src/libvorbis_decoder.rs

@@ -1,5 +1,5 @@
 #[cfg(feature = "with-tremor")]
 #[cfg(feature = "with-tremor")]
-extern crate tremor as vorbis;
+extern crate librespot_tremor as vorbis;
 #[cfg(not(feature = "with-tremor"))]
 #[cfg(not(feature = "with-tremor"))]
 extern crate vorbis;
 extern crate vorbis;
 
 

+ 8 - 3
connect/Cargo.toml

@@ -2,13 +2,18 @@
 name = "librespot-connect"
 name = "librespot-connect"
 version = "0.1.0"
 version = "0.1.0"
 authors = ["Paul Lietar <paul@lietar.net>"]
 authors = ["Paul Lietar <paul@lietar.net>"]
+description="The discovery and Spotify Connect logic for librespot"
+license="MIT"
 
 
 [dependencies.librespot-core]
 [dependencies.librespot-core]
 path = "../core"
 path = "../core"
+version = "0.1.0"
 [dependencies.librespot-playback]
 [dependencies.librespot-playback]
 path = "../playback"
 path = "../playback"
+version = "0.1.0"
 [dependencies.librespot-protocol]
 [dependencies.librespot-protocol]
 path = "../protocol"
 path = "../protocol"
+version = "0.1.0"
 
 
 [dependencies]
 [dependencies]
 base64 = "0.10"
 base64 = "0.10"
@@ -16,7 +21,7 @@ futures = "0.1"
 hyper = "0.11"
 hyper = "0.11"
 log = "0.4"
 log = "0.4"
 num-bigint = "0.2"
 num-bigint = "0.2"
-protobuf = "2.8.*"
+protobuf = "2.8.1"
 rand = "0.7"
 rand = "0.7"
 serde = "1.0"
 serde = "1.0"
 serde_derive = "1.0"
 serde_derive = "1.0"
@@ -29,8 +34,8 @@ aes-ctr = "0.3"
 block-modes = "0.3"
 block-modes = "0.3"
 
 
 dns-sd = { version = "0.1.3", optional = true }
 dns-sd = { version = "0.1.3", optional = true }
-mdns = { git = "https://github.com/plietar/rust-mdns", optional = true }
+libmdns = { version = "0.2", optional = true }
 
 
 [features]
 [features]
-default = ["mdns"]
+default = ["libmdns"]
 with-dns-sd = ["dns-sd"]
 with-dns-sd = ["dns-sd"]

+ 3 - 3
connect/src/discovery.rs

@@ -13,7 +13,7 @@ use hyper::{self, Get, Post, StatusCode};
 use dns_sd::DNSService;
 use dns_sd::DNSService;
 
 
 #[cfg(not(feature = "with-dns-sd"))]
 #[cfg(not(feature = "with-dns-sd"))]
-use mdns;
+use libmdns;
 
 
 use num_bigint::BigUint;
 use num_bigint::BigUint;
 use rand;
 use rand;
@@ -218,7 +218,7 @@ pub struct DiscoveryStream {
 #[cfg(not(feature = "with-dns-sd"))]
 #[cfg(not(feature = "with-dns-sd"))]
 pub struct DiscoveryStream {
 pub struct DiscoveryStream {
     credentials: mpsc::UnboundedReceiver<Credentials>,
     credentials: mpsc::UnboundedReceiver<Credentials>,
-    _svc: mdns::Service,
+    _svc: libmdns::Service,
 }
 }
 
 
 pub fn discovery(
 pub fn discovery(
@@ -263,7 +263,7 @@ pub fn discovery(
     ).unwrap();
     ).unwrap();
 
 
     #[cfg(not(feature = "with-dns-sd"))]
     #[cfg(not(feature = "with-dns-sd"))]
-    let responder = mdns::Responder::spawn(&handle)?;
+    let responder = libmdns::Responder::spawn(&handle)?;
 
 
     #[cfg(not(feature = "with-dns-sd"))]
     #[cfg(not(feature = "with-dns-sd"))]
     let svc = responder.register(
     let svc = responder.register(

+ 1 - 1
connect/src/lib.rs

@@ -24,7 +24,7 @@ extern crate block_modes;
 extern crate dns_sd;
 extern crate dns_sd;
 
 
 #[cfg(not(feature = "with-dns-sd"))]
 #[cfg(not(feature = "with-dns-sd"))]
-extern crate mdns;
+extern crate libmdns;
 
 
 extern crate librespot_core;
 extern crate librespot_core;
 extern crate librespot_playback as playback;
 extern crate librespot_playback as playback;

+ 4 - 1
core/Cargo.toml

@@ -3,9 +3,12 @@ name = "librespot-core"
 version = "0.1.0"
 version = "0.1.0"
 authors = ["Paul Lietar <paul@lietar.net>"]
 authors = ["Paul Lietar <paul@lietar.net>"]
 build = "build.rs"
 build = "build.rs"
+description="The core functionality provided by librespot"
+license="MIT"
 
 
 [dependencies.librespot-protocol]
 [dependencies.librespot-protocol]
 path = "../protocol"
 path = "../protocol"
+version = "0.1.0"
 
 
 [dependencies]
 [dependencies]
 base64 = "0.10"
 base64 = "0.10"
@@ -21,7 +24,7 @@ log = "0.4"
 num-bigint = "0.2"
 num-bigint = "0.2"
 num-integer = "0.1"
 num-integer = "0.1"
 num-traits = "0.2"
 num-traits = "0.2"
-protobuf = "2.8.*"
+protobuf = "2.8.1"
 rand = "0.7"
 rand = "0.7"
 serde = "1.0"
 serde = "1.0"
 serde_derive = "1.0"
 serde_derive = "1.0"

+ 5 - 1
metadata/Cargo.toml

@@ -2,14 +2,18 @@
 name = "librespot-metadata"
 name = "librespot-metadata"
 version = "0.1.0"
 version = "0.1.0"
 authors = ["Paul Lietar <paul@lietar.net>"]
 authors = ["Paul Lietar <paul@lietar.net>"]
+description="The metadata logic for librespot"
+license="MIT"
 
 
 [dependencies]
 [dependencies]
 byteorder = "1.3"
 byteorder = "1.3"
 futures = "0.1"
 futures = "0.1"
 linear-map = "1.2"
 linear-map = "1.2"
-protobuf = "2.8.*"
+protobuf = "2.8.1"
 
 
 [dependencies.librespot-core]
 [dependencies.librespot-core]
 path = "../core"
 path = "../core"
+version = "0.1.0"
 [dependencies.librespot-protocol]
 [dependencies.librespot-protocol]
 path = "../protocol"
 path = "../protocol"
+version = "0.1.0"

+ 5 - 0
playback/Cargo.toml

@@ -2,13 +2,18 @@
 name = "librespot-playback"
 name = "librespot-playback"
 version = "0.1.0"
 version = "0.1.0"
 authors = ["Sasha Hilton <sashahilton00@gmail.com>"]
 authors = ["Sasha Hilton <sashahilton00@gmail.com>"]
+description="The audio playback logic for librespot"
+license="MIT"
 
 
 [dependencies.librespot-audio]
 [dependencies.librespot-audio]
 path = "../audio"
 path = "../audio"
+version = "0.1.0"
 [dependencies.librespot-core]
 [dependencies.librespot-core]
 path = "../core"
 path = "../core"
+version = "0.1.0"
 [dependencies.librespot-metadata]
 [dependencies.librespot-metadata]
 path = "../metadata"
 path = "../metadata"
+version = "0.1.0"
 
 
 [dependencies]
 [dependencies]
 futures = "0.1"
 futures = "0.1"

+ 5 - 3
protocol/Cargo.toml

@@ -3,10 +3,12 @@ name = "librespot-protocol"
 version = "0.1.0"
 version = "0.1.0"
 authors = ["Paul Liétar <paul@lietar.net>"]
 authors = ["Paul Liétar <paul@lietar.net>"]
 build = "build.rs"
 build = "build.rs"
+description="The protobuf logic for communicating with Spotify servers"
+license="MIT"
 
 
 [dependencies]
 [dependencies]
-protobuf = "2.8.*"
+protobuf = "2.8.1"
 
 
 [build-dependencies]
 [build-dependencies]
-protobuf-codegen-pure = "2.8.*"
-protobuf-codegen = "*"
+protobuf-codegen-pure = "2.8.1"
+protobuf-codegen = "2.8.1"

+ 50 - 50
protocol/src/authentication.rs

@@ -1,4 +1,4 @@
-// This file is generated by rust-protobuf 2.8.0. Do not edit
+// This file is generated by rust-protobuf 2.8.1. Do not edit
 // @generated
 // @generated
 
 
 // https://github.com/Manishearth/rust-clippy/issues/702
 // https://github.com/Manishearth/rust-clippy/issues/702
@@ -24,7 +24,7 @@ use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
 
 
 /// Generated files are compatible only with the same version
 /// Generated files are compatible only with the same version
 /// of protobuf runtime.
 /// of protobuf runtime.
-const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_0;
+const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_1;
 
 
 #[derive(PartialEq,Clone,Default)]
 #[derive(PartialEq,Clone,Default)]
 pub struct ClientResponseEncrypted {
 pub struct ClientResponseEncrypted {
@@ -385,7 +385,7 @@ impl ::protobuf::Message for ClientResponseEncrypted {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -466,7 +466,7 @@ impl ::protobuf::Message for ClientResponseEncrypted {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.login_credentials.as_ref() {
         if let Some(ref v) = self.login_credentials.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -629,7 +629,7 @@ impl ::protobuf::Clear for ClientResponseEncrypted {
 }
 }
 
 
 impl ::std::fmt::Debug for ClientResponseEncrypted {
 impl ::std::fmt::Debug for ClientResponseEncrypted {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -762,7 +762,7 @@ impl ::protobuf::Message for LoginCredentials {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -801,7 +801,7 @@ impl ::protobuf::Message for LoginCredentials {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.username.as_ref() {
         if let Some(ref v) = self.username.as_ref() {
             os.write_string(10, &v)?;
             os.write_string(10, &v)?;
         }
         }
@@ -898,7 +898,7 @@ impl ::protobuf::Clear for LoginCredentials {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCredentials {
 impl ::std::fmt::Debug for LoginCredentials {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1012,7 +1012,7 @@ impl ::protobuf::Message for FingerprintResponseUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1047,7 +1047,7 @@ impl ::protobuf::Message for FingerprintResponseUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.grain.as_ref() {
         if let Some(ref v) = self.grain.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -1139,7 +1139,7 @@ impl ::protobuf::Clear for FingerprintResponseUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for FingerprintResponseUnion {
 impl ::std::fmt::Debug for FingerprintResponseUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1215,7 +1215,7 @@ impl ::protobuf::Message for FingerprintGrainResponse {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1242,7 +1242,7 @@ impl ::protobuf::Message for FingerprintGrainResponse {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.encrypted_key.as_ref() {
         if let Some(ref v) = self.encrypted_key.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -1321,7 +1321,7 @@ impl ::protobuf::Clear for FingerprintGrainResponse {
 }
 }
 
 
 impl ::std::fmt::Debug for FingerprintGrainResponse {
 impl ::std::fmt::Debug for FingerprintGrainResponse {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1397,7 +1397,7 @@ impl ::protobuf::Message for FingerprintHmacRipemdResponse {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1424,7 +1424,7 @@ impl ::protobuf::Message for FingerprintHmacRipemdResponse {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.hmac.as_ref() {
         if let Some(ref v) = self.hmac.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -1503,7 +1503,7 @@ impl ::protobuf::Clear for FingerprintHmacRipemdResponse {
 }
 }
 
 
 impl ::std::fmt::Debug for FingerprintHmacRipemdResponse {
 impl ::std::fmt::Debug for FingerprintHmacRipemdResponse {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1617,7 +1617,7 @@ impl ::protobuf::Message for PeerTicketUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1652,7 +1652,7 @@ impl ::protobuf::Message for PeerTicketUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.public_key.as_ref() {
         if let Some(ref v) = self.public_key.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -1744,7 +1744,7 @@ impl ::protobuf::Clear for PeerTicketUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for PeerTicketUnion {
 impl ::std::fmt::Debug for PeerTicketUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1820,7 +1820,7 @@ impl ::protobuf::Message for PeerTicketPublicKey {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1847,7 +1847,7 @@ impl ::protobuf::Message for PeerTicketPublicKey {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.public_key.as_ref() {
         if let Some(ref v) = self.public_key.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -1926,7 +1926,7 @@ impl ::protobuf::Clear for PeerTicketPublicKey {
 }
 }
 
 
 impl ::std::fmt::Debug for PeerTicketPublicKey {
 impl ::std::fmt::Debug for PeerTicketPublicKey {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2042,7 +2042,7 @@ impl ::protobuf::Message for PeerTicketOld {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2075,7 +2075,7 @@ impl ::protobuf::Message for PeerTicketOld {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.peer_ticket.as_ref() {
         if let Some(ref v) = self.peer_ticket.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -2163,7 +2163,7 @@ impl ::protobuf::Clear for PeerTicketOld {
 }
 }
 
 
 impl ::std::fmt::Debug for PeerTicketOld {
 impl ::std::fmt::Debug for PeerTicketOld {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2439,7 +2439,7 @@ impl ::protobuf::Message for SystemInfo {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2540,7 +2540,7 @@ impl ::protobuf::Message for SystemInfo {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.cpu_family {
         if let Some(v) = self.cpu_family {
             os.write_enum(10, v.value())?;
             os.write_enum(10, v.value())?;
         }
         }
@@ -2700,7 +2700,7 @@ impl ::protobuf::Clear for SystemInfo {
 }
 }
 
 
 impl ::std::fmt::Debug for SystemInfo {
 impl ::std::fmt::Debug for SystemInfo {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2919,7 +2919,7 @@ impl ::protobuf::Message for LibspotifyAppKey {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2974,7 +2974,7 @@ impl ::protobuf::Message for LibspotifyAppKey {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.version {
         if let Some(v) = self.version {
             os.write_uint32(1, v)?;
             os.write_uint32(1, v)?;
         }
         }
@@ -3089,7 +3089,7 @@ impl ::protobuf::Clear for LibspotifyAppKey {
 }
 }
 
 
 impl ::std::fmt::Debug for LibspotifyAppKey {
 impl ::std::fmt::Debug for LibspotifyAppKey {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3221,7 +3221,7 @@ impl ::protobuf::Message for ClientInfo {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3265,7 +3265,7 @@ impl ::protobuf::Message for ClientInfo {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.limited {
         if let Some(v) = self.limited {
             os.write_bool(1, v)?;
             os.write_bool(1, v)?;
         }
         }
@@ -3364,7 +3364,7 @@ impl ::protobuf::Clear for ClientInfo {
 }
 }
 
 
 impl ::std::fmt::Debug for ClientInfo {
 impl ::std::fmt::Debug for ClientInfo {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3437,7 +3437,7 @@ impl ::protobuf::Message for ClientInfoFacebook {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3464,7 +3464,7 @@ impl ::protobuf::Message for ClientInfoFacebook {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.machine_id.as_ref() {
         if let Some(ref v) = self.machine_id.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -3543,7 +3543,7 @@ impl ::protobuf::Clear for ClientInfoFacebook {
 }
 }
 
 
 impl ::std::fmt::Debug for ClientInfoFacebook {
 impl ::std::fmt::Debug for ClientInfoFacebook {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3843,7 +3843,7 @@ impl ::protobuf::Message for APWelcome {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3914,7 +3914,7 @@ impl ::protobuf::Message for APWelcome {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.canonical_username.as_ref() {
         if let Some(ref v) = self.canonical_username.as_ref() {
             os.write_string(10, &v)?;
             os.write_string(10, &v)?;
         }
         }
@@ -4060,7 +4060,7 @@ impl ::protobuf::Clear for APWelcome {
 }
 }
 
 
 impl ::std::fmt::Debug for APWelcome {
 impl ::std::fmt::Debug for APWelcome {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4174,7 +4174,7 @@ impl ::protobuf::Message for AccountInfo {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4209,7 +4209,7 @@ impl ::protobuf::Message for AccountInfo {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.spotify.as_ref() {
         if let Some(ref v) = self.spotify.as_ref() {
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -4301,7 +4301,7 @@ impl ::protobuf::Clear for AccountInfo {
 }
 }
 
 
 impl ::std::fmt::Debug for AccountInfo {
 impl ::std::fmt::Debug for AccountInfo {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4336,7 +4336,7 @@ impl ::protobuf::Message for AccountInfoSpotify {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4357,7 +4357,7 @@ impl ::protobuf::Message for AccountInfoSpotify {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         os.write_unknown_fields(self.get_unknown_fields())?;
         os.write_unknown_fields(self.get_unknown_fields())?;
         ::std::result::Result::Ok(())
         ::std::result::Result::Ok(())
     }
     }
@@ -4427,7 +4427,7 @@ impl ::protobuf::Clear for AccountInfoSpotify {
 }
 }
 
 
 impl ::std::fmt::Debug for AccountInfoSpotify {
 impl ::std::fmt::Debug for AccountInfoSpotify {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4537,7 +4537,7 @@ impl ::protobuf::Message for AccountInfoFacebook {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4570,7 +4570,7 @@ impl ::protobuf::Message for AccountInfoFacebook {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.access_token.as_ref() {
         if let Some(ref v) = self.access_token.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -4658,7 +4658,7 @@ impl ::protobuf::Clear for AccountInfoFacebook {
 }
 }
 
 
 impl ::std::fmt::Debug for AccountInfoFacebook {
 impl ::std::fmt::Debug for AccountInfoFacebook {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }

+ 83 - 83
protocol/src/keyexchange.rs

@@ -1,4 +1,4 @@
-// This file is generated by rust-protobuf 2.8.0. Do not edit
+// This file is generated by rust-protobuf 2.8.1. Do not edit
 // @generated
 // @generated
 
 
 // https://github.com/Manishearth/rust-clippy/issues/702
 // https://github.com/Manishearth/rust-clippy/issues/702
@@ -24,7 +24,7 @@ use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
 
 
 /// Generated files are compatible only with the same version
 /// Generated files are compatible only with the same version
 /// of protobuf runtime.
 /// of protobuf runtime.
-const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_0;
+const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_1;
 
 
 #[derive(PartialEq,Clone,Default)]
 #[derive(PartialEq,Clone,Default)]
 pub struct ClientHello {
 pub struct ClientHello {
@@ -329,7 +329,7 @@ impl ::protobuf::Message for ClientHello {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -401,7 +401,7 @@ impl ::protobuf::Message for ClientHello {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.build_info.as_ref() {
         if let Some(ref v) = self.build_info.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -549,7 +549,7 @@ impl ::protobuf::Clear for ClientHello {
 }
 }
 
 
 impl ::std::fmt::Debug for ClientHello {
 impl ::std::fmt::Debug for ClientHello {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -680,7 +680,7 @@ impl ::protobuf::Message for BuildInfo {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -729,7 +729,7 @@ impl ::protobuf::Message for BuildInfo {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.product {
         if let Some(v) = self.product {
             os.write_enum(10, v.value())?;
             os.write_enum(10, v.value())?;
         }
         }
@@ -835,7 +835,7 @@ impl ::protobuf::Clear for BuildInfo {
 }
 }
 
 
 impl ::std::fmt::Debug for BuildInfo {
 impl ::std::fmt::Debug for BuildInfo {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -910,7 +910,7 @@ impl ::protobuf::Message for LoginCryptoHelloUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -938,7 +938,7 @@ impl ::protobuf::Message for LoginCryptoHelloUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.diffie_hellman.as_ref() {
         if let Some(ref v) = self.diffie_hellman.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -1019,7 +1019,7 @@ impl ::protobuf::Clear for LoginCryptoHelloUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCryptoHelloUnion {
 impl ::std::fmt::Debug for LoginCryptoHelloUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1118,7 +1118,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanHello {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1155,7 +1155,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanHello {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gc.as_ref() {
         if let Some(ref v) = self.gc.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -1243,7 +1243,7 @@ impl ::protobuf::Clear for LoginCryptoDiffieHellmanHello {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCryptoDiffieHellmanHello {
 impl ::std::fmt::Debug for LoginCryptoDiffieHellmanHello {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1319,7 +1319,7 @@ impl ::protobuf::Message for FeatureSet {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1360,7 +1360,7 @@ impl ::protobuf::Message for FeatureSet {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.autoupdate2 {
         if let Some(v) = self.autoupdate2 {
             os.write_bool(1, v)?;
             os.write_bool(1, v)?;
         }
         }
@@ -1448,7 +1448,7 @@ impl ::protobuf::Clear for FeatureSet {
 }
 }
 
 
 impl ::std::fmt::Debug for FeatureSet {
 impl ::std::fmt::Debug for FeatureSet {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1601,7 +1601,7 @@ impl ::protobuf::Message for APResponseMessage {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1643,7 +1643,7 @@ impl ::protobuf::Message for APResponseMessage {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.challenge.as_ref() {
         if let Some(ref v) = self.challenge.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -1746,7 +1746,7 @@ impl ::protobuf::Clear for APResponseMessage {
 }
 }
 
 
 impl ::std::fmt::Debug for APResponseMessage {
 impl ::std::fmt::Debug for APResponseMessage {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2027,7 +2027,7 @@ impl ::protobuf::Message for APChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2088,7 +2088,7 @@ impl ::protobuf::Message for APChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.login_crypto_challenge.as_ref() {
         if let Some(ref v) = self.login_crypto_challenge.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -2220,7 +2220,7 @@ impl ::protobuf::Clear for APChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for APChallenge {
 impl ::std::fmt::Debug for APChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2295,7 +2295,7 @@ impl ::protobuf::Message for LoginCryptoChallengeUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2323,7 +2323,7 @@ impl ::protobuf::Message for LoginCryptoChallengeUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.diffie_hellman.as_ref() {
         if let Some(ref v) = self.diffie_hellman.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -2404,7 +2404,7 @@ impl ::protobuf::Clear for LoginCryptoChallengeUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCryptoChallengeUnion {
 impl ::std::fmt::Debug for LoginCryptoChallengeUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2543,7 +2543,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2586,7 +2586,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gs.as_ref() {
         if let Some(ref v) = self.gs.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -2683,7 +2683,7 @@ impl ::protobuf::Clear for LoginCryptoDiffieHellmanChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCryptoDiffieHellmanChallenge {
 impl ::std::fmt::Debug for LoginCryptoDiffieHellmanChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2797,7 +2797,7 @@ impl ::protobuf::Message for FingerprintChallengeUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2832,7 +2832,7 @@ impl ::protobuf::Message for FingerprintChallengeUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.grain.as_ref() {
         if let Some(ref v) = self.grain.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -2924,7 +2924,7 @@ impl ::protobuf::Clear for FingerprintChallengeUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for FingerprintChallengeUnion {
 impl ::std::fmt::Debug for FingerprintChallengeUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3000,7 +3000,7 @@ impl ::protobuf::Message for FingerprintGrainChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3027,7 +3027,7 @@ impl ::protobuf::Message for FingerprintGrainChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.kek.as_ref() {
         if let Some(ref v) = self.kek.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -3106,7 +3106,7 @@ impl ::protobuf::Clear for FingerprintGrainChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for FingerprintGrainChallenge {
 impl ::std::fmt::Debug for FingerprintGrainChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3182,7 +3182,7 @@ impl ::protobuf::Message for FingerprintHmacRipemdChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3209,7 +3209,7 @@ impl ::protobuf::Message for FingerprintHmacRipemdChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.challenge.as_ref() {
         if let Some(ref v) = self.challenge.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -3288,7 +3288,7 @@ impl ::protobuf::Clear for FingerprintHmacRipemdChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for FingerprintHmacRipemdChallenge {
 impl ::std::fmt::Debug for FingerprintHmacRipemdChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3363,7 +3363,7 @@ impl ::protobuf::Message for PoWChallengeUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3391,7 +3391,7 @@ impl ::protobuf::Message for PoWChallengeUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.hash_cash.as_ref() {
         if let Some(ref v) = self.hash_cash.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -3472,7 +3472,7 @@ impl ::protobuf::Clear for PoWChallengeUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for PoWChallengeUnion {
 impl ::std::fmt::Debug for PoWChallengeUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3585,7 +3585,7 @@ impl ::protobuf::Message for PoWHashCashChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3632,7 +3632,7 @@ impl ::protobuf::Message for PoWHashCashChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.prefix.as_ref() {
         if let Some(ref v) = self.prefix.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -3729,7 +3729,7 @@ impl ::protobuf::Clear for PoWHashCashChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for PoWHashCashChallenge {
 impl ::std::fmt::Debug for PoWHashCashChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3843,7 +3843,7 @@ impl ::protobuf::Message for CryptoChallengeUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3878,7 +3878,7 @@ impl ::protobuf::Message for CryptoChallengeUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.shannon.as_ref() {
         if let Some(ref v) = self.shannon.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -3970,7 +3970,7 @@ impl ::protobuf::Clear for CryptoChallengeUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for CryptoChallengeUnion {
 impl ::std::fmt::Debug for CryptoChallengeUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4005,7 +4005,7 @@ impl ::protobuf::Message for CryptoShannonChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4026,7 +4026,7 @@ impl ::protobuf::Message for CryptoShannonChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         os.write_unknown_fields(self.get_unknown_fields())?;
         os.write_unknown_fields(self.get_unknown_fields())?;
         ::std::result::Result::Ok(())
         ::std::result::Result::Ok(())
     }
     }
@@ -4096,7 +4096,7 @@ impl ::protobuf::Clear for CryptoShannonChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for CryptoShannonChallenge {
 impl ::std::fmt::Debug for CryptoShannonChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4131,7 +4131,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacChallenge {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4152,7 +4152,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacChallenge {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         os.write_unknown_fields(self.get_unknown_fields())?;
         os.write_unknown_fields(self.get_unknown_fields())?;
         ::std::result::Result::Ok(())
         ::std::result::Result::Ok(())
     }
     }
@@ -4222,7 +4222,7 @@ impl ::protobuf::Clear for CryptoRc4Sha1HmacChallenge {
 }
 }
 
 
 impl ::std::fmt::Debug for CryptoRc4Sha1HmacChallenge {
 impl ::std::fmt::Debug for CryptoRc4Sha1HmacChallenge {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4375,7 +4375,7 @@ impl ::protobuf::Message for UpgradeRequiredMessage {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4414,7 +4414,7 @@ impl ::protobuf::Message for UpgradeRequiredMessage {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.upgrade_signed_part.as_ref() {
         if let Some(ref v) = self.upgrade_signed_part.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -4511,7 +4511,7 @@ impl ::protobuf::Clear for UpgradeRequiredMessage {
 }
 }
 
 
 impl ::std::fmt::Debug for UpgradeRequiredMessage {
 impl ::std::fmt::Debug for UpgradeRequiredMessage {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4647,7 +4647,7 @@ impl ::protobuf::Message for APLoginFailed {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4700,7 +4700,7 @@ impl ::protobuf::Message for APLoginFailed {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.error_code {
         if let Some(v) = self.error_code {
             os.write_enum(10, v.value())?;
             os.write_enum(10, v.value())?;
         }
         }
@@ -4806,7 +4806,7 @@ impl ::protobuf::Clear for APLoginFailed {
 }
 }
 
 
 impl ::std::fmt::Debug for APLoginFailed {
 impl ::std::fmt::Debug for APLoginFailed {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4968,7 +4968,7 @@ impl ::protobuf::Message for ClientResponsePlaintext {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5010,7 +5010,7 @@ impl ::protobuf::Message for ClientResponsePlaintext {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.login_crypto_response.as_ref() {
         if let Some(ref v) = self.login_crypto_response.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -5113,7 +5113,7 @@ impl ::protobuf::Clear for ClientResponsePlaintext {
 }
 }
 
 
 impl ::std::fmt::Debug for ClientResponsePlaintext {
 impl ::std::fmt::Debug for ClientResponsePlaintext {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5188,7 +5188,7 @@ impl ::protobuf::Message for LoginCryptoResponseUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5216,7 +5216,7 @@ impl ::protobuf::Message for LoginCryptoResponseUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.diffie_hellman.as_ref() {
         if let Some(ref v) = self.diffie_hellman.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -5297,7 +5297,7 @@ impl ::protobuf::Clear for LoginCryptoResponseUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCryptoResponseUnion {
 impl ::std::fmt::Debug for LoginCryptoResponseUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5373,7 +5373,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanResponse {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5400,7 +5400,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanResponse {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.hmac.as_ref() {
         if let Some(ref v) = self.hmac.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -5479,7 +5479,7 @@ impl ::protobuf::Clear for LoginCryptoDiffieHellmanResponse {
 }
 }
 
 
 impl ::std::fmt::Debug for LoginCryptoDiffieHellmanResponse {
 impl ::std::fmt::Debug for LoginCryptoDiffieHellmanResponse {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5554,7 +5554,7 @@ impl ::protobuf::Message for PoWResponseUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5582,7 +5582,7 @@ impl ::protobuf::Message for PoWResponseUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.hash_cash.as_ref() {
         if let Some(ref v) = self.hash_cash.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -5663,7 +5663,7 @@ impl ::protobuf::Clear for PoWResponseUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for PoWResponseUnion {
 impl ::std::fmt::Debug for PoWResponseUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5739,7 +5739,7 @@ impl ::protobuf::Message for PoWHashCashResponse {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5766,7 +5766,7 @@ impl ::protobuf::Message for PoWHashCashResponse {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.hash_suffix.as_ref() {
         if let Some(ref v) = self.hash_suffix.as_ref() {
             os.write_bytes(10, &v)?;
             os.write_bytes(10, &v)?;
         }
         }
@@ -5845,7 +5845,7 @@ impl ::protobuf::Clear for PoWHashCashResponse {
 }
 }
 
 
 impl ::std::fmt::Debug for PoWHashCashResponse {
 impl ::std::fmt::Debug for PoWHashCashResponse {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5959,7 +5959,7 @@ impl ::protobuf::Message for CryptoResponseUnion {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5994,7 +5994,7 @@ impl ::protobuf::Message for CryptoResponseUnion {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.shannon.as_ref() {
         if let Some(ref v) = self.shannon.as_ref() {
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -6086,7 +6086,7 @@ impl ::protobuf::Clear for CryptoResponseUnion {
 }
 }
 
 
 impl ::std::fmt::Debug for CryptoResponseUnion {
 impl ::std::fmt::Debug for CryptoResponseUnion {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -6142,7 +6142,7 @@ impl ::protobuf::Message for CryptoShannonResponse {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -6173,7 +6173,7 @@ impl ::protobuf::Message for CryptoShannonResponse {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.dummy {
         if let Some(v) = self.dummy {
             os.write_int32(1, v)?;
             os.write_int32(1, v)?;
         }
         }
@@ -6252,7 +6252,7 @@ impl ::protobuf::Clear for CryptoShannonResponse {
 }
 }
 
 
 impl ::std::fmt::Debug for CryptoShannonResponse {
 impl ::std::fmt::Debug for CryptoShannonResponse {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -6308,7 +6308,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacResponse {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -6339,7 +6339,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacResponse {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.dummy {
         if let Some(v) = self.dummy {
             os.write_int32(1, v)?;
             os.write_int32(1, v)?;
         }
         }
@@ -6418,7 +6418,7 @@ impl ::protobuf::Clear for CryptoRc4Sha1HmacResponse {
 }
 }
 
 
 impl ::std::fmt::Debug for CryptoRc4Sha1HmacResponse {
 impl ::std::fmt::Debug for CryptoRc4Sha1HmacResponse {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }

+ 20 - 20
protocol/src/mercury.rs

@@ -1,4 +1,4 @@
-// This file is generated by rust-protobuf 2.8.0. Do not edit
+// This file is generated by rust-protobuf 2.8.1. Do not edit
 // @generated
 // @generated
 
 
 // https://github.com/Manishearth/rust-clippy/issues/702
 // https://github.com/Manishearth/rust-clippy/issues/702
@@ -24,7 +24,7 @@ use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
 
 
 /// Generated files are compatible only with the same version
 /// Generated files are compatible only with the same version
 /// of protobuf runtime.
 /// of protobuf runtime.
-const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_0;
+const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_1;
 
 
 #[derive(PartialEq,Clone,Default)]
 #[derive(PartialEq,Clone,Default)]
 pub struct MercuryMultiGetRequest {
 pub struct MercuryMultiGetRequest {
@@ -82,7 +82,7 @@ impl ::protobuf::Message for MercuryMultiGetRequest {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -110,7 +110,7 @@ impl ::protobuf::Message for MercuryMultiGetRequest {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.request {
         for v in &self.request {
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -191,7 +191,7 @@ impl ::protobuf::Clear for MercuryMultiGetRequest {
 }
 }
 
 
 impl ::std::fmt::Debug for MercuryMultiGetRequest {
 impl ::std::fmt::Debug for MercuryMultiGetRequest {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -258,7 +258,7 @@ impl ::protobuf::Message for MercuryMultiGetReply {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -286,7 +286,7 @@ impl ::protobuf::Message for MercuryMultiGetReply {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.reply {
         for v in &self.reply {
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -367,7 +367,7 @@ impl ::protobuf::Clear for MercuryMultiGetReply {
 }
 }
 
 
 impl ::std::fmt::Debug for MercuryMultiGetReply {
 impl ::std::fmt::Debug for MercuryMultiGetReply {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -551,7 +551,7 @@ impl ::protobuf::Message for MercuryRequest {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -596,7 +596,7 @@ impl ::protobuf::Message for MercuryRequest {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.uri.as_ref() {
         if let Some(ref v) = self.uri.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -702,7 +702,7 @@ impl ::protobuf::Clear for MercuryRequest {
 }
 }
 
 
 impl ::std::fmt::Debug for MercuryRequest {
 impl ::std::fmt::Debug for MercuryRequest {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -946,7 +946,7 @@ impl ::protobuf::Message for MercuryReply {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1017,7 +1017,7 @@ impl ::protobuf::Message for MercuryReply {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.status_code {
         if let Some(v) = self.status_code {
             os.write_sint32(1, v)?;
             os.write_sint32(1, v)?;
         }
         }
@@ -1150,7 +1150,7 @@ impl ::protobuf::Clear for MercuryReply {
 }
 }
 
 
 impl ::std::fmt::Debug for MercuryReply {
 impl ::std::fmt::Debug for MercuryReply {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1407,7 +1407,7 @@ impl ::protobuf::Message for Header {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1463,7 +1463,7 @@ impl ::protobuf::Message for Header {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.uri.as_ref() {
         if let Some(ref v) = self.uri.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -1580,7 +1580,7 @@ impl ::protobuf::Clear for Header {
 }
 }
 
 
 impl ::std::fmt::Debug for Header {
 impl ::std::fmt::Debug for Header {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1690,7 +1690,7 @@ impl ::protobuf::Message for UserField {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1723,7 +1723,7 @@ impl ::protobuf::Message for UserField {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.key.as_ref() {
         if let Some(ref v) = self.key.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -1811,7 +1811,7 @@ impl ::protobuf::Clear for UserField {
 }
 }
 
 
 impl ::std::fmt::Debug for UserField {
 impl ::std::fmt::Debug for UserField {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }

+ 68 - 68
protocol/src/metadata.rs

@@ -1,4 +1,4 @@
-// This file is generated by rust-protobuf 2.8.0. Do not edit
+// This file is generated by rust-protobuf 2.8.1. Do not edit
 // @generated
 // @generated
 
 
 // https://github.com/Manishearth/rust-clippy/issues/702
 // https://github.com/Manishearth/rust-clippy/issues/702
@@ -24,7 +24,7 @@ use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
 
 
 /// Generated files are compatible only with the same version
 /// Generated files are compatible only with the same version
 /// of protobuf runtime.
 /// of protobuf runtime.
-const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_0;
+const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_1;
 
 
 #[derive(PartialEq,Clone,Default)]
 #[derive(PartialEq,Clone,Default)]
 pub struct TopTracks {
 pub struct TopTracks {
@@ -119,7 +119,7 @@ impl ::protobuf::Message for TopTracks {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -153,7 +153,7 @@ impl ::protobuf::Message for TopTracks {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.country.as_ref() {
         if let Some(ref v) = self.country.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -243,7 +243,7 @@ impl ::protobuf::Clear for TopTracks {
 }
 }
 
 
 impl ::std::fmt::Debug for TopTracks {
 impl ::std::fmt::Debug for TopTracks {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -339,7 +339,7 @@ impl ::protobuf::Message for ActivityPeriod {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -390,7 +390,7 @@ impl ::protobuf::Message for ActivityPeriod {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.start_year {
         if let Some(v) = self.start_year {
             os.write_sint32(1, v)?;
             os.write_sint32(1, v)?;
         }
         }
@@ -487,7 +487,7 @@ impl ::protobuf::Clear for ActivityPeriod {
 }
 }
 
 
 impl ::std::fmt::Debug for ActivityPeriod {
 impl ::std::fmt::Debug for ActivityPeriod {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1043,7 +1043,7 @@ impl ::protobuf::Message for Artist {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1186,7 +1186,7 @@ impl ::protobuf::Message for Artist {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gid.as_ref() {
         if let Some(ref v) = self.gid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -1433,7 +1433,7 @@ impl ::protobuf::Clear for Artist {
 }
 }
 
 
 impl ::std::fmt::Debug for Artist {
 impl ::std::fmt::Debug for Artist {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1500,7 +1500,7 @@ impl ::protobuf::Message for AlbumGroup {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1528,7 +1528,7 @@ impl ::protobuf::Message for AlbumGroup {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.album {
         for v in &self.album {
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -1609,7 +1609,7 @@ impl ::protobuf::Clear for AlbumGroup {
 }
 }
 
 
 impl ::std::fmt::Debug for AlbumGroup {
 impl ::std::fmt::Debug for AlbumGroup {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1745,7 +1745,7 @@ impl ::protobuf::Message for Date {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1816,7 +1816,7 @@ impl ::protobuf::Message for Date {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.year {
         if let Some(v) = self.year {
             os.write_sint32(1, v)?;
             os.write_sint32(1, v)?;
         }
         }
@@ -1931,7 +1931,7 @@ impl ::protobuf::Clear for Date {
 }
 }
 
 
 impl ::std::fmt::Debug for Date {
 impl ::std::fmt::Debug for Date {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2496,7 +2496,7 @@ impl ::protobuf::Message for Album {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2633,7 +2633,7 @@ impl ::protobuf::Message for Album {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gid.as_ref() {
         if let Some(ref v) = self.gid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -2876,7 +2876,7 @@ impl ::protobuf::Clear for Album {
 }
 }
 
 
 impl ::std::fmt::Debug for Album {
 impl ::std::fmt::Debug for Album {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3404,7 +3404,7 @@ impl ::protobuf::Message for Track {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3543,7 +3543,7 @@ impl ::protobuf::Message for Track {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gid.as_ref() {
         if let Some(ref v) = self.gid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -3764,7 +3764,7 @@ impl ::protobuf::Clear for Track {
 }
 }
 
 
 impl ::std::fmt::Debug for Track {
 impl ::std::fmt::Debug for Track {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3897,7 +3897,7 @@ impl ::protobuf::Message for Image {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3950,7 +3950,7 @@ impl ::protobuf::Message for Image {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.file_id.as_ref() {
         if let Some(ref v) = self.file_id.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -4056,7 +4056,7 @@ impl ::protobuf::Clear for Image {
 }
 }
 
 
 impl ::std::fmt::Debug for Image {
 impl ::std::fmt::Debug for Image {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4184,7 +4184,7 @@ impl ::protobuf::Message for ImageGroup {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4212,7 +4212,7 @@ impl ::protobuf::Message for ImageGroup {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.image {
         for v in &self.image {
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -4293,7 +4293,7 @@ impl ::protobuf::Clear for ImageGroup {
 }
 }
 
 
 impl ::std::fmt::Debug for ImageGroup {
 impl ::std::fmt::Debug for ImageGroup {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4428,7 +4428,7 @@ impl ::protobuf::Message for Biography {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4469,7 +4469,7 @@ impl ::protobuf::Message for Biography {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.text.as_ref() {
         if let Some(ref v) = self.text.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -4570,7 +4570,7 @@ impl ::protobuf::Clear for Biography {
 }
 }
 
 
 impl ::std::fmt::Debug for Biography {
 impl ::std::fmt::Debug for Biography {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4694,7 +4694,7 @@ impl ::protobuf::Message for Disc {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4738,7 +4738,7 @@ impl ::protobuf::Message for Disc {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.number {
         if let Some(v) = self.number {
             os.write_sint32(1, v)?;
             os.write_sint32(1, v)?;
         }
         }
@@ -4837,7 +4837,7 @@ impl ::protobuf::Clear for Disc {
 }
 }
 
 
 impl ::std::fmt::Debug for Disc {
 impl ::std::fmt::Debug for Disc {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -4930,7 +4930,7 @@ impl ::protobuf::Message for Copyright {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -4963,7 +4963,7 @@ impl ::protobuf::Message for Copyright {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.typ {
         if let Some(v) = self.typ {
             os.write_enum(1, v.value())?;
             os.write_enum(1, v.value())?;
         }
         }
@@ -5051,7 +5051,7 @@ impl ::protobuf::Clear for Copyright {
 }
 }
 
 
 impl ::std::fmt::Debug for Copyright {
 impl ::std::fmt::Debug for Copyright {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5288,7 +5288,7 @@ impl ::protobuf::Message for Restriction {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5339,7 +5339,7 @@ impl ::protobuf::Message for Restriction {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.catalogue {
         for v in &self.catalogue {
             os.write_enum(1, v.value())?;
             os.write_enum(1, v.value())?;
         };
         };
@@ -5454,7 +5454,7 @@ impl ::protobuf::Clear for Restriction {
 }
 }
 
 
 impl ::std::fmt::Debug for Restriction {
 impl ::std::fmt::Debug for Restriction {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5671,7 +5671,7 @@ impl ::protobuf::Message for Availability {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5705,7 +5705,7 @@ impl ::protobuf::Message for Availability {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.catalogue_str {
         for v in &self.catalogue_str {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         };
         };
@@ -5795,7 +5795,7 @@ impl ::protobuf::Clear for Availability {
 }
 }
 
 
 impl ::std::fmt::Debug for Availability {
 impl ::std::fmt::Debug for Availability {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -5940,7 +5940,7 @@ impl ::protobuf::Message for SalePeriod {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -5982,7 +5982,7 @@ impl ::protobuf::Message for SalePeriod {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         for v in &self.restriction {
         for v in &self.restriction {
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
             os.write_raw_varint32(v.get_cached_size())?;
             os.write_raw_varint32(v.get_cached_size())?;
@@ -6085,7 +6085,7 @@ impl ::protobuf::Clear for SalePeriod {
 }
 }
 
 
 impl ::std::fmt::Debug for SalePeriod {
 impl ::std::fmt::Debug for SalePeriod {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -6195,7 +6195,7 @@ impl ::protobuf::Message for ExternalId {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -6228,7 +6228,7 @@ impl ::protobuf::Message for ExternalId {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.typ.as_ref() {
         if let Some(ref v) = self.typ.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -6316,7 +6316,7 @@ impl ::protobuf::Clear for ExternalId {
 }
 }
 
 
 impl ::std::fmt::Debug for ExternalId {
 impl ::std::fmt::Debug for ExternalId {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -6409,7 +6409,7 @@ impl ::protobuf::Message for AudioFile {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -6442,7 +6442,7 @@ impl ::protobuf::Message for AudioFile {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.file_id.as_ref() {
         if let Some(ref v) = self.file_id.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -6530,7 +6530,7 @@ impl ::protobuf::Clear for AudioFile {
 }
 }
 
 
 impl ::std::fmt::Debug for AudioFile {
 impl ::std::fmt::Debug for AudioFile {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -6694,7 +6694,7 @@ impl ::protobuf::Message for VideoFile {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -6721,7 +6721,7 @@ impl ::protobuf::Message for VideoFile {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.file_id.as_ref() {
         if let Some(ref v) = self.file_id.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -6800,7 +6800,7 @@ impl ::protobuf::Clear for VideoFile {
 }
 }
 
 
 impl ::std::fmt::Debug for VideoFile {
 impl ::std::fmt::Debug for VideoFile {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -7398,7 +7398,7 @@ impl ::protobuf::Message for Show {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -7551,7 +7551,7 @@ impl ::protobuf::Message for Show {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gid.as_ref() {
         if let Some(ref v) = self.gid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -7804,7 +7804,7 @@ impl ::protobuf::Clear for Show {
 }
 }
 
 
 impl ::std::fmt::Debug for Show {
 impl ::std::fmt::Debug for Show {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -8767,7 +8767,7 @@ impl ::protobuf::Message for Episode {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -8981,7 +8981,7 @@ impl ::protobuf::Message for Episode {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gid.as_ref() {
         if let Some(ref v) = self.gid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -9298,7 +9298,7 @@ impl ::protobuf::Clear for Episode {
 }
 }
 
 
 impl ::std::fmt::Debug for Episode {
 impl ::std::fmt::Debug for Episode {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -9402,7 +9402,7 @@ impl ::protobuf::Message for Category {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -9436,7 +9436,7 @@ impl ::protobuf::Message for Category {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.name.as_ref() {
         if let Some(ref v) = self.name.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -9526,7 +9526,7 @@ impl ::protobuf::Clear for Category {
 }
 }
 
 
 impl ::std::fmt::Debug for Category {
 impl ::std::fmt::Debug for Category {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -9599,7 +9599,7 @@ impl ::protobuf::Message for OriginalAudio {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -9626,7 +9626,7 @@ impl ::protobuf::Message for OriginalAudio {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.uuid.as_ref() {
         if let Some(ref v) = self.uuid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -9705,7 +9705,7 @@ impl ::protobuf::Clear for OriginalAudio {
 }
 }
 
 
 impl ::std::fmt::Debug for OriginalAudio {
 impl ::std::fmt::Debug for OriginalAudio {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }

+ 5 - 5
protocol/src/pubsub.rs

@@ -1,4 +1,4 @@
-// This file is generated by rust-protobuf 2.8.0. Do not edit
+// This file is generated by rust-protobuf 2.8.1. Do not edit
 // @generated
 // @generated
 
 
 // https://github.com/Manishearth/rust-clippy/issues/702
 // https://github.com/Manishearth/rust-clippy/issues/702
@@ -24,7 +24,7 @@ use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
 
 
 /// Generated files are compatible only with the same version
 /// Generated files are compatible only with the same version
 /// of protobuf runtime.
 /// of protobuf runtime.
-const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_0;
+const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_1;
 
 
 #[derive(PartialEq,Clone,Default)]
 #[derive(PartialEq,Clone,Default)]
 pub struct Subscription {
 pub struct Subscription {
@@ -128,7 +128,7 @@ impl ::protobuf::Message for Subscription {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -175,7 +175,7 @@ impl ::protobuf::Message for Subscription {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.uri.as_ref() {
         if let Some(ref v) = self.uri.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -272,7 +272,7 @@ impl ::protobuf::Clear for Subscription {
 }
 }
 
 
 impl ::std::fmt::Debug for Subscription {
 impl ::std::fmt::Debug for Subscription {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }

+ 26 - 26
protocol/src/spirc.rs

@@ -1,4 +1,4 @@
-// This file is generated by rust-protobuf 2.8.0. Do not edit
+// This file is generated by rust-protobuf 2.8.1. Do not edit
 // @generated
 // @generated
 
 
 // https://github.com/Manishearth/rust-clippy/issues/702
 // https://github.com/Manishearth/rust-clippy/issues/702
@@ -24,7 +24,7 @@ use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
 
 
 /// Generated files are compatible only with the same version
 /// Generated files are compatible only with the same version
 /// of protobuf runtime.
 /// of protobuf runtime.
-const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_0;
+const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_8_1;
 
 
 #[derive(PartialEq,Clone,Default)]
 #[derive(PartialEq,Clone,Default)]
 pub struct Frame {
 pub struct Frame {
@@ -501,7 +501,7 @@ impl ::protobuf::Message for Frame {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -636,7 +636,7 @@ impl ::protobuf::Message for Frame {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.version {
         if let Some(v) = self.version {
             os.write_uint32(1, v)?;
             os.write_uint32(1, v)?;
         }
         }
@@ -849,7 +849,7 @@ impl ::protobuf::Clear for Frame {
 }
 }
 
 
 impl ::std::fmt::Debug for Frame {
 impl ::std::fmt::Debug for Frame {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1195,7 +1195,7 @@ impl ::protobuf::Message for DeviceState {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1304,7 +1304,7 @@ impl ::protobuf::Message for DeviceState {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.sw_version.as_ref() {
         if let Some(ref v) = self.sw_version.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -1477,7 +1477,7 @@ impl ::protobuf::Clear for DeviceState {
 }
 }
 
 
 impl ::std::fmt::Debug for DeviceState {
 impl ::std::fmt::Debug for DeviceState {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1585,7 +1585,7 @@ impl ::protobuf::Message for Capability {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1624,7 +1624,7 @@ impl ::protobuf::Message for Capability {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.typ {
         if let Some(v) = self.typ {
             os.write_enum(1, v.value())?;
             os.write_enum(1, v.value())?;
         }
         }
@@ -1721,7 +1721,7 @@ impl ::protobuf::Clear for Capability {
 }
 }
 
 
 impl ::std::fmt::Debug for Capability {
 impl ::std::fmt::Debug for Capability {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -1794,7 +1794,7 @@ impl ::protobuf::Message for Goodbye {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -1821,7 +1821,7 @@ impl ::protobuf::Message for Goodbye {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.reason.as_ref() {
         if let Some(ref v) = self.reason.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -1900,7 +1900,7 @@ impl ::protobuf::Clear for Goodbye {
 }
 }
 
 
 impl ::std::fmt::Debug for Goodbye {
 impl ::std::fmt::Debug for Goodbye {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2317,7 +2317,7 @@ impl ::protobuf::Message for State {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2466,7 +2466,7 @@ impl ::protobuf::Message for State {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.context_uri.as_ref() {
         if let Some(ref v) = self.context_uri.as_ref() {
             os.write_string(2, &v)?;
             os.write_string(2, &v)?;
         }
         }
@@ -2675,7 +2675,7 @@ impl ::protobuf::Clear for State {
 }
 }
 
 
 impl ::std::fmt::Debug for State {
 impl ::std::fmt::Debug for State {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -2842,7 +2842,7 @@ impl ::protobuf::Message for TrackRef {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -2891,7 +2891,7 @@ impl ::protobuf::Message for TrackRef {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.gid.as_ref() {
         if let Some(ref v) = self.gid.as_ref() {
             os.write_bytes(1, &v)?;
             os.write_bytes(1, &v)?;
         }
         }
@@ -2997,7 +2997,7 @@ impl ::protobuf::Clear for TrackRef {
 }
 }
 
 
 impl ::std::fmt::Debug for TrackRef {
 impl ::std::fmt::Debug for TrackRef {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3332,7 +3332,7 @@ impl ::protobuf::Message for Ad {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3415,7 +3415,7 @@ impl ::protobuf::Message for Ad {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(v) = self.next {
         if let Some(v) = self.next {
             os.write_int32(1, v)?;
             os.write_int32(1, v)?;
         }
         }
@@ -3566,7 +3566,7 @@ impl ::protobuf::Clear for Ad {
 }
 }
 
 
 impl ::std::fmt::Debug for Ad {
 impl ::std::fmt::Debug for Ad {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }
@@ -3676,7 +3676,7 @@ impl ::protobuf::Message for Metadata {
         true
         true
     }
     }
 
 
-    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
+    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         while !is.eof()? {
         while !is.eof()? {
             let (field_number, wire_type) = is.read_tag_unpack()?;
             let (field_number, wire_type) = is.read_tag_unpack()?;
             match field_number {
             match field_number {
@@ -3709,7 +3709,7 @@ impl ::protobuf::Message for Metadata {
         my_size
         my_size
     }
     }
 
 
-    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
+    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
         if let Some(ref v) = self.field_type.as_ref() {
         if let Some(ref v) = self.field_type.as_ref() {
             os.write_string(1, &v)?;
             os.write_string(1, &v)?;
         }
         }
@@ -3797,7 +3797,7 @@ impl ::protobuf::Clear for Metadata {
 }
 }
 
 
 impl ::std::fmt::Debug for Metadata {
 impl ::std::fmt::Debug for Metadata {
-    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
+    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         ::protobuf::text_format::fmt(self, f)
         ::protobuf::text_format::fmt(self, f)
     }
     }
 }
 }