From e5c95f0113e97366a3c40271f9565ead85c3c00e Mon Sep 17 00:00:00 2001 From: Drew De Ponte Date: Mon, 12 Feb 2024 21:29:19 -0500 Subject: [PATCH] Remove password store & clean lint warnings Remove password store as we no longer need it since we aren't collecting the credentials for ssh signing anymore. I also cleaned up a bunch of lint warnings that were largely caused by poor code organization. I also removed a couple dependencies that are no longer needed since the shift of the ssh signing to an external command. --- Cargo.lock | 938 +----------------- Cargo.toml | 2 - .../config/{ => branch}/branch_config_dto.rs | 2 +- src/ps/private/config/branch/mod.rs | 3 + src/ps/private/config/config_dto.rs | 12 +- .../config/{ => fetch}/fetch_config_dto.rs | 2 +- src/ps/private/config/fetch/mod.rs | 3 + src/ps/private/config/get_config.rs | 12 +- .../{ => integrate}/integrate_config_dto.rs | 2 +- src/ps/private/config/integrate/mod.rs | 3 + .../config/{ => list}/list_config_dto.rs | 2 +- src/ps/private/config/list/mod.rs | 3 + src/ps/private/config/mod.rs | 17 +- src/ps/private/config/ps_config.rs | 2 +- src/ps/private/config/pull/mod.rs | 3 + .../config/{ => pull}/pull_config_dto.rs | 2 +- src/ps/private/config/read_config.rs | 2 +- src/ps/private/config/request_review/mod.rs | 3 + .../request_review_config_dto.rs | 2 +- src/ps/private/git.rs | 14 +- .../git/{ => config}/config_get_bool.rs | 3 +- .../git/{ => config}/config_get_error.rs | 0 .../git/{ => config}/config_get_string.rs | 3 +- .../git/{ => config}/config_get_to_option.rs | 0 src/ps/private/git/config/mod.rs | 9 + src/ps/private/git/create_commit.rs | 4 +- src/ps/private/git/signers/signer_error.rs | 8 - src/ps/private/mod.rs | 1 - src/ps/private/password_store.rs | 82 -- src/ps/private/utils/mod.rs | 2 +- src/ps/public/list.rs | 2 +- 31 files changed, 68 insertions(+), 1075 deletions(-) rename src/ps/private/config/{ => branch}/branch_config_dto.rs (94%) create mode 100644 src/ps/private/config/branch/mod.rs rename src/ps/private/config/{ => fetch}/fetch_config_dto.rs (94%) create mode 100644 src/ps/private/config/fetch/mod.rs rename src/ps/private/config/{ => integrate}/integrate_config_dto.rs (95%) create mode 100644 src/ps/private/config/integrate/mod.rs rename src/ps/private/config/{ => list}/list_config_dto.rs (98%) create mode 100644 src/ps/private/config/list/mod.rs create mode 100644 src/ps/private/config/pull/mod.rs rename src/ps/private/config/{ => pull}/pull_config_dto.rs (93%) create mode 100644 src/ps/private/config/request_review/mod.rs rename src/ps/private/config/{ => request_review}/request_review_config_dto.rs (93%) rename src/ps/private/git/{ => config}/config_get_bool.rs (65%) rename src/ps/private/git/{ => config}/config_get_error.rs (100%) rename src/ps/private/git/{ => config}/config_get_string.rs (62%) rename src/ps/private/git/{ => config}/config_get_to_option.rs (100%) create mode 100644 src/ps/private/git/config/mod.rs delete mode 100644 src/ps/private/password_store.rs diff --git a/Cargo.lock b/Cargo.lock index afa7f04..2dbd4be 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8,18 +8,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "aes" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", - "opaque-debug", -] - [[package]] name = "aho-corasick" version = "1.1.2" @@ -102,151 +90,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "async-broadcast" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" -dependencies = [ - "event-listener 2.5.3", - "futures-core", -] - -[[package]] -name = "async-channel" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" -dependencies = [ - "concurrent-queue", - "event-listener 2.5.3", - "futures-core", -] - -[[package]] -name = "async-executor" -version = "1.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c1da3ae8dabd9c00f453a329dfe1fb28da3c0a72e2478cdcd93171740c20499" -dependencies = [ - "async-lock", - "async-task", - "concurrent-queue", - "fastrand 2.0.1", - "futures-lite", - "slab", -] - -[[package]] -name = "async-fs" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" -dependencies = [ - "async-lock", - "autocfg", - "blocking", - "futures-lite", -] - -[[package]] -name = "async-io" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" -dependencies = [ - "async-lock", - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-lite", - "log", - "parking", - "polling", - "rustix 0.37.25", - "slab", - "socket2", - "waker-fn", -] - -[[package]] -name = "async-lock" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" -dependencies = [ - "event-listener 2.5.3", -] - -[[package]] -name = "async-process" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88" -dependencies = [ - "async-io", - "async-lock", - "async-signal", - "blocking", - "cfg-if", - "event-listener 3.0.0", - "futures-lite", - "rustix 0.38.28", - "windows-sys 0.48.0", -] - -[[package]] -name = "async-recursion" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.47", -] - -[[package]] -name = "async-signal" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2a5415b7abcdc9cd7d63d6badba5288b2ca017e3fbd4173b8f405449f1a2399" -dependencies = [ - "async-io", - "async-lock", - "atomic-waker", - "cfg-if", - "futures-core", - "futures-io", - "rustix 0.38.28", - "signal-hook-registry", - "slab", - "windows-sys 0.48.0", -] - -[[package]] -name = "async-task" -version = "4.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9441c6b2fe128a7c2bf680a44c34d0df31ce09e5b7e401fcca3faa483dbc921" - -[[package]] -name = "async-trait" -version = "0.1.73" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.47", -] - -[[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - [[package]] name = "autocfg" version = "1.1.0" @@ -271,59 +114,12 @@ version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-modes" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cb03d1bed155d89dce0f845b7899b18a9a163e148fd004e1c28421a783e2d8e" -dependencies = [ - "block-padding", - "cipher", -] - -[[package]] -name = "block-padding" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" - -[[package]] -name = "blocking" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a" -dependencies = [ - "async-channel", - "async-lock", - "async-task", - "fastrand 2.0.1", - "futures-io", - "futures-lite", - "piper", - "tracing", -] - [[package]] name = "bumpalo" version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - [[package]] name = "cc" version = "1.0.83" @@ -353,15 +149,6 @@ dependencies = [ "windows-targets 0.48.5", ] -[[package]] -name = "cipher" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" -dependencies = [ - "generic-array", -] - [[package]] name = "clap" version = "4.4.12" @@ -427,40 +214,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" -[[package]] -name = "concurrent-queue" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "core-foundation" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "core-foundation-sys" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" -[[package]] -name = "cpufeatures" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0" -dependencies = [ - "libc", -] - [[package]] name = "crc32fast" version = "1.3.2" @@ -470,68 +229,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "crossbeam-utils" -version = "0.8.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer", - "crypto-common", - "subtle", -] - -[[package]] -name = "enumflags2" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5998b4f30320c9d93aed72f63af821bfdac50465b75428fce77b48ec482c3939" -dependencies = [ - "enumflags2_derive", - "serde", -] - -[[package]] -name = "enumflags2_derive" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.47", -] - [[package]] name = "equivalent" version = "1.0.1" @@ -548,32 +245,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - -[[package]] -name = "event-listener" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29e56284f00d94c1bc7fd3c77027b4623c88c1f53d8d2394c6199f2921dea325" -dependencies = [ - "concurrent-queue", - "parking", - "pin-project-lite", -] - -[[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.1" @@ -647,21 +318,6 @@ version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" -[[package]] -name = "futures-lite" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" -dependencies = [ - "fastrand 1.9.0", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - [[package]] name = "futures-macro" version = "0.3.28" @@ -703,16 +359,6 @@ dependencies = [ "slab", ] -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", -] - [[package]] name = "getrandom" version = "0.2.11" @@ -750,10 +396,8 @@ dependencies = [ "git2", "homedir", "is_executable", - "keyring", "lazy_static", "regex", - "rpassword", "serde", "serde_json", "tempfile", @@ -775,36 +419,6 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" -[[package]] -name = "hermit-abi" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "hkdf" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437" -dependencies = [ - "hmac", -] - -[[package]] -name = "hmac" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" -dependencies = [ - "digest", -] - [[package]] name = "homedir" version = "0.2.1" @@ -862,26 +476,6 @@ dependencies = [ "hashbrown", ] -[[package]] -name = "instant" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "io-lifetimes" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" -dependencies = [ - "hermit-abi", - "libc", - "windows-sys 0.48.0", -] - [[package]] name = "is_executable" version = "1.0.1" @@ -915,20 +509,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "keyring" -version = "2.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9549a129bd08149e0a71b2d1ce2729780d47127991bfd0a78cc1df697ec72492" -dependencies = [ - "byteorder", - "lazy_static", - "linux-keyutils", - "secret-service", - "security-framework", - "winapi", -] - [[package]] name = "lazy_static" version = "1.4.0" @@ -981,22 +561,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "linux-keyutils" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f27bb67f6dd1d0bb5ab582868e4f65052e58da6401188a08f0da09cf512b84b" -dependencies = [ - "bitflags 1.3.2", - "libc", -] - -[[package]] -name = "linux-raw-sys" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" - [[package]] name = "linux-raw-sys" version = "0.4.12" @@ -1046,73 +610,6 @@ dependencies = [ "pin-utils", ] -[[package]] -name = "num" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" -dependencies = [ - "num-bigint", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-complex" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" -dependencies = [ - "autocfg", - "num-bigint", - "num-integer", - "num-traits", -] - [[package]] name = "num-traits" version = "0.2.17" @@ -1123,16 +620,10 @@ dependencies = [ ] [[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "opaque-debug" -version = "0.3.0" +name = "once_cell" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "openssl-probe" @@ -1152,22 +643,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "ordered-stream" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" -dependencies = [ - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "parking" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e52c774a4c39359c1d1c52e43f73dd91a75a614652c825408eec30c95a9b2067" - [[package]] name = "percent-encoding" version = "2.3.1" @@ -1186,55 +661,12 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" -[[package]] -name = "piper" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" -dependencies = [ - "atomic-waker", - "fastrand 2.0.1", - "futures-io", -] - [[package]] name = "pkg-config" version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69d3587f8a9e599cc7ec2c00e331f71c4e69a5f9a4b8a6efd5b07466b9736f9a" -[[package]] -name = "polling" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" -dependencies = [ - "autocfg", - "bitflags 1.3.2", - "cfg-if", - "concurrent-queue", - "libc", - "log", - "pin-project-lite", - "windows-sys 0.48.0", -] - -[[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" - -[[package]] -name = "proc-macro-crate" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" -dependencies = [ - "once_cell", - "toml_edit 0.19.15", -] - [[package]] name = "proc-macro2" version = "1.0.75" @@ -1253,36 +685,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - [[package]] name = "redox_syscall" version = "0.4.1" @@ -1341,41 +743,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316" -[[package]] -name = "rpassword" -version = "7.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80472be3c897911d0137b2d2b9055faf6eeac5b14e324073d83bc17b191d7e3f" -dependencies = [ - "libc", - "rtoolbox", - "windows-sys 0.48.0", -] - -[[package]] -name = "rtoolbox" -version = "0.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c247d24e63230cdb56463ae328478bd5eac8b8faa8c69461a77e8e323afac90e" -dependencies = [ - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "rustix" -version = "0.37.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4eb579851244c2c03e7c24f501c3432bed80b8f720af1d6e5b0e0f01555a035" -dependencies = [ - "bitflags 1.3.2", - "errno", - "io-lifetimes", - "libc", - "linux-raw-sys 0.3.8", - "windows-sys 0.48.0", -] - [[package]] name = "rustix" version = "0.38.28" @@ -1385,7 +752,7 @@ dependencies = [ "bitflags 2.4.1", "errno", "libc", - "linux-raw-sys 0.4.12", + "linux-raw-sys", "windows-sys 0.52.0", ] @@ -1427,48 +794,6 @@ dependencies = [ "untrusted", ] -[[package]] -name = "secret-service" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5da1a5ad4d28c03536f82f77d9f36603f5e37d8869ac98f0a750d5b5686d8d95" -dependencies = [ - "aes", - "block-modes", - "futures-util", - "generic-array", - "hkdf", - "num", - "once_cell", - "rand", - "serde", - "sha2", - "zbus", -] - -[[package]] -name = "security-framework" -version = "2.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "serde" version = "1.0.194" @@ -1500,17 +825,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_repr" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.47", -] - [[package]] name = "serde_spanned" version = "0.6.5" @@ -1520,37 +834,6 @@ dependencies = [ "serde", ] -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "sha2" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "signal-hook-registry" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" -dependencies = [ - "libc", -] - [[package]] name = "slab" version = "0.4.9" @@ -1560,40 +843,18 @@ dependencies = [ "autocfg", ] -[[package]] -name = "socket2" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - [[package]] name = "strsim" version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" -[[package]] -name = "subtle" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" - [[package]] name = "syn" version = "1.0.109" @@ -1623,9 +884,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" dependencies = [ "cfg-if", - "fastrand 2.0.1", + "fastrand", "redox_syscall", - "rustix 0.38.28", + "rustix", "windows-sys 0.52.0", ] @@ -1673,7 +934,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.21.0", + "toml_edit", ] [[package]] @@ -1685,17 +946,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap", - "toml_datetime", - "winnow", -] - [[package]] name = "toml_edit" version = "0.21.0" @@ -1709,54 +959,6 @@ dependencies = [ "winnow", ] -[[package]] -name = "tracing" -version = "0.1.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" -dependencies = [ - "cfg-if", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.47", -] - -[[package]] -name = "tracing-core" -version = "0.1.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" -dependencies = [ - "once_cell", -] - -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - -[[package]] -name = "uds_windows" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce65604324d3cce9b966701489fbd0cf318cb1f7bd9dd07ac9a4ee6fb791930d" -dependencies = [ - "tempfile", - "winapi", -] - [[package]] name = "unicode-bidi" version = "0.3.14" @@ -1839,18 +1041,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29" -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "waker-fn" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -2132,117 +1322,3 @@ dependencies = [ "thiserror", "windows", ] - -[[package]] -name = "xdg-home" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2769203cd13a0c6015d515be729c526d041e9cf2c0cc478d57faee85f40c6dcd" -dependencies = [ - "nix", - "winapi", -] - -[[package]] -name = "zbus" -version = "3.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31de390a2d872e4cd04edd71b425e29853f786dc99317ed72d73d6fcf5ebb948" -dependencies = [ - "async-broadcast", - "async-executor", - "async-fs", - "async-io", - "async-lock", - "async-process", - "async-recursion", - "async-task", - "async-trait", - "blocking", - "byteorder", - "derivative", - "enumflags2", - "event-listener 2.5.3", - "futures-core", - "futures-sink", - "futures-util", - "hex", - "nix", - "once_cell", - "ordered-stream", - "rand", - "serde", - "serde_repr", - "sha1", - "static_assertions", - "tracing", - "uds_windows", - "winapi", - "xdg-home", - "zbus_macros", - "zbus_names", - "zvariant", -] - -[[package]] -name = "zbus_macros" -version = "3.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d1794a946878c0e807f55a397187c11fc7a038ba5d868e7db4f3bd7760bc9d" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "regex", - "syn 1.0.109", - "zvariant_utils", -] - -[[package]] -name = "zbus_names" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb80bb776dbda6e23d705cf0123c3b95df99c4ebeaec6c2599d4a5419902b4a9" -dependencies = [ - "serde", - "static_assertions", - "zvariant", -] - -[[package]] -name = "zvariant" -version = "3.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44b291bee0d960c53170780af148dca5fa260a63cdd24f1962fa82e03e53338c" -dependencies = [ - "byteorder", - "enumflags2", - "libc", - "serde", - "static_assertions", - "zvariant_derive", -] - -[[package]] -name = "zvariant_derive" -version = "3.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "934d7a7dfc310d6ee06c87ffe88ef4eca7d3e37bb251dece2ef93da8f17d8ecd" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 1.0.109", - "zvariant_utils", -] - -[[package]] -name = "zvariant_utils" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] diff --git a/Cargo.toml b/Cargo.toml index 45490fe..7277ae4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,9 +26,7 @@ toml = "0.8.8" ansi_term = { version = "0.12.1", features = ["derive_serde_style"] } ureq = "2.4.0" version-compare = "0.1.0" -rpassword = "7.2.0" clap = { version = "4.4.6", features = ["derive"] } -keyring = "2" tempfile = "3.3.0" [build-dependencies] diff --git a/src/ps/private/config/branch_config_dto.rs b/src/ps/private/config/branch/branch_config_dto.rs similarity index 94% rename from src/ps/private/config/branch_config_dto.rs rename to src/ps/private/config/branch/branch_config_dto.rs index fa5a178..85f606b 100644 --- a/src/ps/private/config/branch_config_dto.rs +++ b/src/ps/private/config/branch/branch_config_dto.rs @@ -1,4 +1,4 @@ -use super::super::utils; +use super::super::super::utils; use serde::Deserialize; use std::option::Option; diff --git a/src/ps/private/config/branch/mod.rs b/src/ps/private/config/branch/mod.rs new file mode 100644 index 0000000..a386662 --- /dev/null +++ b/src/ps/private/config/branch/mod.rs @@ -0,0 +1,3 @@ +mod branch_config_dto; + +pub use branch_config_dto::*; diff --git a/src/ps/private/config/config_dto.rs b/src/ps/private/config/config_dto.rs index 44df07a..33881fd 100644 --- a/src/ps/private/config/config_dto.rs +++ b/src/ps/private/config/config_dto.rs @@ -1,10 +1,10 @@ use super::super::utils; -use super::branch_config_dto::*; -use super::fetch_config_dto::*; -use super::integrate_config_dto::*; -use super::list_config_dto::*; -use super::pull_config_dto::*; -use super::request_review_config_dto::*; +use super::branch::BranchConfigDto; +use super::fetch::FetchConfigDto; +use super::integrate::IntegrateConfigDto; +use super::list::ListConfigDto; +use super::pull::PullConfigDto; +use super::request_review::RequestReviewConfigDto; use serde::Deserialize; #[derive(Debug, Deserialize, Default)] diff --git a/src/ps/private/config/fetch_config_dto.rs b/src/ps/private/config/fetch/fetch_config_dto.rs similarity index 94% rename from src/ps/private/config/fetch_config_dto.rs rename to src/ps/private/config/fetch/fetch_config_dto.rs index e1fb9ff..8e940c5 100644 --- a/src/ps/private/config/fetch_config_dto.rs +++ b/src/ps/private/config/fetch/fetch_config_dto.rs @@ -1,4 +1,4 @@ -use super::super::utils; +use super::super::super::utils; use serde::Deserialize; use std::option::Option; diff --git a/src/ps/private/config/fetch/mod.rs b/src/ps/private/config/fetch/mod.rs new file mode 100644 index 0000000..a7b4e65 --- /dev/null +++ b/src/ps/private/config/fetch/mod.rs @@ -0,0 +1,3 @@ +mod fetch_config_dto; + +pub use fetch_config_dto::*; diff --git a/src/ps/private/config/get_config.rs b/src/ps/private/config/get_config.rs index b147511..e239fa7 100644 --- a/src/ps/private/config/get_config.rs +++ b/src/ps/private/config/get_config.rs @@ -1,17 +1,17 @@ use super::super::paths; use super::super::utils::*; -use super::branch_config_dto::BranchConfigDto; +use super::branch::BranchConfigDto; use super::config_dto::ConfigDto; -use super::fetch_config_dto::FetchConfigDto; -use super::integrate_config_dto::IntegrateConfigDto; -use super::list_config_dto::{ColorWithAlternate, ListConfigDto}; +use super::fetch::FetchConfigDto; +use super::integrate::IntegrateConfigDto; +use super::list::{ColorWithAlternate, ListConfigDto}; use super::ps_config::{ PsBranchConfig, PsConfig, PsFetchConfig, PsIntegrateConfig, PsListConfig, PsPullConfig, PsRequestReviewConfig, }; -use super::pull_config_dto::PullConfigDto; +use super::pull::PullConfigDto; use super::read_config_or_default::*; -use super::request_review_config_dto::RequestReviewConfigDto; +use super::request_review::RequestReviewConfigDto; use ansi_term::Color; #[derive(Debug)] diff --git a/src/ps/private/config/integrate_config_dto.rs b/src/ps/private/config/integrate/integrate_config_dto.rs similarity index 95% rename from src/ps/private/config/integrate_config_dto.rs rename to src/ps/private/config/integrate/integrate_config_dto.rs index 0deee75..aeaff86 100644 --- a/src/ps/private/config/integrate_config_dto.rs +++ b/src/ps/private/config/integrate/integrate_config_dto.rs @@ -1,4 +1,4 @@ -use super::super::utils; +use super::super::super::utils; use serde::Deserialize; use std::option::Option; diff --git a/src/ps/private/config/integrate/mod.rs b/src/ps/private/config/integrate/mod.rs new file mode 100644 index 0000000..cd75593 --- /dev/null +++ b/src/ps/private/config/integrate/mod.rs @@ -0,0 +1,3 @@ +mod integrate_config_dto; + +pub use integrate_config_dto::*; diff --git a/src/ps/private/config/list_config_dto.rs b/src/ps/private/config/list/list_config_dto.rs similarity index 98% rename from src/ps/private/config/list_config_dto.rs rename to src/ps/private/config/list/list_config_dto.rs index 95940ba..3fa19f1 100644 --- a/src/ps/private/config/list_config_dto.rs +++ b/src/ps/private/config/list/list_config_dto.rs @@ -1,4 +1,4 @@ -use super::super::utils; +use super::super::super::utils; use ansi_term::Color; use serde::Deserialize; use std::option::Option; diff --git a/src/ps/private/config/list/mod.rs b/src/ps/private/config/list/mod.rs new file mode 100644 index 0000000..4301ffe --- /dev/null +++ b/src/ps/private/config/list/mod.rs @@ -0,0 +1,3 @@ +mod list_config_dto; + +pub use list_config_dto::*; diff --git a/src/ps/private/config/mod.rs b/src/ps/private/config/mod.rs index 390a50b..94189ca 100644 --- a/src/ps/private/config/mod.rs +++ b/src/ps/private/config/mod.rs @@ -1,18 +1,15 @@ -mod branch_config_dto; +pub mod branch; +pub mod fetch; +pub mod integrate; +pub mod list; +pub mod pull; +pub mod request_review; + mod config_dto; -mod fetch_config_dto; mod get_config; -mod integrate_config_dto; -mod list_config_dto; mod ps_config; -mod pull_config_dto; mod read_config; mod read_config_or_default; -mod request_review_config_dto; -pub use branch_config_dto::*; pub use config_dto::*; pub use get_config::*; -pub use ps_config::*; -pub use request_review_config_dto::*; -pub use list_config_dto::ColorSelector; \ No newline at end of file diff --git a/src/ps/private/config/ps_config.rs b/src/ps/private/config/ps_config.rs index c8c085c..e4b679e 100644 --- a/src/ps/private/config/ps_config.rs +++ b/src/ps/private/config/ps_config.rs @@ -1,4 +1,4 @@ -use super::list_config_dto::ColorWithAlternate; +use super::list::ColorWithAlternate; #[derive(Debug)] pub struct PsConfig { diff --git a/src/ps/private/config/pull/mod.rs b/src/ps/private/config/pull/mod.rs new file mode 100644 index 0000000..22beed5 --- /dev/null +++ b/src/ps/private/config/pull/mod.rs @@ -0,0 +1,3 @@ +mod pull_config_dto; + +pub use pull_config_dto::*; diff --git a/src/ps/private/config/pull_config_dto.rs b/src/ps/private/config/pull/pull_config_dto.rs similarity index 93% rename from src/ps/private/config/pull_config_dto.rs rename to src/ps/private/config/pull/pull_config_dto.rs index fc20b8f..56d2dd9 100644 --- a/src/ps/private/config/pull_config_dto.rs +++ b/src/ps/private/config/pull/pull_config_dto.rs @@ -1,4 +1,4 @@ -use super::super::utils; +use super::super::super::utils; use serde::Deserialize; use std::option::Option; diff --git a/src/ps/private/config/read_config.rs b/src/ps/private/config/read_config.rs index e5e51b3..3a2453a 100644 --- a/src/ps/private/config/read_config.rs +++ b/src/ps/private/config/read_config.rs @@ -1,4 +1,4 @@ -use super::config_dto::*; +use super::ConfigDto; use std::fs; use std::io; use std::path; diff --git a/src/ps/private/config/request_review/mod.rs b/src/ps/private/config/request_review/mod.rs new file mode 100644 index 0000000..b27bb0e --- /dev/null +++ b/src/ps/private/config/request_review/mod.rs @@ -0,0 +1,3 @@ +mod request_review_config_dto; + +pub use request_review_config_dto::*; diff --git a/src/ps/private/config/request_review_config_dto.rs b/src/ps/private/config/request_review/request_review_config_dto.rs similarity index 93% rename from src/ps/private/config/request_review_config_dto.rs rename to src/ps/private/config/request_review/request_review_config_dto.rs index c59f70b..f0f7b7a 100644 --- a/src/ps/private/config/request_review_config_dto.rs +++ b/src/ps/private/config/request_review/request_review_config_dto.rs @@ -1,4 +1,4 @@ -use super::super::utils; +use super::super::super::utils; use serde::Deserialize; use std::option::Option; diff --git a/src/ps/private/git.rs b/src/ps/private/git.rs index 75a4147..efeaa5e 100644 --- a/src/ps/private/git.rs +++ b/src/ps/private/git.rs @@ -31,10 +31,7 @@ mod branch_upstream_name; mod commit_diff; mod commit_diff_patch_id; mod common_ancestor; -mod config_get_bool; -mod config_get_error; -mod config_get_string; -mod config_get_to_option; +pub mod config; mod count_commits; mod create_commit; mod create_cwd_repo; @@ -58,7 +55,7 @@ mod line_to_rebase_todo; #[cfg(feature = "backup_cmd")] mod read_hashed_object; mod rebase_todo; -mod signers; +pub mod signers; mod str_to_rebase_todos; #[cfg(test)] mod test_utils; @@ -68,15 +65,9 @@ pub use branch_upstream_name::*; pub use commit_diff::*; pub use commit_diff_patch_id::*; pub use common_ancestor::*; -pub use config_get_bool::*; -pub use config_get_error::*; -pub use config_get_string::*; -pub use config_get_to_option::*; pub use count_commits::*; pub use create_commit::*; pub use create_cwd_repo::*; -pub use create_signed_commit::*; -pub use create_unsigned_commit::*; pub use ext_delete_remote_branch::*; pub use ext_fetch::*; pub use ext_push::*; @@ -95,6 +86,5 @@ pub use line_to_rebase_todo::*; #[cfg(feature = "backup_cmd")] pub use read_hashed_object::*; pub use rebase_todo::*; -pub use signers::*; pub use str_to_rebase_todos::*; pub use uncommited_changes_exist::*; diff --git a/src/ps/private/git/config_get_bool.rs b/src/ps/private/git/config/config_get_bool.rs similarity index 65% rename from src/ps/private/git/config_get_bool.rs rename to src/ps/private/git/config/config_get_bool.rs index 8cf641f..8fd93b6 100644 --- a/src/ps/private/git/config_get_bool.rs +++ b/src/ps/private/git/config/config_get_bool.rs @@ -1,5 +1,4 @@ -use super::config_get_error::ConfigGetError; -use super::config_get_to_option::config_get_to_option; +use super::{config_get_to_option, ConfigGetError}; use git2; use std::result::Result; diff --git a/src/ps/private/git/config_get_error.rs b/src/ps/private/git/config/config_get_error.rs similarity index 100% rename from src/ps/private/git/config_get_error.rs rename to src/ps/private/git/config/config_get_error.rs diff --git a/src/ps/private/git/config_get_string.rs b/src/ps/private/git/config/config_get_string.rs similarity index 62% rename from src/ps/private/git/config_get_string.rs rename to src/ps/private/git/config/config_get_string.rs index ab32143..88c0b2e 100644 --- a/src/ps/private/git/config_get_string.rs +++ b/src/ps/private/git/config/config_get_string.rs @@ -1,5 +1,4 @@ -use super::config_get_error::ConfigGetError; -use super::config_get_to_option::config_get_to_option; +use super::{config_get_to_option, ConfigGetError}; pub fn config_get_string( config: &git2::Config, diff --git a/src/ps/private/git/config_get_to_option.rs b/src/ps/private/git/config/config_get_to_option.rs similarity index 100% rename from src/ps/private/git/config_get_to_option.rs rename to src/ps/private/git/config/config_get_to_option.rs diff --git a/src/ps/private/git/config/mod.rs b/src/ps/private/git/config/mod.rs new file mode 100644 index 0000000..2995716 --- /dev/null +++ b/src/ps/private/git/config/mod.rs @@ -0,0 +1,9 @@ +mod config_get_bool; +mod config_get_error; +mod config_get_string; +mod config_get_to_option; + +pub use config_get_bool::*; +pub use config_get_error::*; +pub use config_get_string::*; +pub use config_get_to_option::*; diff --git a/src/ps/private/git/create_commit.rs b/src/ps/private/git/create_commit.rs index b959bc7..87f87e4 100644 --- a/src/ps/private/git/create_commit.rs +++ b/src/ps/private/git/create_commit.rs @@ -1,6 +1,4 @@ -use super::config_get_bool::config_get_bool; -use super::config_get_error::ConfigGetError; -use super::config_get_string::config_get_string; +use super::config::{config_get_bool, config_get_string, ConfigGetError}; use super::create_signed_commit::{create_signed_commit, CreateSignedCommitError}; use super::create_unsigned_commit::{create_unsigned_commit, CreateUnsignedCommitError}; use super::signers; diff --git a/src/ps/private/git/signers/signer_error.rs b/src/ps/private/git/signers/signer_error.rs index 7e7c7e0..c6c06fa 100644 --- a/src/ps/private/git/signers/signer_error.rs +++ b/src/ps/private/git/signers/signer_error.rs @@ -1,12 +1,4 @@ -use super::super::super::password_store; - #[derive(Debug)] pub enum SignerError { - KeyParsing(Box), - ReadPassword(std::io::Error), - KeyDecryption(Box), Signing(Box), - SignatureFormatting(Box), - GetPassword(password_store::GetSshKeyPasswordError), - SetPassword(password_store::SetSshKeyPasswordError), } diff --git a/src/ps/private/mod.rs b/src/ps/private/mod.rs index 2301216..94f3794 100644 --- a/src/ps/private/mod.rs +++ b/src/ps/private/mod.rs @@ -5,7 +5,6 @@ pub mod config; pub mod git; pub mod hooks; pub mod list; -pub mod password_store; pub mod paths; pub mod state_computation; pub mod string_file_io; diff --git a/src/ps/private/password_store.rs b/src/ps/private/password_store.rs deleted file mode 100644 index 73ecf61..0000000 --- a/src/ps/private/password_store.rs +++ /dev/null @@ -1,82 +0,0 @@ -use keyring::{Entry, Result}; - -#[derive(Debug)] -pub enum GetSshKeyPasswordError { - Unknown(Box), -} - -const SSH_KEY_PASSWORD_KEYCHAIN_SERVICE: &str = - "com.uptechworks.git-patch-stack.ssh-key.passphrases"; - -impl std::fmt::Display for GetSshKeyPasswordError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - match self { - GetSshKeyPasswordError::Unknown(e) => write!( - f, - "Unknown error attempting to get SSH key password: {:?}", - *e - ), - } - } -} - -impl std::error::Error for GetSshKeyPasswordError { - fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { - match self { - Self::Unknown(e) => Some(e.as_ref()), - } - } -} - -fn keyring_entry(key_path: &str) -> Result { - Entry::new(SSH_KEY_PASSWORD_KEYCHAIN_SERVICE, key_path) -} - -pub fn get_ssh_key_password( - key_path: &str, -) -> std::result::Result, GetSshKeyPasswordError> { - match keyring_entry(key_path) { - Ok(entry) => match entry.get_password() { - Ok(v) => Ok(Some(v)), - Err(keyring::Error::NoEntry) => Ok(None), - Err(e) => Err(GetSshKeyPasswordError::Unknown(e.into())), - }, - Err(keyring::error::Error::NoEntry) => Ok(None), - Err(e) => Err(GetSshKeyPasswordError::Unknown(e.into())), - } -} - -#[derive(Debug)] -pub enum SetSshKeyPasswordError { - Unknown(Box), -} - -impl std::fmt::Display for SetSshKeyPasswordError { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - match self { - SetSshKeyPasswordError::Unknown(e) => { - write!(f, "Unknown error setting an SSH key password: {:?}", *e) - } - } - } -} - -impl std::error::Error for SetSshKeyPasswordError { - fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { - match self { - Self::Unknown(e) => Some(e.as_ref()), - } - } -} - -pub fn set_ssh_key_password( - key_path: &str, - password: &str, -) -> std::result::Result<(), SetSshKeyPasswordError> { - match keyring_entry(key_path) { - Ok(entry) => entry - .set_password(password) - .map_err(|e| SetSshKeyPasswordError::Unknown(e.into())), - Err(e) => Err(SetSshKeyPasswordError::Unknown(e.into())), - } -} diff --git a/src/ps/private/utils/mod.rs b/src/ps/private/utils/mod.rs index 1cdb237..d495f7a 100644 --- a/src/ps/private/utils/mod.rs +++ b/src/ps/private/utils/mod.rs @@ -5,7 +5,7 @@ mod string_manipulation; pub use execute::{ execute, execute_with_input_and_output, execute_with_output, ExecuteError, - ExecuteWithInputAndOutputError, ExecuteWithOutputError, + ExecuteWithOutputError, }; pub use mergable::merge_option; pub use mergable::Mergable; diff --git a/src/ps/public/list.rs b/src/ps/public/list.rs index 6139833..c6c40e8 100644 --- a/src/ps/public/list.rs +++ b/src/ps/public/list.rs @@ -1,6 +1,6 @@ use super::super::super::ps; use super::super::private::config; -use super::super::private::config::ColorSelector; +use super::super::private::config::list::ColorSelector; use super::super::private::git; use super::super::private::git::RebaseTodoCommand; use super::super::private::list;