Give the forge a command-line client, packaged for apt and dnf

1294137 · Gabriel Morell · 2026-09-18 14:57

29 files +8331 -0
Message
{commit_body(@commit)}

Files changed

modified .dockerignore
+5 −0
@@ -45,6 +45,11 @@ erl_crash.dump
45 45 # it rebuilds against the image's toolchain and glibc.
46 46 /native/*/target/
47 47
48 +# Same for the CLI crate, which cli/Dockerfile builds from the repo
49 +# root: a host `cargo build` leaves a gigabyte here that the image
50 +# would only throw away.
51 +/cli/target/
52 +
48 53 # Static artifacts - These should be fetched and built inside the Docker image
49 54 # https://hexdocs.pm/phoenix/Mix.Tasks.Phx.Gen.Release.html#module-docker
50 55 /assets/node_modules/
modified .forgejo/workflows/build.yml
+135 −0
@@ -284,3 +284,138 @@ jobs:
284 284 fingerprint pins the index signing certificate; F-Droid
285 285 refuses an index signed by anything else.
286 286 EOF
287 +
288 + # The forge's own CLI, packaged for the forge's own apt and rpm
289 + # repositories — `deb` again, one registry wider. `gg` is one small
290 + # binary with no runtime of its own, so unlike the server it is worth
291 + # shipping to both families.
292 + cli:
293 + runs-on: self-hosted
294 + # Beside `android` rather than after it: the two are independent,
295 + # and a missing signing keystore shouldn't be able to hold up the
296 + # CLI packages. They do share the runner's buildx daemon, so their
297 + # logs interleave — the trade this one accepts.
298 + needs: [build, deb]
299 + steps:
300 + - uses: actions/checkout@v4
301 +
302 + - uses: docker/setup-buildx-action@v3
303 +
304 + - name: Resolve the forge URL
305 + env:
306 + CI_FORGE_URL: ${{ vars.CI_FORGE_URL }}
307 + run: |
308 + set -euo pipefail
309 + forge_url=${CI_FORGE_URL:-${GITHUB_SERVER_URL:-}}
310 +
311 + if [ -z "$forge_url" ]; then
312 + echo "No forge URL available." >&2
313 + exit 1
314 + fi
315 +
316 + echo "FORGE_URL=$forge_url" >> "$GITHUB_ENV"
317 +
318 + # `cli/Dockerfile` builds the crate twice, once per packaging
319 + # family, because a Rust binary is linked against the glibc of
320 + # whatever compiled it. It also runs the CLI's fmt/clippy/test
321 + # gate — a package isn't worth building from a tree that fails it.
322 + - name: Build the .deb and .rpm
323 + env:
324 + COMMIT: ${{ github.sha }}
325 + SUITES: trixie forky
326 + run: |
327 + set -euo pipefail
328 +
329 + # The COMMIT's date, not the clock: building the same commit
330 + # twice then produces the same version, and the .deb and .rpm
331 + # of one run agree on their stamp. Same rule as packaging/deb.
332 + # The fallback is for a checkout that doesn't carry the
333 + # commit object — a shallow clone still has HEAD, but this
334 + # step shouldn't be the thing that fails if that changes.
335 + commit_date=$(git show -s --format=%cd --date=format:%Y%m%d%H%M%S "$COMMIT" 2>/dev/null \
336 + || date -u +%Y%m%d%H%M%S)
337 + epoch=$(git show -s --format=%ct "$COMMIT" 2>/dev/null || date -u +%s)
338 + short=$(echo "$COMMIT" | cut -c1-12)
339 + version=$(sed -n 's/^version = "\(.*\)"/\1/p' cli/Cargo.toml | head -1)
340 +
341 + # The maintainer address is this forge's own host — the
342 + # package has no upstream maintainer other than the instance
343 + # that built it.
344 + host=${FORGE_URL#*://}
345 +
346 + docker buildx build \
347 + --target packages \
348 + --build-arg PKG_VERSION="${version}~ci${commit_date}.g${short}" \
349 + --build-arg RPM_RELEASE="0.ci${commit_date}.g${short}" \
350 + --build-arg MAINTAINER="GitGud CI <noreply@${host%%/*}>" \
351 + --build-arg SOURCE_DATE_EPOCH="$epoch" \
352 + --build-arg SUITES="$SUITES" \
353 + --cache-from type=registry,ref=${{ vars.CI_REGISTRY }}/${{ github.repository }}:cli-buildcache \
354 + --cache-to type=registry,ref=${{ vars.CI_REGISTRY }}/${{ github.repository }}:cli-buildcache,mode=max \
355 + --output type=local,dest=./cli-dist \
356 + --file cli/Dockerfile .
357 +
358 + ls -l cli-dist
359 +
360 + # Same per-job token the other registries take: minted for this
361 + # job, authorized to publish to THIS repository's packages and
362 + # nowhere else, so there is no secret to create first.
363 + - name: Publish to the apt repository
364 + env:
365 + REPOSITORY: ${{ github.repository }}
366 + TOKEN: ${{ github.token }}
367 + SUITES: trixie forky
368 + run: |
369 + set -euo pipefail
370 + for suite in $SUITES; do
371 + package=$(echo cli-dist/*+"${suite}"_*.deb)
372 + echo "publishing $package to $suite"
373 + curl --fail-with-body -sS \
374 + -u "gitgud-actions:$TOKEN" \
375 + -H "Content-Type: application/vnd.debian.binary-package" \
376 + --data-binary "@$package" \
377 + "$FORGE_URL/pkg/deb/$REPOSITORY/upload?dist=$suite&component=main"
378 + echo
379 + done
380 +
381 + # The rpm registry has no suites: one repository, indexed as
382 + # rpm-md, with the package's own EVR doing the ordering.
383 + - name: Publish to the rpm repository
384 + env:
385 + REPOSITORY: ${{ github.repository }}
386 + TOKEN: ${{ github.token }}
387 + run: |
388 + set -euo pipefail
389 + for package in cli-dist/*.rpm; do
390 + echo "publishing $package"
391 + curl --fail-with-body -sS \
392 + -u "gitgud-actions:$TOKEN" \
393 + -H "Content-Type: application/octet-stream" \
394 + --data-binary "@$package" \
395 + "$FORGE_URL/pkg/rpm/$REPOSITORY/upload"
396 + echo
397 + done
398 +
399 + - name: How to install it
400 + env:
401 + REPOSITORY: ${{ github.repository }}
402 + OWNER: ${{ github.repository_owner }}
403 + run: |
404 + cat <<EOF
405 + # Debian / Ubuntu — \$(lsb_release -cs) is trixie or forky
406 + curl -fsSL $FORGE_URL/pkg/_keys/deb/$OWNER | sudo tee /etc/apt/keyrings/$OWNER.asc >/dev/null
407 + echo "deb [signed-by=/etc/apt/keyrings/$OWNER.asc] $FORGE_URL/pkg/deb/$REPOSITORY \$(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gitgud.list
408 + sudo apt update && sudo apt install gg
409 +
410 + # Fedora / RHEL / openSUSE — /etc/yum.repos.d/$OWNER.repo
411 + [$OWNER]
412 + name=$OWNER
413 + baseurl=$FORGE_URL/pkg/rpm/$REPOSITORY
414 + enabled=1
415 + repo_gpgcheck=1
416 + # CI publishes unsigned packages; the forge signs the index.
417 + gpgcheck=0
418 + gpgkey=$FORGE_URL/pkg/_keys/rpm/$OWNER
419 +
420 + sudo dnf install gg
421 + EOF
added cli/.gitignore
+1 −0
@@ -0,0 +1 @@
1 +/target
added cli/Cargo.lock
+3390 −0
@@ -0,0 +1,3390 @@
1 +# This file is automatically @generated by Cargo.
2 +# It is not intended for manual editing.
3 +version = 4
4 +
5 +[[package]]
6 +name = "aho-corasick"
7 +version = "1.1.5"
8 +source = "registry+https://github.com/rust-lang/crates.io-index"
9 +checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba"
10 +dependencies = [
11 + "memchr",
12 +]
13 +
14 +[[package]]
15 +name = "allocator-api2"
16 +version = "0.2.21"
17 +source = "registry+https://github.com/rust-lang/crates.io-index"
18 +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
19 +
20 +[[package]]
21 +name = "android_system_properties"
22 +version = "0.1.6"
23 +source = "registry+https://github.com/rust-lang/crates.io-index"
24 +checksum = "ae221649c9976a6f6c56ae1facf410f3ddb33cc661c4b7b61020a912d4237fbc"
25 +dependencies = [
26 + "libc",
27 +]
28 +
29 +[[package]]
30 +name = "anstream"
31 +version = "1.0.0"
32 +source = "registry+https://github.com/rust-lang/crates.io-index"
33 +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d"
34 +dependencies = [
35 + "anstyle",
36 + "anstyle-parse",
37 + "anstyle-query",
38 + "anstyle-wincon",
39 + "colorchoice",
40 + "is_terminal_polyfill",
41 + "utf8parse",
42 +]
43 +
44 +[[package]]
45 +name = "anstyle"
46 +version = "1.0.14"
47 +source = "registry+https://github.com/rust-lang/crates.io-index"
48 +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
49 +
50 +[[package]]
51 +name = "anstyle-parse"
52 +version = "1.0.0"
53 +source = "registry+https://github.com/rust-lang/crates.io-index"
54 +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e"
55 +dependencies = [
56 + "utf8parse",
57 +]
58 +
59 +[[package]]
60 +name = "anstyle-query"
61 +version = "1.1.5"
62 +source = "registry+https://github.com/rust-lang/crates.io-index"
63 +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
64 +dependencies = [
65 + "windows-sys 0.61.2",
66 +]
67 +
68 +[[package]]
69 +name = "anstyle-wincon"
70 +version = "3.0.11"
71 +source = "registry+https://github.com/rust-lang/crates.io-index"
72 +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
73 +dependencies = [
74 + "anstyle",
75 + "once_cell_polyfill",
76 + "windows-sys 0.61.2",
77 +]
78 +
79 +[[package]]
80 +name = "anyhow"
81 +version = "1.0.104"
82 +source = "registry+https://github.com/rust-lang/crates.io-index"
83 +checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470"
84 +
85 +[[package]]
86 +name = "approx"
87 +version = "0.5.1"
88 +source = "registry+https://github.com/rust-lang/crates.io-index"
89 +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
90 +dependencies = [
91 + "num-traits",
92 +]
93 +
94 +[[package]]
95 +name = "atomic"
96 +version = "0.6.1"
97 +source = "registry+https://github.com/rust-lang/crates.io-index"
98 +checksum = "a89cbf775b137e9b968e67227ef7f775587cde3fd31b0d8599dbd0f598a48340"
99 +dependencies = [
100 + "bytemuck",
101 +]
102 +
103 +[[package]]
104 +name = "atomic-waker"
105 +version = "1.1.2"
106 +source = "registry+https://github.com/rust-lang/crates.io-index"
107 +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
108 +
109 +[[package]]
110 +name = "autocfg"
111 +version = "1.5.1"
112 +source = "registry+https://github.com/rust-lang/crates.io-index"
113 +checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
114 +
115 +[[package]]
116 +name = "aws-lc-rs"
117 +version = "1.18.1"
118 +source = "registry+https://github.com/rust-lang/crates.io-index"
119 +checksum = "b281d307588d634de920874890732659e2e7672f72b5e10e81badc1a8a83621e"
120 +dependencies = [
121 + "aws-lc-sys",
122 + "zeroize",
123 +]
124 +
125 +[[package]]
126 +name = "aws-lc-sys"
127 +version = "0.45.0"
128 +source = "registry+https://github.com/rust-lang/crates.io-index"
129 +checksum = "9bff6c3b54fad79a2e60b8102caf565819711497c1f5f092f49508e2f5c31b27"
130 +dependencies = [
131 + "cc",
132 + "cmake",
133 + "dunce",
134 + "fs_extra",
135 + "pkg-config",
136 +]
137 +
138 +[[package]]
139 +name = "base64"
140 +version = "0.22.1"
141 +source = "registry+https://github.com/rust-lang/crates.io-index"
142 +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
143 +
144 +[[package]]
145 +name = "bit-set"
146 +version = "0.5.3"
147 +source = "registry+https://github.com/rust-lang/crates.io-index"
148 +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
149 +dependencies = [
150 + "bit-vec",
151 +]
152 +
153 +[[package]]
154 +name = "bit-vec"
155 +version = "0.6.3"
156 +source = "registry+https://github.com/rust-lang/crates.io-index"
157 +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
158 +
159 +[[package]]
160 +name = "bitflags"
161 +version = "1.3.2"
162 +source = "registry+https://github.com/rust-lang/crates.io-index"
163 +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
164 +
165 +[[package]]
166 +name = "bitflags"
167 +version = "2.13.2"
168 +source = "registry+https://github.com/rust-lang/crates.io-index"
169 +checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"
170 +
171 +[[package]]
172 +name = "block-buffer"
173 +version = "0.10.4"
174 +source = "registry+https://github.com/rust-lang/crates.io-index"
175 +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
176 +dependencies = [
177 + "generic-array",
178 +]
179 +
180 +[[package]]
181 +name = "bumpalo"
182 +version = "3.20.3"
183 +source = "registry+https://github.com/rust-lang/crates.io-index"
184 +checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649"
185 +
186 +[[package]]
187 +name = "by_address"
188 +version = "1.2.1"
189 +source = "registry+https://github.com/rust-lang/crates.io-index"
190 +checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06"
191 +
192 +[[package]]
193 +name = "bytemuck"
194 +version = "1.25.2"
195 +source = "registry+https://github.com/rust-lang/crates.io-index"
196 +checksum = "95832e849adfb21180ccb6826a99da14e5d266ae5c2e668e1602cf234f153797"
197 +
198 +[[package]]
199 +name = "bytes"
200 +version = "1.12.1"
201 +source = "registry+https://github.com/rust-lang/crates.io-index"
202 +checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
203 +
204 +[[package]]
205 +name = "castaway"
206 +version = "0.2.4"
207 +source = "registry+https://github.com/rust-lang/crates.io-index"
208 +checksum = "dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a"
209 +dependencies = [
210 + "rustversion",
211 +]
212 +
213 +[[package]]
214 +name = "cc"
215 +version = "1.4.7"
216 +source = "registry+https://github.com/rust-lang/crates.io-index"
217 +checksum = "54413ede23c2daf518f35156dfde027feb2374004d63bd497f983c8db9c0e313"
218 +dependencies = [
219 + "find-msvc-tools",
220 + "jobserver",
221 + "libc",
222 + "shlex",
223 +]
224 +
225 +[[package]]
226 +name = "cesu8"
227 +version = "1.1.0"
228 +source = "registry+https://github.com/rust-lang/crates.io-index"
229 +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
230 +
231 +[[package]]
232 +name = "cfg-if"
233 +version = "1.0.5"
234 +source = "registry+https://github.com/rust-lang/crates.io-index"
235 +checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600"
236 +
237 +[[package]]
238 +name = "cfg_aliases"
239 +version = "0.2.2"
240 +source = "registry+https://github.com/rust-lang/crates.io-index"
241 +checksum = "f079e83a288787bcd14a6aea84cee5c87a67c5a3e660c30f557a3d24761b3527"
242 +
243 +[[package]]
244 +name = "chacha20"
245 +version = "0.10.2"
246 +source = "registry+https://github.com/rust-lang/crates.io-index"
247 +checksum = "65c35e4b699c7e15ccbe7ee35c005e4fc0a278d22238a2857e6ce2dadeda1b06"
248 +dependencies = [
249 + "cfg-if",
250 + "cpufeatures 0.3.1",
251 + "rand_core 0.10.1",
252 +]
253 +
254 +[[package]]
255 +name = "chrono"
256 +version = "0.4.45"
257 +source = "registry+https://github.com/rust-lang/crates.io-index"
258 +checksum = "1aa79e62e7697b8e29b513a68abacf485adcd1fe8284a4316c5ae868e6633327"
259 +dependencies = [
260 + "iana-time-zone",
261 + "num-traits",
262 + "windows-link",
263 +]
264 +
265 +[[package]]
266 +name = "clap"
267 +version = "4.6.7"
268 +source = "registry+https://github.com/rust-lang/crates.io-index"
269 +checksum = "aa8876b300ab35ba921adea3dfd70157a46249b33f95c9084ae5709785478946"
270 +dependencies = [
271 + "clap_builder",
272 + "clap_derive",
273 +]
274 +
275 +[[package]]
276 +name = "clap_builder"
277 +version = "4.6.7"
278 +source = "registry+https://github.com/rust-lang/crates.io-index"
279 +checksum = "ec0797fb7aeb1406c84efac526901f7ec3ead2124f946b494e72879d4b54704d"
280 +dependencies = [
281 + "anstream",
282 + "anstyle",
283 + "clap_lex",
284 + "strsim",
285 + "terminal_size",
286 +]
287 +
288 +[[package]]
289 +name = "clap_derive"
290 +version = "4.6.7"
291 +source = "registry+https://github.com/rust-lang/crates.io-index"
292 +checksum = "f9c751b79415d4e559e3d1fcf128e09e720eb673a06d26cf6f392d37d75b66e0"
293 +dependencies = [
294 + "heck",
295 + "proc-macro2",
296 + "quote",
297 + "syn 3.0.6",
298 +]
299 +
300 +[[package]]
301 +name = "clap_lex"
302 +version = "1.1.1"
303 +source = "registry+https://github.com/rust-lang/crates.io-index"
304 +checksum = "1c133bc6a41be0d194c306b5506d15e6feeea7b1d6604bd3f8310dfb2ca96486"
305 +
306 +[[package]]
307 +name = "cmake"
308 +version = "0.1.58"
309 +source = "registry+https://github.com/rust-lang/crates.io-index"
310 +checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678"
311 +dependencies = [
312 + "cc",
313 +]
314 +
315 +[[package]]
316 +name = "colorchoice"
317 +version = "1.0.5"
318 +source = "registry+https://github.com/rust-lang/crates.io-index"
319 +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570"
320 +
321 +[[package]]
322 +name = "combine"
323 +version = "4.6.8"
324 +source = "registry+https://github.com/rust-lang/crates.io-index"
325 +checksum = "cfc320937d09e6de266b31b9afb480f197d7a861be86be7cb2ea7e5d1bfffc5e"
326 +dependencies = [
327 + "bytes",
328 + "memchr",
329 +]
330 +
331 +[[package]]
332 +name = "compact_str"
333 +version = "0.9.1"
334 +source = "registry+https://github.com/rust-lang/crates.io-index"
335 +checksum = "9dfdd1c2274d9aa354115b09dc9a901d6c5576818cdf70d14cae2bdb47df00ab"
336 +dependencies = [
337 + "castaway",
338 + "cfg-if",
339 + "itoa",
340 + "rustversion",
341 + "ryu",
342 + "static_assertions",
343 +]
344 +
345 +[[package]]
346 +name = "convert_case"
347 +version = "0.10.0"
348 +source = "registry+https://github.com/rust-lang/crates.io-index"
349 +checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9"
350 +dependencies = [
351 + "unicode-segmentation",
352 +]
353 +
354 +[[package]]
355 +name = "core-foundation"
356 +version = "0.9.4"
357 +source = "registry+https://github.com/rust-lang/crates.io-index"
358 +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
359 +dependencies = [
360 + "core-foundation-sys",
361 + "libc",
362 +]
363 +
364 +[[package]]
365 +name = "core-foundation"
366 +version = "0.10.1"
367 +source = "registry+https://github.com/rust-lang/crates.io-index"
368 +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6"
369 +dependencies = [
370 + "core-foundation-sys",
371 + "libc",
372 +]
373 +
374 +[[package]]
375 +name = "core-foundation-sys"
376 +version = "0.8.7"
377 +source = "registry+https://github.com/rust-lang/crates.io-index"
378 +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
379 +
380 +[[package]]
381 +name = "core_detect"
382 +version = "1.0.0"
383 +source = "registry+https://github.com/rust-lang/crates.io-index"
384 +checksum = "7f8f80099a98041a3d1622845c271458a2d73e688351bf3cb999266764b81d48"
385 +
386 +[[package]]
387 +name = "cpufeatures"
388 +version = "0.2.17"
389 +source = "registry+https://github.com/rust-lang/crates.io-index"
390 +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
391 +dependencies = [
392 + "libc",
393 +]
394 +
395 +[[package]]
396 +name = "cpufeatures"
397 +version = "0.3.1"
398 +source = "registry+https://github.com/rust-lang/crates.io-index"
399 +checksum = "5ca28b0ae3115b884660db4118d803791fd6756b6e88f39c0f3f7859060d7566"
400 +dependencies = [
401 + "libc",
402 +]
403 +
404 +[[package]]
405 +name = "critical-section"
406 +version = "1.2.0"
407 +source = "registry+https://github.com/rust-lang/crates.io-index"
408 +checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b"
409 +
410 +[[package]]
411 +name = "crossterm"
412 +version = "0.29.0"
413 +source = "registry+https://github.com/rust-lang/crates.io-index"
414 +checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b"
415 +dependencies = [
416 + "bitflags 2.13.2",
417 + "crossterm_winapi",
418 + "derive_more",
419 + "document-features",
420 + "mio",
421 + "parking_lot",
422 + "rustix",
423 + "signal-hook",
424 + "signal-hook-mio",
425 + "winapi",
426 +]
427 +
428 +[[package]]
429 +name = "crossterm_winapi"
430 +version = "0.9.1"
431 +source = "registry+https://github.com/rust-lang/crates.io-index"
432 +checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b"
433 +dependencies = [
434 + "winapi",
435 +]
436 +
437 +[[package]]
438 +name = "crypto-common"
439 +version = "0.1.7"
440 +source = "registry+https://github.com/rust-lang/crates.io-index"
441 +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a"
442 +dependencies = [
443 + "generic-array",
444 + "typenum",
445 +]
446 +
447 +[[package]]
448 +name = "csscolorparser"
449 +version = "0.6.2"
450 +source = "registry+https://github.com/rust-lang/crates.io-index"
451 +checksum = "eb2a7d3066da2de787b7f032c736763eb7ae5d355f81a68bab2675a96008b0bf"
452 +dependencies = [
453 + "lab",
454 + "phf",
455 +]
456 +
457 +[[package]]
458 +name = "darling"
459 +version = "0.24.1"
460 +source = "registry+https://github.com/rust-lang/crates.io-index"
461 +checksum = "ed17f5901b6630b993ca003def43f2f8ef4014fc13b047b57aad617ff32bc2ec"
462 +dependencies = [
463 + "darling_core",
464 + "darling_macro",
465 +]
466 +
467 +[[package]]
468 +name = "darling_core"
469 +version = "0.24.1"
470 +source = "registry+https://github.com/rust-lang/crates.io-index"
471 +checksum = "6837e2cf7485aaae18f86181d2f0e9a7ed297a025e220aeabf63fdebd3a2ddff"
472 +dependencies = [
473 + "ident_case",
474 + "proc-macro2",
475 + "quote",
476 + "strsim",
477 + "syn 3.0.6",
478 +]
479 +
480 +[[package]]
481 +name = "darling_macro"
482 +version = "0.24.1"
483 +source = "registry+https://github.com/rust-lang/crates.io-index"
484 +checksum = "2ac7135c3ef02b2f7833bbeb1be5ba7f966dcde8a87c6b87f65a778d71a02785"
485 +dependencies = [
486 + "darling_core",
487 + "quote",
488 + "syn 3.0.6",
489 +]
490 +
491 +[[package]]
492 +name = "deltae"
493 +version = "0.3.2"
494 +source = "registry+https://github.com/rust-lang/crates.io-index"
495 +checksum = "5729f5117e208430e437df2f4843f5e5952997175992d1414f94c57d61e270b4"
496 +
497 +[[package]]
498 +name = "deranged"
499 +version = "0.5.8"
500 +source = "registry+https://github.com/rust-lang/crates.io-index"
501 +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c"
502 +
503 +[[package]]
504 +name = "derive_more"
505 +version = "2.1.1"
506 +source = "registry+https://github.com/rust-lang/crates.io-index"
507 +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134"
508 +dependencies = [
509 + "derive_more-impl",
510 +]
511 +
512 +[[package]]
513 +name = "derive_more-impl"
514 +version = "2.1.1"
515 +source = "registry+https://github.com/rust-lang/crates.io-index"
516 +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb"
517 +dependencies = [
518 + "convert_case",
519 + "proc-macro2",
520 + "quote",
521 + "rustc_version",
522 + "syn 2.0.119",
523 +]
524 +
525 +[[package]]
526 +name = "digest"
527 +version = "0.10.7"
528 +source = "registry+https://github.com/rust-lang/crates.io-index"
529 +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
530 +dependencies = [
531 + "block-buffer",
532 + "crypto-common",
533 +]
534 +
535 +[[package]]
536 +name = "dirs"
537 +version = "7.0.0"
538 +source = "registry+https://github.com/rust-lang/crates.io-index"
539 +checksum = "8d57d423b3c82e89b9a24ca3091fee61f456a26edbd28d26c65906f4bc1dcd8f"
540 +dependencies = [
541 + "dirs-sys",
542 +]
543 +
544 +[[package]]
545 +name = "dirs-sys"
546 +version = "0.5.0"
547 +source = "registry+https://github.com/rust-lang/crates.io-index"
548 +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab"
549 +dependencies = [
550 + "libc",
551 + "option-ext",
552 + "redox_users",
553 + "windows-sys 0.61.2",
554 +]
555 +
556 +[[package]]
557 +name = "displaydoc"
558 +version = "0.2.7"
559 +source = "registry+https://github.com/rust-lang/crates.io-index"
560 +checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8"
561 +dependencies = [
562 + "proc-macro2",
563 + "quote",
564 + "syn 3.0.6",
565 +]
566 +
567 +[[package]]
568 +name = "document-features"
569 +version = "0.2.12"
570 +source = "registry+https://github.com/rust-lang/crates.io-index"
571 +checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61"
572 +dependencies = [
573 + "litrs",
574 +]
575 +
576 +[[package]]
577 +name = "dunce"
578 +version = "1.0.5"
579 +source = "registry+https://github.com/rust-lang/crates.io-index"
580 +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"
581 +
582 +[[package]]
583 +name = "either"
584 +version = "1.18.0"
585 +source = "registry+https://github.com/rust-lang/crates.io-index"
586 +checksum = "252afb9ae5eaa683babdc6a068b3f5726eb19e05070c731f9b2a23a7c3e8ed34"
587 +
588 +[[package]]
589 +name = "encoding_rs"
590 +version = "0.8.41"
591 +source = "registry+https://github.com/rust-lang/crates.io-index"
592 +checksum = "7b5ef0006ac9ab233c38522f5ae99cae3625151de8f706cacee1cba4b8e2832a"
593 +dependencies = [
594 + "cfg-if",
595 + "core_detect",
596 + "multiversion",
597 + "multiversion_no_op",
598 + "rustversion",
599 + "scopeguard",
600 + "simdutf8",
601 +]
602 +
603 +[[package]]
604 +name = "equivalent"
605 +version = "1.0.2"
606 +source = "registry+https://github.com/rust-lang/crates.io-index"
607 +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
608 +
609 +[[package]]
610 +name = "errno"
611 +version = "0.3.14"
612 +source = "registry+https://github.com/rust-lang/crates.io-index"
613 +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
614 +dependencies = [
615 + "libc",
616 + "windows-sys 0.61.2",
617 +]
618 +
619 +[[package]]
620 +name = "euclid"
621 +version = "0.22.14"
622 +source = "registry+https://github.com/rust-lang/crates.io-index"
623 +checksum = "f1a05365e3b1c6d1650318537c7460c6923f1abdd272ad6842baa2b509957a06"
624 +dependencies = [
625 + "num-traits",
626 +]
627 +
628 +[[package]]
629 +name = "fancy-regex"
630 +version = "0.11.0"
631 +source = "registry+https://github.com/rust-lang/crates.io-index"
632 +checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2"
633 +dependencies = [
634 + "bit-set",
635 + "regex",
636 +]
637 +
638 +[[package]]
639 +name = "filedescriptor"
640 +version = "0.8.3"
641 +source = "registry+https://github.com/rust-lang/crates.io-index"
642 +checksum = "e40758ed24c9b2eeb76c35fb0aebc66c626084edd827e07e1552279814c6682d"
643 +dependencies = [
644 + "libc",
645 + "thiserror 1.0.69",
646 + "winapi",
647 +]
648 +
649 +[[package]]
650 +name = "find-msvc-tools"
651 +version = "0.1.13"
652 +source = "registry+https://github.com/rust-lang/crates.io-index"
653 +checksum = "ef25905e51abafe4dcea6c15fec58c57b601cdbd0ee53d22ea1d3016c587d39b"
654 +
655 +[[package]]
656 +name = "finl_unicode"
657 +version = "1.4.0"
658 +source = "registry+https://github.com/rust-lang/crates.io-index"
659 +checksum = "9844ddc3a6e533d62bba727eb6c28b5d360921d5175e9ff0f1e621a5c590a4d5"
660 +
661 +[[package]]
662 +name = "fixedbitset"
663 +version = "0.4.2"
664 +source = "registry+https://github.com/rust-lang/crates.io-index"
665 +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
666 +
667 +[[package]]
668 +name = "fnv"
669 +version = "1.0.7"
670 +source = "registry+https://github.com/rust-lang/crates.io-index"
671 +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
672 +
673 +[[package]]
674 +name = "foldhash"
675 +version = "0.2.0"
676 +source = "registry+https://github.com/rust-lang/crates.io-index"
677 +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
678 +
679 +[[package]]
680 +name = "form_urlencoded"
681 +version = "1.2.2"
682 +source = "registry+https://github.com/rust-lang/crates.io-index"
683 +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf"
684 +dependencies = [
685 + "percent-encoding",
686 +]
687 +
688 +[[package]]
689 +name = "fs_extra"
690 +version = "1.3.0"
691 +source = "registry+https://github.com/rust-lang/crates.io-index"
692 +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c"
693 +
694 +[[package]]
695 +name = "futures-channel"
696 +version = "0.3.34"
697 +source = "registry+https://github.com/rust-lang/crates.io-index"
698 +checksum = "b1f9e3d69d39e4862ffed03ed071a76f9a13ba1d9109d355b0f0aa6b15e393c4"
699 +dependencies = [
700 + "futures-core",
701 +]
702 +
703 +[[package]]
704 +name = "futures-core"
705 +version = "0.3.34"
706 +source = "registry+https://github.com/rust-lang/crates.io-index"
707 +checksum = "92d699e522242e69e3003b94ecc1f960f3a5e015aa7c5d7486e65ad01dd94f5e"
708 +
709 +[[package]]
710 +name = "futures-sink"
711 +version = "0.3.34"
712 +source = "registry+https://github.com/rust-lang/crates.io-index"
713 +checksum = "1944426bf7d03f1d14f708785e4b33efd750b36d48a157b836b3efc15ede8e1d"
714 +
715 +[[package]]
716 +name = "futures-task"
717 +version = "0.3.34"
718 +source = "registry+https://github.com/rust-lang/crates.io-index"
719 +checksum = "cd417de3d1d015fc3bfd2b1ea46dfc7bab72ef86f1cc7cc9c78e728b34a6d1fd"
720 +
721 +[[package]]
722 +name = "futures-util"
723 +version = "0.3.34"
724 +source = "registry+https://github.com/rust-lang/crates.io-index"
725 +checksum = "0d50a92467f8ba5dd6e3ee5d4bd04d73ab2e4e1c44474a0674821dfce14b79bc"
726 +dependencies = [
727 + "futures-core",
728 + "futures-task",
729 + "pin-project-lite",
730 + "slab",
731 +]
732 +
733 +[[package]]
734 +name = "generic-array"
735 +version = "0.14.7"
736 +source = "registry+https://github.com/rust-lang/crates.io-index"
737 +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
738 +dependencies = [
739 + "typenum",
740 + "version_check",
741 +]
742 +
743 +[[package]]
744 +name = "getrandom"
745 +version = "0.2.17"
746 +source = "registry+https://github.com/rust-lang/crates.io-index"
747 +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0"
748 +dependencies = [
749 + "cfg-if",
750 + "js-sys",
751 + "libc",
752 + "wasi",
753 + "wasm-bindgen",
754 +]
755 +
756 +[[package]]
757 +name = "getrandom"
758 +version = "0.3.4"
759 +source = "registry+https://github.com/rust-lang/crates.io-index"
760 +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
761 +dependencies = [
762 + "cfg-if",
763 + "libc",
764 + "r-efi 5.3.0",
765 + "wasip2",
766 +]
767 +
768 +[[package]]
769 +name = "getrandom"
770 +version = "0.4.3"
771 +source = "registry+https://github.com/rust-lang/crates.io-index"
772 +checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
773 +dependencies = [
774 + "cfg-if",
775 + "js-sys",
776 + "libc",
777 + "r-efi 6.0.0",
778 + "rand_core 0.10.1",
779 + "wasm-bindgen",
780 +]
781 +
782 +[[package]]
783 +name = "gitgud-cli"
784 +version = "0.1.0"
785 +dependencies = [
786 + "anyhow",
787 + "chrono",
788 + "clap",
789 + "dirs",
790 + "ratatui",
791 + "reqwest",
792 + "serde",
793 + "serde_json",
794 + "tokio",
795 + "toml",
796 + "url",
797 +]
798 +
799 +[[package]]
800 +name = "h2"
801 +version = "0.4.19"
802 +source = "registry+https://github.com/rust-lang/crates.io-index"
803 +checksum = "ef8e5e5a340588f4452631496976cf8636d4a7ecf600239fdc27615d2530bc16"
804 +dependencies = [
805 + "atomic-waker",
806 + "bytes",
807 + "fnv",
808 + "futures-core",
809 + "futures-sink",
810 + "http",
811 + "indexmap",
812 + "slab",
813 + "tokio",
814 + "tokio-util",
815 + "tracing",
816 +]
817 +
818 +[[package]]
819 +name = "hashbrown"
820 +version = "0.16.1"
821 +source = "registry+https://github.com/rust-lang/crates.io-index"
822 +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
823 +dependencies = [
824 + "allocator-api2",
825 + "equivalent",
826 + "foldhash",
827 +]
828 +
829 +[[package]]
830 +name = "hashbrown"
831 +version = "0.17.1"
832 +source = "registry+https://github.com/rust-lang/crates.io-index"
833 +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"
834 +dependencies = [
835 + "allocator-api2",
836 + "equivalent",
837 + "foldhash",
838 +]
839 +
840 +[[package]]
841 +name = "heck"
842 +version = "0.5.0"
843 +source = "registry+https://github.com/rust-lang/crates.io-index"
844 +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
845 +
846 +[[package]]
847 +name = "hex"
848 +version = "0.4.3"
849 +source = "registry+https://github.com/rust-lang/crates.io-index"
850 +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
851 +
852 +[[package]]
853 +name = "http"
854 +version = "1.5.0"
855 +source = "registry+https://github.com/rust-lang/crates.io-index"
856 +checksum = "918d3568bebf352712bc2ef3d46a8bcf1a75b373be6539de198e9105cbbf9ce0"
857 +dependencies = [
858 + "bytes",
859 + "itoa",
860 +]
861 +
862 +[[package]]
863 +name = "http-body"
864 +version = "1.1.0"
865 +source = "registry+https://github.com/rust-lang/crates.io-index"
866 +checksum = "ca2a8f2913ee65f60facd6a5905613afaa448497a0230cc41ce022d93290bc2c"
867 +dependencies = [
868 + "bytes",
869 + "http",
870 +]
871 +
872 +[[package]]
873 +name = "http-body-util"
874 +version = "0.1.5"
875 +source = "registry+https://github.com/rust-lang/crates.io-index"
876 +checksum = "23169fe34a5fbcdd3f3862e78fb9b6fccd5f02a6dc6f732547005d45631ce71c"
877 +dependencies = [
878 + "bytes",
879 + "futures-core",
880 + "http",
881 + "http-body",
882 + "pin-project-lite",
883 +]
884 +
885 +[[package]]
886 +name = "httparse"
887 +version = "1.10.1"
888 +source = "registry+https://github.com/rust-lang/crates.io-index"
889 +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87"
890 +
891 +[[package]]
892 +name = "hyper"
893 +version = "1.11.1"
894 +source = "registry+https://github.com/rust-lang/crates.io-index"
895 +checksum = "27b501faa50e7a26c3d3560ca625132f4078a17771f4810baf70475ae48cbe43"
896 +dependencies = [
897 + "atomic-waker",
898 + "bytes",
899 + "futures-channel",
900 + "futures-core",
901 + "h2",
902 + "http",
903 + "http-body",
904 + "httparse",
905 + "itoa",
906 + "pin-project-lite",
907 + "smallvec",
908 + "tokio",
909 + "want",
910 +]
911 +
912 +[[package]]
913 +name = "hyper-rustls"
914 +version = "0.27.9"
915 +source = "registry+https://github.com/rust-lang/crates.io-index"
916 +checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f"
917 +dependencies = [
918 + "http",
919 + "hyper",
920 + "hyper-util",
921 + "rustls",
922 + "tokio",
923 + "tokio-rustls",
924 + "tower-service",
925 +]
926 +
927 +[[package]]
928 +name = "hyper-util"
929 +version = "0.1.20"
930 +source = "registry+https://github.com/rust-lang/crates.io-index"
931 +checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0"
932 +dependencies = [
933 + "base64",
934 + "bytes",
935 + "futures-channel",
936 + "futures-util",
937 + "http",
938 + "http-body",
939 + "hyper",
940 + "ipnet",
941 + "libc",
942 + "percent-encoding",
943 + "pin-project-lite",
944 + "socket2",
945 + "system-configuration",
946 + "tokio",
947 + "tower-service",
948 + "tracing",
949 + "windows-registry",
950 +]
951 +
952 +[[package]]
953 +name = "iana-time-zone"
954 +version = "0.1.65"
955 +source = "registry+https://github.com/rust-lang/crates.io-index"
956 +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470"
957 +dependencies = [
958 + "android_system_properties",
959 + "core-foundation-sys",
960 + "iana-time-zone-haiku",
961 + "js-sys",
962 + "log",
963 + "wasm-bindgen",
964 + "windows-core",
965 +]
966 +
967 +[[package]]
968 +name = "iana-time-zone-haiku"
969 +version = "0.1.2"
970 +source = "registry+https://github.com/rust-lang/crates.io-index"
971 +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
972 +dependencies = [
973 + "cc",
974 +]
975 +
976 +[[package]]
977 +name = "icu_collections"
978 +version = "2.3.0"
979 +source = "registry+https://github.com/rust-lang/crates.io-index"
980 +checksum = "fa68d21081c4a05d5a901a1c62add574c77048b6a1c67be3b50ce0b60d4ca513"
981 +dependencies = [
982 + "displaydoc",
983 + "potential_utf",
984 + "utf8_iter",
985 + "yoke",
986 + "zerofrom",
987 + "zerovec",
988 +]
989 +
990 +[[package]]
991 +name = "icu_locale_core"
992 +version = "2.3.0"
993 +source = "registry+https://github.com/rust-lang/crates.io-index"
994 +checksum = "d56e28588da92eee5c3201a6eff33fabdd49b62269c8938d4ff050ce4d900deb"
995 +dependencies = [
996 + "displaydoc",
997 + "litemap",
998 + "tinystr",
999 + "writeable",
1000 + "zerovec",
1001 +]
1002 +
1003 +[[package]]
1004 +name = "icu_normalizer"
1005 +version = "2.3.0"
1006 +source = "registry+https://github.com/rust-lang/crates.io-index"
1007 +checksum = "12f9cf5f235641ed274641dd81c3f28d870e276763d0797aeeab72317b1c646f"
1008 +dependencies = [
1009 + "icu_collections",
1010 + "icu_normalizer_data",
1011 + "icu_properties",
1012 + "icu_provider",
1013 + "smallvec",
1014 + "zerovec",
1015 +]
1016 +
1017 +[[package]]
1018 +name = "icu_normalizer_data"
1019 +version = "2.3.0"
1020 +source = "registry+https://github.com/rust-lang/crates.io-index"
1021 +checksum = "1563da1ed3e0b3bf3d74c9b85917ac9c56464d2f57242270c09c9e752f8021a0"
1022 +
1023 +[[package]]
1024 +name = "icu_properties"
1025 +version = "2.3.0"
1026 +source = "registry+https://github.com/rust-lang/crates.io-index"
1027 +checksum = "7e7ca276ad3145661a65914e6daf131ca5120cd3dcee8f8f3214b8875184a148"
1028 +dependencies = [
1029 + "displaydoc",
1030 + "icu_collections",
1031 + "icu_locale_core",
1032 + "icu_properties_data",
1033 + "icu_provider",
1034 + "zerotrie",
1035 + "zerovec",
1036 +]
1037 +
1038 +[[package]]
1039 +name = "icu_properties_data"
1040 +version = "2.3.0"
1041 +source = "registry+https://github.com/rust-lang/crates.io-index"
1042 +checksum = "e590f038c1464a96894fd6d10127e90a8be4509f56ff7ecef851b15cee0b7caa"
1043 +
1044 +[[package]]
1045 +name = "icu_provider"
1046 +version = "2.3.1"
1047 +source = "registry+https://github.com/rust-lang/crates.io-index"
1048 +checksum = "d27bbb9d3abbefac45d55f647c9de1d44aafcd1186eb91879afef17c396c3e73"
1049 +dependencies = [
1050 + "displaydoc",
1051 + "icu_locale_core",
1052 + "writeable",
1053 + "yoke",
1054 + "zerofrom",
1055 + "zerotrie",
1056 + "zerovec",
1057 +]
1058 +
1059 +[[package]]
1060 +name = "ident_case"
1061 +version = "1.0.1"
1062 +source = "registry+https://github.com/rust-lang/crates.io-index"
1063 +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
1064 +
1065 +[[package]]
1066 +name = "idna"
1067 +version = "1.1.0"
1068 +source = "registry+https://github.com/rust-lang/crates.io-index"
1069 +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de"
1070 +dependencies = [
1071 + "idna_adapter",
1072 + "smallvec",
1073 + "utf8_iter",
1074 +]
1075 +
1076 +[[package]]
1077 +name = "idna_adapter"
1078 +version = "1.2.2"
1079 +source = "registry+https://github.com/rust-lang/crates.io-index"
1080 +checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714"
1081 +dependencies = [
1082 + "icu_normalizer",
1083 + "icu_properties",
1084 +]
1085 +
1086 +[[package]]
1087 +name = "indexmap"
1088 +version = "2.14.2"
1089 +source = "registry+https://github.com/rust-lang/crates.io-index"
1090 +checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855"
1091 +dependencies = [
1092 + "equivalent",
1093 + "hashbrown 0.17.1",
1094 +]
1095 +
1096 +[[package]]
1097 +name = "indoc"
1098 +version = "2.0.7"
1099 +source = "registry+https://github.com/rust-lang/crates.io-index"
1100 +checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
1101 +dependencies = [
1102 + "rustversion",
1103 +]
1104 +
1105 +[[package]]
1106 +name = "instability"
1107 +version = "0.3.13"
1108 +source = "registry+https://github.com/rust-lang/crates.io-index"
1109 +checksum = "2bf84e73fa6f27f299dec58e13223cf70db80da872eb921d4f6138342a0eabc8"
1110 +dependencies = [
1111 + "darling",
1112 + "indoc",
1113 + "proc-macro2",
1114 + "quote",
1115 + "syn 3.0.6",
1116 +]
1117 +
1118 +[[package]]
1119 +name = "ipnet"
1120 +version = "2.12.2"
1121 +source = "registry+https://github.com/rust-lang/crates.io-index"
1122 +checksum = "791930b43c0d5973160d90a8f3894509f2b273430f5c5c73b668636d0287c5c0"
1123 +
1124 +[[package]]
1125 +name = "is_terminal_polyfill"
1126 +version = "1.70.2"
1127 +source = "registry+https://github.com/rust-lang/crates.io-index"
1128 +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695"
1129 +
1130 +[[package]]
1131 +name = "itertools"
1132 +version = "0.14.0"
1133 +source = "registry+https://github.com/rust-lang/crates.io-index"
1134 +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285"
1135 +dependencies = [
1136 + "either",
1137 +]
1138 +
1139 +[[package]]
1140 +name = "itoa"
1141 +version = "1.0.18"
1142 +source = "registry+https://github.com/rust-lang/crates.io-index"
1143 +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
1144 +
1145 +[[package]]
1146 +name = "jni"
1147 +version = "0.21.1"
1148 +source = "registry+https://github.com/rust-lang/crates.io-index"
1149 +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
1150 +dependencies = [
1151 + "cesu8",
1152 + "cfg-if",
1153 + "combine",
1154 + "jni-sys 0.3.1",
1155 + "log",
1156 + "thiserror 1.0.69",
1157 + "walkdir",
1158 + "windows-sys 0.45.0",
1159 +]
1160 +
1161 +[[package]]
1162 +name = "jni-sys"
1163 +version = "0.3.1"
1164 +source = "registry+https://github.com/rust-lang/crates.io-index"
1165 +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258"
1166 +dependencies = [
1167 + "jni-sys 0.4.1",
1168 +]
1169 +
1170 +[[package]]
1171 +name = "jni-sys"
1172 +version = "0.4.1"
1173 +source = "registry+https://github.com/rust-lang/crates.io-index"
1174 +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2"
1175 +dependencies = [
1176 + "jni-sys-macros",
1177 +]
1178 +
1179 +[[package]]
1180 +name = "jni-sys-macros"
1181 +version = "0.4.1"
1182 +source = "registry+https://github.com/rust-lang/crates.io-index"
1183 +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264"
1184 +dependencies = [
1185 + "quote",
1186 + "syn 2.0.119",
1187 +]
1188 +
1189 +[[package]]
1190 +name = "jobserver"
1191 +version = "0.1.35"
1192 +source = "registry+https://github.com/rust-lang/crates.io-index"
1193 +checksum = "1c00acbd29eabad4a2392fa0e921c874934dbbf4194312ad20f04a0ed67a3cb3"
1194 +dependencies = [
1195 + "getrandom 0.4.3",
1196 + "libc",
1197 +]
1198 +
1199 +[[package]]
1200 +name = "js-sys"
1201 +version = "0.3.105"
1202 +source = "registry+https://github.com/rust-lang/crates.io-index"
1203 +checksum = "ce57d20d1ea864ce2ac172ab472d409214f4fd359f0b2a2775abdf522e2af99e"
1204 +dependencies = [
1205 + "cfg-if",
1206 + "futures-util",
1207 + "wasm-bindgen",
1208 +]
1209 +
1210 +[[package]]
1211 +name = "kasuari"
1212 +version = "0.4.12"
1213 +source = "registry+https://github.com/rust-lang/crates.io-index"
1214 +checksum = "bde5057d6143cc94e861d90f591b9303d6716c6b9602309150bd068853c10899"
1215 +dependencies = [
1216 + "hashbrown 0.16.1",
1217 + "portable-atomic",
1218 + "thiserror 2.0.20",
1219 +]
1220 +
1221 +[[package]]
1222 +name = "lab"
1223 +version = "0.11.0"
1224 +source = "registry+https://github.com/rust-lang/crates.io-index"
1225 +checksum = "bf36173d4167ed999940f804952e6b08197cae5ad5d572eb4db150ce8ad5d58f"
1226 +
1227 +[[package]]
1228 +name = "lazy_static"
1229 +version = "1.5.0"
1230 +source = "registry+https://github.com/rust-lang/crates.io-index"
1231 +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
1232 +
1233 +[[package]]
1234 +name = "libc"
1235 +version = "0.2.189"
1236 +source = "registry+https://github.com/rust-lang/crates.io-index"
1237 +checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
1238 +
1239 +[[package]]
1240 +name = "libm"
1241 +version = "0.2.16"
1242 +source = "registry+https://github.com/rust-lang/crates.io-index"
1243 +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981"
1244 +
1245 +[[package]]
1246 +name = "libredox"
1247 +version = "0.1.24"
1248 +source = "registry+https://github.com/rust-lang/crates.io-index"
1249 +checksum = "6480ccc157a1389bb2e4891b24751b0f798ba640d22386f23143fbcc89da195a"
1250 +dependencies = [
1251 + "libc",
1252 +]
1253 +
1254 +[[package]]
1255 +name = "line-clipping"
1256 +version = "0.3.8"
1257 +source = "registry+https://github.com/rust-lang/crates.io-index"
1258 +checksum = "e752191d037c44ad111a8caa762921926658402f01cc1253f7bef2020ece4f5e"
1259 +dependencies = [
1260 + "bitflags 2.13.2",
1261 +]
1262 +
1263 +[[package]]
1264 +name = "linux-raw-sys"
1265 +version = "0.12.1"
1266 +source = "registry+https://github.com/rust-lang/crates.io-index"
1267 +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53"
1268 +
1269 +[[package]]
1270 +name = "litemap"
1271 +version = "0.8.3"
1272 +source = "registry+https://github.com/rust-lang/crates.io-index"
1273 +checksum = "47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae"
1274 +
1275 +[[package]]
1276 +name = "litrs"
1277 +version = "1.0.0"
1278 +source = "registry+https://github.com/rust-lang/crates.io-index"
1279 +checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092"
1280 +
1281 +[[package]]
1282 +name = "lock_api"
1283 +version = "0.4.14"
1284 +source = "registry+https://github.com/rust-lang/crates.io-index"
1285 +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"
1286 +dependencies = [
1287 + "scopeguard",
1288 +]
1289 +
1290 +[[package]]
1291 +name = "log"
1292 +version = "0.4.34"
1293 +source = "registry+https://github.com/rust-lang/crates.io-index"
1294 +checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6"
1295 +
1296 +[[package]]
1297 +name = "lru"
1298 +version = "0.18.4"
1299 +source = "registry+https://github.com/rust-lang/crates.io-index"
1300 +checksum = "ff9840bcc50b71349309900da0ce7279aa336ae71d73250b07998932c7d97c25"
1301 +dependencies = [
1302 + "hashbrown 0.17.1",
1303 +]
1304 +
1305 +[[package]]
1306 +name = "lru-slab"
1307 +version = "0.1.3"
1308 +source = "registry+https://github.com/rust-lang/crates.io-index"
1309 +checksum = "4050469837a6ff301cd14c1f8f24f88549e6d548f24f64e2148eb0f72cebc51f"
1310 +
1311 +[[package]]
1312 +name = "mac_address"
1313 +version = "1.1.8"
1314 +source = "registry+https://github.com/rust-lang/crates.io-index"
1315 +checksum = "c0aeb26bf5e836cc1c341c8106051b573f1766dfa05aa87f0b98be5e51b02303"
1316 +dependencies = [
1317 + "nix",
1318 + "winapi",
1319 +]
1320 +
1321 +[[package]]
1322 +name = "memchr"
1323 +version = "2.8.3"
1324 +source = "registry+https://github.com/rust-lang/crates.io-index"
1325 +checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
1326 +
1327 +[[package]]
1328 +name = "memmem"
1329 +version = "0.1.1"
1330 +source = "registry+https://github.com/rust-lang/crates.io-index"
1331 +checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15"
1332 +
1333 +[[package]]
1334 +name = "memoffset"
1335 +version = "0.9.1"
1336 +source = "registry+https://github.com/rust-lang/crates.io-index"
1337 +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
1338 +dependencies = [
1339 + "autocfg",
1340 +]
1341 +
1342 +[[package]]
1343 +name = "mime"
1344 +version = "0.3.17"
1345 +source = "registry+https://github.com/rust-lang/crates.io-index"
1346 +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
1347 +
1348 +[[package]]
1349 +name = "minimal-lexical"
1350 +version = "0.2.1"
1351 +source = "registry+https://github.com/rust-lang/crates.io-index"
1352 +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
1353 +
1354 +[[package]]
1355 +name = "mio"
1356 +version = "1.2.3"
1357 +source = "registry+https://github.com/rust-lang/crates.io-index"
1358 +checksum = "4b18443e9c262bfe8fa82f51666e2642c53393f7e5c27b3e1aeab922cff5b9d8"
1359 +dependencies = [
1360 + "libc",
1361 + "log",
1362 + "wasi",
1363 + "windows-sys 0.61.2",
1364 +]
1365 +
1366 +[[package]]
1367 +name = "multiversion"
1368 +version = "0.9.0"
1369 +source = "registry+https://github.com/rust-lang/crates.io-index"
1370 +checksum = "b4ca4bea16ffc3f443cf7d866912118196bfef4c6a1556ca00f9f9b00bb43f7c"
1371 +dependencies = [
1372 + "multiversion-macros",
1373 +]
1374 +
1375 +[[package]]
1376 +name = "multiversion-macros"
1377 +version = "0.9.0"
1378 +source = "registry+https://github.com/rust-lang/crates.io-index"
1379 +checksum = "0d416831a7317ef4b08bee00b69cbbb9c8763da7959a7026244d6266869f9c83"
1380 +dependencies = [
1381 + "proc-macro2",
1382 + "quote",
1383 + "rustversion",
1384 + "syn 3.0.6",
1385 +]
1386 +
1387 +[[package]]
1388 +name = "multiversion_no_op"
1389 +version = "1.0.0"
1390 +source = "registry+https://github.com/rust-lang/crates.io-index"
1391 +checksum = "743fb55ba31b18fb1ecef6bdc9aa2743314978ac084044301a7eee33fb99a20d"
1392 +
1393 +[[package]]
1394 +name = "nix"
1395 +version = "0.29.0"
1396 +source = "registry+https://github.com/rust-lang/crates.io-index"
1397 +checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
1398 +dependencies = [
1399 + "bitflags 2.13.2",
1400 + "cfg-if",
1401 + "cfg_aliases",
1402 + "libc",
1403 + "memoffset",
1404 +]
1405 +
1406 +[[package]]
1407 +name = "nom"
1408 +version = "7.1.3"
1409 +source = "registry+https://github.com/rust-lang/crates.io-index"
1410 +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
1411 +dependencies = [
1412 + "memchr",
1413 + "minimal-lexical",
1414 +]
1415 +
1416 +[[package]]
1417 +name = "num-conv"
1418 +version = "0.2.2"
1419 +source = "registry+https://github.com/rust-lang/crates.io-index"
1420 +checksum = "521739c6d2bac4aa25192232afe6841231376b2b26d4d9fae5ecf8ca5772e441"
1421 +
1422 +[[package]]
1423 +name = "num-derive"
1424 +version = "0.4.2"
1425 +source = "registry+https://github.com/rust-lang/crates.io-index"
1426 +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
1427 +dependencies = [
1428 + "proc-macro2",
1429 + "quote",
1430 + "syn 2.0.119",
1431 +]
1432 +
1433 +[[package]]
1434 +name = "num-traits"
1435 +version = "0.2.19"
1436 +source = "registry+https://github.com/rust-lang/crates.io-index"
1437 +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
1438 +dependencies = [
1439 + "autocfg",
1440 +]
1441 +
1442 +[[package]]
1443 +name = "num_threads"
1444 +version = "0.1.7"
1445 +source = "registry+https://github.com/rust-lang/crates.io-index"
1446 +checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
1447 +dependencies = [
1448 + "libc",
1449 +]
1450 +
1451 +[[package]]
1452 +name = "once_cell"
1453 +version = "1.21.4"
1454 +source = "registry+https://github.com/rust-lang/crates.io-index"
1455 +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
1456 +
1457 +[[package]]
1458 +name = "once_cell_polyfill"
1459 +version = "1.70.2"
1460 +source = "registry+https://github.com/rust-lang/crates.io-index"
1461 +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
1462 +
1463 +[[package]]
1464 +name = "openssl-probe"
1465 +version = "0.2.1"
1466 +source = "registry+https://github.com/rust-lang/crates.io-index"
1467 +checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe"
1468 +
1469 +[[package]]
1470 +name = "option-ext"
1471 +version = "0.2.0"
1472 +source = "registry+https://github.com/rust-lang/crates.io-index"
1473 +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
1474 +
1475 +[[package]]
1476 +name = "ordered-float"
1477 +version = "4.6.0"
1478 +source = "registry+https://github.com/rust-lang/crates.io-index"
1479 +checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951"
1480 +dependencies = [
1481 + "num-traits",
1482 +]
1483 +
1484 +[[package]]
1485 +name = "palette"
1486 +version = "0.7.7"
1487 +source = "registry+https://github.com/rust-lang/crates.io-index"
1488 +checksum = "ddeed8580d347d2abf3dcf06a5f0b3dc020258338526b277847cd4248a70fc64"
1489 +dependencies = [
1490 + "approx",
1491 + "libm",
1492 + "palette_derive",
1493 + "palette_math",
1494 +]
1495 +
1496 +[[package]]
1497 +name = "palette_derive"
1498 +version = "0.7.7"
1499 +source = "registry+https://github.com/rust-lang/crates.io-index"
1500 +checksum = "88537020289b719d81be994ccf1bbf4990f477e2f69ee52fe3e45f43a02e56be"
1501 +dependencies = [
1502 + "by_address",
1503 + "proc-macro2",
1504 + "quote",
1505 + "syn 2.0.119",
1506 +]
1507 +
1508 +[[package]]
1509 +name = "palette_math"
1510 +version = "0.7.7"
1511 +source = "registry+https://github.com/rust-lang/crates.io-index"
1512 +checksum = "6e6eb142958d64335fb0e345c5b9ead2ecd6fc438c307e9d7d3c4fd428dbaf12"
1513 +dependencies = [
1514 + "libm",
1515 +]
1516 +
1517 +[[package]]
1518 +name = "parking_lot"
1519 +version = "0.12.5"
1520 +source = "registry+https://github.com/rust-lang/crates.io-index"
1521 +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a"
1522 +dependencies = [
1523 + "lock_api",
1524 + "parking_lot_core",
1525 +]
1526 +
1527 +[[package]]
1528 +name = "parking_lot_core"
1529 +version = "0.9.12"
1530 +source = "registry+https://github.com/rust-lang/crates.io-index"
1531 +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1"
1532 +dependencies = [
1533 + "cfg-if",
1534 + "libc",
1535 + "redox_syscall",
1536 + "smallvec",
1537 + "windows-link",
1538 +]
1539 +
1540 +[[package]]
1541 +name = "percent-encoding"
1542 +version = "2.3.2"
1543 +source = "registry+https://github.com/rust-lang/crates.io-index"
1544 +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
1545 +
1546 +[[package]]
1547 +name = "pest"
1548 +version = "2.9.1"
1549 +source = "registry+https://github.com/rust-lang/crates.io-index"
1550 +checksum = "6d45aeb61b4bf818e12d4205f2466f8c4748f85f4fce0146d1c03d69d753f0ad"
1551 +dependencies = [
1552 + "memchr",
1553 + "ucd-trie",
1554 +]
1555 +
1556 +[[package]]
1557 +name = "pest_derive"
1558 +version = "2.9.1"
1559 +source = "registry+https://github.com/rust-lang/crates.io-index"
1560 +checksum = "89cc5a242e25ed4e7704d0be240f2cfbe20a8c27e7e252d94835be93d92dc39f"
1561 +dependencies = [
1562 + "pest",
1563 + "pest_generator",
1564 +]
1565 +
1566 +[[package]]
1567 +name = "pest_generator"
1568 +version = "2.9.1"
1569 +source = "registry+https://github.com/rust-lang/crates.io-index"
1570 +checksum = "7abf21475cc3820fe4b2ca2dc2142902f67a02189f3b5b3a229f4febc01a43e5"
1571 +dependencies = [
1572 + "pest",
1573 + "pest_meta",
1574 + "proc-macro2",
1575 + "quote",
1576 + "syn 2.0.119",
1577 +]
1578 +
1579 +[[package]]
1580 +name = "pest_meta"
1581 +version = "2.9.1"
1582 +source = "registry+https://github.com/rust-lang/crates.io-index"
1583 +checksum = "adba4db388f687393c18c51348d44a41d870ca9df71a2c98172ea3035dc6936e"
1584 +dependencies = [
1585 + "pest",
1586 +]
1587 +
1588 +[[package]]
1589 +name = "phf"
1590 +version = "0.11.3"
1591 +source = "registry+https://github.com/rust-lang/crates.io-index"
1592 +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078"
1593 +dependencies = [
1594 + "phf_macros",
1595 + "phf_shared",
1596 +]
1597 +
1598 +[[package]]
1599 +name = "phf_codegen"
1600 +version = "0.11.3"
1601 +source = "registry+https://github.com/rust-lang/crates.io-index"
1602 +checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a"
1603 +dependencies = [
1604 + "phf_generator",
1605 + "phf_shared",
1606 +]
1607 +
1608 +[[package]]
1609 +name = "phf_generator"
1610 +version = "0.11.3"
1611 +source = "registry+https://github.com/rust-lang/crates.io-index"
1612 +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d"
1613 +dependencies = [
1614 + "phf_shared",
1615 + "rand 0.8.8",
1616 +]
1617 +
1618 +[[package]]
1619 +name = "phf_macros"
1620 +version = "0.11.3"
1621 +source = "registry+https://github.com/rust-lang/crates.io-index"
1622 +checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216"
1623 +dependencies = [
1624 + "phf_generator",
1625 + "phf_shared",
1626 + "proc-macro2",
1627 + "quote",
1628 + "syn 2.0.119",
1629 +]
1630 +
1631 +[[package]]
1632 +name = "phf_shared"
1633 +version = "0.11.3"
1634 +source = "registry+https://github.com/rust-lang/crates.io-index"
1635 +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5"
1636 +dependencies = [
1637 + "siphasher",
1638 +]
1639 +
1640 +[[package]]
1641 +name = "pin-project-lite"
1642 +version = "0.2.17"
1643 +source = "registry+https://github.com/rust-lang/crates.io-index"
1644 +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd"
1645 +
1646 +[[package]]
1647 +name = "pkg-config"
1648 +version = "0.3.34"
1649 +source = "registry+https://github.com/rust-lang/crates.io-index"
1650 +checksum = "f6b464fbc74e149a392436b17d523f769e057cb6877f6a5c4618bc6f11800548"
1651 +
1652 +[[package]]
1653 +name = "portable-atomic"
1654 +version = "1.15.0"
1655 +source = "registry+https://github.com/rust-lang/crates.io-index"
1656 +checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
1657 +
1658 +[[package]]
1659 +name = "potential_utf"
1660 +version = "0.1.6"
1661 +source = "registry+https://github.com/rust-lang/crates.io-index"
1662 +checksum = "d83eb9bc6d8e5cf568e7a1101d60ee05e81ed50ea106026f3d18deeb046d7661"
1663 +dependencies = [
1664 + "zerovec",
1665 +]
1666 +
1667 +[[package]]
1668 +name = "powerfmt"
1669 +version = "0.2.0"
1670 +source = "registry+https://github.com/rust-lang/crates.io-index"
1671 +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
1672 +
1673 +[[package]]
1674 +name = "proc-macro2"
1675 +version = "1.0.107"
1676 +source = "registry+https://github.com/rust-lang/crates.io-index"
1677 +checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
1678 +dependencies = [
1679 + "unicode-ident",
1680 +]
1681 +
1682 +[[package]]
1683 +name = "quinn"
1684 +version = "0.11.12"
1685 +source = "registry+https://github.com/rust-lang/crates.io-index"
1686 +checksum = "4051e23e9185c255a7e33ef59cdbca87a22d359052eecd22fc6b901fb37d9d11"
1687 +dependencies = [
1688 + "bytes",
1689 + "cfg_aliases",
1690 + "pin-project-lite",
1691 + "quinn-proto",
1692 + "quinn-udp",
1693 + "rustc-hash",
1694 + "rustls",
1695 + "socket2",
1696 + "thiserror 2.0.20",
1697 + "tokio",
1698 + "tracing",
1699 + "web-time",
1700 +]
1701 +
1702 +[[package]]
1703 +name = "quinn-proto"
1704 +version = "0.11.18"
1705 +source = "registry+https://github.com/rust-lang/crates.io-index"
1706 +checksum = "a9746dbde176634f4f2f1faf2404e30a31b2bc1e9cafb5329c95d8177a18c9fc"
1707 +dependencies = [
1708 + "aws-lc-rs",
1709 + "bytes",
1710 + "getrandom 0.4.3",
1711 + "lru-slab",
1712 + "rand 0.10.2",
1713 + "rand_pcg",
1714 + "ring",
1715 + "rustc-hash",
1716 + "rustls",
1717 + "rustls-pki-types",
1718 + "slab",
1719 + "thiserror 2.0.20",
1720 + "tinyvec",
1721 + "tracing",
1722 + "web-time",
1723 +]
1724 +
1725 +[[package]]
1726 +name = "quinn-udp"
1727 +version = "0.5.15"
1728 +source = "registry+https://github.com/rust-lang/crates.io-index"
1729 +checksum = "35a133f956daabe89a61a685c2649f13d82d5aa4bd5d12d1277e1072a21c0694"
1730 +dependencies = [
1731 + "cfg_aliases",
1732 + "libc",
1733 + "once_cell",
1734 + "socket2",
1735 + "tracing",
1736 + "windows-sys 0.61.2",
1737 +]
1738 +
1739 +[[package]]
1740 +name = "quote"
1741 +version = "1.0.47"
1742 +source = "registry+https://github.com/rust-lang/crates.io-index"
1743 +checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
1744 +dependencies = [
1745 + "proc-macro2",
1746 +]
1747 +
1748 +[[package]]
1749 +name = "r-efi"
1750 +version = "5.3.0"
1751 +source = "registry+https://github.com/rust-lang/crates.io-index"
1752 +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
1753 +
1754 +[[package]]
1755 +name = "r-efi"
1756 +version = "6.0.0"
1757 +source = "registry+https://github.com/rust-lang/crates.io-index"
1758 +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
1759 +
1760 +[[package]]
1761 +name = "rand"
1762 +version = "0.8.8"
1763 +source = "registry+https://github.com/rust-lang/crates.io-index"
1764 +checksum = "e058c7de0b26af77780c769414d6257830bb240f3c38477dbc2c16e5f54d6d4c"
1765 +dependencies = [
1766 + "rand_core 0.6.4",
1767 +]
1768 +
1769 +[[package]]
1770 +name = "rand"
1771 +version = "0.10.2"
1772 +source = "registry+https://github.com/rust-lang/crates.io-index"
1773 +checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80"
1774 +dependencies = [
1775 + "chacha20",
1776 + "getrandom 0.4.3",
1777 + "rand_core 0.10.1",
1778 +]
1779 +
1780 +[[package]]
1781 +name = "rand_core"
1782 +version = "0.6.4"
1783 +source = "registry+https://github.com/rust-lang/crates.io-index"
1784 +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
1785 +
1786 +[[package]]
1787 +name = "rand_core"
1788 +version = "0.10.1"
1789 +source = "registry+https://github.com/rust-lang/crates.io-index"
1790 +checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69"
1791 +
1792 +[[package]]
1793 +name = "rand_pcg"
1794 +version = "0.10.2"
1795 +source = "registry+https://github.com/rust-lang/crates.io-index"
1796 +checksum = "caa0f4137e1c0a72f4c651489402276c8e8e1cf081f3b0ba156d2cbeef09e86a"
1797 +dependencies = [
1798 + "rand_core 0.10.1",
1799 +]
1800 +
1801 +[[package]]
1802 +name = "ratatui"
1803 +version = "0.30.2"
1804 +source = "registry+https://github.com/rust-lang/crates.io-index"
1805 +checksum = "3274ba0a2c5e1bcad2a2005d20f4dc59dad26b2eb0940fb094500dba4099d57d"
1806 +dependencies = [
1807 + "instability",
1808 + "ratatui-core",
1809 + "ratatui-crossterm",
1810 + "ratatui-macros",
1811 + "ratatui-termina",
1812 + "ratatui-termwiz",
1813 + "ratatui-widgets",
1814 + "serde",
1815 +]
1816 +
1817 +[[package]]
1818 +name = "ratatui-core"
1819 +version = "0.1.2"
1820 +source = "registry+https://github.com/rust-lang/crates.io-index"
1821 +checksum = "cbb175c433c8e28a809d1f5773a2ae96e68c0ce40db865cbab1020bf33ae479c"
1822 +dependencies = [
1823 + "bitflags 2.13.2",
1824 + "compact_str",
1825 + "critical-section",
1826 + "hashbrown 0.17.1",
1827 + "itertools",
1828 + "kasuari",
1829 + "lru",
1830 + "palette",
1831 + "serde",
1832 + "strum",
1833 + "thiserror 2.0.20",
1834 + "unicode-segmentation",
1835 + "unicode-truncate",
1836 + "unicode-width",
1837 +]
1838 +
1839 +[[package]]
1840 +name = "ratatui-crossterm"
1841 +version = "0.1.2"
1842 +source = "registry+https://github.com/rust-lang/crates.io-index"
1843 +checksum = "567584a3b0e6a8203c23de40b4861497266725eb5363dbfd18a1edd603cca9f0"
1844 +dependencies = [
1845 + "cfg-if",
1846 + "crossterm",
1847 + "instability",
1848 + "ratatui-core",
1849 +]
1850 +
1851 +[[package]]
1852 +name = "ratatui-macros"
1853 +version = "0.7.2"
1854 +source = "registry+https://github.com/rust-lang/crates.io-index"
1855 +checksum = "ed7dc68daa7498a43e4d68e0eb078427e10c38fbcfbb1e42d955f1fa2140d814"
1856 +dependencies = [
1857 + "ratatui-core",
1858 + "ratatui-widgets",
1859 +]
1860 +
1861 +[[package]]
1862 +name = "ratatui-termina"
1863 +version = "0.1.0"
1864 +source = "registry+https://github.com/rust-lang/crates.io-index"
1865 +checksum = "c0bf912d9e66f057a759d92e386a280ea886b352ab757d6ac4d653c7ed2c43c2"
1866 +dependencies = [
1867 + "instability",
1868 + "ratatui-core",
1869 + "termina",
1870 +]
1871 +
1872 +[[package]]
1873 +name = "ratatui-termwiz"
1874 +version = "0.1.2"
1875 +source = "registry+https://github.com/rust-lang/crates.io-index"
1876 +checksum = "faf03e0380b7744054d6cb74224fe3adf062a029754933f575ca1e3b4c2ce977"
1877 +dependencies = [
1878 + "ratatui-core",
1879 + "termwiz",
1880 +]
1881 +
1882 +[[package]]
1883 +name = "ratatui-widgets"
1884 +version = "0.3.2"
1885 +source = "registry+https://github.com/rust-lang/crates.io-index"
1886 +checksum = "66e3d19bcc9130ca376277d93b60767ff121ace3be06f5f95f81dd68956407d1"
1887 +dependencies = [
1888 + "bitflags 2.13.2",
1889 + "hashbrown 0.17.1",
1890 + "indoc",
1891 + "instability",
1892 + "itertools",
1893 + "line-clipping",
1894 + "ratatui-core",
1895 + "serde",
1896 + "strum",
1897 + "time",
1898 + "unicode-segmentation",
1899 + "unicode-width",
1900 +]
1901 +
1902 +[[package]]
1903 +name = "redox_syscall"
1904 +version = "0.5.18"
1905 +source = "registry+https://github.com/rust-lang/crates.io-index"
1906 +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
1907 +dependencies = [
1908 + "bitflags 2.13.2",
1909 +]
1910 +
1911 +[[package]]
1912 +name = "redox_users"
1913 +version = "0.5.3"
1914 +source = "registry+https://github.com/rust-lang/crates.io-index"
1915 +checksum = "60dc65c0ff1a7ae1294b0c67b9f14baf70b644404010370171787bfac1038fc0"
1916 +dependencies = [
1917 + "libredox",
1918 + "thiserror 2.0.20",
1919 +]
1920 +
1921 +[[package]]
1922 +name = "regex"
1923 +version = "1.13.1"
1924 +source = "registry+https://github.com/rust-lang/crates.io-index"
1925 +checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d"
1926 +dependencies = [
1927 + "aho-corasick",
1928 + "memchr",
1929 + "regex-automata",
1930 + "regex-syntax",
1931 +]
1932 +
1933 +[[package]]
1934 +name = "regex-automata"
1935 +version = "0.4.18"
1936 +source = "registry+https://github.com/rust-lang/crates.io-index"
1937 +checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2"
1938 +dependencies = [
1939 + "aho-corasick",
1940 + "memchr",
1941 + "regex-syntax",
1942 +]
1943 +
1944 +[[package]]
1945 +name = "regex-syntax"
1946 +version = "0.8.11"
1947 +source = "registry+https://github.com/rust-lang/crates.io-index"
1948 +checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
1949 +
1950 +[[package]]
1951 +name = "reqwest"
1952 +version = "0.13.1"
1953 +source = "registry+https://github.com/rust-lang/crates.io-index"
1954 +checksum = "04e9018c9d814e5f30cc16a0f03271aeab3571e609612d9fe78c1aa8d11c2f62"
1955 +dependencies = [
1956 + "base64",
1957 + "bytes",
1958 + "encoding_rs",
1959 + "futures-core",
1960 + "h2",
1961 + "http",
1962 + "http-body",
1963 + "http-body-util",
1964 + "hyper",
1965 + "hyper-rustls",
1966 + "hyper-util",
1967 + "js-sys",
1968 + "log",
1969 + "mime",
1970 + "percent-encoding",
1971 + "pin-project-lite",
1972 + "quinn",
1973 + "rustls",
1974 + "rustls-native-certs",
1975 + "rustls-pki-types",
1976 + "rustls-platform-verifier",
1977 + "serde",
1978 + "serde_json",
1979 + "sync_wrapper",
1980 + "tokio",
1981 + "tokio-rustls",
1982 + "tower",
1983 + "tower-http",
1984 + "tower-service",
1985 + "url",
1986 + "wasm-bindgen",
1987 + "wasm-bindgen-futures",
1988 + "web-sys",
1989 +]
1990 +
1991 +[[package]]
1992 +name = "ring"
1993 +version = "0.17.14"
1994 +source = "registry+https://github.com/rust-lang/crates.io-index"
1995 +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7"
1996 +dependencies = [
1997 + "cc",
1998 + "cfg-if",
1999 + "getrandom 0.2.17",
2000 + "libc",
2001 + "untrusted",
2002 + "windows-sys 0.52.0",
2003 +]
2004 +
2005 +[[package]]
2006 +name = "rustc-hash"
2007 +version = "2.1.3"
2008 +source = "registry+https://github.com/rust-lang/crates.io-index"
2009 +checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"
2010 +
2011 +[[package]]
2012 +name = "rustc_version"
2013 +version = "0.4.1"
2014 +source = "registry+https://github.com/rust-lang/crates.io-index"
2015 +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
2016 +dependencies = [
2017 + "semver",
2018 +]
2019 +
2020 +[[package]]
2021 +name = "rustix"
2022 +version = "1.1.5"
2023 +source = "registry+https://github.com/rust-lang/crates.io-index"
2024 +checksum = "891efababe418670775f199f0d233d84843c227a0949a883ce15b37c78d6629d"
2025 +dependencies = [
2026 + "bitflags 2.13.2",
2027 + "errno",
2028 + "libc",
2029 + "linux-raw-sys",
2030 + "windows-sys 0.61.2",
2031 +]
2032 +
2033 +[[package]]
2034 +name = "rustls"
2035 +version = "0.23.45"
2036 +source = "registry+https://github.com/rust-lang/crates.io-index"
2037 +checksum = "0d41d731c7d2f962d1ccc364cec258de3c0e93b38c2fb3ba97ac74513048d634"
2038 +dependencies = [
2039 + "aws-lc-rs",
2040 + "once_cell",
2041 + "rustls-pki-types",
2042 + "rustls-webpki",
2043 + "subtle",
2044 + "zeroize",
2045 +]
2046 +
2047 +[[package]]
2048 +name = "rustls-native-certs"
2049 +version = "0.8.4"
2050 +source = "registry+https://github.com/rust-lang/crates.io-index"
2051 +checksum = "dab5152771c58876a2146916e53e35057e1a4dfa2b9df0f0305b07f611fdea4d"
2052 +dependencies = [
2053 + "openssl-probe",
2054 + "rustls-pki-types",
2055 + "schannel",
2056 + "security-framework",
2057 +]
2058 +
2059 +[[package]]
2060 +name = "rustls-pki-types"
2061 +version = "1.15.1"
2062 +source = "registry+https://github.com/rust-lang/crates.io-index"
2063 +checksum = "2f4925028c7eb5d1fcdaf196971378ed9d2c1c4efc7dc5d011256f76c99c0a96"
2064 +dependencies = [
2065 + "web-time",
2066 + "zeroize",
2067 +]
2068 +
2069 +[[package]]
2070 +name = "rustls-platform-verifier"
2071 +version = "0.6.2"
2072 +source = "registry+https://github.com/rust-lang/crates.io-index"
2073 +checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784"
2074 +dependencies = [
2075 + "core-foundation 0.10.1",
2076 + "core-foundation-sys",
2077 + "jni",
2078 + "log",
2079 + "once_cell",
2080 + "rustls",
2081 + "rustls-native-certs",
2082 + "rustls-platform-verifier-android",
2083 + "rustls-webpki",
2084 + "security-framework",
2085 + "security-framework-sys",
2086 + "webpki-root-certs",
2087 + "windows-sys 0.61.2",
2088 +]
2089 +
2090 +[[package]]
2091 +name = "rustls-platform-verifier-android"
2092 +version = "0.1.1"
2093 +source = "registry+https://github.com/rust-lang/crates.io-index"
2094 +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f"
2095 +
2096 +[[package]]
2097 +name = "rustls-webpki"
2098 +version = "0.103.15"
2099 +source = "registry+https://github.com/rust-lang/crates.io-index"
2100 +checksum = "f3c3cf1d8b1e7d4927e2d154c3fcb02979afb9939629c62cd9048d4f07b60ac2"
2101 +dependencies = [
2102 + "aws-lc-rs",
2103 + "ring",
2104 + "rustls-pki-types",
2105 + "untrusted",
2106 +]
2107 +
2108 +[[package]]
2109 +name = "rustversion"
2110 +version = "1.0.23"
2111 +source = "registry+https://github.com/rust-lang/crates.io-index"
2112 +checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f"
2113 +
2114 +[[package]]
2115 +name = "ryu"
2116 +version = "1.0.23"
2117 +source = "registry+https://github.com/rust-lang/crates.io-index"
2118 +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f"
2119 +
2120 +[[package]]
2121 +name = "same-file"
2122 +version = "1.0.6"
2123 +source = "registry+https://github.com/rust-lang/crates.io-index"
2124 +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
2125 +dependencies = [
2126 + "winapi-util",
2127 +]
2128 +
2129 +[[package]]
2130 +name = "schannel"
2131 +version = "0.1.29"
2132 +source = "registry+https://github.com/rust-lang/crates.io-index"
2133 +checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939"
2134 +dependencies = [
2135 + "windows-sys 0.61.2",
2136 +]
2137 +
2138 +[[package]]
2139 +name = "scopeguard"
2140 +version = "1.2.0"
2141 +source = "registry+https://github.com/rust-lang/crates.io-index"
2142 +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
2143 +
2144 +[[package]]
2145 +name = "security-framework"
2146 +version = "3.7.0"
2147 +source = "registry+https://github.com/rust-lang/crates.io-index"
2148 +checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d"
2149 +dependencies = [
2150 + "bitflags 2.13.2",
2151 + "core-foundation 0.10.1",
2152 + "core-foundation-sys",
2153 + "libc",
2154 + "security-framework-sys",
2155 +]
2156 +
2157 +[[package]]
2158 +name = "security-framework-sys"
2159 +version = "2.17.0"
2160 +source = "registry+https://github.com/rust-lang/crates.io-index"
2161 +checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3"
2162 +dependencies = [
2163 + "core-foundation-sys",
2164 + "libc",
2165 +]
2166 +
2167 +[[package]]
2168 +name = "semver"
2169 +version = "1.0.28"
2170 +source = "registry+https://github.com/rust-lang/crates.io-index"
2171 +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd"
2172 +
2173 +[[package]]
2174 +name = "serde"
2175 +version = "1.0.229"
2176 +source = "registry+https://github.com/rust-lang/crates.io-index"
2177 +checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"
2178 +dependencies = [
2179 + "serde_core",
2180 + "serde_derive",
2181 +]
2182 +
2183 +[[package]]
2184 +name = "serde_core"
2185 +version = "1.0.229"
2186 +source = "registry+https://github.com/rust-lang/crates.io-index"
2187 +checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
2188 +dependencies = [
2189 + "serde_derive",
2190 +]
2191 +
2192 +[[package]]
2193 +name = "serde_derive"
2194 +version = "1.0.229"
2195 +source = "registry+https://github.com/rust-lang/crates.io-index"
2196 +checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
2197 +dependencies = [
2198 + "proc-macro2",
2199 + "quote",
2200 + "syn 3.0.6",
2201 +]
2202 +
2203 +[[package]]
2204 +name = "serde_json"
2205 +version = "1.0.151"
2206 +source = "registry+https://github.com/rust-lang/crates.io-index"
2207 +checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14"
2208 +dependencies = [
2209 + "itoa",
2210 + "memchr",
2211 + "serde",
2212 + "serde_core",
2213 + "zmij",
2214 +]
2215 +
2216 +[[package]]
2217 +name = "serde_spanned"
2218 +version = "1.1.1"
2219 +source = "registry+https://github.com/rust-lang/crates.io-index"
2220 +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26"
2221 +dependencies = [
2222 + "serde_core",
2223 +]
2224 +
2225 +[[package]]
2226 +name = "sha2"
2227 +version = "0.10.9"
2228 +source = "registry+https://github.com/rust-lang/crates.io-index"
2229 +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
2230 +dependencies = [
2231 + "cfg-if",
2232 + "cpufeatures 0.2.17",
2233 + "digest",
2234 +]
2235 +
2236 +[[package]]
2237 +name = "shlex"
2238 +version = "2.0.1"
2239 +source = "registry+https://github.com/rust-lang/crates.io-index"
2240 +checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
2241 +
2242 +[[package]]
2243 +name = "signal-hook"
2244 +version = "0.3.18"
2245 +source = "registry+https://github.com/rust-lang/crates.io-index"
2246 +checksum = "d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2"
2247 +dependencies = [
2248 + "libc",
2249 + "signal-hook-registry",
2250 +]
2251 +
2252 +[[package]]
2253 +name = "signal-hook-mio"
2254 +version = "0.2.5"
2255 +source = "registry+https://github.com/rust-lang/crates.io-index"
2256 +checksum = "b75a19a7a740b25bc7944bdee6172368f988763b744e3d4dfe753f6b4ece40cc"
2257 +dependencies = [
2258 + "libc",
2259 + "mio",
2260 + "signal-hook",
2261 +]
2262 +
2263 +[[package]]
2264 +name = "signal-hook-registry"
2265 +version = "1.4.8"
2266 +source = "registry+https://github.com/rust-lang/crates.io-index"
2267 +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b"
2268 +dependencies = [
2269 + "errno",
2270 + "libc",
2271 +]
2272 +
2273 +[[package]]
2274 +name = "simdutf8"
2275 +version = "0.1.5"
2276 +source = "registry+https://github.com/rust-lang/crates.io-index"
2277 +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e"
2278 +
2279 +[[package]]
2280 +name = "siphasher"
2281 +version = "1.0.3"
2282 +source = "registry+https://github.com/rust-lang/crates.io-index"
2283 +checksum = "8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649"
2284 +
2285 +[[package]]
2286 +name = "slab"
2287 +version = "0.4.12"
2288 +source = "registry+https://github.com/rust-lang/crates.io-index"
2289 +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5"
2290 +
2291 +[[package]]
2292 +name = "smallvec"
2293 +version = "1.16.1"
2294 +source = "registry+https://github.com/rust-lang/crates.io-index"
2295 +checksum = "ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891"
2296 +
2297 +[[package]]
2298 +name = "socket2"
2299 +version = "0.6.5"
2300 +source = "registry+https://github.com/rust-lang/crates.io-index"
2301 +checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4"
2302 +dependencies = [
2303 + "libc",
2304 + "windows-sys 0.61.2",
2305 +]
2306 +
2307 +[[package]]
2308 +name = "stable_deref_trait"
2309 +version = "1.2.1"
2310 +source = "registry+https://github.com/rust-lang/crates.io-index"
2311 +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"
2312 +
2313 +[[package]]
2314 +name = "static_assertions"
2315 +version = "1.1.0"
2316 +source = "registry+https://github.com/rust-lang/crates.io-index"
2317 +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
2318 +
2319 +[[package]]
2320 +name = "strsim"
2321 +version = "0.11.1"
2322 +source = "registry+https://github.com/rust-lang/crates.io-index"
2323 +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
2324 +
2325 +[[package]]
2326 +name = "strum"
2327 +version = "0.28.0"
2328 +source = "registry+https://github.com/rust-lang/crates.io-index"
2329 +checksum = "9628de9b8791db39ceda2b119bbe13134770b56c138ec1d3af810d045c04f9bd"
2330 +dependencies = [
2331 + "strum_macros",
2332 +]
2333 +
2334 +[[package]]
2335 +name = "strum_macros"
2336 +version = "0.28.0"
2337 +source = "registry+https://github.com/rust-lang/crates.io-index"
2338 +checksum = "ab85eea0270ee17587ed4156089e10b9e6880ee688791d45a905f5b1ca36f664"
2339 +dependencies = [
2340 + "heck",
2341 + "proc-macro2",
2342 + "quote",
2343 + "syn 2.0.119",
2344 +]
2345 +
2346 +[[package]]
2347 +name = "subtle"
2348 +version = "2.6.1"
2349 +source = "registry+https://github.com/rust-lang/crates.io-index"
2350 +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
2351 +
2352 +[[package]]
2353 +name = "syn"
2354 +version = "1.0.109"
2355 +source = "registry+https://github.com/rust-lang/crates.io-index"
2356 +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
2357 +dependencies = [
2358 + "proc-macro2",
2359 + "quote",
2360 + "unicode-ident",
2361 +]
2362 +
2363 +[[package]]
2364 +name = "syn"
2365 +version = "2.0.119"
2366 +source = "registry+https://github.com/rust-lang/crates.io-index"
2367 +checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
2368 +dependencies = [
2369 + "proc-macro2",
2370 + "quote",
2371 + "unicode-ident",
2372 +]
2373 +
2374 +[[package]]
2375 +name = "syn"
2376 +version = "3.0.6"
2377 +source = "registry+https://github.com/rust-lang/crates.io-index"
2378 +checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee"
2379 +dependencies = [
2380 + "proc-macro2",
2381 + "quote",
2382 + "unicode-ident",
2383 +]
2384 +
2385 +[[package]]
2386 +name = "sync_wrapper"
2387 +version = "1.0.2"
2388 +source = "registry+https://github.com/rust-lang/crates.io-index"
2389 +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263"
2390 +dependencies = [
2391 + "futures-core",
2392 +]
2393 +
2394 +[[package]]
2395 +name = "synstructure"
2396 +version = "0.14.0"
2397 +source = "registry+https://github.com/rust-lang/crates.io-index"
2398 +checksum = "901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02"
2399 +dependencies = [
2400 + "proc-macro2",
2401 + "quote",
2402 + "syn 3.0.6",
2403 +]
2404 +
2405 +[[package]]
2406 +name = "system-configuration"
2407 +version = "0.7.0"
2408 +source = "registry+https://github.com/rust-lang/crates.io-index"
2409 +checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b"
2410 +dependencies = [
2411 + "bitflags 2.13.2",
2412 + "core-foundation 0.9.4",
2413 + "system-configuration-sys",
2414 +]
2415 +
2416 +[[package]]
2417 +name = "system-configuration-sys"
2418 +version = "0.6.0"
2419 +source = "registry+https://github.com/rust-lang/crates.io-index"
2420 +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4"
2421 +dependencies = [
2422 + "core-foundation-sys",
2423 + "libc",
2424 +]
2425 +
2426 +[[package]]
2427 +name = "termina"
2428 +version = "0.3.3"
2429 +source = "registry+https://github.com/rust-lang/crates.io-index"
2430 +checksum = "9048a889effe34a5cddee0af7f53285198b16dca3be510858d38dfdb3e62a04e"
2431 +dependencies = [
2432 + "bitflags 2.13.2",
2433 + "parking_lot",
2434 + "rustix",
2435 + "signal-hook",
2436 + "windows-sys 0.61.2",
2437 +]
2438 +
2439 +[[package]]
2440 +name = "terminal_size"
2441 +version = "0.4.4"
2442 +source = "registry+https://github.com/rust-lang/crates.io-index"
2443 +checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874"
2444 +dependencies = [
2445 + "rustix",
2446 + "windows-sys 0.61.2",
2447 +]
2448 +
2449 +[[package]]
2450 +name = "terminfo"
2451 +version = "0.9.0"
2452 +source = "registry+https://github.com/rust-lang/crates.io-index"
2453 +checksum = "d4ea810f0692f9f51b382fff5893887bb4580f5fa246fde546e0b13e7fcee662"
2454 +dependencies = [
2455 + "fnv",
2456 + "nom",
2457 + "phf",
2458 + "phf_codegen",
2459 +]
2460 +
2461 +[[package]]
2462 +name = "termios"
2463 +version = "0.3.3"
2464 +source = "registry+https://github.com/rust-lang/crates.io-index"
2465 +checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b"
2466 +dependencies = [
2467 + "libc",
2468 +]
2469 +
2470 +[[package]]
2471 +name = "termwiz"
2472 +version = "0.23.3"
2473 +source = "registry+https://github.com/rust-lang/crates.io-index"
2474 +checksum = "4676b37242ccbd1aabf56edb093a4827dc49086c0ffd764a5705899e0f35f8f7"
2475 +dependencies = [
2476 + "anyhow",
2477 + "base64",
2478 + "bitflags 2.13.2",
2479 + "fancy-regex",
2480 + "filedescriptor",
2481 + "finl_unicode",
2482 + "fixedbitset",
2483 + "hex",
2484 + "lazy_static",
2485 + "libc",
2486 + "log",
2487 + "memmem",
2488 + "nix",
2489 + "num-derive",
2490 + "num-traits",
2491 + "ordered-float",
2492 + "pest",
2493 + "pest_derive",
2494 + "phf",
2495 + "sha2",
2496 + "signal-hook",
2497 + "siphasher",
2498 + "terminfo",
2499 + "termios",
2500 + "thiserror 1.0.69",
2501 + "ucd-trie",
2502 + "unicode-segmentation",
2503 + "vtparse",
2504 + "wezterm-bidi",
2505 + "wezterm-blob-leases",
2506 + "wezterm-color-types",
2507 + "wezterm-dynamic",
2508 + "wezterm-input-types",
2509 + "winapi",
2510 +]
2511 +
2512 +[[package]]
2513 +name = "thiserror"
2514 +version = "1.0.69"
2515 +source = "registry+https://github.com/rust-lang/crates.io-index"
2516 +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
2517 +dependencies = [
2518 + "thiserror-impl 1.0.69",
2519 +]
2520 +
2521 +[[package]]
2522 +name = "thiserror"
2523 +version = "2.0.20"
2524 +source = "registry+https://github.com/rust-lang/crates.io-index"
2525 +checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f"
2526 +dependencies = [
2527 + "thiserror-impl 2.0.20",
2528 +]
2529 +
2530 +[[package]]
2531 +name = "thiserror-impl"
2532 +version = "1.0.69"
2533 +source = "registry+https://github.com/rust-lang/crates.io-index"
2534 +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
2535 +dependencies = [
2536 + "proc-macro2",
2537 + "quote",
2538 + "syn 2.0.119",
2539 +]
2540 +
2541 +[[package]]
2542 +name = "thiserror-impl"
2543 +version = "2.0.20"
2544 +source = "registry+https://github.com/rust-lang/crates.io-index"
2545 +checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af"
2546 +dependencies = [
2547 + "proc-macro2",
2548 + "quote",
2549 + "syn 3.0.6",
2550 +]
2551 +
2552 +[[package]]
2553 +name = "time"
2554 +version = "0.3.55"
2555 +source = "registry+https://github.com/rust-lang/crates.io-index"
2556 +checksum = "cdb87b95ec50ddfa440816d227a17b2ccbdda963a316a727fda0fc4334f7d134"
2557 +dependencies = [
2558 + "deranged",
2559 + "libc",
2560 + "num-conv",
2561 + "num_threads",
2562 + "powerfmt",
2563 + "serde_core",
2564 + "time-core",
2565 +]
2566 +
2567 +[[package]]
2568 +name = "time-core"
2569 +version = "0.1.9"
2570 +source = "registry+https://github.com/rust-lang/crates.io-index"
2571 +checksum = "9e1c906769ad99c88eaa54e728060edef082f8e358ff32030cb7c7d315e81109"
2572 +
2573 +[[package]]
2574 +name = "tinystr"
2575 +version = "0.8.4"
2576 +source = "registry+https://github.com/rust-lang/crates.io-index"
2577 +checksum = "b1e27c91459209c2986af3dcf603a5a74a4368754ce37414f59acc971167f643"
2578 +dependencies = [
2579 + "displaydoc",
2580 + "zerovec",
2581 +]
2582 +
2583 +[[package]]
2584 +name = "tinyvec"
2585 +version = "1.13.3"
2586 +source = "registry+https://github.com/rust-lang/crates.io-index"
2587 +checksum = "fd3ca314f692efd6c868f8408f53fe444634a845f96c028b97d35f6a1f79f0ee"
2588 +
2589 +[[package]]
2590 +name = "tokio"
2591 +version = "1.53.1"
2592 +source = "registry+https://github.com/rust-lang/crates.io-index"
2593 +checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed"
2594 +dependencies = [
2595 + "bytes",
2596 + "libc",
2597 + "mio",
2598 + "pin-project-lite",
2599 + "socket2",
2600 + "tokio-macros",
2601 + "windows-sys 0.61.2",
2602 +]
2603 +
2604 +[[package]]
2605 +name = "tokio-macros"
2606 +version = "2.7.2"
2607 +source = "registry+https://github.com/rust-lang/crates.io-index"
2608 +checksum = "78773a2a397f451582ce068015985c33193cf6dea8b74d2a639fe457b2f07b0e"
2609 +dependencies = [
2610 + "proc-macro2",
2611 + "quote",
2612 + "syn 3.0.6",
2613 +]
2614 +
2615 +[[package]]
2616 +name = "tokio-rustls"
2617 +version = "0.26.5"
2618 +source = "registry+https://github.com/rust-lang/crates.io-index"
2619 +checksum = "b0c85f2c3ef0b1cd58b36682f4b17aaa995f0e5db534d85692b4903abce21f67"
2620 +dependencies = [
2621 + "rustls",
2622 + "tokio",
2623 +]
2624 +
2625 +[[package]]
2626 +name = "tokio-util"
2627 +version = "0.7.19"
2628 +source = "registry+https://github.com/rust-lang/crates.io-index"
2629 +checksum = "494815d09bf52b5548659851081238f0ca39ff638363907596da739561c62c52"
2630 +dependencies = [
2631 + "bytes",
2632 + "futures-core",
2633 + "futures-sink",
2634 + "libc",
2635 + "pin-project-lite",
2636 + "tokio",
2637 +]
2638 +
2639 +[[package]]
2640 +name = "toml"
2641 +version = "1.1.6+spec-1.1.0"
2642 +source = "registry+https://github.com/rust-lang/crates.io-index"
2643 +checksum = "920602543f0911ab71da12c50d59701da54c196d1a2bf5cb4b75667f137a406a"
2644 +dependencies = [
2645 + "indexmap",
2646 + "serde_core",
2647 + "serde_spanned",
2648 + "toml_datetime",
2649 + "toml_parser",
2650 + "toml_writer",
2651 + "winnow",
2652 +]
2653 +
2654 +[[package]]
2655 +name = "toml_datetime"
2656 +version = "1.1.1+spec-1.1.0"
2657 +source = "registry+https://github.com/rust-lang/crates.io-index"
2658 +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7"
2659 +dependencies = [
2660 + "serde_core",
2661 +]
2662 +
2663 +[[package]]
2664 +name = "toml_parser"
2665 +version = "1.1.3+spec-1.1.0"
2666 +source = "registry+https://github.com/rust-lang/crates.io-index"
2667 +checksum = "1d38ac1cf9b95face32296c0a3ede1fdc270627c9d9c02a7274dd6d960dc4d56"
2668 +dependencies = [
2669 + "winnow",
2670 +]
2671 +
2672 +[[package]]
2673 +name = "toml_writer"
2674 +version = "1.1.2+spec-1.1.0"
2675 +source = "registry+https://github.com/rust-lang/crates.io-index"
2676 +checksum = "7d56353a2a665ad0f41a421187180aab746c8c325620617ad883a99a1cbe66d2"
2677 +
2678 +[[package]]
2679 +name = "tower"
2680 +version = "0.5.3"
2681 +source = "registry+https://github.com/rust-lang/crates.io-index"
2682 +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4"
2683 +dependencies = [
2684 + "futures-core",
2685 + "futures-util",
2686 + "pin-project-lite",
2687 + "sync_wrapper",
2688 + "tokio",
2689 + "tower-layer",
2690 + "tower-service",
2691 +]
2692 +
2693 +[[package]]
2694 +name = "tower-http"
2695 +version = "0.6.11"
2696 +source = "registry+https://github.com/rust-lang/crates.io-index"
2697 +checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840"
2698 +dependencies = [
2699 + "bitflags 2.13.2",
2700 + "bytes",
2701 + "futures-util",
2702 + "http",
2703 + "http-body",
2704 + "pin-project-lite",
2705 + "tower",
2706 + "tower-layer",
2707 + "tower-service",
2708 + "url",
2709 +]
2710 +
2711 +[[package]]
2712 +name = "tower-layer"
2713 +version = "0.3.3"
2714 +source = "registry+https://github.com/rust-lang/crates.io-index"
2715 +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e"
2716 +
2717 +[[package]]
2718 +name = "tower-service"
2719 +version = "0.3.3"
2720 +source = "registry+https://github.com/rust-lang/crates.io-index"
2721 +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
2722 +
2723 +[[package]]
2724 +name = "tracing"
2725 +version = "0.1.44"
2726 +source = "registry+https://github.com/rust-lang/crates.io-index"
2727 +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100"
2728 +dependencies = [
2729 + "pin-project-lite",
2730 + "tracing-core",
2731 +]
2732 +
2733 +[[package]]
2734 +name = "tracing-core"
2735 +version = "0.1.36"
2736 +source = "registry+https://github.com/rust-lang/crates.io-index"
2737 +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a"
2738 +dependencies = [
2739 + "once_cell",
2740 +]
2741 +
2742 +[[package]]
2743 +name = "try-lock"
2744 +version = "0.2.5"
2745 +source = "registry+https://github.com/rust-lang/crates.io-index"
2746 +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
2747 +
2748 +[[package]]
2749 +name = "typenum"
2750 +version = "1.20.1"
2751 +source = "registry+https://github.com/rust-lang/crates.io-index"
2752 +checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
2753 +
2754 +[[package]]
2755 +name = "ucd-trie"
2756 +version = "0.1.7"
2757 +source = "registry+https://github.com/rust-lang/crates.io-index"
2758 +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971"
2759 +
2760 +[[package]]
2761 +name = "unicode-ident"
2762 +version = "1.0.26"
2763 +source = "registry+https://github.com/rust-lang/crates.io-index"
2764 +checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954"
2765 +
2766 +[[package]]
2767 +name = "unicode-segmentation"
2768 +version = "1.13.3"
2769 +source = "registry+https://github.com/rust-lang/crates.io-index"
2770 +checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8"
2771 +
2772 +[[package]]
2773 +name = "unicode-truncate"
2774 +version = "2.0.1"
2775 +source = "registry+https://github.com/rust-lang/crates.io-index"
2776 +checksum = "16b380a1238663e5f8a691f9039c73e1cdae598a30e9855f541d29b08b53e9a5"
2777 +dependencies = [
2778 + "itertools",
2779 + "unicode-segmentation",
2780 + "unicode-width",
2781 +]
2782 +
2783 +[[package]]
2784 +name = "unicode-width"
2785 +version = "0.2.2"
2786 +source = "registry+https://github.com/rust-lang/crates.io-index"
2787 +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254"
2788 +
2789 +[[package]]
2790 +name = "untrusted"
2791 +version = "0.9.0"
2792 +source = "registry+https://github.com/rust-lang/crates.io-index"
2793 +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
2794 +
2795 +[[package]]
2796 +name = "url"
2797 +version = "2.5.8"
2798 +source = "registry+https://github.com/rust-lang/crates.io-index"
2799 +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed"
2800 +dependencies = [
2801 + "form_urlencoded",
2802 + "idna",
2803 + "percent-encoding",
2804 + "serde",
2805 +]
2806 +
2807 +[[package]]
2808 +name = "utf8_iter"
2809 +version = "1.0.4"
2810 +source = "registry+https://github.com/rust-lang/crates.io-index"
2811 +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
2812 +
2813 +[[package]]
2814 +name = "utf8parse"
2815 +version = "0.2.2"
2816 +source = "registry+https://github.com/rust-lang/crates.io-index"
2817 +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
2818 +
2819 +[[package]]
2820 +name = "uuid"
2821 +version = "1.26.1"
2822 +source = "registry+https://github.com/rust-lang/crates.io-index"
2823 +checksum = "2ef6dac1e96601b4fb3acccccff2139741fcb757cb9a36089bf5be91cfb285ce"
2824 +dependencies = [
2825 + "atomic",
2826 + "getrandom 0.4.3",
2827 + "js-sys",
2828 + "wasm-bindgen",
2829 +]
2830 +
2831 +[[package]]
2832 +name = "version_check"
2833 +version = "0.9.5"
2834 +source = "registry+https://github.com/rust-lang/crates.io-index"
2835 +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
2836 +
2837 +[[package]]
2838 +name = "vtparse"
2839 +version = "0.6.2"
2840 +source = "registry+https://github.com/rust-lang/crates.io-index"
2841 +checksum = "6d9b2acfb050df409c972a37d3b8e08cdea3bddb0c09db9d53137e504cfabed0"
2842 +dependencies = [
2843 + "utf8parse",
2844 +]
2845 +
2846 +[[package]]
2847 +name = "walkdir"
2848 +version = "2.5.0"
2849 +source = "registry+https://github.com/rust-lang/crates.io-index"
2850 +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
2851 +dependencies = [
2852 + "same-file",
2853 + "winapi-util",
2854 +]
2855 +
2856 +[[package]]
2857 +name = "want"
2858 +version = "0.3.1"
2859 +source = "registry+https://github.com/rust-lang/crates.io-index"
2860 +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
2861 +dependencies = [
2862 + "try-lock",
2863 +]
2864 +
2865 +[[package]]
2866 +name = "wasi"
2867 +version = "0.11.1+wasi-snapshot-preview1"
2868 +source = "registry+https://github.com/rust-lang/crates.io-index"
2869 +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
2870 +
2871 +[[package]]
2872 +name = "wasip2"
2873 +version = "1.0.4+wasi-0.2.12"
2874 +source = "registry+https://github.com/rust-lang/crates.io-index"
2875 +checksum = "b67efb37e106e55ce722a510d6b5f9c17f083e5fc79afc2badeb12cc313d9487"
2876 +dependencies = [
2877 + "wit-bindgen",
2878 +]
2879 +
2880 +[[package]]
2881 +name = "wasm-bindgen"
2882 +version = "0.2.128"
2883 +source = "registry+https://github.com/rust-lang/crates.io-index"
2884 +checksum = "aecb87a33d3b0c5e3b7aa46336eaf486cffafbd281b195e4c8b80d50df2351bf"
2885 +dependencies = [
2886 + "cfg-if",
2887 + "once_cell",
2888 + "rustversion",
2889 + "wasm-bindgen-macro",
2890 + "wasm-bindgen-shared",
2891 +]
2892 +
2893 +[[package]]
2894 +name = "wasm-bindgen-futures"
2895 +version = "0.4.78"
2896 +source = "registry+https://github.com/rust-lang/crates.io-index"
2897 +checksum = "6ef4c5d3d2cdf5c54f4231181768f5510842e350db025faf1f7163b1030ed928"
2898 +dependencies = [
2899 + "js-sys",
2900 + "wasm-bindgen",
2901 +]
2902 +
2903 +[[package]]
2904 +name = "wasm-bindgen-macro"
2905 +version = "0.2.128"
2906 +source = "registry+https://github.com/rust-lang/crates.io-index"
2907 +checksum = "a690d511e3c1a8b3a55e33511e3c2c00c78415cd23650f32b808627f5696b9ed"
2908 +dependencies = [
2909 + "quote",
2910 + "wasm-bindgen-macro-support",
2911 +]
2912 +
2913 +[[package]]
2914 +name = "wasm-bindgen-macro-support"
2915 +version = "0.2.128"
2916 +source = "registry+https://github.com/rust-lang/crates.io-index"
2917 +checksum = "411e4887f0071ef2d2164a9d5fdf2d20efbef78fccd3a78b0c10a1dc5295e48a"
2918 +dependencies = [
2919 + "bumpalo",
2920 + "proc-macro2",
2921 + "quote",
2922 + "syn 3.0.6",
2923 + "wasm-bindgen-shared",
2924 +]
2925 +
2926 +[[package]]
2927 +name = "wasm-bindgen-shared"
2928 +version = "0.2.128"
2929 +source = "registry+https://github.com/rust-lang/crates.io-index"
2930 +checksum = "81941cd78d0c92026c33e5e01312845a4cb1e9af3407f9134b100dd03144103e"
2931 +dependencies = [
2932 + "unicode-ident",
2933 +]
2934 +
2935 +[[package]]
2936 +name = "web-sys"
2937 +version = "0.3.105"
2938 +source = "registry+https://github.com/rust-lang/crates.io-index"
2939 +checksum = "9fbddc4a036f00ec4f18c83445bd3115cb306a91da554919a099d9222fe4a7f8"
2940 +dependencies = [
2941 + "js-sys",
2942 + "wasm-bindgen",
2943 +]
2944 +
2945 +[[package]]
2946 +name = "web-time"
2947 +version = "1.1.0"
2948 +source = "registry+https://github.com/rust-lang/crates.io-index"
2949 +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
2950 +dependencies = [
2951 + "js-sys",
2952 + "wasm-bindgen",
2953 +]
2954 +
2955 +[[package]]
2956 +name = "webpki-root-certs"
2957 +version = "1.0.9"
2958 +source = "registry+https://github.com/rust-lang/crates.io-index"
2959 +checksum = "b96554aa2acc8ccdb7e1c9a58a7a68dd5d13bccc69cd124cb09406db612a1c9b"
2960 +dependencies = [
2961 + "rustls-pki-types",
2962 +]
2963 +
2964 +[[package]]
2965 +name = "wezterm-bidi"
2966 +version = "0.2.3"
2967 +source = "registry+https://github.com/rust-lang/crates.io-index"
2968 +checksum = "0c0a6e355560527dd2d1cf7890652f4f09bb3433b6aadade4c9b5ed76de5f3ec"
2969 +dependencies = [
2970 + "log",
2971 + "wezterm-dynamic",
2972 +]
2973 +
2974 +[[package]]
2975 +name = "wezterm-blob-leases"
2976 +version = "0.1.1"
2977 +source = "registry+https://github.com/rust-lang/crates.io-index"
2978 +checksum = "692daff6d93d94e29e4114544ef6d5c942a7ed998b37abdc19b17136ea428eb7"
2979 +dependencies = [
2980 + "getrandom 0.3.4",
2981 + "mac_address",
2982 + "sha2",
2983 + "thiserror 1.0.69",
2984 + "uuid",
2985 +]
2986 +
2987 +[[package]]
2988 +name = "wezterm-color-types"
2989 +version = "0.3.0"
2990 +source = "registry+https://github.com/rust-lang/crates.io-index"
2991 +checksum = "7de81ef35c9010270d63772bebef2f2d6d1f2d20a983d27505ac850b8c4b4296"
2992 +dependencies = [
2993 + "csscolorparser",
2994 + "deltae",
2995 + "lazy_static",
2996 + "wezterm-dynamic",
2997 +]
2998 +
2999 +[[package]]
3000 +name = "wezterm-dynamic"
3001 +version = "0.2.1"
3002 +source = "registry+https://github.com/rust-lang/crates.io-index"
3003 +checksum = "5f2ab60e120fd6eaa68d9567f3226e876684639d22a4219b313ff69ec0ccd5ac"
3004 +dependencies = [
3005 + "log",
3006 + "ordered-float",
3007 + "strsim",
3008 + "thiserror 1.0.69",
3009 + "wezterm-dynamic-derive",
3010 +]
3011 +
3012 +[[package]]
3013 +name = "wezterm-dynamic-derive"
3014 +version = "0.1.1"
3015 +source = "registry+https://github.com/rust-lang/crates.io-index"
3016 +checksum = "46c0cf2d539c645b448eaffec9ec494b8b19bd5077d9e58cb1ae7efece8d575b"
3017 +dependencies = [
3018 + "proc-macro2",
3019 + "quote",
3020 + "syn 1.0.109",
3021 +]
3022 +
3023 +[[package]]
3024 +name = "wezterm-input-types"
3025 +version = "0.1.0"
3026 +source = "registry+https://github.com/rust-lang/crates.io-index"
3027 +checksum = "7012add459f951456ec9d6c7e6fc340b1ce15d6fc9629f8c42853412c029e57e"
3028 +dependencies = [
3029 + "bitflags 1.3.2",
3030 + "euclid",
3031 + "lazy_static",
3032 + "serde",
3033 + "wezterm-dynamic",
3034 +]
3035 +
3036 +[[package]]
3037 +name = "winapi"
3038 +version = "0.3.9"
3039 +source = "registry+https://github.com/rust-lang/crates.io-index"
3040 +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
3041 +dependencies = [
3042 + "winapi-i686-pc-windows-gnu",
3043 + "winapi-x86_64-pc-windows-gnu",
3044 +]
3045 +
3046 +[[package]]
3047 +name = "winapi-i686-pc-windows-gnu"
3048 +version = "0.4.0"
3049 +source = "registry+https://github.com/rust-lang/crates.io-index"
3050 +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
3051 +
3052 +[[package]]
3053 +name = "winapi-util"
3054 +version = "0.1.11"
3055 +source = "registry+https://github.com/rust-lang/crates.io-index"
3056 +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
3057 +dependencies = [
3058 + "windows-sys 0.61.2",
3059 +]
3060 +
3061 +[[package]]
3062 +name = "winapi-x86_64-pc-windows-gnu"
3063 +version = "0.4.0"
3064 +source = "registry+https://github.com/rust-lang/crates.io-index"
3065 +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
3066 +
3067 +[[package]]
3068 +name = "windows-core"
3069 +version = "0.62.2"
3070 +source = "registry+https://github.com/rust-lang/crates.io-index"
3071 +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb"
3072 +dependencies = [
3073 + "windows-implement",
3074 + "windows-interface",
3075 + "windows-link",
3076 + "windows-result",
3077 + "windows-strings",
3078 +]
3079 +
3080 +[[package]]
3081 +name = "windows-implement"
3082 +version = "0.60.2"
3083 +source = "registry+https://github.com/rust-lang/crates.io-index"
3084 +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
3085 +dependencies = [
3086 + "proc-macro2",
3087 + "quote",
3088 + "syn 2.0.119",
3089 +]
3090 +
3091 +[[package]]
3092 +name = "windows-interface"
3093 +version = "0.59.3"
3094 +source = "registry+https://github.com/rust-lang/crates.io-index"
3095 +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
3096 +dependencies = [
3097 + "proc-macro2",
3098 + "quote",
3099 + "syn 2.0.119",
3100 +]
3101 +
3102 +[[package]]
3103 +name = "windows-link"
3104 +version = "0.2.1"
3105 +source = "registry+https://github.com/rust-lang/crates.io-index"
3106 +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
3107 +
3108 +[[package]]
3109 +name = "windows-registry"
3110 +version = "0.6.1"
3111 +source = "registry+https://github.com/rust-lang/crates.io-index"
3112 +checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720"
3113 +dependencies = [
3114 + "windows-link",
3115 + "windows-result",
3116 + "windows-strings",
3117 +]
3118 +
3119 +[[package]]
3120 +name = "windows-result"
3121 +version = "0.4.1"
3122 +source = "registry+https://github.com/rust-lang/crates.io-index"
3123 +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"
3124 +dependencies = [
3125 + "windows-link",
3126 +]
3127 +
3128 +[[package]]
3129 +name = "windows-strings"
3130 +version = "0.5.1"
3131 +source = "registry+https://github.com/rust-lang/crates.io-index"
3132 +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"
3133 +dependencies = [
3134 + "windows-link",
3135 +]
3136 +
3137 +[[package]]
3138 +name = "windows-sys"
3139 +version = "0.45.0"
3140 +source = "registry+https://github.com/rust-lang/crates.io-index"
3141 +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
3142 +dependencies = [
3143 + "windows-targets 0.42.2",
3144 +]
3145 +
3146 +[[package]]
3147 +name = "windows-sys"
3148 +version = "0.52.0"
3149 +source = "registry+https://github.com/rust-lang/crates.io-index"
3150 +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
3151 +dependencies = [
3152 + "windows-targets 0.52.6",
3153 +]
3154 +
3155 +[[package]]
3156 +name = "windows-sys"
3157 +version = "0.61.2"
3158 +source = "registry+https://github.com/rust-lang/crates.io-index"
3159 +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
3160 +dependencies = [
3161 + "windows-link",
3162 +]
3163 +
3164 +[[package]]
3165 +name = "windows-targets"
3166 +version = "0.42.2"
3167 +source = "registry+https://github.com/rust-lang/crates.io-index"
3168 +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
3169 +dependencies = [
3170 + "windows_aarch64_gnullvm 0.42.2",
3171 + "windows_aarch64_msvc 0.42.2",
3172 + "windows_i686_gnu 0.42.2",
3173 + "windows_i686_msvc 0.42.2",
3174 + "windows_x86_64_gnu 0.42.2",
3175 + "windows_x86_64_gnullvm 0.42.2",
3176 + "windows_x86_64_msvc 0.42.2",
3177 +]
3178 +
3179 +[[package]]
3180 +name = "windows-targets"
3181 +version = "0.52.6"
3182 +source = "registry+https://github.com/rust-lang/crates.io-index"
3183 +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
3184 +dependencies = [
3185 + "windows_aarch64_gnullvm 0.52.6",
3186 + "windows_aarch64_msvc 0.52.6",
3187 + "windows_i686_gnu 0.52.6",
3188 + "windows_i686_gnullvm",
3189 + "windows_i686_msvc 0.52.6",
3190 + "windows_x86_64_gnu 0.52.6",
3191 + "windows_x86_64_gnullvm 0.52.6",
3192 + "windows_x86_64_msvc 0.52.6",
3193 +]
3194 +
3195 +[[package]]
3196 +name = "windows_aarch64_gnullvm"
3197 +version = "0.42.2"
3198 +source = "registry+https://github.com/rust-lang/crates.io-index"
3199 +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
3200 +
3201 +[[package]]
3202 +name = "windows_aarch64_gnullvm"
3203 +version = "0.52.6"
3204 +source = "registry+https://github.com/rust-lang/crates.io-index"
3205 +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
3206 +
3207 +[[package]]
3208 +name = "windows_aarch64_msvc"
3209 +version = "0.42.2"
3210 +source = "registry+https://github.com/rust-lang/crates.io-index"
3211 +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
3212 +
3213 +[[package]]
3214 +name = "windows_aarch64_msvc"
3215 +version = "0.52.6"
3216 +source = "registry+https://github.com/rust-lang/crates.io-index"
3217 +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
3218 +
3219 +[[package]]
3220 +name = "windows_i686_gnu"
3221 +version = "0.42.2"
3222 +source = "registry+https://github.com/rust-lang/crates.io-index"
3223 +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
3224 +
3225 +[[package]]
3226 +name = "windows_i686_gnu"
3227 +version = "0.52.6"
3228 +source = "registry+https://github.com/rust-lang/crates.io-index"
3229 +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
3230 +
3231 +[[package]]
3232 +name = "windows_i686_gnullvm"
3233 +version = "0.52.6"
3234 +source = "registry+https://github.com/rust-lang/crates.io-index"
3235 +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
3236 +
3237 +[[package]]
3238 +name = "windows_i686_msvc"
3239 +version = "0.42.2"
3240 +source = "registry+https://github.com/rust-lang/crates.io-index"
3241 +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
3242 +
3243 +[[package]]
3244 +name = "windows_i686_msvc"
3245 +version = "0.52.6"
3246 +source = "registry+https://github.com/rust-lang/crates.io-index"
3247 +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
3248 +
3249 +[[package]]
3250 +name = "windows_x86_64_gnu"
3251 +version = "0.42.2"
3252 +source = "registry+https://github.com/rust-lang/crates.io-index"
3253 +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
3254 +
3255 +[[package]]
3256 +name = "windows_x86_64_gnu"
3257 +version = "0.52.6"
3258 +source = "registry+https://github.com/rust-lang/crates.io-index"
3259 +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
3260 +
3261 +[[package]]
3262 +name = "windows_x86_64_gnullvm"
3263 +version = "0.42.2"
3264 +source = "registry+https://github.com/rust-lang/crates.io-index"
3265 +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
3266 +
3267 +[[package]]
3268 +name = "windows_x86_64_gnullvm"
3269 +version = "0.52.6"
3270 +source = "registry+https://github.com/rust-lang/crates.io-index"
3271 +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
3272 +
3273 +[[package]]
3274 +name = "windows_x86_64_msvc"
3275 +version = "0.42.2"
3276 +source = "registry+https://github.com/rust-lang/crates.io-index"
3277 +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
3278 +
3279 +[[package]]
3280 +name = "windows_x86_64_msvc"
3281 +version = "0.52.6"
3282 +source = "registry+https://github.com/rust-lang/crates.io-index"
3283 +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
3284 +
3285 +[[package]]
3286 +name = "winnow"
3287 +version = "1.0.4"
3288 +source = "registry+https://github.com/rust-lang/crates.io-index"
3289 +checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81"
3290 +
3291 +[[package]]
3292 +name = "wit-bindgen"
3293 +version = "0.57.1"
3294 +source = "registry+https://github.com/rust-lang/crates.io-index"
3295 +checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e"
3296 +
3297 +[[package]]
3298 +name = "writeable"
3299 +version = "0.6.4"
3300 +source = "registry+https://github.com/rust-lang/crates.io-index"
3301 +checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc"
3302 +
3303 +[[package]]
3304 +name = "yoke"
3305 +version = "0.8.3"
3306 +source = "registry+https://github.com/rust-lang/crates.io-index"
3307 +checksum = "709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5"
3308 +dependencies = [
3309 + "stable_deref_trait",
3310 + "yoke-derive",
3311 + "zerofrom",
3312 +]
3313 +
3314 +[[package]]
3315 +name = "yoke-derive"
3316 +version = "0.8.3"
3317 +source = "registry+https://github.com/rust-lang/crates.io-index"
3318 +checksum = "33811428bee40dbceb6d545e95754741d17a6aef9a4849f0fd62e2ba4f412a78"
3319 +dependencies = [
3320 + "proc-macro2",
3321 + "quote",
3322 + "syn 3.0.6",
3323 + "synstructure",
3324 +]
3325 +
3326 +[[package]]
3327 +name = "zerofrom"
3328 +version = "0.1.8"
3329 +source = "registry+https://github.com/rust-lang/crates.io-index"
3330 +checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272"
3331 +dependencies = [
3332 + "zerofrom-derive",
3333 +]
3334 +
3335 +[[package]]
3336 +name = "zerofrom-derive"
3337 +version = "0.1.8"
3338 +source = "registry+https://github.com/rust-lang/crates.io-index"
3339 +checksum = "f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a"
3340 +dependencies = [
3341 + "proc-macro2",
3342 + "quote",
3343 + "syn 3.0.6",
3344 + "synstructure",
3345 +]
3346 +
3347 +[[package]]
3348 +name = "zeroize"
3349 +version = "1.9.0"
3350 +source = "registry+https://github.com/rust-lang/crates.io-index"
3351 +checksum = "e13c156562582aa81c60cb29407084cdb54c4164760106ab78e6c5b0858cf64e"
3352 +
3353 +[[package]]
3354 +name = "zerotrie"
3355 +version = "0.2.5"
3356 +source = "registry+https://github.com/rust-lang/crates.io-index"
3357 +checksum = "4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f"
3358 +dependencies = [
3359 + "displaydoc",
3360 + "yoke",
3361 + "zerofrom",
3362 +]
3363 +
3364 +[[package]]
3365 +name = "zerovec"
3366 +version = "0.11.8"
3367 +source = "registry+https://github.com/rust-lang/crates.io-index"
3368 +checksum = "bb0464e17806c1d976d5cba29399c7f08e516e279e2ba493f63123b5fca67dd8"
3369 +dependencies = [
3370 + "yoke",
3371 + "zerofrom",
3372 + "zerovec-derive",
3373 +]
3374 +
3375 +[[package]]
3376 +name = "zerovec-derive"
3377 +version = "0.11.6"
3378 +source = "registry+https://github.com/rust-lang/crates.io-index"
3379 +checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da"
3380 +dependencies = [
3381 + "proc-macro2",
3382 + "quote",
3383 + "syn 3.0.6",
3384 +]
3385 +
3386 +[[package]]
3387 +name = "zmij"
3388 +version = "1.0.23"
3389 +source = "registry+https://github.com/rust-lang/crates.io-index"
3390 +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"
added cli/Cargo.toml
+61 −0
@@ -0,0 +1,61 @@
1 +[package]
2 +name = "gitgud-cli"
3 +version = "0.1.0"
4 +edition = "2024"
5 +description = "Command-line client for a GitGud forge"
6 +license = "AGPL-3.0-or-later"
7 +
8 +[[bin]]
9 +name = "gg"
10 +path = "src/main.rs"
11 +
12 +[dependencies]
13 +anyhow = "1"
14 +chrono = { version = "0.4", default-features = false, features = ["clock", "std"] }
15 +clap = { version = "4", features = ["derive", "env", "wrap_help"] }
16 +dirs = "7"
17 +ratatui = "0.30"
18 +reqwest = { version = "0.13", default-features = false, features = ["json", "http2", "charset", "rustls", "rustls-native-certs", "system-proxy"] }
19 +serde = { version = "1", features = ["derive"] }
20 +serde_json = "1"
21 +tokio = { version = "1", features = ["rt-multi-thread", "macros", "time", "sync"] }
22 +toml = "1"
23 +url = "2"
24 +
25 +# ── packaging ────────────────────────────────────────────────────────
26 +#
27 +# `cargo deb` and `cargo generate-rpm` build the two packages CI
28 +# publishes, from this metadata. Both are runnable by hand — a packaging
29 +# bug should be reproducible without pushing a commit:
30 +#
31 +# cargo deb
32 +# cargo generate-rpm
33 +#
34 +# CI overrides only what varies per build: the version stamp, the
35 +# maintainer, and the homepage.
36 +
37 +[package.metadata.deb]
38 +name = "gg"
39 +maintainer = "GitGud <noreply@gitgud.local>"
40 +copyright = "The GitGud authors, AGPL-3.0-or-later"
41 +license-file = ["../LICENSE.md", "0"]
42 +section = "utils"
43 +priority = "optional"
44 +extended-description = """
45 +Talks to the same /api/mobile/v1 surface the GitGud Android app uses:
46 +repositories, CI runs and logs, issues, pull requests, wiki pages and
47 +packages, plus an interactive CI dashboard.
48 +"""
49 +assets = [
50 + ["target/release/gg", "usr/bin/", "755"],
51 + ["README.md", "usr/share/doc/gg/README.md", "644"],
52 +]
53 +
54 +[package.metadata.generate-rpm]
55 +name = "gg"
56 +summary = "Command-line client for a GitGud forge"
57 +assets = [
58 + { source = "target/release/gg", dest = "/usr/bin/gg", mode = "755" },
59 + { source = "README.md", dest = "/usr/share/doc/gg/README.md", mode = "644", doc = true },
60 + { source = "../LICENSE.md", dest = "/usr/share/licenses/gg/LICENSE.md", mode = "644", doc = true },
61 +]
added cli/Dockerfile
+144 −0

Click to load diff…

added cli/README.md
+138 −0

Click to load diff…

added cli/src/api/mod.rs
+579 −0

Click to load diff…

added cli/src/api/models.rs
+526 −0

Click to load diff…

added cli/src/cli.rs
+472 −0

Click to load diff…

added cli/src/commands/auth.rs
+296 −0

Click to load diff…

added cli/src/commands/ci.rs
+415 −0

Click to load diff…

added cli/src/commands/issue.rs
+150 −0

Click to load diff…

added cli/src/commands/mod.rs
+218 −0

Click to load diff…

added cli/src/commands/package.rs
+144 −0

Click to load diff…

added cli/src/commands/pull.rs
+279 −0

Click to load diff…

added cli/src/commands/repo.rs
+174 −0

Click to load diff…

added cli/src/commands/wiki.rs
+51 −0

Click to load diff…

added cli/src/config.rs
+192 −0

Click to load diff…

added cli/src/main.rs
+95 −0

Click to load diff…

added cli/src/output.rs
+345 −0

Click to load diff…

added cli/src/tui/mod.rs
+521 −0

Click to load diff…

Parents: 2514c08