diff --git a/Cargo.lock b/Cargo.lock index 1380be4e..91f317bd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,11 +2,22 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "accurate" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f209f0bc218ee6cf50db56ec0d9fe10b3cbfb6f3900d019b36c8fdb6d3bc03e" +dependencies = [ + "cfg-if 1.0.0", + "ieee754", + "num-traits", +] + [[package]] name = "addr2line" -version = "0.19.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3" dependencies = [ "gimli", ] @@ -25,13 +36,19 @@ checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" [[package]] name = "aho-corasick" -version = "0.7.20" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" dependencies = [ "memchr", ] +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + [[package]] name = "android_system_properties" version = "0.1.5" @@ -50,11 +67,60 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "anstream" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is-terminal", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd" + +[[package]] +name = "anstyle-parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188" +dependencies = [ + "anstyle", + "windows-sys", +] + [[package]] name = "anyhow" -version = "1.0.68" +version = "1.0.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61" +checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8" [[package]] name = "approx" @@ -67,9 +133,9 @@ dependencies = [ [[package]] name = "arrayref" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" [[package]] name = "asn1-rs" @@ -84,14 +150,14 @@ dependencies = [ "num-traits", "rusticata-macros", "thiserror", - "time 0.3.17", + "time 0.3.22", ] [[package]] name = "asn1-rs" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf6690c370453db30743b373a60ba498fc0d6d83b11f4abfd87a84a075db5dd4" +checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" dependencies = [ "asn1-rs-derive 0.4.0", "asn1-rs-impl", @@ -108,9 +174,9 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", "synstructure", ] @@ -120,9 +186,9 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", "synstructure", ] @@ -132,9 +198,9 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -174,15 +240,15 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.67" +version = "0.3.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12" dependencies = [ "addr2line", "cc", "cfg-if 1.0.0", "libc", - "miniz_oxide 0.6.2", + "miniz_oxide 0.7.1", "object", "rustc-demangle", ] @@ -224,6 +290,12 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" + [[package]] name = "bincode" version = "1.3.3" @@ -239,17 +311,17 @@ version = "0.59.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cexpr", "clang-sys", "clap 2.34.0", "env_logger", "lazy_static", "lazycell", - "log 0.4.17", + "log 0.4.19", "peeking_take_while", - "proc-macro2 1.0.50", - "quote 1.0.23", + "proc-macro2 1.0.63", + "quote 1.0.29", "regex", "rustc-hash", "shlex", @@ -262,6 +334,12 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitflags" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" + [[package]] name = "blake2" version = "0.8.1" @@ -280,7 +358,7 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -299,16 +377,16 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] name = "block-buffer" -version = "0.10.3" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] @@ -322,11 +400,11 @@ dependencies = [ "bufstream", "caps", "cfg-if 1.0.0", - "clap 3.2.23", + "clap 3.2.25", "close_fds", - "errno", + "errno 0.2.8", "libc", - "log 0.4.17", + "log 0.4.19", "nix 0.24.3", "pledge", "regex", @@ -341,13 +419,13 @@ checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" [[package]] name = "bstr" -version = "0.2.17" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" +checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05" dependencies = [ - "lazy_static", "memchr", "regex-automata", + "serde", ] [[package]] @@ -358,9 +436,9 @@ checksum = "40e38929add23cdf8a366df9b0e088953150724bcbe5fc330b0d8eb3b328eec8" [[package]] name = "bumpalo" -version = "3.12.0" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" +checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" [[package]] name = "byte-tools" @@ -376,9 +454,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "bytemuck" -version = "1.13.0" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393" +checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" [[package]] name = "byteorder" @@ -399,15 +477,15 @@ dependencies = [ [[package]] name = "bytes" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "bytesize" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c58ec36aac5066d5ca17df51b3e70279f5670a72102f5752cb7e7c856adfc70" +checksum = "38fcc2979eff34a4b84e1cf9a1e3da42a7d44b3b690a40cdcb23e3d556cfb2e5" [[package]] name = "caps" @@ -421,9 +499,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.78" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" [[package]] name = "cexpr" @@ -448,13 +526,13 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.23" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f" +checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" dependencies = [ + "android-tzdata", "iana-time-zone", "js-sys", - "num-integer", "num-traits", "serde", "time 0.1.45", @@ -477,7 +555,7 @@ dependencies = [ "hyper 0.12.36", "hyper-rustls", "ipconfig", - "log 0.4.17", + "log 0.4.19", "lru-cache", "rustls 0.16.0", "serde", @@ -489,9 +567,9 @@ dependencies = [ [[package]] name = "clang-sys" -version = "1.4.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" dependencies = [ "glob", "libc", @@ -506,8 +584,8 @@ checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" dependencies = [ "ansi_term", "atty", - "bitflags", - "strsim", + "bitflags 1.3.2", + "strsim 0.8.0", "textwrap 0.11.0", "unicode-width", "vec_map", @@ -515,29 +593,73 @@ dependencies = [ [[package]] name = "clap" -version = "3.2.23" +version = "3.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5" +checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" dependencies = [ - "bitflags", - "clap_derive", - "clap_lex", + "bitflags 1.3.2", + "clap_derive 3.2.25", + "clap_lex 0.2.4", "indexmap", "once_cell", "textwrap 0.16.0", ] +[[package]] +name = "clap" +version = "4.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1640e5cc7fb47dbb8338fd471b105e7ed6c3cb2aeb00c2e067127ffd3764a05d" +dependencies = [ + "clap_builder", + "clap_derive 4.3.2", + "once_cell", +] + +[[package]] +name = "clap_builder" +version = "4.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98c59138d527eeaf9b53f35a77fcc1fad9d883116070c63d5de1c7dc7b00c72b" +dependencies = [ + "anstream", + "anstyle", + "clap_lex 0.5.0", + "strsim 0.10.0", +] + +[[package]] +name = "clap_complete" +version = "4.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce" +dependencies = [ + "clap 4.3.11", +] + [[package]] name = "clap_derive" -version = "3.2.18" +version = "3.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65" +checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008" dependencies = [ - "heck 0.4.0", + "heck 0.4.1", "proc-macro-error", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", +] + +[[package]] +name = "clap_derive" +version = "4.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f" +dependencies = [ + "heck 0.4.1", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] @@ -549,6 +671,12 @@ dependencies = [ "os_str_bytes", ] +[[package]] +name = "clap_lex" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" + [[package]] name = "clipboard-win" version = "4.5.0" @@ -576,17 +704,7 @@ version = "0.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" dependencies = [ - "bitflags", -] - -[[package]] -name = "codespan-reporting" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" -dependencies = [ - "termcolor", - "unicode-width", + "bitflags 1.3.2", ] [[package]] @@ -595,15 +713,21 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + [[package]] name = "colored" -version = "2.0.0" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" +checksum = "2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6" dependencies = [ - "atty", + "is-terminal", "lazy_static", - "winapi 0.3.9", + "windows-sys", ] [[package]] @@ -618,7 +742,7 @@ version = "0.11.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be2018768ed1d848cc4d347d551546474025ba820e5db70e4c9aaa349f678bd7" dependencies = [ - "percent-encoding 2.2.0", + "percent-encoding 2.3.0", "time 0.1.45", ] @@ -641,7 +765,7 @@ dependencies = [ "cookie 0.12.0", "failure", "idna 0.1.5", - "log 0.4.17", + "log 0.4.19", "publicsuffix 1.5.6", "serde", "serde_json", @@ -662,15 +786,15 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "cpufeatures" -version = "0.2.5" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" +checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" dependencies = [ "libc", ] @@ -692,12 +816,12 @@ checksum = "6548a0ad5d2549e111e1f6a11a6c2e2d00ce6a3dafe22948d67c2b443f775e52" [[package]] name = "crossbeam-channel" -version = "0.5.6" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils 0.8.14", + "crossbeam-utils 0.8.16", ] [[package]] @@ -713,13 +837,13 @@ dependencies = [ [[package]] name = "crossbeam-deque" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" dependencies = [ "cfg-if 1.0.0", - "crossbeam-epoch 0.9.13", - "crossbeam-utils 0.8.14", + "crossbeam-epoch 0.9.15", + "crossbeam-utils 0.8.16", ] [[package]] @@ -739,14 +863,14 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.13" +version = "0.9.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ "autocfg 1.1.0", "cfg-if 1.0.0", - "crossbeam-utils 0.8.14", - "memoffset 0.7.1", + "crossbeam-utils 0.8.16", + "memoffset 0.9.0", "scopeguard", ] @@ -774,9 +898,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.14" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ "cfg-if 1.0.0", ] @@ -787,7 +911,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", "typenum", ] @@ -812,20 +936,20 @@ dependencies = [ "itoa 0.4.8", "matches", "phf", - "proc-macro2 1.0.50", - "quote 1.0.23", - "smallvec 1.10.0", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "smallvec 1.11.0", + "syn 1.0.109", ] [[package]] name = "cssparser-macros" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e" +checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ - "quote 1.0.23", - "syn 1.0.107", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] @@ -848,9 +972,9 @@ dependencies = [ [[package]] name = "ctrlc" -version = "3.2.4" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1631ca6e3c59112501a9d87fd86f21591ff77acd31331e8a73f8d80a65bbdd71" +checksum = "2a011bbe2c35ce9c1f143b7af6f94f29a167beb4cd1d29e6740ce836f723120e" dependencies = [ "nix 0.26.2", "windows-sys", @@ -867,15 +991,15 @@ dependencies = [ "openssl-probe", "openssl-sys", "schannel", - "socket2 0.4.7", + "socket2 0.4.9", "winapi 0.3.9", ] [[package]] name = "curl-sys" -version = "0.4.59+curl-7.86.0" +version = "0.4.63+curl-8.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cfce34829f448b08f55b7db6d0009e23e2e86a34e8c2b366269bf5799b4a407" +checksum = "aeb0fef7046022a1e2ad67a004978f0e3cacb9e3123dc62ce768f92197b771dc" dependencies = [ "cc", "libc", @@ -886,61 +1010,17 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "cxx" -version = "1.0.88" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322296e2f2e5af4270b54df9e85a02ff037e271af20ba3e7fe1575515dc840b8" -dependencies = [ - "cc", - "cxxbridge-flags", - "cxxbridge-macro", - "link-cplusplus", -] - -[[package]] -name = "cxx-build" -version = "1.0.88" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "017a1385b05d631e7875b1f151c9f012d37b53491e2a87f65bff5c262b2111d8" -dependencies = [ - "cc", - "codespan-reporting", - "once_cell", - "proc-macro2 1.0.50", - "quote 1.0.23", - "scratch", - "syn 1.0.107", -] - -[[package]] -name = "cxxbridge-flags" -version = "1.0.88" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c26bbb078acf09bc1ecda02d4223f03bdd28bd4874edcb0379138efc499ce971" - -[[package]] -name = "cxxbridge-macro" -version = "1.0.88" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357f40d1f06a24b60ae1fe122542c1fb05d28d32acb2aed064e84bc2ad1e252e" -dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", -] - [[package]] name = "data-encoding" -version = "2.3.3" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d8666cb01533c39dde32bcbab8e227b4ed6679b2c925eba05feabea39508fb" +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" [[package]] name = "data-encoding-macro" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86927b7cd2fe88fa698b87404b287ab98d1a0063a34071d92e575b72d3029aca" +checksum = "c904b33cc60130e1aeea4956ab803d08a3f4a0ca82d64ed757afac3891f2bb99" dependencies = [ "data-encoding", "data-encoding-macro-internal", @@ -948,12 +1028,12 @@ dependencies = [ [[package]] name = "data-encoding-macro-internal" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5bbed42daaa95e780b60a50546aa345b8413a1e46f9a40a12907d3598f038db" +checksum = "8fdf3fce3ce863539ec1d7fd1b6dcc3c645663376b43ed376bbf887733e4f772" dependencies = [ "data-encoding", - "syn 1.0.107", + "syn 1.0.109", ] [[package]] @@ -982,11 +1062,11 @@ dependencies = [ [[package]] name = "der-parser" -version = "8.1.0" +version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42d4bc9b0db0a0df9ae64634ac5bdefb7afcb534e182275ca0beadbe486701c1" +checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" dependencies = [ - "asn1-rs 0.5.1", + "asn1-rs 0.5.2", "displaydoc", "nom", "num-traits", @@ -1000,10 +1080,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" dependencies = [ "convert_case", - "proc-macro2 1.0.50", - "quote 1.0.23", + "proc-macro2 1.0.63", + "quote 1.0.29", "rustc_version 0.4.0", - "syn 1.0.107", + "syn 1.0.109", ] [[package]] @@ -1032,7 +1112,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d1053e9d5d5aade9bcedb5ab53b78df2b56ff9408a3138ce77eaaef87f932373" dependencies = [ - "bitflags", + "bitflags 1.3.2", "proc-macro2 0.4.30", "quote 0.6.13", "syn 0.15.44", @@ -1044,7 +1124,7 @@ version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b28135ecf6b7d446b43e27e225622a038cc4e2930a1022f51cdb97ada19b8e4d" dependencies = [ - "bitflags", + "bitflags 1.3.2", "byteorder", "chrono", "diesel_derives", @@ -1059,9 +1139,9 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -1107,18 +1187,18 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] name = "digest" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.3", + "block-buffer 0.10.4", "crypto-common", - "subtle 2.4.1", + "subtle 2.5.0", ] [[package]] @@ -1144,13 +1224,13 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] @@ -1165,13 +1245,19 @@ version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" +[[package]] +name = "dtoa" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "519b83cd10f5f6e969625a409f735182bea5558cd8b64c655806ceaae36f1999" + [[package]] name = "dtoa-short" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde03329ae10e79ede66c9ce4dc930aa8599043b0743008548680f25b91502d6" +checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74" dependencies = [ - "dtoa", + "dtoa 1.0.8", ] [[package]] @@ -1197,9 +1283,9 @@ checksum = "4dda717aa0325f3ebb1b5da2da97b56641e5cef86c55d7fec8158bc8aeb5ed19" [[package]] name = "encoding_rs" -version = "0.8.31" +version = "0.8.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" +checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394" dependencies = [ "cfg-if 1.0.0", ] @@ -1229,7 +1315,7 @@ checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" dependencies = [ "atty", "humantime 2.1.0", - "log 0.4.17", + "log 0.4.19", "regex", "termcolor", ] @@ -1245,6 +1331,17 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "errno" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys", +] + [[package]] name = "errno-dragonfly" version = "0.1.2" @@ -1281,9 +1378,9 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", "synstructure", ] @@ -1295,29 +1392,29 @@ checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" [[package]] name = "fastrand" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" dependencies = [ "instant", ] [[package]] name = "fd-lock" -version = "3.0.9" +version = "3.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28c0190ff0bd3b28bfdd4d0cf9f92faa12880fb0b8ae2054723dd6c76a4efd42" +checksum = "ef033ed5e9bad94e55838ca0ca906db0e043f517adda0c8b79c7a8c66c93c1b5" dependencies = [ "cfg-if 1.0.0", - "rustix", + "rustix 0.38.3", "windows-sys", ] [[package]] name = "filetime" -version = "0.2.19" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e884668cd0c7480504233e951174ddc3b382f7c2666e3b7310b5c4e7b0c37f9" +checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153" dependencies = [ "cfg-if 1.0.0", "libc", @@ -1327,12 +1424,12 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.25" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" +checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743" dependencies = [ "crc32fast", - "miniz_oxide 0.6.2", + "miniz_oxide 0.7.1", ] [[package]] @@ -1367,11 +1464,11 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" dependencies = [ - "percent-encoding 2.2.0", + "percent-encoding 2.3.0", ] [[package]] @@ -1380,7 +1477,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6" dependencies = [ - "bitflags", + "bitflags 1.3.2", "fsevent-sys", ] @@ -1405,7 +1502,7 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" dependencies = [ - "bitflags", + "bitflags 1.3.2", "fuchsia-zircon-sys", ] @@ -1470,9 +1567,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.6" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check 0.9.4", @@ -1487,7 +1584,7 @@ dependencies = [ "float_next_after", "geo-types", "geographiclib-rs", - "log 0.4.17", + "log 0.4.19", "num-traits", "robust", "rstar", @@ -1495,21 +1592,23 @@ dependencies = [ [[package]] name = "geo-types" -version = "0.7.8" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e26879b63ac36ca5492918dc16f8c1e604b0f70f884fffbd3533f89953ab1991" +checksum = "1019f6d372c5b53143f08deee4168d05c22920fe5e0f51f0dfb0e8ffb67ec11e" dependencies = [ "approx", "num-traits", "rstar", + "serde", ] [[package]] name = "geographiclib-rs" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04a4efc8e99f43d1d29331a073981bb13074b253edc08ffc8ccf5f384b1d1d1e" +checksum = "8ea804e7bd3c6a4ca6a01edfa35231557a8a81d4d3f3e1e2b650d028c42592be" dependencies = [ + "accurate", "lazy_static", ] @@ -1526,9 +1625,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if 1.0.0", "libc", @@ -1547,9 +1646,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.27.1" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "221996f774192f0f718773def8201c4ae31f02616a54ccfc2d358bb0e5cefdec" +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" [[package]] name = "glob" @@ -1569,7 +1668,7 @@ dependencies = [ "futures", "http 0.1.21", "indexmap", - "log 0.4.17", + "log 0.4.19", "slab", "string", "tokio-io", @@ -1582,7 +1681,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d82e5750d8027a97b9640e3fefa66bbaf852a35228e1c90790efd13c4b09c166" dependencies = [ "lazy_static", - "log 0.4.17", + "log 0.4.19", "pest", "pest_derive", "quick-error", @@ -1616,7 +1715,7 @@ dependencies = [ "atomic-polyfill", "hash32", "rustc_version 0.4.0", - "spin 0.9.4", + "spin 0.9.8", "stable_deref_trait", ] @@ -1631,9 +1730,9 @@ dependencies = [ [[package]] name = "heck" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" @@ -1646,12 +1745,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.2.6" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" -dependencies = [ - "libc", -] +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" [[package]] name = "hex" @@ -1675,7 +1771,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -1684,12 +1780,12 @@ version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5c13fb08e5d4dfc151ee5e88bae63f7773d61852f3bdc73c9f4b9e1bde03148" dependencies = [ - "log 0.4.17", + "log 0.4.19", "mac", "markup5ever", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -1705,13 +1801,13 @@ dependencies = [ [[package]] name = "http" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" +checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" dependencies = [ - "bytes 1.3.0", + "bytes 1.4.0", "fnv", - "itoa 1.0.5", + "itoa 1.0.8", ] [[package]] @@ -1787,7 +1883,7 @@ dependencies = [ "httparse", "iovec", "itoa 0.4.8", - "log 0.4.17", + "log 0.4.19", "net2", "rustc_version 0.2.3", "time 0.1.45", @@ -1834,26 +1930,25 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.53" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765" +checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "winapi 0.3.9", + "windows", ] [[package]] name = "iana-time-zone-haiku" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" dependencies = [ - "cxx", - "cxx-build", + "cc", ] [[package]] @@ -1880,14 +1975,20 @@ dependencies = [ [[package]] name = "idna" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ "unicode-bidi", "unicode-normalization", ] +[[package]] +name = "ieee754" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c" + [[package]] name = "image" version = "0.23.14" @@ -1922,9 +2023,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.2" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg 1.1.0", "hashbrown", @@ -1936,7 +2037,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f" dependencies = [ - "bitflags", + "bitflags 1.3.2", "inotify-sys", "libc", ] @@ -1956,7 +2057,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f97967975f448f1a7ddb12b0bc41069d09ed6a1c161a92687e057325db35d413" dependencies = [ - "bytes 1.3.0", + "bytes 1.4.0", ] [[package]] @@ -1970,10 +2071,11 @@ dependencies = [ [[package]] name = "io-lifetimes" -version = "1.0.4" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d6c6f8c91b4b9ed43484ad1a938e393caf35960fce7f82a040497207bd8e9e" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ + "hermit-abi 0.3.2", "libc", "windows-sys", ] @@ -2008,6 +2110,17 @@ dependencies = [ "serde", ] +[[package]] +name = "is-terminal" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" +dependencies = [ + "hermit-abi 0.3.2", + "rustix 0.38.3", + "windows-sys", +] + [[package]] name = "itoa" version = "0.4.8" @@ -2016,9 +2129,9 @@ checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" [[package]] name = "itoa" -version = "1.0.5" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" +checksum = "62b02a5381cc465bd3041d84623d0fa3b66738b52b8e2fc3bab8ad63ab032f4a" [[package]] name = "jpeg-decoder" @@ -2031,9 +2144,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.60" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -2049,9 +2162,9 @@ dependencies = [ [[package]] name = "keccak" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3afef3b6eff9ce9d8ff9b3601125eec7f0c8cbac7abd14f355d053fa56c98768" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" dependencies = [ "cpufeatures", ] @@ -2098,9 +2211,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.139" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "libloading" @@ -2114,9 +2227,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" +checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4" [[package]] name = "libsodium-sys" @@ -2143,9 +2256,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9702761c3935f8cc2f101793272e202c72b99da8f4224a19ddcf1279a6450bbf" +checksum = "56ee889ecc9568871456d42f603d6a0ce59ff328d291063a45cbdf0036baf6db" dependencies = [ "cc", "libc", @@ -2162,15 +2275,6 @@ dependencies = [ "safemem", ] -[[package]] -name = "link-cplusplus" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" -dependencies = [ - "cc", -] - [[package]] name = "linked-hash-map" version = "0.5.6" @@ -2179,9 +2283,15 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.1.4" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + +[[package]] +name = "linux-raw-sys" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" +checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0" [[package]] name = "lock_api" @@ -2194,9 +2304,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ "autocfg 1.1.0", "scopeguard", @@ -2208,17 +2318,14 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" dependencies = [ - "log 0.4.17", + "log 0.4.19", ] [[package]] name = "log" -version = "0.4.17" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if 1.0.0", -] +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" [[package]] name = "lru-cache" @@ -2258,7 +2365,7 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd" dependencies = [ - "log 0.4.17", + "log 0.4.19", "phf", "phf_codegen", "string_cache", @@ -2279,7 +2386,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fe2ba61113f9f7a9f0e87c519682d39c43a6f3f79c2cc42c3ba3dda83b1fa334" dependencies = [ "ipnetwork", - "log 0.4.17", + "log 0.4.19", "memchr", "serde", ] @@ -2296,7 +2403,7 @@ version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -2325,9 +2432,9 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.7.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" dependencies = [ "autocfg 1.1.0", ] @@ -2348,9 +2455,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9753f12909fd8d923f75ae5c3258cae1ed3c8ec052e1b38c93c21a6d157f789c" dependencies = [ "migrations_internals", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -2364,9 +2471,9 @@ dependencies = [ [[package]] name = "mime" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "mime_guess" @@ -2374,7 +2481,7 @@ version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef" dependencies = [ - "mime 0.3.16", + "mime 0.3.17", "unicase 2.6.0", ] @@ -2405,9 +2512,9 @@ dependencies = [ [[package]] name = "miniz_oxide" -version = "0.6.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" dependencies = [ "adler", ] @@ -2424,7 +2531,7 @@ dependencies = [ "iovec", "kernel32-sys", "libc", - "log 0.4.17", + "log 0.4.19", "miow", "net2", "slab", @@ -2438,7 +2545,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" dependencies = [ "lazycell", - "log 0.4.17", + "log 0.4.19", "mio", "slab", ] @@ -2474,7 +2581,7 @@ checksum = "ca0b17380dc69fbcf5f967828cfd10e55028ba83a57da1f580c5b0792ab807ac" dependencies = [ "byteorder", "lazy_static", - "log 0.4.17", + "log 0.4.19", "regex", "thiserror", ] @@ -2493,7 +2600,7 @@ checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" dependencies = [ "lazy_static", "libc", - "log 0.4.17", + "log 0.4.19", "openssl", "openssl-probe", "openssl-sys", @@ -2505,9 +2612,9 @@ dependencies = [ [[package]] name = "net2" -version = "0.2.38" +version = "0.2.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631" +checksum = "b13b648036a2339d06de780866fbdfda0dde886de7b3af2ddeba8b14f4ee34ac" dependencies = [ "cfg-if 0.1.10", "libc", @@ -2532,7 +2639,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" dependencies = [ - "smallvec 1.10.0", + "smallvec 1.11.0", ] [[package]] @@ -2541,7 +2648,7 @@ version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cfg-if 1.0.0", "libc", "memoffset 0.6.5", @@ -2554,7 +2661,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" dependencies = [ "autocfg 1.1.0", - "bitflags", + "bitflags 1.3.2", "cfg-if 1.0.0", "libc", ] @@ -2565,7 +2672,7 @@ version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cfg-if 1.0.0", "libc", "static_assertions", @@ -2593,7 +2700,7 @@ version = "4.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257" dependencies = [ - "bitflags", + "bitflags 1.3.2", "filetime", "fsevent", "fsevent-sys", @@ -2613,7 +2720,7 @@ checksum = "629bf84f31f765ba48058371c6eb3c5eed0fcdec68b814eb11f6f65dec0adbe3" dependencies = [ "failure", "image", - "log 0.4.17", + "log 0.4.19", "rand 0.7.3", ] @@ -2682,11 +2789,11 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.2.6", + "hermit-abi 0.3.2", "libc", ] @@ -2710,9 +2817,9 @@ dependencies = [ [[package]] name = "object" -version = "0.30.3" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" +checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1" dependencies = [ "memchr", ] @@ -2728,9 +2835,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "onig" @@ -2738,7 +2845,7 @@ version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4e723fc996fff1aeab8f62205f3e8528bf498bdd5eadb2784d2d31f30077947" dependencies = [ - "bitflags", + "bitflags 1.3.2", "lazy_static", "libc", "onig_sys", @@ -2769,9 +2876,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "opener" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea3ebcd72a54701f56345f16785a6d3ac2df7e986d273eb4395c0b01db17952" +checksum = "293c15678e37254c15bd2f092314abb4e51d7fdde05c2021279c12631b54f005" dependencies = [ "bstr", "winapi 0.3.9", @@ -2779,11 +2886,11 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.48" +version = "0.10.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "518915b97df115dd36109bfa429a48b8f737bd05508cf9588977b599648926d2" +checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cfg-if 1.0.0", "foreign-types", "libc", @@ -2794,13 +2901,13 @@ dependencies = [ [[package]] name = "openssl-macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] @@ -2811,11 +2918,10 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.83" +version = "0.9.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "666416d899cf077260dac8698d60a60b435a46d57e82acb1be3d0dad87284e5b" +checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6" dependencies = [ - "autocfg 1.1.0", "cc", "libc", "pkg-config", @@ -2829,16 +2935,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a8a1fed76ac765e39058ca106b6229a93c5a60292a1bd4b602ce2be11e1c020" dependencies = [ "anyhow", - "plist 1.4.0", + "plist 1.4.3", "uname", "winapi 0.3.9", ] [[package]] name = "os_str_bytes" -version = "6.4.1" +version = "6.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" +checksum = "4d5d9eb14b174ee9aa2ef96dc2b94637a2d4b6e7cb873c7e171f0c20c6cf3eac" [[package]] name = "parking_lot" @@ -2857,8 +2963,8 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ - "lock_api 0.4.9", - "parking_lot_core 0.9.6", + "lock_api 0.4.10", + "parking_lot_core 0.9.8", ] [[package]] @@ -2878,15 +2984,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.6" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba1ef8814b5c993410bb3adfad7a5ed269563e4a2f90c41f5d85be7fb47133bf" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.16", - "smallvec 1.10.0", - "windows-sys", + "redox_syscall 0.3.5", + "smallvec 1.11.0", + "windows-targets", ] [[package]] @@ -2934,15 +3040,15 @@ checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" [[package]] name = "percent-encoding" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pest" -version = "2.5.4" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ab62d2fa33726dbe6321cc97ef96d8cde531e3eeaf858a058de53a8a6d40d8f" +checksum = "f73935e4d55e2abf7f130186537b19e7a4abc886a0252380b59248af473a3fc9" dependencies = [ "thiserror", "ucd-trie", @@ -2950,9 +3056,9 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.5.4" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bf026e2d0581559db66d837fe5242320f525d85c76283c61f4d51a1238d65ea" +checksum = "aef623c9bbfa0eedf5a0efba11a5ee83209c326653ca31ff019bec3a95bfff2b" dependencies = [ "pest", "pest_generator", @@ -2960,26 +3066,26 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.5.4" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b27bd18aa01d91c8ed2b61ea23406a676b42d82609c6e2581fba42f0c15f17f" +checksum = "b3e8cba4ec22bada7fc55ffe51e2deb6a0e0db2d0b7ab0b103acc80d2510c190" dependencies = [ "pest", "pest_meta", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] name = "pest_meta" -version = "2.5.4" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f02b677c1859756359fc9983c2e56a0237f18624a3789528804406b7e915e5d" +checksum = "a01f71cb40bd8bb94232df14b946909e14660e33fc05db3e50ae2a82d7ea0ca0" dependencies = [ "once_cell", "pest", - "sha2 0.10.6", + "sha2 0.10.7", ] [[package]] @@ -3032,9 +3138,9 @@ dependencies = [ "phf_generator 0.8.0", "phf_shared 0.8.0", "proc-macro-hack", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -3057,9 +3163,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.26" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "pledge" @@ -3086,16 +3192,16 @@ dependencies = [ [[package]] name = "plist" -version = "1.4.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5329b8f106a176ab0dce4aae5da86bfcb139bb74fb00882859e03745011f3635" +checksum = "9bd9647b268a3d3e14ff09c23201133a62589c658db02bb7388c7246aafe0590" dependencies = [ - "base64 0.13.1", + "base64 0.21.2", "indexmap", "line-wrap", "quick-xml", "serde", - "time 0.3.17", + "time 0.3.22", ] [[package]] @@ -3104,7 +3210,7 @@ version = "0.16.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6" dependencies = [ - "bitflags", + "bitflags 1.3.2", "crc32fast", "deflate", "miniz_oxide 0.3.7", @@ -3118,9 +3224,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "pq-sys" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b845d6d8ec554f972a2c5298aad68953fd64e7441e846075450b44656a016d1" +checksum = "31c0052426df997c0cbd30789eb44ca097e3541717a7b8fa36b1c464ee7edebd" dependencies = [ "vcpkg", ] @@ -3138,9 +3244,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ "proc-macro-error-attr", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", "version_check 0.9.4", ] @@ -3150,8 +3256,8 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", + "proc-macro2 1.0.63", + "quote 1.0.29", "version_check 0.9.4", ] @@ -3172,9 +3278,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.50" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ef7d57beacfaf2d8aee5937dab7b7f28de3cb8b1828479bb5de2a7106f2bae2" +checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb" dependencies = [ "unicode-ident", ] @@ -3192,7 +3298,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95b4ce31ff0a27d93c8de1849cf58162283752f065a90d508f1105fa6c9a213f" dependencies = [ "idna 0.2.3", - "url 2.3.1", + "url 2.4.0", ] [[package]] @@ -3212,9 +3318,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quick-xml" -version = "0.26.0" +version = "0.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd" +checksum = "0ce5e73202a820a31f8a0ee32ada5e21029c81fd9e3ebf668a40832e4219d9d1" dependencies = [ "memchr", ] @@ -3230,11 +3336,11 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.23" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105" dependencies = [ - "proc-macro2 1.0.50", + "proc-macro2 1.0.63", ] [[package]] @@ -3243,7 +3349,7 @@ version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51de85fb3fb6524929c8a2eb85e6b6d363de4e8c48f9e2c2eac4944abc181c93" dependencies = [ - "log 0.4.17", + "log 0.4.19", "parking_lot 0.12.1", "scheduled-thread-pool", ] @@ -3372,7 +3478,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.8", + "getrandom 0.2.10", ] [[package]] @@ -3457,9 +3563,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.6.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7" +checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" dependencies = [ "either", "rayon-core", @@ -3467,13 +3573,13 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.10.2" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "356a0625f1954f730c0201cdab48611198dc6ce21f4acff55089b5a78e6e835b" +checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" dependencies = [ "crossbeam-channel", - "crossbeam-deque 0.8.2", - "crossbeam-utils 0.8.14", + "crossbeam-deque 0.8.3", + "crossbeam-utils 0.8.16", "num_cpus", ] @@ -3498,7 +3604,16 @@ version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" dependencies = [ - "bitflags", + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags 1.3.2", ] [[package]] @@ -3507,42 +3622,45 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.8", + "getrandom 0.2.10", "redox_syscall 0.2.16", "thiserror", ] [[package]] name = "regex" -version = "1.7.1" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575" dependencies = [ "aho-corasick", "memchr", - "regex-syntax", + "regex-automata", + "regex-syntax 0.7.3", ] [[package]] name = "regex-automata" -version = "0.1.10" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +checksum = "83d3daa6976cffb758ec878f108ba0e062a45b2d6ca3a2cca965338855476caf" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.7.3", +] [[package]] name = "regex-syntax" -version = "0.6.28" +version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] -name = "remove_dir_all" -version = "0.5.3" +name = "regex-syntax" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" -dependencies = [ - "winapi 0.3.9", -] +checksum = "2ab07dc67230e4a4718e70fd5c20055a4334b121f1f9db8fe63ef39ce9b8c846" [[package]] name = "reqwest" @@ -3560,8 +3678,8 @@ dependencies = [ "http 0.1.21", "hyper 0.12.36", "hyper-tls", - "log 0.4.17", - "mime 0.3.16", + "log 0.4.19", + "mime 0.3.17", "mime_guess", "native-tls", "serde", @@ -3607,7 +3725,7 @@ checksum = "83b9d9dc08c5dcc1d8126a9dd615545e6a358f8c13c883c8dfed8c0376fa355e" dependencies = [ "atty", "base64 0.13.1", - "log 0.4.17", + "log 0.4.19", "memchr", "num_cpus", "pear", @@ -3643,7 +3761,7 @@ checksum = "e20efbc6a211cb3df5375accf532d4186f224b623f39eca650b19b96240c596b" dependencies = [ "glob", "handlebars", - "log 0.4.17", + "log 0.4.19", "notify", "rocket", "serde", @@ -3684,7 +3802,7 @@ dependencies = [ "indexmap", "pear", "percent-encoding 1.0.1", - "smallvec 1.10.0", + "smallvec 1.11.0", "state", "time 0.1.45", "unicode-xid 0.1.0", @@ -3698,14 +3816,14 @@ checksum = "b40f1bfe5acdab44bc63e6699c28b74f75ec43afb59f3eda01e145aff86a25fa" dependencies = [ "heapless", "num-traits", - "smallvec 1.10.0", + "smallvec 1.11.0", ] [[package]] name = "rustc-demangle" -version = "0.1.21" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] name = "rustc-hash" @@ -3728,7 +3846,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.16", + "semver 1.0.17", ] [[package]] @@ -3764,15 +3882,28 @@ dependencies = [ [[package]] name = "rustix" -version = "0.36.7" +version = "0.37.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fdebc4b395b7fbb9ab11e462e20ed9051e7b16e42d24042c776eca0ac81b03" +checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06" dependencies = [ - "bitflags", - "errno", + "bitflags 1.3.2", + "errno 0.3.1", "io-lifetimes", "libc", - "linux-raw-sys", + "linux-raw-sys 0.3.8", + "windows-sys", +] + +[[package]] +name = "rustix" +version = "0.38.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac5ffa1efe7548069688cd7028f32591853cd7b5b756d41bcffd2353e4fc75b4" +dependencies = [ + "bitflags 2.3.3", + "errno 0.3.1", + "libc", + "linux-raw-sys 0.4.3", "windows-sys", ] @@ -3783,7 +3914,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b25a18b1bf7387f0145e7f8324e700805aade3842dd3db2e74e4cdeb4677c09e" dependencies = [ "base64 0.10.1", - "log 0.4.17", + "log 0.4.19", "ring", "sct", "webpki", @@ -3796,7 +3927,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5d1126dcf58e93cee7d098dbda643b5f92ed724f1f6a63007c1116eed6700c81" dependencies = [ "base64 0.12.3", - "log 0.4.17", + "log 0.4.19", "ring", "sct", "webpki", @@ -3804,9 +3935,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.11" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" +checksum = "dc31bd9b61a32c31f9650d18add92aa83a49ba979c143eefd27fe7177b05bd5f" [[package]] name = "rustyline" @@ -3814,13 +3945,13 @@ version = "10.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1e83c32c3f3c33b08496e0d1df9ea8c64d39adb8eb36a1ebb1440c690697aef" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cfg-if 1.0.0", "clipboard-win", "dirs-next", "fd-lock", "libc", - "log 0.4.17", + "log 0.4.19", "memchr", "nix 0.25.1", "radix_trie 0.2.1", @@ -3833,9 +3964,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" +checksum = "fe232bdf6be8c8de797b22184ee71118d63780ea42ac85b61d1baa6d3b782ae9" [[package]] name = "safemem" @@ -3854,18 +3985,18 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.21" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ "windows-sys", ] [[package]] name = "scheduled-thread-pool" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "977a7519bff143a44f842fd07e80ad1329295bd71686457f18e496736f4bf9bf" +checksum = "3cbc66816425a074528352f5789333ecff06ca41b36b0b0efdfbb29edc391a19" dependencies = [ "parking_lot 0.12.1", ] @@ -3882,12 +4013,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" -[[package]] -name = "scratch" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2" - [[package]] name = "sct" version = "0.6.1" @@ -3909,11 +4034,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.8.1" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c4437699b6d34972de58652c68b98cb5b53a4199ab126db8e20ec8ded29a721" +checksum = "1fc758eb7bffce5b308734e9b0c1468893cae9ff70ebf13e7090be8dcbcc83a8" dependencies = [ - "bitflags", + "bitflags 1.3.2", "core-foundation", "core-foundation-sys", "libc", @@ -3922,9 +4047,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4" +checksum = "f51d0c0d83bec45f16480d0ce0058397a69e48fcdc52d1dc8855fb68acbd31a7" dependencies = [ "core-foundation-sys", "libc", @@ -3936,17 +4061,17 @@ version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cssparser", "derive_more", "fxhash", - "log 0.4.17", + "log 0.4.19", "matches", "phf", "phf_codegen", "precomputed-hash", "servo_arc", - "smallvec 1.10.0", + "smallvec 1.11.0", "thin-slice", ] @@ -3961,9 +4086,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" +checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" [[package]] name = "semver-parser" @@ -3979,31 +4104,31 @@ checksum = "f97841a747eef040fcd2e7b3b9a220a7205926e60488e673d9e4926d27772ce5" [[package]] name = "serde" -version = "1.0.152" +version = "1.0.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" +checksum = "7daf513456463b42aa1d94cff7e0c24d682b429f020b9afa4f5ba5c40a22b237" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.152" +version = "1.0.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" +checksum = "b69b106b68bc8054f0e974e70d19984040f8a5cf9215ca82626ea4853f82c4b9" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] name = "serde_json" -version = "1.0.91" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "0f1e14e89be7aa4c4b78bdbdc9eb5bf8517829a600ae8eaa39a6e1d960b5185c" dependencies = [ - "itoa 1.0.5", + "itoa 1.0.8", "ryu", "serde", ] @@ -4014,7 +4139,7 @@ version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "642dd69105886af2efd227f75a520ec9b44a820d65bc133a9131f7d229fd165a" dependencies = [ - "dtoa", + "dtoa 0.4.8", "itoa 0.4.8", "serde", "url 1.7.2", @@ -4027,7 +4152,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" dependencies = [ "form_urlencoded", - "itoa 1.0.5", + "itoa 1.0.8", "ryu", "serde", ] @@ -4063,7 +4188,7 @@ checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" dependencies = [ "cfg-if 1.0.0", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -4080,22 +4205,22 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" dependencies = [ "cfg-if 1.0.0", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] name = "sha3" -version = "0.10.6" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdf0c33fae925bdc080598b84bc15c55e7b9a4a43b3c704da051f977469691c9" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", "keccak", ] @@ -4129,9 +4254,9 @@ checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de" [[package]] name = "slab" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef" +checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" dependencies = [ "autocfg 1.1.0", ] @@ -4146,7 +4271,7 @@ dependencies = [ "base64 0.13.1", "byteorder", "hex", - "log 0.4.17", + "log 0.4.19", "serde", "sha-1 0.9.8", ] @@ -4162,9 +4287,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "sn0int" @@ -4177,13 +4302,15 @@ dependencies = [ "caps", "chrono", "chrootable-https", + "clap 4.3.11", + "clap_complete", "colored", "crossbeam-channel", "ctrlc", "data-encoding", "diesel", "diesel_migrations", - "digest 0.10.6", + "digest 0.10.7", "dirs-next", "embedded-triple", "env_logger", @@ -4195,31 +4322,30 @@ dependencies = [ "ipnetwork", "lazy_static", "libsqlite3-sys", - "log 0.4.17", + "log 0.4.19", "maplit", "md-5", "nix 0.24.3", "nude", "opener", "os-version", - "percent-encoding 2.2.0", + "percent-encoding 2.3.0", "pledge", "rand 0.8.5", "regex", "rustyline", - "semver 1.0.16", + "semver 1.0.17", "separator", "serde", "serde_json", "serde_urlencoded 0.7.1", "sha-1 0.10.1", - "sha2 0.10.6", + "sha2 0.10.7", "sha3", "shellwords", "sloppy-rfc4880", "sn0int-common", "sn0int-std", - "structopt", "strum 0.24.1", "strum_macros 0.24.3", "syscallz", @@ -4227,7 +4353,7 @@ dependencies = [ "threadpool", "toml 0.5.11", "unveil", - "url 2.3.1", + "url 2.4.0", "walkdir", ] @@ -4236,6 +4362,7 @@ name = "sn0int-common" version = "0.13.0" dependencies = [ "anyhow", + "clap 4.3.11", "nom", "rocket_failure_errors", "serde", @@ -4254,14 +4381,14 @@ dependencies = [ "failure", "hex", "lazy_static", - "log 0.4.17", + "log 0.4.19", "maplit", "oauth2", "reqwest", "rocket", "rocket_contrib", "rocket_failure", - "semver 1.0.16", + "semver 1.0.17", "serde", "serde_json", "sn0int-common", @@ -4282,18 +4409,18 @@ dependencies = [ "chrootable-https", "ct-logs 0.7.0", "data-encoding", - "der-parser 8.1.0", - "digest 0.10.6", + "der-parser 8.2.0", + "digest 0.10.7", "env_logger", "failure", "geo", "hlua-badtouch", - "http 0.2.8", + "http 0.2.9", "image", "img_hash_median", "kamadak-exif", "kuchiki", - "log 0.4.17", + "log 0.4.19", "maplit", "maxminddb", "mqtt-protocol", @@ -4309,7 +4436,7 @@ dependencies = [ "thiserror", "tokio", "tungstenite", - "url 2.3.1", + "url 2.4.0", "webpki", "webpki-roots 0.21.1", "x509-parser", @@ -4329,9 +4456,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.4.7" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" dependencies = [ "libc", "winapi 0.3.9", @@ -4357,11 +4484,11 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] name = "spin" -version = "0.9.4" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6002a767bff9e83f8eeecf883ecb8011875a21ae8da43bffb817a57e78cc09" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" dependencies = [ - "lock_api 0.4.9", + "lock_api 0.4.10", ] [[package]] @@ -4405,9 +4532,9 @@ dependencies = [ [[package]] name = "string_cache" -version = "0.8.4" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213494b7a2b503146286049378ce02b482200519accc31872ee8be91fa820a08" +checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" dependencies = [ "new_debug_unreachable", "once_cell", @@ -4425,8 +4552,8 @@ checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988" dependencies = [ "phf_generator 0.10.0", "phf_shared 0.10.0", - "proc-macro2 1.0.50", - "quote 1.0.23", + "proc-macro2 1.0.63", + "quote 1.0.29", ] [[package]] @@ -4435,6 +4562,12 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + [[package]] name = "structopt" version = "0.3.26" @@ -4454,9 +4587,9 @@ checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0" dependencies = [ "heck 0.3.3", "proc-macro-error", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -4478,9 +4611,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec" dependencies = [ "heck 0.3.3", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", ] [[package]] @@ -4489,11 +4622,11 @@ version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" dependencies = [ - "heck 0.4.0", - "proc-macro2 1.0.50", - "quote 1.0.23", + "heck 0.4.1", + "proc-macro2 1.0.63", + "quote 1.0.29", "rustversion", - "syn 1.0.107", + "syn 1.0.109", ] [[package]] @@ -4504,9 +4637,9 @@ checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" [[package]] name = "subtle" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "syn" @@ -4521,12 +4654,23 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.107" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", + "proc-macro2 1.0.63", + "quote 1.0.29", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59fb7d6d8281a51045d62b8eb3a7d1ce347b76f312af50cd3dc0af39c87c1737" +dependencies = [ + "proc-macro2 1.0.63", + "quote 1.0.29", "unicode-ident", ] @@ -4536,9 +4680,9 @@ version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 1.0.109", "unicode-xid 0.2.4", ] @@ -4549,14 +4693,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "955e9da2455eea5635f7032fc3a229908e6af18c39600313866095e07db0d8b8" dependencies = [ "bincode", - "bitflags", + "bitflags 1.3.2", "flate2", "fnv", "lazy_static", "lazycell", "onig", "plist 0.4.2", - "regex-syntax", + "regex-syntax 0.6.29", "serde", "serde_derive", "serde_json", @@ -4570,7 +4714,7 @@ version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "110ff7f267e583b58489bb0b01fa62ce71c032cd193df3affe9b3b51369aa6ad" dependencies = [ - "log 0.4.17", + "log 0.4.19", "pkg-config", "seccomp-sys", "strum 0.21.0", @@ -4579,16 +4723,16 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.3.0" +version = "3.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" +checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6" dependencies = [ + "autocfg 1.1.0", "cfg-if 1.0.0", "fastrand", - "libc", - "redox_syscall 0.2.16", - "remove_dir_all", - "winapi 0.3.9", + "redox_syscall 0.3.5", + "rustix 0.37.23", + "windows-sys", ] [[package]] @@ -4634,22 +4778,22 @@ checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" [[package]] name = "thiserror" -version = "1.0.38" +version = "1.0.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" +checksum = "a35fc5b8971143ca348fa6df4f024d4d55264f3468c71ad1c2f365b0a4d58c42" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.38" +version = "1.0.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" +checksum = "463fe12d7993d3b327787537ce8dd4dfa058de32fc2b195ef3cde03dc4771e8f" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", ] [[package]] @@ -4685,11 +4829,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.17" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a561bf4617eebd33bca6434b988f39ed798e527f51a1e797d0ee4f61c0a38376" +checksum = "ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd" dependencies = [ - "itoa 1.0.5", + "itoa 1.0.8", "serde", "time-core", "time-macros", @@ -4697,15 +4841,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd" +checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" [[package]] name = "time-macros" -version = "0.2.6" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d967f99f534ca7e495c575c62638eebc2898a8c84c119b89e250477bc4ba16b2" +checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b" dependencies = [ "time-core", ] @@ -4721,9 +4865,9 @@ dependencies = [ [[package]] name = "tinyvec_macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" @@ -4810,7 +4954,7 @@ checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" dependencies = [ "bytes 0.4.12", "futures", - "log 0.4.17", + "log 0.4.19", ] [[package]] @@ -4822,7 +4966,7 @@ dependencies = [ "crossbeam-utils 0.7.2", "futures", "lazy_static", - "log 0.4.17", + "log 0.4.19", "mio", "num_cpus", "parking_lot 0.9.0", @@ -4881,7 +5025,7 @@ dependencies = [ "crossbeam-utils 0.7.2", "futures", "lazy_static", - "log 0.4.17", + "log 0.4.19", "num_cpus", "slab", "tokio-executor", @@ -4907,7 +5051,7 @@ checksum = "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82" dependencies = [ "bytes 0.4.12", "futures", - "log 0.4.17", + "log 0.4.19", "mio", "tokio-codec", "tokio-io", @@ -4924,7 +5068,7 @@ dependencies = [ "futures", "iovec", "libc", - "log 0.4.17", + "log 0.4.19", "mio", "mio-uds", "tokio-codec", @@ -4984,7 +5128,7 @@ dependencies = [ "failure", "futures", "lazy_static", - "log 0.4.17", + "log 0.4.19", "radix_trie 0.1.6", "rand 0.7.3", "tokio", @@ -5005,7 +5149,7 @@ dependencies = [ "futures", "idna 0.2.3", "lazy_static", - "log 0.4.17", + "log 0.4.19", "rand 0.7.3", "smallvec 0.6.14", "socket2 0.3.19", @@ -5015,7 +5159,7 @@ dependencies = [ "tokio-tcp", "tokio-timer", "tokio-udp", - "url 2.3.1", + "url 2.4.0", ] [[package]] @@ -5041,15 +5185,15 @@ checksum = "5fe8dada8c1a3aeca77d6b51a4f1314e0f4b8e438b7b1b71e3ddaca8080e4093" dependencies = [ "base64 0.13.1", "byteorder", - "bytes 1.3.0", - "http 0.2.8", + "bytes 1.4.0", + "http 0.2.9", "httparse", "input_buffer", - "log 0.4.17", + "log 0.4.19", "rand 0.8.5", "sha-1 0.9.8", "thiserror", - "url 2.3.1", + "url 2.4.0", "utf-8", ] @@ -5067,9 +5211,9 @@ checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" [[package]] name = "ucd-trie" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" [[package]] name = "uname" @@ -5100,15 +5244,15 @@ dependencies = [ [[package]] name = "unicode-bidi" -version = "0.3.10" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.6" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" +checksum = "22049a19f4a68748a168c0fc439f9516686aa045927ff767eca0a85101fb6e73" [[package]] name = "unicode-normalization" @@ -5121,9 +5265,9 @@ dependencies = [ [[package]] name = "unicode-segmentation" -version = "1.10.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fdbf052a0783de01e944a6ce7a8cb939e295b1e7be835a1112c3b9a7f047a5a" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" [[package]] name = "unicode-width" @@ -5171,13 +5315,13 @@ dependencies = [ [[package]] name = "url" -version = "2.3.1" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" dependencies = [ "form_urlencoded", - "idna 0.3.0", - "percent-encoding 2.2.0", + "idna 0.4.0", + "percent-encoding 2.3.0", ] [[package]] @@ -5188,9 +5332,9 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" [[package]] name = "utf8parse" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" @@ -5227,12 +5371,11 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" [[package]] name = "walkdir" -version = "2.3.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" +checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" dependencies = [ "same-file", - "winapi 0.3.9", "winapi-util", ] @@ -5243,7 +5386,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230" dependencies = [ "futures", - "log 0.4.17", + "log 0.4.19", "try-lock", ] @@ -5267,9 +5410,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.83" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -5277,53 +5420,53 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.83" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", - "log 0.4.17", + "log 0.4.19", "once_cell", - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.83" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ - "quote 1.0.23", + "quote 1.0.29", "wasm-bindgen-macro-support", ] [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.83" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ - "proc-macro2 1.0.50", - "quote 1.0.23", - "syn 1.0.107", + "proc-macro2 1.0.63", + "quote 1.0.29", + "syn 2.0.23", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.83" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "web-sys" -version = "0.3.60" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -5432,11 +5575,29 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" +dependencies = [ + "windows-targets", +] + [[package]] name = "windows-sys" -version = "0.42.0" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" dependencies = [ "windows_aarch64_gnullvm", "windows_aarch64_msvc", @@ -5449,45 +5610,45 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" [[package]] name = "windows_aarch64_msvc" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" [[package]] name = "windows_i686_gnu" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" [[package]] name = "windows_i686_msvc" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" [[package]] name = "windows_x86_64_gnu" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" [[package]] name = "windows_x86_64_gnullvm" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" [[package]] name = "windows_x86_64_msvc" -version = "0.42.1" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] name = "winreg" @@ -5523,14 +5684,14 @@ dependencies = [ "oid-registry", "rusticata-macros", "thiserror", - "time 0.3.17", + "time 0.3.22", ] [[package]] name = "xml-rs" -version = "0.8.4" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3" +checksum = "5a56c84a8ccd4258aed21c92f70c0f6dea75356b6892ae27c24139da456f9336" [[package]] name = "yaml-rust" diff --git a/Cargo.toml b/Cargo.toml index d27f4ebc..1b22cf2e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,7 +38,8 @@ rustyline = "10.0" log = "0.4" env_logger = "0.9" hlua-badtouch = "0.4" -structopt = "0.3" +clap = { version = "4.3.11", features = ["derive", "env"] } +clap_complete = "4.3.2" failure = "0.1" rand = "0.8" colored = "2" diff --git a/examples/boxxy.rs b/examples/boxxy.rs index 522524f8..5f940171 100644 --- a/examples/boxxy.rs +++ b/examples/boxxy.rs @@ -1,6 +1,7 @@ -#[macro_use] extern crate boxxy; -extern crate sn0int; +#[macro_use] +extern crate boxxy; extern crate env_logger; +extern crate sn0int; fn stage1(sh: &mut boxxy::Shell, _args: Vec) -> Result<(), boxxy::Error> { shprintln!(sh, "[*] starting stage1"); @@ -14,8 +15,6 @@ fn main() { println!("stage1 activate sandbox"); - let toolbox = boxxy::Toolbox::new().with(vec![ - ("stage1", stage1), - ]); + let toolbox = boxxy::Toolbox::new().with(vec![("stage1", stage1)]); boxxy::Shell::new(toolbox).run() } diff --git a/examples/maxmind.rs b/examples/maxmind.rs index 026949b9..f3a67c90 100644 --- a/examples/maxmind.rs +++ b/examples/maxmind.rs @@ -1,19 +1,19 @@ +use clap::Parser; use sn0int::errors::*; use sn0int::geoip::{AsnDB, GeoIP, Maxmind}; use sn0int::paths; use std::net::IpAddr; use std::path::Path; -use structopt::StructOpt; -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum Args { - #[structopt(name="asn")] + #[command(name = "asn")] Asn(AsnArgs), - #[structopt(name="geoip")] + #[command(name = "geoip")] GeoIP(GeoIPArgs), } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AsnArgs { ip: IpAddr, } @@ -30,7 +30,7 @@ impl AsnArgs { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct GeoIPArgs { ip: IpAddr, } @@ -47,9 +47,8 @@ impl GeoIPArgs { } } - fn run() -> Result<()> { - let args = Args::from_args(); + let args = Args::parse(); debug!("{:?}", args); let cache_dir = paths::cache_dir()?; match args { diff --git a/examples/spinners.rs b/examples/spinners.rs index d5265afa..f8b086dc 100644 --- a/examples/spinners.rs +++ b/examples/spinners.rs @@ -1,21 +1,20 @@ +use clap::Parser; +use sn0int::term::{Spinner, StackedSpinners, SPINNERS}; use std::thread; use std::time::Duration; -use sn0int::term::{SPINNERS, Spinner, StackedSpinners}; -use structopt::StructOpt; - -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum Args { - #[structopt(name="single")] + #[command(name = "single")] Single(Single), - #[structopt(name="stacked")] + #[command(name = "stacked")] Stacked(Stacked), } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Single { idx: usize, - #[structopt(long="ticks", default_value="100")] + #[structopt(long = "ticks", default_value = "100")] ticks: usize, } @@ -32,9 +31,8 @@ impl Single { } } -#[derive(Debug, StructOpt)] -pub struct Stacked { -} +#[derive(Debug, Parser)] +pub struct Stacked {} impl Stacked { fn run(&self) { @@ -59,7 +57,7 @@ impl Stacked { } fn main() { - let args = Args::from_args(); + let args = Args::parse(); match args { Args::Single(args) => args.run(), Args::Stacked(args) => args.run(), diff --git a/sn0int-common/Cargo.toml b/sn0int-common/Cargo.toml index 4d5ccd65..9c9eef8e 100644 --- a/sn0int-common/Cargo.toml +++ b/sn0int-common/Cargo.toml @@ -13,3 +13,4 @@ serde = { version = "1.0", features=["derive"] } rocket_failure_errors = "0.2" anyhow = "1.0" nom = "7.0" +clap = { version = "4.3.11", features = ["derive"] } diff --git a/sn0int-common/src/id.rs b/sn0int-common/src/id.rs index 2323640d..d20e6b46 100644 --- a/sn0int-common/src/id.rs +++ b/sn0int-common/src/id.rs @@ -34,7 +34,7 @@ fn token(s: &str) -> nom::IResult<&str, &str> { nom::bytes::complete::take_while1(valid_char)(s) } -#[derive(Debug, PartialEq, Eq, Hash)] +#[derive(Debug, Clone, PartialEq, Eq, Hash)] pub struct ModuleID { pub author: String, pub name: String, diff --git a/sn0int-common/src/metadata/stealth.rs b/sn0int-common/src/metadata/stealth.rs index cbcbe3a6..34c0a218 100644 --- a/sn0int-common/src/metadata/stealth.rs +++ b/sn0int-common/src/metadata/stealth.rs @@ -1,8 +1,9 @@ +use clap::ValueEnum; use crate::errors::*; use serde::{Deserialize, Serialize}; use std::str::FromStr; -#[derive(Debug, Eq, PartialEq, PartialOrd, Clone, Serialize, Deserialize)] +#[derive(Debug, Eq, PartialEq, PartialOrd, Clone, ValueEnum, Serialize, Deserialize)] pub enum Stealth { Loud, Normal, diff --git a/src/args.rs b/src/args.rs index 5e4f37b7..a9d7cc62 100644 --- a/src/args.rs +++ b/src/args.rs @@ -1,18 +1,20 @@ +use clap::{CommandFactory, Parser}; +use clap_complete::Shell; use crate::cmd; +use crate::errors::*; use crate::options; use crate::workspaces::Workspace; -use structopt::StructOpt; -use structopt::clap::{AppSettings, Shell}; use sn0int_common::ModuleID; +use std::io; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] +#[command(version)] pub struct Args { /// Select a different workspace instead of the default - #[structopt(short="w", long="workspace", env="SN0INT_WORKSPACE")] + #[arg(short = 'w', long="workspace", env="SN0INT_WORKSPACE")] pub workspace: Option, - #[structopt(subcommand)] + #[command(subcommand)] pub subcommand: Option, } @@ -22,49 +24,49 @@ impl Args { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum SubCommand { /// Run a module directly - #[structopt(name="run")] + #[command(name="run")] Run(Run), /// For internal use - #[structopt(name="sandbox")] + #[command(name="sandbox")] Sandbox(Sandbox), /// Login to the registry for publishing - #[structopt(name="login")] + #[command(name="login")] Login(Login), /// Create a new module - #[structopt(name="new")] + #[command(name="new")] New(New), /// Publish a script to the registry - #[structopt(name="publish")] + #[command(name="publish")] Publish(Publish), /// Install a module from the registry - #[structopt(name="install")] + #[command(name="install")] Install(Install), /// Search in the registry - #[structopt(name="search")] + #[command(name="search")] Search(Search), /// The sn0int package manager - #[structopt(name="pkg")] + #[command(name="pkg")] Pkg(cmd::pkg_cmd::Args), /// Insert into the database - #[structopt(name="add")] + #[command(name="add")] Add(cmd::add_cmd::Args), /// Select from the database - #[structopt(name="select")] + #[command(name="select")] Select(cmd::select_cmd::Args), /// Delete from the database - #[structopt(name="delete")] + #[command(name="delete")] Delete(cmd::delete_cmd::Args), /// Query logged activity - #[structopt(name="activity")] + #[command(name="activity")] Activity(cmd::activity_cmd::Args), /// Include entities in the scope - #[structopt(name="scope")] + #[command(name="scope")] Scope(cmd::scope_cmd::Args), /// Exclude entities from scope - #[structopt(name="noscope")] + #[command(name="noscope")] Noscope(cmd::noscope_cmd::Args), /// Manage autoscope rules Autoscope(cmd::autoscope_cmd::Args), @@ -73,111 +75,123 @@ pub enum SubCommand { /// Rescope all entities based on autonoscope rules Rescope(cmd::rescope_cmd::Args), /// Manage workspaces - #[structopt(name="workspace")] + #[command(name="workspace")] Workspace(cmd::workspace_cmd::Args), /// Calendar - #[structopt(name="cal")] + #[command(name="cal")] Cal(cmd::cal_cmd::Args), /// Notify - #[structopt(name="notify")] + #[command(name="notify")] Notify(cmd::notify_cmd::Args), /// Verify blob storage for corrupt and dangling blobs - #[structopt(name="fsck")] + #[command(name="fsck")] Fsck(cmd::fsck_cmd::Args), /// Export a workspace for external processing - #[structopt(name="export")] + #[command(name="export")] Export(cmd::export_cmd::Args), /// Show statistics about your current workspace - #[structopt(name="stats")] + #[command(name="stats")] Stats(cmd::stats_cmd::Args), /// Run a lua repl - #[structopt(name="repl")] + #[command(name="repl")] Repl, /// Show paths of various file system locations - #[structopt(name="paths")] + #[command(name="paths")] Paths, /// Generate shell completions - #[structopt(name="completions")] + #[command(name="completions")] Completions(Completions), } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Run { - #[structopt(flatten)] + #[command(flatten)] pub run: cmd::run_cmd::Args, /// Run a module from a path - #[structopt(short="f", long="file")] + #[arg(short = 'f', long="file")] pub file: bool, /// Expose stdin to modules - #[structopt(long="stdin")] + #[arg(long="stdin")] pub stdin: bool, /// Automatically grant access to a keyring namespace - #[structopt(long="grant")] + #[arg(long="grant")] pub grants: Vec, /// Automatically grant access to all requested keys - #[structopt(long="grant-full-keyring")] + #[arg(long="grant-full-keyring")] pub grant_full_keyring: bool, /// Automatically deny access to all requested keys - #[structopt(long="deny-keyring")] + #[arg(long="deny-keyring")] pub deny_keyring: bool, /// Exit on first error and set exit code - #[structopt(short="x", long="exit-on-error")] + #[arg(short = 'x', long="exit-on-error")] pub exit_on_error: bool, /// Set an option - #[structopt(short="o", long="option")] + #[arg(short = 'o', long="option")] pub options: Vec, /// Narrow down targeted entities - #[structopt(short="t", long="target")] + #[arg(short = 't', long="target")] pub target: Option, /// Dump the sandbox init message to stdout instead of running a child process - #[structopt(long="dump-sandbox-init-msg")] + #[arg(long="dump-sandbox-init-msg")] pub dump_sandbox_init_msg: bool, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Sandbox { /// This value is only used for process listings _label: String, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Login { } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct New { /// Path to the new file pub path: String, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Publish { /// The scripts to publish - #[structopt(required = true)] + #[arg(required = true)] pub paths: Vec, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Install { /// The script to install pub module: ModuleID, /// Specify the version, defaults to the latest version pub version: Option, - #[structopt(short="f", long="force")] + #[arg(short = 'f', long="force")] pub force: bool, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Search { /// Only show modules that aren't installed yet - #[structopt(long="new")] + #[arg(long="new")] pub new: bool, /// The search query pub query: String, } -#[derive(Debug, StructOpt)] +/// Generate shell completions +#[derive(Debug, Parser)] pub struct Completions { - #[structopt(possible_values=&Shell::variants())] pub shell: Shell, } + +impl Completions { + pub fn generate(&self) -> Result<()> { + clap_complete::generate( + self.shell, + &mut Args::command(), + "sn0int", + &mut io::stdout(), + ); + Ok(()) + } +} diff --git a/src/autonoscope/mod.rs b/src/autonoscope/mod.rs index 90cd5e04..c7a72e70 100644 --- a/src/autonoscope/mod.rs +++ b/src/autonoscope/mod.rs @@ -205,7 +205,7 @@ impl RuleSet { } } -#[derive(Debug)] +#[derive(Debug, Clone)] pub enum RuleType { Domain, Ip, diff --git a/src/cal/mod.rs b/src/cal/mod.rs index 5a929d2d..1ab5f09f 100644 --- a/src/cal/mod.rs +++ b/src/cal/mod.rs @@ -1,10 +1,10 @@ -use crate::errors::*; -use std::str::FromStr; - pub mod date; pub mod time; -#[derive(Debug)] +use crate::errors::*; +use std::str::FromStr; + +#[derive(Debug, Clone)] pub enum DateArg { Month(u32), Num(i32), diff --git a/src/cmd/activity_cmd.rs b/src/cmd/activity_cmd.rs index 1bab3c37..3832f76b 100644 --- a/src/cmd/activity_cmd.rs +++ b/src/cmd/activity_cmd.rs @@ -1,17 +1,15 @@ -use crate::errors::*; - +use chrono::{Utc, NaiveDateTime, NaiveTime, Duration}; +use clap::Parser; use crate::cmd::Cmd; -use crate::shell::Shell; +use crate::errors::*; use crate::models::*; -use chrono::{Utc, NaiveDateTime, NaiveTime, Duration}; +use crate::shell::Shell; use regex::Regex; use std::convert::TryFrom; use std::io; use std::str::FromStr; -use structopt::StructOpt; -use structopt::clap::AppSettings; -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct TimeSpec { datetime: NaiveDateTime, } @@ -64,23 +62,22 @@ impl FromStr for TimeSpec { } } -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { /// Only query events for a given topic - #[structopt(short="t", long="topic")] + #[arg(short = 't', long="topic")] topic: Option, /// Only query events starting from that datetime - #[structopt(long="since")] + #[arg(long="since")] since: Option, /// Only query events until this datetime - #[structopt(long="until")] + #[arg(long="until")] until: Option, /// Try to select the previous event before --since as an initial state - #[structopt(short="i", long="initial")] + #[arg(short = 'i', long="initial")] initial: bool, /// Only query events that are tied to a location - #[structopt(short="l", long="location")] + #[arg(short = 'l', long="location")] location: bool, } diff --git a/src/cmd/add_cmd.rs b/src/cmd/add_cmd.rs index 190b61b5..9f7391e9 100644 --- a/src/cmd/add_cmd.rs +++ b/src/cmd/add_cmd.rs @@ -1,13 +1,11 @@ use crate::errors::*; - use crate::blobs::Blob; use crate::cmd::Cmd; use crate::db::DbChange; use crate::gfx; use crate::models::*; use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; use crate::utils; use crate::term; use std::fmt::Debug; @@ -18,62 +16,61 @@ use std::net::SocketAddr; use std::path::Path; use walkdir::WalkDir; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { - #[structopt(subcommand)] + #[command(subcommand)] subcommand: Target, /// Do not actually insert into database - #[structopt(short="n", long="dry-run")] + #[arg(short = 'n', long="dry-run")] dry_run: bool, /// Stream structs from stdin line by line - #[structopt(long)] + #[arg(long)] stdin: bool, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum Target { /// Insert domain into the database - #[structopt(name="domain")] + #[command(name="domain")] Domain(AddDomain), /// Insert subdomain into the database - #[structopt(name="subdomain")] + #[command(name="subdomain")] Subdomain(AddSubdomain), /// Insert ip address into the database - #[structopt(name="ipaddr")] + #[command(name="ipaddr")] IpAddr(AddIpAddr), /// Insert url into the database - #[structopt(name="url")] + #[command(name="url")] Url(AddUrl), /// Insert email into the database - #[structopt(name="email")] + #[command(name="email")] Email(AddEmail), /// Insert phonenumber into the database - #[structopt(name="phonenumber")] + #[command(name="phonenumber")] PhoneNumber(AddPhoneNumber), /// Insert device into the database - #[structopt(name="device")] + #[command(name="device")] Device(AddDevice), /// Insert network into the database - #[structopt(name="network")] + #[command(name="network")] Network(AddNetwork), /// Insert account into the database - #[structopt(name="account")] + #[command(name="account")] Account(AddAccount), /// Insert breach into the database - #[structopt(name="breach")] + #[command(name="breach")] Breach(AddBreach), /// Insert images into the database - #[structopt(name="image")] + #[command(name="image")] Image(AddImage), /// Insert ip network into the database - #[structopt(name="netblock")] + #[command(name="netblock")] Netblock(AddNetblock), /// Insert port into the database - #[structopt(name="port")] + #[command(name="port")] Port(AddPort), /// Insert a crypto currency address into the database - #[structopt(name="cryptoaddr")] + #[command(name="cryptoaddr")] CryptoAddr(AddCryptoAddr), } @@ -153,7 +150,7 @@ trait IntoInsert: Sized { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddDomain { domain: Option, } @@ -185,7 +182,7 @@ impl InsertFromString for AddDomain { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddSubdomain { subdomain: Option, } @@ -222,7 +219,7 @@ impl InsertFromString for AddSubdomain { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddIpAddr { ipaddr: Option, } @@ -269,7 +266,7 @@ impl InsertFromString for AddIpAddr { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddUrl { url: Option, } @@ -323,7 +320,7 @@ impl InsertFromString for AddUrl { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddEmail { email: Option, } @@ -350,7 +347,7 @@ impl InsertFromString for AddEmail { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddPhoneNumber { phonenumber: Option, name: Option, @@ -405,7 +402,7 @@ impl InsertFromString for AddPhoneNumber { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddDevice { mac: Option, name: Option, @@ -435,7 +432,7 @@ impl IntoInsert for AddDevice { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddNetwork { network: Option, latitude: Option, @@ -464,7 +461,7 @@ impl IntoInsert for AddNetwork { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddAccount { service: Option, username: Option, @@ -506,7 +503,7 @@ impl IntoInsert for AddAccount { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddBreach { name: Option, } @@ -525,7 +522,7 @@ impl IntoInsert for AddBreach { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddImage { paths: Vec, } @@ -624,7 +621,7 @@ impl IntoInsert for AddImage { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddNetblock { ipnet: Option, } @@ -655,7 +652,7 @@ impl IntoInsert for AddNetblock { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddPort { protocol: Option, addr: Option, @@ -730,7 +727,7 @@ impl InsertFromString for AddPort { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct AddCryptoAddr { address: Option, } diff --git a/src/cmd/autonoscope_cmd.rs b/src/cmd/autonoscope_cmd.rs index 629013f7..44d26fca 100644 --- a/src/cmd/autonoscope_cmd.rs +++ b/src/cmd/autonoscope_cmd.rs @@ -1,37 +1,35 @@ use crate::errors::*; - use crate::autonoscope; use crate::cmd::Cmd; use crate::fmt::colors::*; use crate::shell::Shell; use std::fmt::Write; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] +#[group(skip)] pub struct Args { - #[structopt(subcommand)] + #[command(subcommand)] subcommand: Subcommand, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum Subcommand { - #[structopt(name="add")] + #[command(name="add")] Add(Add), - #[structopt(name="delete")] + #[command(name="delete")] Delete(Delete), - #[structopt(name="list")] + #[command(name="list")] List, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Add { object: autonoscope::RuleType, value: String, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Delete { object: autonoscope::RuleType, value: String, diff --git a/src/cmd/autoscope_cmd.rs b/src/cmd/autoscope_cmd.rs index 2e6f7342..664371df 100644 --- a/src/cmd/autoscope_cmd.rs +++ b/src/cmd/autoscope_cmd.rs @@ -1,11 +1,10 @@ -use crate::errors::*; - +use clap::Parser; use crate::cmd::Cmd; use crate::cmd::autonoscope_cmd; +use crate::errors::*; use crate::shell::Shell; -use structopt::StructOpt; -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Args { #[structopt(flatten)] args: autonoscope_cmd::Args, diff --git a/src/cmd/cal_cmd.rs b/src/cmd/cal_cmd.rs index 27846874..322c25c3 100644 --- a/src/cmd/cal_cmd.rs +++ b/src/cmd/cal_cmd.rs @@ -1,5 +1,4 @@ use crate::errors::*; - use chrono::Utc; use crate::cal::DateArg; use crate::cal::date::{DateContext, DateSpec}; @@ -7,21 +6,18 @@ use crate::cal::time::{DateTimeContext, DateTimeSpec}; use crate::cmd::Cmd; use crate::models::*; use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; - +use clap::Parser; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { /// Show additional months for context - #[structopt(short="C", long)] + #[arg(short = 'C', long)] context: Option, /// Group events in 12 min slices - #[structopt(short="T", long, group = "view")] + #[arg(short = 'T', long, group = "view")] time: bool, /// Group events by hour - #[structopt(short="H", long, group = "view")] + #[arg(short = 'H', long, group = "view")] hourly: bool, args: Vec, } diff --git a/src/cmd/delete_cmd.rs b/src/cmd/delete_cmd.rs index bf0d5dfd..be781bde 100644 --- a/src/cmd/delete_cmd.rs +++ b/src/cmd/delete_cmd.rs @@ -1,16 +1,12 @@ use crate::errors::*; - use crate::cmd::Cmd; use crate::filters::{Target, Filter}; use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; use crate::models::*; use crate::term; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { #[structopt(subcommand)] subcommand: Target, diff --git a/src/cmd/export_cmd.rs b/src/cmd/export_cmd.rs index 78b03346..3e0f25ff 100644 --- a/src/cmd/export_cmd.rs +++ b/src/cmd/export_cmd.rs @@ -1,21 +1,19 @@ -use crate::errors::*; - +use clap::Parser; +use clap::ValueEnum; use crate::blobs::Blob; use crate::cmd::Cmd; use crate::db::ttl; +use crate::errors::*; use crate::models::*; use crate::shell::Shell; use serde::{Serialize, Deserialize}; use std::io::{self, Write}; -use structopt::StructOpt; -use structopt::clap::AppSettings; use strum_macros::{EnumString, IntoStaticStr}; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { /// Specify the export format - #[structopt(short="f", long="format", possible_values=Format::variants())] + #[arg(short = 'f', long="format", value_enum)] format: Format, } @@ -37,7 +35,7 @@ fn export(rl: &mut Shell) -> Result<()> { Ok(()) } -#[derive(Debug, Serialize, Deserialize)] +#[derive(Debug, Clone, ValueEnum, Serialize, Deserialize)] #[derive(EnumString, IntoStaticStr)] #[strum(serialize_all = "kebab_case")] pub enum Format { @@ -45,17 +43,6 @@ pub enum Format { JsonBlobs, } -impl Format { - // TODO: this function should be generated by strum instead - #[inline] - fn variants() -> &'static [&'static str] { - &[ - "json", - "json-blobs", - ] - } -} - trait ExportFormat { fn load(rl: &mut Shell) -> Result>; } diff --git a/src/cmd/fsck_cmd.rs b/src/cmd/fsck_cmd.rs index 18f1e37e..c680e0bc 100644 --- a/src/cmd/fsck_cmd.rs +++ b/src/cmd/fsck_cmd.rs @@ -1,25 +1,23 @@ -use crate::errors::*; - +use clap::{ArgAction, Parser}; use crate::blobs::Blob; use crate::cmd::Cmd; +use crate::errors::*; +use crate::models::*; use crate::shell::Shell; use crate::term; use crate::worker; -use crate::models::*; use std::collections::HashSet; -use structopt::StructOpt; - -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Args { /// Verbose output - #[structopt(short="v", long="verbose", parse(from_occurrences))] - verbose: u64, + #[arg(short = 'v', long="verbose", action(ArgAction::Count))] + verbose: u8, /// Delete only dangling blobs - #[structopt(long="gc")] + #[arg(long="gc")] gc: bool, /// Delete dangling and corrupted blobs - #[structopt(long="gc-all")] + #[arg(long="gc-all")] gc_all: bool, } diff --git a/src/cmd/keyring_cmd.rs b/src/cmd/keyring_cmd.rs index 090bc4d1..b61547d7 100644 --- a/src/cmd/keyring_cmd.rs +++ b/src/cmd/keyring_cmd.rs @@ -1,56 +1,47 @@ +use clap::Parser; use crate::errors::*; - use crate::keyring::{KeyName, KeyRing}; use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; use crate::utils; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub enum Args { - #[structopt(name="add")] /// Add a new key to the keyring Add(KeyRingAdd), - #[structopt(name="delete")] /// Delete a key from the keyring Delete(KeyRingDelete), - #[structopt(name="get")] /// Get a key from the keyring Get(KeyRingGet), - #[structopt(name="list")] /// List keys in the keyring List(KeyRingList), } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct KeyRingAdd { key: KeyName, secret: Option, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct KeyRingDelete { key: KeyName, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct KeyRingGet { key: KeyName, - #[structopt(short="q", - long="quiet")] + #[arg(short = 'q', long="quiet")] /// Only output secret key quiet: bool, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct KeyRingList { namespace: Option, } pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Args::from_iter_safe(args)?; + let args = Args::try_parse_from(args)?; match args { Args::Add(add) => keyring_add(rl, add), Args::Delete(delete) => keyring_delete(rl, delete), diff --git a/src/cmd/mod.rs b/src/cmd/mod.rs index 3f402d6f..bba9a6a5 100644 --- a/src/cmd/mod.rs +++ b/src/cmd/mod.rs @@ -2,17 +2,17 @@ use crate::errors::*; use crate::shell::Shell; use crate::config::Config; -pub trait Cmd: structopt::StructOpt + Sized { +pub trait Cmd: clap::Parser + Sized { fn run(self, rl: &mut Shell) -> Result<()>; #[inline] fn run_str(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Self::from_iter_safe(args)?; + let args = Self::try_parse_from(args)?; args.run(rl) } } -pub trait LiteCmd: structopt::StructOpt + Sized { +pub trait LiteCmd: clap::Parser + Sized { fn run(self, config: &Config) -> Result<()>; } diff --git a/src/cmd/noscope_cmd.rs b/src/cmd/noscope_cmd.rs index 5ead7154..5be60dcb 100644 --- a/src/cmd/noscope_cmd.rs +++ b/src/cmd/noscope_cmd.rs @@ -1,18 +1,14 @@ -use crate::errors::*; - +use clap::Parser; use crate::cmd::Cmd; +use crate::errors::*; use crate::filters::{Target, Filter}; -use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; use crate::models::*; +use crate::shell::Shell; use crate::term; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { - #[structopt(subcommand)] + #[command(subcommand)] subcommand: Target, } @@ -40,7 +36,7 @@ impl Cmd for Args { } pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Args::from_iter_safe(args)?; + let args = Args::try_parse_from(args)?; args.run(rl) } diff --git a/src/cmd/notify_cmd.rs b/src/cmd/notify_cmd.rs index be050d28..251259af 100644 --- a/src/cmd/notify_cmd.rs +++ b/src/cmd/notify_cmd.rs @@ -1,24 +1,21 @@ -use crate::errors::*; - +use clap::{ArgAction, Parser}; use crate::cmd::Cmd; use crate::engine::Module; +use crate::errors::*; use crate::notify::{self, Notification}; use crate::options::{self, Opt}; use crate::shell::Shell; use crate::term; use sn0int_std::ratelimits::Ratelimiter; use std::fmt::Write; -use structopt::StructOpt; -use structopt::clap::AppSettings; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { - #[structopt(subcommand)] + #[command(subcommand)] subcommand: Subcommand, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum Subcommand { /// Manually add a notification to the outbox Send(SendArgs), @@ -30,24 +27,24 @@ pub enum Subcommand { Deliver, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct SendArgs { /// Evaluate the routing rules, but do not actually send a notification - #[structopt(short="n", long)] + #[arg(short = 'n', long)] pub dry_run: bool, pub topic: String, - #[structopt(flatten)] + #[command(flatten)] pub notification: Notification, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct ExecArgs { pub module: String, - #[structopt(short="o", long="option")] + #[arg(short = 'o', long="option")] pub options: Vec, - #[structopt(short="v", long="verbose", parse(from_occurrences))] - verbose: u64, - #[structopt(flatten)] + #[arg(short = 'v', long="verbose", action(ArgAction::Count))] + verbose: u8, + #[command(flatten)] pub notification: Notification, } diff --git a/src/cmd/pkg_cmd.rs b/src/cmd/pkg_cmd.rs index 49b4b6be..abb1f102 100644 --- a/src/cmd/pkg_cmd.rs +++ b/src/cmd/pkg_cmd.rs @@ -1,5 +1,4 @@ use crate::errors::*; - use crate::args::Install; use crate::api::Client; use crate::args; @@ -16,80 +15,76 @@ use sn0int_common::metadata::Stealth; use std::collections::HashSet; use std::fmt::Write; use std::sync::Arc; -use structopt::StructOpt; -use structopt::clap::AppSettings; - +use clap::Parser; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { - #[structopt(subcommand)] + #[command(subcommand)] pub subcommand: SubCommand, } -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct ArgsInteractive { - #[structopt(subcommand)] + #[command(subcommand)] pub subcommand: SubCommandInteractive, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum SubCommand { /// List installed modules - #[structopt(name="list")] + #[command(name="list")] List(List), /// Install module from registry - #[structopt(name="install")] + #[command(name="install")] Install(args::Install), /// Search modules in registry - #[structopt(name="search")] + #[command(name="search")] Search(args::Search), /// Update modules - #[structopt(name="update")] + #[command(name="update")] Update(Update), /// Uninstall a module - #[structopt(name="uninstall")] + #[command(name="uninstall")] Uninstall(Uninstall), /// Install all featured modules - #[structopt(name="quickstart")] + #[command(name="quickstart")] Quickstart, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum SubCommandInteractive { - #[structopt(flatten)] + #[command(flatten)] Base(SubCommand), /// Reload modules - #[structopt(name="reload")] + #[command(name="reload")] Reload(Reload), } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct List { /// Only show modules with a specific input source - #[structopt(long="source")] + #[arg(long="source")] pub source: Option, /// List outdated modules - #[structopt(long="outdated")] + #[arg(long="outdated")] pub outdated_only: bool, /// Only show modules with equal or better stealth level - #[structopt(long="stealth", possible_values=Stealth::variants())] + #[arg(long="stealth", value_enum)] pub stealth: Option, /// Filter by pattern - #[structopt(default_value="*")] + #[arg(default_value="*")] pub pattern: String, } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Reload { } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Update { } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Uninstall { module: ModuleID, } diff --git a/src/cmd/quickstart_cmd.rs b/src/cmd/quickstart_cmd.rs index e1a2919e..650b62a6 100644 --- a/src/cmd/quickstart_cmd.rs +++ b/src/cmd/quickstart_cmd.rs @@ -1,20 +1,16 @@ use crate::errors::*; - use crate::cmd::Cmd; use crate::cmd::pkg_cmd::{ArgsInteractive as PkgArgs, SubCommand, SubCommandInteractive}; use crate::shell::Shell; use crate::term; -use structopt::StructOpt; -use structopt::clap::AppSettings; - +use clap::Parser; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { } pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let _args = Args::from_iter_safe(args)?; + let _args = Args::try_parse_from(args)?; term::warn("The \x1b[1mquickstart\x1b[0m command is deprecated, use \x1b[1mpkg quickstart\x1b[0m"); diff --git a/src/cmd/rescope_cmd.rs b/src/cmd/rescope_cmd.rs index fdbd27a6..c62af13c 100644 --- a/src/cmd/rescope_cmd.rs +++ b/src/cmd/rescope_cmd.rs @@ -7,26 +7,24 @@ use crate::filters::{Filter, Target}; use crate::shell::Shell; use std::collections::HashSet; use std::fmt; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; use crate::models::*; use crate::utils; use crate::term; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { /// Run rules interactively - #[structopt(short, long)] + #[arg(short, long)] interactive: bool, /// Automatically apply changes to database - #[structopt(short="y", long)] + #[arg(short='y', long)] auto_confirm: bool, /// Only show changes, do not apply them to the database - #[structopt(short="n", long)] + #[arg(short='n', long)] dry_run: bool, /// Only rescope entities matching specific filter - #[structopt(subcommand)] + #[command(subcommand)] target: Option, } diff --git a/src/cmd/run_cmd.rs b/src/cmd/run_cmd.rs index 80223cd2..ecb8b429 100644 --- a/src/cmd/run_cmd.rs +++ b/src/cmd/run_cmd.rs @@ -1,15 +1,15 @@ -use crate::errors::*; - use chrootable_https::dns::Resolver; +use clap::{ArgAction, Parser}; use crate::args; use crate::blobs::{Blob, BlobStorage}; use crate::cmd::Cmd; use crate::db::{ttl, Filter}; use crate::engine::Module; +use crate::errors::*; use crate::ipc::common::StartCommand; +use crate::keyring::KeyRing; use crate::models::*; use crate::shell::Shell; -use crate::keyring::KeyRing; use crate::term; use crate::utils; use crate::worker; @@ -18,27 +18,23 @@ use sn0int_common::metadata::Source; use sn0int_std::ratelimits::Ratelimiter; use std::collections::HashMap; use std::net::SocketAddr; -use structopt::StructOpt; -use structopt::clap::AppSettings; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { /// Execute a module that has been installed pub module: Option, /// Run investigations concurrently - #[structopt(short="j", default_value="1")] + #[arg(short = 'j', default_value="1")] pub threads: usize, /// Verbose logging, once to print inserts even if they don't add new /// data, twice to activate the debug() function - #[structopt(short="v", long, parse(from_occurrences))] - pub verbose: u64, + #[arg(short = 'v', long, action(ArgAction::Count))] + pub verbose: u8, /// Set a specific socks5 proxy to use - #[structopt(short="X", long)] + #[arg(short = 'X', long)] pub proxy: Option, /// Set a different default user agent - #[structopt(long)] + #[arg(long)] pub user_agent: Option, } @@ -46,7 +42,7 @@ pub struct Args { pub struct Params<'a> { pub module: Option<&'a String>, pub threads: usize, - pub verbose: u64, + pub verbose: u8, pub stdin: bool, pub grants: &'a [String], pub grant_full_keyring: bool, diff --git a/src/cmd/scope_cmd.rs b/src/cmd/scope_cmd.rs index fa86fd6e..9c6a4401 100644 --- a/src/cmd/scope_cmd.rs +++ b/src/cmd/scope_cmd.rs @@ -1,18 +1,14 @@ use crate::errors::*; - use crate::cmd::Cmd; use crate::filters::{Target, Filter}; use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; use crate::models::*; use crate::term; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { - #[structopt(subcommand)] + #[command(subcommand)] subcommand: Target, } @@ -40,7 +36,7 @@ impl Cmd for Args { } pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Args::from_iter_safe(args)?; + let args = Args::try_parse_from(args)?; args.run(rl) } diff --git a/src/cmd/select_cmd.rs b/src/cmd/select_cmd.rs index 7f22554e..75482b4f 100644 --- a/src/cmd/select_cmd.rs +++ b/src/cmd/select_cmd.rs @@ -1,17 +1,13 @@ -use crate::errors::*; - +use clap::Parser; use crate::cmd::Cmd; use crate::db::ttl; +use crate::errors::*; use crate::filters::{Target, Filter}; +use crate::models::*; use crate::shell::Shell; use serde::Serialize; -use structopt::StructOpt; -use structopt::clap::AppSettings; -use crate::models::*; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { #[structopt(subcommand)] subcommand: Target, @@ -25,7 +21,7 @@ pub struct Args { #[structopt(long, group="output")] paths: bool, /// Count rows returned - #[structopt(short="c", group="output")] + #[structopt(short = 'c', group="output")] count: bool, } diff --git a/src/cmd/set_cmd.rs b/src/cmd/set_cmd.rs index 5532fe18..b62730d7 100644 --- a/src/cmd/set_cmd.rs +++ b/src/cmd/set_cmd.rs @@ -1,12 +1,8 @@ +use clap::Parser; use crate::errors::*; - use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { key: Option, value: Option, @@ -15,7 +11,7 @@ pub struct Args { // TODO: maybe introduce global settings // TODO: maybe allow setting jobs here as well in addition to -j pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Args::from_iter_safe(args)?; + let args = Args::try_parse_from(args)?; let options = rl.options_mut() .ok_or_else(|| format_err!("Module needs to be selected first"))?; diff --git a/src/cmd/stats_cmd.rs b/src/cmd/stats_cmd.rs index 0adff848..10a06bb5 100644 --- a/src/cmd/stats_cmd.rs +++ b/src/cmd/stats_cmd.rs @@ -10,23 +10,21 @@ use crate::workspaces; use humansize::{FileSize, file_size_opts}; use separator::Separatable; use serde::{Serialize, Deserialize}; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; -#[derive(Debug, Clone, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Clone, Parser)] pub struct Args { /// Exclude blob storage - #[structopt(short, long)] + #[arg(short, long)] short: bool, /// Exclude categories that don't contain any structs - #[structopt(short, long)] + #[arg(short, long)] quiet: bool, /// Show workspace statistics in json - #[structopt(short, long)] + #[arg(short, long)] json: bool, /// Go through all workspaces - #[structopt(short, long)] + #[arg(short, long)] all: bool, } diff --git a/src/cmd/target_cmd.rs b/src/cmd/target_cmd.rs index 6b3a5d49..b6115494 100644 --- a/src/cmd/target_cmd.rs +++ b/src/cmd/target_cmd.rs @@ -3,14 +3,12 @@ use crate::errors::*; use crate::db; use crate::shell::Shell; use sn0int_common::metadata::Source; -use structopt::StructOpt; -use structopt::clap::AppSettings; +use clap::Parser; use crate::term; use crate::models::*; -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { // TODO: target -p # print current filter // TODO: target -c # clear filter @@ -19,7 +17,7 @@ pub struct Args { } pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Args::from_iter_safe(args)?; + let args = Args::try_parse_from(args)?; let source = rl.module() .ok_or_else(|| format_err!("No module selected")) diff --git a/src/cmd/use_cmd.rs b/src/cmd/use_cmd.rs index e250ee5d..f35b2e93 100644 --- a/src/cmd/use_cmd.rs +++ b/src/cmd/use_cmd.rs @@ -1,18 +1,14 @@ +use clap::Parser; use crate::errors::*; - use crate::shell::Shell; -use structopt::StructOpt; -use structopt::clap::AppSettings; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { module: String, } pub fn run(rl: &mut Shell, args: &[String]) -> Result<()> { - let args = Args::from_iter_safe(args)?; + let args = Args::try_parse_from(args)?; let module = rl.library().get(&args.module)?.clone(); rl.set_module(module); diff --git a/src/cmd/workspace_cmd.rs b/src/cmd/workspace_cmd.rs index 1602a8f2..b22fb0df 100644 --- a/src/cmd/workspace_cmd.rs +++ b/src/cmd/workspace_cmd.rs @@ -1,28 +1,24 @@ -use crate::errors::*; - +use clap::Parser; use crate::blobs::BlobStorage; use crate::cmd::{Cmd, LiteCmd}; use crate::config::Config; use crate::db::Database; +use crate::errors::*; use crate::shell::Shell; use crate::term; use crate::utils; -use structopt::StructOpt; -use structopt::clap::AppSettings; use crate::workspaces::{self, Workspace}; - -#[derive(Debug, StructOpt)] -#[structopt(global_settings = &[AppSettings::ColoredHelp])] +#[derive(Debug, Parser)] pub struct Args { /// Delete a workspaceb - #[structopt(long = "delete", group = "action")] + #[arg(long = "delete", group = "action")] delete: bool, /// Show disk usage of workspace - #[structopt(long = "usage", group = "action")] + #[arg(long = "usage", group = "action")] usage: bool, /// Skip confirmation - #[structopt(short = "f", long = "force")] + #[arg(short = 'f', long = "force")] force: bool, workspaces: Vec, } diff --git a/src/engine/ctx.rs b/src/engine/ctx.rs index d10e11c0..c35c8b6f 100644 --- a/src/engine/ctx.rs +++ b/src/engine/ctx.rs @@ -38,7 +38,7 @@ pub trait State { fn recv(&self) -> Result; - fn verbose(&self) -> u64; + fn verbose(&self) -> u8; #[inline] fn info(&self, msg: String) { @@ -208,7 +208,7 @@ pub struct LuaState { http_sessions: Mutex>, http_clients: Mutex>>>, - verbose: u64, + verbose: u8, keyring: Vec, // TODO: maybe hashmap dns_config: Resolver, psl: Mutex>>, @@ -247,7 +247,7 @@ impl State for LuaState { tx.recv() } - fn verbose(&self) -> u64 { + fn verbose(&self) -> u8 { self.verbose } diff --git a/src/engine/mod.rs b/src/engine/mod.rs index cae58907..45365c16 100644 --- a/src/engine/mod.rs +++ b/src/engine/mod.rs @@ -30,7 +30,7 @@ pub use sn0int_std::engine::structs; /// Data that is passed to every script #[derive(Debug)] pub struct Environment { - pub verbose: u64, + pub verbose: u8, pub keyring: Vec, pub dns_config: Resolver, pub proxy: Option, diff --git a/src/filters.rs b/src/filters.rs index 71d700d2..782f4b22 100644 --- a/src/filters.rs +++ b/src/filters.rs @@ -1,52 +1,50 @@ use crate::errors::*; - use crate::db; -use structopt::StructOpt; - +use clap::Parser; -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub enum Target { /// On domains - #[structopt(name="domains")] + #[command(name="domains")] Domains(Filter), /// On subdomains - #[structopt(name="subdomains")] + #[command(name="subdomains")] Subdomains(Filter), /// On ipaddrs - #[structopt(name="ipaddrs")] + #[command(name="ipaddrs")] IpAddrs(Filter), /// On urls - #[structopt(name="urls")] + #[command(name="urls")] Urls(Filter), /// On emails - #[structopt(name="emails")] + #[command(name="emails")] Emails(Filter), /// On phone numbers - #[structopt(name="phonenumbers")] + #[command(name="phonenumbers")] PhoneNumbers(Filter), /// On devices - #[structopt(name="devices")] + #[command(name="devices")] Devices(Filter), /// On networks - #[structopt(name="networks")] + #[command(name="networks")] Networks(Filter), /// On accounts - #[structopt(name="accounts")] + #[command(name="accounts")] Accounts(Filter), /// On breaches - #[structopt(name="breaches")] + #[command(name="breaches")] Breaches(Filter), /// On images - #[structopt(name="images")] + #[command(name="images")] Images(Filter), /// On ports - #[structopt(name="ports")] + #[command(name="ports")] Ports(Filter), /// On ipnets - #[structopt(name="netblocks")] + #[command(name="netblocks")] Netblocks(Filter), /// On crypto currency addresses - #[structopt(name="cryptoaddrs")] + #[command(name="cryptoaddrs")] CryptoAddrs(Filter), } @@ -100,7 +98,7 @@ impl Target { } } -#[derive(Debug, StructOpt)] +#[derive(Debug, Parser)] pub struct Filter { args: Vec, } diff --git a/src/ipc/common.rs b/src/ipc/common.rs index 90eaee79..5ab1f4ad 100644 --- a/src/ipc/common.rs +++ b/src/ipc/common.rs @@ -8,7 +8,7 @@ use std::net::SocketAddr; #[derive(Debug, Serialize, Deserialize)] pub struct StartCommand { - pub verbose: u64, + pub verbose: u8, pub keyring: Vec, pub dns_config: Resolver, pub proxy: Option, @@ -20,7 +20,7 @@ pub struct StartCommand { } impl StartCommand { - pub fn new(verbose: u64, + pub fn new(verbose: u8, keyring: Vec, dns_config: Resolver, proxy: Option, diff --git a/src/ipc/parent.rs b/src/ipc/parent.rs index c936834f..98e1724a 100644 --- a/src/ipc/parent.rs +++ b/src/ipc/parent.rs @@ -106,7 +106,7 @@ pub fn run(module: Module, tx: &EventSender, arg: serde_json::Value, keyring: Vec, - verbose: u64, + verbose: u8, has_stdin: bool, proxy: Option, user_agent: Option, diff --git a/src/keyring.rs b/src/keyring.rs index 83620765..1cfb2715 100644 --- a/src/keyring.rs +++ b/src/keyring.rs @@ -13,7 +13,7 @@ use std::path::{Path, PathBuf}; use sn0int_common::ModuleID; -#[derive(Debug, PartialEq, Serialize, Deserialize)] +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] pub struct KeyName { pub namespace: String, pub name: String, diff --git a/src/main.rs b/src/main.rs index b2d4462e..86784389 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,7 @@ use env_logger::Env; use sn0int::args::{self, Args, SubCommand}; use sn0int::auth; +use clap::Parser; use sn0int::cmd::{self, LiteCmd}; use sn0int::cmd::run_cmd::Params; use sn0int::config::Config; @@ -15,8 +16,7 @@ use sn0int::psl::PslReader; use sn0int::registry; use sn0int::repl; use sn0int::sandbox; -use sn0int::shell::{self, complete}; -use structopt::StructOpt; +use sn0int::shell; use std::fs::OpenOptions; use std::io::Write; use std::path::Path; @@ -99,7 +99,7 @@ end } fn run() -> Result<()> { - let mut args = Args::from_args(); + let mut args = Args::parse(); if !args.is_sandbox() { sandbox::fasten_seatbelt()?; @@ -142,7 +142,7 @@ fn run() -> Result<()> { Some(SubCommand::Stats(stats)) => run_cmd(&args, stats, &config), Some(SubCommand::Repl) => repl::run(&config), Some(SubCommand::Paths) => paths::run(&config), - Some(SubCommand::Completions(completions)) => complete::run_generate(&completions), + Some(SubCommand::Completions(completions)) => completions.generate(), None => shell::run(&args, &config), } } diff --git a/src/notify/mod.rs b/src/notify/mod.rs index 1210f733..2d0fa21c 100644 --- a/src/notify/mod.rs +++ b/src/notify/mod.rs @@ -1,22 +1,22 @@ mod rules; -use crate::errors::*; -use crate::cmd::run_cmd::prepare_keyring; +use clap::Parser; use crate::cmd::run_cmd::Params; +use crate::cmd::run_cmd::prepare_keyring; use crate::engine::Module; +use crate::errors::*; use crate::options; use crate::shell::Shell; use crate::term::SpinLogger; use crate::worker; use self::rules::Glob; use serde::{Serialize, Deserialize}; -use structopt::StructOpt; use sn0int_common::metadata::Source; use sn0int_std::blobs::Blob; use sn0int_std::ratelimits::Ratelimiter; use std::collections::HashMap; -#[derive(Debug, StructOpt, Serialize)] +#[derive(Debug, Parser, Serialize)] pub struct Notification { pub subject: String, pub body: Option, @@ -79,7 +79,7 @@ fn prepare_arg(notification: &Notification) -> Result<(serde_json::Value, Option Ok((arg, None, vec![])) } -pub fn exec(rl: &mut Shell, module: &Module, ratelimit: &mut Ratelimiter, options: HashMap, verbose: u64, notification: &Notification) -> Result { +pub fn exec(rl: &mut Shell, module: &Module, ratelimit: &mut Ratelimiter, options: HashMap, verbose: u8, notification: &Notification) -> Result { let module_name = module.canonical(); debug!("Setting up notification execution with {:?}", module_name); diff --git a/src/shell/complete.rs b/src/shell/complete.rs index cdf30808..d85c026f 100644 --- a/src/shell/complete.rs +++ b/src/shell/complete.rs @@ -1,18 +1,13 @@ -use crate::args::{Args, Completions}; use crate::autonoscope::RuleType; -use crate::errors::*; use rustyline::{self, Context}; use rustyline::completion::Completer; use rustyline::highlight::Highlighter; use rustyline::hint::Hinter; use std::borrow::Cow::{self, Owned}; use std::str::FromStr; -use std::io::stdout; -use structopt::StructOpt; use crate::shell::Command; use crate::workspaces; - #[derive(Debug, Default)] pub struct CmdCompleter { pub modules: Vec, @@ -318,8 +313,3 @@ impl Highlighter for CmdCompleter { impl rustyline::Helper for CmdCompleter {} impl rustyline::validate::Validator for CmdCompleter {} - -pub fn run_generate(args: &Completions) -> Result<()> { - Args::clap().gen_completions_to("sn0int", args.shell, &mut stdout()); - Ok(()) -} diff --git a/src/worker.rs b/src/worker.rs index a90ac1b6..fffdfee3 100644 --- a/src/worker.rs +++ b/src/worker.rs @@ -199,7 +199,7 @@ impl DatabaseEvent { Self::notify(rl, spinner, ratelimit, &topic, subject); } - fn on_activity(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, object: &NewActivity, verbose: u64) { + fn on_activity(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, object: &NewActivity, verbose: u8) { Self::spinner_log_new_activity(spinner, object, verbose); // TODO: we don't want to copy the match arms everywhere @@ -211,7 +211,7 @@ impl DatabaseEvent { Self::notify(rl, spinner, ratelimit, &topic, subject); } - fn spinner_log_new_activity(spinner: &mut T, object: &NewActivity, verbose: u64) { + fn spinner_log_new_activity(spinner: &mut T, object: &NewActivity, verbose: u8) { let mut log = format!("{:?} ", object.topic); if let Some(uniq) = &object.uniq { write!(log, "({:?}) ", uniq).expect("out of memory"); @@ -233,7 +233,7 @@ impl DatabaseEvent { spinner.log(&log); } - fn insert(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, object: Insert, ttl: Option, tx: DbSender, verbose: u64) { + fn insert(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, object: Insert, ttl: Option, tx: DbSender, verbose: u8) { let db = rl.db(); if verbose >= 1 { spinner.debug(&format!("Inserting: {:?}", object)); @@ -299,7 +299,7 @@ impl DatabaseEvent { } - pub fn activity(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, object: NewActivity, tx: DbSender, verbose: u64) { + pub fn activity(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, object: NewActivity, tx: DbSender, verbose: u8) { let db = rl.db(); let result = db.insert_activity(object.clone()); debug!("{:?} => {:?}", object, result); @@ -320,7 +320,7 @@ impl DatabaseEvent { tx.send(result).expect("Failed to send db result to channel"); } - pub fn update(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, family: &str, value: &str, update: &Update, tx: DbSender, verbose: u64) { + pub fn update(rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, family: &str, value: &str, update: &Update, tx: DbSender, verbose: u8) { let db = rl.db(); if verbose >= 1 { spinner.debug(&format!("Updating: {:?}", update)); @@ -344,7 +344,7 @@ impl DatabaseEvent { tx.send(result).expect("Failed to send db result to channel"); } - pub fn apply(self, rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, tx: DbSender, verbose: u64) { + pub fn apply(self, rl: &mut Shell, spinner: &mut T, ratelimit: &mut Ratelimiter, tx: DbSender, verbose: u8) { match self { DatabaseEvent::Insert(object) => Self::insert(rl, spinner, ratelimit, object, None, tx, verbose), DatabaseEvent::InsertTtl((object, ttl)) => Self::insert(rl, spinner, ratelimit, object, Some(ttl), tx, verbose),