summaryrefslogtreecommitdiffstats
path: root/vendor/prodash
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:19 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:19 +0000
commita0b8f38ab54ac451646aa00cd5e91b6c76f22a84 (patch)
treefc451898ccaf445814e26b46664d78702178101d /vendor/prodash
parentAdding debian version 1.71.1+dfsg1-2. (diff)
downloadrustc-a0b8f38ab54ac451646aa00cd5e91b6c76f22a84.tar.xz
rustc-a0b8f38ab54ac451646aa00cd5e91b6c76f22a84.zip
Merging upstream version 1.72.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/prodash')
-rw-r--r--vendor/prodash/.cargo-checksum.json2
-rw-r--r--vendor/prodash/CHANGELOG.md77
-rw-r--r--vendor/prodash/Cargo.lock439
-rw-r--r--vendor/prodash/Cargo.toml9
-rw-r--r--vendor/prodash/src/lib.rs2
-rw-r--r--vendor/prodash/src/progress/key.rs9
-rw-r--r--vendor/prodash/src/progress/log.rs2
-rw-r--r--vendor/prodash/src/progress/mod.rs9
-rw-r--r--vendor/prodash/src/progress/utils.rs8
-rw-r--r--vendor/prodash/src/render/line/draw.rs8
-rw-r--r--vendor/prodash/src/traits.rs260
-rw-r--r--vendor/prodash/src/tree/item.rs4
12 files changed, 610 insertions, 219 deletions
diff --git a/vendor/prodash/.cargo-checksum.json b/vendor/prodash/.cargo-checksum.json
index 495aac391..738c49515 100644
--- a/vendor/prodash/.cargo-checksum.json
+++ b/vendor/prodash/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{"CHANGELOG.md":"427b11b52145d7e02d7dd34a09a9d5b865580dcb463737324e9b0a99b5b8ffbc","Cargo.lock":"2df41f19a88cec1de35b79e026a414eb43e8d9bf20f538b4a84f7dab470b5d55","Cargo.toml":"5ab79cf9f3e4e3f1320cc7ba77a29b64141e6a2b3e3aa6623b38ddb501e5ddda","LICENSE.md":"fd6e8d4faaa8ad5856140481c2d7664ded0c92ddba62bd3d1f84fa50ba026a30","README.md":"59dc3974e189a9fb83942866113768612fcabf5dde0584ebc19fd5648b1c2050","src/lib.rs":"8ad9750d0c547f959b628d128664d3c038544ef3b615148ac641dfa0f6803413","src/messages.rs":"4226d2971f9f42102b81c05b63725a2d89ab8b83a565044b0c320cf83622abb7","src/progress/key.rs":"8603538c1a10ca8fb7e02314f981ced0305e86d9521f0793d6329c1622ccb8c6","src/progress/log.rs":"81aa863a5732ad2c0f091b2f5d09bc7a05326a7d1c61018776be63e918b847da","src/progress/mod.rs":"56e26a43472c9c7a4043f73c5a7c0b8cb0ead77aaacfec1bc7069526515256cc","src/progress/utils.rs":"be20317a095b2dc7b5af47d99ca6ffc0ac2bf2cc41f66c26324fe65ec4a58329","src/render/line/draw.rs":"13620929a5eecc89c5c8fbeddfaea43e20bb1883be21a35e651ca2ed3e73604d","src/render/line/engine.rs":"0762a3ec7833e71ef81afdf82fd431daaa328b24d2959eb9491fad9a0b05ad10","src/render/line/mod.rs":"38ed88af958a5e954fcf6a3522a908348d6664326b23e05731782a06a3ceca8d","src/render/mod.rs":"9115aa8e27bbc97344ed4787d56865d1447b3e15ba6631b5ea39041e09f02c1e","src/render/tui/draw/all.rs":"619db21132be0ccae6ba3345b42623f320c85283922bc862710b55fbe1416f87","src/render/tui/draw/information.rs":"e3e7288a8e85aa2142b88f2bdbee85bab71044a6f4e427732ba271f654b50599","src/render/tui/draw/messages.rs":"b8c8c155cfb11c321704e85d5a552033c74218c117aebd2106c59933c17a4c3a","src/render/tui/draw/mod.rs":"984c39dd21170e2cf249145b2ba1716dbc3b1f0399bdd69b550c520ca158a5b0","src/render/tui/draw/progress.rs":"3762b6563e3b65727cd367336bb62fbf3317d01e94b51b1374ceb11aefb28761","src/render/tui/engine.rs":"c742325636df007896c2f0a3378ae939bfdef7eb9df5f00ee9c2190ddacf1c4a","src/render/tui/mod.rs":"d06afdae99c90643d3ff70eef6704bdc9e1a88dc92d77f6dd31b9e2a3e989aae","src/render/tui/utils.rs":"8efc35a7cb2dd3b67339efe04861103312cd17cb271263a55ba96a4898a1f3d3","src/throughput.rs":"71090e30b495c9b35d9f8e79161f5ab0ec99788bc367c6504ca8c417d1d31f3a","src/time.rs":"b87cf9eb9c0e0f618f053c19075a102ed9a8241636e32e1a86b94c4dc02e748b","src/traits.rs":"e3441df1b05831cd1a92d4048740a2500cea2d4130961ef9cf7e6b0586e8b1a1","src/tree/item.rs":"89b10dd200ba762ec85dcc11cdc4bf642e32ea7b0b0f112fbd4c63aba040a808","src/tree/mod.rs":"981e7b47cdf19fd223416f0f853e13f243fc32a5567ec38ad393b5210d498652","src/tree/root.rs":"a6d6531489471bf555174eeefcac553466ead52490043e20576b9e4e9f03c825","src/tree/tests.rs":"1527eda193b5bbc226ee2544d8b68e5712e959fb70f4cd989dfc7ebcf54ba034","src/unit/bytes.rs":"97423209a1e10aafa5b40ed11af762e0f61dbbaf08643e96a50d99767105c536","src/unit/display.rs":"88a5ee5ce3136a417087fb62113f74d5fec55d9927ac275b1d382bc948795bdd","src/unit/duration.rs":"a036d01483853e35ffced88d93957da8575db9dc0b6fc2cc33b67019b979975d","src/unit/human.rs":"684f3dcac14140eea2b701408dd052d4db081e69293b2bb7bfeafa77dd5769d9","src/unit/mod.rs":"f317c8464aa9847dba6e6f75ed001d0ed43f014f1c4255b23c6513c5a37d494e","src/unit/range.rs":"b2c6d0fd85b960bc845fb496551103cbd0338a6313a5f49bdffbc0c78d58a26f","src/unit/traits.rs":"8556583a0a6ea4863e9c5c94808650db33b60e3ec55085d6872e026729c9aa9e"},"package":"9516b775656bc3e8985e19cd4b8c0c0de045095074e453d2c0a513b5f978392d"} \ No newline at end of file
+{"files":{"CHANGELOG.md":"0d6f840f4194e04e4608bbdd54cd40478cd4b576c889ae2db14e7ebeb9eee731","Cargo.lock":"33e5f3f6197d95a02a240cc8f3019dea8da9ce17639ef0e5eb405b3da1d3011d","Cargo.toml":"0b6fb8420d47a56a074535232b1a4870b4769756b3549cb56701756dbf41377e","LICENSE.md":"fd6e8d4faaa8ad5856140481c2d7664ded0c92ddba62bd3d1f84fa50ba026a30","README.md":"59dc3974e189a9fb83942866113768612fcabf5dde0584ebc19fd5648b1c2050","src/lib.rs":"d6f65c60b44108b74216c374845b98ba519ede4773b78bf532076c79cf0fa42f","src/messages.rs":"4226d2971f9f42102b81c05b63725a2d89ab8b83a565044b0c320cf83622abb7","src/progress/key.rs":"b4f3e18556887fe6bd64d999c396680733518cd0c496126457f71a2896f484ec","src/progress/log.rs":"db83d4fd533a74646ca95cb8026ad4c7047c4baf090b32e7a885d1bc4494ff0f","src/progress/mod.rs":"6c3ffc95d7ec21c0b8aa7a24518d7e1dcc90553c3bb48bb17c94b60b65d0fc18","src/progress/utils.rs":"90f1eee394581eae04e3c0a63366c58f9b16e2ff8974d9806a8b5ae2857d021c","src/render/line/draw.rs":"e04dc28dd1809c8cd5e5004ed2947e764c45fe58284a4e72e302719c0e286271","src/render/line/engine.rs":"0762a3ec7833e71ef81afdf82fd431daaa328b24d2959eb9491fad9a0b05ad10","src/render/line/mod.rs":"38ed88af958a5e954fcf6a3522a908348d6664326b23e05731782a06a3ceca8d","src/render/mod.rs":"9115aa8e27bbc97344ed4787d56865d1447b3e15ba6631b5ea39041e09f02c1e","src/render/tui/draw/all.rs":"619db21132be0ccae6ba3345b42623f320c85283922bc862710b55fbe1416f87","src/render/tui/draw/information.rs":"e3e7288a8e85aa2142b88f2bdbee85bab71044a6f4e427732ba271f654b50599","src/render/tui/draw/messages.rs":"b8c8c155cfb11c321704e85d5a552033c74218c117aebd2106c59933c17a4c3a","src/render/tui/draw/mod.rs":"984c39dd21170e2cf249145b2ba1716dbc3b1f0399bdd69b550c520ca158a5b0","src/render/tui/draw/progress.rs":"3762b6563e3b65727cd367336bb62fbf3317d01e94b51b1374ceb11aefb28761","src/render/tui/engine.rs":"c742325636df007896c2f0a3378ae939bfdef7eb9df5f00ee9c2190ddacf1c4a","src/render/tui/mod.rs":"d06afdae99c90643d3ff70eef6704bdc9e1a88dc92d77f6dd31b9e2a3e989aae","src/render/tui/utils.rs":"8efc35a7cb2dd3b67339efe04861103312cd17cb271263a55ba96a4898a1f3d3","src/throughput.rs":"71090e30b495c9b35d9f8e79161f5ab0ec99788bc367c6504ca8c417d1d31f3a","src/time.rs":"b87cf9eb9c0e0f618f053c19075a102ed9a8241636e32e1a86b94c4dc02e748b","src/traits.rs":"d05014245953e1c00ae55dd15962cbf15428be1144824c87dd78c8cbd7b8399e","src/tree/item.rs":"14936fa7d1d867baf58e24cee34a250321cd2b1f2383da94b40128216381081f","src/tree/mod.rs":"981e7b47cdf19fd223416f0f853e13f243fc32a5567ec38ad393b5210d498652","src/tree/root.rs":"a6d6531489471bf555174eeefcac553466ead52490043e20576b9e4e9f03c825","src/tree/tests.rs":"1527eda193b5bbc226ee2544d8b68e5712e959fb70f4cd989dfc7ebcf54ba034","src/unit/bytes.rs":"97423209a1e10aafa5b40ed11af762e0f61dbbaf08643e96a50d99767105c536","src/unit/display.rs":"88a5ee5ce3136a417087fb62113f74d5fec55d9927ac275b1d382bc948795bdd","src/unit/duration.rs":"a036d01483853e35ffced88d93957da8575db9dc0b6fc2cc33b67019b979975d","src/unit/human.rs":"684f3dcac14140eea2b701408dd052d4db081e69293b2bb7bfeafa77dd5769d9","src/unit/mod.rs":"f317c8464aa9847dba6e6f75ed001d0ed43f014f1c4255b23c6513c5a37d494e","src/unit/range.rs":"b2c6d0fd85b960bc845fb496551103cbd0338a6313a5f49bdffbc0c78d58a26f","src/unit/traits.rs":"8556583a0a6ea4863e9c5c94808650db33b60e3ec55085d6872e026729c9aa9e"},"package":"3236ce1618b6da4c7b618e0143c4d5b5dc190f75f81c49f248221382f7e9e9ae"} \ No newline at end of file
diff --git a/vendor/prodash/CHANGELOG.md b/vendor/prodash/CHANGELOG.md
index 301ba3b9e..c8039c921 100644
--- a/vendor/prodash/CHANGELOG.md
+++ b/vendor/prodash/CHANGELOG.md
@@ -5,6 +5,80 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## 25.0.0 (2023-05-16)
+
+### New Features
+
+ - <csr-id-8941f4b5b9c0d00dfd7b82c756b128982f163a06/> Introduce the object-safe `RawProgress` trait.
+ It's automatically implemented for `Progress` and allows for more flexible use
+ of progress particularly in leaf nodes. This is useful if a function needs to take
+ multiple types of progress as it is called from different places in the same function.
+
+ Without dyn-traits, it's not possible to make such call.
+
+### New Features (BREAKING)
+
+ - <csr-id-84d96c7b6ab07462d6c20147958d5aa1a58a688e/> Make messaging functions thread-safe by taking shared borrow and requring `Sync`.
+ That way it's possible to share the `RawProgress` object across threads and emit messages,
+ much like a logging system that's more integrated with rendering.
+
+### Commit Statistics
+
+<csr-read-only-do-not-edit/>
+
+ - 2 commits contributed to the release.
+ - 5 days passed between releases.
+ - 2 commits were understood as [conventional](https://www.conventionalcommits.org).
+ - 0 issues like '(#ID)' were seen in commit messages
+
+### Commit Details
+
+<csr-read-only-do-not-edit/>
+
+<details><summary>view details</summary>
+
+ * **Uncategorized**
+ - Make messaging functions thread-safe by taking shared borrow and requring `Sync`. ([`84d96c7`](https://github.com/byron/prodash/commit/84d96c7b6ab07462d6c20147958d5aa1a58a688e))
+ - Introduce the object-safe `RawProgress` trait. ([`8941f4b`](https://github.com/byron/prodash/commit/8941f4b5b9c0d00dfd7b82c756b128982f163a06))
+</details>
+
+## 24.0.0 (2023-05-11)
+
+<csr-id-fe5d01736179271f6b7bf20367f5d0e2bb616c4a/>
+
+### Chore (BREAKING)
+
+ - <csr-id-fe5d01736179271f6b7bf20367f5d0e2bb616c4a/> switch from `tui` to `ratatui`.
+ The latter is a maintained fork.
+
+### Commit Statistics
+
+<csr-read-only-do-not-edit/>
+
+ - 4 commits contributed to the release.
+ - 60 days passed between releases.
+ - 1 commit was understood as [conventional](https://www.conventionalcommits.org).
+ - 0 issues like '(#ID)' were seen in commit messages
+
+### Thanks Clippy
+
+<csr-read-only-do-not-edit/>
+
+[Clippy](https://github.com/rust-lang/rust-clippy) helped 1 time to make code idiomatic.
+
+### Commit Details
+
+<csr-read-only-do-not-edit/>
+
+<details><summary>view details</summary>
+
+ * **Uncategorized**
+ - Release prodash v24.0.0 ([`41ad0a4`](https://github.com/byron/prodash/commit/41ad0a45ea39e6b283f808768ea60495b3d2b65f))
+ - Merge branch 'ratatui' ([`4920457`](https://github.com/byron/prodash/commit/492045793a23be9ebda7310d89593288a2bd3340))
+ - Thanks clippy ([`25356a3`](https://github.com/byron/prodash/commit/25356a369c345b1e89f7c6c356ff7142020849de))
+ - Switch from `tui` to `ratatui`. ([`fe5d017`](https://github.com/byron/prodash/commit/fe5d01736179271f6b7bf20367f5d0e2bb616c4a))
+</details>
+
## 23.1.2 (2023-03-11)
### Bug Fixes
@@ -21,7 +95,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
<csr-read-only-do-not-edit/>
- - 1 commit contributed to the release.
+ - 2 commits contributed to the release.
- 9 days passed between releases.
- 1 commit was understood as [conventional](https://www.conventionalcommits.org).
- 0 issues like '(#ID)' were seen in commit messages
@@ -33,6 +107,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
<details><summary>view details</summary>
* **Uncategorized**
+ - Release prodash v23.1.2 ([`c15f8db`](https://github.com/byron/prodash/commit/c15f8db0a7221ad6326544685200b68cb9ff5ddd))
- Line renderer now properly detects changes. ([`7966f79`](https://github.com/byron/prodash/commit/7966f79cc7009acb33761cee70398b05b0006cc1))
</details>
diff --git a/vendor/prodash/Cargo.lock b/vendor/prodash/Cargo.lock
index 10414495b..7af5f0e2b 100644
--- a/vendor/prodash/Cargo.lock
+++ b/vendor/prodash/Cargo.lock
@@ -36,7 +36,7 @@ dependencies = [
"argh_shared",
"proc-macro2",
"quote",
- "syn",
+ "syn 1.0.109",
]
[[package]]
@@ -58,9 +58,9 @@ dependencies = [
[[package]]
name = "async-executor"
-version = "1.5.0"
+version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17adb73da160dfb475c183343c8cccd80721ea5a605d3eb57125f0a7b7a92d0b"
+checksum = "6fa3dc5f2a8564f07759c008b9109dc0d39de92a88d5588b8a5036d286383afb"
dependencies = [
"async-lock",
"async-task",
@@ -72,22 +72,22 @@ dependencies = [
[[package]]
name = "async-io"
-version = "1.12.0"
+version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794"
+checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
dependencies = [
"async-lock",
"autocfg",
+ "cfg-if",
"concurrent-queue",
"futures-lite",
- "libc",
"log",
"parking",
"polling",
+ "rustix",
"slab",
"socket2",
"waker-fn",
- "windows-sys 0.42.0",
]
[[package]]
@@ -101,15 +101,15 @@ dependencies = [
[[package]]
name = "async-task"
-version = "4.3.0"
+version = "4.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"
+checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae"
[[package]]
name = "atomic-waker"
-version = "1.1.0"
+version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "debc29dde2e69f9e47506b525f639ed42300fc014a3e007832592448fa8e4599"
+checksum = "1181e1e0d1fce796a03db1ae795d67167da795f9cf4a39c37589e85ef57f26d3"
[[package]]
name = "atty"
@@ -117,7 +117,7 @@ version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
dependencies = [
- "hermit-abi",
+ "hermit-abi 0.1.19",
"libc",
"winapi",
]
@@ -136,9 +136,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "blocking"
-version = "1.3.0"
+version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c67b173a56acffd6d2326fb7ab938ba0b00a71480e14902b2591c87bc5741e8"
+checksum = "77231a1c8f801696fc0123ec6150ce92cffb8e164a02afb9c8ddee0e9b65ad65"
dependencies = [
"async-channel",
"async-lock",
@@ -146,6 +146,7 @@ dependencies = [
"atomic-waker",
"fastrand",
"futures-lite",
+ "log",
]
[[package]]
@@ -180,9 +181,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "ciborium"
-version = "0.2.0"
+version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0c137568cc60b904a7724001b35ce2630fd00d5d84805fbb608ab89509d788f"
+checksum = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926"
dependencies = [
"ciborium-io",
"ciborium-ll",
@@ -191,15 +192,15 @@ dependencies = [
[[package]]
name = "ciborium-io"
-version = "0.2.0"
+version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "346de753af073cc87b52b2083a506b38ac176a44cfb05497b622e27be899b369"
+checksum = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656"
[[package]]
name = "ciborium-ll"
-version = "0.2.0"
+version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213030a2b5a4e0c0892b6652260cf6ccac84827b83a85a534e178e3906c4cf1b"
+checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b"
dependencies = [
"ciborium-io",
"half",
@@ -207,9 +208,9 @@ 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_lex",
@@ -228,15 +229,15 @@ dependencies = [
[[package]]
name = "compound_duration"
-version = "1.2.0"
+version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c803d816c4ed6d0dadd5b54f7ef4f3761418fe802106b161d77476cc3c664c"
+checksum = "391da30e746a798f948778dff8d2e58a47b33bc6e2f37156ef8480d3b49a6565"
[[package]]
name = "concurrent-queue"
-version = "2.1.0"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e"
+checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c"
dependencies = [
"crossbeam-utils",
]
@@ -286,9 +287,9 @@ dependencies = [
[[package]]
name = "crossterm"
-version = "0.25.0"
+version = "0.26.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e64e6c0fbe2c17357405f7c758c1ef960fce08bdfb2c03d88d2a18d7e09c4b67"
+checksum = "a84cda67535339806297f1b331d6dd6320470d2a0fe65381e79ee9e156dd3d13"
dependencies = [
"bitflags",
"crossterm_winapi",
@@ -312,9 +313,9 @@ dependencies = [
[[package]]
name = "crosstermion"
-version = "0.10.1"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99aabd9b02c2d5f72697f30ffb46f5a9ff4bd240d826049892cf62c31daeed04"
+checksum = "152ef46d620d4614070109e076ffc6ab032f682a380ac2efce412100c5ee7749"
dependencies = [
"ansi_term",
"async-channel",
@@ -322,8 +323,8 @@ dependencies = [
"futures-channel",
"futures-core",
"futures-lite",
+ "ratatui",
"termion",
- "tui",
"tui-react",
]
@@ -367,6 +368,27 @@ dependencies = [
]
[[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 0.48.0",
+]
+
+[[package]]
+name = "errno-dragonfly"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
name = "event-listener"
version = "2.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -383,9 +405,9 @@ dependencies = [
[[package]]
name = "futures"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e2792b0ff0340399d58445b88fd9770e3489eff258a4cbc1523418f12abf84"
+checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
dependencies = [
"futures-channel",
"futures-core",
@@ -398,9 +420,9 @@ dependencies = [
[[package]]
name = "futures-channel"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
dependencies = [
"futures-core",
"futures-sink",
@@ -408,15 +430,15 @@ dependencies = [
[[package]]
name = "futures-core"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
[[package]]
name = "futures-executor"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e"
+checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
dependencies = [
"futures-core",
"futures-task",
@@ -425,15 +447,15 @@ dependencies = [
[[package]]
name = "futures-io"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
[[package]]
name = "futures-lite"
-version = "1.12.0"
+version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
+checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
dependencies = [
"fastrand",
"futures-core",
@@ -446,32 +468,32 @@ dependencies = [
[[package]]
name = "futures-macro"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
name = "futures-sink"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
[[package]]
name = "futures-task"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
[[package]]
name = "futures-util"
-version = "0.3.26"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
dependencies = [
"futures-channel",
"futures-core",
@@ -487,9 +509,9 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.2.8"
+version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4"
dependencies = [
"cfg-if",
"libc",
@@ -518,6 +540,12 @@ dependencies = [
]
[[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
name = "human_format"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -531,9 +559,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[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",
"hashbrown",
@@ -549,6 +577,17 @@ dependencies = [
]
[[package]]
+name = "io-lifetimes"
+version = "1.0.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220"
+dependencies = [
+ "hermit-abi 0.3.1",
+ "libc",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
name = "itertools"
version = "0.10.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -559,9 +598,9 @@ dependencies = [
[[package]]
name = "itoa"
-version = "1.0.5"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
+checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
[[package]]
name = "lazy_static"
@@ -571,9 +610,15 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "libc"
-version = "0.2.139"
+version = "0.2.144"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1"
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
+checksum = "ece97ea872ece730aed82664c424eb4c8291e1ff2480247ccf7409044bc6479f"
[[package]]
name = "lock_api"
@@ -662,15 +707,15 @@ checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
[[package]]
name = "os_str_bytes"
-version = "6.4.1"
+version = "6.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
+checksum = "ceedf44fb00f2d1984b0bc98102627ce622e083e49a5bacdb3e514fa4238e267"
[[package]]
name = "parking"
-version = "2.0.0"
+version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
+checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e"
[[package]]
name = "parking_lot"
@@ -709,16 +754,18 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "polling"
-version = "2.5.2"
+version = "2.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6"
+checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
dependencies = [
"autocfg",
+ "bitflags",
"cfg-if",
+ "concurrent-queue",
"libc",
"log",
- "wepoll-ffi",
- "windows-sys 0.42.0",
+ "pin-project-lite",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -729,16 +776,16 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
[[package]]
name = "proc-macro2"
-version = "1.0.51"
+version = "1.0.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
+checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
dependencies = [
"unicode-ident",
]
[[package]]
name = "prodash"
-version = "23.1.2"
+version = "25.0.0"
dependencies = [
"argh",
"async-executor",
@@ -762,9 +809,9 @@ dependencies = [
"once_cell",
"parking_lot",
"rand",
+ "ratatui",
"signal-hook",
"time",
- "tui",
"tui-react",
"unicode-segmentation",
"unicode-width",
@@ -772,9 +819,9 @@ dependencies = [
[[package]]
name = "quote"
-version = "1.0.23"
+version = "1.0.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
+checksum = "8f4f29d145265ec1c483c7c654450edde0bfe043d3938d6972630663356d9500"
dependencies = [
"proc-macro2",
]
@@ -810,6 +857,20 @@ dependencies = [
]
[[package]]
+name = "ratatui"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcc0d032bccba900ee32151ec0265667535c230169f5a011154cdcd984e16829"
+dependencies = [
+ "bitflags",
+ "cassowary",
+ "crossterm",
+ "termion",
+ "unicode-segmentation",
+ "unicode-width",
+]
+
+[[package]]
name = "redox_syscall"
version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -829,24 +890,38 @@ dependencies = [
[[package]]
name = "regex"
-version = "1.7.1"
+version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
+checksum = "af83e617f331cc6ae2da5443c602dfa5af81e517212d9d611a5b3ba1777b5370"
dependencies = [
"regex-syntax",
]
[[package]]
name = "regex-syntax"
-version = "0.6.28"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+checksum = "a5996294f19bd3aae0453a862ad728f60e6600695733dd5df01da90c54363a3c"
+
+[[package]]
+name = "rustix"
+version = "0.37.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d"
+dependencies = [
+ "bitflags",
+ "errno",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys 0.48.0",
+]
[[package]]
name = "ryu"
-version = "1.0.12"
+version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
+checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
[[package]]
name = "same-file"
@@ -865,29 +940,29 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
[[package]]
name = "serde"
-version = "1.0.152"
+version = "1.0.163"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.152"
+version = "1.0.163"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
name = "serde_json"
-version = "1.0.93"
+version = "1.0.96"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
+checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1"
dependencies = [
"itoa",
"ryu",
@@ -941,9 +1016,9 @@ checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
[[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",
@@ -967,10 +1042,21 @@ dependencies = [
]
[[package]]
+name = "syn"
+version = "2.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
name = "termion"
-version = "1.5.6"
+version = "2.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "077185e2eac69c3f8379a4298e1e07cd36beb962290d4a51199acf0fdc10607e"
+checksum = "659c1f379f3408c7e5e84c7d0da6d93404e3800b6b9d063ba24436419302ec90"
dependencies = [
"libc",
"numtoa",
@@ -986,9 +1072,9 @@ checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
[[package]]
name = "time"
-version = "0.3.20"
+version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
+checksum = "8f3403384eaacbca9923fa06940178ac13e4edb725486d70e8e15881d0c836cc"
dependencies = [
"itoa",
"libc",
@@ -1000,15 +1086,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.8"
+version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36"
+checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b"
dependencies = [
"time-core",
]
@@ -1024,36 +1110,22 @@ dependencies = [
]
[[package]]
-name = "tui"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccdd26cbd674007e649a272da4475fb666d3aa0ad0531da7136db6fab0e5bad1"
-dependencies = [
- "bitflags",
- "cassowary",
- "crossterm",
- "termion",
- "unicode-segmentation",
- "unicode-width",
-]
-
-[[package]]
name = "tui-react"
-version = "0.19.0"
+version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "542c37309aaf01ddaea86891f7845a8b0124194c6ccae6dbae7d223752648f4d"
+checksum = "11f13a7edfda102bf2bc3f9c1714904c961d513ebf4ae0c09decc4f17340f9a7"
dependencies = [
"log",
- "tui",
+ "ratatui",
"unicode-segmentation",
"unicode-width",
]
[[package]]
name = "unicode-ident"
-version = "1.0.6"
+version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
[[package]]
name = "unicode-segmentation"
@@ -1075,12 +1147,11 @@ checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
[[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",
"winapi-util",
]
@@ -1091,15 +1162,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
-name = "wepoll-ffi"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
-dependencies = [
- "cc",
-]
-
-[[package]]
name = "winapi"
version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1132,81 +1194,132 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "windows-sys"
-version = "0.42.0"
+version = "0.45.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows-targets 0.42.2",
]
[[package]]
name = "windows-sys"
-version = "0.45.0"
+version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
dependencies = [
- "windows-targets",
+ "windows-targets 0.48.0",
]
[[package]]
name = "windows-targets"
-version = "0.42.1"
+version = "0.42.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
]
[[package]]
+name = "windows-targets"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
+dependencies = [
+ "windows_aarch64_gnullvm 0.48.0",
+ "windows_aarch64_msvc 0.48.0",
+ "windows_i686_gnu 0.48.0",
+ "windows_i686_msvc 0.48.0",
+ "windows_x86_64_gnu 0.48.0",
+ "windows_x86_64_gnullvm 0.48.0",
+ "windows_x86_64_msvc 0.48.0",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.42.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
[[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.42.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.42.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
[[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"
diff --git a/vendor/prodash/Cargo.toml b/vendor/prodash/Cargo.toml
index b7e73b584..8919d4ae3 100644
--- a/vendor/prodash/Cargo.toml
+++ b/vendor/prodash/Cargo.toml
@@ -12,7 +12,7 @@
[package]
edition = "2021"
name = "prodash"
-version = "23.1.2"
+version = "25.0.0"
authors = ["Sebastian Thiel <sebastian.thiel@icloud.com>"]
include = [
"src/**/*",
@@ -91,7 +91,7 @@ version = "1.2.0"
optional = true
[dependencies.crosstermion]
-version = "0.10.1"
+version = "0.11.0"
optional = true
default-features = false
@@ -148,12 +148,13 @@ optional = true
default-features = false
[dependencies.tui]
-version = "0.19.0"
+version = "0.20.1"
optional = true
default-features = false
+package = "ratatui"
[dependencies.tui-react]
-version = "0.19.0"
+version = "0.20.0"
optional = true
[dependencies.unicode-segmentation]
diff --git a/vendor/prodash/src/lib.rs b/vendor/prodash/src/lib.rs
index 974cc8598..e3eb6042c 100644
--- a/vendor/prodash/src/lib.rs
+++ b/vendor/prodash/src/lib.rs
@@ -64,7 +64,7 @@ pub mod messages;
pub mod progress;
mod traits;
-pub use traits::{Progress, Root, WeakRoot};
+pub use traits::{Progress, RawProgress, Root, WeakRoot};
mod throughput;
pub use crate::throughput::Throughput;
diff --git a/vendor/prodash/src/progress/key.rs b/vendor/prodash/src/progress/key.rs
index dae714d68..bfdf13b2d 100644
--- a/vendor/prodash/src/progress/key.rs
+++ b/vendor/prodash/src/progress/key.rs
@@ -15,12 +15,13 @@ pub(crate) type Id = u16;
pub struct Key(Option<Id>, Option<Id>, Option<Id>, Option<Id>, Option<Id>, Option<Id>);
/// Determines if a sibling is above or below in the given level of hierarchy
-#[derive(Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Debug)]
+#[derive(Default, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Debug)]
#[allow(missing_docs)]
pub enum SiblingLocation {
Above,
Below,
AboveAndBelow,
+ #[default]
NotFound,
}
@@ -40,12 +41,6 @@ impl SiblingLocation {
}
}
-impl Default for SiblingLocation {
- fn default() -> Self {
- SiblingLocation::NotFound
- }
-}
-
/// A type providing information about what's above and below `Tree` items.
#[derive(Copy, Clone, Default, Eq, PartialEq, Ord, PartialOrd, Debug)]
pub struct Adjacency(
diff --git a/vendor/prodash/src/progress/log.rs b/vendor/prodash/src/progress/log.rs
index 3410a5dc2..6fb16f109 100644
--- a/vendor/prodash/src/progress/log.rs
+++ b/vendor/prodash/src/progress/log.rs
@@ -136,7 +136,7 @@ impl Progress for Log {
self.id
}
- fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
+ fn message(&self, level: MessageLevel, message: impl Into<String>) {
let message: String = message.into();
match level {
MessageLevel::Info => log::info!("ℹ{} → {}", self.name, message),
diff --git a/vendor/prodash/src/progress/mod.rs b/vendor/prodash/src/progress/mod.rs
index 0d9c694cf..842bbb6e1 100644
--- a/vendor/prodash/src/progress/mod.rs
+++ b/vendor/prodash/src/progress/mod.rs
@@ -41,7 +41,7 @@ pub type Step = usize;
pub type StepShared = Arc<AtomicUsize>;
/// Indicate whether a progress can or cannot be made.
-#[derive(Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Debug, Hash)]
+#[derive(Default, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Debug, Hash)]
pub enum State {
/// Indicates a task is blocked and cannot indicate progress, optionally until the
/// given time. The task cannot easily be interrupted.
@@ -50,15 +50,10 @@ pub enum State {
/// given time. The task can be interrupted.
Halted(&'static str, Option<SystemTime>),
/// The task is running
+ #[default]
Running,
}
-impl Default for State {
- fn default() -> Self {
- State::Running
- }
-}
-
/// Progress associated with some item in the progress tree.
#[derive(Clone, Default, Debug)]
pub struct Value {
diff --git a/vendor/prodash/src/progress/utils.rs b/vendor/prodash/src/progress/utils.rs
index 549a0b6e5..3fd6c64bf 100644
--- a/vendor/prodash/src/progress/utils.rs
+++ b/vendor/prodash/src/progress/utils.rs
@@ -38,7 +38,7 @@ impl Progress for Discard {
crate::progress::UNKNOWN
}
- fn message(&mut self, _level: MessageLevel, _message: impl Into<String>) {}
+ fn message(&self, _level: MessageLevel, _message: impl Into<String>) {}
fn counter(&self) -> Option<StepShared> {
None
@@ -144,7 +144,7 @@ where
todo!()
}
- fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
+ fn message(&self, level: MessageLevel, message: impl Into<String>) {
match self {
Either::Left(l) => l.message(level, message),
Either::Right(r) => r.message(level, message),
@@ -247,7 +247,7 @@ where
self.0.id()
}
- fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
+ fn message(&self, level: MessageLevel, message: impl Into<String>) {
self.0.message(level, message)
}
@@ -321,7 +321,7 @@ impl<T: Progress> Progress for ThroughputOnDrop<T> {
self.0.id()
}
- fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
+ fn message(&self, level: MessageLevel, message: impl Into<String>) {
self.0.message(level, message)
}
diff --git a/vendor/prodash/src/render/line/draw.rs b/vendor/prodash/src/render/line/draw.rs
index b45badf11..85dc18eb9 100644
--- a/vendor/prodash/src/render/line/draw.rs
+++ b/vendor/prodash/src/render/line/draw.rs
@@ -230,13 +230,7 @@ fn block_count_sans_ansi_codes(strings: &[ANSIString<'_>]) -> u16 {
strings.iter().map(|s| s.width() as u16).sum()
}
-fn draw_progress_bar<'a>(
- p: &Value,
- style: Style,
- mut blocks_available: u16,
- colored: bool,
- buf: &mut Vec<ANSIString<'a>>,
-) {
+fn draw_progress_bar(p: &Value, style: Style, mut blocks_available: u16, colored: bool, buf: &mut Vec<ANSIString<'_>>) {
let mut brush = color::Brush::new(colored);
let styled_brush = brush.style(style);
diff --git a/vendor/prodash/src/traits.rs b/vendor/prodash/src/traits.rs
index a2a17c760..1aac1d43a 100644
--- a/vendor/prodash/src/traits.rs
+++ b/vendor/prodash/src/traits.rs
@@ -2,8 +2,8 @@ use std::time::Instant;
use crate::{messages::MessageLevel, progress, progress::Id, Unit};
-/// A trait for describing hierarchical process.
-pub trait Progress: Send {
+/// A trait for describing hierarchical progress.
+pub trait Progress: Send + Sync {
/// The type of progress returned by [`add_child()`][Progress::add_child()].
type SubProgress: Progress;
@@ -87,7 +87,7 @@ pub trait Progress: Send {
///
/// Use this to provide additional,human-readable information about the progress
/// made, including indicating success or failure.
- fn message(&mut self, level: MessageLevel, message: impl Into<String>);
+ fn message(&self, level: MessageLevel, message: impl Into<String>);
/// If available, return an atomic counter for direct access to the underlying state.
///
@@ -98,19 +98,19 @@ pub trait Progress: Send {
}
/// Create a message providing additional information about the progress thus far.
- fn info(&mut self, message: impl Into<String>) {
+ fn info(&self, message: impl Into<String>) {
self.message(MessageLevel::Info, message)
}
/// Create a message indicating the task is done successfully
- fn done(&mut self, message: impl Into<String>) {
+ fn done(&self, message: impl Into<String>) {
self.message(MessageLevel::Success, message)
}
/// Create a message indicating the task failed
- fn fail(&mut self, message: impl Into<String>) {
+ fn fail(&self, message: impl Into<String>) {
self.message(MessageLevel::Failure, message)
}
/// A shorthand to print throughput information
- fn show_throughput(&mut self, start: Instant) {
+ fn show_throughput(&self, start: Instant) {
let step = self.step();
match self.unit() {
Some(unit) => self.show_throughput_with(start, step, unit, MessageLevel::Info),
@@ -126,7 +126,147 @@ pub trait Progress: Send {
}
/// A shorthand to print throughput information, with the given step and unit, and message level.
- fn show_throughput_with(&mut self, start: Instant, step: progress::Step, unit: Unit, level: MessageLevel) {
+ fn show_throughput_with(&self, start: Instant, step: progress::Step, unit: Unit, level: MessageLevel) {
+ use std::fmt::Write;
+ let elapsed = start.elapsed().as_secs_f32();
+ let steps_per_second = (step as f32 / elapsed) as progress::Step;
+ let mut buf = String::with_capacity(128);
+ let unit = unit.as_display_value();
+ let push_unit = |buf: &mut String| {
+ buf.push(' ');
+ let len_before_unit = buf.len();
+ unit.display_unit(buf, step).ok();
+ if buf.len() == len_before_unit {
+ buf.pop();
+ }
+ };
+
+ buf.push_str("done ");
+ unit.display_current_value(&mut buf, step, None).ok();
+ push_unit(&mut buf);
+
+ buf.write_fmt(format_args!(" in {:.02}s (", elapsed)).ok();
+ unit.display_current_value(&mut buf, steps_per_second, None).ok();
+ push_unit(&mut buf);
+ buf.push_str("/s)");
+
+ self.message(level, buf);
+ }
+}
+
+/// A trait for describing non-hierarchical progress.
+///
+/// It differs by not being able to add child progress dynamically, but in turn is object safe. It's recommended to
+/// use this trait whenever there is no need to add child progress, at the leaf of a computation.
+// NOTE: keep this in-sync with `Progress`.
+pub trait RawProgress: Send + Sync {
+ /// Initialize the Item for receiving progress information.
+ ///
+ /// If `max` is `Some(…)`, it will be treated as upper bound. When progress is [set(…)](./struct.Item.html#method.set)
+ /// it should not exceed the given maximum.
+ /// If `max` is `None`, the progress is unbounded. Use this if the amount of work cannot accurately
+ /// be determined in advance.
+ ///
+ /// If `unit` is `Some(…)`, it is used for display purposes only. See `prodash::Unit` for more information.
+ ///
+ /// If both `unit` and `max` are `None`, the item will be reset to be equivalent to 'uninitialized'.
+ ///
+ /// If this method is never called, this `Progress` instance will serve as organizational unit, useful to add more structure
+ /// to the progress tree (e.g. a headline).
+ ///
+ /// **Note** that this method can be called multiple times, changing the bounded-ness and unit at will.
+ fn init(&mut self, max: Option<progress::Step>, unit: Option<Unit>);
+
+ /// Set the current progress to the given `step`. The cost of this call is negligible,
+ /// making manual throttling *not* necessary.
+ ///
+ /// **Note**: that this call has no effect unless `init(…)` was called before.
+ fn set(&mut self, step: progress::Step);
+
+ /// Returns the (cloned) unit associated with this Progress
+ fn unit(&self) -> Option<Unit> {
+ None
+ }
+
+ /// Returns the maximum about of items we expect, as provided with the `init(…)` call
+ fn max(&self) -> Option<progress::Step> {
+ None
+ }
+
+ /// Set the maximum value to `max` and return the old maximum value.
+ fn set_max(&mut self, _max: Option<progress::Step>) -> Option<progress::Step> {
+ None
+ }
+
+ /// Returns the current step, as controlled by `inc*(…)` calls
+ fn step(&self) -> progress::Step;
+
+ /// Increment the current progress to the given `step`.
+ /// The cost of this call is negligible, making manual throttling *not* necessary.
+ fn inc_by(&mut self, step: progress::Step);
+
+ /// Increment the current progress to the given 1. The cost of this call is negligible,
+ /// making manual throttling *not* necessary.
+ fn inc(&mut self) {
+ self.inc_by(1)
+ }
+
+ /// Set the name of the instance, altering the value given when crating it with `add_child(…)`
+ /// The progress is allowed to discard it.
+ fn set_name(&mut self, name: String);
+
+ /// Get the name of the instance as given when creating it with `add_child(…)`
+ /// The progress is allowed to not be named, thus there is no guarantee that a previously set names 'sticks'.
+ fn name(&self) -> Option<String>;
+
+ /// Get a stable identifier for the progress instance.
+ /// Note that it could be [unknown][crate::progress::UNKNOWN].
+ fn id(&self) -> Id;
+
+ /// Create a `message` of the given `level` and store it with the progress tree.
+ ///
+ /// Use this to provide additional,human-readable information about the progress
+ /// made, including indicating success or failure.
+ fn message(&self, level: MessageLevel, message: String);
+
+ /// If available, return an atomic counter for direct access to the underlying state.
+ ///
+ /// This is useful if multiple threads want to access the same progress, without the need
+ /// for provide each their own progress and aggregating the result.
+ fn counter(&self) -> Option<StepShared> {
+ None
+ }
+
+ /// Create a message providing additional information about the progress thus far.
+ fn info(&self, message: String) {
+ self.message(MessageLevel::Info, message)
+ }
+ /// Create a message indicating the task is done successfully
+ fn done(&self, message: String) {
+ self.message(MessageLevel::Success, message)
+ }
+ /// Create a message indicating the task failed
+ fn fail(&self, message: String) {
+ self.message(MessageLevel::Failure, message)
+ }
+ /// A shorthand to print throughput information
+ fn show_throughput(&self, start: Instant) {
+ let step = self.step();
+ match self.unit() {
+ Some(unit) => self.show_throughput_with(start, step, unit, MessageLevel::Info),
+ None => {
+ let elapsed = start.elapsed().as_secs_f32();
+ let steps_per_second = (step as f32 / elapsed) as progress::Step;
+ self.info(format!(
+ "done {} items in {:.02}s ({} items/s)",
+ step, elapsed, steps_per_second
+ ))
+ }
+ };
+ }
+
+ /// A shorthand to print throughput information, with the given step and unit, and message level.
+ fn show_throughput_with(&self, start: Instant, step: progress::Step, unit: Unit, level: MessageLevel) {
use std::fmt::Write;
let elapsed = start.elapsed().as_secs_f32();
let steps_per_second = (step as f32 / elapsed) as progress::Step;
@@ -205,12 +345,90 @@ mod impls {
time::Instant,
};
+ use crate::traits::RawProgress;
use crate::{
messages::MessageLevel,
progress::{Id, Step, StepShared},
Progress, Unit,
};
+ impl<T> RawProgress for T
+ where
+ T: Progress,
+ {
+ fn init(&mut self, max: Option<Step>, unit: Option<Unit>) {
+ <T as Progress>::init(self, max, unit)
+ }
+
+ fn set(&mut self, step: Step) {
+ <T as Progress>::set(self, step)
+ }
+
+ fn unit(&self) -> Option<Unit> {
+ <T as Progress>::unit(self)
+ }
+
+ fn max(&self) -> Option<Step> {
+ <T as Progress>::max(self)
+ }
+
+ fn set_max(&mut self, max: Option<Step>) -> Option<Step> {
+ <T as Progress>::set_max(self, max)
+ }
+
+ fn step(&self) -> Step {
+ <T as Progress>::step(self)
+ }
+
+ fn inc_by(&mut self, step: Step) {
+ <T as Progress>::inc_by(self, step)
+ }
+
+ fn inc(&mut self) {
+ <T as Progress>::inc(self)
+ }
+
+ fn set_name(&mut self, name: String) {
+ <T as Progress>::set_name(self, name)
+ }
+
+ fn name(&self) -> Option<String> {
+ <T as Progress>::name(self)
+ }
+
+ fn id(&self) -> Id {
+ <T as Progress>::id(self)
+ }
+
+ fn message(&self, level: MessageLevel, message: String) {
+ <T as Progress>::message(self, level, message)
+ }
+
+ fn counter(&self) -> Option<StepShared> {
+ <T as Progress>::counter(self)
+ }
+
+ fn info(&self, message: String) {
+ <T as Progress>::info(self, message)
+ }
+
+ fn done(&self, message: String) {
+ <T as Progress>::done(self, message)
+ }
+
+ fn fail(&self, message: String) {
+ <T as Progress>::fail(self, message)
+ }
+
+ fn show_throughput(&self, start: Instant) {
+ <T as Progress>::show_throughput(self, start)
+ }
+
+ fn show_throughput_with(&self, start: Instant, step: Step, unit: Unit, level: MessageLevel) {
+ <T as Progress>::show_throughput_with(self, start, step, unit, level)
+ }
+ }
+
impl<'a, T> Progress for &'a mut T
where
T: Progress,
@@ -266,35 +484,35 @@ mod impls {
}
fn id(&self) -> Id {
- todo!()
+ self.deref().id()
}
- fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
- self.deref_mut().message(level, message)
+ fn message(&self, level: MessageLevel, message: impl Into<String>) {
+ self.deref().message(level, message)
}
fn counter(&self) -> Option<StepShared> {
self.deref().counter()
}
- fn info(&mut self, message: impl Into<String>) {
- self.deref_mut().info(message)
+ fn info(&self, message: impl Into<String>) {
+ self.deref().info(message)
}
- fn done(&mut self, message: impl Into<String>) {
- self.deref_mut().done(message)
+ fn done(&self, message: impl Into<String>) {
+ self.deref().done(message)
}
- fn fail(&mut self, message: impl Into<String>) {
- self.deref_mut().fail(message)
+ fn fail(&self, message: impl Into<String>) {
+ self.deref().fail(message)
}
- fn show_throughput(&mut self, start: Instant) {
- self.deref_mut().show_throughput(start)
+ fn show_throughput(&self, start: Instant) {
+ self.deref().show_throughput(start)
}
- fn show_throughput_with(&mut self, start: Instant, step: Step, unit: Unit, level: MessageLevel) {
- self.deref_mut().show_throughput_with(start, step, unit, level)
+ fn show_throughput_with(&self, start: Instant, step: Step, unit: Unit, level: MessageLevel) {
+ self.deref().show_throughput_with(start, step, unit, level)
}
}
}
diff --git a/vendor/prodash/src/tree/item.rs b/vendor/prodash/src/tree/item.rs
index d8c4a7548..17dbb64da 100644
--- a/vendor/prodash/src/tree/item.rs
+++ b/vendor/prodash/src/tree/item.rs
@@ -292,7 +292,7 @@ impl Item {
///
/// Use this to provide additional,human-readable information about the progress
/// made, including indicating success or failure.
- pub fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
+ pub fn message(&self, level: MessageLevel, message: impl Into<String>) {
let message: String = message.into();
self.messages.lock().push_overwrite(
level,
@@ -396,7 +396,7 @@ impl crate::Progress for Item {
Item::id(self)
}
- fn message(&mut self, level: MessageLevel, message: impl Into<String>) {
+ fn message(&self, level: MessageLevel, message: impl Into<String>) {
Item::message(self, level, message)
}