Radish alpha
r
Radicle terminal user interface
Radicle
Git (anonymous pull)
Log in to clone via SSH
chore: Switch to git deps for heartwood
Erik Kundt committed 2 years ago
commit 68f69f296bdd65b6e15cf620938c9225f0aff1e2
parent 5d44b7c79d4b541e9d35b31f45ed4b6b6586c136
5 files changed +448 -347
modified Cargo.lock
@@ -9,6 +9,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"

[[package]]
+
name = "aead"
+
version = "0.5.2"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0"
+
dependencies = [
+
 "crypto-common",
+
 "generic-array",
+
]
+

+
[[package]]
name = "aes"
version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -20,6 +30,20 @@ dependencies = [
]

[[package]]
+
name = "aes-gcm"
+
version = "0.10.3"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1"
+
dependencies = [
+
 "aead",
+
 "aes",
+
 "cipher",
+
 "ctr",
+
 "ghash",
+
 "subtle",
+
]
+

+
[[package]]
name = "aho-corasick"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -30,9 +54,9 @@ dependencies = [

[[package]]
name = "amplify"
-
version = "4.0.1"
+
version = "4.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "4707ab08f19a25ba492cbf61713591b7f022b54ee188f35457e6de22f367df4a"
+
checksum = "8629db306c0bbeb0a402e2918bdcf0026b5ddb24c46460f3bf5410b350d98710"
dependencies = [
 "amplify_derive",
 "amplify_num",
@@ -42,9 +66,9 @@ dependencies = [

[[package]]
name = "amplify_derive"
-
version = "3.0.1"
+
version = "4.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "c87df0f28e6eb1f2d355f29ba6793fa9ca643967528609608d5cbd70bd68f9d1"
+
checksum = "759dcbfaf94d838367a86d493ec34ccc8aa6fe365cb7880d6bf89006de24d9c1"
dependencies = [
 "amplify_syn",
 "proc-macro2",
@@ -54,9 +78,12 @@ dependencies = [

[[package]]
name = "amplify_num"
-
version = "0.5.0"
+
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "ddce3bc63e807ea02065e8d8b702695f3d302ae4158baddff8b0ce5c73947251"
+
checksum = "9681187211554ab98f138ba159e90861b136c20afc680dcff2ba82d020721e27"
+
dependencies = [
+
 "wasm-bindgen",
+
]

[[package]]
name = "amplify_syn"
@@ -86,11 +113,11 @@ dependencies = [

[[package]]
name = "anstyle-query"
-
version = "1.0.0"
+
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+
checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
dependencies = [
-
 "windows-sys",
+
 "windows-sys 0.52.0",
]

[[package]]
@@ -119,9 +146,9 @@ checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270"

[[package]]
name = "base16ct"
-
version = "0.1.1"
+
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
+
checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"

[[package]]
name = "base32"
@@ -143,13 +170,13 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"

[[package]]
name = "bcrypt-pbkdf"
-
version = "0.9.0"
+
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "3806a8db60cf56efee531616a34a6aaa9a114d6da2add861b0fa4a188881b2c7"
+
checksum = "6aeac2e1fe888769f34f05ac343bbef98b14d1ffb292ab69d4608b3abc86f2a2"
dependencies = [
 "blowfish",
 "pbkdf2",
-
 "sha2 0.10.7",
+
 "sha2",
]

[[package]]
@@ -172,18 +199,18 @@ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"

[[package]]
name = "block-buffer"
-
version = "0.9.0"
+
version = "0.10.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
+
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
dependencies = [
 "generic-array",
]

[[package]]
-
name = "block-buffer"
-
version = "0.10.4"
+
name = "block-padding"
+
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
+
checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
dependencies = [
 "generic-array",
]
@@ -212,9 +239,9 @@ checksum = "2c676a478f63e9fa2dd5368a42f28bba0d6c560b775f38583c8bbaa7fcd67c9c"

[[package]]
name = "byteorder"
-
version = "1.4.3"
+
version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
+
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"

[[package]]
name = "cassowary"
@@ -223,6 +250,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"

[[package]]
+
name = "cbc"
+
version = "0.1.2"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6"
+
dependencies = [
+
 "cipher",
+
]
+

+
[[package]]
name = "cc"
version = "1.0.81"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -239,6 +275,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"

[[package]]
+
name = "chacha20"
+
version = "0.9.1"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818"
+
dependencies = [
+
 "cfg-if",
+
 "cipher",
+
 "cpufeatures",
+
]
+

+
[[package]]
name = "chrono"
version = "0.4.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -290,9 +337,9 @@ dependencies = [

[[package]]
name = "const-oid"
-
version = "0.9.4"
+
version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "795bc6e66a8e340f075fcf6227e417a2dc976b92b91f3cdc778bb858778b6747"
+
checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"

[[package]]
name = "core-foundation-sys"
@@ -320,9 +367,9 @@ dependencies = [

[[package]]
name = "crossbeam-channel"
-
version = "0.5.8"
+
version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
+
checksum = "14c3242926edf34aec4ac3a77108ad4854bffaa2e4ddc1824124ce59231302d5"
dependencies = [
 "cfg-if",
 "crossbeam-utils",
@@ -330,9 +377,9 @@ dependencies = [

[[package]]
name = "crossbeam-utils"
-
version = "0.8.16"
+
version = "0.8.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
+
checksum = "c06d96137f14f244c37f989d9fff8f95e6c18b918e71f36638f8c49112e4c78f"
dependencies = [
 "cfg-if",
]
@@ -364,12 +411,12 @@ dependencies = [

[[package]]
name = "crypto-bigint"
-
version = "0.4.9"
+
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef"
+
checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
dependencies = [
 "generic-array",
-
 "rand_core 0.6.4",
+
 "rand_core",
 "subtle",
 "zeroize",
]
@@ -400,23 +447,10 @@ dependencies = [
]

[[package]]
-
name = "curve25519-dalek"
-
version = "3.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61"
-
dependencies = [
-
 "byteorder",
-
 "digest 0.9.0",
-
 "rand_core 0.5.1",
-
 "subtle",
-
 "zeroize",
-
]
-

-
[[package]]
name = "cypheraddr"
-
version = "0.2.0"
+
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "41a05c461a9b86ba80542a5204924fd3cae3f47be011e00b1bbef9d71d95b3bb"
+
checksum = "e64c60d980ec55006d2a1229923a5fa73046de824455569cccb6cb2e4a64ae31"
dependencies = [
 "amplify",
 "base32",
@@ -436,27 +470,26 @@ dependencies = [

[[package]]
name = "cyphernet"
-
version = "0.2.0"
+
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "5c4cd4c5d6937b81f3df6bb26fe94b4d1c52dd2cfd85507d063d9892cd64448d"
+
checksum = "2f8be7cc6e24cfea2c126bddaaddfd3c3054865b4cd52882eae9dfea6ee8aac1"
dependencies = [
 "cypheraddr",
 "cyphergraphy",
-
 "eidolon-auth",
 "socks5-client",
]

[[package]]
name = "data-encoding"
-
version = "2.4.0"
+
version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
+
checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"

[[package]]
name = "data-encoding-macro"
-
version = "0.1.13"
+
version = "0.1.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "c904b33cc60130e1aeea4956ab803d08a3f4a0ca82d64ed757afac3891f2bb99"
+
checksum = "20c01c06f5f429efdf2bae21eb67c28b3df3cf85b7dd2d8ef09c0838dac5d33e"
dependencies = [
 "data-encoding",
 "data-encoding-macro-internal",
@@ -464,9 +497,9 @@ dependencies = [

[[package]]
name = "data-encoding-macro-internal"
-
version = "0.1.11"
+
version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "8fdf3fce3ce863539ec1d7fd1b6dcc3c645663376b43ed376bbf887733e4f772"
+
checksum = "0047d07f2c89b17dd631c80450d69841a6b5d7fb17278cbc43d7e4cfcf2576f3"
dependencies = [
 "data-encoding",
 "syn 1.0.109",
@@ -474,12 +507,11 @@ dependencies = [

[[package]]
name = "der"
-
version = "0.6.1"
+
version = "0.7.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de"
+
checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
dependencies = [
 "const-oid",
-
 "pem-rfc7468",
 "zeroize",
]

@@ -496,20 +528,11 @@ dependencies = [

[[package]]
name = "digest"
-
version = "0.9.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-
dependencies = [
-
 "generic-array",
-
]
-

-
[[package]]
-
name = "digest"
version = "0.10.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
dependencies = [
-
 "block-buffer 0.10.4",
+
 "block-buffer",
 "const-oid",
 "crypto-common",
 "subtle",
@@ -523,9 +546,9 @@ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"

[[package]]
name = "dyn-clone"
-
version = "1.0.12"
+
version = "1.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "304e6508efa593091e97a9abbc10f90aa7ca635b6d2784feff3c89d41dd12272"
+
checksum = "545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d"

[[package]]
name = "ec25519"
@@ -535,19 +558,21 @@ checksum = "bdfd533a2fc01178c738c99412ae1f7e1ad2cb37c2e14bfd87e9d4618171c825"
dependencies = [
 "ct-codecs",
 "ed25519",
-
 "getrandom 0.2.10",
+
 "getrandom",
]

[[package]]
name = "ecdsa"
-
version = "0.14.8"
+
version = "0.16.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
+
checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
dependencies = [
 "der",
+
 "digest",
 "elliptic-curve",
 "rfc6979",
-
 "signature",
+
 "signature 2.2.0",
+
 "spki",
]

[[package]]
@@ -556,31 +581,7 @@ version = "1.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7"
dependencies = [
-
 "signature",
-
]
-

-
[[package]]
-
name = "ed25519-dalek"
-
version = "1.0.1"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d"
-
dependencies = [
-
 "curve25519-dalek",
-
 "ed25519",
-
 "rand 0.7.3",
-
 "serde",
-
 "sha2 0.9.9",
-
 "zeroize",
-
]
-

-
[[package]]
-
name = "eidolon-auth"
-
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "4a764411b1ee8bcacb5203d24e9f0b2d192be62b23ea1c16d0e3462e103f3ffc"
-
dependencies = [
-
 "amplify",
-
 "cyphergraphy",
+
 "signature 1.6.4",
]

[[package]]
@@ -591,18 +592,18 @@ checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"

[[package]]
name = "elliptic-curve"
-
version = "0.12.3"
+
version = "0.13.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
+
checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
dependencies = [
 "base16ct",
 "crypto-bigint",
-
 "der",
-
 "digest 0.10.7",
+
 "digest",
 "ff",
 "generic-array",
 "group",
-
 "rand_core 0.6.4",
+
 "pkcs8",
+
 "rand_core",
 "sec1",
 "subtle",
 "zeroize",
@@ -622,7 +623,7 @@ checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
dependencies = [
 "errno-dragonfly",
 "libc",
-
 "windows-sys",
+
 "windows-sys 0.48.0",
]

[[package]]
@@ -647,26 +648,17 @@ dependencies = [

[[package]]
name = "fastrand"
-
version = "1.9.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-
dependencies = [
-
 "instant",
-
]
-

-
[[package]]
-
name = "fastrand"
version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"

[[package]]
name = "ff"
-
version = "0.12.1"
+
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160"
+
checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
dependencies = [
-
 "rand_core 0.6.4",
+
 "rand_core",
 "subtle",
]

@@ -679,7 +671,7 @@ dependencies = [
 "cfg-if",
 "libc",
 "redox_syscall 0.2.16",
-
 "windows-sys",
+
 "windows-sys 0.48.0",
]

[[package]]
@@ -721,6 +713,7 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
dependencies = [
 "typenum",
 "version_check",
+
 "zeroize",
]

[[package]]
@@ -735,24 +728,23 @@ dependencies = [

[[package]]
name = "getrandom"
-
version = "0.1.16"
+
version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+
checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
dependencies = [
 "cfg-if",
 "libc",
-
 "wasi 0.9.0+wasi-snapshot-preview1",
+
 "wasi 0.11.0+wasi-snapshot-preview1",
]

[[package]]
-
name = "getrandom"
-
version = "0.2.10"
+
name = "ghash"
+
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+
checksum = "d930750de5717d2dd0b8c0d42c076c0e884c81a73e6cab859bbd2339c71e3e40"
dependencies = [
-
 "cfg-if",
-
 "libc",
-
 "wasi 0.11.0+wasi-snapshot-preview1",
+
 "opaque-debug",
+
 "polyval",
]

[[package]]
@@ -789,11 +781,11 @@ dependencies = [

[[package]]
name = "git2"
-
version = "0.17.2"
+
version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "7b989d6a7ca95a362cf2cfc5ad688b3a467be1f87e480b8dad07fee8c79b0044"
+
checksum = "fbf97ba92db08df386e10c8ede66a2a0369bd277090afd8710e19e38de9ec0cd"
dependencies = [
-
 "bitflags 1.3.2",
+
 "bitflags 2.4.1",
 "libc",
 "libgit2-sys",
 "log",
@@ -802,12 +794,12 @@ dependencies = [

[[package]]
name = "group"
-
version = "0.12.1"
+
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
+
checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
dependencies = [
 "ff",
-
 "rand_core 0.6.4",
+
 "rand_core",
 "subtle",
]

@@ -819,9 +811,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"

[[package]]
name = "hashbrown"
-
version = "0.14.0"
+
version = "0.14.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
+
checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"

[[package]]
name = "heck"
@@ -835,7 +827,7 @@ version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
dependencies = [
-
 "digest 0.10.7",
+
 "digest",
]

[[package]]
@@ -883,12 +875,12 @@ dependencies = [

[[package]]
name = "indexmap"
-
version = "2.0.0"
+
version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
+
checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
dependencies = [
 "equivalent",
-
 "hashbrown 0.14.0",
+
 "hashbrown 0.14.3",
]

[[package]]
@@ -903,6 +895,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
dependencies = [
+
 "block-padding",
 "generic-array",
]

@@ -924,15 +917,6 @@ dependencies = [
]

[[package]]
-
name = "instant"
-
version = "0.1.12"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-
dependencies = [
-
 "cfg-if",
-
]
-

-
[[package]]
name = "isolang"
version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -952,9 +936,9 @@ dependencies = [

[[package]]
name = "itoa"
-
version = "1.0.9"
+
version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+
checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"

[[package]]
name = "jobserver"
@@ -1029,9 +1013,9 @@ checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"

[[package]]
name = "libgit2-sys"
-
version = "0.15.2+1.6.4"
+
version = "0.16.1+1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "a80df2e11fb4a61f4ba2ab42dbe7f74468da143f1a75c74e11dee7c813f694fa"
+
checksum = "f2a2bb3680b094add03bb3732ec520ece34da31a8cd2d633d1389d0f0fb60d0c"
dependencies = [
 "cc",
 "libc",
@@ -1041,9 +1025,9 @@ dependencies = [

[[package]]
name = "libm"
-
version = "0.2.7"
+
version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4"
+
checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"

[[package]]
name = "libz-sys"
@@ -1136,7 +1120,7 @@ dependencies = [
 "libc",
 "log",
 "wasi 0.11.0+wasi-snapshot-preview1",
-
 "windows-sys",
+
 "windows-sys 0.48.0",
]

[[package]]
@@ -1208,7 +1192,7 @@ dependencies = [
 "num-integer",
 "num-iter",
 "num-traits",
-
 "rand 0.8.5",
+
 "rand",
 "smallvec",
 "zeroize",
]
@@ -1298,29 +1282,45 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177"
dependencies = [
 "libc",
-
 "windows-sys",
+
 "windows-sys 0.48.0",
]

[[package]]
name = "p256"
-
version = "0.11.1"
+
version = "0.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594"
+
checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
dependencies = [
 "ecdsa",
 "elliptic-curve",
-
 "sha2 0.10.7",
+
 "primeorder",
+
 "sha2",
]

[[package]]
name = "p384"
-
version = "0.11.2"
+
version = "0.13.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209"
+
dependencies = [
+
 "ecdsa",
+
 "elliptic-curve",
+
 "primeorder",
+
 "sha2",
+
]
+

+
[[package]]
+
name = "p521"
+
version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa"
+
checksum = "0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2"
dependencies = [
+
 "base16ct",
 "ecdsa",
 "elliptic-curve",
-
 "sha2 0.10.7",
+
 "primeorder",
+
 "rand_core",
+
 "sha2",
]

[[package]]
@@ -1343,7 +1343,7 @@ dependencies = [
 "libc",
 "redox_syscall 0.3.5",
 "smallvec",
-
 "windows-targets",
+
 "windows-targets 0.48.1",
]

[[package]]
@@ -1354,18 +1354,18 @@ checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"

[[package]]
name = "pbkdf2"
-
version = "0.11.0"
+
version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917"
+
checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2"
dependencies = [
-
 "digest 0.10.7",
+
 "digest",
]

[[package]]
name = "pem-rfc7468"
-
version = "0.6.0"
+
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac"
+
checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
dependencies = [
 "base64ct",
]
@@ -1406,21 +1406,20 @@ dependencies = [

[[package]]
name = "pkcs1"
-
version = "0.4.1"
+
version = "0.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "eff33bdbdfc54cc98a2eca766ebdec3e1b8fb7387523d5c9c9a2891da856f719"
+
checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
dependencies = [
 "der",
 "pkcs8",
 "spki",
-
 "zeroize",
]

[[package]]
name = "pkcs8"
-
version = "0.9.0"
+
version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba"
+
checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
dependencies = [
 "der",
 "spki",
@@ -1433,12 +1432,44 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"

[[package]]
+
name = "poly1305"
+
version = "0.8.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf"
+
dependencies = [
+
 "cpufeatures",
+
 "opaque-debug",
+
 "universal-hash",
+
]
+

+
[[package]]
+
name = "polyval"
+
version = "0.6.1"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "d52cff9d1d4dee5fe6d03729099f4a310a41179e0a10dbf542039873f2e826fb"
+
dependencies = [
+
 "cfg-if",
+
 "cpufeatures",
+
 "opaque-debug",
+
 "universal-hash",
+
]
+

+
[[package]]
name = "ppv-lite86"
version = "0.2.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"

[[package]]
+
name = "primeorder"
+
version = "0.13.6"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
+
dependencies = [
+
 "elliptic-curve",
+
]
+

+
[[package]]
name = "proc-macro-error"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1483,13 +1514,12 @@ dependencies = [
[[package]]
name = "radicle"
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "b56a9f71126b44b3768009f40a4c3f1f75325e7d2eb8ba95c5432ff844df6af3"
+
source = "git+https://github.com/radicle-dev/heartwood#59f506dbb5591d3fe68e638038495730c455d72a"
dependencies = [
 "amplify",
 "crossbeam-channel",
 "cyphernet",
-
 "fastrand 1.9.0",
+
 "fastrand",
 "git2",
 "localtime",
 "log",
@@ -1512,13 +1542,13 @@ dependencies = [
[[package]]
name = "radicle-cob"
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "cf0ce7bd1c9f962813b0319faabfa19deae4dccac98154be050bfa21a1e121b6"
+
source = "git+https://github.com/radicle-dev/heartwood#59f506dbb5591d3fe68e638038495730c455d72a"
dependencies = [
-
 "fastrand 1.9.0",
+
 "fastrand",
 "git2",
 "log",
 "nonempty 0.8.1",
+
 "once_cell",
 "radicle-crypto",
 "radicle-dag",
 "radicle-git-ext",
@@ -1530,8 +1560,7 @@ dependencies = [
[[package]]
name = "radicle-crypto"
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "cc9f1a3bc7e5e27099a8c9a2306dc8286c34c7db4ab0dfabf88e1b0d04d56a03"
+
source = "git+https://github.com/radicle-dev/heartwood#59f506dbb5591d3fe68e638038495730c455d72a"
dependencies = [
 "amplify",
 "cyphernet",
@@ -1549,17 +1578,16 @@ dependencies = [
[[package]]
name = "radicle-dag"
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "cf2f9da8f20e47901022d5a58c0ed1953d0b1dcdfbbb1ac8eee28b93d888a258"
+
source = "git+https://github.com/radicle-dev/heartwood#59f506dbb5591d3fe68e638038495730c455d72a"
dependencies = [
-
 "fastrand 1.9.0",
+
 "fastrand",
]

[[package]]
name = "radicle-git-ext"
-
version = "0.6.0"
+
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "90bc5efea239afa1fb374923be50c3a5f98cec92d53b5fa55bdf57ac76b16433"
+
checksum = "7ba40f0288f73b9464c0f52c09261593777ed6f195ef3be6a12d8f8e920d7885"
dependencies = [
 "git-ref-format",
 "git2",
@@ -1572,8 +1600,7 @@ dependencies = [
[[package]]
name = "radicle-ssh"
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "c4636c5c5d0610143ffbcf26008cdc1b7149644116acceadec62b749f8cebaaf"
+
source = "git+https://github.com/radicle-dev/heartwood#59f506dbb5591d3fe68e638038495730c455d72a"
dependencies = [
 "byteorder",
 "log",
@@ -1589,9 +1616,9 @@ checksum = "db20136bbc9ae63f3fec8e5a6c369f4902fac2244501b5dfc6d668e43475aaa4"

[[package]]
name = "radicle-surf"
-
version = "0.14.0"
+
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "b801a32980495a643bd380cc88f2074cf978862efbc8c085d5bd9f3be4caafd6"
+
checksum = "9403736ddf2be5e7de42928f94a5f68ef0785916171d009809d19b4202b58d83"
dependencies = [
 "anyhow",
 "base64",
@@ -1608,17 +1635,17 @@ dependencies = [
[[package]]
name = "radicle-term"
version = "0.1.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "820fb6595467096019b19b10b0469b1b09d0acbe908a230bab8af7d381151fe7"
+
source = "git+https://github.com/radicle-dev/heartwood#59f506dbb5591d3fe68e638038495730c455d72a"
dependencies = [
 "anstyle-query",
 "anyhow",
+
 "git2",
 "inquire",
 "libc",
 "once_cell",
 "termion 2.0.1",
+
 "unicode-display-width",
 "unicode-segmentation",
-
 "unicode-width",
 "zeroize",
]

@@ -1627,6 +1654,7 @@ name = "radicle-tui"
version = "0.1.0"
dependencies = [
 "anyhow",
+
 "inquire",
 "lexopt",
 "log",
 "radicle",
@@ -1642,35 +1670,12 @@ dependencies = [

[[package]]
name = "rand"
-
version = "0.7.3"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-
dependencies = [
-
 "getrandom 0.1.16",
-
 "libc",
-
 "rand_chacha 0.2.2",
-
 "rand_core 0.5.1",
-
 "rand_hc",
-
]
-

-
[[package]]
-
name = "rand"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
dependencies = [
-
 "rand_chacha 0.3.1",
-
 "rand_core 0.6.4",
-
]
-

-
[[package]]
-
name = "rand_chacha"
-
version = "0.2.2"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-
dependencies = [
-
 "ppv-lite86",
-
 "rand_core 0.5.1",
+
 "rand_chacha",
+
 "rand_core",
]

[[package]]
@@ -1680,16 +1685,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
dependencies = [
 "ppv-lite86",
-
 "rand_core 0.6.4",
-
]
-

-
[[package]]
-
name = "rand_core"
-
version = "0.5.1"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-
dependencies = [
-
 "getrandom 0.1.16",
+
 "rand_core",
]

[[package]]
@@ -1698,16 +1694,7 @@ version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
dependencies = [
-
 "getrandom 0.2.10",
-
]
-

-
[[package]]
-
name = "rand_hc"
-
version = "0.2.0"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-
dependencies = [
-
 "rand_core 0.5.1",
+
 "getrandom",
]

[[package]]
@@ -1791,32 +1778,31 @@ checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"

[[package]]
name = "rfc6979"
-
version = "0.3.1"
+
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb"
+
checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
dependencies = [
-
 "crypto-bigint",
 "hmac",
-
 "zeroize",
+
 "subtle",
]

[[package]]
name = "rsa"
-
version = "0.7.2"
+
version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "094052d5470cbcef561cb848a7209968c9f12dfa6d668f4bca048ac5de51099c"
+
checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
dependencies = [
-
 "byteorder",
-
 "digest 0.10.7",
+
 "const-oid",
+
 "digest",
 "num-bigint-dig",
 "num-integer",
-
 "num-iter",
 "num-traits",
 "pkcs1",
 "pkcs8",
-
 "rand_core 0.6.4",
-
 "signature",
-
 "smallvec",
+
 "rand_core",
+
 "sha2",
+
 "signature 2.2.0",
+
 "spki",
 "subtle",
 "zeroize",
]
@@ -1831,7 +1817,7 @@ dependencies = [
 "errno",
 "libc",
 "linux-raw-sys",
-
 "windows-sys",
+
 "windows-sys 0.48.0",
]

[[package]]
@@ -1842,9 +1828,9 @@ checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"

[[package]]
name = "ryu"
-
version = "1.0.15"
+
version = "1.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+
checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"

[[package]]
name = "scopeguard"
@@ -1854,9 +1840,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"

[[package]]
name = "sec1"
-
version = "0.3.0"
+
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
+
checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
dependencies = [
 "base16ct",
 "der",
@@ -1888,11 +1874,11 @@ dependencies = [

[[package]]
name = "serde_json"
-
version = "1.0.104"
+
version = "1.0.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c"
+
checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
dependencies = [
-
 "indexmap 2.0.0",
+
 "indexmap 2.1.0",
 "itoa",
 "ryu",
 "serde",
@@ -1900,26 +1886,13 @@ dependencies = [

[[package]]
name = "sha2"
-
version = "0.9.9"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800"
-
dependencies = [
-
 "block-buffer 0.9.0",
-
 "cfg-if",
-
 "cpufeatures",
-
 "digest 0.9.0",
-
 "opaque-debug",
-
]
-

-
[[package]]
-
name = "sha2"
-
version = "0.10.7"
+
version = "0.10.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
+
checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
dependencies = [
 "cfg-if",
 "cpufeatures",
-
 "digest 0.10.7",
+
 "digest",
]

[[package]]
@@ -1928,7 +1901,7 @@ version = "0.10.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60"
dependencies = [
-
 "digest 0.10.7",
+
 "digest",
 "keccak",
]

@@ -1967,9 +1940,15 @@ name = "signature"
version = "1.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
+

+
[[package]]
+
name = "signature"
+
version = "2.2.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
dependencies = [
-
 "digest 0.10.7",
-
 "rand_core 0.6.4",
+
 "digest",
+
 "rand_core",
]

[[package]]
@@ -2003,9 +1982,9 @@ checksum = "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043"

[[package]]
name = "socks5-client"
-
version = "0.2.0"
+
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "4091196d57cf9436ebecbec4c572b2be61373a7aaa632a3e93a5cb8555ec1b79"
+
checksum = "c0c27f4545b26cb6e14990e7477c38a8b493b2e8738166fa2a1f5f174ef3fa5f"
dependencies = [
 "amplify",
 "cypheraddr",
@@ -2019,9 +1998,9 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"

[[package]]
name = "spki"
-
version = "0.6.0"
+
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b"
+
checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
dependencies = [
 "base64ct",
 "der",
@@ -2029,9 +2008,9 @@ dependencies = [

[[package]]
name = "sqlite"
-
version = "0.31.0"
+
version = "0.32.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "f3ddda64c469a257a3b31298805427784d992c226c94b81003f96e8b122286ad"
+
checksum = "03801c10193857d6a4a71ec46cee198a15cbc659622aabe1db0d0bdbefbcf8e6"
dependencies = [
 "libc",
 "sqlite3-sys",
@@ -2058,34 +2037,51 @@ dependencies = [
]

[[package]]
+
name = "ssh-cipher"
+
version = "0.2.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "caac132742f0d33c3af65bfcde7f6aa8f62f0e991d80db99149eb9d44708784f"
+
dependencies = [
+
 "aes",
+
 "aes-gcm",
+
 "cbc",
+
 "chacha20",
+
 "cipher",
+
 "ctr",
+
 "poly1305",
+
 "ssh-encoding",
+
 "subtle",
+
]
+

+
[[package]]
name = "ssh-encoding"
-
version = "0.1.0"
+
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "19cfdc32e0199062113edf41f344fbf784b8205a94600233c84eb838f45191e1"
+
checksum = "eb9242b9ef4108a78e8cd1a2c98e193ef372437f8c22be363075233321dd4a15"
dependencies = [
 "base64ct",
 "pem-rfc7468",
-
 "sha2 0.10.7",
+
 "sha2",
]

[[package]]
name = "ssh-key"
-
version = "0.5.1"
+
version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "288d8f5562af5a3be4bda308dd374b2c807b940ac370b5efa1c99311da91d9a1"
+
checksum = "c51901eb883a5b442b506a1f8fa483d143f3bab513fe721e398ec56c77624feb"
dependencies = [
-
 "aes",
 "bcrypt-pbkdf",
-
 "ctr",
-
 "ed25519-dalek",
 "p256",
 "p384",
-
 "rand_core 0.6.4",
+
 "p521",
+
 "rand_core",
 "rsa",
 "sec1",
-
 "sha2 0.10.7",
-
 "signature",
+
 "sha2",
+
 "signature 2.2.0",
+
 "ssh-cipher",
 "ssh-encoding",
+
 "subtle",
 "zeroize",
]

@@ -2163,10 +2159,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998"
dependencies = [
 "cfg-if",
-
 "fastrand 2.0.0",
+
 "fastrand",
 "redox_syscall 0.3.5",
 "rustix",
-
 "windows-sys",
+
 "windows-sys 0.48.0",
]

[[package]]
@@ -2369,9 +2365,9 @@ dependencies = [

[[package]]
name = "typenum"
-
version = "1.16.0"
+
version = "1.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
+
checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"

[[package]]
name = "unicode-bidi"
@@ -2380,6 +2376,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"

[[package]]
+
name = "unicode-display-width"
+
version = "0.3.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "9a43273b656140aa2bb8e65351fe87c255f0eca706b2538a9bd4a590a3490bf3"
+
dependencies = [
+
 "unicode-segmentation",
+
]
+

+
[[package]]
name = "unicode-ident"
version = "1.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2413,6 +2418,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"

[[package]]
+
name = "universal-hash"
+
version = "0.5.1"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea"
+
dependencies = [
+
 "crypto-common",
+
 "subtle",
+
]
+

+
[[package]]
name = "url"
version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2437,12 +2452,6 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"

[[package]]
name = "wasi"
-
version = "0.9.0+wasi-snapshot-preview1"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-

-
[[package]]
-
name = "wasi"
version = "0.10.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
@@ -2603,7 +2612,7 @@ version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
dependencies = [
-
 "windows-targets",
+
 "windows-targets 0.48.1",
]

[[package]]
@@ -2612,7 +2621,16 @@ version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
dependencies = [
-
 "windows-targets",
+
 "windows-targets 0.48.1",
+
]
+

+
[[package]]
+
name = "windows-sys"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+
dependencies = [
+
 "windows-targets 0.52.0",
]

[[package]]
@@ -2621,13 +2639,28 @@ version = "0.48.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f"
dependencies = [
-
 "windows_aarch64_gnullvm",
-
 "windows_aarch64_msvc",
-
 "windows_i686_gnu",
-
 "windows_i686_msvc",
-
 "windows_x86_64_gnu",
-
 "windows_x86_64_gnullvm",
-
 "windows_x86_64_msvc",
+
 "windows_aarch64_gnullvm 0.48.0",
+
 "windows_aarch64_msvc 0.48.0",
+
 "windows_i686_gnu 0.48.0",
+
 "windows_i686_msvc 0.48.0",
+
 "windows_x86_64_gnu 0.48.0",
+
 "windows_x86_64_gnullvm 0.48.0",
+
 "windows_x86_64_msvc 0.48.0",
+
]
+

+
[[package]]
+
name = "windows-targets"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+
dependencies = [
+
 "windows_aarch64_gnullvm 0.52.0",
+
 "windows_aarch64_msvc 0.52.0",
+
 "windows_i686_gnu 0.52.0",
+
 "windows_i686_msvc 0.52.0",
+
 "windows_x86_64_gnu 0.52.0",
+
 "windows_x86_64_gnullvm 0.52.0",
+
 "windows_x86_64_msvc 0.52.0",
]

[[package]]
@@ -2637,42 +2670,84 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"

[[package]]
+
name = "windows_aarch64_gnullvm"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+

+
[[package]]
name = "windows_aarch64_msvc"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"

[[package]]
+
name = "windows_aarch64_msvc"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+

+
[[package]]
name = "windows_i686_gnu"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"

[[package]]
+
name = "windows_i686_gnu"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+

+
[[package]]
name = "windows_i686_msvc"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"

[[package]]
+
name = "windows_i686_msvc"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+

+
[[package]]
name = "windows_x86_64_gnu"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"

[[package]]
+
name = "windows_x86_64_gnu"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+

+
[[package]]
name = "windows_x86_64_gnullvm"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"

[[package]]
+
name = "windows_x86_64_gnullvm"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+

+
[[package]]
name = "windows_x86_64_msvc"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"

[[package]]
+
name = "windows_x86_64_msvc"
+
version = "0.52.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+

+
[[package]]
name = "wl-clipboard-rs"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2738,20 +2813,6 @@ checksum = "47430998a7b5d499ccee752b41567bc3afc57e1327dc855b1a2aa44ce29b5fa1"

[[package]]
name = "zeroize"
-
version = "1.6.0"
+
version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9"
-
dependencies = [
-
 "zeroize_derive",
-
]
-

-
[[package]]
-
name = "zeroize_derive"
-
version = "1.4.2"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
-
dependencies = [
-
 "proc-macro2",
-
 "quote",
-
 "syn 2.0.28",
-
]
+
checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
modified Cargo.toml
@@ -16,12 +16,13 @@ path = "src/patch/main.rs"

[dependencies]
anyhow = { version = "1" }
+
inquire = { version = "0.6.2", default-features = false, features = ["termion", "editor"] }
lexopt = { version = "0.2" }
log = { version = "0.4.19" }
simple-logging = { version = "2.0.2" }
-
radicle = { version = "0.2.0" }
-
radicle-term = { version = "0.1.0" }
-
radicle-surf = { version = "0.14.0" }
+
radicle = { git = "https://github.com/radicle-dev/heartwood" }
+
radicle-term = { git = "https://github.com/radicle-dev/heartwood", package = "radicle-term" }
+
radicle-surf = { version = "0.18.0" }
timeago = { version = "0.4.1" }
textwrap = { version = "0.16.0" }
tuirealm = { version = "1.9.0", default-features = false, features = [ "with-termion" ] }
modified src/cob/issue.rs
@@ -29,7 +29,7 @@ pub fn create<G: Signer>(
    assignees: &[Did],
) -> Result<IssueId> {
    let mut issues = Issues::open(repository)?;
-
    let issue = issues.create(title, description.trim(), labels, assignees, signer)?;
+
    let issue = issues.create(title, description.trim(), labels, assignees, [], signer)?;

    Ok(*issue.id())
}
modified src/context.rs
@@ -2,15 +2,19 @@ use radicle_term as term;

use radicle::cob::issue::{Issue, IssueId};
use radicle::cob::patch::{Patch, PatchId};
-
use radicle::crypto::ssh::keystore::MemorySigner;
-
use radicle::prelude::{Id, Project, Signer};
+
use radicle::crypto::ssh::keystore::{Keystore, MemorySigner};
+
use radicle::crypto::Signer;
+
use radicle::prelude::{Id, Project};
use radicle::profile::env::RAD_PASSPHRASE;
+
use radicle::storage::ReadRepository;
use radicle::Profile;

use radicle::storage::git::Repository;
use radicle::storage::ReadStorage;

-
use term::{passphrase, spinner};
+
use term::{passphrase, spinner, Passphrase};
+

+
use inquire::validator;

pub struct Context {
    profile: Profile,
@@ -24,17 +28,13 @@ pub struct Context {

impl Context {
    pub fn new(id: Id) -> Result<Self, anyhow::Error> {
-
        use anyhow::Context;
-
        
        let profile = profile()?;
        let signer = signer(&profile)?;
-
        let payload = &profile
-
            .storage
-
            .get(signer.public_key(), id)?
-
            .context("No project with such `id` exists")?;
-
        let project = payload.project()?;

        let repository = profile.storage.repository(id).unwrap();
+
        let doc = repository.identity_doc()?;
+
        let project = doc.project()?;
+

        let issues = crate::cob::issue::all(&repository).unwrap_or_default();
        let patches = crate::cob::patch::all(&repository).unwrap_or_default();

@@ -94,12 +94,51 @@ fn profile() -> Result<Profile, anyhow::Error> {
    }
}

-
/// Get the signer. First we try getting it from ssh-agent, otherwise we prompt the user.
-
fn signer(profile: &Profile) -> anyhow::Result<Box<dyn Signer>> {
+
/// Validates secret key passphrases.
+
#[derive(Clone)]
+
pub struct PassphraseValidator {
+
    keystore: Keystore,
+
}
+

+
impl PassphraseValidator {
+
    /// Create a new validator.
+
    pub fn new(keystore: Keystore) -> Self {
+
        Self { keystore }
+
    }
+
}
+

+
impl inquire::validator::StringValidator for PassphraseValidator {
+
    fn validate(
+
        &self,
+
        input: &str,
+
    ) -> Result<validator::Validation, inquire::error::CustomUserError> {
+
        let passphrase = Passphrase::from(input.to_owned());
+
        if self.keystore.is_valid_passphrase(&passphrase)? {
+
            Ok(validator::Validation::Valid)
+
        } else {
+
            Ok(validator::Validation::Invalid(
+
                validator::ErrorMessage::from("Invalid passphrase, please try again"),
+
            ))
+
        }
+
    }
+
}
+

+
/// Get the signer. First we try getting it from ssh-agent, otherwise we prompt the user,
+
/// if we're connected to a TTY.
+
pub fn signer(profile: &Profile) -> anyhow::Result<Box<dyn Signer>> {
    if let Ok(signer) = profile.signer() {
        return Ok(signer);
    }
-
    let passphrase = passphrase(RAD_PASSPHRASE)?;
+
    let validator = PassphraseValidator::new(profile.keystore.clone());
+
    let passphrase = match passphrase(validator) {
+
        Ok(p) => p,
+
        Err(inquire::InquireError::NotTTY) => {
+
            return Err(anyhow::anyhow!(
+
                "running in non-interactive mode, please set `{RAD_PASSPHRASE}` to unseal your key",
+
            ));
+
        }
+
        Err(e) => return Err(e.into()),
+
    };
    let spinner = spinner("Unsealing key...");
    let signer = MemorySigner::load(&profile.keystore, Some(passphrase))?;

modified src/ui/cob.rs
@@ -227,7 +227,7 @@ impl From<(&Profile, &Repository, IssueId, Issue)> for IssueItem {
            },
            labels: issue.labels().cloned().collect(),
            assignees: issue
-
                .assigned()
+
                .assignees()
                .map(|did| AuthorItem {
                    did: *did,
                    is_you: *did == profile.did(),