New: Added Heartwood support.

Going forward, consensus branch IDs will automatically switch over, once we reach the activation height.
This commit is contained in:
Kevin Gorham 2020-06-09 22:14:22 -04:00
parent c5ad25a5ce
commit c70da1983d
No known key found for this signature in database
GPG Key ID: CCA55602DF49FC38
9 changed files with 247 additions and 163 deletions

223
Cargo.lock generated
View File

@ -69,19 +69,19 @@ name = "backtrace"
version = "0.3.46"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace-sys 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace-sys 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)",
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "backtrace-sys"
version = "0.1.35"
version = "0.1.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.52 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -109,18 +109,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "bellman"
version = "0.2.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"bit-vec 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
"blake2s_simd 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
"group 0.2.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"group 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -183,7 +183,7 @@ dependencies = [
[[package]]
name = "bs58"
version = "0.3.0"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"sha2 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
@ -210,7 +210,7 @@ dependencies = [
[[package]]
name = "cc"
version = "1.0.50"
version = "1.0.52"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@ -339,7 +339,7 @@ name = "directories"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -370,9 +370,9 @@ name = "failure_derive"
version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -394,24 +394,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "ff"
version = "0.5.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"ff_derive 0.4.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff_derive 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "ff_derive"
version = "0.4.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"num-bigint 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
"num-integer 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -456,7 +456,7 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -464,7 +464,7 @@ name = "generic-array"
version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"typenum 1.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
"typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -473,16 +473,16 @@ version = "0.1.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "group"
version = "0.2.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_xorshift 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -508,10 +508,10 @@ dependencies = [
[[package]]
name = "hermit-abi"
version = "0.1.8"
version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -545,7 +545,7 @@ name = "iovec"
version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -582,7 +582,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libc"
version = "0.2.68"
version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@ -590,7 +590,7 @@ name = "libsqlite3-sys"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.52 (registry+https://github.com/rust-lang/crates.io-index)",
"pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
"vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -602,7 +602,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "lock_api"
version = "0.3.3"
version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@ -668,7 +668,7 @@ dependencies = [
"fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"iovec 0.1.4 (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.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (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)",
@ -682,7 +682,7 @@ version = "0.6.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -703,7 +703,7 @@ version = "0.2.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -736,11 +736,11 @@ dependencies = [
[[package]]
name = "num_cpus"
version = "1.12.0"
version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"hermit-abi 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"hermit-abi 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -751,11 +751,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pairing"
version = "0.15.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"group 0.2.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"group 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -764,7 +764,7 @@ name = "parking_lot"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"lock_api 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"lock_api 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -776,7 +776,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"redox_syscall 0.1.56 (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.13 (registry+https://github.com/rust-lang/crates.io-index)",
@ -795,7 +795,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "proc-macro2"
version = "1.0.9"
version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@ -831,7 +831,7 @@ name = "quote"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -840,7 +840,7 @@ version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@ -889,9 +889,9 @@ name = "ring"
version = "0.14.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.52 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
"untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@ -908,7 +908,7 @@ dependencies = [
"libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)",
"lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"memchr 2.3.3 (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.43 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -947,7 +947,7 @@ name = "same-file"
version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"winapi-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -1023,10 +1023,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "syn"
version = "1.0.17"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -1036,19 +1036,18 @@ name = "synstructure"
version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "time"
version = "0.1.42"
version = "0.1.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -1088,7 +1087,7 @@ dependencies = [
"bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio-codec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio-current-thread 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1179,7 +1178,7 @@ dependencies = [
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
"parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
"slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1220,7 +1219,7 @@ dependencies = [
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
"slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
"tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -1277,7 +1276,7 @@ dependencies = [
"bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
"mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
"mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1293,7 +1292,7 @@ dependencies = [
"bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
"mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1304,7 +1303,7 @@ dependencies = [
[[package]]
name = "typenum"
version = "1.11.2"
version = "1.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@ -1318,7 +1317,7 @@ version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -1356,7 +1355,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -1408,7 +1407,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "winapi-util"
version = "0.1.3"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1434,7 +1433,7 @@ version = "0.0.1"
dependencies = [
"android_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"failure 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
"grpc 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1442,64 +1441,64 @@ dependencies = [
"jni 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"log-panics 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"protobuf 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"tls-api 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
"tls-api-rustls 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_proofs 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"zcash_proofs 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
]
[[package]]
name = "zcash_client_backend"
version = "0.1.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"bech32 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"bs58 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"protobuf 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"protobuf-codegen-pure 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"subtle 2.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
]
[[package]]
name = "zcash_client_sqlite"
version = "0.0.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"bech32 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"bs58 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"protobuf 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"rusqlite 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
]
[[package]]
name = "zcash_primitives"
version = "0.1.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"aes 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"blake2b_simd 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
"blake2s_simd 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"crypto_api_chachapoly 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"fpe 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
@ -1508,16 +1507,16 @@ dependencies = [
[[package]]
name = "zcash_proofs"
version = "0.1.0"
source = "git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7#24ab2ed19cd627d17c4a5fc4eb9d2f90b0011a11"
source = "git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c#c72d374e28bea0c249a898f2c470ed3d58773d0c"
dependencies = [
"bellman 0.2.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"bellman 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"blake2b_simd 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
"directories 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
"rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)",
"zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)",
]
[metadata]
@ -1531,11 +1530,11 @@ dependencies = [
"checksum ascii 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e"
"checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
"checksum backtrace 0.3.46 (registry+https://github.com/rust-lang/crates.io-index)" = "b1e692897359247cc6bb902933361652380af0f1b7651ae5c5013407f30e109e"
"checksum backtrace-sys 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)" = "7de8aba10a69c8e8d7622c5710229485ec32e9d55fdad160ea559c086fdcd118"
"checksum backtrace-sys 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)" = "78848718ee1255a2485d1309ad9cdecfc2e7d0362dd11c6829364c6b35ae1bc7"
"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
"checksum bech32 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "cdcf67bb7ba7797a081cd19009948ab533af7c355d5caf1d08c777582d351e9c"
"checksum bellman 0.2.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum bellman 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum bit-vec 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "02b4ff8b16e6076c3e14220b39fbc1fabb6737522281a388998046859400895f"
"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
"checksum blake2b_simd 0.5.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
@ -1543,11 +1542,11 @@ dependencies = [
"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774"
"checksum block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
"checksum bs58 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b170cd256a3f9fa6b9edae3e44a7dfdfc77e8124dbc3e2612d75f9c3e2396dae"
"checksum bs58 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "476e9cd489f9e121e02ffa6014a8ef220ecb15c05ed23fc34cca13925dc283fb"
"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
"checksum byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
"checksum cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)" = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
"checksum cc 1.0.52 (registry+https://github.com/rust-lang/crates.io-index)" = "c3d87b23d6a92cd03af510a5ade527033f6aa6fa92161e2d5863a907d4c5e31d"
"checksum cesu8 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
@ -1570,8 +1569,8 @@ dependencies = [
"checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
"checksum fallible-iterator 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7"
"checksum fallible-streaming-iterator 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
"checksum ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum ff_derive 0.4.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum ff 0.5.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum ff_derive 0.4.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
"checksum fpe 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "21988a326139165b75e3196bc6962ca638e5fb0c95102fbf152a3743174b01e4"
"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
@ -1580,9 +1579,9 @@ dependencies = [
"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
"checksum generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
"checksum getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
"checksum group 0.2.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum group 0.2.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum grpc 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2aaf1d741fe6f3413f1f9f71b99f5e4e26776d563475a8a53ce53a73a8534c1d"
"checksum hermit-abi 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1010591b26bbfe835e9faeabeb11866061cc7dcebffd56ad7d0942d0e61aefd8"
"checksum hermit-abi 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8a0d737e0f947a1864e93d33fdef4af8445a00d1ed8dc0c8ddb73139ea6abf15"
"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"
"checksum httpbis 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7689cfa896b2a71da4f16206af167542b75d242b6906313e53857972a92d5614"
"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
@ -1590,10 +1589,10 @@ dependencies = [
"checksum jni-sys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
"checksum libc 0.2.68 (registry+https://github.com/rust-lang/crates.io-index)" = "dea0c0405123bba743ee3f91f49b1c7cfb684eef0da0a50110f758ccf24cdff0"
"checksum libc 0.2.69 (registry+https://github.com/rust-lang/crates.io-index)" = "99e85c08494b21a9054e7fe1374a732aeadaff3980b6990b94bfd3a70f690005"
"checksum libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25"
"checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83"
"checksum lock_api 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "79b2de95ecb4691949fea4716ca53cdbcfccb2c612e19644a8bad05edcf9f47b"
"checksum lock_api 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75"
"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
"checksum log-panics 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ae0136257df209261daa18d6c16394757c63e032e27aafd8b07788b051082bef"
@ -1608,14 +1607,14 @@ dependencies = [
"checksum num-bigint 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304"
"checksum num-integer 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "3f6ea62e9d81a77cd3ee9a2a5b9b609447857f3d358704331e4ef39eb247fcba"
"checksum num-traits 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "c62be47e61d1842b9170f0fdeec8eba98e60e90e5446449a0545e5152acd7096"
"checksum num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "46203554f085ff89c235cd12f7075f3233af9b11ed7c9e16dfe2560d03313ce6"
"checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
"checksum opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
"checksum pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum pairing 0.15.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
"checksum parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
"checksum pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)" = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
"checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
"checksum proc-macro2 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6c09721c6781493a2a492a96b5a5bf19b65917fe6728884e7c44dd0c60ca3435"
"checksum proc-macro2 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)" = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3"
"checksum protobuf 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "70731852eec72c56d11226c8a5f96ad5058a3dab73647ca5f7ee351e464f2571"
"checksum protobuf-codegen 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3d74b9cbbf2ac9a7169c85a3714ec16c51ee9ec7cfd511549527e9a7df720795"
"checksum protobuf-codegen-pure 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f71e714718f4a763cab62775fa699659b0f61087b8c7a94ad7b4334783de3c12"
@ -1644,9 +1643,9 @@ dependencies = [
"checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
"checksum spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
"checksum subtle 2.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c65d530b10ccaeac294f349038a597e435b18fb456aadd0840a623f83b9e941"
"checksum syn 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)" = "0df0eb663f387145cab623dea85b09c2c5b4b0aef44e945d928e682fce71bb03"
"checksum syn 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)" = "410a7488c0a728c7ceb4ad59b9567eb4053d02e8cc7f5c0e0eeeb39518369213"
"checksum synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
"checksum time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
"checksum tls-api 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "049c03787a0595182357fbd487577947f4351b78ce20c3668f6d49f17feb13d1"
"checksum tls-api-rustls 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "170e842eb3737569f46972898d82f69755cf983b61fb706ea3cf0f4a2b67bc09"
"checksum tls-api-stub 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "c9a0cc8c149724db9de7d73a0e1bc80b1a74f5394f08c6f301e11f9c35fa061e"
@ -1667,7 +1666,7 @@ dependencies = [
"checksum tokio-udp 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82"
"checksum tokio-uds 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "65ae5d255ce739e8537221ed2942e0445f4b3b813daebac1c0050ddaaa3587f9"
"checksum tokio-uds 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "5076db410d6fdc6523df7595447629099a1fdc47b3d9f896220780fa48faf798"
"checksum typenum 1.11.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6d2783fe2d6b8c1101136184eb41be8b1ad379e4657050b8aaff0c79ee7575f9"
"checksum typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
"checksum unix_socket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6aa2700417c405c38f5e6902d699345241c28c0b7ade4abaad71e35a87eb1564"
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
@ -1683,10 +1682,10 @@ dependencies = [
"checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
"checksum winapi-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4ccfbf554c6ad11084fb7517daca16cfdcaccbdadba4fc336f032a8b12c2ad80"
"checksum winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
"checksum zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum zcash_proofs 0.1.0 (git+https://github.com/str4d/librustzcash.git?branch=note-spending-v7)" = "<none>"
"checksum zcash_client_backend 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum zcash_client_sqlite 0.0.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum zcash_primitives 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"
"checksum zcash_proofs 0.1.0 (git+https://github.com/str4d/librustzcash.git?rev=c72d374e28bea0c249a898f2c470ed3d58773d0c)" = "<none>"

View File

@ -25,27 +25,27 @@ tls-api-rustls = { version = "0.1", optional = true }
[dependencies.ff]
git = "https://github.com/str4d/librustzcash.git"
branch = "note-spending-v7"
rev = "c72d374e28bea0c249a898f2c470ed3d58773d0c"
[dependencies.pairing]
git = "https://github.com/str4d/librustzcash.git"
branch = "note-spending-v7"
rev = "c72d374e28bea0c249a898f2c470ed3d58773d0c"
[dependencies.zcash_client_backend]
git = "https://github.com/str4d/librustzcash.git"
branch = "note-spending-v7"
rev = "c72d374e28bea0c249a898f2c470ed3d58773d0c"
[dependencies.zcash_client_sqlite]
git = "https://github.com/str4d/librustzcash.git"
branch = "note-spending-v7"
rev = "c72d374e28bea0c249a898f2c470ed3d58773d0c"
[dependencies.zcash_primitives]
git = "https://github.com/str4d/librustzcash.git"
branch = "note-spending-v7"
rev = "c72d374e28bea0c249a898f2c470ed3d58773d0c"
[dependencies.zcash_proofs]
git = "https://github.com/str4d/librustzcash.git"
branch = "note-spending-v7"
rev = "c72d374e28bea0c249a898f2c470ed3d58773d0c"
#[patch.'https://github.com/str4d/librustzcash.git']
#ff = { path = '../../clones/librustzcash/ff' }

View File

@ -0,0 +1,29 @@
package cash.z.wallet.sdk.ext
/**
* Helper class for converting/displaying consensus branch ids. Activation height is intentionally
* omitted since this is not the source of truth for branch information but rather a tool for
* printing that information to users.
*/
enum class ConsensusBranchId(val displayName: String, val id: Long, val hexId: String) {
SPROUT("Sprout", 0, "0"),
OVERWINTER("Overwinter", 0x5ba8_1b19, "5ba81b19"),
SAPLING("Sapling", 0x76b8_09bb, "76b809bb"),
BLOSSOM("Blossom", 0x2bb4_0e60, "2bb40e60"),
HEARTWOOD("Heartwood", 0xf5b9_230b, "f5b9230b");
override fun toString(): String = displayName
companion object {
fun fromName(name: String): ConsensusBranchId?
= values().firstOrNull { it.displayName.equals(name, true) }
fun fromId(id: Long): ConsensusBranchId? = values().firstOrNull { it.id == id }
fun fromHex(hex: String): ConsensusBranchId? = values().firstOrNull { branch ->
hex.toLowerCase().replace("_", "").replaceFirst("0x", "").let { sanitized ->
branch.hexId.equals(sanitized, true)
}
}
}
}

View File

@ -104,6 +104,7 @@ class RustBackend : RustBackendWelding {
override fun decryptAndStoreTransaction(tx: ByteArray) = decryptAndStoreTransaction(pathDataDb, tx)
override fun createToAddress(
consensusBranchId: Long,
account: Int,
extsk: String,
to: String,
@ -111,6 +112,7 @@ class RustBackend : RustBackendWelding {
memo: ByteArray?
): Long = createToAddress(
pathDataDb,
consensusBranchId,
account,
extsk,
to,
@ -133,11 +135,11 @@ class RustBackend : RustBackendWelding {
override fun deriveAddress(viewingKey: String) = deriveAddressFromViewingKey(viewingKey)
override fun isValidShieldedAddr(addr: String) =
isValidShieldedAddress(addr)
override fun isValidShieldedAddr(addr: String) = isValidShieldedAddress(addr)
override fun isValidTransparentAddr(addr: String) =
isValidTransparentAddress(addr)
override fun isValidTransparentAddr(addr: String) = isValidTransparentAddress(addr)
override fun getBranchIdForHeight(height: Int): Long = branchIdForHeight(height)
/**
* Exposes all of the librustzcash functions along with helpers for loading the static library.
@ -221,6 +223,7 @@ class RustBackend : RustBackendWelding {
@JvmStatic private external fun createToAddress(
dbDataPath: String,
consensusBranchId: Long,
account: Int,
extsk: String,
to: String,
@ -241,5 +244,7 @@ class RustBackend : RustBackendWelding {
@JvmStatic private external fun deriveAddressFromSeed(seed: ByteArray, accountIndex: Int): String
@JvmStatic private external fun deriveAddressFromViewingKey(key: String): String
@JvmStatic private external fun branchIdForHeight(height: Int): Long
}
}
}

View File

@ -8,37 +8,8 @@ package cash.z.wallet.sdk.jni
*/
interface RustBackendWelding {
fun initDataDb(): Boolean
// fun initAccountsTable(extfvks: Array<ByteArray>, numberOfAccounts: Int)
fun initAccountsTable(seed: ByteArray, numberOfAccounts: Int): Array<String>
fun initBlocksTable(height: Int, hash: String, time: Long, saplingTree: String): Boolean
fun getAddress(account: Int = 0): String
fun isValidShieldedAddr(addr: String): Boolean
fun isValidTransparentAddr(addr: String): Boolean
fun getBalance(account: Int = 0): Long
fun getVerifiedBalance(account: Int = 0): Long
fun getReceivedMemoAsUtf8(idNote: Long): String
fun getSentMemoAsUtf8(idNote: Long): String
fun validateCombinedChain(): Int
fun rewindToHeight(height: Int): Boolean
fun scanBlocks(limit: Int = -1): Boolean
fun decryptAndStoreTransaction(tx: ByteArray)
fun createToAddress(
consensusBranchId: Long,
account: Int,
extsk: String,
to: String,
@ -46,13 +17,46 @@ interface RustBackendWelding {
memo: ByteArray? = byteArrayOf()
): Long
fun deriveSpendingKeys(seed: ByteArray, numberOfAccounts: Int = 1): Array<String>
fun deriveViewingKeys(seed: ByteArray, numberOfAccounts: Int = 1): Array<String>
fun deriveViewingKey(spendingKey: String): String
fun deriveAddress(viewingKey: String): String
fun deriveAddress(seed: ByteArray, accountIndex: Int = 0): String
fun deriveAddress(viewingKey: String): String
}
fun deriveSpendingKeys(seed: ByteArray, numberOfAccounts: Int = 1): Array<String>
fun deriveViewingKey(spendingKey: String): String
fun deriveViewingKeys(seed: ByteArray, numberOfAccounts: Int = 1): Array<String>
fun decryptAndStoreTransaction(tx: ByteArray)
fun initAccountsTable(seed: ByteArray, numberOfAccounts: Int): Array<String>
// fun initAccountsTable(extfvks: Array<ByteArray>, numberOfAccounts: Int)
fun initBlocksTable(height: Int, hash: String, time: Long, saplingTree: String): Boolean
fun initDataDb(): Boolean
fun isValidShieldedAddr(addr: String): Boolean
fun isValidTransparentAddr(addr: String): Boolean
fun getAddress(account: Int = 0): String
fun getBalance(account: Int = 0): Long
fun getBranchIdForHeight(height: Int): Long
fun getReceivedMemoAsUtf8(idNote: Long): String
fun getSentMemoAsUtf8(idNote: Long): String
fun getVerifiedBalance(account: Int = 0): Long
fun rewindToHeight(height: Int): Boolean
fun scanBlocks(limit: Int = -1): Boolean
fun validateCombinedChain(): Int
}

View File

@ -9,6 +9,8 @@ import cash.z.wallet.sdk.entity.PendingTransaction
import cash.z.wallet.sdk.entity.PendingTransactionEntity
import cash.z.wallet.sdk.entity.isCancelled
import cash.z.wallet.sdk.entity.isSubmitted
import cash.z.wallet.sdk.exception.LightwalletException
import cash.z.wallet.sdk.ext.ConsensusBranchId
import cash.z.wallet.sdk.ext.twig
import cash.z.wallet.sdk.service.LightWalletService
import kotlinx.coroutines.Dispatchers
@ -31,7 +33,7 @@ import kotlin.math.max
*/
class PersistentTransactionManager(
db: PendingTransactionDb,
private val encoder: TransactionEncoder,
internal val encoder: TransactionEncoder,
private val service: LightWalletService
) : OutboundTransactionManager {

View File

@ -43,4 +43,9 @@ interface TransactionEncoder {
* @return true when the given address is a valid t-addr
*/
suspend fun isValidTransparentAddress(address: String): Boolean
/**
* Return the consensus branch that the encoder is using when making transactions.
*/
suspend fun getConsensusBranchId(): Long
}

View File

@ -75,6 +75,13 @@ class WalletTransactionEncoder(
rustBackend.isValidTransparentAddr(address)
}
override suspend fun getConsensusBranchId(): Long {
val height = repository.lastScannedHeight()
if (height < ZcashSdk.SAPLING_ACTIVATION_HEIGHT)
throw TransactionEncoderException.IncompleteScanException(height)
return rustBackend.getBranchIdForHeight(height)
}
/**
* Does the proofs and processing required to create a transaction to spend funds and inserts
* the result in the database. On average, this call takes over 10 seconds.
@ -98,9 +105,11 @@ class WalletTransactionEncoder(
twigTask("creating transaction to spend $zatoshi zatoshi to" +
" ${toAddress.masked()} with memo $memo") {
try {
val branchId = getConsensusBranchId()
ensureParams((rustBackend as RustBackend).pathParamsDir)
twig("params exist! attempting to send...")
twig("params exist! attempting to send with consensus branchId $branchId...")
rustBackend.createToAddress(
branchId,
fromAccountIndex,
spendingKey,
toAddress,

View File

@ -11,6 +11,7 @@ use jni::{
JNIEnv,
};
use log::Level;
use std::convert::TryFrom;
use std::panic;
use std::path::Path;
use std::ptr;
@ -45,6 +46,12 @@ use zcash_proofs::prover::LocalTxProver;
use crate::utils::exception::unwrap_exc_or;
#[cfg(feature = "mainnet")]
use zcash_primitives::consensus::MainNetwork as Network;
#[cfg(not(feature = "mainnet"))]
use zcash_primitives::consensus::TestNetwork as Network;
#[cfg(feature = "mainnet")]
use zcash_client_backend::constants::mainnet::{
COIN_TYPE, HRP_SAPLING_EXTENDED_FULL_VIEWING_KEY, HRP_SAPLING_EXTENDED_SPENDING_KEY,
@ -599,6 +606,7 @@ pub unsafe extern "C" fn Java_cash_z_wallet_sdk_jni_RustBackend_createToAddress(
env: JNIEnv<'_>,
_: JClass<'_>,
db_data: JString<'_>,
consensus_branch_id: jlong,
account: jint,
extsk: JString<'_>,
to: JString<'_>,
@ -646,9 +654,17 @@ pub unsafe extern "C" fn Java_cash_z_wallet_sdk_jni_RustBackend_createToAddress(
let prover = LocalTxProver::new(Path::new(&spend_params), Path::new(&output_params));
let branch_id = match BranchId::try_from(consensus_branch_id as u32) {
Ok(branch) => branch,
Err(e) => {
return Err(format_err!("Invalid consensus branch id: {}", e));
}
};
// let branch = if
create_to_address(
&db_data,
BranchId::Blossom,
branch_id,
prover,
(account, &extsk),
&to,
@ -659,3 +675,18 @@ pub unsafe extern "C" fn Java_cash_z_wallet_sdk_jni_RustBackend_createToAddress(
});
unwrap_exc_or(&env, res, -1)
}
#[no_mangle]
pub unsafe extern "C" fn Java_cash_z_wallet_sdk_jni_RustBackend_branchIdForHeight(
env: JNIEnv<'_>,
_: JClass<'_>,
height: jint,
) -> jint {
let res = panic::catch_unwind(|| {
let branch: BranchId = BranchId::for_height::<Network>(height as u32);
let branch_id:u32 = u32::from(branch);
debug!("For height {} found consensus branch {:?}", height, branch);
Ok(branch_id as i32)
});
unwrap_exc_or(&env, res, -1)
}