+7624 -7203 +/-136 browse
1 | diff --git a/.env b/.env |
2 | index 7922698..3144d47 100644 |
3 | --- a/.env |
4 | +++ b/.env |
5 | @@ -1 +1 @@ |
6 | - DATABASE_URL=sqlite://db/crescent.db |
7 | + DATABASE_URL=sqlite://db/ayllu.db |
8 | diff --git a/.gitignore b/.gitignore |
9 | index b370d35..c9e23a3 100644 |
10 | --- a/.gitignore |
11 | +++ b/.gitignore |
12 | @@ -1,5 +1,5 @@ |
13 | db/*.db* |
14 | - crescent-xmpp/db |
15 | + ayllu-xmpp/db |
16 | target |
17 | config.toml |
18 | node_modules |
19 | diff --git a/ATTRIBUTIONS.md b/ATTRIBUTIONS.md |
20 | index 67e52fe..5264633 100644 |
21 | --- a/ATTRIBUTIONS.md |
22 | +++ b/ATTRIBUTIONS.md |
23 | @@ -1,7 +1,6 @@ |
24 | # Attributions |
25 | |
26 | - Crescent would not be possible without many free and open source software |
27 | - projects. |
28 | + Ayllu would not be possible without many free software projects. |
29 | |
30 | [Git](https://git-scm.com/) |
31 | |
32 | @@ -18,7 +17,8 @@ And many more, see the `Cargo.toml` file. |
33 | |
34 | ##### CC BY-SA 4.0 |
35 | Most SVG icons come from [OpenMoji](https://openmoji.org) |
36 | - [Crescent moon emoji](https://openmoji.org/library/emoji-1F319/) by Vanessa Boutzikoudi. |
37 | + https://openclipart.org/artist/TrucomanX by Fernando Pujaico Rivera |
38 | + [Ayllu moon emoji](https://openmoji.org/library/emoji-1F319/) by Vanessa Boutzikoudi. |
39 | [Web Syndication Icon](https://openmoji.org/library/emoji-E381/) by Alexander Mรผller. |
40 | [Balance Scale](https://openmoji.org/library/emoji-2696/) by Hilda Kalyoncu. |
41 | [Classical Building](https://openmoji.org/library/emoji-1F3DB/) by Martin Wehl. |
42 | diff --git a/Cargo.lock b/Cargo.lock |
43 | index 5c395c0..7dd02f5 100644 |
44 | --- a/Cargo.lock |
45 | +++ b/Cargo.lock |
46 | @@ -427,6 +427,188 @@ dependencies = [ |
47 | ] |
48 | |
49 | [[package]] |
50 | + name = "ayllu" |
51 | + version = "0.2.1" |
52 | + dependencies = [ |
53 | + "anyhow", |
54 | + "async-trait", |
55 | + "axum", |
56 | + "axum-extra", |
57 | + "ayllu_api", |
58 | + "ayllu_build", |
59 | + "ayllu_config", |
60 | + "ayllu_database", |
61 | + "ayllu_git", |
62 | + "ayllu_mail", |
63 | + "ayllu_rpc", |
64 | + "ayllu_scheduler", |
65 | + "ayllu_xmpp", |
66 | + "capnp", |
67 | + "capnp-rpc", |
68 | + "cc", |
69 | + "clap 4.4.8", |
70 | + "comrak", |
71 | + "env_logger 0.10.0", |
72 | + "file-mode", |
73 | + "futures", |
74 | + "git2", |
75 | + "globwalk", |
76 | + "lazy_static", |
77 | + "libloading 0.8.0", |
78 | + "libsqlite3-sys", |
79 | + "log", |
80 | + "mime", |
81 | + "mime_guess", |
82 | + "plotters", |
83 | + "rand", |
84 | + "rss", |
85 | + "serde", |
86 | + "serde_json", |
87 | + "sqlx", |
88 | + "tabwriter", |
89 | + "tera", |
90 | + "time 0.3.30", |
91 | + "time-macros", |
92 | + "tokei", |
93 | + "tokio", |
94 | + "tokio-util", |
95 | + "toml 0.7.6", |
96 | + "tower", |
97 | + "tower-http", |
98 | + "tracing", |
99 | + "tracing-subscriber", |
100 | + "tree-sitter", |
101 | + "tree-sitter-highlight", |
102 | + "url", |
103 | + "webfinger", |
104 | + ] |
105 | + |
106 | + [[package]] |
107 | + name = "ayllu_api" |
108 | + version = "0.2.1" |
109 | + dependencies = [ |
110 | + "capnp", |
111 | + "capnp-futures", |
112 | + "capnp-rpc", |
113 | + "capnpc", |
114 | + "serde", |
115 | + ] |
116 | + |
117 | + [[package]] |
118 | + name = "ayllu_build" |
119 | + version = "0.2.1" |
120 | + dependencies = [ |
121 | + "anyhow", |
122 | + "ayllu_api", |
123 | + "ayllu_config", |
124 | + "ayllu_rpc", |
125 | + "ayllu_scheduler", |
126 | + "clap 4.4.8", |
127 | + "nickel-lang-core", |
128 | + "petgraph", |
129 | + "rand", |
130 | + "serde", |
131 | + "tracing", |
132 | + "tracing-subscriber", |
133 | + ] |
134 | + |
135 | + [[package]] |
136 | + name = "ayllu_config" |
137 | + version = "0.2.1" |
138 | + dependencies = [ |
139 | + "serde", |
140 | + "toml 0.7.6", |
141 | + ] |
142 | + |
143 | + [[package]] |
144 | + name = "ayllu_database" |
145 | + version = "0.2.1" |
146 | + dependencies = [ |
147 | + "futures", |
148 | + "serde", |
149 | + "sqlx", |
150 | + "time 0.3.30", |
151 | + "tracing", |
152 | + ] |
153 | + |
154 | + [[package]] |
155 | + name = "ayllu_git" |
156 | + version = "0.2.1" |
157 | + dependencies = [ |
158 | + "git2", |
159 | + "rand", |
160 | + "serde", |
161 | + "tokio", |
162 | + "tracing", |
163 | + ] |
164 | + |
165 | + [[package]] |
166 | + name = "ayllu_mail" |
167 | + version = "0.2.1" |
168 | + dependencies = [ |
169 | + "ayllu_api", |
170 | + "ayllu_config", |
171 | + "ayllu_rpc", |
172 | + "capnp", |
173 | + "capnp-rpc", |
174 | + "clap 4.4.8", |
175 | + "futures", |
176 | + "mailpot", |
177 | + "melib 0.8.2", |
178 | + "rusqlite", |
179 | + "serde", |
180 | + "tokio", |
181 | + "tracing", |
182 | + "tracing-subscriber", |
183 | + ] |
184 | + |
185 | + [[package]] |
186 | + name = "ayllu_rpc" |
187 | + version = "0.2.1" |
188 | + dependencies = [ |
189 | + "async-trait", |
190 | + "capnp", |
191 | + "capnp-rpc", |
192 | + "capnpc", |
193 | + "futures", |
194 | + "tokio", |
195 | + "tokio-util", |
196 | + "tracing", |
197 | + ] |
198 | + |
199 | + [[package]] |
200 | + name = "ayllu_scheduler" |
201 | + version = "0.2.1" |
202 | + dependencies = [ |
203 | + "tracing", |
204 | + ] |
205 | + |
206 | + [[package]] |
207 | + name = "ayllu_xmpp" |
208 | + version = "0.2.1" |
209 | + dependencies = [ |
210 | + "anyhow", |
211 | + "async-trait", |
212 | + "ayllu_api", |
213 | + "ayllu_config", |
214 | + "ayllu_database", |
215 | + "ayllu_rpc", |
216 | + "capnp", |
217 | + "capnp-rpc", |
218 | + "clap 4.4.8", |
219 | + "futures", |
220 | + "rand", |
221 | + "serde", |
222 | + "sqlx", |
223 | + "time 0.3.30", |
224 | + "tokio", |
225 | + "tokio-xmpp", |
226 | + "tracing", |
227 | + "tracing-subscriber", |
228 | + "xmpp", |
229 | + ] |
230 | + |
231 | + [[package]] |
232 | name = "backtrace" |
233 | version = "0.3.69" |
234 | source = "registry+https://github.com/rust-lang/crates.io-index" |
235 | @@ -910,188 +1092,6 @@ dependencies = [ |
236 | ] |
237 | |
238 | [[package]] |
239 | - name = "crescent" |
240 | - version = "0.2.1" |
241 | - dependencies = [ |
242 | - "anyhow", |
243 | - "async-trait", |
244 | - "axum", |
245 | - "axum-extra", |
246 | - "capnp", |
247 | - "capnp-rpc", |
248 | - "cc", |
249 | - "clap 4.4.8", |
250 | - "comrak", |
251 | - "crescent_api", |
252 | - "crescent_build", |
253 | - "crescent_config", |
254 | - "crescent_database", |
255 | - "crescent_git", |
256 | - "crescent_mail", |
257 | - "crescent_rpc", |
258 | - "crescent_scheduler", |
259 | - "crescent_xmpp", |
260 | - "env_logger 0.10.0", |
261 | - "file-mode", |
262 | - "futures", |
263 | - "git2", |
264 | - "globwalk", |
265 | - "lazy_static", |
266 | - "libloading 0.8.0", |
267 | - "libsqlite3-sys", |
268 | - "log", |
269 | - "mime", |
270 | - "mime_guess", |
271 | - "plotters", |
272 | - "rand", |
273 | - "rss", |
274 | - "serde", |
275 | - "serde_json", |
276 | - "sqlx", |
277 | - "tabwriter", |
278 | - "tera", |
279 | - "time 0.3.30", |
280 | - "time-macros", |
281 | - "tokei", |
282 | - "tokio", |
283 | - "tokio-util", |
284 | - "toml 0.7.6", |
285 | - "tower", |
286 | - "tower-http", |
287 | - "tracing", |
288 | - "tracing-subscriber", |
289 | - "tree-sitter", |
290 | - "tree-sitter-highlight", |
291 | - "url", |
292 | - "webfinger", |
293 | - ] |
294 | - |
295 | - [[package]] |
296 | - name = "crescent_api" |
297 | - version = "0.2.1" |
298 | - dependencies = [ |
299 | - "capnp", |
300 | - "capnp-futures", |
301 | - "capnp-rpc", |
302 | - "capnpc", |
303 | - "serde", |
304 | - ] |
305 | - |
306 | - [[package]] |
307 | - name = "crescent_build" |
308 | - version = "0.2.1" |
309 | - dependencies = [ |
310 | - "anyhow", |
311 | - "clap 4.4.8", |
312 | - "crescent_api", |
313 | - "crescent_config", |
314 | - "crescent_rpc", |
315 | - "crescent_scheduler", |
316 | - "nickel-lang-core", |
317 | - "petgraph", |
318 | - "rand", |
319 | - "serde", |
320 | - "tracing", |
321 | - "tracing-subscriber", |
322 | - ] |
323 | - |
324 | - [[package]] |
325 | - name = "crescent_config" |
326 | - version = "0.2.1" |
327 | - dependencies = [ |
328 | - "serde", |
329 | - "toml 0.7.6", |
330 | - ] |
331 | - |
332 | - [[package]] |
333 | - name = "crescent_database" |
334 | - version = "0.2.1" |
335 | - dependencies = [ |
336 | - "futures", |
337 | - "serde", |
338 | - "sqlx", |
339 | - "time 0.3.30", |
340 | - "tracing", |
341 | - ] |
342 | - |
343 | - [[package]] |
344 | - name = "crescent_git" |
345 | - version = "0.2.1" |
346 | - dependencies = [ |
347 | - "git2", |
348 | - "rand", |
349 | - "serde", |
350 | - "tokio", |
351 | - "tracing", |
352 | - ] |
353 | - |
354 | - [[package]] |
355 | - name = "crescent_mail" |
356 | - version = "0.2.1" |
357 | - dependencies = [ |
358 | - "capnp", |
359 | - "capnp-rpc", |
360 | - "clap 4.4.8", |
361 | - "crescent_api", |
362 | - "crescent_config", |
363 | - "crescent_rpc", |
364 | - "futures", |
365 | - "mailpot", |
366 | - "melib 0.8.2", |
367 | - "rusqlite", |
368 | - "serde", |
369 | - "tokio", |
370 | - "tracing", |
371 | - "tracing-subscriber", |
372 | - ] |
373 | - |
374 | - [[package]] |
375 | - name = "crescent_rpc" |
376 | - version = "0.2.1" |
377 | - dependencies = [ |
378 | - "async-trait", |
379 | - "capnp", |
380 | - "capnp-rpc", |
381 | - "capnpc", |
382 | - "futures", |
383 | - "tokio", |
384 | - "tokio-util", |
385 | - "tracing", |
386 | - ] |
387 | - |
388 | - [[package]] |
389 | - name = "crescent_scheduler" |
390 | - version = "0.2.1" |
391 | - dependencies = [ |
392 | - "tracing", |
393 | - ] |
394 | - |
395 | - [[package]] |
396 | - name = "crescent_xmpp" |
397 | - version = "0.2.1" |
398 | - dependencies = [ |
399 | - "anyhow", |
400 | - "async-trait", |
401 | - "capnp", |
402 | - "capnp-rpc", |
403 | - "clap 4.4.8", |
404 | - "crescent_api", |
405 | - "crescent_config", |
406 | - "crescent_database", |
407 | - "crescent_rpc", |
408 | - "futures", |
409 | - "rand", |
410 | - "serde", |
411 | - "sqlx", |
412 | - "time 0.3.30", |
413 | - "tokio", |
414 | - "tokio-xmpp", |
415 | - "tracing", |
416 | - "tracing-subscriber", |
417 | - "xmpp", |
418 | - ] |
419 | - |
420 | - [[package]] |
421 | name = "crossbeam-channel" |
422 | version = "0.5.8" |
423 | source = "registry+https://github.com/rust-lang/crates.io-index" |
424 | @@ -2771,7 +2771,7 @@ dependencies = [ |
425 | [[package]] |
426 | name = "mailpot" |
427 | version = "0.1.1" |
428 | - source = "git+https://kevinschoon.com/forks/mailpot?branch=crescent#623388969d0808ac7f8362ab4e7d70716acef713" |
429 | + source = "git+https://kevinschoon.com/forks/mailpot?branch=ayllu#623388969d0808ac7f8362ab4e7d70716acef713" |
430 | dependencies = [ |
431 | "anyhow", |
432 | "chrono", |
433 | @@ -6037,7 +6037,7 @@ checksum = "db9fefe62d5969721e2cfc529e6a760901cc0da422b6d67e7bfd18e69490dba6" |
434 | [[package]] |
435 | name = "xmpp" |
436 | version = "0.5.0" |
437 | - source = "git+https://kevinschoon.com/forks/xmpp-rs?branch=crescent#3df636d178234f7b15bcc9a7c92ad33221fcf324" |
438 | + source = "git+https://kevinschoon.com/forks/xmpp-rs?branch=ayllu#3df636d178234f7b15bcc9a7c92ad33221fcf324" |
439 | dependencies = [ |
440 | "futures", |
441 | "log", |
442 | diff --git a/Cargo.toml b/Cargo.toml |
443 | index 47406ab..8ba8f01 100644 |
444 | --- a/Cargo.toml |
445 | +++ b/Cargo.toml |
446 | @@ -1,5 +1,5 @@ |
447 | [package] |
448 | - name = "crescent" |
449 | + name = "ayllu" |
450 | version = "0.2.1" |
451 | edition = "2021" |
452 | |
453 | @@ -11,35 +11,35 @@ members = [ |
454 | "crates/rpc", |
455 | "crates/scheduler", |
456 | "crates/database", |
457 | - "crescent-mail", |
458 | - "crescent-build", |
459 | - "crescent-xmpp" |
460 | + "ayllu-mail", |
461 | + "ayllu-build", |
462 | + "ayllu-xmpp" |
463 | ] |
464 | |
465 | [[bin]] |
466 | - name = "crescent" |
467 | + name = "ayllu" |
468 | |
469 | [workspace.dependencies] |
470 | - crescent_api = { version = "0.2.1", path = "./crates/api"} |
471 | - crescent_config = { version = "0.2.1", path = "./crates/config"} |
472 | - crescent_database = { version = "0.2.1", path = "./crates/database"} |
473 | - crescent_git = { version = "0.2.1", path = "./crates/git"} |
474 | - crescent_rpc = { version = "0.2.1", path = "./crates/rpc"} |
475 | - crescent_scheduler = {version = "0.2.1", path = "./crates/scheduler"} |
476 | - crescent_xmpp = { version = "0.2.1", path = "crescent-xmpp"} |
477 | - crescent_build = {version = "0.2.1", path = "crescent-build"} |
478 | - crescent_mail = { version = "0.2.1", path = "crescent-mail"} |
479 | + ayllu_api = { version = "0.2.1", path = "./crates/api"} |
480 | + ayllu_config = { version = "0.2.1", path = "./crates/config"} |
481 | + ayllu_database = { version = "0.2.1", path = "./crates/database"} |
482 | + ayllu_git = { version = "0.2.1", path = "./crates/git"} |
483 | + ayllu_rpc = { version = "0.2.1", path = "./crates/rpc"} |
484 | + ayllu_scheduler = {version = "0.2.1", path = "./crates/scheduler"} |
485 | + ayllu_xmpp = { version = "0.2.1", path = "ayllu-xmpp"} |
486 | + ayllu_build = {version = "0.2.1", path = "ayllu-build"} |
487 | + ayllu_mail = { version = "0.2.1", path = "ayllu-mail"} |
488 | |
489 | [dependencies] |
490 | - crescent_api = { workspace = true } |
491 | - crescent_config = { workspace = true } |
492 | - crescent_database = { workspace = true } |
493 | - crescent_git = { workspace = true } |
494 | - crescent_rpc = { workspace = true } |
495 | - crescent_scheduler = {workspace = true} |
496 | - crescent_mail = {workspace = true} |
497 | - crescent_build = {workspace = true} |
498 | - crescent_xmpp = {workspace = true} |
499 | + ayllu_api = { workspace = true } |
500 | + ayllu_config = { workspace = true } |
501 | + ayllu_database = { workspace = true } |
502 | + ayllu_git = { workspace = true } |
503 | + ayllu_rpc = { workspace = true } |
504 | + ayllu_scheduler = {workspace = true} |
505 | + ayllu_mail = {workspace = true} |
506 | + ayllu_build = {workspace = true} |
507 | + ayllu_xmpp = {workspace = true} |
508 | |
509 | sqlx = { version = "0.7.2", features = [ "runtime-tokio-rustls", "sqlite", "macros", "time" ] } |
510 | git2 = "0.17.1" |
511 | diff --git a/Moonbuild.ncl b/Moonbuild.ncl |
512 | index 34edc55..06de60d 100644 |
513 | --- a/Moonbuild.ncl |
514 | +++ b/Moonbuild.ncl |
515 | @@ -1,13 +1,13 @@ |
516 | let test_targets = [ |
517 | - "crescent_api", |
518 | - "crescent_config", |
519 | - "crescent_database", |
520 | - "crescent_git", |
521 | - "crescent_rpc", |
522 | - "crescent_scheduler", |
523 | - "crescent_mail", |
524 | - "crescent_build", |
525 | - "crescent_xmpp", |
526 | + "ayllu_api", |
527 | + "ayllu_config", |
528 | + "ayllu_database", |
529 | + "ayllu_git", |
530 | + "ayllu_rpc", |
531 | + "ayllu_scheduler", |
532 | + "ayllu_mail", |
533 | + "ayllu_build", |
534 | + "ayllu_xmpp", |
535 | ] |
536 | in |
537 | { |
538 | @@ -50,7 +50,7 @@ in |
539 | name = "Arch Git", |
540 | shell = "/bin/sh", |
541 | input = m%" |
542 | - cd packaging/arch/crescent-git |
543 | + cd packaging/arch/ayllu-git |
544 | makepkg -fc --skippgpcheck |
545 | "% |
546 | } |
547 | diff --git a/README.md b/README.md |
548 | index e435551..28fc5e8 100644 |
549 | --- a/README.md |
550 | +++ b/README.md |
551 | @@ -1,10 +1,10 @@ |
552 | - # ๐ Crescent |
553 | + # ๐ Ayllu |
554 | |
555 | - Crescent is a hyper performant & hackable code forge optimized for single |
556 | + Ayllu is a hyper performant & hackable code forge optimized for single |
557 | instance deployments. It leverages the distributed nature of [Git](https://git-scm.com) |
558 | with a variety of standards based integrations. |
559 | |
560 | - Crescent might fit the following use cases well: |
561 | + Ayllu might fit the following use cases well: |
562 | |
563 | * A drop-in replacement for [gitweb](https://git-scm.com/docs/gitweb) allowing |
564 | you to browse your repositories locally. |
565 | @@ -36,12 +36,12 @@ you to browse your repositories locally. |
566 | | static hosting | โ | | |
567 | | activity tracking | โ | | |
568 | | extensible plugin system | โ | | |
569 | - | mailing list support | WIP | see [31fe498](/projects/crescent/bugs/31fe498) | |
570 | + | mailing list support | WIP | see [31fe498](/projects/ayllu/bugs/31fe498) | |
571 | | xmpp integration | WIP | | |
572 | - | activity pub based federation | TBD | see [6f74244](/projects/crescent/bugs/6f74244) | |
573 | - | continuous integration | TODO | see [ba0865](/projects/crescent/bugs/ba0865c) | |
574 | - | graphql api | TODO | see [eff5c44](/projects/crescent/bugs/eff5c44) | |
575 | - | centralized "hub" | TODO | see [3c3cb24](/projects/crescent/bugs/3c3cb24) | |
576 | + | activity pub based federation | TBD | see [6f74244](/projects/ayllu/bugs/6f74244) | |
577 | + | continuous integration | TODO | see [ba0865](/projects/ayllu/bugs/ba0865c) | |
578 | + | graphql api | TODO | see [eff5c44](/projects/ayllu/bugs/eff5c44) | |
579 | + | centralized "hub" | TODO | see [3c3cb24](/projects/ayllu/bugs/3c3cb24) | |
580 | |
581 | ## Installation |
582 | |
583 | @@ -51,9 +51,9 @@ The best way to install this is via your package manager. |
584 | |
585 | #### AUR |
586 | |
587 | - [releases](https://aur.archlinux.org/packages/crescent) |
588 | + [releases](https://aur.archlinux.org/packages/ayllu) |
589 | |
590 | - [git](https://aur.archlinux.org/packages/crescent-git) |
591 | + [git](https://aur.archlinux.org/packages/ayllu-git) |
592 | |
593 | ### Manual Installation |
594 | |
595 | @@ -66,14 +66,14 @@ sudo scripts/uninstall.sh |
596 | |
597 | ## Compiling From Source |
598 | |
599 | - Crescent is written in [rust](https://www.rust-lang.org/) and you'll need it's |
600 | + Ayllu is written in [rust](https://www.rust-lang.org/) and you'll need it's |
601 | compiler to build the project. Additionally you also must have |
602 | [git](https://git-scm.com), and [libgit2](https://libgit2.org/) installed on your system. |
603 | |
604 | - For syntax highlighting to work you must have [tree-sitter-amalagamation](https://crescent-forge.org/projects/tree-sitter-amalgamation) |
605 | + For syntax highlighting to work you must have [tree-sitter-amalagamation](https://ayllu-forge.org/projects/tree-sitter-amalgamation) |
606 | installed on your system as well. |
607 | |
608 | - You can run the [check_build_dependencies.sh](/projects/crescent/blob/scripts/check_build_dependencies.sh) |
609 | + You can run the [check_build_dependencies.sh](/projects/ayllu/blob/scripts/check_build_dependencies.sh) |
610 | script to verify you have all the necessary software on your system. |
611 | |
612 | ```sh |
613 | diff --git a/ayllu-build/Cargo.toml b/ayllu-build/Cargo.toml |
614 | new file mode 100644 |
615 | index 0000000..afc34a4 |
616 | --- /dev/null |
617 | +++ b/ayllu-build/Cargo.toml |
618 | @@ -0,0 +1,18 @@ |
619 | + [package] |
620 | + name = "ayllu_build" |
621 | + version = "0.2.1" |
622 | + edition = "2021" |
623 | + |
624 | + [dependencies] |
625 | + anyhow = "1.0.75" |
626 | + clap = "4.4.8" |
627 | + ayllu_api = {workspace = true} |
628 | + ayllu_config = {workspace = true} |
629 | + ayllu_rpc = {workspace = true} |
630 | + ayllu_scheduler = {workspace = true} |
631 | + nickel-lang-core = { version = "0.3.0", default-features = false } |
632 | + petgraph = "0.6.4" |
633 | + rand = "0.8.5" |
634 | + serde = "1.0.193" |
635 | + tracing = "0.1.40" |
636 | + tracing-subscriber = "0.3.18" |
637 | diff --git a/ayllu-build/README.md b/ayllu-build/README.md |
638 | new file mode 100644 |
639 | index 0000000..139c181 |
640 | --- /dev/null |
641 | +++ b/ayllu-build/README.md |
642 | @@ -0,0 +1,3 @@ |
643 | + # ayllu-build |
644 | + |
645 | + [LXC](https://linuxcontainers.org/) based software build system for Ayllu |
646 | diff --git a/ayllu-build/hack/build-system b/ayllu-build/hack/build-system |
647 | new file mode 100755 |
648 | index 0000000..760e113 |
649 | --- /dev/null |
650 | +++ b/ayllu-build/hack/build-system |
651 | @@ -0,0 +1,73 @@ |
652 | + #!/usr/bin/env python |
653 | + |
654 | + import logging |
655 | + import sys |
656 | + import argparse |
657 | + import json |
658 | + import subprocess |
659 | + from graphlib import TopologicalSorter |
660 | + from collections import namedtuple |
661 | + from os import path |
662 | + |
663 | + logging.basicConfig(format='%(asctime)s %(levelname)s %(message)s', level=logging.DEBUG) |
664 | + |
665 | + |
666 | + Job = namedtuple("Job", ["name", "steps", "dependencies"]) |
667 | + Step = namedtuple("Step", ["name", "command"]) |
668 | + |
669 | + |
670 | + def _load_step(json_input): |
671 | + name = json_input["name"] |
672 | + if "shell" in json_input: |
673 | + shell = json_input["shell"] |
674 | + else: |
675 | + shell = "/bin/sh" |
676 | + input = json_input["input"] |
677 | + command = [shell, "-c", "set -xe;\n" + input] |
678 | + return Step(name, command) |
679 | + |
680 | + |
681 | + def _load_job(json_input): |
682 | + name = json_input["name"] |
683 | + if "dependencies" in json_input: |
684 | + dependencies = json_input["dependencies"] |
685 | + else: |
686 | + dependencies = [] |
687 | + return Job(name, [_load_step(step) for step in json_input["steps"]], dependencies) |
688 | + |
689 | + |
690 | + def _invoke_job(job): |
691 | + for step in job.steps: |
692 | + logging.info(f"running step: {step.name}") |
693 | + subprocess.check_call(step.command) |
694 | + |
695 | + |
696 | + def _run_build_system(script_path): |
697 | + if path.isdir(script_path): |
698 | + script_path = path.join(script_path, "Moonbuild") |
699 | + output = subprocess.check_output(["nickel", "export", script_path]) |
700 | + config = json.loads(output) |
701 | + graph = dict() |
702 | + jobs_by_name = dict() |
703 | + jobs = [_load_job(job) for job in config["jobs"]] |
704 | + for job in jobs: |
705 | + graph.update({job.name: set(job.dependencies)}) |
706 | + jobs_by_name[job.name] = job |
707 | + ts = TopologicalSorter(graph) |
708 | + for entry in ts.static_order(): |
709 | + job = jobs_by_name[entry] |
710 | + logging.info(f"running job: {job.name}") |
711 | + _invoke_job(job) |
712 | + |
713 | + |
714 | + def main(): |
715 | + parser = argparse.ArgumentParser("build-system") |
716 | + parser.add_argument( |
717 | + "BUILD_DIR", help="path to a directory containg a Moonbuild script" |
718 | + ) |
719 | + args = parser.parse_args() |
720 | + _run_build_system(args.BUILD_DIR) |
721 | + |
722 | + |
723 | + if __name__ == "__main__": |
724 | + main() |
725 | diff --git a/ayllu-build/src/evaluate.rs b/ayllu-build/src/evaluate.rs |
726 | new file mode 100644 |
727 | index 0000000..22d7466 |
728 | --- /dev/null |
729 | +++ b/ayllu-build/src/evaluate.rs |
730 | @@ -0,0 +1,119 @@ |
731 | + use std::collections::HashMap; |
732 | + use std::env::temp_dir; |
733 | + use std::fs::{remove_file, File}; |
734 | + |
735 | + use anyhow::{format_err, Result}; |
736 | + use nickel_lang_core::{eval::cache::lazy::CBNCache, program::Program}; |
737 | + use petgraph::{ |
738 | + algo::is_cyclic_directed, |
739 | + graph::{DiGraph, NodeIndex}, |
740 | + visit::Dfs, |
741 | + Direction, |
742 | + }; |
743 | + use rand::distributions::{Alphanumeric, DistString}; |
744 | + use serde::Deserialize; |
745 | + use tracing::log::info; |
746 | + |
747 | + pub type JobGraph = DiGraph<Job, i32>; |
748 | + |
749 | + #[derive(Deserialize, Debug, Clone)] |
750 | + pub struct Step { |
751 | + pub name: String, |
752 | + pub shell: String, |
753 | + pub input: String, |
754 | + } |
755 | + |
756 | + #[derive(Deserialize, Debug, Clone)] |
757 | + pub struct Job { |
758 | + pub name: String, |
759 | + pub dependencies: Vec<String>, |
760 | + pub steps: Vec<Step>, |
761 | + } |
762 | + |
763 | + #[derive(Deserialize, Debug, Clone)] |
764 | + pub struct Manifest { |
765 | + pub jobs: Vec<Job>, |
766 | + } |
767 | + |
768 | + impl Manifest { |
769 | + pub fn to_graph(&self) -> Result<(NodeIndex, JobGraph)> { |
770 | + let mut by_name: HashMap<String, NodeIndex> = HashMap::new(); |
771 | + let mut graph = DiGraph::new(); |
772 | + self.jobs.iter().for_each(|job| { |
773 | + by_name.insert(job.name.clone(), graph.add_node(job.clone())); |
774 | + }); |
775 | + for job in self.jobs.iter() { |
776 | + let job_index = by_name.get(&job.name).unwrap(); |
777 | + for dependency in job.dependencies.iter() { |
778 | + match by_name.get(dependency.as_str()) { |
779 | + Some(index) => { |
780 | + graph.add_edge(*job_index, *index, 0); |
781 | + } |
782 | + None => return Err(format_err!("missing dependency: {}", job.name)), |
783 | + } |
784 | + } |
785 | + } |
786 | + if is_cyclic_directed(&graph) { |
787 | + return Err(format_err!("graph contains a cycle")); |
788 | + } |
789 | + // first job without dependencies |
790 | + let first_job = self |
791 | + .jobs |
792 | + .iter() |
793 | + .find_map(|job| { |
794 | + if job.dependencies.len() == 0 { |
795 | + Some(by_name.get(&job.name).unwrap()) |
796 | + } else { |
797 | + None |
798 | + } |
799 | + }) |
800 | + .unwrap(); |
801 | + Ok((*first_job, graph)) |
802 | + } |
803 | + } |
804 | + |
805 | + pub fn build_id() -> String { |
806 | + Alphanumeric.sample_string(&mut rand::thread_rng(), 16) |
807 | + } |
808 | + |
809 | + // evaluate the target file in a given directory |
810 | + pub fn eval(build_id: &str, target: &str) -> Result<()> { |
811 | + info!("evaluating target: {}", target); |
812 | + // TODO: this doesn't seem to actually do anything but is needed to parse |
813 | + // the program. A PR that abstracted this and makes it easy to deserialize |
814 | + // items with Serde directly would be nice. |
815 | + let cache_path = format!( |
816 | + "{}/ayllu-build-{}", |
817 | + temp_dir().to_str().unwrap(), |
818 | + build_id |
819 | + ); |
820 | + let fp = File::create(&cache_path)?; |
821 | + let mut result = Program::<CBNCache>::new_from_file(target, fp)?; |
822 | + match result.eval_full() { |
823 | + Ok(term) => { |
824 | + let manifest = Manifest::deserialize(term)?; |
825 | + info!("manifest loaded successfully"); |
826 | + let (start, job_graph) = manifest.to_graph()?; |
827 | + // TODO: parallelism |
828 | + info!("processing {} jobs", job_graph.node_count()); |
829 | + let mut dfs = Dfs::new(&job_graph, start); |
830 | + while let Some(nx) = dfs.next(&job_graph) { |
831 | + let job = &job_graph[nx]; |
832 | + info!("processing job: {}", job.name); |
833 | + // TODO |
834 | + info!("finished job: {}", job.name); |
835 | + } |
836 | + // finish jobs without any dependencies last if they exist |
837 | + for nx in job_graph.externals(Direction::Incoming) { |
838 | + let job = &job_graph[nx]; |
839 | + info!("processing job: {}", job.name); |
840 | + // TODO |
841 | + info!("finished job: {}", job.name); |
842 | + } |
843 | + info!("cleaning up cache path: {}", &cache_path); |
844 | + remove_file(&cache_path)?; |
845 | + Ok(()) |
846 | + } |
847 | + Err(err) => Err(format_err!("failed to load manifest: {:?}", err)), |
848 | + } |
849 | + } |
850 | diff --git a/ayllu-build/src/main.rs b/ayllu-build/src/main.rs |
851 | new file mode 100644 |
852 | index 0000000..7db195f |
853 | --- /dev/null |
854 | +++ b/ayllu-build/src/main.rs |
855 | @@ -0,0 +1,60 @@ |
856 | + use std::io::stderr; |
857 | + use std::str::FromStr; |
858 | + |
859 | + use anyhow::Result; |
860 | + use clap::{arg, value_parser, Command}; |
861 | + use tracing::{log::info, Level}; |
862 | + use tracing_subscriber; |
863 | + |
864 | + mod evaluate; |
865 | + mod server; |
866 | + |
867 | + pub fn main() -> Result<()> { |
868 | + let command = Command::new("ayllu-build") |
869 | + .about("ayllu build system") |
870 | + .arg( |
871 | + arg!(-c --config <FILE> "optional path to a configuration file") |
872 | + .id("config") |
873 | + .required(false) |
874 | + .value_parser(value_parser!(String)), |
875 | + ) |
876 | + .arg( |
877 | + arg!(-l --level <LEVEL> "logging level [ERROR,WARN,INFO,DEBUG,TRACE]") |
878 | + .id("level") |
879 | + .required(false) |
880 | + .value_parser(value_parser!(Level)), |
881 | + ) |
882 | + .subcommand_required(true) |
883 | + .subcommand(Command::new("serve")) |
884 | + .about("run the build server and listen for commands") |
885 | + .subcommand( |
886 | + Command::new("evaluate").arg( |
887 | + arg!(-s --script <SCRIPT> "alternate build script path") |
888 | + .id("script") |
889 | + .required(false), |
890 | + ), |
891 | + ) |
892 | + .about("evaluate a local build script"); |
893 | + |
894 | + let matches = command.get_matches(); |
895 | + let log_level = matches |
896 | + .get_one::<Level>("level").unwrap_or(&Level::INFO); |
897 | + tracing_subscriber::fmt() |
898 | + .compact() |
899 | + .with_max_level(*log_level) |
900 | + .with_line_number(true) |
901 | + .with_level(true) |
902 | + .with_writer(stderr) |
903 | + .init(); |
904 | + info!("logger initialized"); |
905 | + if let Some(matches) = matches.subcommand_matches("serve") { |
906 | + } else if let Some(matches) = matches.subcommand_matches("evaluate") { |
907 | + // TODO: refactor into .ayllu helper directory |
908 | + let build_script = matches |
909 | + .get_one::<String>("script") |
910 | + .unwrap_or(&String::from("Moonbuild.ncl")) |
911 | + .clone(); |
912 | + evaluate::eval(&evaluate::build_id(), &build_script)? |
913 | + }; |
914 | + Ok(()) |
915 | + } |
916 | diff --git a/ayllu-build/src/server.rs b/ayllu-build/src/server.rs |
917 | new file mode 100644 |
918 | index 0000000..e69de29 |
919 | --- /dev/null |
920 | +++ b/ayllu-build/src/server.rs |
921 | diff --git a/ayllu-mail/Cargo.lock b/ayllu-mail/Cargo.lock |
922 | new file mode 100644 |
923 | index 0000000..b827fed |
924 | --- /dev/null |
925 | +++ b/ayllu-mail/Cargo.lock |
926 | @@ -0,0 +1,3558 @@ |
927 | + # This file is automatically @generated by Cargo. |
928 | + # It is not intended for manual editing. |
929 | + version = 3 |
930 | + |
931 | + [[package]] |
932 | + name = "addr2line" |
933 | + version = "0.21.0" |
934 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
935 | + checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" |
936 | + dependencies = [ |
937 | + "gimli", |
938 | + ] |
939 | + |
940 | + [[package]] |
941 | + name = "adler" |
942 | + version = "1.0.2" |
943 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
944 | + checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" |
945 | + |
946 | + [[package]] |
947 | + name = "ahash" |
948 | + version = "0.7.6" |
949 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
950 | + checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" |
951 | + dependencies = [ |
952 | + "getrandom", |
953 | + "once_cell", |
954 | + "version_check", |
955 | + ] |
956 | + |
957 | + [[package]] |
958 | + name = "ahash" |
959 | + version = "0.8.3" |
960 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
961 | + checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" |
962 | + dependencies = [ |
963 | + "cfg-if 1.0.0", |
964 | + "getrandom", |
965 | + "once_cell", |
966 | + "serde", |
967 | + "version_check", |
968 | + ] |
969 | + |
970 | + [[package]] |
971 | + name = "aho-corasick" |
972 | + version = "1.1.2" |
973 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
974 | + checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" |
975 | + dependencies = [ |
976 | + "memchr", |
977 | + ] |
978 | + |
979 | + [[package]] |
980 | + name = "alloc-no-stdlib" |
981 | + version = "2.0.4" |
982 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
983 | + checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" |
984 | + |
985 | + [[package]] |
986 | + name = "alloc-stdlib" |
987 | + version = "0.2.2" |
988 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
989 | + checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" |
990 | + dependencies = [ |
991 | + "alloc-no-stdlib", |
992 | + ] |
993 | + |
994 | + [[package]] |
995 | + name = "allocator-api2" |
996 | + version = "0.2.16" |
997 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
998 | + checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" |
999 | + |
1000 | + [[package]] |
1001 | + name = "android-tzdata" |
1002 | + version = "0.1.1" |
1003 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1004 | + checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" |
1005 | + |
1006 | + [[package]] |
1007 | + name = "android_system_properties" |
1008 | + version = "0.1.5" |
1009 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1010 | + checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" |
1011 | + dependencies = [ |
1012 | + "libc", |
1013 | + ] |
1014 | + |
1015 | + [[package]] |
1016 | + name = "anyhow" |
1017 | + version = "1.0.75" |
1018 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1019 | + checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" |
1020 | + |
1021 | + [[package]] |
1022 | + name = "arrayref" |
1023 | + version = "0.3.7" |
1024 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1025 | + checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" |
1026 | + |
1027 | + [[package]] |
1028 | + name = "arrayvec" |
1029 | + version = "0.5.2" |
1030 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1031 | + checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" |
1032 | + |
1033 | + [[package]] |
1034 | + name = "async-channel" |
1035 | + version = "1.9.0" |
1036 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1037 | + checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" |
1038 | + dependencies = [ |
1039 | + "concurrent-queue", |
1040 | + "event-listener 2.5.3", |
1041 | + "futures-core", |
1042 | + ] |
1043 | + |
1044 | + [[package]] |
1045 | + name = "async-compression" |
1046 | + version = "0.4.3" |
1047 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1048 | + checksum = "bb42b2197bf15ccb092b62c74515dbd8b86d0effd934795f6687c93b6e679a2c" |
1049 | + dependencies = [ |
1050 | + "brotli", |
1051 | + "futures-core", |
1052 | + "memchr", |
1053 | + "pin-project-lite", |
1054 | + "tokio", |
1055 | + ] |
1056 | + |
1057 | + [[package]] |
1058 | + name = "async-executor" |
1059 | + version = "1.5.4" |
1060 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1061 | + checksum = "2c1da3ae8dabd9c00f453a329dfe1fb28da3c0a72e2478cdcd93171740c20499" |
1062 | + dependencies = [ |
1063 | + "async-lock", |
1064 | + "async-task", |
1065 | + "concurrent-queue", |
1066 | + "fastrand 2.0.1", |
1067 | + "futures-lite", |
1068 | + "slab", |
1069 | + ] |
1070 | + |
1071 | + [[package]] |
1072 | + name = "async-fs" |
1073 | + version = "1.6.0" |
1074 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1075 | + checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" |
1076 | + dependencies = [ |
1077 | + "async-lock", |
1078 | + "autocfg", |
1079 | + "blocking", |
1080 | + "futures-lite", |
1081 | + ] |
1082 | + |
1083 | + [[package]] |
1084 | + name = "async-io" |
1085 | + version = "1.13.0" |
1086 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1087 | + checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" |
1088 | + dependencies = [ |
1089 | + "async-lock", |
1090 | + "autocfg", |
1091 | + "cfg-if 1.0.0", |
1092 | + "concurrent-queue", |
1093 | + "futures-lite", |
1094 | + "log", |
1095 | + "parking", |
1096 | + "polling", |
1097 | + "rustix 0.37.24", |
1098 | + "slab", |
1099 | + "socket2 0.4.9", |
1100 | + "waker-fn", |
1101 | + ] |
1102 | + |
1103 | + [[package]] |
1104 | + name = "async-lock" |
1105 | + version = "2.8.0" |
1106 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1107 | + checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" |
1108 | + dependencies = [ |
1109 | + "event-listener 2.5.3", |
1110 | + ] |
1111 | + |
1112 | + [[package]] |
1113 | + name = "async-net" |
1114 | + version = "1.8.0" |
1115 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1116 | + checksum = "0434b1ed18ce1cf5769b8ac540e33f01fa9471058b5e89da9e06f3c882a8c12f" |
1117 | + dependencies = [ |
1118 | + "async-io", |
1119 | + "blocking", |
1120 | + "futures-lite", |
1121 | + ] |
1122 | + |
1123 | + [[package]] |
1124 | + name = "async-process" |
1125 | + version = "1.8.1" |
1126 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1127 | + checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88" |
1128 | + dependencies = [ |
1129 | + "async-io", |
1130 | + "async-lock", |
1131 | + "async-signal", |
1132 | + "blocking", |
1133 | + "cfg-if 1.0.0", |
1134 | + "event-listener 3.0.0", |
1135 | + "futures-lite", |
1136 | + "rustix 0.38.18", |
1137 | + "windows-sys", |
1138 | + ] |
1139 | + |
1140 | + [[package]] |
1141 | + name = "async-session" |
1142 | + version = "3.0.0" |
1143 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1144 | + checksum = "07da4ce523b4e2ebaaf330746761df23a465b951a83d84bbce4233dabedae630" |
1145 | + dependencies = [ |
1146 | + "anyhow", |
1147 | + "async-lock", |
1148 | + "async-trait", |
1149 | + "base64 0.13.1", |
1150 | + "bincode", |
1151 | + "blake3", |
1152 | + "chrono", |
1153 | + "hmac 0.11.0", |
1154 | + "log", |
1155 | + "rand", |
1156 | + "serde", |
1157 | + "serde_json", |
1158 | + "sha2 0.9.9", |
1159 | + ] |
1160 | + |
1161 | + [[package]] |
1162 | + name = "async-signal" |
1163 | + version = "0.2.4" |
1164 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1165 | + checksum = "d2a5415b7abcdc9cd7d63d6badba5288b2ca017e3fbd4173b8f405449f1a2399" |
1166 | + dependencies = [ |
1167 | + "async-io", |
1168 | + "async-lock", |
1169 | + "atomic-waker", |
1170 | + "cfg-if 1.0.0", |
1171 | + "futures-core", |
1172 | + "futures-io", |
1173 | + "rustix 0.38.18", |
1174 | + "signal-hook-registry", |
1175 | + "slab", |
1176 | + "windows-sys", |
1177 | + ] |
1178 | + |
1179 | + [[package]] |
1180 | + name = "async-stream" |
1181 | + version = "0.3.5" |
1182 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1183 | + checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" |
1184 | + dependencies = [ |
1185 | + "async-stream-impl", |
1186 | + "futures-core", |
1187 | + "pin-project-lite", |
1188 | + ] |
1189 | + |
1190 | + [[package]] |
1191 | + name = "async-stream-impl" |
1192 | + version = "0.3.5" |
1193 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1194 | + checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" |
1195 | + dependencies = [ |
1196 | + "proc-macro2", |
1197 | + "quote", |
1198 | + "syn 2.0.38", |
1199 | + ] |
1200 | + |
1201 | + [[package]] |
1202 | + name = "async-task" |
1203 | + version = "4.4.1" |
1204 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1205 | + checksum = "b9441c6b2fe128a7c2bf680a44c34d0df31ce09e5b7e401fcca3faa483dbc921" |
1206 | + |
1207 | + [[package]] |
1208 | + name = "async-trait" |
1209 | + version = "0.1.73" |
1210 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1211 | + checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" |
1212 | + dependencies = [ |
1213 | + "proc-macro2", |
1214 | + "quote", |
1215 | + "syn 2.0.38", |
1216 | + ] |
1217 | + |
1218 | + [[package]] |
1219 | + name = "atomic-waker" |
1220 | + version = "1.1.2" |
1221 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1222 | + checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" |
1223 | + |
1224 | + [[package]] |
1225 | + name = "atty" |
1226 | + version = "0.2.14" |
1227 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1228 | + checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" |
1229 | + dependencies = [ |
1230 | + "hermit-abi 0.1.19", |
1231 | + "libc", |
1232 | + "winapi 0.3.9", |
1233 | + ] |
1234 | + |
1235 | + [[package]] |
1236 | + name = "autocfg" |
1237 | + version = "1.1.0" |
1238 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1239 | + checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" |
1240 | + |
1241 | + [[package]] |
1242 | + name = "axum" |
1243 | + version = "0.6.20" |
1244 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1245 | + checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" |
1246 | + dependencies = [ |
1247 | + "async-trait", |
1248 | + "axum-core", |
1249 | + "bitflags 1.3.2", |
1250 | + "bytes", |
1251 | + "futures-util", |
1252 | + "headers", |
1253 | + "http", |
1254 | + "http-body", |
1255 | + "hyper", |
1256 | + "itoa", |
1257 | + "matchit", |
1258 | + "memchr", |
1259 | + "mime", |
1260 | + "percent-encoding", |
1261 | + "pin-project-lite", |
1262 | + "rustversion", |
1263 | + "serde", |
1264 | + "serde_json", |
1265 | + "serde_path_to_error", |
1266 | + "serde_urlencoded", |
1267 | + "sync_wrapper", |
1268 | + "tokio", |
1269 | + "tower", |
1270 | + "tower-layer", |
1271 | + "tower-service", |
1272 | + ] |
1273 | + |
1274 | + [[package]] |
1275 | + name = "axum-core" |
1276 | + version = "0.3.4" |
1277 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1278 | + checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" |
1279 | + dependencies = [ |
1280 | + "async-trait", |
1281 | + "bytes", |
1282 | + "futures-util", |
1283 | + "http", |
1284 | + "http-body", |
1285 | + "mime", |
1286 | + "rustversion", |
1287 | + "tower-layer", |
1288 | + "tower-service", |
1289 | + ] |
1290 | + |
1291 | + [[package]] |
1292 | + name = "axum-extra" |
1293 | + version = "0.7.7" |
1294 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1295 | + checksum = "a93e433be9382c737320af3924f7d5fc6f89c155cf2bf88949d8f5126fab283f" |
1296 | + dependencies = [ |
1297 | + "axum", |
1298 | + "axum-core", |
1299 | + "axum-macros", |
1300 | + "bytes", |
1301 | + "cookie", |
1302 | + "form_urlencoded", |
1303 | + "futures-util", |
1304 | + "http", |
1305 | + "http-body", |
1306 | + "mime", |
1307 | + "percent-encoding", |
1308 | + "pin-project-lite", |
1309 | + "serde", |
1310 | + "serde_html_form", |
1311 | + "tokio", |
1312 | + "tower", |
1313 | + "tower-layer", |
1314 | + "tower-service", |
1315 | + ] |
1316 | + |
1317 | + [[package]] |
1318 | + name = "axum-login" |
1319 | + version = "0.5.0" |
1320 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1321 | + checksum = "2160b4bfd1db39feb3e689c287519d4b9234a5bcbdf89e975027b04d25c4bc32" |
1322 | + dependencies = [ |
1323 | + "async-trait", |
1324 | + "axum", |
1325 | + "axum-sessions", |
1326 | + "base64 0.13.1", |
1327 | + "dyn-clone", |
1328 | + "eyre", |
1329 | + "futures", |
1330 | + "ring", |
1331 | + "secrecy", |
1332 | + "serde", |
1333 | + "serde_json", |
1334 | + "tokio", |
1335 | + "tower", |
1336 | + "tower-http 0.3.5", |
1337 | + "tracing", |
1338 | + ] |
1339 | + |
1340 | + [[package]] |
1341 | + name = "axum-macros" |
1342 | + version = "0.3.8" |
1343 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1344 | + checksum = "cdca6a10ecad987bda04e95606ef85a5417dcaac1a78455242d72e031e2b6b62" |
1345 | + dependencies = [ |
1346 | + "heck", |
1347 | + "proc-macro2", |
1348 | + "quote", |
1349 | + "syn 2.0.38", |
1350 | + ] |
1351 | + |
1352 | + [[package]] |
1353 | + name = "axum-sessions" |
1354 | + version = "0.5.0" |
1355 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1356 | + checksum = "714cad544cd87d8da821cda715bb9aaa5d4d1adbdb64c549b18138e3cbf93c44" |
1357 | + dependencies = [ |
1358 | + "async-session", |
1359 | + "axum", |
1360 | + "axum-extra", |
1361 | + "futures", |
1362 | + "http-body", |
1363 | + "tokio", |
1364 | + "tower", |
1365 | + "tracing", |
1366 | + ] |
1367 | + |
1368 | + [[package]] |
1369 | + name = "backtrace" |
1370 | + version = "0.3.69" |
1371 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1372 | + checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" |
1373 | + dependencies = [ |
1374 | + "addr2line", |
1375 | + "cc", |
1376 | + "cfg-if 1.0.0", |
1377 | + "libc", |
1378 | + "miniz_oxide", |
1379 | + "object", |
1380 | + "rustc-demangle", |
1381 | + ] |
1382 | + |
1383 | + [[package]] |
1384 | + name = "base64" |
1385 | + version = "0.13.1" |
1386 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1387 | + checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" |
1388 | + |
1389 | + [[package]] |
1390 | + name = "base64" |
1391 | + version = "0.21.4" |
1392 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1393 | + checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" |
1394 | + |
1395 | + [[package]] |
1396 | + name = "bcrypt" |
1397 | + version = "0.14.0" |
1398 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1399 | + checksum = "9df288bec72232f78c1ec5fe4e8f1d108aa0265476e93097593c803c8c02062a" |
1400 | + dependencies = [ |
1401 | + "base64 0.21.4", |
1402 | + "blowfish", |
1403 | + "getrandom", |
1404 | + "subtle", |
1405 | + "zeroize", |
1406 | + ] |
1407 | + |
1408 | + [[package]] |
1409 | + name = "bincode" |
1410 | + version = "1.3.3" |
1411 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1412 | + checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" |
1413 | + dependencies = [ |
1414 | + "serde", |
1415 | + ] |
1416 | + |
1417 | + [[package]] |
1418 | + name = "bit-set" |
1419 | + version = "0.5.3" |
1420 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1421 | + checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" |
1422 | + dependencies = [ |
1423 | + "bit-vec", |
1424 | + ] |
1425 | + |
1426 | + [[package]] |
1427 | + name = "bit-vec" |
1428 | + version = "0.6.3" |
1429 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1430 | + checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" |
1431 | + |
1432 | + [[package]] |
1433 | + name = "bitflags" |
1434 | + version = "1.3.2" |
1435 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1436 | + checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" |
1437 | + |
1438 | + [[package]] |
1439 | + name = "bitflags" |
1440 | + version = "2.4.0" |
1441 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1442 | + checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" |
1443 | + |
1444 | + [[package]] |
1445 | + name = "blake3" |
1446 | + version = "0.3.8" |
1447 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1448 | + checksum = "b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3" |
1449 | + dependencies = [ |
1450 | + "arrayref", |
1451 | + "arrayvec", |
1452 | + "cc", |
1453 | + "cfg-if 0.1.10", |
1454 | + "constant_time_eq", |
1455 | + "crypto-mac 0.8.0", |
1456 | + "digest 0.9.0", |
1457 | + ] |
1458 | + |
1459 | + [[package]] |
1460 | + name = "block-buffer" |
1461 | + version = "0.9.0" |
1462 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1463 | + checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" |
1464 | + dependencies = [ |
1465 | + "generic-array", |
1466 | + ] |
1467 | + |
1468 | + [[package]] |
1469 | + name = "block-buffer" |
1470 | + version = "0.10.4" |
1471 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1472 | + checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" |
1473 | + dependencies = [ |
1474 | + "generic-array", |
1475 | + ] |
1476 | + |
1477 | + [[package]] |
1478 | + name = "blocking" |
1479 | + version = "1.4.1" |
1480 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1481 | + checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a" |
1482 | + dependencies = [ |
1483 | + "async-channel", |
1484 | + "async-lock", |
1485 | + "async-task", |
1486 | + "fastrand 2.0.1", |
1487 | + "futures-io", |
1488 | + "futures-lite", |
1489 | + "piper", |
1490 | + "tracing", |
1491 | + ] |
1492 | + |
1493 | + [[package]] |
1494 | + name = "blowfish" |
1495 | + version = "0.9.1" |
1496 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1497 | + checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7" |
1498 | + dependencies = [ |
1499 | + "byteorder", |
1500 | + "cipher", |
1501 | + ] |
1502 | + |
1503 | + [[package]] |
1504 | + name = "brotli" |
1505 | + version = "3.4.0" |
1506 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1507 | + checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" |
1508 | + dependencies = [ |
1509 | + "alloc-no-stdlib", |
1510 | + "alloc-stdlib", |
1511 | + "brotli-decompressor", |
1512 | + ] |
1513 | + |
1514 | + [[package]] |
1515 | + name = "brotli-decompressor" |
1516 | + version = "2.5.0" |
1517 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1518 | + checksum = "da74e2b81409b1b743f8f0c62cc6254afefb8b8e50bbfe3735550f7aeefa3448" |
1519 | + dependencies = [ |
1520 | + "alloc-no-stdlib", |
1521 | + "alloc-stdlib", |
1522 | + ] |
1523 | + |
1524 | + [[package]] |
1525 | + name = "build-info" |
1526 | + version = "0.0.31" |
1527 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1528 | + checksum = "8b301350c1c448e35b896f32b68c49c8ecd969a71978fbafc4ebd09ec3f4eee2" |
1529 | + dependencies = [ |
1530 | + "build-info-common", |
1531 | + "build-info-proc", |
1532 | + "once_cell", |
1533 | + ] |
1534 | + |
1535 | + [[package]] |
1536 | + name = "build-info-build" |
1537 | + version = "0.0.31" |
1538 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1539 | + checksum = "2b314717755dd6a06fc11ad3f7909ba4c0ae2ab516f5cb0404fe924c71bfc7d0" |
1540 | + dependencies = [ |
1541 | + "anyhow", |
1542 | + "base64 0.21.4", |
1543 | + "bincode", |
1544 | + "build-info-common", |
1545 | + "cargo_metadata", |
1546 | + "chrono", |
1547 | + "git2", |
1548 | + "glob", |
1549 | + "once_cell", |
1550 | + "pretty_assertions", |
1551 | + "rustc_version", |
1552 | + "serde_json", |
1553 | + "xz2", |
1554 | + ] |
1555 | + |
1556 | + [[package]] |
1557 | + name = "build-info-common" |
1558 | + version = "0.0.31" |
1559 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1560 | + checksum = "5e040d36472d40ec9424c36a7b54be589072e605596b6f20b0c56c5230b460cc" |
1561 | + dependencies = [ |
1562 | + "chrono", |
1563 | + "derive_more", |
1564 | + "semver", |
1565 | + "serde", |
1566 | + ] |
1567 | + |
1568 | + [[package]] |
1569 | + name = "build-info-proc" |
1570 | + version = "0.0.31" |
1571 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1572 | + checksum = "ffd5f241ddd417436c48d35da9869480891449ddd1ae3fd483bbcfbae741a422" |
1573 | + dependencies = [ |
1574 | + "anyhow", |
1575 | + "base64 0.21.4", |
1576 | + "bincode", |
1577 | + "build-info-common", |
1578 | + "chrono", |
1579 | + "num-bigint", |
1580 | + "num-traits", |
1581 | + "proc-macro-error", |
1582 | + "proc-macro2", |
1583 | + "quote", |
1584 | + "serde_json", |
1585 | + "syn 2.0.38", |
1586 | + "xz2", |
1587 | + ] |
1588 | + |
1589 | + [[package]] |
1590 | + name = "bumpalo" |
1591 | + version = "3.14.0" |
1592 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1593 | + checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" |
1594 | + |
1595 | + [[package]] |
1596 | + name = "bytecount" |
1597 | + version = "0.6.4" |
1598 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1599 | + checksum = "ad152d03a2c813c80bb94fedbf3a3f02b28f793e39e7c214c8a0bcc196343de7" |
1600 | + |
1601 | + [[package]] |
1602 | + name = "byteorder" |
1603 | + version = "1.5.0" |
1604 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1605 | + checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" |
1606 | + |
1607 | + [[package]] |
1608 | + name = "bytes" |
1609 | + version = "1.5.0" |
1610 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1611 | + checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" |
1612 | + |
1613 | + [[package]] |
1614 | + name = "camino" |
1615 | + version = "1.1.6" |
1616 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1617 | + checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" |
1618 | + dependencies = [ |
1619 | + "serde", |
1620 | + ] |
1621 | + |
1622 | + [[package]] |
1623 | + name = "cargo-platform" |
1624 | + version = "0.1.4" |
1625 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1626 | + checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36" |
1627 | + dependencies = [ |
1628 | + "serde", |
1629 | + ] |
1630 | + |
1631 | + [[package]] |
1632 | + name = "cargo_metadata" |
1633 | + version = "0.15.4" |
1634 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1635 | + checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" |
1636 | + dependencies = [ |
1637 | + "camino", |
1638 | + "cargo-platform", |
1639 | + "semver", |
1640 | + "serde", |
1641 | + "serde_json", |
1642 | + "thiserror", |
1643 | + ] |
1644 | + |
1645 | + [[package]] |
1646 | + name = "cc" |
1647 | + version = "1.0.83" |
1648 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1649 | + checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" |
1650 | + dependencies = [ |
1651 | + "jobserver", |
1652 | + "libc", |
1653 | + ] |
1654 | + |
1655 | + [[package]] |
1656 | + name = "cfg-if" |
1657 | + version = "0.1.10" |
1658 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1659 | + checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" |
1660 | + |
1661 | + [[package]] |
1662 | + name = "cfg-if" |
1663 | + version = "1.0.0" |
1664 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1665 | + checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" |
1666 | + |
1667 | + [[package]] |
1668 | + name = "chrono" |
1669 | + version = "0.4.31" |
1670 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1671 | + checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" |
1672 | + dependencies = [ |
1673 | + "android-tzdata", |
1674 | + "iana-time-zone", |
1675 | + "js-sys", |
1676 | + "num-traits", |
1677 | + "serde", |
1678 | + "wasm-bindgen", |
1679 | + "windows-targets", |
1680 | + ] |
1681 | + |
1682 | + [[package]] |
1683 | + name = "cipher" |
1684 | + version = "0.4.4" |
1685 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1686 | + checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" |
1687 | + dependencies = [ |
1688 | + "crypto-common", |
1689 | + "inout", |
1690 | + ] |
1691 | + |
1692 | + [[package]] |
1693 | + name = "concurrent-queue" |
1694 | + version = "2.3.0" |
1695 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1696 | + checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" |
1697 | + dependencies = [ |
1698 | + "crossbeam-utils", |
1699 | + ] |
1700 | + |
1701 | + [[package]] |
1702 | + name = "config" |
1703 | + version = "0.13.3" |
1704 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1705 | + checksum = "d379af7f68bfc21714c6c7dea883544201741d2ce8274bb12fa54f89507f52a7" |
1706 | + dependencies = [ |
1707 | + "async-trait", |
1708 | + "json5", |
1709 | + "lazy_static", |
1710 | + "nom", |
1711 | + "pathdiff", |
1712 | + "ron", |
1713 | + "rust-ini", |
1714 | + "serde", |
1715 | + "serde_json", |
1716 | + "toml", |
1717 | + "yaml-rust", |
1718 | + ] |
1719 | + |
1720 | + [[package]] |
1721 | + name = "constant_time_eq" |
1722 | + version = "0.1.5" |
1723 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1724 | + checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" |
1725 | + |
1726 | + [[package]] |
1727 | + name = "convert_case" |
1728 | + version = "0.4.0" |
1729 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1730 | + checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" |
1731 | + |
1732 | + [[package]] |
1733 | + name = "cookie" |
1734 | + version = "0.17.0" |
1735 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1736 | + checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" |
1737 | + dependencies = [ |
1738 | + "base64 0.21.4", |
1739 | + "hmac 0.12.1", |
1740 | + "percent-encoding", |
1741 | + "rand", |
1742 | + "sha2 0.10.8", |
1743 | + "subtle", |
1744 | + "time", |
1745 | + "version_check", |
1746 | + ] |
1747 | + |
1748 | + [[package]] |
1749 | + name = "core-foundation" |
1750 | + version = "0.9.3" |
1751 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1752 | + checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" |
1753 | + dependencies = [ |
1754 | + "core-foundation-sys", |
1755 | + "libc", |
1756 | + ] |
1757 | + |
1758 | + [[package]] |
1759 | + name = "core-foundation-sys" |
1760 | + version = "0.8.4" |
1761 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1762 | + checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" |
1763 | + |
1764 | + [[package]] |
1765 | + name = "cpufeatures" |
1766 | + version = "0.2.9" |
1767 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1768 | + checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" |
1769 | + dependencies = [ |
1770 | + "libc", |
1771 | + ] |
1772 | + |
1773 | + [[package]] |
1774 | + name = "ayllu-mail" |
1775 | + version = "0.1.0" |
1776 | + dependencies = [ |
1777 | + "mailpot-http", |
1778 | + ] |
1779 | + |
1780 | + [[package]] |
1781 | + name = "crossbeam-utils" |
1782 | + version = "0.8.16" |
1783 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1784 | + checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" |
1785 | + dependencies = [ |
1786 | + "cfg-if 1.0.0", |
1787 | + ] |
1788 | + |
1789 | + [[package]] |
1790 | + name = "crypto-common" |
1791 | + version = "0.1.6" |
1792 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1793 | + checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" |
1794 | + dependencies = [ |
1795 | + "generic-array", |
1796 | + "typenum", |
1797 | + ] |
1798 | + |
1799 | + [[package]] |
1800 | + name = "crypto-mac" |
1801 | + version = "0.8.0" |
1802 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1803 | + checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" |
1804 | + dependencies = [ |
1805 | + "generic-array", |
1806 | + "subtle", |
1807 | + ] |
1808 | + |
1809 | + [[package]] |
1810 | + name = "crypto-mac" |
1811 | + version = "0.11.0" |
1812 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1813 | + checksum = "25fab6889090c8133f3deb8f73ba3c65a7f456f66436fc012a1b1e272b1e103e" |
1814 | + dependencies = [ |
1815 | + "generic-array", |
1816 | + "subtle", |
1817 | + ] |
1818 | + |
1819 | + [[package]] |
1820 | + name = "data-encoding" |
1821 | + version = "2.4.0" |
1822 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1823 | + checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" |
1824 | + |
1825 | + [[package]] |
1826 | + name = "deranged" |
1827 | + version = "0.3.8" |
1828 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1829 | + checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946" |
1830 | + |
1831 | + [[package]] |
1832 | + name = "derive_more" |
1833 | + version = "0.99.17" |
1834 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1835 | + checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" |
1836 | + dependencies = [ |
1837 | + "convert_case", |
1838 | + "proc-macro2", |
1839 | + "quote", |
1840 | + "rustc_version", |
1841 | + "syn 1.0.109", |
1842 | + ] |
1843 | + |
1844 | + [[package]] |
1845 | + name = "diff" |
1846 | + version = "0.1.13" |
1847 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1848 | + checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" |
1849 | + |
1850 | + [[package]] |
1851 | + name = "digest" |
1852 | + version = "0.9.0" |
1853 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1854 | + checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" |
1855 | + dependencies = [ |
1856 | + "generic-array", |
1857 | + ] |
1858 | + |
1859 | + [[package]] |
1860 | + name = "digest" |
1861 | + version = "0.10.7" |
1862 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1863 | + checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" |
1864 | + dependencies = [ |
1865 | + "block-buffer 0.10.4", |
1866 | + "crypto-common", |
1867 | + "subtle", |
1868 | + ] |
1869 | + |
1870 | + [[package]] |
1871 | + name = "dlv-list" |
1872 | + version = "0.3.0" |
1873 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1874 | + checksum = "0688c2a7f92e427f44895cd63841bff7b29f8d7a1648b9e7e07a4a365b2e1257" |
1875 | + |
1876 | + [[package]] |
1877 | + name = "dyn-clone" |
1878 | + version = "1.0.14" |
1879 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1880 | + checksum = "23d2f3407d9a573d666de4b5bdf10569d73ca9478087346697dcbae6244bfbcd" |
1881 | + |
1882 | + [[package]] |
1883 | + name = "encoding" |
1884 | + version = "0.2.33" |
1885 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1886 | + checksum = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" |
1887 | + dependencies = [ |
1888 | + "encoding-index-japanese", |
1889 | + "encoding-index-korean", |
1890 | + "encoding-index-simpchinese", |
1891 | + "encoding-index-singlebyte", |
1892 | + "encoding-index-tradchinese", |
1893 | + ] |
1894 | + |
1895 | + [[package]] |
1896 | + name = "encoding-index-japanese" |
1897 | + version = "1.20141219.5" |
1898 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1899 | + checksum = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" |
1900 | + dependencies = [ |
1901 | + "encoding_index_tests", |
1902 | + ] |
1903 | + |
1904 | + [[package]] |
1905 | + name = "encoding-index-korean" |
1906 | + version = "1.20141219.5" |
1907 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1908 | + checksum = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81" |
1909 | + dependencies = [ |
1910 | + "encoding_index_tests", |
1911 | + ] |
1912 | + |
1913 | + [[package]] |
1914 | + name = "encoding-index-simpchinese" |
1915 | + version = "1.20141219.5" |
1916 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1917 | + checksum = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7" |
1918 | + dependencies = [ |
1919 | + "encoding_index_tests", |
1920 | + ] |
1921 | + |
1922 | + [[package]] |
1923 | + name = "encoding-index-singlebyte" |
1924 | + version = "1.20141219.5" |
1925 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1926 | + checksum = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" |
1927 | + dependencies = [ |
1928 | + "encoding_index_tests", |
1929 | + ] |
1930 | + |
1931 | + [[package]] |
1932 | + name = "encoding-index-tradchinese" |
1933 | + version = "1.20141219.5" |
1934 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1935 | + checksum = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" |
1936 | + dependencies = [ |
1937 | + "encoding_index_tests", |
1938 | + ] |
1939 | + |
1940 | + [[package]] |
1941 | + name = "encoding_index_tests" |
1942 | + version = "0.1.4" |
1943 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1944 | + checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" |
1945 | + |
1946 | + [[package]] |
1947 | + name = "equivalent" |
1948 | + version = "1.0.1" |
1949 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1950 | + checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" |
1951 | + |
1952 | + [[package]] |
1953 | + name = "errno" |
1954 | + version = "0.3.5" |
1955 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1956 | + checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" |
1957 | + dependencies = [ |
1958 | + "libc", |
1959 | + "windows-sys", |
1960 | + ] |
1961 | + |
1962 | + [[package]] |
1963 | + name = "event-listener" |
1964 | + version = "2.5.3" |
1965 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1966 | + checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" |
1967 | + |
1968 | + [[package]] |
1969 | + name = "event-listener" |
1970 | + version = "3.0.0" |
1971 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1972 | + checksum = "29e56284f00d94c1bc7fd3c77027b4623c88c1f53d8d2394c6199f2921dea325" |
1973 | + dependencies = [ |
1974 | + "concurrent-queue", |
1975 | + "parking", |
1976 | + "pin-project-lite", |
1977 | + ] |
1978 | + |
1979 | + [[package]] |
1980 | + name = "eyre" |
1981 | + version = "0.6.8" |
1982 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1983 | + checksum = "4c2b6b5a29c02cdc822728b7d7b8ae1bab3e3b05d44522770ddd49722eeac7eb" |
1984 | + dependencies = [ |
1985 | + "indenter", |
1986 | + "once_cell", |
1987 | + ] |
1988 | + |
1989 | + [[package]] |
1990 | + name = "fallible-iterator" |
1991 | + version = "0.2.0" |
1992 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1993 | + checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" |
1994 | + |
1995 | + [[package]] |
1996 | + name = "fallible-streaming-iterator" |
1997 | + version = "0.1.9" |
1998 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
1999 | + checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" |
2000 | + |
2001 | + [[package]] |
2002 | + name = "fancy-regex" |
2003 | + version = "0.11.0" |
2004 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2005 | + checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" |
2006 | + dependencies = [ |
2007 | + "bit-set", |
2008 | + "regex", |
2009 | + ] |
2010 | + |
2011 | + [[package]] |
2012 | + name = "fastrand" |
2013 | + version = "1.9.0" |
2014 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2015 | + checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" |
2016 | + dependencies = [ |
2017 | + "instant", |
2018 | + ] |
2019 | + |
2020 | + [[package]] |
2021 | + name = "fastrand" |
2022 | + version = "2.0.1" |
2023 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2024 | + checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" |
2025 | + |
2026 | + [[package]] |
2027 | + name = "filetime" |
2028 | + version = "0.2.22" |
2029 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2030 | + checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" |
2031 | + dependencies = [ |
2032 | + "cfg-if 1.0.0", |
2033 | + "libc", |
2034 | + "redox_syscall", |
2035 | + "windows-sys", |
2036 | + ] |
2037 | + |
2038 | + [[package]] |
2039 | + name = "fnv" |
2040 | + version = "1.0.7" |
2041 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2042 | + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" |
2043 | + |
2044 | + [[package]] |
2045 | + name = "foreign-types" |
2046 | + version = "0.3.2" |
2047 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2048 | + checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" |
2049 | + dependencies = [ |
2050 | + "foreign-types-shared", |
2051 | + ] |
2052 | + |
2053 | + [[package]] |
2054 | + name = "foreign-types-shared" |
2055 | + version = "0.1.1" |
2056 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2057 | + checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" |
2058 | + |
2059 | + [[package]] |
2060 | + name = "form_urlencoded" |
2061 | + version = "1.2.0" |
2062 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2063 | + checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" |
2064 | + dependencies = [ |
2065 | + "percent-encoding", |
2066 | + ] |
2067 | + |
2068 | + [[package]] |
2069 | + name = "fraction" |
2070 | + version = "0.13.1" |
2071 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2072 | + checksum = "3027ae1df8d41b4bed2241c8fdad4acc1e7af60c8e17743534b545e77182d678" |
2073 | + dependencies = [ |
2074 | + "lazy_static", |
2075 | + "num", |
2076 | + ] |
2077 | + |
2078 | + [[package]] |
2079 | + name = "fsevent" |
2080 | + version = "0.4.0" |
2081 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2082 | + checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6" |
2083 | + dependencies = [ |
2084 | + "bitflags 1.3.2", |
2085 | + "fsevent-sys", |
2086 | + ] |
2087 | + |
2088 | + [[package]] |
2089 | + name = "fsevent-sys" |
2090 | + version = "2.0.1" |
2091 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2092 | + checksum = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0" |
2093 | + dependencies = [ |
2094 | + "libc", |
2095 | + ] |
2096 | + |
2097 | + [[package]] |
2098 | + name = "fuchsia-zircon" |
2099 | + version = "0.3.3" |
2100 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2101 | + checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" |
2102 | + dependencies = [ |
2103 | + "bitflags 1.3.2", |
2104 | + "fuchsia-zircon-sys", |
2105 | + ] |
2106 | + |
2107 | + [[package]] |
2108 | + name = "fuchsia-zircon-sys" |
2109 | + version = "0.3.3" |
2110 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2111 | + checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" |
2112 | + |
2113 | + [[package]] |
2114 | + name = "futures" |
2115 | + version = "0.3.28" |
2116 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2117 | + checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" |
2118 | + dependencies = [ |
2119 | + "futures-channel", |
2120 | + "futures-core", |
2121 | + "futures-executor", |
2122 | + "futures-io", |
2123 | + "futures-sink", |
2124 | + "futures-task", |
2125 | + "futures-util", |
2126 | + ] |
2127 | + |
2128 | + [[package]] |
2129 | + name = "futures-channel" |
2130 | + version = "0.3.28" |
2131 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2132 | + checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" |
2133 | + dependencies = [ |
2134 | + "futures-core", |
2135 | + "futures-sink", |
2136 | + ] |
2137 | + |
2138 | + [[package]] |
2139 | + name = "futures-core" |
2140 | + version = "0.3.28" |
2141 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2142 | + checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" |
2143 | + |
2144 | + [[package]] |
2145 | + name = "futures-executor" |
2146 | + version = "0.3.28" |
2147 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2148 | + checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" |
2149 | + dependencies = [ |
2150 | + "futures-core", |
2151 | + "futures-task", |
2152 | + "futures-util", |
2153 | + ] |
2154 | + |
2155 | + [[package]] |
2156 | + name = "futures-io" |
2157 | + version = "0.3.28" |
2158 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2159 | + checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" |
2160 | + |
2161 | + [[package]] |
2162 | + name = "futures-lite" |
2163 | + version = "1.13.0" |
2164 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2165 | + checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" |
2166 | + dependencies = [ |
2167 | + "fastrand 1.9.0", |
2168 | + "futures-core", |
2169 | + "futures-io", |
2170 | + "memchr", |
2171 | + "parking", |
2172 | + "pin-project-lite", |
2173 | + "waker-fn", |
2174 | + ] |
2175 | + |
2176 | + [[package]] |
2177 | + name = "futures-macro" |
2178 | + version = "0.3.28" |
2179 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2180 | + checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" |
2181 | + dependencies = [ |
2182 | + "proc-macro2", |
2183 | + "quote", |
2184 | + "syn 2.0.38", |
2185 | + ] |
2186 | + |
2187 | + [[package]] |
2188 | + name = "futures-sink" |
2189 | + version = "0.3.28" |
2190 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2191 | + checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" |
2192 | + |
2193 | + [[package]] |
2194 | + name = "futures-task" |
2195 | + version = "0.3.28" |
2196 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2197 | + checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" |
2198 | + |
2199 | + [[package]] |
2200 | + name = "futures-util" |
2201 | + version = "0.3.28" |
2202 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2203 | + checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" |
2204 | + dependencies = [ |
2205 | + "futures-channel", |
2206 | + "futures-core", |
2207 | + "futures-io", |
2208 | + "futures-macro", |
2209 | + "futures-sink", |
2210 | + "futures-task", |
2211 | + "memchr", |
2212 | + "pin-project-lite", |
2213 | + "pin-utils", |
2214 | + "slab", |
2215 | + ] |
2216 | + |
2217 | + [[package]] |
2218 | + name = "generic-array" |
2219 | + version = "0.14.7" |
2220 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2221 | + checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" |
2222 | + dependencies = [ |
2223 | + "typenum", |
2224 | + "version_check", |
2225 | + ] |
2226 | + |
2227 | + [[package]] |
2228 | + name = "getrandom" |
2229 | + version = "0.2.10" |
2230 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2231 | + checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" |
2232 | + dependencies = [ |
2233 | + "cfg-if 1.0.0", |
2234 | + "js-sys", |
2235 | + "libc", |
2236 | + "wasi", |
2237 | + "wasm-bindgen", |
2238 | + ] |
2239 | + |
2240 | + [[package]] |
2241 | + name = "gimli" |
2242 | + version = "0.28.0" |
2243 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2244 | + checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" |
2245 | + |
2246 | + [[package]] |
2247 | + name = "git2" |
2248 | + version = "0.17.2" |
2249 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2250 | + checksum = "7b989d6a7ca95a362cf2cfc5ad688b3a467be1f87e480b8dad07fee8c79b0044" |
2251 | + dependencies = [ |
2252 | + "bitflags 1.3.2", |
2253 | + "libc", |
2254 | + "libgit2-sys", |
2255 | + "log", |
2256 | + "url", |
2257 | + ] |
2258 | + |
2259 | + [[package]] |
2260 | + name = "glob" |
2261 | + version = "0.3.1" |
2262 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2263 | + checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" |
2264 | + |
2265 | + [[package]] |
2266 | + name = "hashbrown" |
2267 | + version = "0.12.3" |
2268 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2269 | + checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" |
2270 | + dependencies = [ |
2271 | + "ahash 0.7.6", |
2272 | + ] |
2273 | + |
2274 | + [[package]] |
2275 | + name = "hashbrown" |
2276 | + version = "0.14.1" |
2277 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2278 | + checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" |
2279 | + dependencies = [ |
2280 | + "ahash 0.8.3", |
2281 | + "allocator-api2", |
2282 | + ] |
2283 | + |
2284 | + [[package]] |
2285 | + name = "hashlink" |
2286 | + version = "0.8.4" |
2287 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2288 | + checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" |
2289 | + dependencies = [ |
2290 | + "hashbrown 0.14.1", |
2291 | + ] |
2292 | + |
2293 | + [[package]] |
2294 | + name = "headers" |
2295 | + version = "0.3.9" |
2296 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2297 | + checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270" |
2298 | + dependencies = [ |
2299 | + "base64 0.21.4", |
2300 | + "bytes", |
2301 | + "headers-core", |
2302 | + "http", |
2303 | + "httpdate", |
2304 | + "mime", |
2305 | + "sha1", |
2306 | + ] |
2307 | + |
2308 | + [[package]] |
2309 | + name = "headers-core" |
2310 | + version = "0.2.0" |
2311 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2312 | + checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429" |
2313 | + dependencies = [ |
2314 | + "http", |
2315 | + ] |
2316 | + |
2317 | + [[package]] |
2318 | + name = "heck" |
2319 | + version = "0.4.1" |
2320 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2321 | + checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" |
2322 | + |
2323 | + [[package]] |
2324 | + name = "hermit-abi" |
2325 | + version = "0.1.19" |
2326 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2327 | + checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" |
2328 | + dependencies = [ |
2329 | + "libc", |
2330 | + ] |
2331 | + |
2332 | + [[package]] |
2333 | + name = "hermit-abi" |
2334 | + version = "0.3.3" |
2335 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2336 | + checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" |
2337 | + |
2338 | + [[package]] |
2339 | + name = "hmac" |
2340 | + version = "0.11.0" |
2341 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2342 | + checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" |
2343 | + dependencies = [ |
2344 | + "crypto-mac 0.11.0", |
2345 | + "digest 0.9.0", |
2346 | + ] |
2347 | + |
2348 | + [[package]] |
2349 | + name = "hmac" |
2350 | + version = "0.12.1" |
2351 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2352 | + checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" |
2353 | + dependencies = [ |
2354 | + "digest 0.10.7", |
2355 | + ] |
2356 | + |
2357 | + [[package]] |
2358 | + name = "http" |
2359 | + version = "0.2.9" |
2360 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2361 | + checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" |
2362 | + dependencies = [ |
2363 | + "bytes", |
2364 | + "fnv", |
2365 | + "itoa", |
2366 | + ] |
2367 | + |
2368 | + [[package]] |
2369 | + name = "http-body" |
2370 | + version = "0.4.5" |
2371 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2372 | + checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" |
2373 | + dependencies = [ |
2374 | + "bytes", |
2375 | + "http", |
2376 | + "pin-project-lite", |
2377 | + ] |
2378 | + |
2379 | + [[package]] |
2380 | + name = "http-range-header" |
2381 | + version = "0.3.1" |
2382 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2383 | + checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" |
2384 | + |
2385 | + [[package]] |
2386 | + name = "httparse" |
2387 | + version = "1.8.0" |
2388 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2389 | + checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" |
2390 | + |
2391 | + [[package]] |
2392 | + name = "httpdate" |
2393 | + version = "1.0.3" |
2394 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2395 | + checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" |
2396 | + |
2397 | + [[package]] |
2398 | + name = "hyper" |
2399 | + version = "0.14.27" |
2400 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2401 | + checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" |
2402 | + dependencies = [ |
2403 | + "bytes", |
2404 | + "futures-channel", |
2405 | + "futures-core", |
2406 | + "futures-util", |
2407 | + "http", |
2408 | + "http-body", |
2409 | + "httparse", |
2410 | + "httpdate", |
2411 | + "itoa", |
2412 | + "pin-project-lite", |
2413 | + "socket2 0.4.9", |
2414 | + "tokio", |
2415 | + "tower-service", |
2416 | + "tracing", |
2417 | + "want", |
2418 | + ] |
2419 | + |
2420 | + [[package]] |
2421 | + name = "iana-time-zone" |
2422 | + version = "0.1.57" |
2423 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2424 | + checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" |
2425 | + dependencies = [ |
2426 | + "android_system_properties", |
2427 | + "core-foundation-sys", |
2428 | + "iana-time-zone-haiku", |
2429 | + "js-sys", |
2430 | + "wasm-bindgen", |
2431 | + "windows", |
2432 | + ] |
2433 | + |
2434 | + [[package]] |
2435 | + name = "iana-time-zone-haiku" |
2436 | + version = "0.1.2" |
2437 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2438 | + checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" |
2439 | + dependencies = [ |
2440 | + "cc", |
2441 | + ] |
2442 | + |
2443 | + [[package]] |
2444 | + name = "idna" |
2445 | + version = "0.4.0" |
2446 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2447 | + checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" |
2448 | + dependencies = [ |
2449 | + "unicode-bidi", |
2450 | + "unicode-normalization", |
2451 | + ] |
2452 | + |
2453 | + [[package]] |
2454 | + name = "indenter" |
2455 | + version = "0.3.3" |
2456 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2457 | + checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" |
2458 | + |
2459 | + [[package]] |
2460 | + name = "indexmap" |
2461 | + version = "1.9.3" |
2462 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2463 | + checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" |
2464 | + dependencies = [ |
2465 | + "autocfg", |
2466 | + "hashbrown 0.12.3", |
2467 | + "serde", |
2468 | + ] |
2469 | + |
2470 | + [[package]] |
2471 | + name = "indexmap" |
2472 | + version = "2.0.2" |
2473 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2474 | + checksum = "8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897" |
2475 | + dependencies = [ |
2476 | + "equivalent", |
2477 | + "hashbrown 0.14.1", |
2478 | + ] |
2479 | + |
2480 | + [[package]] |
2481 | + name = "inotify" |
2482 | + version = "0.7.1" |
2483 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2484 | + checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f" |
2485 | + dependencies = [ |
2486 | + "bitflags 1.3.2", |
2487 | + "inotify-sys", |
2488 | + "libc", |
2489 | + ] |
2490 | + |
2491 | + [[package]] |
2492 | + name = "inotify-sys" |
2493 | + version = "0.1.5" |
2494 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2495 | + checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" |
2496 | + dependencies = [ |
2497 | + "libc", |
2498 | + ] |
2499 | + |
2500 | + [[package]] |
2501 | + name = "inout" |
2502 | + version = "0.1.3" |
2503 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2504 | + checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" |
2505 | + dependencies = [ |
2506 | + "generic-array", |
2507 | + ] |
2508 | + |
2509 | + [[package]] |
2510 | + name = "instant" |
2511 | + version = "0.1.12" |
2512 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2513 | + checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" |
2514 | + dependencies = [ |
2515 | + "cfg-if 1.0.0", |
2516 | + ] |
2517 | + |
2518 | + [[package]] |
2519 | + name = "io-lifetimes" |
2520 | + version = "1.0.11" |
2521 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2522 | + checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" |
2523 | + dependencies = [ |
2524 | + "hermit-abi 0.3.3", |
2525 | + "libc", |
2526 | + "windows-sys", |
2527 | + ] |
2528 | + |
2529 | + [[package]] |
2530 | + name = "iovec" |
2531 | + version = "0.1.4" |
2532 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2533 | + checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" |
2534 | + dependencies = [ |
2535 | + "libc", |
2536 | + ] |
2537 | + |
2538 | + [[package]] |
2539 | + name = "iso8601" |
2540 | + version = "0.6.1" |
2541 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2542 | + checksum = "924e5d73ea28f59011fec52a0d12185d496a9b075d360657aed2a5707f701153" |
2543 | + dependencies = [ |
2544 | + "nom", |
2545 | + ] |
2546 | + |
2547 | + [[package]] |
2548 | + name = "itoa" |
2549 | + version = "1.0.9" |
2550 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2551 | + checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" |
2552 | + |
2553 | + [[package]] |
2554 | + name = "jobserver" |
2555 | + version = "0.1.26" |
2556 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2557 | + checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" |
2558 | + dependencies = [ |
2559 | + "libc", |
2560 | + ] |
2561 | + |
2562 | + [[package]] |
2563 | + name = "js-sys" |
2564 | + version = "0.3.64" |
2565 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2566 | + checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" |
2567 | + dependencies = [ |
2568 | + "wasm-bindgen", |
2569 | + ] |
2570 | + |
2571 | + [[package]] |
2572 | + name = "json5" |
2573 | + version = "0.4.1" |
2574 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2575 | + checksum = "96b0db21af676c1ce64250b5f40f3ce2cf27e4e47cb91ed91eb6fe9350b430c1" |
2576 | + dependencies = [ |
2577 | + "pest", |
2578 | + "pest_derive", |
2579 | + "serde", |
2580 | + ] |
2581 | + |
2582 | + [[package]] |
2583 | + name = "jsonschema" |
2584 | + version = "0.17.1" |
2585 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2586 | + checksum = "2a071f4f7efc9a9118dfb627a0a94ef247986e1ab8606a4c806ae2b3aa3b6978" |
2587 | + dependencies = [ |
2588 | + "ahash 0.8.3", |
2589 | + "anyhow", |
2590 | + "base64 0.21.4", |
2591 | + "bytecount", |
2592 | + "fancy-regex", |
2593 | + "fraction", |
2594 | + "getrandom", |
2595 | + "iso8601", |
2596 | + "itoa", |
2597 | + "memchr", |
2598 | + "num-cmp", |
2599 | + "once_cell", |
2600 | + "parking_lot", |
2601 | + "percent-encoding", |
2602 | + "regex", |
2603 | + "serde", |
2604 | + "serde_json", |
2605 | + "time", |
2606 | + "url", |
2607 | + "uuid", |
2608 | + ] |
2609 | + |
2610 | + [[package]] |
2611 | + name = "kernel32-sys" |
2612 | + version = "0.2.2" |
2613 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2614 | + checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" |
2615 | + dependencies = [ |
2616 | + "winapi 0.2.8", |
2617 | + "winapi-build", |
2618 | + ] |
2619 | + |
2620 | + [[package]] |
2621 | + name = "lazy_static" |
2622 | + version = "1.4.0" |
2623 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2624 | + checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" |
2625 | + |
2626 | + [[package]] |
2627 | + name = "lazycell" |
2628 | + version = "1.3.0" |
2629 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2630 | + checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" |
2631 | + |
2632 | + [[package]] |
2633 | + name = "libc" |
2634 | + version = "0.2.149" |
2635 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2636 | + checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" |
2637 | + |
2638 | + [[package]] |
2639 | + name = "libgit2-sys" |
2640 | + version = "0.15.2+1.6.4" |
2641 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2642 | + checksum = "a80df2e11fb4a61f4ba2ab42dbe7f74468da143f1a75c74e11dee7c813f694fa" |
2643 | + dependencies = [ |
2644 | + "cc", |
2645 | + "libc", |
2646 | + "libz-sys", |
2647 | + "pkg-config", |
2648 | + ] |
2649 | + |
2650 | + [[package]] |
2651 | + name = "libloading" |
2652 | + version = "0.7.4" |
2653 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2654 | + checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" |
2655 | + dependencies = [ |
2656 | + "cfg-if 1.0.0", |
2657 | + "winapi 0.3.9", |
2658 | + ] |
2659 | + |
2660 | + [[package]] |
2661 | + name = "libsqlite3-sys" |
2662 | + version = "0.25.2" |
2663 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2664 | + checksum = "29f835d03d717946d28b1d1ed632eb6f0e24a299388ee623d0c23118d3e8a7fa" |
2665 | + dependencies = [ |
2666 | + "cc", |
2667 | + "pkg-config", |
2668 | + "vcpkg", |
2669 | + ] |
2670 | + |
2671 | + [[package]] |
2672 | + name = "libz-sys" |
2673 | + version = "1.1.12" |
2674 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2675 | + checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b" |
2676 | + dependencies = [ |
2677 | + "cc", |
2678 | + "libc", |
2679 | + "pkg-config", |
2680 | + "vcpkg", |
2681 | + ] |
2682 | + |
2683 | + [[package]] |
2684 | + name = "linked-hash-map" |
2685 | + version = "0.5.6" |
2686 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2687 | + checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" |
2688 | + |
2689 | + [[package]] |
2690 | + name = "linux-raw-sys" |
2691 | + version = "0.3.8" |
2692 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2693 | + checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" |
2694 | + |
2695 | + [[package]] |
2696 | + name = "linux-raw-sys" |
2697 | + version = "0.4.10" |
2698 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2699 | + checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" |
2700 | + |
2701 | + [[package]] |
2702 | + name = "lock_api" |
2703 | + version = "0.4.10" |
2704 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2705 | + checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" |
2706 | + dependencies = [ |
2707 | + "autocfg", |
2708 | + "scopeguard", |
2709 | + ] |
2710 | + |
2711 | + [[package]] |
2712 | + name = "log" |
2713 | + version = "0.4.20" |
2714 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2715 | + checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" |
2716 | + |
2717 | + [[package]] |
2718 | + name = "lzma-sys" |
2719 | + version = "0.1.20" |
2720 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2721 | + checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" |
2722 | + dependencies = [ |
2723 | + "cc", |
2724 | + "libc", |
2725 | + "pkg-config", |
2726 | + ] |
2727 | + |
2728 | + [[package]] |
2729 | + name = "mailpot" |
2730 | + version = "0.1.1" |
2731 | + dependencies = [ |
2732 | + "anyhow", |
2733 | + "chrono", |
2734 | + "jsonschema", |
2735 | + "log", |
2736 | + "melib", |
2737 | + "minijinja", |
2738 | + "percent-encoding", |
2739 | + "rusqlite", |
2740 | + "serde", |
2741 | + "serde_json", |
2742 | + "thiserror", |
2743 | + "toml", |
2744 | + "xdg", |
2745 | + ] |
2746 | + |
2747 | + [[package]] |
2748 | + name = "mailpot-http" |
2749 | + version = "0.1.1" |
2750 | + dependencies = [ |
2751 | + "async-trait", |
2752 | + "axum", |
2753 | + "axum-extra", |
2754 | + "bcrypt", |
2755 | + "config", |
2756 | + "http", |
2757 | + "lazy_static", |
2758 | + "log", |
2759 | + "mailpot", |
2760 | + "mailpot-web", |
2761 | + "serde", |
2762 | + "serde_json", |
2763 | + "stderrlog", |
2764 | + "thiserror", |
2765 | + "tokio", |
2766 | + "tower-http 0.4.4", |
2767 | + ] |
2768 | + |
2769 | + [[package]] |
2770 | + name = "mailpot-web" |
2771 | + version = "0.1.1" |
2772 | + dependencies = [ |
2773 | + "axum", |
2774 | + "axum-extra", |
2775 | + "axum-login", |
2776 | + "axum-sessions", |
2777 | + "build-info", |
2778 | + "build-info-build", |
2779 | + "cfg-if 1.0.0", |
2780 | + "chrono", |
2781 | + "convert_case", |
2782 | + "dyn-clone", |
2783 | + "eyre", |
2784 | + "http", |
2785 | + "indexmap 1.9.3", |
2786 | + "lazy_static", |
2787 | + "mailpot", |
2788 | + "minijinja", |
2789 | + "percent-encoding", |
2790 | + "rand", |
2791 | + "serde", |
2792 | + "serde_json", |
2793 | + "stderrlog", |
2794 | + "tempfile", |
2795 | + "tokio", |
2796 | + "tower-http 0.3.5", |
2797 | + "tower-service", |
2798 | + "zstd", |
2799 | + ] |
2800 | + |
2801 | + [[package]] |
2802 | + name = "matchit" |
2803 | + version = "0.7.3" |
2804 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2805 | + checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" |
2806 | + |
2807 | + [[package]] |
2808 | + name = "melib" |
2809 | + version = "0.7.2" |
2810 | + source = "git+https://github.com/meli/meli?rev=2447a2c#2447a2cbfeaa8d6f7ec11a2a8a6f3be1ff2fea58" |
2811 | + dependencies = [ |
2812 | + "async-stream", |
2813 | + "base64 0.13.1", |
2814 | + "bincode", |
2815 | + "bitflags 1.3.2", |
2816 | + "data-encoding", |
2817 | + "encoding", |
2818 | + "futures", |
2819 | + "indexmap 1.9.3", |
2820 | + "libc", |
2821 | + "libloading", |
2822 | + "native-tls", |
2823 | + "nix", |
2824 | + "nom", |
2825 | + "notify", |
2826 | + "serde", |
2827 | + "serde_derive", |
2828 | + "smallvec", |
2829 | + "smol", |
2830 | + "unicode-segmentation", |
2831 | + "uuid", |
2832 | + "xdg", |
2833 | + "xdg-utils", |
2834 | + ] |
2835 | + |
2836 | + [[package]] |
2837 | + name = "memchr" |
2838 | + version = "2.6.4" |
2839 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2840 | + checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" |
2841 | + |
2842 | + [[package]] |
2843 | + name = "memo-map" |
2844 | + version = "0.3.2" |
2845 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2846 | + checksum = "374c335b2df19e62d4cb323103473cbc6510980253119180de862d89184f6a83" |
2847 | + |
2848 | + [[package]] |
2849 | + name = "memoffset" |
2850 | + version = "0.6.5" |
2851 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2852 | + checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" |
2853 | + dependencies = [ |
2854 | + "autocfg", |
2855 | + ] |
2856 | + |
2857 | + [[package]] |
2858 | + name = "mime" |
2859 | + version = "0.3.17" |
2860 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2861 | + checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" |
2862 | + |
2863 | + [[package]] |
2864 | + name = "minijinja" |
2865 | + version = "0.31.1" |
2866 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2867 | + checksum = "0b1dbc390e4447b2500c4071d7bc2a808cf07e925bae6b92db8a3c3eae773c58" |
2868 | + dependencies = [ |
2869 | + "memo-map", |
2870 | + "self_cell", |
2871 | + "serde", |
2872 | + ] |
2873 | + |
2874 | + [[package]] |
2875 | + name = "minimal-lexical" |
2876 | + version = "0.2.1" |
2877 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2878 | + checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" |
2879 | + |
2880 | + [[package]] |
2881 | + name = "miniz_oxide" |
2882 | + version = "0.7.1" |
2883 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2884 | + checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" |
2885 | + dependencies = [ |
2886 | + "adler", |
2887 | + ] |
2888 | + |
2889 | + [[package]] |
2890 | + name = "mio" |
2891 | + version = "0.6.23" |
2892 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2893 | + checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4" |
2894 | + dependencies = [ |
2895 | + "cfg-if 0.1.10", |
2896 | + "fuchsia-zircon", |
2897 | + "fuchsia-zircon-sys", |
2898 | + "iovec", |
2899 | + "kernel32-sys", |
2900 | + "libc", |
2901 | + "log", |
2902 | + "miow", |
2903 | + "net2", |
2904 | + "slab", |
2905 | + "winapi 0.2.8", |
2906 | + ] |
2907 | + |
2908 | + [[package]] |
2909 | + name = "mio" |
2910 | + version = "0.8.8" |
2911 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2912 | + checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" |
2913 | + dependencies = [ |
2914 | + "libc", |
2915 | + "wasi", |
2916 | + "windows-sys", |
2917 | + ] |
2918 | + |
2919 | + [[package]] |
2920 | + name = "mio-extras" |
2921 | + version = "2.0.6" |
2922 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2923 | + checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" |
2924 | + dependencies = [ |
2925 | + "lazycell", |
2926 | + "log", |
2927 | + "mio 0.6.23", |
2928 | + "slab", |
2929 | + ] |
2930 | + |
2931 | + [[package]] |
2932 | + name = "miow" |
2933 | + version = "0.2.2" |
2934 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2935 | + checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d" |
2936 | + dependencies = [ |
2937 | + "kernel32-sys", |
2938 | + "net2", |
2939 | + "winapi 0.2.8", |
2940 | + "ws2_32-sys", |
2941 | + ] |
2942 | + |
2943 | + [[package]] |
2944 | + name = "native-tls" |
2945 | + version = "0.2.11" |
2946 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2947 | + checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" |
2948 | + dependencies = [ |
2949 | + "lazy_static", |
2950 | + "libc", |
2951 | + "log", |
2952 | + "openssl", |
2953 | + "openssl-probe", |
2954 | + "openssl-sys", |
2955 | + "schannel", |
2956 | + "security-framework", |
2957 | + "security-framework-sys", |
2958 | + "tempfile", |
2959 | + ] |
2960 | + |
2961 | + [[package]] |
2962 | + name = "net2" |
2963 | + version = "0.2.39" |
2964 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2965 | + checksum = "b13b648036a2339d06de780866fbdfda0dde886de7b3af2ddeba8b14f4ee34ac" |
2966 | + dependencies = [ |
2967 | + "cfg-if 0.1.10", |
2968 | + "libc", |
2969 | + "winapi 0.3.9", |
2970 | + ] |
2971 | + |
2972 | + [[package]] |
2973 | + name = "nix" |
2974 | + version = "0.24.3" |
2975 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2976 | + checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" |
2977 | + dependencies = [ |
2978 | + "bitflags 1.3.2", |
2979 | + "cfg-if 1.0.0", |
2980 | + "libc", |
2981 | + "memoffset", |
2982 | + ] |
2983 | + |
2984 | + [[package]] |
2985 | + name = "nom" |
2986 | + version = "7.1.3" |
2987 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2988 | + checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" |
2989 | + dependencies = [ |
2990 | + "memchr", |
2991 | + "minimal-lexical", |
2992 | + ] |
2993 | + |
2994 | + [[package]] |
2995 | + name = "notify" |
2996 | + version = "4.0.17" |
2997 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
2998 | + checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257" |
2999 | + dependencies = [ |
3000 | + "bitflags 1.3.2", |
3001 | + "filetime", |
3002 | + "fsevent", |
3003 | + "fsevent-sys", |
3004 | + "inotify", |
3005 | + "libc", |
3006 | + "mio 0.6.23", |
3007 | + "mio-extras", |
3008 | + "walkdir", |
3009 | + "winapi 0.3.9", |
3010 | + ] |
3011 | + |
3012 | + [[package]] |
3013 | + name = "num" |
3014 | + version = "0.4.1" |
3015 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3016 | + checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" |
3017 | + dependencies = [ |
3018 | + "num-bigint", |
3019 | + "num-complex", |
3020 | + "num-integer", |
3021 | + "num-iter", |
3022 | + "num-rational", |
3023 | + "num-traits", |
3024 | + ] |
3025 | + |
3026 | + [[package]] |
3027 | + name = "num-bigint" |
3028 | + version = "0.4.4" |
3029 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3030 | + checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" |
3031 | + dependencies = [ |
3032 | + "autocfg", |
3033 | + "num-integer", |
3034 | + "num-traits", |
3035 | + ] |
3036 | + |
3037 | + [[package]] |
3038 | + name = "num-cmp" |
3039 | + version = "0.1.0" |
3040 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3041 | + checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa" |
3042 | + |
3043 | + [[package]] |
3044 | + name = "num-complex" |
3045 | + version = "0.4.4" |
3046 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3047 | + checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" |
3048 | + dependencies = [ |
3049 | + "num-traits", |
3050 | + ] |
3051 | + |
3052 | + [[package]] |
3053 | + name = "num-integer" |
3054 | + version = "0.1.45" |
3055 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3056 | + checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" |
3057 | + dependencies = [ |
3058 | + "autocfg", |
3059 | + "num-traits", |
3060 | + ] |
3061 | + |
3062 | + [[package]] |
3063 | + name = "num-iter" |
3064 | + version = "0.1.43" |
3065 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3066 | + checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" |
3067 | + dependencies = [ |
3068 | + "autocfg", |
3069 | + "num-integer", |
3070 | + "num-traits", |
3071 | + ] |
3072 | + |
3073 | + [[package]] |
3074 | + name = "num-rational" |
3075 | + version = "0.4.1" |
3076 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3077 | + checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" |
3078 | + dependencies = [ |
3079 | + "autocfg", |
3080 | + "num-bigint", |
3081 | + "num-integer", |
3082 | + "num-traits", |
3083 | + ] |
3084 | + |
3085 | + [[package]] |
3086 | + name = "num-traits" |
3087 | + version = "0.2.17" |
3088 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3089 | + checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" |
3090 | + dependencies = [ |
3091 | + "autocfg", |
3092 | + ] |
3093 | + |
3094 | + [[package]] |
3095 | + name = "num_cpus" |
3096 | + version = "1.16.0" |
3097 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3098 | + checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" |
3099 | + dependencies = [ |
3100 | + "hermit-abi 0.3.3", |
3101 | + "libc", |
3102 | + ] |
3103 | + |
3104 | + [[package]] |
3105 | + name = "object" |
3106 | + version = "0.32.1" |
3107 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3108 | + checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" |
3109 | + dependencies = [ |
3110 | + "memchr", |
3111 | + ] |
3112 | + |
3113 | + [[package]] |
3114 | + name = "once_cell" |
3115 | + version = "1.18.0" |
3116 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3117 | + checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" |
3118 | + |
3119 | + [[package]] |
3120 | + name = "opaque-debug" |
3121 | + version = "0.3.0" |
3122 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3123 | + checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" |
3124 | + |
3125 | + [[package]] |
3126 | + name = "openssl" |
3127 | + version = "0.10.57" |
3128 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3129 | + checksum = "bac25ee399abb46215765b1cb35bc0212377e58a061560d8b29b024fd0430e7c" |
3130 | + dependencies = [ |
3131 | + "bitflags 2.4.0", |
3132 | + "cfg-if 1.0.0", |
3133 | + "foreign-types", |
3134 | + "libc", |
3135 | + "once_cell", |
3136 | + "openssl-macros", |
3137 | + "openssl-sys", |
3138 | + ] |
3139 | + |
3140 | + [[package]] |
3141 | + name = "openssl-macros" |
3142 | + version = "0.1.1" |
3143 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3144 | + checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" |
3145 | + dependencies = [ |
3146 | + "proc-macro2", |
3147 | + "quote", |
3148 | + "syn 2.0.38", |
3149 | + ] |
3150 | + |
3151 | + [[package]] |
3152 | + name = "openssl-probe" |
3153 | + version = "0.1.5" |
3154 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3155 | + checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" |
3156 | + |
3157 | + [[package]] |
3158 | + name = "openssl-sys" |
3159 | + version = "0.9.93" |
3160 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3161 | + checksum = "db4d56a4c0478783083cfafcc42493dd4a981d41669da64b4572a2a089b51b1d" |
3162 | + dependencies = [ |
3163 | + "cc", |
3164 | + "libc", |
3165 | + "pkg-config", |
3166 | + "vcpkg", |
3167 | + ] |
3168 | + |
3169 | + [[package]] |
3170 | + name = "ordered-multimap" |
3171 | + version = "0.4.3" |
3172 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3173 | + checksum = "ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a" |
3174 | + dependencies = [ |
3175 | + "dlv-list", |
3176 | + "hashbrown 0.12.3", |
3177 | + ] |
3178 | + |
3179 | + [[package]] |
3180 | + name = "parking" |
3181 | + version = "2.1.1" |
3182 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3183 | + checksum = "e52c774a4c39359c1d1c52e43f73dd91a75a614652c825408eec30c95a9b2067" |
3184 | + |
3185 | + [[package]] |
3186 | + name = "parking_lot" |
3187 | + version = "0.12.1" |
3188 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3189 | + checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" |
3190 | + dependencies = [ |
3191 | + "lock_api", |
3192 | + "parking_lot_core", |
3193 | + ] |
3194 | + |
3195 | + [[package]] |
3196 | + name = "parking_lot_core" |
3197 | + version = "0.9.8" |
3198 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3199 | + checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" |
3200 | + dependencies = [ |
3201 | + "cfg-if 1.0.0", |
3202 | + "libc", |
3203 | + "redox_syscall", |
3204 | + "smallvec", |
3205 | + "windows-targets", |
3206 | + ] |
3207 | + |
3208 | + [[package]] |
3209 | + name = "pathdiff" |
3210 | + version = "0.2.1" |
3211 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3212 | + checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" |
3213 | + |
3214 | + [[package]] |
3215 | + name = "percent-encoding" |
3216 | + version = "2.3.0" |
3217 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3218 | + checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" |
3219 | + |
3220 | + [[package]] |
3221 | + name = "pest" |
3222 | + version = "2.7.4" |
3223 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3224 | + checksum = "c022f1e7b65d6a24c0dbbd5fb344c66881bc01f3e5ae74a1c8100f2f985d98a4" |
3225 | + dependencies = [ |
3226 | + "memchr", |
3227 | + "thiserror", |
3228 | + "ucd-trie", |
3229 | + ] |
3230 | + |
3231 | + [[package]] |
3232 | + name = "pest_derive" |
3233 | + version = "2.7.4" |
3234 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3235 | + checksum = "35513f630d46400a977c4cb58f78e1bfbe01434316e60c37d27b9ad6139c66d8" |
3236 | + dependencies = [ |
3237 | + "pest", |
3238 | + "pest_generator", |
3239 | + ] |
3240 | + |
3241 | + [[package]] |
3242 | + name = "pest_generator" |
3243 | + version = "2.7.4" |
3244 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3245 | + checksum = "bc9fc1b9e7057baba189b5c626e2d6f40681ae5b6eb064dc7c7834101ec8123a" |
3246 | + dependencies = [ |
3247 | + "pest", |
3248 | + "pest_meta", |
3249 | + "proc-macro2", |
3250 | + "quote", |
3251 | + "syn 2.0.38", |
3252 | + ] |
3253 | + |
3254 | + [[package]] |
3255 | + name = "pest_meta" |
3256 | + version = "2.7.4" |
3257 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3258 | + checksum = "1df74e9e7ec4053ceb980e7c0c8bd3594e977fde1af91daba9c928e8e8c6708d" |
3259 | + dependencies = [ |
3260 | + "once_cell", |
3261 | + "pest", |
3262 | + "sha2 0.10.8", |
3263 | + ] |
3264 | + |
3265 | + [[package]] |
3266 | + name = "pin-project" |
3267 | + version = "1.1.3" |
3268 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3269 | + checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" |
3270 | + dependencies = [ |
3271 | + "pin-project-internal", |
3272 | + ] |
3273 | + |
3274 | + [[package]] |
3275 | + name = "pin-project-internal" |
3276 | + version = "1.1.3" |
3277 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3278 | + checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" |
3279 | + dependencies = [ |
3280 | + "proc-macro2", |
3281 | + "quote", |
3282 | + "syn 2.0.38", |
3283 | + ] |
3284 | + |
3285 | + [[package]] |
3286 | + name = "pin-project-lite" |
3287 | + version = "0.2.13" |
3288 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3289 | + checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" |
3290 | + |
3291 | + [[package]] |
3292 | + name = "pin-utils" |
3293 | + version = "0.1.0" |
3294 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3295 | + checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" |
3296 | + |
3297 | + [[package]] |
3298 | + name = "piper" |
3299 | + version = "0.2.1" |
3300 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3301 | + checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" |
3302 | + dependencies = [ |
3303 | + "atomic-waker", |
3304 | + "fastrand 2.0.1", |
3305 | + "futures-io", |
3306 | + ] |
3307 | + |
3308 | + [[package]] |
3309 | + name = "pkg-config" |
3310 | + version = "0.3.27" |
3311 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3312 | + checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" |
3313 | + |
3314 | + [[package]] |
3315 | + name = "polling" |
3316 | + version = "2.8.0" |
3317 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3318 | + checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" |
3319 | + dependencies = [ |
3320 | + "autocfg", |
3321 | + "bitflags 1.3.2", |
3322 | + "cfg-if 1.0.0", |
3323 | + "concurrent-queue", |
3324 | + "libc", |
3325 | + "log", |
3326 | + "pin-project-lite", |
3327 | + "windows-sys", |
3328 | + ] |
3329 | + |
3330 | + [[package]] |
3331 | + name = "ppv-lite86" |
3332 | + version = "0.2.17" |
3333 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3334 | + checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" |
3335 | + |
3336 | + [[package]] |
3337 | + name = "pretty_assertions" |
3338 | + version = "1.4.0" |
3339 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3340 | + checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" |
3341 | + dependencies = [ |
3342 | + "diff", |
3343 | + "yansi", |
3344 | + ] |
3345 | + |
3346 | + [[package]] |
3347 | + name = "proc-macro-error" |
3348 | + version = "1.0.4" |
3349 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3350 | + checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" |
3351 | + dependencies = [ |
3352 | + "proc-macro-error-attr", |
3353 | + "proc-macro2", |
3354 | + "quote", |
3355 | + "syn 1.0.109", |
3356 | + "version_check", |
3357 | + ] |
3358 | + |
3359 | + [[package]] |
3360 | + name = "proc-macro-error-attr" |
3361 | + version = "1.0.4" |
3362 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3363 | + checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" |
3364 | + dependencies = [ |
3365 | + "proc-macro2", |
3366 | + "quote", |
3367 | + "version_check", |
3368 | + ] |
3369 | + |
3370 | + [[package]] |
3371 | + name = "proc-macro2" |
3372 | + version = "1.0.69" |
3373 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3374 | + checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" |
3375 | + dependencies = [ |
3376 | + "unicode-ident", |
3377 | + ] |
3378 | + |
3379 | + [[package]] |
3380 | + name = "quote" |
3381 | + version = "1.0.33" |
3382 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3383 | + checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" |
3384 | + dependencies = [ |
3385 | + "proc-macro2", |
3386 | + ] |
3387 | + |
3388 | + [[package]] |
3389 | + name = "rand" |
3390 | + version = "0.8.5" |
3391 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3392 | + checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" |
3393 | + dependencies = [ |
3394 | + "libc", |
3395 | + "rand_chacha", |
3396 | + "rand_core", |
3397 | + ] |
3398 | + |
3399 | + [[package]] |
3400 | + name = "rand_chacha" |
3401 | + version = "0.3.1" |
3402 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3403 | + checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" |
3404 | + dependencies = [ |
3405 | + "ppv-lite86", |
3406 | + "rand_core", |
3407 | + ] |
3408 | + |
3409 | + [[package]] |
3410 | + name = "rand_core" |
3411 | + version = "0.6.4" |
3412 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3413 | + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" |
3414 | + dependencies = [ |
3415 | + "getrandom", |
3416 | + ] |
3417 | + |
3418 | + [[package]] |
3419 | + name = "redox_syscall" |
3420 | + version = "0.3.5" |
3421 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3422 | + checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" |
3423 | + dependencies = [ |
3424 | + "bitflags 1.3.2", |
3425 | + ] |
3426 | + |
3427 | + [[package]] |
3428 | + name = "regex" |
3429 | + version = "1.9.6" |
3430 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3431 | + checksum = "ebee201405406dbf528b8b672104ae6d6d63e6d118cb10e4d51abbc7b58044ff" |
3432 | + dependencies = [ |
3433 | + "aho-corasick", |
3434 | + "memchr", |
3435 | + "regex-automata", |
3436 | + "regex-syntax", |
3437 | + ] |
3438 | + |
3439 | + [[package]] |
3440 | + name = "regex-automata" |
3441 | + version = "0.3.9" |
3442 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3443 | + checksum = "59b23e92ee4318893fa3fe3e6fb365258efbfe6ac6ab30f090cdcbb7aa37efa9" |
3444 | + dependencies = [ |
3445 | + "aho-corasick", |
3446 | + "memchr", |
3447 | + "regex-syntax", |
3448 | + ] |
3449 | + |
3450 | + [[package]] |
3451 | + name = "regex-syntax" |
3452 | + version = "0.7.5" |
3453 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3454 | + checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" |
3455 | + |
3456 | + [[package]] |
3457 | + name = "ring" |
3458 | + version = "0.16.20" |
3459 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3460 | + checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" |
3461 | + dependencies = [ |
3462 | + "cc", |
3463 | + "libc", |
3464 | + "once_cell", |
3465 | + "spin", |
3466 | + "untrusted", |
3467 | + "web-sys", |
3468 | + "winapi 0.3.9", |
3469 | + ] |
3470 | + |
3471 | + [[package]] |
3472 | + name = "ron" |
3473 | + version = "0.7.1" |
3474 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3475 | + checksum = "88073939a61e5b7680558e6be56b419e208420c2adb92be54921fa6b72283f1a" |
3476 | + dependencies = [ |
3477 | + "base64 0.13.1", |
3478 | + "bitflags 1.3.2", |
3479 | + "serde", |
3480 | + ] |
3481 | + |
3482 | + [[package]] |
3483 | + name = "rusqlite" |
3484 | + version = "0.28.0" |
3485 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3486 | + checksum = "01e213bc3ecb39ac32e81e51ebe31fd888a940515173e3a18a35f8c6e896422a" |
3487 | + dependencies = [ |
3488 | + "bitflags 1.3.2", |
3489 | + "chrono", |
3490 | + "fallible-iterator", |
3491 | + "fallible-streaming-iterator", |
3492 | + "hashlink", |
3493 | + "libsqlite3-sys", |
3494 | + "serde_json", |
3495 | + "smallvec", |
3496 | + ] |
3497 | + |
3498 | + [[package]] |
3499 | + name = "rust-ini" |
3500 | + version = "0.18.0" |
3501 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3502 | + checksum = "f6d5f2436026b4f6e79dc829837d467cc7e9a55ee40e750d716713540715a2df" |
3503 | + dependencies = [ |
3504 | + "cfg-if 1.0.0", |
3505 | + "ordered-multimap", |
3506 | + ] |
3507 | + |
3508 | + [[package]] |
3509 | + name = "rustc-demangle" |
3510 | + version = "0.1.23" |
3511 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3512 | + checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" |
3513 | + |
3514 | + [[package]] |
3515 | + name = "rustc_version" |
3516 | + version = "0.4.0" |
3517 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3518 | + checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" |
3519 | + dependencies = [ |
3520 | + "semver", |
3521 | + ] |
3522 | + |
3523 | + [[package]] |
3524 | + name = "rustix" |
3525 | + version = "0.37.24" |
3526 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3527 | + checksum = "4279d76516df406a8bd37e7dff53fd37d1a093f997a3c34a5c21658c126db06d" |
3528 | + dependencies = [ |
3529 | + "bitflags 1.3.2", |
3530 | + "errno", |
3531 | + "io-lifetimes", |
3532 | + "libc", |
3533 | + "linux-raw-sys 0.3.8", |
3534 | + "windows-sys", |
3535 | + ] |
3536 | + |
3537 | + [[package]] |
3538 | + name = "rustix" |
3539 | + version = "0.38.18" |
3540 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3541 | + checksum = "5a74ee2d7c2581cd139b42447d7d9389b889bdaad3a73f1ebb16f2a3237bb19c" |
3542 | + dependencies = [ |
3543 | + "bitflags 2.4.0", |
3544 | + "errno", |
3545 | + "libc", |
3546 | + "linux-raw-sys 0.4.10", |
3547 | + "windows-sys", |
3548 | + ] |
3549 | + |
3550 | + [[package]] |
3551 | + name = "rustversion" |
3552 | + version = "1.0.14" |
3553 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3554 | + checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" |
3555 | + |
3556 | + [[package]] |
3557 | + name = "ryu" |
3558 | + version = "1.0.15" |
3559 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3560 | + checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" |
3561 | + |
3562 | + [[package]] |
3563 | + name = "same-file" |
3564 | + version = "1.0.6" |
3565 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3566 | + checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" |
3567 | + dependencies = [ |
3568 | + "winapi-util", |
3569 | + ] |
3570 | + |
3571 | + [[package]] |
3572 | + name = "schannel" |
3573 | + version = "0.1.22" |
3574 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3575 | + checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" |
3576 | + dependencies = [ |
3577 | + "windows-sys", |
3578 | + ] |
3579 | + |
3580 | + [[package]] |
3581 | + name = "scopeguard" |
3582 | + version = "1.2.0" |
3583 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3584 | + checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" |
3585 | + |
3586 | + [[package]] |
3587 | + name = "secrecy" |
3588 | + version = "0.8.0" |
3589 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3590 | + checksum = "9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e" |
3591 | + dependencies = [ |
3592 | + "zeroize", |
3593 | + ] |
3594 | + |
3595 | + [[package]] |
3596 | + name = "security-framework" |
3597 | + version = "2.9.2" |
3598 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3599 | + checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" |
3600 | + dependencies = [ |
3601 | + "bitflags 1.3.2", |
3602 | + "core-foundation", |
3603 | + "core-foundation-sys", |
3604 | + "libc", |
3605 | + "security-framework-sys", |
3606 | + ] |
3607 | + |
3608 | + [[package]] |
3609 | + name = "security-framework-sys" |
3610 | + version = "2.9.1" |
3611 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3612 | + checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" |
3613 | + dependencies = [ |
3614 | + "core-foundation-sys", |
3615 | + "libc", |
3616 | + ] |
3617 | + |
3618 | + [[package]] |
3619 | + name = "self_cell" |
3620 | + version = "0.10.2" |
3621 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3622 | + checksum = "1ef965a420fe14fdac7dd018862966a4c14094f900e1650bbc71ddd7d580c8af" |
3623 | + |
3624 | + [[package]] |
3625 | + name = "semver" |
3626 | + version = "1.0.19" |
3627 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3628 | + checksum = "ad977052201c6de01a8ef2aa3378c4bd23217a056337d1d6da40468d267a4fb0" |
3629 | + dependencies = [ |
3630 | + "serde", |
3631 | + ] |
3632 | + |
3633 | + [[package]] |
3634 | + name = "serde" |
3635 | + version = "1.0.188" |
3636 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3637 | + checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" |
3638 | + dependencies = [ |
3639 | + "serde_derive", |
3640 | + ] |
3641 | + |
3642 | + [[package]] |
3643 | + name = "serde_derive" |
3644 | + version = "1.0.188" |
3645 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3646 | + checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" |
3647 | + dependencies = [ |
3648 | + "proc-macro2", |
3649 | + "quote", |
3650 | + "syn 2.0.38", |
3651 | + ] |
3652 | + |
3653 | + [[package]] |
3654 | + name = "serde_html_form" |
3655 | + version = "0.2.2" |
3656 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3657 | + checksum = "cde65b75f2603066b78d6fa239b2c07b43e06ead09435f60554d3912962b4a3c" |
3658 | + dependencies = [ |
3659 | + "form_urlencoded", |
3660 | + "indexmap 2.0.2", |
3661 | + "itoa", |
3662 | + "ryu", |
3663 | + "serde", |
3664 | + ] |
3665 | + |
3666 | + [[package]] |
3667 | + name = "serde_json" |
3668 | + version = "1.0.107" |
3669 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3670 | + checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" |
3671 | + dependencies = [ |
3672 | + "itoa", |
3673 | + "ryu", |
3674 | + "serde", |
3675 | + ] |
3676 | + |
3677 | + [[package]] |
3678 | + name = "serde_path_to_error" |
3679 | + version = "0.1.14" |
3680 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3681 | + checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" |
3682 | + dependencies = [ |
3683 | + "itoa", |
3684 | + "serde", |
3685 | + ] |
3686 | + |
3687 | + [[package]] |
3688 | + name = "serde_urlencoded" |
3689 | + version = "0.7.1" |
3690 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3691 | + checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" |
3692 | + dependencies = [ |
3693 | + "form_urlencoded", |
3694 | + "itoa", |
3695 | + "ryu", |
3696 | + "serde", |
3697 | + ] |
3698 | + |
3699 | + [[package]] |
3700 | + name = "sha1" |
3701 | + version = "0.10.6" |
3702 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3703 | + checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" |
3704 | + dependencies = [ |
3705 | + "cfg-if 1.0.0", |
3706 | + "cpufeatures", |
3707 | + "digest 0.10.7", |
3708 | + ] |
3709 | + |
3710 | + [[package]] |
3711 | + name = "sha1_smol" |
3712 | + version = "1.0.0" |
3713 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3714 | + checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" |
3715 | + |
3716 | + [[package]] |
3717 | + name = "sha2" |
3718 | + version = "0.9.9" |
3719 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3720 | + checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" |
3721 | + dependencies = [ |
3722 | + "block-buffer 0.9.0", |
3723 | + "cfg-if 1.0.0", |
3724 | + "cpufeatures", |
3725 | + "digest 0.9.0", |
3726 | + "opaque-debug", |
3727 | + ] |
3728 | + |
3729 | + [[package]] |
3730 | + name = "sha2" |
3731 | + version = "0.10.8" |
3732 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3733 | + checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" |
3734 | + dependencies = [ |
3735 | + "cfg-if 1.0.0", |
3736 | + "cpufeatures", |
3737 | + "digest 0.10.7", |
3738 | + ] |
3739 | + |
3740 | + [[package]] |
3741 | + name = "signal-hook-registry" |
3742 | + version = "1.4.1" |
3743 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3744 | + checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" |
3745 | + dependencies = [ |
3746 | + "libc", |
3747 | + ] |
3748 | + |
3749 | + [[package]] |
3750 | + name = "slab" |
3751 | + version = "0.4.9" |
3752 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3753 | + checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" |
3754 | + dependencies = [ |
3755 | + "autocfg", |
3756 | + ] |
3757 | + |
3758 | + [[package]] |
3759 | + name = "smallvec" |
3760 | + version = "1.11.1" |
3761 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3762 | + checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" |
3763 | + dependencies = [ |
3764 | + "serde", |
3765 | + ] |
3766 | + |
3767 | + [[package]] |
3768 | + name = "smol" |
3769 | + version = "1.3.0" |
3770 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3771 | + checksum = "13f2b548cd8447f8de0fdf1c592929f70f4fc7039a05e47404b0d096ec6987a1" |
3772 | + dependencies = [ |
3773 | + "async-channel", |
3774 | + "async-executor", |
3775 | + "async-fs", |
3776 | + "async-io", |
3777 | + "async-lock", |
3778 | + "async-net", |
3779 | + "async-process", |
3780 | + "blocking", |
3781 | + "futures-lite", |
3782 | + ] |
3783 | + |
3784 | + [[package]] |
3785 | + name = "socket2" |
3786 | + version = "0.4.9" |
3787 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3788 | + checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" |
3789 | + dependencies = [ |
3790 | + "libc", |
3791 | + "winapi 0.3.9", |
3792 | + ] |
3793 | + |
3794 | + [[package]] |
3795 | + name = "socket2" |
3796 | + version = "0.5.4" |
3797 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3798 | + checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" |
3799 | + dependencies = [ |
3800 | + "libc", |
3801 | + "windows-sys", |
3802 | + ] |
3803 | + |
3804 | + [[package]] |
3805 | + name = "spin" |
3806 | + version = "0.5.2" |
3807 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3808 | + checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" |
3809 | + |
3810 | + [[package]] |
3811 | + name = "stderrlog" |
3812 | + version = "0.5.4" |
3813 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3814 | + checksum = "69a26bbf6de627d389164afa9783739b56746c6c72c4ed16539f4ff54170327b" |
3815 | + dependencies = [ |
3816 | + "atty", |
3817 | + "chrono", |
3818 | + "log", |
3819 | + "termcolor", |
3820 | + "thread_local", |
3821 | + ] |
3822 | + |
3823 | + [[package]] |
3824 | + name = "subtle" |
3825 | + version = "2.5.0" |
3826 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3827 | + checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" |
3828 | + |
3829 | + [[package]] |
3830 | + name = "syn" |
3831 | + version = "1.0.109" |
3832 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3833 | + checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" |
3834 | + dependencies = [ |
3835 | + "proc-macro2", |
3836 | + "quote", |
3837 | + "unicode-ident", |
3838 | + ] |
3839 | + |
3840 | + [[package]] |
3841 | + name = "syn" |
3842 | + version = "2.0.38" |
3843 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3844 | + checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" |
3845 | + dependencies = [ |
3846 | + "proc-macro2", |
3847 | + "quote", |
3848 | + "unicode-ident", |
3849 | + ] |
3850 | + |
3851 | + [[package]] |
3852 | + name = "sync_wrapper" |
3853 | + version = "0.1.2" |
3854 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3855 | + checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" |
3856 | + |
3857 | + [[package]] |
3858 | + name = "tempfile" |
3859 | + version = "3.8.0" |
3860 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3861 | + checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" |
3862 | + dependencies = [ |
3863 | + "cfg-if 1.0.0", |
3864 | + "fastrand 2.0.1", |
3865 | + "redox_syscall", |
3866 | + "rustix 0.38.18", |
3867 | + "windows-sys", |
3868 | + ] |
3869 | + |
3870 | + [[package]] |
3871 | + name = "termcolor" |
3872 | + version = "1.1.3" |
3873 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3874 | + checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" |
3875 | + dependencies = [ |
3876 | + "winapi-util", |
3877 | + ] |
3878 | + |
3879 | + [[package]] |
3880 | + name = "thiserror" |
3881 | + version = "1.0.49" |
3882 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3883 | + checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4" |
3884 | + dependencies = [ |
3885 | + "thiserror-impl", |
3886 | + ] |
3887 | + |
3888 | + [[package]] |
3889 | + name = "thiserror-impl" |
3890 | + version = "1.0.49" |
3891 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3892 | + checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" |
3893 | + dependencies = [ |
3894 | + "proc-macro2", |
3895 | + "quote", |
3896 | + "syn 2.0.38", |
3897 | + ] |
3898 | + |
3899 | + [[package]] |
3900 | + name = "thread_local" |
3901 | + version = "1.1.7" |
3902 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3903 | + checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" |
3904 | + dependencies = [ |
3905 | + "cfg-if 1.0.0", |
3906 | + "once_cell", |
3907 | + ] |
3908 | + |
3909 | + [[package]] |
3910 | + name = "time" |
3911 | + version = "0.3.29" |
3912 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3913 | + checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" |
3914 | + dependencies = [ |
3915 | + "deranged", |
3916 | + "itoa", |
3917 | + "serde", |
3918 | + "time-core", |
3919 | + "time-macros", |
3920 | + ] |
3921 | + |
3922 | + [[package]] |
3923 | + name = "time-core" |
3924 | + version = "0.1.2" |
3925 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3926 | + checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" |
3927 | + |
3928 | + [[package]] |
3929 | + name = "time-macros" |
3930 | + version = "0.2.15" |
3931 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3932 | + checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" |
3933 | + dependencies = [ |
3934 | + "time-core", |
3935 | + ] |
3936 | + |
3937 | + [[package]] |
3938 | + name = "tinyvec" |
3939 | + version = "1.6.0" |
3940 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3941 | + checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" |
3942 | + dependencies = [ |
3943 | + "tinyvec_macros", |
3944 | + ] |
3945 | + |
3946 | + [[package]] |
3947 | + name = "tinyvec_macros" |
3948 | + version = "0.1.1" |
3949 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3950 | + checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" |
3951 | + |
3952 | + [[package]] |
3953 | + name = "tokio" |
3954 | + version = "1.33.0" |
3955 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3956 | + checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" |
3957 | + dependencies = [ |
3958 | + "backtrace", |
3959 | + "bytes", |
3960 | + "libc", |
3961 | + "mio 0.8.8", |
3962 | + "num_cpus", |
3963 | + "parking_lot", |
3964 | + "pin-project-lite", |
3965 | + "signal-hook-registry", |
3966 | + "socket2 0.5.4", |
3967 | + "tokio-macros", |
3968 | + "windows-sys", |
3969 | + ] |
3970 | + |
3971 | + [[package]] |
3972 | + name = "tokio-macros" |
3973 | + version = "2.1.0" |
3974 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3975 | + checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" |
3976 | + dependencies = [ |
3977 | + "proc-macro2", |
3978 | + "quote", |
3979 | + "syn 2.0.38", |
3980 | + ] |
3981 | + |
3982 | + [[package]] |
3983 | + name = "tokio-util" |
3984 | + version = "0.7.9" |
3985 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3986 | + checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" |
3987 | + dependencies = [ |
3988 | + "bytes", |
3989 | + "futures-core", |
3990 | + "futures-sink", |
3991 | + "pin-project-lite", |
3992 | + "tokio", |
3993 | + ] |
3994 | + |
3995 | + [[package]] |
3996 | + name = "toml" |
3997 | + version = "0.5.11" |
3998 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
3999 | + checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" |
4000 | + dependencies = [ |
4001 | + "serde", |
4002 | + ] |
4003 | + |
4004 | + [[package]] |
4005 | + name = "tower" |
4006 | + version = "0.4.13" |
4007 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4008 | + checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" |
4009 | + dependencies = [ |
4010 | + "futures-core", |
4011 | + "futures-util", |
4012 | + "pin-project", |
4013 | + "pin-project-lite", |
4014 | + "tokio", |
4015 | + "tower-layer", |
4016 | + "tower-service", |
4017 | + "tracing", |
4018 | + ] |
4019 | + |
4020 | + [[package]] |
4021 | + name = "tower-http" |
4022 | + version = "0.3.5" |
4023 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4024 | + checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" |
4025 | + dependencies = [ |
4026 | + "base64 0.13.1", |
4027 | + "bitflags 1.3.2", |
4028 | + "bytes", |
4029 | + "futures-core", |
4030 | + "futures-util", |
4031 | + "http", |
4032 | + "http-body", |
4033 | + "http-range-header", |
4034 | + "pin-project-lite", |
4035 | + "tower-layer", |
4036 | + "tower-service", |
4037 | + ] |
4038 | + |
4039 | + [[package]] |
4040 | + name = "tower-http" |
4041 | + version = "0.4.4" |
4042 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4043 | + checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" |
4044 | + dependencies = [ |
4045 | + "async-compression", |
4046 | + "bitflags 2.4.0", |
4047 | + "bytes", |
4048 | + "futures-core", |
4049 | + "futures-util", |
4050 | + "http", |
4051 | + "http-body", |
4052 | + "http-range-header", |
4053 | + "pin-project-lite", |
4054 | + "tokio", |
4055 | + "tokio-util", |
4056 | + "tower-layer", |
4057 | + "tower-service", |
4058 | + "tracing", |
4059 | + ] |
4060 | + |
4061 | + [[package]] |
4062 | + name = "tower-layer" |
4063 | + version = "0.3.2" |
4064 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4065 | + checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" |
4066 | + |
4067 | + [[package]] |
4068 | + name = "tower-service" |
4069 | + version = "0.3.2" |
4070 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4071 | + checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" |
4072 | + |
4073 | + [[package]] |
4074 | + name = "tracing" |
4075 | + version = "0.1.37" |
4076 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4077 | + checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" |
4078 | + dependencies = [ |
4079 | + "cfg-if 1.0.0", |
4080 | + "log", |
4081 | + "pin-project-lite", |
4082 | + "tracing-attributes", |
4083 | + "tracing-core", |
4084 | + ] |
4085 | + |
4086 | + [[package]] |
4087 | + name = "tracing-attributes" |
4088 | + version = "0.1.26" |
4089 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4090 | + checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" |
4091 | + dependencies = [ |
4092 | + "proc-macro2", |
4093 | + "quote", |
4094 | + "syn 2.0.38", |
4095 | + ] |
4096 | + |
4097 | + [[package]] |
4098 | + name = "tracing-core" |
4099 | + version = "0.1.31" |
4100 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4101 | + checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" |
4102 | + dependencies = [ |
4103 | + "once_cell", |
4104 | + ] |
4105 | + |
4106 | + [[package]] |
4107 | + name = "try-lock" |
4108 | + version = "0.2.4" |
4109 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4110 | + checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" |
4111 | + |
4112 | + [[package]] |
4113 | + name = "typenum" |
4114 | + version = "1.17.0" |
4115 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4116 | + checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" |
4117 | + |
4118 | + [[package]] |
4119 | + name = "ucd-trie" |
4120 | + version = "0.1.6" |
4121 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4122 | + checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" |
4123 | + |
4124 | + [[package]] |
4125 | + name = "unicode-bidi" |
4126 | + version = "0.3.13" |
4127 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4128 | + checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" |
4129 | + |
4130 | + [[package]] |
4131 | + name = "unicode-ident" |
4132 | + version = "1.0.12" |
4133 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4134 | + checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" |
4135 | + |
4136 | + [[package]] |
4137 | + name = "unicode-normalization" |
4138 | + version = "0.1.22" |
4139 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4140 | + checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" |
4141 | + dependencies = [ |
4142 | + "tinyvec", |
4143 | + ] |
4144 | + |
4145 | + [[package]] |
4146 | + name = "unicode-segmentation" |
4147 | + version = "1.10.1" |
4148 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4149 | + checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" |
4150 | + |
4151 | + [[package]] |
4152 | + name = "untrusted" |
4153 | + version = "0.7.1" |
4154 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4155 | + checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" |
4156 | + |
4157 | + [[package]] |
4158 | + name = "url" |
4159 | + version = "2.4.1" |
4160 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4161 | + checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" |
4162 | + dependencies = [ |
4163 | + "form_urlencoded", |
4164 | + "idna", |
4165 | + "percent-encoding", |
4166 | + ] |
4167 | + |
4168 | + [[package]] |
4169 | + name = "uuid" |
4170 | + version = "1.4.1" |
4171 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4172 | + checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" |
4173 | + dependencies = [ |
4174 | + "getrandom", |
4175 | + "serde", |
4176 | + "sha1_smol", |
4177 | + ] |
4178 | + |
4179 | + [[package]] |
4180 | + name = "vcpkg" |
4181 | + version = "0.2.15" |
4182 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4183 | + checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" |
4184 | + |
4185 | + [[package]] |
4186 | + name = "version_check" |
4187 | + version = "0.9.4" |
4188 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4189 | + checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" |
4190 | + |
4191 | + [[package]] |
4192 | + name = "waker-fn" |
4193 | + version = "1.1.1" |
4194 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4195 | + checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" |
4196 | + |
4197 | + [[package]] |
4198 | + name = "walkdir" |
4199 | + version = "2.4.0" |
4200 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4201 | + checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" |
4202 | + dependencies = [ |
4203 | + "same-file", |
4204 | + "winapi-util", |
4205 | + ] |
4206 | + |
4207 | + [[package]] |
4208 | + name = "want" |
4209 | + version = "0.3.1" |
4210 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4211 | + checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" |
4212 | + dependencies = [ |
4213 | + "try-lock", |
4214 | + ] |
4215 | + |
4216 | + [[package]] |
4217 | + name = "wasi" |
4218 | + version = "0.11.0+wasi-snapshot-preview1" |
4219 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4220 | + checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" |
4221 | + |
4222 | + [[package]] |
4223 | + name = "wasm-bindgen" |
4224 | + version = "0.2.87" |
4225 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4226 | + checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" |
4227 | + dependencies = [ |
4228 | + "cfg-if 1.0.0", |
4229 | + "wasm-bindgen-macro", |
4230 | + ] |
4231 | + |
4232 | + [[package]] |
4233 | + name = "wasm-bindgen-backend" |
4234 | + version = "0.2.87" |
4235 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4236 | + checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" |
4237 | + dependencies = [ |
4238 | + "bumpalo", |
4239 | + "log", |
4240 | + "once_cell", |
4241 | + "proc-macro2", |
4242 | + "quote", |
4243 | + "syn 2.0.38", |
4244 | + "wasm-bindgen-shared", |
4245 | + ] |
4246 | + |
4247 | + [[package]] |
4248 | + name = "wasm-bindgen-macro" |
4249 | + version = "0.2.87" |
4250 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4251 | + checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" |
4252 | + dependencies = [ |
4253 | + "quote", |
4254 | + "wasm-bindgen-macro-support", |
4255 | + ] |
4256 | + |
4257 | + [[package]] |
4258 | + name = "wasm-bindgen-macro-support" |
4259 | + version = "0.2.87" |
4260 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4261 | + checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" |
4262 | + dependencies = [ |
4263 | + "proc-macro2", |
4264 | + "quote", |
4265 | + "syn 2.0.38", |
4266 | + "wasm-bindgen-backend", |
4267 | + "wasm-bindgen-shared", |
4268 | + ] |
4269 | + |
4270 | + [[package]] |
4271 | + name = "wasm-bindgen-shared" |
4272 | + version = "0.2.87" |
4273 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4274 | + checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" |
4275 | + |
4276 | + [[package]] |
4277 | + name = "web-sys" |
4278 | + version = "0.3.64" |
4279 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4280 | + checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" |
4281 | + dependencies = [ |
4282 | + "js-sys", |
4283 | + "wasm-bindgen", |
4284 | + ] |
4285 | + |
4286 | + [[package]] |
4287 | + name = "winapi" |
4288 | + version = "0.2.8" |
4289 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4290 | + checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" |
4291 | + |
4292 | + [[package]] |
4293 | + name = "winapi" |
4294 | + version = "0.3.9" |
4295 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4296 | + checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" |
4297 | + dependencies = [ |
4298 | + "winapi-i686-pc-windows-gnu", |
4299 | + "winapi-x86_64-pc-windows-gnu", |
4300 | + ] |
4301 | + |
4302 | + [[package]] |
4303 | + name = "winapi-build" |
4304 | + version = "0.1.1" |
4305 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4306 | + checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" |
4307 | + |
4308 | + [[package]] |
4309 | + name = "winapi-i686-pc-windows-gnu" |
4310 | + version = "0.4.0" |
4311 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4312 | + checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" |
4313 | + |
4314 | + [[package]] |
4315 | + name = "winapi-util" |
4316 | + version = "0.1.6" |
4317 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4318 | + checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" |
4319 | + dependencies = [ |
4320 | + "winapi 0.3.9", |
4321 | + ] |
4322 | + |
4323 | + [[package]] |
4324 | + name = "winapi-x86_64-pc-windows-gnu" |
4325 | + version = "0.4.0" |
4326 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4327 | + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" |
4328 | + |
4329 | + [[package]] |
4330 | + name = "windows" |
4331 | + version = "0.48.0" |
4332 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4333 | + checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" |
4334 | + dependencies = [ |
4335 | + "windows-targets", |
4336 | + ] |
4337 | + |
4338 | + [[package]] |
4339 | + name = "windows-sys" |
4340 | + version = "0.48.0" |
4341 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4342 | + checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" |
4343 | + dependencies = [ |
4344 | + "windows-targets", |
4345 | + ] |
4346 | + |
4347 | + [[package]] |
4348 | + name = "windows-targets" |
4349 | + version = "0.48.5" |
4350 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4351 | + checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" |
4352 | + dependencies = [ |
4353 | + "windows_aarch64_gnullvm", |
4354 | + "windows_aarch64_msvc", |
4355 | + "windows_i686_gnu", |
4356 | + "windows_i686_msvc", |
4357 | + "windows_x86_64_gnu", |
4358 | + "windows_x86_64_gnullvm", |
4359 | + "windows_x86_64_msvc", |
4360 | + ] |
4361 | + |
4362 | + [[package]] |
4363 | + name = "windows_aarch64_gnullvm" |
4364 | + version = "0.48.5" |
4365 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4366 | + checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" |
4367 | + |
4368 | + [[package]] |
4369 | + name = "windows_aarch64_msvc" |
4370 | + version = "0.48.5" |
4371 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4372 | + checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" |
4373 | + |
4374 | + [[package]] |
4375 | + name = "windows_i686_gnu" |
4376 | + version = "0.48.5" |
4377 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4378 | + checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" |
4379 | + |
4380 | + [[package]] |
4381 | + name = "windows_i686_msvc" |
4382 | + version = "0.48.5" |
4383 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4384 | + checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" |
4385 | + |
4386 | + [[package]] |
4387 | + name = "windows_x86_64_gnu" |
4388 | + version = "0.48.5" |
4389 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4390 | + checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" |
4391 | + |
4392 | + [[package]] |
4393 | + name = "windows_x86_64_gnullvm" |
4394 | + version = "0.48.5" |
4395 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4396 | + checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" |
4397 | + |
4398 | + [[package]] |
4399 | + name = "windows_x86_64_msvc" |
4400 | + version = "0.48.5" |
4401 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4402 | + checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" |
4403 | + |
4404 | + [[package]] |
4405 | + name = "ws2_32-sys" |
4406 | + version = "0.2.1" |
4407 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4408 | + checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" |
4409 | + dependencies = [ |
4410 | + "winapi 0.2.8", |
4411 | + "winapi-build", |
4412 | + ] |
4413 | + |
4414 | + [[package]] |
4415 | + name = "xdg" |
4416 | + version = "2.5.2" |
4417 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4418 | + checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546" |
4419 | + |
4420 | + [[package]] |
4421 | + name = "xdg-utils" |
4422 | + version = "0.4.0" |
4423 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4424 | + checksum = "db9fefe62d5969721e2cfc529e6a760901cc0da422b6d67e7bfd18e69490dba6" |
4425 | + |
4426 | + [[package]] |
4427 | + name = "xz2" |
4428 | + version = "0.1.7" |
4429 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4430 | + checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" |
4431 | + dependencies = [ |
4432 | + "lzma-sys", |
4433 | + ] |
4434 | + |
4435 | + [[package]] |
4436 | + name = "yaml-rust" |
4437 | + version = "0.4.5" |
4438 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4439 | + checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" |
4440 | + dependencies = [ |
4441 | + "linked-hash-map", |
4442 | + ] |
4443 | + |
4444 | + [[package]] |
4445 | + name = "yansi" |
4446 | + version = "0.5.1" |
4447 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4448 | + checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" |
4449 | + |
4450 | + [[package]] |
4451 | + name = "zeroize" |
4452 | + version = "1.6.0" |
4453 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4454 | + checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" |
4455 | + |
4456 | + [[package]] |
4457 | + name = "zstd" |
4458 | + version = "0.12.4" |
4459 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4460 | + checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" |
4461 | + dependencies = [ |
4462 | + "zstd-safe", |
4463 | + ] |
4464 | + |
4465 | + [[package]] |
4466 | + name = "zstd-safe" |
4467 | + version = "6.0.6" |
4468 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4469 | + checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" |
4470 | + dependencies = [ |
4471 | + "libc", |
4472 | + "zstd-sys", |
4473 | + ] |
4474 | + |
4475 | + [[package]] |
4476 | + name = "zstd-sys" |
4477 | + version = "2.0.8+zstd.1.5.5" |
4478 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4479 | + checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c" |
4480 | + dependencies = [ |
4481 | + "cc", |
4482 | + "libc", |
4483 | + "pkg-config", |
4484 | + ] |
4485 | diff --git a/ayllu-mail/Cargo.toml b/ayllu-mail/Cargo.toml |
4486 | new file mode 100644 |
4487 | index 0000000..c1a46f2 |
4488 | --- /dev/null |
4489 | +++ b/ayllu-mail/Cargo.toml |
4490 | @@ -0,0 +1,20 @@ |
4491 | + [package] |
4492 | + name = "ayllu_mail" |
4493 | + version = "0.2.1" |
4494 | + edition = "2021" |
4495 | + |
4496 | + [dependencies] |
4497 | + ayllu_api = {workspace = true} |
4498 | + ayllu_config = {workspace = true} |
4499 | + ayllu_rpc = {workspace = true} |
4500 | + rusqlite = { version = "0.29.0", features = ["bundled", "functions", "trace", "hooks", "serde_json", "array", "chrono", "unlock_notify"] } |
4501 | + serde = { version = "1.0.188", features = ["derive"] } |
4502 | + clap = "4.4.6" |
4503 | + tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } |
4504 | + tracing = "0.1.37" |
4505 | + tokio = { version = "1.33.0", features = ["full"] } |
4506 | + capnp-rpc = "0.18.0" |
4507 | + futures = "0.3.28" |
4508 | + capnp = "0.18.1" |
4509 | + melib = "0.8.2" |
4510 | + mailpot = { git = "https://kevinschoon.com/forks/mailpot", branch = "ayllu"} |
4511 | diff --git a/ayllu-mail/README.md b/ayllu-mail/README.md |
4512 | new file mode 100644 |
4513 | index 0000000..5bdeae8 |
4514 | --- /dev/null |
4515 | +++ b/ayllu-mail/README.md |
4516 | @@ -0,0 +1,3 @@ |
4517 | + # Mailing list Management |
4518 | + |
4519 | + Mailing list management system build on [mailpot](https://git.meli.delivery/meli/mailpot). |
4520 | diff --git a/ayllu-mail/src/config.rs b/ayllu-mail/src/config.rs |
4521 | new file mode 100644 |
4522 | index 0000000..e079f8f |
4523 | --- /dev/null |
4524 | +++ b/ayllu-mail/src/config.rs |
4525 | @@ -0,0 +1,84 @@ |
4526 | + use serde::{Deserialize, Serialize}; |
4527 | + |
4528 | + use ayllu_config::{data_dir, runtime_dir, Configurable, Error, Reader}; |
4529 | + use mailpot::{Configuration as MailPotConfig, SendMail}; |
4530 | + |
4531 | + #[derive(Serialize, Deserialize, Clone)] |
4532 | + pub struct Database { |
4533 | + pub migrate: Option<bool>, |
4534 | + #[serde(default = "Database::default_database_path")] |
4535 | + pub path: String, |
4536 | + } |
4537 | + |
4538 | + impl Database { |
4539 | + pub fn default_database_path() -> String { |
4540 | + let mut data_path = data_dir(); |
4541 | + data_path.push("mail.db"); |
4542 | + let path = String::from(data_path.to_str().unwrap()); |
4543 | + path |
4544 | + } |
4545 | + } |
4546 | + |
4547 | + #[derive(Deserialize, Serialize, Clone, Debug, Default)] |
4548 | + pub struct MailingList { |
4549 | + pub id: String, |
4550 | + pub name: Option<String>, |
4551 | + pub address: String, |
4552 | + pub description: Option<String>, |
4553 | + pub topics: Vec<String>, |
4554 | + } |
4555 | + |
4556 | + #[derive(Serialize, Deserialize, Clone)] |
4557 | + pub struct Mail { |
4558 | + #[serde(default = "Mail::default_socket_path")] |
4559 | + pub socket_path: String, |
4560 | + pub database: Database, |
4561 | + #[serde(default = "Mail::default_sendmail_command")] |
4562 | + pub sendmail_command: String, |
4563 | + pub lists: Vec<MailingList>, |
4564 | + } |
4565 | + |
4566 | + impl Mail { |
4567 | + fn default_socket_path() -> String { |
4568 | + runtime_dir().to_str().unwrap().to_string() + "/ayllu-mail.sock" |
4569 | + } |
4570 | + |
4571 | + fn default_sendmail_command() -> String { |
4572 | + String::from("/usr/bin/sendmail") |
4573 | + } |
4574 | + } |
4575 | + |
4576 | + #[derive(Serialize, Deserialize, Clone)] |
4577 | + pub struct Config { |
4578 | + pub sysadmin: Option<String>, |
4579 | + pub log_level: String, |
4580 | + pub mail: Mail, |
4581 | + } |
4582 | + |
4583 | + impl Config { |
4584 | + pub fn mailpot_config(self: &Self) -> MailPotConfig { |
4585 | + MailPotConfig { |
4586 | + send_mail: SendMail::ShellCommand(self.mail.sendmail_command.clone()), |
4587 | + data_path: data_dir().into(), |
4588 | + db_path: self.mail.database.path.clone().into(), |
4589 | + administrators: self |
4590 | + .sysadmin |
4591 | + .clone() |
4592 | + .map_or(vec![], |admin| vec![admin.clone()]), |
4593 | + } |
4594 | + } |
4595 | + } |
4596 | + |
4597 | + impl Configurable for Config { |
4598 | + fn initialize(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
4599 | + Ok(()) |
4600 | + } |
4601 | + |
4602 | + fn validate(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
4603 | + Ok(()) |
4604 | + } |
4605 | + } |
4606 | + |
4607 | + pub fn load(path: Option<&str>) -> Result<Config, Error> { |
4608 | + Reader::load(path) |
4609 | + } |
4610 | diff --git a/ayllu-mail/src/main.rs b/ayllu-mail/src/main.rs |
4611 | new file mode 100644 |
4612 | index 0000000..4e1367c |
4613 | --- /dev/null |
4614 | +++ b/ayllu-mail/src/main.rs |
4615 | @@ -0,0 +1,88 @@ |
4616 | + use std::thread::Builder as ThreadBuilder; |
4617 | + |
4618 | + use clap::{arg, value_parser, Command}; |
4619 | + use mailpot::{models::MailingList, Connection, Result as MpResult}; |
4620 | + use tokio::{runtime::Builder as TokioBuilder, task::LocalSet}; |
4621 | + use tracing; |
4622 | + use tracing::log; |
4623 | + use tracing_subscriber; |
4624 | + |
4625 | + mod config; |
4626 | + mod server; |
4627 | + |
4628 | + /// ensure the mailing lists in the global config are available |
4629 | + pub fn initialize(cfg: &config::Config) -> MpResult<()> { |
4630 | + let db = Connection::open_or_create_db(cfg.mailpot_config())?.trusted(); |
4631 | + // initialize any mailing list which hasn't been created |
4632 | + let existing_lists: Vec<String> = db |
4633 | + .lists()? |
4634 | + .iter() |
4635 | + .map(|list| list.address.clone()) |
4636 | + .collect(); |
4637 | + |
4638 | + for mailing_list in cfg.mail.lists.clone() { |
4639 | + if existing_lists |
4640 | + .iter() |
4641 | + .find(|address| **address == mailing_list.address) |
4642 | + .is_none() |
4643 | + { |
4644 | + log::info!("creating mailing list: {}", mailing_list.address); |
4645 | + db.create_list(MailingList { |
4646 | + pk: -1, |
4647 | + name: mailing_list.name.unwrap_or(mailing_list.id.clone()), |
4648 | + id: mailing_list.id, |
4649 | + address: mailing_list.address, |
4650 | + topics: mailing_list.topics, |
4651 | + description: mailing_list.description, |
4652 | + archive_url: None, |
4653 | + })?; |
4654 | + } |
4655 | + } |
4656 | + |
4657 | + Ok(()) |
4658 | + } |
4659 | + |
4660 | + fn main() -> Result<(), Box<dyn std::error::Error>> { |
4661 | + let command = Command::new("ayllu-mail") |
4662 | + .about("ayllu email service") |
4663 | + .arg( |
4664 | + arg!(-c --config <FILE> "optional path to a configuration file") |
4665 | + .id("config") |
4666 | + .required(false) |
4667 | + .value_parser(value_parser!(String)), |
4668 | + ) |
4669 | + .arg( |
4670 | + arg!(-l --level <LEVEL> "logging level [ERROR,WARN,INFO,DEBUG,TRACE]") |
4671 | + .id("level") |
4672 | + .required(false) |
4673 | + .value_parser(value_parser!(String)), |
4674 | + ); |
4675 | + let matches = command.get_matches(); |
4676 | + let ayllu_config = &config::load(matches.get_one::<String>("config").map(|s| s.as_str()))?; |
4677 | + let log_level = matches |
4678 | + .get_one::<String>("level") |
4679 | + .map(|level| level.clone()) |
4680 | + .unwrap_or(ayllu_config.log_level.clone()); |
4681 | + tracing_subscriber::fmt() |
4682 | + .compact() |
4683 | + .with_line_number(true) |
4684 | + .with_level(true) |
4685 | + // tokei will spam the console unless this is set |
4686 | + .with_env_filter(format!( |
4687 | + "{},tokei::language::language_type=error", |
4688 | + log_level |
4689 | + )) |
4690 | + .init(); |
4691 | + tracing::info!("logger initialized"); |
4692 | + initialize(ayllu_config)?; |
4693 | + TokioBuilder::new_current_thread() |
4694 | + .enable_all() |
4695 | + .build() |
4696 | + .unwrap() |
4697 | + .block_on(async move { |
4698 | + LocalSet::new() |
4699 | + .run_until(server::serve(ayllu_config)) |
4700 | + .await |
4701 | + })?; |
4702 | + Ok(()) |
4703 | + } |
4704 | diff --git a/ayllu-mail/src/server.rs b/ayllu-mail/src/server.rs |
4705 | new file mode 100644 |
4706 | index 0000000..bcc2c34 |
4707 | --- /dev/null |
4708 | +++ b/ayllu-mail/src/server.rs |
4709 | @@ -0,0 +1,99 @@ |
4710 | + use std::collections::HashMap; |
4711 | + use std::error::Error as StdError; |
4712 | + use std::sync::{Arc, RwLock}; |
4713 | + |
4714 | + use capnp::capability::Promise; |
4715 | + use capnp_rpc::pry; |
4716 | + use mailpot::{models::Post, Connection}; |
4717 | + use melib::{thread::Threads, Envelope, EnvelopeHash}; |
4718 | + use tracing::log; |
4719 | + |
4720 | + use crate::config::Config; |
4721 | + use ayllu_api::mail_capnp::server::{ |
4722 | + Client, ListThreadsParams, ListThreadsResults, PostMessageParams, PostMessageResults, |
4723 | + ReadThreadParams, ReadThreadResults, Server, |
4724 | + }; |
4725 | + use ayllu_rpc::Server as RpcHelper; |
4726 | + |
4727 | + struct ServerImpl { |
4728 | + db: Connection, |
4729 | + } |
4730 | + |
4731 | + impl Server for ServerImpl { |
4732 | + fn list_threads( |
4733 | + &mut self, |
4734 | + params: ListThreadsParams, |
4735 | + mut results: ListThreadsResults, |
4736 | + ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
4737 | + let mailing_list_name = pry!(pry!(pry!(params.get()).get_name()).to_string()); |
4738 | + log::info!("looking up threads: {}", mailing_list_name); |
4739 | + for list in self.db.lists().unwrap() { |
4740 | + if list.address == mailing_list_name { |
4741 | + let posts = self.db.list_posts(list.pk, None).unwrap(); |
4742 | + log::info!("processing {} posts", posts.len()); |
4743 | + let mut posts_by_hash: HashMap<EnvelopeHash, Post> = HashMap::new(); |
4744 | + let mut envelopes: HashMap<EnvelopeHash, Envelope> = HashMap::new(); |
4745 | + for post in &posts { |
4746 | + let envelope = Envelope::from_bytes(&post.message, None).unwrap(); |
4747 | + let envelope_hash = envelope.hash.clone(); |
4748 | + posts_by_hash.insert(envelope_hash, post.0.clone()); |
4749 | + envelopes.insert(envelope_hash, envelope); |
4750 | + } |
4751 | + let mut threads = Threads::new(posts.len()); |
4752 | + let envelopes = Arc::new(RwLock::new(envelopes)); |
4753 | + threads.amend(&envelopes); |
4754 | + let envelopes = envelopes.read().unwrap(); |
4755 | + let mut root_threads: Vec<(Post, Envelope, usize)> = Vec::new(); |
4756 | + for node in threads.thread_nodes.into_iter() { |
4757 | + if node.1.has_parent() == false { |
4758 | + let n_replies = node.1.children.len(); |
4759 | + let envelope_hash = node.1.message().unwrap(); |
4760 | + let envelope = envelopes.get(&envelope_hash).unwrap(); |
4761 | + let post = posts_by_hash.get(&envelope_hash).unwrap(); |
4762 | + root_threads.push((post.clone(), envelope.clone(), n_replies)); |
4763 | + } |
4764 | + } |
4765 | + let mut threads = results.get().init_threads(root_threads.len() as u32); |
4766 | + for (i, thread) in root_threads.into_iter().enumerate() { |
4767 | + let mut result_thread = threads.reborrow().get(i as u32); |
4768 | + result_thread.set_n_replies(thread.2 as i64); |
4769 | + let mut message = result_thread.init_first(); |
4770 | + message.set_id(thread.0.pk); |
4771 | + message.set_address(thread.0.address.as_str().into()); |
4772 | + message.set_from(thread.1.from()[0].get_email().as_str().into()); |
4773 | + message.set_subject(thread.1.subject.unwrap_or(String::new()).as_str().into()); |
4774 | + message.set_timestamp(thread.1.timestamp as i64); |
4775 | + } |
4776 | + } |
4777 | + } |
4778 | + Promise::ok(()) |
4779 | + } |
4780 | + |
4781 | + fn read_thread( |
4782 | + &mut self, |
4783 | + _: ReadThreadParams, |
4784 | + _: ReadThreadResults, |
4785 | + ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
4786 | + ::capnp::capability::Promise::err(::capnp::Error::unimplemented( |
4787 | + "method server::Server::read_thread not implemented".to_string(), |
4788 | + )) |
4789 | + } |
4790 | + |
4791 | + fn post_message( |
4792 | + &mut self, |
4793 | + _: PostMessageParams, |
4794 | + _: PostMessageResults, |
4795 | + ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
4796 | + ::capnp::capability::Promise::err(::capnp::Error::unimplemented( |
4797 | + "method server::Server::post_message not implemented".to_string(), |
4798 | + )) |
4799 | + } |
4800 | + } |
4801 | + |
4802 | + pub async fn serve(cfg: &Config) -> Result<(), Box<dyn StdError>> { |
4803 | + let db = Connection::open_or_create_db(cfg.mailpot_config())?; |
4804 | + let server = ServerImpl { db }; |
4805 | + let runtime = RpcHelper::<Client, ServerImpl>::new(&cfg.mail.socket_path, server); |
4806 | + runtime.serve().await?; |
4807 | + Ok(()) |
4808 | + } |
4809 | diff --git a/ayllu-spaces/README.md b/ayllu-spaces/README.md |
4810 | new file mode 100644 |
4811 | index 0000000..a158610 |
4812 | --- /dev/null |
4813 | +++ b/ayllu-spaces/README.md |
4814 | @@ -0,0 +1,4 @@ |
4815 | + # ayllu-spaces |
4816 | + |
4817 | + Placeholder for "Code Spaces" like functionality in Ayllu designed around |
4818 | + LXC. |
4819 | diff --git a/ayllu-xmpp/.env b/ayllu-xmpp/.env |
4820 | new file mode 100644 |
4821 | index 0000000..e4a88c4 |
4822 | --- /dev/null |
4823 | +++ b/ayllu-xmpp/.env |
4824 | @@ -0,0 +1 @@ |
4825 | + DATABASE_URL=sqlite://ayllu-xmpp/db/ayllu-xmpp.db |
4826 | diff --git a/ayllu-xmpp/Cargo.lock b/ayllu-xmpp/Cargo.lock |
4827 | new file mode 100644 |
4828 | index 0000000..1e608d2 |
4829 | --- /dev/null |
4830 | +++ b/ayllu-xmpp/Cargo.lock |
4831 | @@ -0,0 +1,2076 @@ |
4832 | + # This file is automatically @generated by Cargo. |
4833 | + # It is not intended for manual editing. |
4834 | + version = 3 |
4835 | + |
4836 | + [[package]] |
4837 | + name = "addr2line" |
4838 | + version = "0.21.0" |
4839 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4840 | + checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" |
4841 | + dependencies = [ |
4842 | + "gimli", |
4843 | + ] |
4844 | + |
4845 | + [[package]] |
4846 | + name = "adler" |
4847 | + version = "1.0.2" |
4848 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4849 | + checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" |
4850 | + |
4851 | + [[package]] |
4852 | + name = "aho-corasick" |
4853 | + version = "1.1.1" |
4854 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4855 | + checksum = "ea5d730647d4fadd988536d06fecce94b7b4f2a7efdae548f1cf4b63205518ab" |
4856 | + dependencies = [ |
4857 | + "memchr", |
4858 | + ] |
4859 | + |
4860 | + [[package]] |
4861 | + name = "async-trait" |
4862 | + version = "0.1.73" |
4863 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4864 | + checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" |
4865 | + dependencies = [ |
4866 | + "proc-macro2", |
4867 | + "quote", |
4868 | + "syn 2.0.37", |
4869 | + ] |
4870 | + |
4871 | + [[package]] |
4872 | + name = "autocfg" |
4873 | + version = "1.1.0" |
4874 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4875 | + checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" |
4876 | + |
4877 | + [[package]] |
4878 | + name = "axum" |
4879 | + version = "0.6.20" |
4880 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4881 | + checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" |
4882 | + dependencies = [ |
4883 | + "async-trait", |
4884 | + "axum-core", |
4885 | + "bitflags 1.3.2", |
4886 | + "bytes", |
4887 | + "futures-util", |
4888 | + "http", |
4889 | + "http-body", |
4890 | + "hyper", |
4891 | + "itoa", |
4892 | + "matchit", |
4893 | + "memchr", |
4894 | + "mime", |
4895 | + "percent-encoding", |
4896 | + "pin-project-lite", |
4897 | + "rustversion", |
4898 | + "serde", |
4899 | + "serde_json", |
4900 | + "serde_path_to_error", |
4901 | + "serde_urlencoded", |
4902 | + "sync_wrapper", |
4903 | + "tokio", |
4904 | + "tower", |
4905 | + "tower-layer", |
4906 | + "tower-service", |
4907 | + ] |
4908 | + |
4909 | + [[package]] |
4910 | + name = "axum-core" |
4911 | + version = "0.3.4" |
4912 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4913 | + checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" |
4914 | + dependencies = [ |
4915 | + "async-trait", |
4916 | + "bytes", |
4917 | + "futures-util", |
4918 | + "http", |
4919 | + "http-body", |
4920 | + "mime", |
4921 | + "rustversion", |
4922 | + "tower-layer", |
4923 | + "tower-service", |
4924 | + ] |
4925 | + |
4926 | + [[package]] |
4927 | + name = "backtrace" |
4928 | + version = "0.3.69" |
4929 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4930 | + checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" |
4931 | + dependencies = [ |
4932 | + "addr2line", |
4933 | + "cc", |
4934 | + "cfg-if", |
4935 | + "libc", |
4936 | + "miniz_oxide", |
4937 | + "object", |
4938 | + "rustc-demangle", |
4939 | + ] |
4940 | + |
4941 | + [[package]] |
4942 | + name = "base64" |
4943 | + version = "0.21.4" |
4944 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4945 | + checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" |
4946 | + |
4947 | + [[package]] |
4948 | + name = "bitflags" |
4949 | + version = "1.3.2" |
4950 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4951 | + checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" |
4952 | + |
4953 | + [[package]] |
4954 | + name = "bitflags" |
4955 | + version = "2.4.0" |
4956 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4957 | + checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" |
4958 | + |
4959 | + [[package]] |
4960 | + name = "blake2" |
4961 | + version = "0.10.6" |
4962 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4963 | + checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" |
4964 | + dependencies = [ |
4965 | + "digest", |
4966 | + ] |
4967 | + |
4968 | + [[package]] |
4969 | + name = "block-buffer" |
4970 | + version = "0.10.4" |
4971 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4972 | + checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" |
4973 | + dependencies = [ |
4974 | + "generic-array", |
4975 | + ] |
4976 | + |
4977 | + [[package]] |
4978 | + name = "bumpalo" |
4979 | + version = "3.14.0" |
4980 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4981 | + checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" |
4982 | + |
4983 | + [[package]] |
4984 | + name = "bytes" |
4985 | + version = "1.5.0" |
4986 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4987 | + checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" |
4988 | + |
4989 | + [[package]] |
4990 | + name = "cc" |
4991 | + version = "1.0.83" |
4992 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
4993 | + checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" |
4994 | + dependencies = [ |
4995 | + "libc", |
4996 | + ] |
4997 | + |
4998 | + [[package]] |
4999 | + name = "cfg-if" |
5000 | + version = "1.0.0" |
5001 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5002 | + checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" |
5003 | + |
5004 | + [[package]] |
5005 | + name = "chrono" |
5006 | + version = "0.4.31" |
5007 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5008 | + checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" |
5009 | + dependencies = [ |
5010 | + "num-traits", |
5011 | + ] |
5012 | + |
5013 | + [[package]] |
5014 | + name = "core-foundation" |
5015 | + version = "0.9.3" |
5016 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5017 | + checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" |
5018 | + dependencies = [ |
5019 | + "core-foundation-sys", |
5020 | + "libc", |
5021 | + ] |
5022 | + |
5023 | + [[package]] |
5024 | + name = "core-foundation-sys" |
5025 | + version = "0.8.4" |
5026 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5027 | + checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" |
5028 | + |
5029 | + [[package]] |
5030 | + name = "cpufeatures" |
5031 | + version = "0.2.9" |
5032 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5033 | + checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" |
5034 | + dependencies = [ |
5035 | + "libc", |
5036 | + ] |
5037 | + |
5038 | + [[package]] |
5039 | + name = "ayllu-xmpp" |
5040 | + version = "0.1.0" |
5041 | + dependencies = [ |
5042 | + "axum", |
5043 | + "hyper", |
5044 | + "serde", |
5045 | + "tokio", |
5046 | + "tower", |
5047 | + "tower-http", |
5048 | + "tracing", |
5049 | + "tracing-subscriber", |
5050 | + "uuid", |
5051 | + "xmpp", |
5052 | + ] |
5053 | + |
5054 | + [[package]] |
5055 | + name = "crypto-common" |
5056 | + version = "0.1.6" |
5057 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5058 | + checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" |
5059 | + dependencies = [ |
5060 | + "generic-array", |
5061 | + "typenum", |
5062 | + ] |
5063 | + |
5064 | + [[package]] |
5065 | + name = "data-encoding" |
5066 | + version = "2.4.0" |
5067 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5068 | + checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" |
5069 | + |
5070 | + [[package]] |
5071 | + name = "digest" |
5072 | + version = "0.10.7" |
5073 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5074 | + checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" |
5075 | + dependencies = [ |
5076 | + "block-buffer", |
5077 | + "crypto-common", |
5078 | + "subtle", |
5079 | + ] |
5080 | + |
5081 | + [[package]] |
5082 | + name = "encoding_rs" |
5083 | + version = "0.8.33" |
5084 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5085 | + checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" |
5086 | + dependencies = [ |
5087 | + "cfg-if", |
5088 | + ] |
5089 | + |
5090 | + [[package]] |
5091 | + name = "enum-as-inner" |
5092 | + version = "0.5.1" |
5093 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5094 | + checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116" |
5095 | + dependencies = [ |
5096 | + "heck", |
5097 | + "proc-macro2", |
5098 | + "quote", |
5099 | + "syn 1.0.109", |
5100 | + ] |
5101 | + |
5102 | + [[package]] |
5103 | + name = "errno" |
5104 | + version = "0.3.3" |
5105 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5106 | + checksum = "136526188508e25c6fef639d7927dfb3e0e3084488bf202267829cf7fc23dbdd" |
5107 | + dependencies = [ |
5108 | + "errno-dragonfly", |
5109 | + "libc", |
5110 | + "windows-sys", |
5111 | + ] |
5112 | + |
5113 | + [[package]] |
5114 | + name = "errno-dragonfly" |
5115 | + version = "0.1.2" |
5116 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5117 | + checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" |
5118 | + dependencies = [ |
5119 | + "cc", |
5120 | + "libc", |
5121 | + ] |
5122 | + |
5123 | + [[package]] |
5124 | + name = "fastrand" |
5125 | + version = "2.0.0" |
5126 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5127 | + checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" |
5128 | + |
5129 | + [[package]] |
5130 | + name = "finl_unicode" |
5131 | + version = "1.2.0" |
5132 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5133 | + checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" |
5134 | + |
5135 | + [[package]] |
5136 | + name = "fnv" |
5137 | + version = "1.0.7" |
5138 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5139 | + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" |
5140 | + |
5141 | + [[package]] |
5142 | + name = "foreign-types" |
5143 | + version = "0.3.2" |
5144 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5145 | + checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" |
5146 | + dependencies = [ |
5147 | + "foreign-types-shared", |
5148 | + ] |
5149 | + |
5150 | + [[package]] |
5151 | + name = "foreign-types-shared" |
5152 | + version = "0.1.1" |
5153 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5154 | + checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" |
5155 | + |
5156 | + [[package]] |
5157 | + name = "form_urlencoded" |
5158 | + version = "1.2.0" |
5159 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5160 | + checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" |
5161 | + dependencies = [ |
5162 | + "percent-encoding", |
5163 | + ] |
5164 | + |
5165 | + [[package]] |
5166 | + name = "futures" |
5167 | + version = "0.3.28" |
5168 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5169 | + checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" |
5170 | + dependencies = [ |
5171 | + "futures-channel", |
5172 | + "futures-core", |
5173 | + "futures-executor", |
5174 | + "futures-io", |
5175 | + "futures-sink", |
5176 | + "futures-task", |
5177 | + "futures-util", |
5178 | + ] |
5179 | + |
5180 | + [[package]] |
5181 | + name = "futures-channel" |
5182 | + version = "0.3.28" |
5183 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5184 | + checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" |
5185 | + dependencies = [ |
5186 | + "futures-core", |
5187 | + "futures-sink", |
5188 | + ] |
5189 | + |
5190 | + [[package]] |
5191 | + name = "futures-core" |
5192 | + version = "0.3.28" |
5193 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5194 | + checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" |
5195 | + |
5196 | + [[package]] |
5197 | + name = "futures-executor" |
5198 | + version = "0.3.28" |
5199 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5200 | + checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" |
5201 | + dependencies = [ |
5202 | + "futures-core", |
5203 | + "futures-task", |
5204 | + "futures-util", |
5205 | + ] |
5206 | + |
5207 | + [[package]] |
5208 | + name = "futures-io" |
5209 | + version = "0.3.28" |
5210 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5211 | + checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" |
5212 | + |
5213 | + [[package]] |
5214 | + name = "futures-macro" |
5215 | + version = "0.3.28" |
5216 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5217 | + checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" |
5218 | + dependencies = [ |
5219 | + "proc-macro2", |
5220 | + "quote", |
5221 | + "syn 2.0.37", |
5222 | + ] |
5223 | + |
5224 | + [[package]] |
5225 | + name = "futures-sink" |
5226 | + version = "0.3.28" |
5227 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5228 | + checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" |
5229 | + |
5230 | + [[package]] |
5231 | + name = "futures-task" |
5232 | + version = "0.3.28" |
5233 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5234 | + checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" |
5235 | + |
5236 | + [[package]] |
5237 | + name = "futures-util" |
5238 | + version = "0.3.28" |
5239 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5240 | + checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" |
5241 | + dependencies = [ |
5242 | + "futures-channel", |
5243 | + "futures-core", |
5244 | + "futures-io", |
5245 | + "futures-macro", |
5246 | + "futures-sink", |
5247 | + "futures-task", |
5248 | + "memchr", |
5249 | + "pin-project-lite", |
5250 | + "pin-utils", |
5251 | + "slab", |
5252 | + ] |
5253 | + |
5254 | + [[package]] |
5255 | + name = "generic-array" |
5256 | + version = "0.14.7" |
5257 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5258 | + checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" |
5259 | + dependencies = [ |
5260 | + "typenum", |
5261 | + "version_check", |
5262 | + ] |
5263 | + |
5264 | + [[package]] |
5265 | + name = "getrandom" |
5266 | + version = "0.2.10" |
5267 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5268 | + checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" |
5269 | + dependencies = [ |
5270 | + "cfg-if", |
5271 | + "libc", |
5272 | + "wasi", |
5273 | + ] |
5274 | + |
5275 | + [[package]] |
5276 | + name = "gimli" |
5277 | + version = "0.28.0" |
5278 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5279 | + checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" |
5280 | + |
5281 | + [[package]] |
5282 | + name = "h2" |
5283 | + version = "0.3.21" |
5284 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5285 | + checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" |
5286 | + dependencies = [ |
5287 | + "bytes", |
5288 | + "fnv", |
5289 | + "futures-core", |
5290 | + "futures-sink", |
5291 | + "futures-util", |
5292 | + "http", |
5293 | + "indexmap", |
5294 | + "slab", |
5295 | + "tokio", |
5296 | + "tokio-util", |
5297 | + "tracing", |
5298 | + ] |
5299 | + |
5300 | + [[package]] |
5301 | + name = "hashbrown" |
5302 | + version = "0.12.3" |
5303 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5304 | + checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" |
5305 | + |
5306 | + [[package]] |
5307 | + name = "heck" |
5308 | + version = "0.4.1" |
5309 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5310 | + checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" |
5311 | + |
5312 | + [[package]] |
5313 | + name = "hermit-abi" |
5314 | + version = "0.3.3" |
5315 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5316 | + checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" |
5317 | + |
5318 | + [[package]] |
5319 | + name = "hmac" |
5320 | + version = "0.12.1" |
5321 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5322 | + checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" |
5323 | + dependencies = [ |
5324 | + "digest", |
5325 | + ] |
5326 | + |
5327 | + [[package]] |
5328 | + name = "hostname" |
5329 | + version = "0.3.1" |
5330 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5331 | + checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" |
5332 | + dependencies = [ |
5333 | + "libc", |
5334 | + "match_cfg", |
5335 | + "winapi", |
5336 | + ] |
5337 | + |
5338 | + [[package]] |
5339 | + name = "http" |
5340 | + version = "0.2.9" |
5341 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5342 | + checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" |
5343 | + dependencies = [ |
5344 | + "bytes", |
5345 | + "fnv", |
5346 | + "itoa", |
5347 | + ] |
5348 | + |
5349 | + [[package]] |
5350 | + name = "http-body" |
5351 | + version = "0.4.5" |
5352 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5353 | + checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" |
5354 | + dependencies = [ |
5355 | + "bytes", |
5356 | + "http", |
5357 | + "pin-project-lite", |
5358 | + ] |
5359 | + |
5360 | + [[package]] |
5361 | + name = "http-range-header" |
5362 | + version = "0.3.1" |
5363 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5364 | + checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" |
5365 | + |
5366 | + [[package]] |
5367 | + name = "httparse" |
5368 | + version = "1.8.0" |
5369 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5370 | + checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" |
5371 | + |
5372 | + [[package]] |
5373 | + name = "httpdate" |
5374 | + version = "1.0.3" |
5375 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5376 | + checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" |
5377 | + |
5378 | + [[package]] |
5379 | + name = "hyper" |
5380 | + version = "0.14.27" |
5381 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5382 | + checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" |
5383 | + dependencies = [ |
5384 | + "bytes", |
5385 | + "futures-channel", |
5386 | + "futures-core", |
5387 | + "futures-util", |
5388 | + "h2", |
5389 | + "http", |
5390 | + "http-body", |
5391 | + "httparse", |
5392 | + "httpdate", |
5393 | + "itoa", |
5394 | + "pin-project-lite", |
5395 | + "socket2 0.4.9", |
5396 | + "tokio", |
5397 | + "tower-service", |
5398 | + "tracing", |
5399 | + "want", |
5400 | + ] |
5401 | + |
5402 | + [[package]] |
5403 | + name = "hyper-tls" |
5404 | + version = "0.5.0" |
5405 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5406 | + checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" |
5407 | + dependencies = [ |
5408 | + "bytes", |
5409 | + "hyper", |
5410 | + "native-tls", |
5411 | + "tokio", |
5412 | + "tokio-native-tls", |
5413 | + ] |
5414 | + |
5415 | + [[package]] |
5416 | + name = "idna" |
5417 | + version = "0.2.3" |
5418 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5419 | + checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" |
5420 | + dependencies = [ |
5421 | + "matches", |
5422 | + "unicode-bidi", |
5423 | + "unicode-normalization", |
5424 | + ] |
5425 | + |
5426 | + [[package]] |
5427 | + name = "idna" |
5428 | + version = "0.4.0" |
5429 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5430 | + checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" |
5431 | + dependencies = [ |
5432 | + "unicode-bidi", |
5433 | + "unicode-normalization", |
5434 | + ] |
5435 | + |
5436 | + [[package]] |
5437 | + name = "indexmap" |
5438 | + version = "1.9.3" |
5439 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5440 | + checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" |
5441 | + dependencies = [ |
5442 | + "autocfg", |
5443 | + "hashbrown", |
5444 | + ] |
5445 | + |
5446 | + [[package]] |
5447 | + name = "ipconfig" |
5448 | + version = "0.3.2" |
5449 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5450 | + checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" |
5451 | + dependencies = [ |
5452 | + "socket2 0.5.4", |
5453 | + "widestring", |
5454 | + "windows-sys", |
5455 | + "winreg", |
5456 | + ] |
5457 | + |
5458 | + [[package]] |
5459 | + name = "ipnet" |
5460 | + version = "2.8.0" |
5461 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5462 | + checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" |
5463 | + |
5464 | + [[package]] |
5465 | + name = "itoa" |
5466 | + version = "1.0.9" |
5467 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5468 | + checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" |
5469 | + |
5470 | + [[package]] |
5471 | + name = "jid" |
5472 | + version = "0.10.0" |
5473 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5474 | + checksum = "b4a52cacd869b804660986b10aa2076c3a4b6da644c7198f9fd0b613f4a7b249" |
5475 | + dependencies = [ |
5476 | + "memchr", |
5477 | + "minidom", |
5478 | + "stringprep", |
5479 | + ] |
5480 | + |
5481 | + [[package]] |
5482 | + name = "js-sys" |
5483 | + version = "0.3.64" |
5484 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5485 | + checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" |
5486 | + dependencies = [ |
5487 | + "wasm-bindgen", |
5488 | + ] |
5489 | + |
5490 | + [[package]] |
5491 | + name = "keccak" |
5492 | + version = "0.1.4" |
5493 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5494 | + checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" |
5495 | + dependencies = [ |
5496 | + "cpufeatures", |
5497 | + ] |
5498 | + |
5499 | + [[package]] |
5500 | + name = "lazy_static" |
5501 | + version = "1.4.0" |
5502 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5503 | + checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" |
5504 | + |
5505 | + [[package]] |
5506 | + name = "libc" |
5507 | + version = "0.2.148" |
5508 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5509 | + checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" |
5510 | + |
5511 | + [[package]] |
5512 | + name = "linked-hash-map" |
5513 | + version = "0.5.6" |
5514 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5515 | + checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" |
5516 | + |
5517 | + [[package]] |
5518 | + name = "linux-raw-sys" |
5519 | + version = "0.4.7" |
5520 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5521 | + checksum = "1a9bad9f94746442c783ca431b22403b519cd7fbeed0533fdd6328b2f2212128" |
5522 | + |
5523 | + [[package]] |
5524 | + name = "lock_api" |
5525 | + version = "0.4.10" |
5526 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5527 | + checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" |
5528 | + dependencies = [ |
5529 | + "autocfg", |
5530 | + "scopeguard", |
5531 | + ] |
5532 | + |
5533 | + [[package]] |
5534 | + name = "log" |
5535 | + version = "0.4.20" |
5536 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5537 | + checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" |
5538 | + |
5539 | + [[package]] |
5540 | + name = "lru-cache" |
5541 | + version = "0.1.2" |
5542 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5543 | + checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" |
5544 | + dependencies = [ |
5545 | + "linked-hash-map", |
5546 | + ] |
5547 | + |
5548 | + [[package]] |
5549 | + name = "match_cfg" |
5550 | + version = "0.1.0" |
5551 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5552 | + checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" |
5553 | + |
5554 | + [[package]] |
5555 | + name = "matchers" |
5556 | + version = "0.1.0" |
5557 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5558 | + checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" |
5559 | + dependencies = [ |
5560 | + "regex-automata 0.1.10", |
5561 | + ] |
5562 | + |
5563 | + [[package]] |
5564 | + name = "matches" |
5565 | + version = "0.1.10" |
5566 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5567 | + checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" |
5568 | + |
5569 | + [[package]] |
5570 | + name = "matchit" |
5571 | + version = "0.7.3" |
5572 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5573 | + checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" |
5574 | + |
5575 | + [[package]] |
5576 | + name = "memchr" |
5577 | + version = "2.6.3" |
5578 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5579 | + checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" |
5580 | + |
5581 | + [[package]] |
5582 | + name = "mime" |
5583 | + version = "0.3.17" |
5584 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5585 | + checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" |
5586 | + |
5587 | + [[package]] |
5588 | + name = "minidom" |
5589 | + version = "0.15.2" |
5590 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5591 | + checksum = "f45614075738ce1b77a1768912a60c0227525971b03e09122a05b8a34a2a6278" |
5592 | + dependencies = [ |
5593 | + "rxml", |
5594 | + ] |
5595 | + |
5596 | + [[package]] |
5597 | + name = "miniz_oxide" |
5598 | + version = "0.7.1" |
5599 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5600 | + checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" |
5601 | + dependencies = [ |
5602 | + "adler", |
5603 | + ] |
5604 | + |
5605 | + [[package]] |
5606 | + name = "mio" |
5607 | + version = "0.8.8" |
5608 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5609 | + checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" |
5610 | + dependencies = [ |
5611 | + "libc", |
5612 | + "wasi", |
5613 | + "windows-sys", |
5614 | + ] |
5615 | + |
5616 | + [[package]] |
5617 | + name = "native-tls" |
5618 | + version = "0.2.11" |
5619 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5620 | + checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" |
5621 | + dependencies = [ |
5622 | + "lazy_static", |
5623 | + "libc", |
5624 | + "log", |
5625 | + "openssl", |
5626 | + "openssl-probe", |
5627 | + "openssl-sys", |
5628 | + "schannel", |
5629 | + "security-framework", |
5630 | + "security-framework-sys", |
5631 | + "tempfile", |
5632 | + ] |
5633 | + |
5634 | + [[package]] |
5635 | + name = "nu-ansi-term" |
5636 | + version = "0.46.0" |
5637 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5638 | + checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" |
5639 | + dependencies = [ |
5640 | + "overload", |
5641 | + "winapi", |
5642 | + ] |
5643 | + |
5644 | + [[package]] |
5645 | + name = "num-traits" |
5646 | + version = "0.2.16" |
5647 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5648 | + checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" |
5649 | + dependencies = [ |
5650 | + "autocfg", |
5651 | + ] |
5652 | + |
5653 | + [[package]] |
5654 | + name = "num_cpus" |
5655 | + version = "1.16.0" |
5656 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5657 | + checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" |
5658 | + dependencies = [ |
5659 | + "hermit-abi", |
5660 | + "libc", |
5661 | + ] |
5662 | + |
5663 | + [[package]] |
5664 | + name = "object" |
5665 | + version = "0.32.1" |
5666 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5667 | + checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" |
5668 | + dependencies = [ |
5669 | + "memchr", |
5670 | + ] |
5671 | + |
5672 | + [[package]] |
5673 | + name = "once_cell" |
5674 | + version = "1.18.0" |
5675 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5676 | + checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" |
5677 | + |
5678 | + [[package]] |
5679 | + name = "openssl" |
5680 | + version = "0.10.57" |
5681 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5682 | + checksum = "bac25ee399abb46215765b1cb35bc0212377e58a061560d8b29b024fd0430e7c" |
5683 | + dependencies = [ |
5684 | + "bitflags 2.4.0", |
5685 | + "cfg-if", |
5686 | + "foreign-types", |
5687 | + "libc", |
5688 | + "once_cell", |
5689 | + "openssl-macros", |
5690 | + "openssl-sys", |
5691 | + ] |
5692 | + |
5693 | + [[package]] |
5694 | + name = "openssl-macros" |
5695 | + version = "0.1.1" |
5696 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5697 | + checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" |
5698 | + dependencies = [ |
5699 | + "proc-macro2", |
5700 | + "quote", |
5701 | + "syn 2.0.37", |
5702 | + ] |
5703 | + |
5704 | + [[package]] |
5705 | + name = "openssl-probe" |
5706 | + version = "0.1.5" |
5707 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5708 | + checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" |
5709 | + |
5710 | + [[package]] |
5711 | + name = "openssl-sys" |
5712 | + version = "0.9.93" |
5713 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5714 | + checksum = "db4d56a4c0478783083cfafcc42493dd4a981d41669da64b4572a2a089b51b1d" |
5715 | + dependencies = [ |
5716 | + "cc", |
5717 | + "libc", |
5718 | + "pkg-config", |
5719 | + "vcpkg", |
5720 | + ] |
5721 | + |
5722 | + [[package]] |
5723 | + name = "overload" |
5724 | + version = "0.1.1" |
5725 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5726 | + checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" |
5727 | + |
5728 | + [[package]] |
5729 | + name = "parking_lot" |
5730 | + version = "0.12.1" |
5731 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5732 | + checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" |
5733 | + dependencies = [ |
5734 | + "lock_api", |
5735 | + "parking_lot_core", |
5736 | + ] |
5737 | + |
5738 | + [[package]] |
5739 | + name = "parking_lot_core" |
5740 | + version = "0.9.8" |
5741 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5742 | + checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" |
5743 | + dependencies = [ |
5744 | + "cfg-if", |
5745 | + "libc", |
5746 | + "redox_syscall", |
5747 | + "smallvec", |
5748 | + "windows-targets", |
5749 | + ] |
5750 | + |
5751 | + [[package]] |
5752 | + name = "pbkdf2" |
5753 | + version = "0.12.2" |
5754 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5755 | + checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" |
5756 | + dependencies = [ |
5757 | + "digest", |
5758 | + ] |
5759 | + |
5760 | + [[package]] |
5761 | + name = "percent-encoding" |
5762 | + version = "2.3.0" |
5763 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5764 | + checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" |
5765 | + |
5766 | + [[package]] |
5767 | + name = "pin-project" |
5768 | + version = "1.1.3" |
5769 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5770 | + checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" |
5771 | + dependencies = [ |
5772 | + "pin-project-internal", |
5773 | + ] |
5774 | + |
5775 | + [[package]] |
5776 | + name = "pin-project-internal" |
5777 | + version = "1.1.3" |
5778 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5779 | + checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" |
5780 | + dependencies = [ |
5781 | + "proc-macro2", |
5782 | + "quote", |
5783 | + "syn 2.0.37", |
5784 | + ] |
5785 | + |
5786 | + [[package]] |
5787 | + name = "pin-project-lite" |
5788 | + version = "0.2.13" |
5789 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5790 | + checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" |
5791 | + |
5792 | + [[package]] |
5793 | + name = "pin-utils" |
5794 | + version = "0.1.0" |
5795 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5796 | + checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" |
5797 | + |
5798 | + [[package]] |
5799 | + name = "pkg-config" |
5800 | + version = "0.3.27" |
5801 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5802 | + checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" |
5803 | + |
5804 | + [[package]] |
5805 | + name = "ppv-lite86" |
5806 | + version = "0.2.17" |
5807 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5808 | + checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" |
5809 | + |
5810 | + [[package]] |
5811 | + name = "proc-macro2" |
5812 | + version = "1.0.67" |
5813 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5814 | + checksum = "3d433d9f1a3e8c1263d9456598b16fec66f4acc9a74dacffd35c7bb09b3a1328" |
5815 | + dependencies = [ |
5816 | + "unicode-ident", |
5817 | + ] |
5818 | + |
5819 | + [[package]] |
5820 | + name = "quick-error" |
5821 | + version = "1.2.3" |
5822 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5823 | + checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" |
5824 | + |
5825 | + [[package]] |
5826 | + name = "quote" |
5827 | + version = "1.0.33" |
5828 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5829 | + checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" |
5830 | + dependencies = [ |
5831 | + "proc-macro2", |
5832 | + ] |
5833 | + |
5834 | + [[package]] |
5835 | + name = "rand" |
5836 | + version = "0.8.5" |
5837 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5838 | + checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" |
5839 | + dependencies = [ |
5840 | + "libc", |
5841 | + "rand_chacha", |
5842 | + "rand_core", |
5843 | + ] |
5844 | + |
5845 | + [[package]] |
5846 | + name = "rand_chacha" |
5847 | + version = "0.3.1" |
5848 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5849 | + checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" |
5850 | + dependencies = [ |
5851 | + "ppv-lite86", |
5852 | + "rand_core", |
5853 | + ] |
5854 | + |
5855 | + [[package]] |
5856 | + name = "rand_core" |
5857 | + version = "0.6.4" |
5858 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5859 | + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" |
5860 | + dependencies = [ |
5861 | + "getrandom", |
5862 | + ] |
5863 | + |
5864 | + [[package]] |
5865 | + name = "redox_syscall" |
5866 | + version = "0.3.5" |
5867 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5868 | + checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" |
5869 | + dependencies = [ |
5870 | + "bitflags 1.3.2", |
5871 | + ] |
5872 | + |
5873 | + [[package]] |
5874 | + name = "regex" |
5875 | + version = "1.9.5" |
5876 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5877 | + checksum = "697061221ea1b4a94a624f67d0ae2bfe4e22b8a17b6a192afb11046542cc8c47" |
5878 | + dependencies = [ |
5879 | + "aho-corasick", |
5880 | + "memchr", |
5881 | + "regex-automata 0.3.8", |
5882 | + "regex-syntax 0.7.5", |
5883 | + ] |
5884 | + |
5885 | + [[package]] |
5886 | + name = "regex-automata" |
5887 | + version = "0.1.10" |
5888 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5889 | + checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" |
5890 | + dependencies = [ |
5891 | + "regex-syntax 0.6.29", |
5892 | + ] |
5893 | + |
5894 | + [[package]] |
5895 | + name = "regex-automata" |
5896 | + version = "0.3.8" |
5897 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5898 | + checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795" |
5899 | + dependencies = [ |
5900 | + "aho-corasick", |
5901 | + "memchr", |
5902 | + "regex-syntax 0.7.5", |
5903 | + ] |
5904 | + |
5905 | + [[package]] |
5906 | + name = "regex-syntax" |
5907 | + version = "0.6.29" |
5908 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5909 | + checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" |
5910 | + |
5911 | + [[package]] |
5912 | + name = "regex-syntax" |
5913 | + version = "0.7.5" |
5914 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5915 | + checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" |
5916 | + |
5917 | + [[package]] |
5918 | + name = "reqwest" |
5919 | + version = "0.11.20" |
5920 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5921 | + checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" |
5922 | + dependencies = [ |
5923 | + "base64", |
5924 | + "bytes", |
5925 | + "encoding_rs", |
5926 | + "futures-core", |
5927 | + "futures-util", |
5928 | + "h2", |
5929 | + "http", |
5930 | + "http-body", |
5931 | + "hyper", |
5932 | + "hyper-tls", |
5933 | + "ipnet", |
5934 | + "js-sys", |
5935 | + "log", |
5936 | + "mime", |
5937 | + "native-tls", |
5938 | + "once_cell", |
5939 | + "percent-encoding", |
5940 | + "pin-project-lite", |
5941 | + "serde", |
5942 | + "serde_json", |
5943 | + "serde_urlencoded", |
5944 | + "tokio", |
5945 | + "tokio-native-tls", |
5946 | + "tokio-util", |
5947 | + "tower-service", |
5948 | + "url", |
5949 | + "wasm-bindgen", |
5950 | + "wasm-bindgen-futures", |
5951 | + "wasm-streams", |
5952 | + "web-sys", |
5953 | + "winreg", |
5954 | + ] |
5955 | + |
5956 | + [[package]] |
5957 | + name = "resolv-conf" |
5958 | + version = "0.7.0" |
5959 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5960 | + checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" |
5961 | + dependencies = [ |
5962 | + "hostname", |
5963 | + "quick-error", |
5964 | + ] |
5965 | + |
5966 | + [[package]] |
5967 | + name = "rustc-demangle" |
5968 | + version = "0.1.23" |
5969 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5970 | + checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" |
5971 | + |
5972 | + [[package]] |
5973 | + name = "rustc_version" |
5974 | + version = "0.4.0" |
5975 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5976 | + checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" |
5977 | + dependencies = [ |
5978 | + "semver", |
5979 | + ] |
5980 | + |
5981 | + [[package]] |
5982 | + name = "rustix" |
5983 | + version = "0.38.14" |
5984 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5985 | + checksum = "747c788e9ce8e92b12cd485c49ddf90723550b654b32508f979b71a7b1ecda4f" |
5986 | + dependencies = [ |
5987 | + "bitflags 2.4.0", |
5988 | + "errno", |
5989 | + "libc", |
5990 | + "linux-raw-sys", |
5991 | + "windows-sys", |
5992 | + ] |
5993 | + |
5994 | + [[package]] |
5995 | + name = "rustversion" |
5996 | + version = "1.0.14" |
5997 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
5998 | + checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" |
5999 | + |
6000 | + [[package]] |
6001 | + name = "rxml" |
6002 | + version = "0.9.1" |
6003 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6004 | + checksum = "a98f186c7a2f3abbffb802984b7f1dfd65dac8be1aafdaabbca4137f53f0dff7" |
6005 | + dependencies = [ |
6006 | + "bytes", |
6007 | + "pin-project-lite", |
6008 | + "rxml_validation", |
6009 | + "smartstring", |
6010 | + "tokio", |
6011 | + ] |
6012 | + |
6013 | + [[package]] |
6014 | + name = "rxml_validation" |
6015 | + version = "0.9.1" |
6016 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6017 | + checksum = "22a197350ece202f19a166d1ad6d9d6de145e1d2a8ef47db299abe164dbd7530" |
6018 | + |
6019 | + [[package]] |
6020 | + name = "ryu" |
6021 | + version = "1.0.15" |
6022 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6023 | + checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" |
6024 | + |
6025 | + [[package]] |
6026 | + name = "sasl" |
6027 | + version = "0.5.1" |
6028 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6029 | + checksum = "27a9f72398d92896188b100e5224a4f190c9abe5273b98cb1b5a61505be3143e" |
6030 | + dependencies = [ |
6031 | + "base64", |
6032 | + "getrandom", |
6033 | + "hmac", |
6034 | + "pbkdf2", |
6035 | + "sha-1", |
6036 | + "sha2", |
6037 | + ] |
6038 | + |
6039 | + [[package]] |
6040 | + name = "schannel" |
6041 | + version = "0.1.22" |
6042 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6043 | + checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" |
6044 | + dependencies = [ |
6045 | + "windows-sys", |
6046 | + ] |
6047 | + |
6048 | + [[package]] |
6049 | + name = "scopeguard" |
6050 | + version = "1.2.0" |
6051 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6052 | + checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" |
6053 | + |
6054 | + [[package]] |
6055 | + name = "security-framework" |
6056 | + version = "2.9.2" |
6057 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6058 | + checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" |
6059 | + dependencies = [ |
6060 | + "bitflags 1.3.2", |
6061 | + "core-foundation", |
6062 | + "core-foundation-sys", |
6063 | + "libc", |
6064 | + "security-framework-sys", |
6065 | + ] |
6066 | + |
6067 | + [[package]] |
6068 | + name = "security-framework-sys" |
6069 | + version = "2.9.1" |
6070 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6071 | + checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" |
6072 | + dependencies = [ |
6073 | + "core-foundation-sys", |
6074 | + "libc", |
6075 | + ] |
6076 | + |
6077 | + [[package]] |
6078 | + name = "semver" |
6079 | + version = "1.0.18" |
6080 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6081 | + checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" |
6082 | + |
6083 | + [[package]] |
6084 | + name = "serde" |
6085 | + version = "1.0.188" |
6086 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6087 | + checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" |
6088 | + dependencies = [ |
6089 | + "serde_derive", |
6090 | + ] |
6091 | + |
6092 | + [[package]] |
6093 | + name = "serde_derive" |
6094 | + version = "1.0.188" |
6095 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6096 | + checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" |
6097 | + dependencies = [ |
6098 | + "proc-macro2", |
6099 | + "quote", |
6100 | + "syn 2.0.37", |
6101 | + ] |
6102 | + |
6103 | + [[package]] |
6104 | + name = "serde_json" |
6105 | + version = "1.0.107" |
6106 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6107 | + checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" |
6108 | + dependencies = [ |
6109 | + "itoa", |
6110 | + "ryu", |
6111 | + "serde", |
6112 | + ] |
6113 | + |
6114 | + [[package]] |
6115 | + name = "serde_path_to_error" |
6116 | + version = "0.1.14" |
6117 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6118 | + checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" |
6119 | + dependencies = [ |
6120 | + "itoa", |
6121 | + "serde", |
6122 | + ] |
6123 | + |
6124 | + [[package]] |
6125 | + name = "serde_urlencoded" |
6126 | + version = "0.7.1" |
6127 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6128 | + checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" |
6129 | + dependencies = [ |
6130 | + "form_urlencoded", |
6131 | + "itoa", |
6132 | + "ryu", |
6133 | + "serde", |
6134 | + ] |
6135 | + |
6136 | + [[package]] |
6137 | + name = "sha-1" |
6138 | + version = "0.10.1" |
6139 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6140 | + checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" |
6141 | + dependencies = [ |
6142 | + "cfg-if", |
6143 | + "cpufeatures", |
6144 | + "digest", |
6145 | + ] |
6146 | + |
6147 | + [[package]] |
6148 | + name = "sha1" |
6149 | + version = "0.10.6" |
6150 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6151 | + checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" |
6152 | + dependencies = [ |
6153 | + "cfg-if", |
6154 | + "cpufeatures", |
6155 | + "digest", |
6156 | + ] |
6157 | + |
6158 | + [[package]] |
6159 | + name = "sha2" |
6160 | + version = "0.10.7" |
6161 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6162 | + checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" |
6163 | + dependencies = [ |
6164 | + "cfg-if", |
6165 | + "cpufeatures", |
6166 | + "digest", |
6167 | + ] |
6168 | + |
6169 | + [[package]] |
6170 | + name = "sha3" |
6171 | + version = "0.10.8" |
6172 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6173 | + checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" |
6174 | + dependencies = [ |
6175 | + "digest", |
6176 | + "keccak", |
6177 | + ] |
6178 | + |
6179 | + [[package]] |
6180 | + name = "sharded-slab" |
6181 | + version = "0.1.4" |
6182 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6183 | + checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" |
6184 | + dependencies = [ |
6185 | + "lazy_static", |
6186 | + ] |
6187 | + |
6188 | + [[package]] |
6189 | + name = "signal-hook-registry" |
6190 | + version = "1.4.1" |
6191 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6192 | + checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" |
6193 | + dependencies = [ |
6194 | + "libc", |
6195 | + ] |
6196 | + |
6197 | + [[package]] |
6198 | + name = "slab" |
6199 | + version = "0.4.9" |
6200 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6201 | + checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" |
6202 | + dependencies = [ |
6203 | + "autocfg", |
6204 | + ] |
6205 | + |
6206 | + [[package]] |
6207 | + name = "smallvec" |
6208 | + version = "1.11.1" |
6209 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6210 | + checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" |
6211 | + |
6212 | + [[package]] |
6213 | + name = "smartstring" |
6214 | + version = "1.0.1" |
6215 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6216 | + checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" |
6217 | + dependencies = [ |
6218 | + "autocfg", |
6219 | + "static_assertions", |
6220 | + "version_check", |
6221 | + ] |
6222 | + |
6223 | + [[package]] |
6224 | + name = "socket2" |
6225 | + version = "0.4.9" |
6226 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6227 | + checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" |
6228 | + dependencies = [ |
6229 | + "libc", |
6230 | + "winapi", |
6231 | + ] |
6232 | + |
6233 | + [[package]] |
6234 | + name = "socket2" |
6235 | + version = "0.5.4" |
6236 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6237 | + checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" |
6238 | + dependencies = [ |
6239 | + "libc", |
6240 | + "windows-sys", |
6241 | + ] |
6242 | + |
6243 | + [[package]] |
6244 | + name = "static_assertions" |
6245 | + version = "1.1.0" |
6246 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6247 | + checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" |
6248 | + |
6249 | + [[package]] |
6250 | + name = "stringprep" |
6251 | + version = "0.1.4" |
6252 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6253 | + checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6" |
6254 | + dependencies = [ |
6255 | + "finl_unicode", |
6256 | + "unicode-bidi", |
6257 | + "unicode-normalization", |
6258 | + ] |
6259 | + |
6260 | + [[package]] |
6261 | + name = "subtle" |
6262 | + version = "2.5.0" |
6263 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6264 | + checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" |
6265 | + |
6266 | + [[package]] |
6267 | + name = "syn" |
6268 | + version = "1.0.109" |
6269 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6270 | + checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" |
6271 | + dependencies = [ |
6272 | + "proc-macro2", |
6273 | + "quote", |
6274 | + "unicode-ident", |
6275 | + ] |
6276 | + |
6277 | + [[package]] |
6278 | + name = "syn" |
6279 | + version = "2.0.37" |
6280 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6281 | + checksum = "7303ef2c05cd654186cb250d29049a24840ca25d2747c25c0381c8d9e2f582e8" |
6282 | + dependencies = [ |
6283 | + "proc-macro2", |
6284 | + "quote", |
6285 | + "unicode-ident", |
6286 | + ] |
6287 | + |
6288 | + [[package]] |
6289 | + name = "sync_wrapper" |
6290 | + version = "0.1.2" |
6291 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6292 | + checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" |
6293 | + |
6294 | + [[package]] |
6295 | + name = "tempfile" |
6296 | + version = "3.8.0" |
6297 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6298 | + checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" |
6299 | + dependencies = [ |
6300 | + "cfg-if", |
6301 | + "fastrand", |
6302 | + "redox_syscall", |
6303 | + "rustix", |
6304 | + "windows-sys", |
6305 | + ] |
6306 | + |
6307 | + [[package]] |
6308 | + name = "thiserror" |
6309 | + version = "1.0.48" |
6310 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6311 | + checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" |
6312 | + dependencies = [ |
6313 | + "thiserror-impl", |
6314 | + ] |
6315 | + |
6316 | + [[package]] |
6317 | + name = "thiserror-impl" |
6318 | + version = "1.0.48" |
6319 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6320 | + checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" |
6321 | + dependencies = [ |
6322 | + "proc-macro2", |
6323 | + "quote", |
6324 | + "syn 2.0.37", |
6325 | + ] |
6326 | + |
6327 | + [[package]] |
6328 | + name = "thread_local" |
6329 | + version = "1.1.7" |
6330 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6331 | + checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" |
6332 | + dependencies = [ |
6333 | + "cfg-if", |
6334 | + "once_cell", |
6335 | + ] |
6336 | + |
6337 | + [[package]] |
6338 | + name = "tinyvec" |
6339 | + version = "1.6.0" |
6340 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6341 | + checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" |
6342 | + dependencies = [ |
6343 | + "tinyvec_macros", |
6344 | + ] |
6345 | + |
6346 | + [[package]] |
6347 | + name = "tinyvec_macros" |
6348 | + version = "0.1.1" |
6349 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6350 | + checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" |
6351 | + |
6352 | + [[package]] |
6353 | + name = "tokio" |
6354 | + version = "1.32.0" |
6355 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6356 | + checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" |
6357 | + dependencies = [ |
6358 | + "backtrace", |
6359 | + "bytes", |
6360 | + "libc", |
6361 | + "mio", |
6362 | + "num_cpus", |
6363 | + "parking_lot", |
6364 | + "pin-project-lite", |
6365 | + "signal-hook-registry", |
6366 | + "socket2 0.5.4", |
6367 | + "tokio-macros", |
6368 | + "windows-sys", |
6369 | + ] |
6370 | + |
6371 | + [[package]] |
6372 | + name = "tokio-macros" |
6373 | + version = "2.1.0" |
6374 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6375 | + checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" |
6376 | + dependencies = [ |
6377 | + "proc-macro2", |
6378 | + "quote", |
6379 | + "syn 2.0.37", |
6380 | + ] |
6381 | + |
6382 | + [[package]] |
6383 | + name = "tokio-native-tls" |
6384 | + version = "0.3.1" |
6385 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6386 | + checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" |
6387 | + dependencies = [ |
6388 | + "native-tls", |
6389 | + "tokio", |
6390 | + ] |
6391 | + |
6392 | + [[package]] |
6393 | + name = "tokio-stream" |
6394 | + version = "0.1.14" |
6395 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6396 | + checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" |
6397 | + dependencies = [ |
6398 | + "futures-core", |
6399 | + "pin-project-lite", |
6400 | + "tokio", |
6401 | + ] |
6402 | + |
6403 | + [[package]] |
6404 | + name = "tokio-util" |
6405 | + version = "0.7.9" |
6406 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6407 | + checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" |
6408 | + dependencies = [ |
6409 | + "bytes", |
6410 | + "futures-core", |
6411 | + "futures-sink", |
6412 | + "pin-project-lite", |
6413 | + "tokio", |
6414 | + "tracing", |
6415 | + ] |
6416 | + |
6417 | + [[package]] |
6418 | + name = "tokio-xmpp" |
6419 | + version = "3.4.0" |
6420 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6421 | + checksum = "09042a913bfef08dbf2d81524c151f7399b7892c9b12650f42711fc804dc5711" |
6422 | + dependencies = [ |
6423 | + "bytes", |
6424 | + "futures", |
6425 | + "idna 0.4.0", |
6426 | + "log", |
6427 | + "minidom", |
6428 | + "native-tls", |
6429 | + "rand", |
6430 | + "rustc_version", |
6431 | + "rxml", |
6432 | + "sasl", |
6433 | + "tokio", |
6434 | + "tokio-native-tls", |
6435 | + "tokio-stream", |
6436 | + "tokio-util", |
6437 | + "trust-dns-proto", |
6438 | + "trust-dns-resolver", |
6439 | + "xmpp-parsers", |
6440 | + ] |
6441 | + |
6442 | + [[package]] |
6443 | + name = "tower" |
6444 | + version = "0.4.13" |
6445 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6446 | + checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" |
6447 | + dependencies = [ |
6448 | + "futures-core", |
6449 | + "futures-util", |
6450 | + "pin-project", |
6451 | + "pin-project-lite", |
6452 | + "tokio", |
6453 | + "tower-layer", |
6454 | + "tower-service", |
6455 | + "tracing", |
6456 | + ] |
6457 | + |
6458 | + [[package]] |
6459 | + name = "tower-http" |
6460 | + version = "0.4.4" |
6461 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6462 | + checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" |
6463 | + dependencies = [ |
6464 | + "bitflags 2.4.0", |
6465 | + "bytes", |
6466 | + "futures-core", |
6467 | + "futures-util", |
6468 | + "http", |
6469 | + "http-body", |
6470 | + "http-range-header", |
6471 | + "pin-project-lite", |
6472 | + "tower-layer", |
6473 | + "tower-service", |
6474 | + "tracing", |
6475 | + ] |
6476 | + |
6477 | + [[package]] |
6478 | + name = "tower-layer" |
6479 | + version = "0.3.2" |
6480 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6481 | + checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" |
6482 | + |
6483 | + [[package]] |
6484 | + name = "tower-service" |
6485 | + version = "0.3.2" |
6486 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6487 | + checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" |
6488 | + |
6489 | + [[package]] |
6490 | + name = "tracing" |
6491 | + version = "0.1.37" |
6492 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6493 | + checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" |
6494 | + dependencies = [ |
6495 | + "cfg-if", |
6496 | + "log", |
6497 | + "pin-project-lite", |
6498 | + "tracing-attributes", |
6499 | + "tracing-core", |
6500 | + ] |
6501 | + |
6502 | + [[package]] |
6503 | + name = "tracing-attributes" |
6504 | + version = "0.1.26" |
6505 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6506 | + checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" |
6507 | + dependencies = [ |
6508 | + "proc-macro2", |
6509 | + "quote", |
6510 | + "syn 2.0.37", |
6511 | + ] |
6512 | + |
6513 | + [[package]] |
6514 | + name = "tracing-core" |
6515 | + version = "0.1.31" |
6516 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6517 | + checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" |
6518 | + dependencies = [ |
6519 | + "once_cell", |
6520 | + "valuable", |
6521 | + ] |
6522 | + |
6523 | + [[package]] |
6524 | + name = "tracing-log" |
6525 | + version = "0.1.3" |
6526 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6527 | + checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" |
6528 | + dependencies = [ |
6529 | + "lazy_static", |
6530 | + "log", |
6531 | + "tracing-core", |
6532 | + ] |
6533 | + |
6534 | + [[package]] |
6535 | + name = "tracing-subscriber" |
6536 | + version = "0.3.17" |
6537 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6538 | + checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" |
6539 | + dependencies = [ |
6540 | + "matchers", |
6541 | + "nu-ansi-term", |
6542 | + "once_cell", |
6543 | + "regex", |
6544 | + "sharded-slab", |
6545 | + "smallvec", |
6546 | + "thread_local", |
6547 | + "tracing", |
6548 | + "tracing-core", |
6549 | + "tracing-log", |
6550 | + ] |
6551 | + |
6552 | + [[package]] |
6553 | + name = "trust-dns-proto" |
6554 | + version = "0.22.0" |
6555 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6556 | + checksum = "4f7f83d1e4a0e4358ac54c5c3681e5d7da5efc5a7a632c90bb6d6669ddd9bc26" |
6557 | + dependencies = [ |
6558 | + "async-trait", |
6559 | + "cfg-if", |
6560 | + "data-encoding", |
6561 | + "enum-as-inner", |
6562 | + "futures-channel", |
6563 | + "futures-io", |
6564 | + "futures-util", |
6565 | + "idna 0.2.3", |
6566 | + "ipnet", |
6567 | + "lazy_static", |
6568 | + "rand", |
6569 | + "smallvec", |
6570 | + "thiserror", |
6571 | + "tinyvec", |
6572 | + "tokio", |
6573 | + "tracing", |
6574 | + "url", |
6575 | + ] |
6576 | + |
6577 | + [[package]] |
6578 | + name = "trust-dns-resolver" |
6579 | + version = "0.22.0" |
6580 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6581 | + checksum = "aff21aa4dcefb0a1afbfac26deb0adc93888c7d295fb63ab273ef276ba2b7cfe" |
6582 | + dependencies = [ |
6583 | + "cfg-if", |
6584 | + "futures-util", |
6585 | + "ipconfig", |
6586 | + "lazy_static", |
6587 | + "lru-cache", |
6588 | + "parking_lot", |
6589 | + "resolv-conf", |
6590 | + "smallvec", |
6591 | + "thiserror", |
6592 | + "tokio", |
6593 | + "tracing", |
6594 | + "trust-dns-proto", |
6595 | + ] |
6596 | + |
6597 | + [[package]] |
6598 | + name = "try-lock" |
6599 | + version = "0.2.4" |
6600 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6601 | + checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" |
6602 | + |
6603 | + [[package]] |
6604 | + name = "typenum" |
6605 | + version = "1.17.0" |
6606 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6607 | + checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" |
6608 | + |
6609 | + [[package]] |
6610 | + name = "unicode-bidi" |
6611 | + version = "0.3.13" |
6612 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6613 | + checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" |
6614 | + |
6615 | + [[package]] |
6616 | + name = "unicode-ident" |
6617 | + version = "1.0.12" |
6618 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6619 | + checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" |
6620 | + |
6621 | + [[package]] |
6622 | + name = "unicode-normalization" |
6623 | + version = "0.1.22" |
6624 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6625 | + checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" |
6626 | + dependencies = [ |
6627 | + "tinyvec", |
6628 | + ] |
6629 | + |
6630 | + [[package]] |
6631 | + name = "url" |
6632 | + version = "2.4.1" |
6633 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6634 | + checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" |
6635 | + dependencies = [ |
6636 | + "form_urlencoded", |
6637 | + "idna 0.4.0", |
6638 | + "percent-encoding", |
6639 | + ] |
6640 | + |
6641 | + [[package]] |
6642 | + name = "uuid" |
6643 | + version = "1.4.1" |
6644 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6645 | + checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" |
6646 | + dependencies = [ |
6647 | + "getrandom", |
6648 | + "serde", |
6649 | + ] |
6650 | + |
6651 | + [[package]] |
6652 | + name = "valuable" |
6653 | + version = "0.1.0" |
6654 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6655 | + checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" |
6656 | + |
6657 | + [[package]] |
6658 | + name = "vcpkg" |
6659 | + version = "0.2.15" |
6660 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6661 | + checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" |
6662 | + |
6663 | + [[package]] |
6664 | + name = "version_check" |
6665 | + version = "0.9.4" |
6666 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6667 | + checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" |
6668 | + |
6669 | + [[package]] |
6670 | + name = "want" |
6671 | + version = "0.3.1" |
6672 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6673 | + checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" |
6674 | + dependencies = [ |
6675 | + "try-lock", |
6676 | + ] |
6677 | + |
6678 | + [[package]] |
6679 | + name = "wasi" |
6680 | + version = "0.11.0+wasi-snapshot-preview1" |
6681 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6682 | + checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" |
6683 | + |
6684 | + [[package]] |
6685 | + name = "wasm-bindgen" |
6686 | + version = "0.2.87" |
6687 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6688 | + checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" |
6689 | + dependencies = [ |
6690 | + "cfg-if", |
6691 | + "wasm-bindgen-macro", |
6692 | + ] |
6693 | + |
6694 | + [[package]] |
6695 | + name = "wasm-bindgen-backend" |
6696 | + version = "0.2.87" |
6697 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6698 | + checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" |
6699 | + dependencies = [ |
6700 | + "bumpalo", |
6701 | + "log", |
6702 | + "once_cell", |
6703 | + "proc-macro2", |
6704 | + "quote", |
6705 | + "syn 2.0.37", |
6706 | + "wasm-bindgen-shared", |
6707 | + ] |
6708 | + |
6709 | + [[package]] |
6710 | + name = "wasm-bindgen-futures" |
6711 | + version = "0.4.37" |
6712 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6713 | + checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" |
6714 | + dependencies = [ |
6715 | + "cfg-if", |
6716 | + "js-sys", |
6717 | + "wasm-bindgen", |
6718 | + "web-sys", |
6719 | + ] |
6720 | + |
6721 | + [[package]] |
6722 | + name = "wasm-bindgen-macro" |
6723 | + version = "0.2.87" |
6724 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6725 | + checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" |
6726 | + dependencies = [ |
6727 | + "quote", |
6728 | + "wasm-bindgen-macro-support", |
6729 | + ] |
6730 | + |
6731 | + [[package]] |
6732 | + name = "wasm-bindgen-macro-support" |
6733 | + version = "0.2.87" |
6734 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6735 | + checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" |
6736 | + dependencies = [ |
6737 | + "proc-macro2", |
6738 | + "quote", |
6739 | + "syn 2.0.37", |
6740 | + "wasm-bindgen-backend", |
6741 | + "wasm-bindgen-shared", |
6742 | + ] |
6743 | + |
6744 | + [[package]] |
6745 | + name = "wasm-bindgen-shared" |
6746 | + version = "0.2.87" |
6747 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6748 | + checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" |
6749 | + |
6750 | + [[package]] |
6751 | + name = "wasm-streams" |
6752 | + version = "0.3.0" |
6753 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6754 | + checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" |
6755 | + dependencies = [ |
6756 | + "futures-util", |
6757 | + "js-sys", |
6758 | + "wasm-bindgen", |
6759 | + "wasm-bindgen-futures", |
6760 | + "web-sys", |
6761 | + ] |
6762 | + |
6763 | + [[package]] |
6764 | + name = "web-sys" |
6765 | + version = "0.3.64" |
6766 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6767 | + checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" |
6768 | + dependencies = [ |
6769 | + "js-sys", |
6770 | + "wasm-bindgen", |
6771 | + ] |
6772 | + |
6773 | + [[package]] |
6774 | + name = "widestring" |
6775 | + version = "1.0.2" |
6776 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6777 | + checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" |
6778 | + |
6779 | + [[package]] |
6780 | + name = "winapi" |
6781 | + version = "0.3.9" |
6782 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6783 | + checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" |
6784 | + dependencies = [ |
6785 | + "winapi-i686-pc-windows-gnu", |
6786 | + "winapi-x86_64-pc-windows-gnu", |
6787 | + ] |
6788 | + |
6789 | + [[package]] |
6790 | + name = "winapi-i686-pc-windows-gnu" |
6791 | + version = "0.4.0" |
6792 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6793 | + checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" |
6794 | + |
6795 | + [[package]] |
6796 | + name = "winapi-x86_64-pc-windows-gnu" |
6797 | + version = "0.4.0" |
6798 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6799 | + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" |
6800 | + |
6801 | + [[package]] |
6802 | + name = "windows-sys" |
6803 | + version = "0.48.0" |
6804 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6805 | + checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" |
6806 | + dependencies = [ |
6807 | + "windows-targets", |
6808 | + ] |
6809 | + |
6810 | + [[package]] |
6811 | + name = "windows-targets" |
6812 | + version = "0.48.5" |
6813 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6814 | + checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" |
6815 | + dependencies = [ |
6816 | + "windows_aarch64_gnullvm", |
6817 | + "windows_aarch64_msvc", |
6818 | + "windows_i686_gnu", |
6819 | + "windows_i686_msvc", |
6820 | + "windows_x86_64_gnu", |
6821 | + "windows_x86_64_gnullvm", |
6822 | + "windows_x86_64_msvc", |
6823 | + ] |
6824 | + |
6825 | + [[package]] |
6826 | + name = "windows_aarch64_gnullvm" |
6827 | + version = "0.48.5" |
6828 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6829 | + checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" |
6830 | + |
6831 | + [[package]] |
6832 | + name = "windows_aarch64_msvc" |
6833 | + version = "0.48.5" |
6834 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6835 | + checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" |
6836 | + |
6837 | + [[package]] |
6838 | + name = "windows_i686_gnu" |
6839 | + version = "0.48.5" |
6840 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6841 | + checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" |
6842 | + |
6843 | + [[package]] |
6844 | + name = "windows_i686_msvc" |
6845 | + version = "0.48.5" |
6846 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6847 | + checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" |
6848 | + |
6849 | + [[package]] |
6850 | + name = "windows_x86_64_gnu" |
6851 | + version = "0.48.5" |
6852 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6853 | + checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" |
6854 | + |
6855 | + [[package]] |
6856 | + name = "windows_x86_64_gnullvm" |
6857 | + version = "0.48.5" |
6858 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6859 | + checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" |
6860 | + |
6861 | + [[package]] |
6862 | + name = "windows_x86_64_msvc" |
6863 | + version = "0.48.5" |
6864 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6865 | + checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" |
6866 | + |
6867 | + [[package]] |
6868 | + name = "winreg" |
6869 | + version = "0.50.0" |
6870 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6871 | + checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" |
6872 | + dependencies = [ |
6873 | + "cfg-if", |
6874 | + "windows-sys", |
6875 | + ] |
6876 | + |
6877 | + [[package]] |
6878 | + name = "xmpp" |
6879 | + version = "0.5.0" |
6880 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6881 | + checksum = "d49e896c63e7554f9e75c6cd22e4b0b553a2d7582060b676996b4ac6fb87dbac" |
6882 | + dependencies = [ |
6883 | + "futures", |
6884 | + "log", |
6885 | + "reqwest", |
6886 | + "tokio", |
6887 | + "tokio-util", |
6888 | + "tokio-xmpp", |
6889 | + ] |
6890 | + |
6891 | + [[package]] |
6892 | + name = "xmpp-parsers" |
6893 | + version = "0.20.0" |
6894 | + source = "registry+https://github.com/rust-lang/crates.io-index" |
6895 | + checksum = "c0905d294e6e7f7668f4b3ca9c4a6343fd85355d21c44d2f1c8b1c027394048e" |
6896 | + dependencies = [ |
6897 | + "base64", |
6898 | + "blake2", |
6899 | + "chrono", |
6900 | + "digest", |
6901 | + "jid", |
6902 | + "minidom", |
6903 | + "rustc_version", |
6904 | + "sha1", |
6905 | + "sha2", |
6906 | + "sha3", |
6907 | + ] |
6908 | diff --git a/ayllu-xmpp/Cargo.toml b/ayllu-xmpp/Cargo.toml |
6909 | new file mode 100644 |
6910 | index 0000000..a9651ef |
6911 | --- /dev/null |
6912 | +++ b/ayllu-xmpp/Cargo.toml |
6913 | @@ -0,0 +1,25 @@ |
6914 | + [package] |
6915 | + name = "ayllu_xmpp" |
6916 | + version = "0.2.1" |
6917 | + edition = "2021" |
6918 | + |
6919 | + [dependencies] |
6920 | + ayllu_api = {workspace = true} |
6921 | + ayllu_config = {workspace = true} |
6922 | + ayllu_database = {workspace = true} |
6923 | + ayllu_rpc = {workspace = true} |
6924 | + clap = "4.4.4" |
6925 | + serde = { version = "1.0", features = ["derive"] } |
6926 | + tokio = { version = "1.32.0", features = ["full"] } |
6927 | + anyhow = "1.0.75" |
6928 | + tokio-xmpp = "3.4.0" |
6929 | + futures = "0.3.28" |
6930 | + rand = "0.8.5" |
6931 | + capnp = "0.18.3" |
6932 | + capnp-rpc = "0.18.0" |
6933 | + tracing = { version = "0.1.40", features = ["log"] } |
6934 | + async-trait = "0.1.74" |
6935 | + sqlx = { version = "0.7.2", features = [ "sqlite", "macros", ] } |
6936 | + tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } |
6937 | + xmpp = { git = "https://kevinschoon.com/forks/xmpp-rs", branch = "ayllu"} |
6938 | + time = { version = "0.3.30", features = ["formatting"] } |
6939 | diff --git a/ayllu-xmpp/README.md b/ayllu-xmpp/README.md |
6940 | new file mode 100644 |
6941 | index 0000000..d0a0db4 |
6942 | --- /dev/null |
6943 | +++ b/ayllu-xmpp/README.md |
6944 | @@ -0,0 +1,8 @@ |
6945 | + # ayllu-xmpp |
6946 | + |
6947 | + Simple XMPP based bot. |
6948 | + |
6949 | + ## Features |
6950 | + |
6951 | + * Record the active number of users per channel |
6952 | + * Export chat history per channel |
6953 | diff --git a/ayllu-xmpp/migrations/20231028110138_init.sql b/ayllu-xmpp/migrations/20231028110138_init.sql |
6954 | new file mode 100644 |
6955 | index 0000000..f2739e0 |
6956 | --- /dev/null |
6957 | +++ b/ayllu-xmpp/migrations/20231028110138_init.sql |
6958 | @@ -0,0 +1,23 @@ |
6959 | + CREATE TABLE channels ( |
6960 | + id INTEGER PRIMARY KEY, |
6961 | + name TEXT UNIQUE NOT NULL , |
6962 | + description TEXT NOT NULL |
6963 | + ) STRICT; |
6964 | + |
6965 | + CREATE TABLE channels_users_online ( |
6966 | + id INTEGER PRIMARY KEY, |
6967 | + channel_id INTEGER REFERENCES channels(id) ON DELETE CASCADE NOT NULL UNIQUE, |
6968 | + n_users INTEGER DEFAULT 0, |
6969 | + last_updated INTEGER NOT NULL DEFAULT (UNIXEPOCH()) |
6970 | + ) STRICT; |
6971 | + |
6972 | + CREATE TABLE messages ( |
6973 | + id INTEGER PRIMARY KEY, |
6974 | + channel_id INTEGER REFERENCES channels(id) ON DELETE CASCADE NOT NULL, |
6975 | + xmpp_timestamp TEXT NOT NULL, |
6976 | + xmpp_nickname TEXT NOT NULL, |
6977 | + xmpp_id TEXT NOT NULL UNIQUE, |
6978 | + xmpp_body TEXT |
6979 | + ) STRICT; |
6980 | + |
6981 | + CREATE INDEX messages_count ON messages (id, channel_id, xmpp_id); |
6982 | diff --git a/ayllu-xmpp/queries/channels_delete.sql b/ayllu-xmpp/queries/channels_delete.sql |
6983 | new file mode 100644 |
6984 | index 0000000..73a5778 |
6985 | --- /dev/null |
6986 | +++ b/ayllu-xmpp/queries/channels_delete.sql |
6987 | @@ -0,0 +1 @@ |
6988 | + DELETE FROM channels WHERE name = ?; |
6989 | diff --git a/ayllu-xmpp/queries/channels_list.sql b/ayllu-xmpp/queries/channels_list.sql |
6990 | new file mode 100644 |
6991 | index 0000000..90b01bf |
6992 | --- /dev/null |
6993 | +++ b/ayllu-xmpp/queries/channels_list.sql |
6994 | @@ -0,0 +1 @@ |
6995 | + SELECT (id, name, description) FROM channels WHERE name = ? |
6996 | diff --git a/ayllu-xmpp/queries/channels_reset_counts.sql b/ayllu-xmpp/queries/channels_reset_counts.sql |
6997 | new file mode 100644 |
6998 | index 0000000..abd353e |
6999 | --- /dev/null |
7000 | +++ b/ayllu-xmpp/queries/channels_reset_counts.sql |
7001 | @@ -0,0 +1,10 @@ |
7002 | + INSERT INTO |
7003 | + channels_users_online (channel_id, n_users, last_updated) |
7004 | + VALUES ( |
7005 | + (SELECT id FROM channels WHERE name = ?), |
7006 | + 0, |
7007 | + UNIXEPOCH() |
7008 | + ) |
7009 | + ON CONFLICT DO UPDATE |
7010 | + SET |
7011 | + n_users = 0 |
7012 | diff --git a/ayllu-xmpp/queries/channels_stats.sql b/ayllu-xmpp/queries/channels_stats.sql |
7013 | new file mode 100644 |
7014 | index 0000000..223f3c2 |
7015 | --- /dev/null |
7016 | +++ b/ayllu-xmpp/queries/channels_stats.sql |
7017 | @@ -0,0 +1,6 @@ |
7018 | + SELECT |
7019 | + name, |
7020 | + channels_users_online.n_users AS "n_users!: i64", |
7021 | + (SELECT COUNT(id) FROM messages WHERE messages.channel_id = channels.id) AS "n_messages!: i64" |
7022 | + FROM channels |
7023 | + LEFT JOIN channels_users_online ON (channels.id = channels_users_online.channel_id) |
7024 | diff --git a/ayllu-xmpp/queries/channels_update_user_count.sql b/ayllu-xmpp/queries/channels_update_user_count.sql |
7025 | new file mode 100644 |
7026 | index 0000000..66c6fa3 |
7027 | --- /dev/null |
7028 | +++ b/ayllu-xmpp/queries/channels_update_user_count.sql |
7029 | @@ -0,0 +1,11 @@ |
7030 | + INSERT INTO |
7031 | + channels_users_online (channel_id, n_users, last_updated) |
7032 | + VALUES ( |
7033 | + (SELECT id FROM channels WHERE name = ?), |
7034 | + MAX(?, 0), |
7035 | + UNIXEPOCH() |
7036 | + ) |
7037 | + ON CONFLICT DO UPDATE |
7038 | + SET |
7039 | + n_users = MAX(n_users + ?, 0), |
7040 | + last_updated = UNIXEPOCH() |
7041 | diff --git a/ayllu-xmpp/queries/channels_upsert.sql b/ayllu-xmpp/queries/channels_upsert.sql |
7042 | new file mode 100644 |
7043 | index 0000000..c6e00b3 |
7044 | --- /dev/null |
7045 | +++ b/ayllu-xmpp/queries/channels_upsert.sql |
7046 | @@ -0,0 +1,5 @@ |
7047 | + INSERT INTO channels (name, description) |
7048 | + VALUES (?, ?) ON CONFLICT DO |
7049 | + UPDATE SET |
7050 | + description = ? |
7051 | + RETURNING id |
7052 | diff --git a/ayllu-xmpp/queries/messages_last_id.sql b/ayllu-xmpp/queries/messages_last_id.sql |
7053 | new file mode 100644 |
7054 | index 0000000..b9c5259 |
7055 | --- /dev/null |
7056 | +++ b/ayllu-xmpp/queries/messages_last_id.sql |
7057 | @@ -0,0 +1,3 @@ |
7058 | + SELECT xmpp_id FROM messages WHERE |
7059 | + messages.channel_id = (SELECT id FROM channels WHERE name = ?) |
7060 | + ORDER BY messages.id ASC |
7061 | diff --git a/ayllu-xmpp/queries/messages_list.sql b/ayllu-xmpp/queries/messages_list.sql |
7062 | new file mode 100644 |
7063 | index 0000000..3a5d8f4 |
7064 | --- /dev/null |
7065 | +++ b/ayllu-xmpp/queries/messages_list.sql |
7066 | @@ -0,0 +1,10 @@ |
7067 | + SELECT |
7068 | + xmpp_id AS "xmpp_id!: String", |
7069 | + xmpp_timestamp AS "xmpp_timestamp!: String", |
7070 | + xmpp_nickname AS "xmpp_nickname!: String", |
7071 | + xmpp_body AS "xmpp_body!: String" |
7072 | + FROM messages WHERE |
7073 | + channel_id = (SELECT channels.id FROM channels WHERE channels.name = ?) |
7074 | + AND COALESCE(? IS NULL, messages.id > (SELECT messages.id FROM messages WHERE messages.id = ?)) |
7075 | + ORDER BY messages.id |
7076 | + LIMIT ? |
7077 | diff --git a/ayllu-xmpp/queries/messages_upsert.sql b/ayllu-xmpp/queries/messages_upsert.sql |
7078 | new file mode 100644 |
7079 | index 0000000..920de22 |
7080 | --- /dev/null |
7081 | +++ b/ayllu-xmpp/queries/messages_upsert.sql |
7082 | @@ -0,0 +1,2 @@ |
7083 | + INSERT INTO messages (xmpp_id, xmpp_timestamp, channel_id, xmpp_nickname, xmpp_body) |
7084 | + VALUES (?, ?, (SELECT id FROM channels WHERE name = ?), ?, ?) ON CONFLICT DO NOTHING |
7085 | diff --git a/ayllu-xmpp/src/config.rs b/ayllu-xmpp/src/config.rs |
7086 | new file mode 100644 |
7087 | index 0000000..0567187 |
7088 | --- /dev/null |
7089 | +++ b/ayllu-xmpp/src/config.rs |
7090 | @@ -0,0 +1,72 @@ |
7091 | + use ayllu_config::{data_dir, runtime_dir, Configurable, Error, Reader}; |
7092 | + use serde::{Deserialize, Serialize}; |
7093 | + use tokio_xmpp::Jid; |
7094 | + |
7095 | + #[derive(Serialize, Deserialize, Clone)] |
7096 | + pub struct Channel { |
7097 | + pub jid: String, |
7098 | + } |
7099 | + |
7100 | + #[derive(Deserialize, Serialize, Clone, Debug)] |
7101 | + pub struct Database { |
7102 | + #[serde(default = "Database::path_default")] |
7103 | + pub path: String, |
7104 | + #[serde(default = "Database::migrate_default")] |
7105 | + pub migrate: bool, |
7106 | + } |
7107 | + |
7108 | + impl Database { |
7109 | + fn path_default() -> String { |
7110 | + let mut data_path = data_dir(); |
7111 | + data_path.push("xmpp.db"); |
7112 | + String::from(data_path.to_str().unwrap()) |
7113 | + } |
7114 | + |
7115 | + fn migrate_default() -> bool { |
7116 | + true |
7117 | + } |
7118 | + } |
7119 | + |
7120 | + #[derive(Serialize, Deserialize, Clone)] |
7121 | + pub struct Xmpp { |
7122 | + // HTTP address to listen on |
7123 | + #[serde(default = "Xmpp::default_socket_path")] |
7124 | + pub socket_path: String, |
7125 | + // Chat alias to use |
7126 | + pub alias: Option<String>, |
7127 | + // Jid for connecting to an XMPP server |
7128 | + pub jid: String, |
7129 | + // Password authentication |
7130 | + pub password: String, |
7131 | + // Array of channels to idle in |
7132 | + pub channels: Vec<Channel>, |
7133 | + // database configuration |
7134 | + pub database: Database, |
7135 | + } |
7136 | + |
7137 | + impl Xmpp { |
7138 | + fn default_socket_path() -> String { |
7139 | + runtime_dir().to_str().unwrap().to_string() + "/ayllu-xmpp.sock" |
7140 | + } |
7141 | + } |
7142 | + |
7143 | + #[derive(Serialize, Deserialize, Clone)] |
7144 | + pub struct Config { |
7145 | + pub log_level: String, |
7146 | + pub xmpp: Xmpp, |
7147 | + } |
7148 | + |
7149 | + impl Configurable for Config { |
7150 | + fn initialize(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
7151 | + Ok(()) |
7152 | + } |
7153 | + |
7154 | + fn validate(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
7155 | + let _ = Jid::new(&self.xmpp.jid)?; |
7156 | + Ok(()) |
7157 | + } |
7158 | + } |
7159 | + |
7160 | + pub fn load(path: Option<&str>) -> Result<Config, Error> { |
7161 | + Reader::load(path) |
7162 | + } |
7163 | diff --git a/ayllu-xmpp/src/database_ext.rs b/ayllu-xmpp/src/database_ext.rs |
7164 | new file mode 100644 |
7165 | index 0000000..47aec5b |
7166 | --- /dev/null |
7167 | +++ b/ayllu-xmpp/src/database_ext.rs |
7168 | @@ -0,0 +1,143 @@ |
7169 | + use async_trait::async_trait; |
7170 | + use sqlx; |
7171 | + use sqlx::Row; |
7172 | + |
7173 | + use ayllu_database::{Error, Wrapper as Database}; |
7174 | + |
7175 | + /// internal only message struct |
7176 | + pub struct Message { |
7177 | + pub xmpp_id: String, |
7178 | + pub xmpp_timestamp: String, |
7179 | + pub xmpp_nickname: String, |
7180 | + pub xmpp_body: String, |
7181 | + } |
7182 | + |
7183 | + #[async_trait] |
7184 | + pub trait XmppExt { |
7185 | + async fn upsert_channel(&self, name: &str, description: &str) -> Result<i64, Error>; |
7186 | + async fn delete_channel(&self, name: &str) -> Result<(), Error>; |
7187 | + async fn update_user_count(&self, name: &str, count: i64) -> Result<(), Error>; |
7188 | + async fn read_stats(&self, names: Vec<String>) -> Result<Vec<(String, i64, i64)>, Error>; |
7189 | + async fn reset_user_counts(&self, name: &str) -> Result<(), Error>; |
7190 | + async fn upsert_message( |
7191 | + &self, |
7192 | + message_id: &str, |
7193 | + timestamp: &str, |
7194 | + channel_name: &str, |
7195 | + nickname: &str, |
7196 | + body: &str, |
7197 | + ) -> Result<(), Error>; |
7198 | + async fn list_messages( |
7199 | + &self, |
7200 | + channel_name: &str, |
7201 | + last_message: Option<&str>, |
7202 | + limit: i64, |
7203 | + ) -> Result<Vec<Message>, Error>; |
7204 | + async fn last_message_id(&self, name: &str) -> Result<Option<String>, Error>; |
7205 | + } |
7206 | + |
7207 | + #[async_trait] |
7208 | + impl XmppExt for Database { |
7209 | + async fn upsert_channel(&self, name: &str, description: &str) -> Result<i64, Error> { |
7210 | + let ret = sqlx::query_file!( |
7211 | + "queries/channels_upsert.sql", |
7212 | + name, |
7213 | + description, |
7214 | + description |
7215 | + ) |
7216 | + .fetch_one(&self.pool) |
7217 | + .await?; |
7218 | + Ok(ret.id) |
7219 | + } |
7220 | + |
7221 | + async fn delete_channel(&self, name: &str) -> Result<(), Error> { |
7222 | + sqlx::query_file!("queries/channels_delete.sql", name) |
7223 | + .execute(&self.pool) |
7224 | + .await?; |
7225 | + Ok(()) |
7226 | + } |
7227 | + |
7228 | + async fn reset_user_counts(&self, name: &str) -> Result<(), Error> { |
7229 | + sqlx::query_file!("queries/channels_reset_counts.sql", name) |
7230 | + .execute(&self.pool) |
7231 | + .await?; |
7232 | + Ok(()) |
7233 | + } |
7234 | + |
7235 | + async fn update_user_count(&self, name: &str, change: i64) -> Result<(), Error> { |
7236 | + sqlx::query_file!( |
7237 | + "queries/channels_update_user_count.sql", |
7238 | + name, |
7239 | + change, |
7240 | + change |
7241 | + ) |
7242 | + .execute(&self.pool) |
7243 | + .await?; |
7244 | + Ok(()) |
7245 | + } |
7246 | + |
7247 | + async fn read_stats(&self, channels: Vec<String>) -> Result<Vec<(String, i64, i64)>, Error> { |
7248 | + let mut counts: Vec<(String, i64, i64)> = Vec::new(); |
7249 | + // SQLX can't use arrays for x IN (...) clauses |
7250 | + let base = include_str!("../queries/channels_stats.sql"); |
7251 | + let mut builder: sqlx::QueryBuilder<sqlx::Sqlite> = sqlx::QueryBuilder::new(base); |
7252 | + if !channels.is_empty() { |
7253 | + builder.push("WHERE channels.name IN ("); |
7254 | + for channel in channels { |
7255 | + builder.push_bind(channel); |
7256 | + } |
7257 | + builder.push(");"); |
7258 | + } |
7259 | + for row in builder.build().fetch_all(&self.pool).await? { |
7260 | + counts.push((row.get(0), row.get(1), row.get(2))); |
7261 | + } |
7262 | + Ok(counts) |
7263 | + } |
7264 | + |
7265 | + async fn upsert_message( |
7266 | + &self, |
7267 | + message_id: &str, |
7268 | + timestamp: &str, |
7269 | + channel_name: &str, |
7270 | + nickname: &str, |
7271 | + message_body: &str, |
7272 | + ) -> Result<(), Error> { |
7273 | + sqlx::query_file!( |
7274 | + "queries/messages_upsert.sql", |
7275 | + message_id, |
7276 | + timestamp, |
7277 | + channel_name, |
7278 | + nickname, |
7279 | + message_body, |
7280 | + ) |
7281 | + .execute(&self.pool) |
7282 | + .await?; |
7283 | + Ok(()) |
7284 | + } |
7285 | + |
7286 | + async fn list_messages( |
7287 | + &self, |
7288 | + channel_name: &str, |
7289 | + last_message: Option<&str>, |
7290 | + limit: i64, |
7291 | + ) -> Result<Vec<Message>, Error> { |
7292 | + let result = sqlx::query_file_as!( |
7293 | + Message, |
7294 | + "queries/messages_list.sql", |
7295 | + channel_name, |
7296 | + last_message, |
7297 | + last_message, |
7298 | + limit |
7299 | + ) |
7300 | + .fetch_all(&self.pool) |
7301 | + .await?; |
7302 | + Ok(result) |
7303 | + } |
7304 | + |
7305 | + async fn last_message_id(&self, name: &str) -> Result<Option<String>, Error> { |
7306 | + let result = sqlx::query_file!("queries/messages_last_id.sql", name) |
7307 | + .fetch_optional(&self.pool) |
7308 | + .await?; |
7309 | + Ok(result.map(|record| record.xmpp_id)) |
7310 | + } |
7311 | + } |
7312 | diff --git a/ayllu-xmpp/src/main.rs b/ayllu-xmpp/src/main.rs |
7313 | new file mode 100644 |
7314 | index 0000000..c0054c1 |
7315 | --- /dev/null |
7316 | +++ b/ayllu-xmpp/src/main.rs |
7317 | @@ -0,0 +1,80 @@ |
7318 | + use std::thread::Builder as ThreadBuilder; |
7319 | + |
7320 | + use anyhow::Result; |
7321 | + use clap::{arg, value_parser, Command}; |
7322 | + use tokio::{runtime::Builder as TokioBuilder, task::LocalSet}; |
7323 | + use tracing::log; |
7324 | + |
7325 | + use ayllu_database::migrate; |
7326 | + mod config; |
7327 | + mod database_ext; |
7328 | + mod rpc_server; |
7329 | + mod xmpp_bot; |
7330 | + |
7331 | + fn main() -> Result<()> { |
7332 | + let command = Command::new("ayllu-xmpp") |
7333 | + .about("ayllu xmpp integration") |
7334 | + .arg( |
7335 | + arg!(-c --config <FILE> "optional path to a configuration file") |
7336 | + .id("config") |
7337 | + .required(false) |
7338 | + .value_parser(value_parser!(String)), |
7339 | + ) |
7340 | + .arg( |
7341 | + arg!(-l --level <LEVEL> "logging level [ERROR,WARN,INFO,DEBUG,TRACE]") |
7342 | + .id("level") |
7343 | + .required(false) |
7344 | + .value_parser(value_parser!(String)), |
7345 | + ); |
7346 | + let matches = command.get_matches(); |
7347 | + let config = config::load(matches.get_one::<String>("config").map(|s| s.as_str()))?; |
7348 | + let log_level = matches |
7349 | + .get_one::<String>("level") |
7350 | + .map(|level| level.clone()) |
7351 | + .unwrap_or(config.log_level.clone()); |
7352 | + tracing_subscriber::fmt() |
7353 | + .compact() |
7354 | + .with_line_number(true) |
7355 | + .with_level(true) |
7356 | + .with_env_filter(log_level) |
7357 | + .init(); |
7358 | + tracing::info!("logger initialized"); |
7359 | + log::info!("logger initialized"); |
7360 | + let config = config.xmpp; |
7361 | + if config.database.migrate { |
7362 | + let config = config.clone(); |
7363 | + TokioBuilder::new_current_thread() |
7364 | + .enable_all() |
7365 | + .build() |
7366 | + .unwrap() |
7367 | + .block_on(async move { migrate(&config.database.path, "./migrations").await })?; |
7368 | + } |
7369 | + let thread_config = config.clone(); |
7370 | + // TODO: a crash in either thread should shut down the entire program, need |
7371 | + // to write a "daemon" crate for here and in other components. |
7372 | + ThreadBuilder::new() |
7373 | + .name(String::from("ayllu-xmpp-bot")) |
7374 | + .spawn(move || { |
7375 | + // This thread runs the xmpp bot which monitors channels for |
7376 | + // activity and eventually may respond to commands. It holds at |
7377 | + // mutable sqlite connection and is responsible for updating the |
7378 | + // database. |
7379 | + TokioBuilder::new_current_thread() |
7380 | + .enable_all() |
7381 | + .build() |
7382 | + .unwrap() |
7383 | + .block_on(xmpp_bot::serve(thread_config)) |
7384 | + .unwrap(); |
7385 | + })?; |
7386 | + TokioBuilder::new_current_thread() |
7387 | + .enable_all() |
7388 | + .build() |
7389 | + .unwrap() |
7390 | + .block_on(async move { |
7391 | + // Capnp RPC server implementation with a read-only database |
7392 | + // connection |
7393 | + LocalSet::new().run_until(rpc_server::serve(config)).await |
7394 | + }) |
7395 | + .unwrap(); |
7396 | + Ok(()) |
7397 | + } |
7398 | diff --git a/ayllu-xmpp/src/rpc_server.rs b/ayllu-xmpp/src/rpc_server.rs |
7399 | new file mode 100644 |
7400 | index 0000000..b6fb493 |
7401 | --- /dev/null |
7402 | +++ b/ayllu-xmpp/src/rpc_server.rs |
7403 | @@ -0,0 +1,101 @@ |
7404 | + use std::error::Error as StdError; |
7405 | + |
7406 | + use capnp::{capability::Promise, Error as CapnpError}; |
7407 | + use capnp_rpc::pry; |
7408 | + use tracing::log; |
7409 | + |
7410 | + use crate::config::Xmpp as Config; |
7411 | + use crate::database_ext::XmppExt; |
7412 | + use ayllu_api::xmpp_capnp::server::{ |
7413 | + Client, MessagesParams, MessagesResults, Server, StatsParams, StatsResults, |
7414 | + }; |
7415 | + use ayllu_database::Wrapper as Database; |
7416 | + use ayllu_rpc::Server as RpcHelper; |
7417 | + |
7418 | + struct ServerImpl { |
7419 | + db: Database, |
7420 | + } |
7421 | + |
7422 | + impl Server for ServerImpl { |
7423 | + fn stats(&mut self, params: StatsParams, mut results: StatsResults) -> Promise<(), CapnpError> { |
7424 | + let db = self.db.clone(); |
7425 | + let mut channels: Vec<String> = Vec::new(); |
7426 | + for channel_name in pry!(pry!(params.get()).get_channels()) { |
7427 | + let channel_name = pry!(channel_name).to_string().unwrap(); |
7428 | + channels.push(channel_name); |
7429 | + } |
7430 | + Promise::from_future(async move { |
7431 | + log::info!("looking up channels: {:?}", channels); |
7432 | + let stats = db.read_stats(channels).await.unwrap(); |
7433 | + // sqlx can't use WHERE $ IN (..) .. |
7434 | + let mut results = results.get().init_stats(stats.len() as u32); |
7435 | + for (i, count) in stats.iter().enumerate() { |
7436 | + log::info!( |
7437 | + "got channel: name={} users={} msgs={}", |
7438 | + count.0, |
7439 | + count.1, |
7440 | + count.2 |
7441 | + ); |
7442 | + results |
7443 | + .reborrow() |
7444 | + .get(i as u32) |
7445 | + .set_name(count.0.as_str().into()); |
7446 | + results.reborrow().get(i as u32).set_users_online(count.1); |
7447 | + results.reborrow().get(i as u32).set_n_messages(count.2); |
7448 | + } |
7449 | + Ok(()) |
7450 | + }) |
7451 | + } |
7452 | + |
7453 | + fn messages( |
7454 | + &mut self, |
7455 | + params: MessagesParams, |
7456 | + mut results: MessagesResults, |
7457 | + ) -> Promise<(), CapnpError> { |
7458 | + let db = self.db.clone(); |
7459 | + let params = pry!(params.get()); |
7460 | + let channel_name = pry!(params.get_channel_name()).to_string().unwrap(); |
7461 | + let last_message = if params.has_last_message() { |
7462 | + Some(pry!(params.get_last_message()).to_string().unwrap()) |
7463 | + } else { |
7464 | + None |
7465 | + }; |
7466 | + let limit = params.get_limit(); |
7467 | + Promise::from_future(async move { |
7468 | + log::info!("looking up messages for channel: {:?}", channel_name); |
7469 | + let messages = db |
7470 | + .list_messages(&channel_name, last_message.as_deref(), limit) |
7471 | + .await |
7472 | + .unwrap(); |
7473 | + log::info!("db returned {} messages", messages.len()); |
7474 | + let mut results = results.get().init_messages(messages.len() as u32); |
7475 | + for (i, message) in messages.iter().enumerate() { |
7476 | + results |
7477 | + .reborrow() |
7478 | + .get(i as u32) |
7479 | + .set_message_id(message.xmpp_id.as_str().into()); |
7480 | + results |
7481 | + .reborrow() |
7482 | + .get(i as u32) |
7483 | + .set_timestamp(message.xmpp_timestamp.as_str().into()); |
7484 | + results |
7485 | + .reborrow() |
7486 | + .get(i as u32) |
7487 | + .set_nickname(message.xmpp_nickname.as_str().into()); |
7488 | + results |
7489 | + .reborrow() |
7490 | + .get(i as u32) |
7491 | + .set_body(message.xmpp_body.as_str().into()); |
7492 | + } |
7493 | + Ok(()) |
7494 | + }) |
7495 | + } |
7496 | + } |
7497 | + |
7498 | + pub async fn serve(cfg: Config) -> Result<(), Box<dyn StdError>> { |
7499 | + let db = Database::new(&cfg.database.path, true, false).await?; |
7500 | + let server = ServerImpl { db }; |
7501 | + let runtime = RpcHelper::<Client, ServerImpl>::new(&cfg.socket_path, server); |
7502 | + runtime.serve().await?; |
7503 | + Ok(()) |
7504 | + } |
7505 | diff --git a/ayllu-xmpp/src/xmpp_bot.rs b/ayllu-xmpp/src/xmpp_bot.rs |
7506 | new file mode 100644 |
7507 | index 0000000..9ebc299 |
7508 | --- /dev/null |
7509 | +++ b/ayllu-xmpp/src/xmpp_bot.rs |
7510 | @@ -0,0 +1,117 @@ |
7511 | + use std::collections::HashMap; |
7512 | + use std::error::Error as StdError; |
7513 | + |
7514 | + use time::{format_description::well_known::Rfc3339, OffsetDateTime}; |
7515 | + use tokio_xmpp::parsers::{BareJid, Jid}; |
7516 | + use tracing::log; |
7517 | + use xmpp::{ClientBuilder, ClientFeature, ClientType, Event}; |
7518 | + |
7519 | + use crate::config::Xmpp as Config; |
7520 | + use crate::database_ext::XmppExt; |
7521 | + use ayllu_database::Wrapper as Database; |
7522 | + |
7523 | + pub type Error = Box<dyn StdError>; |
7524 | + |
7525 | + pub async fn serve(config: Config) -> Result<(), Error> { |
7526 | + let db = Database::new(&config.database.path, false, false).await?; |
7527 | + let jid = BareJid::new(&config.jid)?; |
7528 | + let mut client = ClientBuilder::new(jid, &config.password) |
7529 | + .set_client(ClientType::Bot, "ayllu-xmpp") |
7530 | + .set_website("https://ayllu-forge.org/projects/ayllu") |
7531 | + .set_default_nick("ayllu") |
7532 | + .enable_feature(ClientFeature::ContactList) |
7533 | + .enable_feature(ClientFeature::JoinRooms) |
7534 | + .build(); |
7535 | + |
7536 | + let mut channels: Vec<Jid> = Vec::new(); |
7537 | + let mut channels_id_map: HashMap<Jid, i64> = HashMap::new(); |
7538 | + let mut channels_last_message_id: HashMap<Jid, Option<String>> = HashMap::new(); |
7539 | + let mut nick_to_jid: HashMap<Jid, Jid> = HashMap::new(); |
7540 | + |
7541 | + for channel in config.channels { |
7542 | + let jid = Jid::new(&channel.jid)?; |
7543 | + channels.push(jid.clone()); |
7544 | + let channel_id = db.upsert_channel(&channel.jid, "").await?; |
7545 | + channels_id_map.insert(jid.clone(), channel_id); |
7546 | + db.reset_user_counts(&channel.jid).await?; |
7547 | + let last_message_id = db.last_message_id(&channel.jid).await?; |
7548 | + channels_last_message_id.insert(jid, last_message_id); |
7549 | + } |
7550 | + |
7551 | + while let Some(events) = client.wait_for_events().await { |
7552 | + for event in events { |
7553 | + log::debug!("processing event: {:?}", event); |
7554 | + match event { |
7555 | + Event::Online => { |
7556 | + log::info!("Online"); |
7557 | + for channel_jid in channels.iter() { |
7558 | + log::info!("joining channel: {}", channel_jid.to_string()); |
7559 | + client |
7560 | + .join_room(channel_jid.to_bare(), None, None, "en", "๐๐ค") |
7561 | + .await; |
7562 | + let last_message_id = &channels_last_message_id |
7563 | + .get(&channel_jid.clone()) |
7564 | + .unwrap() |
7565 | + .clone(); |
7566 | + client |
7567 | + .request_room_history( |
7568 | + channel_jid.clone(), |
7569 | + last_message_id.as_deref().map(|id| id.as_ref()), |
7570 | + ) |
7571 | + .await |
7572 | + } |
7573 | + } |
7574 | + Event::Disconnected => { |
7575 | + log::warn!("client disconnected"); |
7576 | + } |
7577 | + Event::RoomJoined(jid) => { |
7578 | + // bot has joined the room |
7579 | + log::info!("joined channel: {}", jid); |
7580 | + } |
7581 | + Event::RoomLeft(jid) => { |
7582 | + log::info!("left channel: {}", jid); |
7583 | + } |
7584 | + Event::RoomPresence(room, real, type_) => { |
7585 | + let change: isize = match type_ { |
7586 | + // user is present in channel |
7587 | + tokio_xmpp::parsers::presence::Type::None => 1, |
7588 | + // user in no longer in channel |
7589 | + tokio_xmpp::parsers::presence::Type::Unavailable => -1, |
7590 | + _ => { |
7591 | + todo!("not implemented") |
7592 | + } |
7593 | + }; |
7594 | + nick_to_jid.insert(room.clone(), real.clone()); |
7595 | + db.update_user_count(&room.to_bare().to_string(), change as i64) |
7596 | + .await?; |
7597 | + } |
7598 | + Event::RoomMessage(message_id, from, nick, body) => { |
7599 | + let timestamp = OffsetDateTime::now_utc().format(&Rfc3339).unwrap(); |
7600 | + db.upsert_message( |
7601 | + &message_id.unwrap(), |
7602 | + ×tamp, |
7603 | + &from.to_string(), |
7604 | + &nick, |
7605 | + &body.0, |
7606 | + ) |
7607 | + .await?; |
7608 | + } |
7609 | + Event::ArchivedMessage(message_id, timestamp, from, _, body) => { |
7610 | + let message_id = message_id.unwrap(); |
7611 | + let from = from.unwrap(); |
7612 | + let nickname = from.resource().map(|resource| resource.to_string()); |
7613 | + db.upsert_message( |
7614 | + &message_id, |
7615 | + ×tamp, |
7616 | + &from.to_bare().to_string(), |
7617 | + &nickname.unwrap(), |
7618 | + &body.0, |
7619 | + ) |
7620 | + .await?; |
7621 | + } |
7622 | + _ => (), |
7623 | + } |
7624 | + } |
7625 | + } |
7626 | + Ok(()) |
7627 | + } |
7628 | diff --git a/config.example.toml b/config.example.toml |
7629 | index 70d687b..334fcbc 100644 |
7630 | --- a/config.example.toml |
7631 | +++ b/config.example.toml |
7632 | @@ -1,5 +1,5 @@ |
7633 | # site name used in various places across the instance |
7634 | - site_name = "๐ Crescent" |
7635 | + site_name = "๐ Ayllu" |
7636 | |
7637 | # string that is used in constructing URLs on the frontend, often different |
7638 | # from a listen address when using a reverse proxy. |
7639 | @@ -11,7 +11,7 @@ origin = "http://localhost:8080" |
7640 | # domain = "fuubar.com" |
7641 | |
7642 | # sysadmin contact address |
7643 | - sysadmin = "admin@crescent-forge.org" |
7644 | + sysadmin = "admin@ayllu-forge.org" |
7645 | |
7646 | # number of background threads to drive asynchronous tasks forward with in the |
7647 | # web server and any other component that is multithreaded. Note that all |
7648 | @@ -25,7 +25,7 @@ sysadmin = "admin@crescent-forge.org" |
7649 | # socket for the job server to listen to new requests on. This is typically |
7650 | # used to communicate via git hooks to perform new computation on a repository |
7651 | # after it has been updated. |
7652 | - # jobs_socket_path = "/var/run/user/1000/crescent-jobs.sock" |
7653 | + # jobs_socket_path = "/var/run/user/1000/ayllu-jobs.sock" |
7654 | |
7655 | # URL to suggest for cloning via SSH, if unspecified git cloning option will |
7656 | # not appear in the repository page. |
7657 | @@ -37,7 +37,7 @@ default_theme = "default" |
7658 | # logging level |
7659 | log_level = "debug" |
7660 | |
7661 | - # enable when crescent is being served from a "subpath". Clicking the home |
7662 | + # enable when ayllu is being served from a "subpath". Clicking the home |
7663 | # button will send the user back to /browse instead of /. This is useful if you |
7664 | # have a landing page at the root of your webserver path. |
7665 | subpath_mode = false |
7666 | @@ -45,7 +45,7 @@ subpath_mode = false |
7667 | # friendly message to display on the about page of the main site which might |
7668 | # include details such as contact information, etc. markdown is supported. |
7669 | blurb = """ |
7670 | - # Welcome to Crescent! |
7671 | + # Welcome to Ayllu! |
7672 | """ |
7673 | |
7674 | # The default branch name to use when rendering repositories. If unspecified |
7675 | @@ -161,15 +161,15 @@ path = "/path/to/attic" |
7676 | # command used to send an e-mail |
7677 | # sendmail_command = "/usr/bin/false" |
7678 | # socket path for communicating with the mail server. This will default to your |
7679 | - # XDG_RUNTIME_DIR or /tmp/crescent-mail.sock |
7680 | - # socket_path = /var/run/user/1000/crescent-mail.sock |
7681 | + # XDG_RUNTIME_DIR or /tmp/ayllu-mail.sock |
7682 | + # socket_path = /var/run/user/1000/ayllu-mail.sock |
7683 | |
7684 | # mailing lists to configure and automatically accept e-mail for |
7685 | # [[mail.lists]] |
7686 | # unique identifier across all mailing lists |
7687 | # id = "hello-world" |
7688 | # fully qualified email address where the mailing list lives |
7689 | - # address = "hello@crescent-forge.org" |
7690 | + # address = "hello@ayllu-forge.org" |
7691 | # friendly description |
7692 | # description = "an illistrative mailing list" |
7693 | # free-form string tags to specify the purpose of the mailing list |
7694 | diff --git a/contrib/hooks/post-commit b/contrib/hooks/post-commit |
7695 | index 6541c79..b85fa6c 100644 |
7696 | --- a/contrib/hooks/post-commit |
7697 | +++ b/contrib/hooks/post-commit |
7698 | @@ -1,4 +1,4 @@ |
7699 | #!/bin/sh |
7700 | - # only useful if you're running crescent locally, typically this would |
7701 | + # only useful if you're running ayllu locally, typically this would |
7702 | # instead be used in a server-side hook, i.e. post-receive |
7703 | - crescent jobs run . |
7704 | + ayllu jobs run . |
7705 | diff --git a/contrib/hooks/post-receive b/contrib/hooks/post-receive |
7706 | index 2685707..5d4769a 100644 |
7707 | --- a/contrib/hooks/post-receive |
7708 | +++ b/contrib/hooks/post-receive |
7709 | @@ -1,3 +1,3 @@ |
7710 | #!/bin/sh |
7711 | # called each time a commit is pushed to the remote repository |
7712 | - crescent jobs run . |
7713 | + ayllu jobs run . |
7714 | diff --git a/contrib/systemd/system/crescent.service b/contrib/systemd/system/crescent.service |
7715 | index 623423c..15d84f0 100644 |
7716 | --- a/contrib/systemd/system/crescent.service |
7717 | +++ b/contrib/systemd/system/crescent.service |
7718 | @@ -1,8 +1,8 @@ |
7719 | [Unit] |
7720 | - Description=Crescent Hyper Performant Code Forge |
7721 | + Description=Ayllu Hyper Performant Code Forge |
7722 | |
7723 | [Service] |
7724 | - ExecStart=/usr/bin/crescent serve |
7725 | + ExecStart=/usr/bin/ayllu serve |
7726 | User=git |
7727 | Group=git |
7728 | |
7729 | diff --git a/contrib/systemd/user/crescent.service b/contrib/systemd/user/crescent.service |
7730 | index 2cb90a5..2ac3cef 100644 |
7731 | --- a/contrib/systemd/user/crescent.service |
7732 | +++ b/contrib/systemd/user/crescent.service |
7733 | @@ -1,8 +1,8 @@ |
7734 | [Unit] |
7735 | - Description=Crescent Hyper Performant Code Forge |
7736 | + Description=Ayllu Hyper Performant Code Forge |
7737 | |
7738 | [Service] |
7739 | - ExecStart=/usr/bin/crescent serve |
7740 | + ExecStart=/usr/bin/ayllu serve |
7741 | |
7742 | [Install] |
7743 | WantedBy=default.target |
7744 | diff --git a/crates/api/Cargo.toml b/crates/api/Cargo.toml |
7745 | index c14d32e..c83cb5f 100644 |
7746 | --- a/crates/api/Cargo.toml |
7747 | +++ b/crates/api/Cargo.toml |
7748 | @@ -1,5 +1,5 @@ |
7749 | [package] |
7750 | - name = "crescent_api" |
7751 | + name = "ayllu_api" |
7752 | version = "0.2.1" |
7753 | edition = "2021" |
7754 | |
7755 | diff --git a/crates/api/README.md b/crates/api/README.md |
7756 | index 882056a..e119d65 100644 |
7757 | --- a/crates/api/README.md |
7758 | +++ b/crates/api/README.md |
7759 | @@ -1,6 +1,6 @@ |
7760 | # api |
7761 | |
7762 | - capnp plugin interfaces for crescent. |
7763 | + capnp plugin interfaces for ayllu. |
7764 | |
7765 | There are two types of plugins: |
7766 | |
7767 | diff --git a/crates/config/Cargo.toml b/crates/config/Cargo.toml |
7768 | index 8eb6571..1589905 100644 |
7769 | --- a/crates/config/Cargo.toml |
7770 | +++ b/crates/config/Cargo.toml |
7771 | @@ -1,5 +1,5 @@ |
7772 | [package] |
7773 | - name = "crescent_config" |
7774 | + name = "ayllu_config" |
7775 | version = "0.2.1" |
7776 | edition = "2021" |
7777 | |
7778 | diff --git a/crates/config/src/reader.rs b/crates/config/src/reader.rs |
7779 | index 15bcbf2..2c0463d 100644 |
7780 | --- a/crates/config/src/reader.rs |
7781 | +++ b/crates/config/src/reader.rs |
7782 | @@ -25,18 +25,18 @@ where |
7783 | { |
7784 | fn _try_read() -> Option<String> { |
7785 | let home_config = match env::var("XDG_CONFIG_HOME") { |
7786 | - Ok(path) => PathBuf::from_iter([path.as_str(), "crescent", "config.toml"]), |
7787 | + Ok(path) => PathBuf::from_iter([path.as_str(), "ayllu", "config.toml"]), |
7788 | Err(_) => PathBuf::from_iter([ |
7789 | env::var("HOME").unwrap_or(String::from("/")).as_str(), |
7790 | ".config", |
7791 | - "crescent", |
7792 | + "ayllu", |
7793 | "config.toml", |
7794 | ]), |
7795 | }; |
7796 | for path in [ |
7797 | home_config.to_str().unwrap(), |
7798 | "config.toml", |
7799 | - "/etc/crescent/config.toml", |
7800 | + "/etc/ayllu/config.toml", |
7801 | ] { |
7802 | eprintln!("reading configuration from {}", path); |
7803 | let ret = read_to_string(path); |
7804 | @@ -69,12 +69,12 @@ where |
7805 | /// return the XDG_DATA_DIR |
7806 | pub fn data_dir() -> PathBuf { |
7807 | match env::var("XDG_DATA_DIR") { |
7808 | - Ok(value) => PathBuf::from_iter([value.as_str(), "crescent"]), |
7809 | + Ok(value) => PathBuf::from_iter([value.as_str(), "ayllu"]), |
7810 | Err(_) => PathBuf::from_iter([ |
7811 | env::var("HOME").unwrap_or(String::from("/")).as_str(), |
7812 | ".local", |
7813 | "share", |
7814 | - "crescent", |
7815 | + "ayllu", |
7816 | ]), |
7817 | } |
7818 | } |
7819 | diff --git a/crates/database/Cargo.toml b/crates/database/Cargo.toml |
7820 | index e477e09..93fcadf 100644 |
7821 | --- a/crates/database/Cargo.toml |
7822 | +++ b/crates/database/Cargo.toml |
7823 | @@ -1,5 +1,5 @@ |
7824 | [package] |
7825 | - name = "crescent_database" |
7826 | + name = "ayllu_database" |
7827 | version = "0.2.1" |
7828 | edition = "2021" |
7829 | |
7830 | diff --git a/crates/git/Cargo.toml b/crates/git/Cargo.toml |
7831 | index e6d2438..2c5f0fd 100644 |
7832 | --- a/crates/git/Cargo.toml |
7833 | +++ b/crates/git/Cargo.toml |
7834 | @@ -1,5 +1,5 @@ |
7835 | [package] |
7836 | - name = "crescent_git" |
7837 | + name = "ayllu_git" |
7838 | version = "0.2.1" |
7839 | edition = "2021" |
7840 | |
7841 | diff --git a/crates/git/src/config.rs b/crates/git/src/config.rs |
7842 | index 042324f..17f2ee8 100644 |
7843 | --- a/crates/git/src/config.rs |
7844 | +++ b/crates/git/src/config.rs |
7845 | @@ -25,7 +25,7 @@ pub struct ChatLink { |
7846 | pub kind: ChatKind, |
7847 | } |
7848 | |
7849 | - // crescent specific configuration from a git repository |
7850 | + // ayllu specific configuration from a git repository |
7851 | #[derive(Serialize, Clone, Debug)] |
7852 | pub struct Config { |
7853 | pub description: Option<String>, |
7854 | diff --git a/crates/git/src/wrapper.rs b/crates/git/src/wrapper.rs |
7855 | index 5b088cb..12c80d0 100644 |
7856 | --- a/crates/git/src/wrapper.rs |
7857 | +++ b/crates/git/src/wrapper.rs |
7858 | @@ -206,7 +206,7 @@ impl Wrapper { |
7859 | .take(12) |
7860 | .map(char::from) |
7861 | .collect(); |
7862 | - let rand_id = format!("crescent-job-{}", rand_id.as_str()); |
7863 | + let rand_id = format!("ayllu-job-{}", rand_id.as_str()); |
7864 | path.push(rand_id.clone()); |
7865 | log::debug!("opening tmp path {}", path.to_str().unwrap()); |
7866 | let tree = self |
7867 | @@ -341,7 +341,7 @@ impl Wrapper { |
7868 | |
7869 | pub fn config(&self) -> Result<config::Config, Error> { |
7870 | let git_config = &self.repository.config()?; |
7871 | - let chat = config::strings(git_config, "crescent.chat")?; |
7872 | + let chat = config::strings(git_config, "ayllu.chat")?; |
7873 | let chat = chat |
7874 | .map(|entries| { |
7875 | entries.iter().try_fold(Vec::new(), |mut accm, entry| { |
7876 | @@ -366,7 +366,7 @@ impl Wrapper { |
7877 | }) |
7878 | }) |
7879 | .transpose()?; |
7880 | - let mail = config::strings(git_config, "crescent.mail")?; |
7881 | + let mail = config::strings(git_config, "ayllu.mail")?; |
7882 | let mail = mail.map(|entries| { |
7883 | entries |
7884 | .iter() |
7885 | @@ -374,16 +374,16 @@ impl Wrapper { |
7886 | .collect() |
7887 | }); |
7888 | Ok(config::Config { |
7889 | - description: config::string(git_config, "crescent.description"), |
7890 | - homepage: config::string(git_config, "crescent.homepage"), |
7891 | - default_branch: config::string(git_config, "crescent.default-branch"), |
7892 | + description: config::string(git_config, "ayllu.description"), |
7893 | + homepage: config::string(git_config, "ayllu.homepage"), |
7894 | + default_branch: config::string(git_config, "ayllu.default-branch"), |
7895 | chat, |
7896 | mail, |
7897 | - hidden: config::bool(git_config, "crescent.hidden"), |
7898 | + hidden: config::bool(git_config, "ayllu.hidden"), |
7899 | sites: config::Sites { |
7900 | - header: config::string(git_config, "crescent-sites.header"), |
7901 | - content: config::string(git_config, "crescent-sites.content"), |
7902 | - branch: config::string(git_config, "crescent-sites.branch"), |
7903 | + header: config::string(git_config, "ayllu-sites.header"), |
7904 | + content: config::string(git_config, "ayllu-sites.content"), |
7905 | + branch: config::string(git_config, "ayllu-sites.branch"), |
7906 | }, |
7907 | }) |
7908 | } |
7909 | diff --git a/crates/rpc/Cargo.toml b/crates/rpc/Cargo.toml |
7910 | index f5dce93..3133248 100644 |
7911 | --- a/crates/rpc/Cargo.toml |
7912 | +++ b/crates/rpc/Cargo.toml |
7913 | @@ -1,5 +1,5 @@ |
7914 | [package] |
7915 | - name = "crescent_rpc" |
7916 | + name = "ayllu_rpc" |
7917 | version = "0.2.1" |
7918 | edition = "2021" |
7919 | |
7920 | diff --git a/crates/scheduler/Cargo.toml b/crates/scheduler/Cargo.toml |
7921 | index a7b3815..73ccbbd 100644 |
7922 | --- a/crates/scheduler/Cargo.toml |
7923 | +++ b/crates/scheduler/Cargo.toml |
7924 | @@ -1,5 +1,5 @@ |
7925 | [package] |
7926 | - name = "crescent_scheduler" |
7927 | + name = "ayllu_scheduler" |
7928 | version = "0.2.1" |
7929 | edition = "2021" |
7930 | |
7931 | diff --git a/crescent-build/Cargo.toml b/crescent-build/Cargo.toml |
7932 | deleted file mode 100644 |
7933 | index a3770f9..0000000 |
7934 | --- a/crescent-build/Cargo.toml |
7935 | +++ /dev/null |
7936 | @@ -1,18 +0,0 @@ |
7937 | - [package] |
7938 | - name = "crescent_build" |
7939 | - version = "0.2.1" |
7940 | - edition = "2021" |
7941 | - |
7942 | - [dependencies] |
7943 | - anyhow = "1.0.75" |
7944 | - clap = "4.4.8" |
7945 | - crescent_api = {workspace = true} |
7946 | - crescent_config = {workspace = true} |
7947 | - crescent_rpc = {workspace = true} |
7948 | - crescent_scheduler = {workspace = true} |
7949 | - nickel-lang-core = { version = "0.3.0", default-features = false } |
7950 | - petgraph = "0.6.4" |
7951 | - rand = "0.8.5" |
7952 | - serde = "1.0.193" |
7953 | - tracing = "0.1.40" |
7954 | - tracing-subscriber = "0.3.18" |
7955 | diff --git a/crescent-build/README.md b/crescent-build/README.md |
7956 | deleted file mode 100644 |
7957 | index 45ffe4f..0000000 |
7958 | --- a/crescent-build/README.md |
7959 | +++ /dev/null |
7960 | @@ -1,3 +0,0 @@ |
7961 | - # crescent-build |
7962 | - |
7963 | - [LXC](https://linuxcontainers.org/) based software build system for Crescent |
7964 | diff --git a/crescent-build/hack/build-system b/crescent-build/hack/build-system |
7965 | deleted file mode 100755 |
7966 | index 760e113..0000000 |
7967 | --- a/crescent-build/hack/build-system |
7968 | +++ /dev/null |
7969 | @@ -1,73 +0,0 @@ |
7970 | - #!/usr/bin/env python |
7971 | - |
7972 | - import logging |
7973 | - import sys |
7974 | - import argparse |
7975 | - import json |
7976 | - import subprocess |
7977 | - from graphlib import TopologicalSorter |
7978 | - from collections import namedtuple |
7979 | - from os import path |
7980 | - |
7981 | - logging.basicConfig(format='%(asctime)s %(levelname)s %(message)s', level=logging.DEBUG) |
7982 | - |
7983 | - |
7984 | - Job = namedtuple("Job", ["name", "steps", "dependencies"]) |
7985 | - Step = namedtuple("Step", ["name", "command"]) |
7986 | - |
7987 | - |
7988 | - def _load_step(json_input): |
7989 | - name = json_input["name"] |
7990 | - if "shell" in json_input: |
7991 | - shell = json_input["shell"] |
7992 | - else: |
7993 | - shell = "/bin/sh" |
7994 | - input = json_input["input"] |
7995 | - command = [shell, "-c", "set -xe;\n" + input] |
7996 | - return Step(name, command) |
7997 | - |
7998 | - |
7999 | - def _load_job(json_input): |
8000 | - name = json_input["name"] |
8001 | - if "dependencies" in json_input: |
8002 | - dependencies = json_input["dependencies"] |
8003 | - else: |
8004 | - dependencies = [] |
8005 | - return Job(name, [_load_step(step) for step in json_input["steps"]], dependencies) |
8006 | - |
8007 | - |
8008 | - def _invoke_job(job): |
8009 | - for step in job.steps: |
8010 | - logging.info(f"running step: {step.name}") |
8011 | - subprocess.check_call(step.command) |
8012 | - |
8013 | - |
8014 | - def _run_build_system(script_path): |
8015 | - if path.isdir(script_path): |
8016 | - script_path = path.join(script_path, "Moonbuild") |
8017 | - output = subprocess.check_output(["nickel", "export", script_path]) |
8018 | - config = json.loads(output) |
8019 | - graph = dict() |
8020 | - jobs_by_name = dict() |
8021 | - jobs = [_load_job(job) for job in config["jobs"]] |
8022 | - for job in jobs: |
8023 | - graph.update({job.name: set(job.dependencies)}) |
8024 | - jobs_by_name[job.name] = job |
8025 | - ts = TopologicalSorter(graph) |
8026 | - for entry in ts.static_order(): |
8027 | - job = jobs_by_name[entry] |
8028 | - logging.info(f"running job: {job.name}") |
8029 | - _invoke_job(job) |
8030 | - |
8031 | - |
8032 | - def main(): |
8033 | - parser = argparse.ArgumentParser("build-system") |
8034 | - parser.add_argument( |
8035 | - "BUILD_DIR", help="path to a directory containg a Moonbuild script" |
8036 | - ) |
8037 | - args = parser.parse_args() |
8038 | - _run_build_system(args.BUILD_DIR) |
8039 | - |
8040 | - |
8041 | - if __name__ == "__main__": |
8042 | - main() |
8043 | diff --git a/crescent-build/src/evaluate.rs b/crescent-build/src/evaluate.rs |
8044 | deleted file mode 100644 |
8045 | index 1ae0c03..0000000 |
8046 | --- a/crescent-build/src/evaluate.rs |
8047 | +++ /dev/null |
8048 | @@ -1,119 +0,0 @@ |
8049 | - use std::collections::HashMap; |
8050 | - use std::env::temp_dir; |
8051 | - use std::fs::{remove_file, File}; |
8052 | - |
8053 | - use anyhow::{format_err, Result}; |
8054 | - use nickel_lang_core::{eval::cache::lazy::CBNCache, program::Program}; |
8055 | - use petgraph::{ |
8056 | - algo::is_cyclic_directed, |
8057 | - graph::{DiGraph, NodeIndex}, |
8058 | - visit::Dfs, |
8059 | - Direction, |
8060 | - }; |
8061 | - use rand::distributions::{Alphanumeric, DistString}; |
8062 | - use serde::Deserialize; |
8063 | - use tracing::log::info; |
8064 | - |
8065 | - pub type JobGraph = DiGraph<Job, i32>; |
8066 | - |
8067 | - #[derive(Deserialize, Debug, Clone)] |
8068 | - pub struct Step { |
8069 | - pub name: String, |
8070 | - pub shell: String, |
8071 | - pub input: String, |
8072 | - } |
8073 | - |
8074 | - #[derive(Deserialize, Debug, Clone)] |
8075 | - pub struct Job { |
8076 | - pub name: String, |
8077 | - pub dependencies: Vec<String>, |
8078 | - pub steps: Vec<Step>, |
8079 | - } |
8080 | - |
8081 | - #[derive(Deserialize, Debug, Clone)] |
8082 | - pub struct Manifest { |
8083 | - pub jobs: Vec<Job>, |
8084 | - } |
8085 | - |
8086 | - impl Manifest { |
8087 | - pub fn to_graph(&self) -> Result<(NodeIndex, JobGraph)> { |
8088 | - let mut by_name: HashMap<String, NodeIndex> = HashMap::new(); |
8089 | - let mut graph = DiGraph::new(); |
8090 | - self.jobs.iter().for_each(|job| { |
8091 | - by_name.insert(job.name.clone(), graph.add_node(job.clone())); |
8092 | - }); |
8093 | - for job in self.jobs.iter() { |
8094 | - let job_index = by_name.get(&job.name).unwrap(); |
8095 | - for dependency in job.dependencies.iter() { |
8096 | - match by_name.get(dependency.as_str()) { |
8097 | - Some(index) => { |
8098 | - graph.add_edge(*job_index, *index, 0); |
8099 | - } |
8100 | - None => return Err(format_err!("missing dependency: {}", job.name)), |
8101 | - } |
8102 | - } |
8103 | - } |
8104 | - if is_cyclic_directed(&graph) { |
8105 | - return Err(format_err!("graph contains a cycle")); |
8106 | - } |
8107 | - // first job without dependencies |
8108 | - let first_job = self |
8109 | - .jobs |
8110 | - .iter() |
8111 | - .find_map(|job| { |
8112 | - if job.dependencies.len() == 0 { |
8113 | - Some(by_name.get(&job.name).unwrap()) |
8114 | - } else { |
8115 | - None |
8116 | - } |
8117 | - }) |
8118 | - .unwrap(); |
8119 | - Ok((*first_job, graph)) |
8120 | - } |
8121 | - } |
8122 | - |
8123 | - pub fn build_id() -> String { |
8124 | - Alphanumeric.sample_string(&mut rand::thread_rng(), 16) |
8125 | - } |
8126 | - |
8127 | - // evaluate the target file in a given directory |
8128 | - pub fn eval(build_id: &str, target: &str) -> Result<()> { |
8129 | - info!("evaluating target: {}", target); |
8130 | - // TODO: this doesn't seem to actually do anything but is needed to parse |
8131 | - // the program. A PR that abstracted this and makes it easy to deserialize |
8132 | - // items with Serde directly would be nice. |
8133 | - let cache_path = format!( |
8134 | - "{}/crescent-build-{}", |
8135 | - temp_dir().to_str().unwrap(), |
8136 | - build_id |
8137 | - ); |
8138 | - let fp = File::create(&cache_path)?; |
8139 | - let mut result = Program::<CBNCache>::new_from_file(target, fp)?; |
8140 | - match result.eval_full() { |
8141 | - Ok(term) => { |
8142 | - let manifest = Manifest::deserialize(term)?; |
8143 | - info!("manifest loaded successfully"); |
8144 | - let (start, job_graph) = manifest.to_graph()?; |
8145 | - // TODO: parallelism |
8146 | - info!("processing {} jobs", job_graph.node_count()); |
8147 | - let mut dfs = Dfs::new(&job_graph, start); |
8148 | - while let Some(nx) = dfs.next(&job_graph) { |
8149 | - let job = &job_graph[nx]; |
8150 | - info!("processing job: {}", job.name); |
8151 | - // TODO |
8152 | - info!("finished job: {}", job.name); |
8153 | - } |
8154 | - // finish jobs without any dependencies last if they exist |
8155 | - for nx in job_graph.externals(Direction::Incoming) { |
8156 | - let job = &job_graph[nx]; |
8157 | - info!("processing job: {}", job.name); |
8158 | - // TODO |
8159 | - info!("finished job: {}", job.name); |
8160 | - } |
8161 | - info!("cleaning up cache path: {}", &cache_path); |
8162 | - remove_file(&cache_path)?; |
8163 | - Ok(()) |
8164 | - } |
8165 | - Err(err) => Err(format_err!("failed to load manifest: {:?}", err)), |
8166 | - } |
8167 | - } |
8168 | diff --git a/crescent-build/src/main.rs b/crescent-build/src/main.rs |
8169 | deleted file mode 100644 |
8170 | index dfb5b68..0000000 |
8171 | --- a/crescent-build/src/main.rs |
8172 | +++ /dev/null |
8173 | @@ -1,60 +0,0 @@ |
8174 | - use std::io::stderr; |
8175 | - use std::str::FromStr; |
8176 | - |
8177 | - use anyhow::Result; |
8178 | - use clap::{arg, value_parser, Command}; |
8179 | - use tracing::{log::info, Level}; |
8180 | - use tracing_subscriber; |
8181 | - |
8182 | - mod evaluate; |
8183 | - mod server; |
8184 | - |
8185 | - pub fn main() -> Result<()> { |
8186 | - let command = Command::new("crescent-build") |
8187 | - .about("crescent build system") |
8188 | - .arg( |
8189 | - arg!(-c --config <FILE> "optional path to a configuration file") |
8190 | - .id("config") |
8191 | - .required(false) |
8192 | - .value_parser(value_parser!(String)), |
8193 | - ) |
8194 | - .arg( |
8195 | - arg!(-l --level <LEVEL> "logging level [ERROR,WARN,INFO,DEBUG,TRACE]") |
8196 | - .id("level") |
8197 | - .required(false) |
8198 | - .value_parser(value_parser!(Level)), |
8199 | - ) |
8200 | - .subcommand_required(true) |
8201 | - .subcommand(Command::new("serve")) |
8202 | - .about("run the build server and listen for commands") |
8203 | - .subcommand( |
8204 | - Command::new("evaluate").arg( |
8205 | - arg!(-s --script <SCRIPT> "alternate build script path") |
8206 | - .id("script") |
8207 | - .required(false), |
8208 | - ), |
8209 | - ) |
8210 | - .about("evaluate a local build script"); |
8211 | - |
8212 | - let matches = command.get_matches(); |
8213 | - let log_level = matches |
8214 | - .get_one::<Level>("level").unwrap_or(&Level::INFO); |
8215 | - tracing_subscriber::fmt() |
8216 | - .compact() |
8217 | - .with_max_level(*log_level) |
8218 | - .with_line_number(true) |
8219 | - .with_level(true) |
8220 | - .with_writer(stderr) |
8221 | - .init(); |
8222 | - info!("logger initialized"); |
8223 | - if let Some(matches) = matches.subcommand_matches("serve") { |
8224 | - } else if let Some(matches) = matches.subcommand_matches("evaluate") { |
8225 | - // TODO: refactor into .crescent helper directory |
8226 | - let build_script = matches |
8227 | - .get_one::<String>("script") |
8228 | - .unwrap_or(&String::from("Moonbuild.ncl")) |
8229 | - .clone(); |
8230 | - evaluate::eval(&evaluate::build_id(), &build_script)? |
8231 | - }; |
8232 | - Ok(()) |
8233 | - } |
8234 | diff --git a/crescent-build/src/server.rs b/crescent-build/src/server.rs |
8235 | deleted file mode 100644 |
8236 | index e69de29..0000000 |
8237 | --- a/crescent-build/src/server.rs |
8238 | +++ /dev/null |
8239 | diff --git a/crescent-mail/Cargo.lock b/crescent-mail/Cargo.lock |
8240 | deleted file mode 100644 |
8241 | index 2d6005e..0000000 |
8242 | --- a/crescent-mail/Cargo.lock |
8243 | +++ /dev/null |
8244 | @@ -1,3558 +0,0 @@ |
8245 | - # This file is automatically @generated by Cargo. |
8246 | - # It is not intended for manual editing. |
8247 | - version = 3 |
8248 | - |
8249 | - [[package]] |
8250 | - name = "addr2line" |
8251 | - version = "0.21.0" |
8252 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8253 | - checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" |
8254 | - dependencies = [ |
8255 | - "gimli", |
8256 | - ] |
8257 | - |
8258 | - [[package]] |
8259 | - name = "adler" |
8260 | - version = "1.0.2" |
8261 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8262 | - checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" |
8263 | - |
8264 | - [[package]] |
8265 | - name = "ahash" |
8266 | - version = "0.7.6" |
8267 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8268 | - checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" |
8269 | - dependencies = [ |
8270 | - "getrandom", |
8271 | - "once_cell", |
8272 | - "version_check", |
8273 | - ] |
8274 | - |
8275 | - [[package]] |
8276 | - name = "ahash" |
8277 | - version = "0.8.3" |
8278 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8279 | - checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" |
8280 | - dependencies = [ |
8281 | - "cfg-if 1.0.0", |
8282 | - "getrandom", |
8283 | - "once_cell", |
8284 | - "serde", |
8285 | - "version_check", |
8286 | - ] |
8287 | - |
8288 | - [[package]] |
8289 | - name = "aho-corasick" |
8290 | - version = "1.1.2" |
8291 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8292 | - checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" |
8293 | - dependencies = [ |
8294 | - "memchr", |
8295 | - ] |
8296 | - |
8297 | - [[package]] |
8298 | - name = "alloc-no-stdlib" |
8299 | - version = "2.0.4" |
8300 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8301 | - checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" |
8302 | - |
8303 | - [[package]] |
8304 | - name = "alloc-stdlib" |
8305 | - version = "0.2.2" |
8306 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8307 | - checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" |
8308 | - dependencies = [ |
8309 | - "alloc-no-stdlib", |
8310 | - ] |
8311 | - |
8312 | - [[package]] |
8313 | - name = "allocator-api2" |
8314 | - version = "0.2.16" |
8315 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8316 | - checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" |
8317 | - |
8318 | - [[package]] |
8319 | - name = "android-tzdata" |
8320 | - version = "0.1.1" |
8321 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8322 | - checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" |
8323 | - |
8324 | - [[package]] |
8325 | - name = "android_system_properties" |
8326 | - version = "0.1.5" |
8327 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8328 | - checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" |
8329 | - dependencies = [ |
8330 | - "libc", |
8331 | - ] |
8332 | - |
8333 | - [[package]] |
8334 | - name = "anyhow" |
8335 | - version = "1.0.75" |
8336 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8337 | - checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" |
8338 | - |
8339 | - [[package]] |
8340 | - name = "arrayref" |
8341 | - version = "0.3.7" |
8342 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8343 | - checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" |
8344 | - |
8345 | - [[package]] |
8346 | - name = "arrayvec" |
8347 | - version = "0.5.2" |
8348 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8349 | - checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" |
8350 | - |
8351 | - [[package]] |
8352 | - name = "async-channel" |
8353 | - version = "1.9.0" |
8354 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8355 | - checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" |
8356 | - dependencies = [ |
8357 | - "concurrent-queue", |
8358 | - "event-listener 2.5.3", |
8359 | - "futures-core", |
8360 | - ] |
8361 | - |
8362 | - [[package]] |
8363 | - name = "async-compression" |
8364 | - version = "0.4.3" |
8365 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8366 | - checksum = "bb42b2197bf15ccb092b62c74515dbd8b86d0effd934795f6687c93b6e679a2c" |
8367 | - dependencies = [ |
8368 | - "brotli", |
8369 | - "futures-core", |
8370 | - "memchr", |
8371 | - "pin-project-lite", |
8372 | - "tokio", |
8373 | - ] |
8374 | - |
8375 | - [[package]] |
8376 | - name = "async-executor" |
8377 | - version = "1.5.4" |
8378 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8379 | - checksum = "2c1da3ae8dabd9c00f453a329dfe1fb28da3c0a72e2478cdcd93171740c20499" |
8380 | - dependencies = [ |
8381 | - "async-lock", |
8382 | - "async-task", |
8383 | - "concurrent-queue", |
8384 | - "fastrand 2.0.1", |
8385 | - "futures-lite", |
8386 | - "slab", |
8387 | - ] |
8388 | - |
8389 | - [[package]] |
8390 | - name = "async-fs" |
8391 | - version = "1.6.0" |
8392 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8393 | - checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" |
8394 | - dependencies = [ |
8395 | - "async-lock", |
8396 | - "autocfg", |
8397 | - "blocking", |
8398 | - "futures-lite", |
8399 | - ] |
8400 | - |
8401 | - [[package]] |
8402 | - name = "async-io" |
8403 | - version = "1.13.0" |
8404 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8405 | - checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" |
8406 | - dependencies = [ |
8407 | - "async-lock", |
8408 | - "autocfg", |
8409 | - "cfg-if 1.0.0", |
8410 | - "concurrent-queue", |
8411 | - "futures-lite", |
8412 | - "log", |
8413 | - "parking", |
8414 | - "polling", |
8415 | - "rustix 0.37.24", |
8416 | - "slab", |
8417 | - "socket2 0.4.9", |
8418 | - "waker-fn", |
8419 | - ] |
8420 | - |
8421 | - [[package]] |
8422 | - name = "async-lock" |
8423 | - version = "2.8.0" |
8424 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8425 | - checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" |
8426 | - dependencies = [ |
8427 | - "event-listener 2.5.3", |
8428 | - ] |
8429 | - |
8430 | - [[package]] |
8431 | - name = "async-net" |
8432 | - version = "1.8.0" |
8433 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8434 | - checksum = "0434b1ed18ce1cf5769b8ac540e33f01fa9471058b5e89da9e06f3c882a8c12f" |
8435 | - dependencies = [ |
8436 | - "async-io", |
8437 | - "blocking", |
8438 | - "futures-lite", |
8439 | - ] |
8440 | - |
8441 | - [[package]] |
8442 | - name = "async-process" |
8443 | - version = "1.8.1" |
8444 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8445 | - checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88" |
8446 | - dependencies = [ |
8447 | - "async-io", |
8448 | - "async-lock", |
8449 | - "async-signal", |
8450 | - "blocking", |
8451 | - "cfg-if 1.0.0", |
8452 | - "event-listener 3.0.0", |
8453 | - "futures-lite", |
8454 | - "rustix 0.38.18", |
8455 | - "windows-sys", |
8456 | - ] |
8457 | - |
8458 | - [[package]] |
8459 | - name = "async-session" |
8460 | - version = "3.0.0" |
8461 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8462 | - checksum = "07da4ce523b4e2ebaaf330746761df23a465b951a83d84bbce4233dabedae630" |
8463 | - dependencies = [ |
8464 | - "anyhow", |
8465 | - "async-lock", |
8466 | - "async-trait", |
8467 | - "base64 0.13.1", |
8468 | - "bincode", |
8469 | - "blake3", |
8470 | - "chrono", |
8471 | - "hmac 0.11.0", |
8472 | - "log", |
8473 | - "rand", |
8474 | - "serde", |
8475 | - "serde_json", |
8476 | - "sha2 0.9.9", |
8477 | - ] |
8478 | - |
8479 | - [[package]] |
8480 | - name = "async-signal" |
8481 | - version = "0.2.4" |
8482 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8483 | - checksum = "d2a5415b7abcdc9cd7d63d6badba5288b2ca017e3fbd4173b8f405449f1a2399" |
8484 | - dependencies = [ |
8485 | - "async-io", |
8486 | - "async-lock", |
8487 | - "atomic-waker", |
8488 | - "cfg-if 1.0.0", |
8489 | - "futures-core", |
8490 | - "futures-io", |
8491 | - "rustix 0.38.18", |
8492 | - "signal-hook-registry", |
8493 | - "slab", |
8494 | - "windows-sys", |
8495 | - ] |
8496 | - |
8497 | - [[package]] |
8498 | - name = "async-stream" |
8499 | - version = "0.3.5" |
8500 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8501 | - checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" |
8502 | - dependencies = [ |
8503 | - "async-stream-impl", |
8504 | - "futures-core", |
8505 | - "pin-project-lite", |
8506 | - ] |
8507 | - |
8508 | - [[package]] |
8509 | - name = "async-stream-impl" |
8510 | - version = "0.3.5" |
8511 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8512 | - checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" |
8513 | - dependencies = [ |
8514 | - "proc-macro2", |
8515 | - "quote", |
8516 | - "syn 2.0.38", |
8517 | - ] |
8518 | - |
8519 | - [[package]] |
8520 | - name = "async-task" |
8521 | - version = "4.4.1" |
8522 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8523 | - checksum = "b9441c6b2fe128a7c2bf680a44c34d0df31ce09e5b7e401fcca3faa483dbc921" |
8524 | - |
8525 | - [[package]] |
8526 | - name = "async-trait" |
8527 | - version = "0.1.73" |
8528 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8529 | - checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" |
8530 | - dependencies = [ |
8531 | - "proc-macro2", |
8532 | - "quote", |
8533 | - "syn 2.0.38", |
8534 | - ] |
8535 | - |
8536 | - [[package]] |
8537 | - name = "atomic-waker" |
8538 | - version = "1.1.2" |
8539 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8540 | - checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" |
8541 | - |
8542 | - [[package]] |
8543 | - name = "atty" |
8544 | - version = "0.2.14" |
8545 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8546 | - checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" |
8547 | - dependencies = [ |
8548 | - "hermit-abi 0.1.19", |
8549 | - "libc", |
8550 | - "winapi 0.3.9", |
8551 | - ] |
8552 | - |
8553 | - [[package]] |
8554 | - name = "autocfg" |
8555 | - version = "1.1.0" |
8556 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8557 | - checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" |
8558 | - |
8559 | - [[package]] |
8560 | - name = "axum" |
8561 | - version = "0.6.20" |
8562 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8563 | - checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" |
8564 | - dependencies = [ |
8565 | - "async-trait", |
8566 | - "axum-core", |
8567 | - "bitflags 1.3.2", |
8568 | - "bytes", |
8569 | - "futures-util", |
8570 | - "headers", |
8571 | - "http", |
8572 | - "http-body", |
8573 | - "hyper", |
8574 | - "itoa", |
8575 | - "matchit", |
8576 | - "memchr", |
8577 | - "mime", |
8578 | - "percent-encoding", |
8579 | - "pin-project-lite", |
8580 | - "rustversion", |
8581 | - "serde", |
8582 | - "serde_json", |
8583 | - "serde_path_to_error", |
8584 | - "serde_urlencoded", |
8585 | - "sync_wrapper", |
8586 | - "tokio", |
8587 | - "tower", |
8588 | - "tower-layer", |
8589 | - "tower-service", |
8590 | - ] |
8591 | - |
8592 | - [[package]] |
8593 | - name = "axum-core" |
8594 | - version = "0.3.4" |
8595 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8596 | - checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" |
8597 | - dependencies = [ |
8598 | - "async-trait", |
8599 | - "bytes", |
8600 | - "futures-util", |
8601 | - "http", |
8602 | - "http-body", |
8603 | - "mime", |
8604 | - "rustversion", |
8605 | - "tower-layer", |
8606 | - "tower-service", |
8607 | - ] |
8608 | - |
8609 | - [[package]] |
8610 | - name = "axum-extra" |
8611 | - version = "0.7.7" |
8612 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8613 | - checksum = "a93e433be9382c737320af3924f7d5fc6f89c155cf2bf88949d8f5126fab283f" |
8614 | - dependencies = [ |
8615 | - "axum", |
8616 | - "axum-core", |
8617 | - "axum-macros", |
8618 | - "bytes", |
8619 | - "cookie", |
8620 | - "form_urlencoded", |
8621 | - "futures-util", |
8622 | - "http", |
8623 | - "http-body", |
8624 | - "mime", |
8625 | - "percent-encoding", |
8626 | - "pin-project-lite", |
8627 | - "serde", |
8628 | - "serde_html_form", |
8629 | - "tokio", |
8630 | - "tower", |
8631 | - "tower-layer", |
8632 | - "tower-service", |
8633 | - ] |
8634 | - |
8635 | - [[package]] |
8636 | - name = "axum-login" |
8637 | - version = "0.5.0" |
8638 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8639 | - checksum = "2160b4bfd1db39feb3e689c287519d4b9234a5bcbdf89e975027b04d25c4bc32" |
8640 | - dependencies = [ |
8641 | - "async-trait", |
8642 | - "axum", |
8643 | - "axum-sessions", |
8644 | - "base64 0.13.1", |
8645 | - "dyn-clone", |
8646 | - "eyre", |
8647 | - "futures", |
8648 | - "ring", |
8649 | - "secrecy", |
8650 | - "serde", |
8651 | - "serde_json", |
8652 | - "tokio", |
8653 | - "tower", |
8654 | - "tower-http 0.3.5", |
8655 | - "tracing", |
8656 | - ] |
8657 | - |
8658 | - [[package]] |
8659 | - name = "axum-macros" |
8660 | - version = "0.3.8" |
8661 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8662 | - checksum = "cdca6a10ecad987bda04e95606ef85a5417dcaac1a78455242d72e031e2b6b62" |
8663 | - dependencies = [ |
8664 | - "heck", |
8665 | - "proc-macro2", |
8666 | - "quote", |
8667 | - "syn 2.0.38", |
8668 | - ] |
8669 | - |
8670 | - [[package]] |
8671 | - name = "axum-sessions" |
8672 | - version = "0.5.0" |
8673 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8674 | - checksum = "714cad544cd87d8da821cda715bb9aaa5d4d1adbdb64c549b18138e3cbf93c44" |
8675 | - dependencies = [ |
8676 | - "async-session", |
8677 | - "axum", |
8678 | - "axum-extra", |
8679 | - "futures", |
8680 | - "http-body", |
8681 | - "tokio", |
8682 | - "tower", |
8683 | - "tracing", |
8684 | - ] |
8685 | - |
8686 | - [[package]] |
8687 | - name = "backtrace" |
8688 | - version = "0.3.69" |
8689 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8690 | - checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" |
8691 | - dependencies = [ |
8692 | - "addr2line", |
8693 | - "cc", |
8694 | - "cfg-if 1.0.0", |
8695 | - "libc", |
8696 | - "miniz_oxide", |
8697 | - "object", |
8698 | - "rustc-demangle", |
8699 | - ] |
8700 | - |
8701 | - [[package]] |
8702 | - name = "base64" |
8703 | - version = "0.13.1" |
8704 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8705 | - checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" |
8706 | - |
8707 | - [[package]] |
8708 | - name = "base64" |
8709 | - version = "0.21.4" |
8710 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8711 | - checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" |
8712 | - |
8713 | - [[package]] |
8714 | - name = "bcrypt" |
8715 | - version = "0.14.0" |
8716 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8717 | - checksum = "9df288bec72232f78c1ec5fe4e8f1d108aa0265476e93097593c803c8c02062a" |
8718 | - dependencies = [ |
8719 | - "base64 0.21.4", |
8720 | - "blowfish", |
8721 | - "getrandom", |
8722 | - "subtle", |
8723 | - "zeroize", |
8724 | - ] |
8725 | - |
8726 | - [[package]] |
8727 | - name = "bincode" |
8728 | - version = "1.3.3" |
8729 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8730 | - checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" |
8731 | - dependencies = [ |
8732 | - "serde", |
8733 | - ] |
8734 | - |
8735 | - [[package]] |
8736 | - name = "bit-set" |
8737 | - version = "0.5.3" |
8738 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8739 | - checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" |
8740 | - dependencies = [ |
8741 | - "bit-vec", |
8742 | - ] |
8743 | - |
8744 | - [[package]] |
8745 | - name = "bit-vec" |
8746 | - version = "0.6.3" |
8747 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8748 | - checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" |
8749 | - |
8750 | - [[package]] |
8751 | - name = "bitflags" |
8752 | - version = "1.3.2" |
8753 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8754 | - checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" |
8755 | - |
8756 | - [[package]] |
8757 | - name = "bitflags" |
8758 | - version = "2.4.0" |
8759 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8760 | - checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" |
8761 | - |
8762 | - [[package]] |
8763 | - name = "blake3" |
8764 | - version = "0.3.8" |
8765 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8766 | - checksum = "b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3" |
8767 | - dependencies = [ |
8768 | - "arrayref", |
8769 | - "arrayvec", |
8770 | - "cc", |
8771 | - "cfg-if 0.1.10", |
8772 | - "constant_time_eq", |
8773 | - "crypto-mac 0.8.0", |
8774 | - "digest 0.9.0", |
8775 | - ] |
8776 | - |
8777 | - [[package]] |
8778 | - name = "block-buffer" |
8779 | - version = "0.9.0" |
8780 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8781 | - checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" |
8782 | - dependencies = [ |
8783 | - "generic-array", |
8784 | - ] |
8785 | - |
8786 | - [[package]] |
8787 | - name = "block-buffer" |
8788 | - version = "0.10.4" |
8789 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8790 | - checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" |
8791 | - dependencies = [ |
8792 | - "generic-array", |
8793 | - ] |
8794 | - |
8795 | - [[package]] |
8796 | - name = "blocking" |
8797 | - version = "1.4.1" |
8798 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8799 | - checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a" |
8800 | - dependencies = [ |
8801 | - "async-channel", |
8802 | - "async-lock", |
8803 | - "async-task", |
8804 | - "fastrand 2.0.1", |
8805 | - "futures-io", |
8806 | - "futures-lite", |
8807 | - "piper", |
8808 | - "tracing", |
8809 | - ] |
8810 | - |
8811 | - [[package]] |
8812 | - name = "blowfish" |
8813 | - version = "0.9.1" |
8814 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8815 | - checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7" |
8816 | - dependencies = [ |
8817 | - "byteorder", |
8818 | - "cipher", |
8819 | - ] |
8820 | - |
8821 | - [[package]] |
8822 | - name = "brotli" |
8823 | - version = "3.4.0" |
8824 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8825 | - checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" |
8826 | - dependencies = [ |
8827 | - "alloc-no-stdlib", |
8828 | - "alloc-stdlib", |
8829 | - "brotli-decompressor", |
8830 | - ] |
8831 | - |
8832 | - [[package]] |
8833 | - name = "brotli-decompressor" |
8834 | - version = "2.5.0" |
8835 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8836 | - checksum = "da74e2b81409b1b743f8f0c62cc6254afefb8b8e50bbfe3735550f7aeefa3448" |
8837 | - dependencies = [ |
8838 | - "alloc-no-stdlib", |
8839 | - "alloc-stdlib", |
8840 | - ] |
8841 | - |
8842 | - [[package]] |
8843 | - name = "build-info" |
8844 | - version = "0.0.31" |
8845 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8846 | - checksum = "8b301350c1c448e35b896f32b68c49c8ecd969a71978fbafc4ebd09ec3f4eee2" |
8847 | - dependencies = [ |
8848 | - "build-info-common", |
8849 | - "build-info-proc", |
8850 | - "once_cell", |
8851 | - ] |
8852 | - |
8853 | - [[package]] |
8854 | - name = "build-info-build" |
8855 | - version = "0.0.31" |
8856 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8857 | - checksum = "2b314717755dd6a06fc11ad3f7909ba4c0ae2ab516f5cb0404fe924c71bfc7d0" |
8858 | - dependencies = [ |
8859 | - "anyhow", |
8860 | - "base64 0.21.4", |
8861 | - "bincode", |
8862 | - "build-info-common", |
8863 | - "cargo_metadata", |
8864 | - "chrono", |
8865 | - "git2", |
8866 | - "glob", |
8867 | - "once_cell", |
8868 | - "pretty_assertions", |
8869 | - "rustc_version", |
8870 | - "serde_json", |
8871 | - "xz2", |
8872 | - ] |
8873 | - |
8874 | - [[package]] |
8875 | - name = "build-info-common" |
8876 | - version = "0.0.31" |
8877 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8878 | - checksum = "5e040d36472d40ec9424c36a7b54be589072e605596b6f20b0c56c5230b460cc" |
8879 | - dependencies = [ |
8880 | - "chrono", |
8881 | - "derive_more", |
8882 | - "semver", |
8883 | - "serde", |
8884 | - ] |
8885 | - |
8886 | - [[package]] |
8887 | - name = "build-info-proc" |
8888 | - version = "0.0.31" |
8889 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8890 | - checksum = "ffd5f241ddd417436c48d35da9869480891449ddd1ae3fd483bbcfbae741a422" |
8891 | - dependencies = [ |
8892 | - "anyhow", |
8893 | - "base64 0.21.4", |
8894 | - "bincode", |
8895 | - "build-info-common", |
8896 | - "chrono", |
8897 | - "num-bigint", |
8898 | - "num-traits", |
8899 | - "proc-macro-error", |
8900 | - "proc-macro2", |
8901 | - "quote", |
8902 | - "serde_json", |
8903 | - "syn 2.0.38", |
8904 | - "xz2", |
8905 | - ] |
8906 | - |
8907 | - [[package]] |
8908 | - name = "bumpalo" |
8909 | - version = "3.14.0" |
8910 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8911 | - checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" |
8912 | - |
8913 | - [[package]] |
8914 | - name = "bytecount" |
8915 | - version = "0.6.4" |
8916 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8917 | - checksum = "ad152d03a2c813c80bb94fedbf3a3f02b28f793e39e7c214c8a0bcc196343de7" |
8918 | - |
8919 | - [[package]] |
8920 | - name = "byteorder" |
8921 | - version = "1.5.0" |
8922 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8923 | - checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" |
8924 | - |
8925 | - [[package]] |
8926 | - name = "bytes" |
8927 | - version = "1.5.0" |
8928 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8929 | - checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" |
8930 | - |
8931 | - [[package]] |
8932 | - name = "camino" |
8933 | - version = "1.1.6" |
8934 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8935 | - checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" |
8936 | - dependencies = [ |
8937 | - "serde", |
8938 | - ] |
8939 | - |
8940 | - [[package]] |
8941 | - name = "cargo-platform" |
8942 | - version = "0.1.4" |
8943 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8944 | - checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36" |
8945 | - dependencies = [ |
8946 | - "serde", |
8947 | - ] |
8948 | - |
8949 | - [[package]] |
8950 | - name = "cargo_metadata" |
8951 | - version = "0.15.4" |
8952 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8953 | - checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" |
8954 | - dependencies = [ |
8955 | - "camino", |
8956 | - "cargo-platform", |
8957 | - "semver", |
8958 | - "serde", |
8959 | - "serde_json", |
8960 | - "thiserror", |
8961 | - ] |
8962 | - |
8963 | - [[package]] |
8964 | - name = "cc" |
8965 | - version = "1.0.83" |
8966 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8967 | - checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" |
8968 | - dependencies = [ |
8969 | - "jobserver", |
8970 | - "libc", |
8971 | - ] |
8972 | - |
8973 | - [[package]] |
8974 | - name = "cfg-if" |
8975 | - version = "0.1.10" |
8976 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8977 | - checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" |
8978 | - |
8979 | - [[package]] |
8980 | - name = "cfg-if" |
8981 | - version = "1.0.0" |
8982 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8983 | - checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" |
8984 | - |
8985 | - [[package]] |
8986 | - name = "chrono" |
8987 | - version = "0.4.31" |
8988 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
8989 | - checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" |
8990 | - dependencies = [ |
8991 | - "android-tzdata", |
8992 | - "iana-time-zone", |
8993 | - "js-sys", |
8994 | - "num-traits", |
8995 | - "serde", |
8996 | - "wasm-bindgen", |
8997 | - "windows-targets", |
8998 | - ] |
8999 | - |
9000 | - [[package]] |
9001 | - name = "cipher" |
9002 | - version = "0.4.4" |
9003 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9004 | - checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" |
9005 | - dependencies = [ |
9006 | - "crypto-common", |
9007 | - "inout", |
9008 | - ] |
9009 | - |
9010 | - [[package]] |
9011 | - name = "concurrent-queue" |
9012 | - version = "2.3.0" |
9013 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9014 | - checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" |
9015 | - dependencies = [ |
9016 | - "crossbeam-utils", |
9017 | - ] |
9018 | - |
9019 | - [[package]] |
9020 | - name = "config" |
9021 | - version = "0.13.3" |
9022 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9023 | - checksum = "d379af7f68bfc21714c6c7dea883544201741d2ce8274bb12fa54f89507f52a7" |
9024 | - dependencies = [ |
9025 | - "async-trait", |
9026 | - "json5", |
9027 | - "lazy_static", |
9028 | - "nom", |
9029 | - "pathdiff", |
9030 | - "ron", |
9031 | - "rust-ini", |
9032 | - "serde", |
9033 | - "serde_json", |
9034 | - "toml", |
9035 | - "yaml-rust", |
9036 | - ] |
9037 | - |
9038 | - [[package]] |
9039 | - name = "constant_time_eq" |
9040 | - version = "0.1.5" |
9041 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9042 | - checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" |
9043 | - |
9044 | - [[package]] |
9045 | - name = "convert_case" |
9046 | - version = "0.4.0" |
9047 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9048 | - checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" |
9049 | - |
9050 | - [[package]] |
9051 | - name = "cookie" |
9052 | - version = "0.17.0" |
9053 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9054 | - checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" |
9055 | - dependencies = [ |
9056 | - "base64 0.21.4", |
9057 | - "hmac 0.12.1", |
9058 | - "percent-encoding", |
9059 | - "rand", |
9060 | - "sha2 0.10.8", |
9061 | - "subtle", |
9062 | - "time", |
9063 | - "version_check", |
9064 | - ] |
9065 | - |
9066 | - [[package]] |
9067 | - name = "core-foundation" |
9068 | - version = "0.9.3" |
9069 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9070 | - checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" |
9071 | - dependencies = [ |
9072 | - "core-foundation-sys", |
9073 | - "libc", |
9074 | - ] |
9075 | - |
9076 | - [[package]] |
9077 | - name = "core-foundation-sys" |
9078 | - version = "0.8.4" |
9079 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9080 | - checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" |
9081 | - |
9082 | - [[package]] |
9083 | - name = "cpufeatures" |
9084 | - version = "0.2.9" |
9085 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9086 | - checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" |
9087 | - dependencies = [ |
9088 | - "libc", |
9089 | - ] |
9090 | - |
9091 | - [[package]] |
9092 | - name = "crescent-mail" |
9093 | - version = "0.1.0" |
9094 | - dependencies = [ |
9095 | - "mailpot-http", |
9096 | - ] |
9097 | - |
9098 | - [[package]] |
9099 | - name = "crossbeam-utils" |
9100 | - version = "0.8.16" |
9101 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9102 | - checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" |
9103 | - dependencies = [ |
9104 | - "cfg-if 1.0.0", |
9105 | - ] |
9106 | - |
9107 | - [[package]] |
9108 | - name = "crypto-common" |
9109 | - version = "0.1.6" |
9110 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9111 | - checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" |
9112 | - dependencies = [ |
9113 | - "generic-array", |
9114 | - "typenum", |
9115 | - ] |
9116 | - |
9117 | - [[package]] |
9118 | - name = "crypto-mac" |
9119 | - version = "0.8.0" |
9120 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9121 | - checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" |
9122 | - dependencies = [ |
9123 | - "generic-array", |
9124 | - "subtle", |
9125 | - ] |
9126 | - |
9127 | - [[package]] |
9128 | - name = "crypto-mac" |
9129 | - version = "0.11.0" |
9130 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9131 | - checksum = "25fab6889090c8133f3deb8f73ba3c65a7f456f66436fc012a1b1e272b1e103e" |
9132 | - dependencies = [ |
9133 | - "generic-array", |
9134 | - "subtle", |
9135 | - ] |
9136 | - |
9137 | - [[package]] |
9138 | - name = "data-encoding" |
9139 | - version = "2.4.0" |
9140 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9141 | - checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" |
9142 | - |
9143 | - [[package]] |
9144 | - name = "deranged" |
9145 | - version = "0.3.8" |
9146 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9147 | - checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946" |
9148 | - |
9149 | - [[package]] |
9150 | - name = "derive_more" |
9151 | - version = "0.99.17" |
9152 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9153 | - checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" |
9154 | - dependencies = [ |
9155 | - "convert_case", |
9156 | - "proc-macro2", |
9157 | - "quote", |
9158 | - "rustc_version", |
9159 | - "syn 1.0.109", |
9160 | - ] |
9161 | - |
9162 | - [[package]] |
9163 | - name = "diff" |
9164 | - version = "0.1.13" |
9165 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9166 | - checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" |
9167 | - |
9168 | - [[package]] |
9169 | - name = "digest" |
9170 | - version = "0.9.0" |
9171 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9172 | - checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" |
9173 | - dependencies = [ |
9174 | - "generic-array", |
9175 | - ] |
9176 | - |
9177 | - [[package]] |
9178 | - name = "digest" |
9179 | - version = "0.10.7" |
9180 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9181 | - checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" |
9182 | - dependencies = [ |
9183 | - "block-buffer 0.10.4", |
9184 | - "crypto-common", |
9185 | - "subtle", |
9186 | - ] |
9187 | - |
9188 | - [[package]] |
9189 | - name = "dlv-list" |
9190 | - version = "0.3.0" |
9191 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9192 | - checksum = "0688c2a7f92e427f44895cd63841bff7b29f8d7a1648b9e7e07a4a365b2e1257" |
9193 | - |
9194 | - [[package]] |
9195 | - name = "dyn-clone" |
9196 | - version = "1.0.14" |
9197 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9198 | - checksum = "23d2f3407d9a573d666de4b5bdf10569d73ca9478087346697dcbae6244bfbcd" |
9199 | - |
9200 | - [[package]] |
9201 | - name = "encoding" |
9202 | - version = "0.2.33" |
9203 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9204 | - checksum = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" |
9205 | - dependencies = [ |
9206 | - "encoding-index-japanese", |
9207 | - "encoding-index-korean", |
9208 | - "encoding-index-simpchinese", |
9209 | - "encoding-index-singlebyte", |
9210 | - "encoding-index-tradchinese", |
9211 | - ] |
9212 | - |
9213 | - [[package]] |
9214 | - name = "encoding-index-japanese" |
9215 | - version = "1.20141219.5" |
9216 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9217 | - checksum = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" |
9218 | - dependencies = [ |
9219 | - "encoding_index_tests", |
9220 | - ] |
9221 | - |
9222 | - [[package]] |
9223 | - name = "encoding-index-korean" |
9224 | - version = "1.20141219.5" |
9225 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9226 | - checksum = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81" |
9227 | - dependencies = [ |
9228 | - "encoding_index_tests", |
9229 | - ] |
9230 | - |
9231 | - [[package]] |
9232 | - name = "encoding-index-simpchinese" |
9233 | - version = "1.20141219.5" |
9234 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9235 | - checksum = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7" |
9236 | - dependencies = [ |
9237 | - "encoding_index_tests", |
9238 | - ] |
9239 | - |
9240 | - [[package]] |
9241 | - name = "encoding-index-singlebyte" |
9242 | - version = "1.20141219.5" |
9243 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9244 | - checksum = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" |
9245 | - dependencies = [ |
9246 | - "encoding_index_tests", |
9247 | - ] |
9248 | - |
9249 | - [[package]] |
9250 | - name = "encoding-index-tradchinese" |
9251 | - version = "1.20141219.5" |
9252 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9253 | - checksum = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" |
9254 | - dependencies = [ |
9255 | - "encoding_index_tests", |
9256 | - ] |
9257 | - |
9258 | - [[package]] |
9259 | - name = "encoding_index_tests" |
9260 | - version = "0.1.4" |
9261 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9262 | - checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" |
9263 | - |
9264 | - [[package]] |
9265 | - name = "equivalent" |
9266 | - version = "1.0.1" |
9267 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9268 | - checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" |
9269 | - |
9270 | - [[package]] |
9271 | - name = "errno" |
9272 | - version = "0.3.5" |
9273 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9274 | - checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" |
9275 | - dependencies = [ |
9276 | - "libc", |
9277 | - "windows-sys", |
9278 | - ] |
9279 | - |
9280 | - [[package]] |
9281 | - name = "event-listener" |
9282 | - version = "2.5.3" |
9283 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9284 | - checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" |
9285 | - |
9286 | - [[package]] |
9287 | - name = "event-listener" |
9288 | - version = "3.0.0" |
9289 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9290 | - checksum = "29e56284f00d94c1bc7fd3c77027b4623c88c1f53d8d2394c6199f2921dea325" |
9291 | - dependencies = [ |
9292 | - "concurrent-queue", |
9293 | - "parking", |
9294 | - "pin-project-lite", |
9295 | - ] |
9296 | - |
9297 | - [[package]] |
9298 | - name = "eyre" |
9299 | - version = "0.6.8" |
9300 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9301 | - checksum = "4c2b6b5a29c02cdc822728b7d7b8ae1bab3e3b05d44522770ddd49722eeac7eb" |
9302 | - dependencies = [ |
9303 | - "indenter", |
9304 | - "once_cell", |
9305 | - ] |
9306 | - |
9307 | - [[package]] |
9308 | - name = "fallible-iterator" |
9309 | - version = "0.2.0" |
9310 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9311 | - checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" |
9312 | - |
9313 | - [[package]] |
9314 | - name = "fallible-streaming-iterator" |
9315 | - version = "0.1.9" |
9316 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9317 | - checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" |
9318 | - |
9319 | - [[package]] |
9320 | - name = "fancy-regex" |
9321 | - version = "0.11.0" |
9322 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9323 | - checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" |
9324 | - dependencies = [ |
9325 | - "bit-set", |
9326 | - "regex", |
9327 | - ] |
9328 | - |
9329 | - [[package]] |
9330 | - name = "fastrand" |
9331 | - version = "1.9.0" |
9332 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9333 | - checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" |
9334 | - dependencies = [ |
9335 | - "instant", |
9336 | - ] |
9337 | - |
9338 | - [[package]] |
9339 | - name = "fastrand" |
9340 | - version = "2.0.1" |
9341 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9342 | - checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" |
9343 | - |
9344 | - [[package]] |
9345 | - name = "filetime" |
9346 | - version = "0.2.22" |
9347 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9348 | - checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" |
9349 | - dependencies = [ |
9350 | - "cfg-if 1.0.0", |
9351 | - "libc", |
9352 | - "redox_syscall", |
9353 | - "windows-sys", |
9354 | - ] |
9355 | - |
9356 | - [[package]] |
9357 | - name = "fnv" |
9358 | - version = "1.0.7" |
9359 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9360 | - checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" |
9361 | - |
9362 | - [[package]] |
9363 | - name = "foreign-types" |
9364 | - version = "0.3.2" |
9365 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9366 | - checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" |
9367 | - dependencies = [ |
9368 | - "foreign-types-shared", |
9369 | - ] |
9370 | - |
9371 | - [[package]] |
9372 | - name = "foreign-types-shared" |
9373 | - version = "0.1.1" |
9374 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9375 | - checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" |
9376 | - |
9377 | - [[package]] |
9378 | - name = "form_urlencoded" |
9379 | - version = "1.2.0" |
9380 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9381 | - checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" |
9382 | - dependencies = [ |
9383 | - "percent-encoding", |
9384 | - ] |
9385 | - |
9386 | - [[package]] |
9387 | - name = "fraction" |
9388 | - version = "0.13.1" |
9389 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9390 | - checksum = "3027ae1df8d41b4bed2241c8fdad4acc1e7af60c8e17743534b545e77182d678" |
9391 | - dependencies = [ |
9392 | - "lazy_static", |
9393 | - "num", |
9394 | - ] |
9395 | - |
9396 | - [[package]] |
9397 | - name = "fsevent" |
9398 | - version = "0.4.0" |
9399 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9400 | - checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6" |
9401 | - dependencies = [ |
9402 | - "bitflags 1.3.2", |
9403 | - "fsevent-sys", |
9404 | - ] |
9405 | - |
9406 | - [[package]] |
9407 | - name = "fsevent-sys" |
9408 | - version = "2.0.1" |
9409 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9410 | - checksum = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0" |
9411 | - dependencies = [ |
9412 | - "libc", |
9413 | - ] |
9414 | - |
9415 | - [[package]] |
9416 | - name = "fuchsia-zircon" |
9417 | - version = "0.3.3" |
9418 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9419 | - checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" |
9420 | - dependencies = [ |
9421 | - "bitflags 1.3.2", |
9422 | - "fuchsia-zircon-sys", |
9423 | - ] |
9424 | - |
9425 | - [[package]] |
9426 | - name = "fuchsia-zircon-sys" |
9427 | - version = "0.3.3" |
9428 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9429 | - checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" |
9430 | - |
9431 | - [[package]] |
9432 | - name = "futures" |
9433 | - version = "0.3.28" |
9434 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9435 | - checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" |
9436 | - dependencies = [ |
9437 | - "futures-channel", |
9438 | - "futures-core", |
9439 | - "futures-executor", |
9440 | - "futures-io", |
9441 | - "futures-sink", |
9442 | - "futures-task", |
9443 | - "futures-util", |
9444 | - ] |
9445 | - |
9446 | - [[package]] |
9447 | - name = "futures-channel" |
9448 | - version = "0.3.28" |
9449 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9450 | - checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" |
9451 | - dependencies = [ |
9452 | - "futures-core", |
9453 | - "futures-sink", |
9454 | - ] |
9455 | - |
9456 | - [[package]] |
9457 | - name = "futures-core" |
9458 | - version = "0.3.28" |
9459 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9460 | - checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" |
9461 | - |
9462 | - [[package]] |
9463 | - name = "futures-executor" |
9464 | - version = "0.3.28" |
9465 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9466 | - checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" |
9467 | - dependencies = [ |
9468 | - "futures-core", |
9469 | - "futures-task", |
9470 | - "futures-util", |
9471 | - ] |
9472 | - |
9473 | - [[package]] |
9474 | - name = "futures-io" |
9475 | - version = "0.3.28" |
9476 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9477 | - checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" |
9478 | - |
9479 | - [[package]] |
9480 | - name = "futures-lite" |
9481 | - version = "1.13.0" |
9482 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9483 | - checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" |
9484 | - dependencies = [ |
9485 | - "fastrand 1.9.0", |
9486 | - "futures-core", |
9487 | - "futures-io", |
9488 | - "memchr", |
9489 | - "parking", |
9490 | - "pin-project-lite", |
9491 | - "waker-fn", |
9492 | - ] |
9493 | - |
9494 | - [[package]] |
9495 | - name = "futures-macro" |
9496 | - version = "0.3.28" |
9497 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9498 | - checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" |
9499 | - dependencies = [ |
9500 | - "proc-macro2", |
9501 | - "quote", |
9502 | - "syn 2.0.38", |
9503 | - ] |
9504 | - |
9505 | - [[package]] |
9506 | - name = "futures-sink" |
9507 | - version = "0.3.28" |
9508 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9509 | - checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" |
9510 | - |
9511 | - [[package]] |
9512 | - name = "futures-task" |
9513 | - version = "0.3.28" |
9514 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9515 | - checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" |
9516 | - |
9517 | - [[package]] |
9518 | - name = "futures-util" |
9519 | - version = "0.3.28" |
9520 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9521 | - checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" |
9522 | - dependencies = [ |
9523 | - "futures-channel", |
9524 | - "futures-core", |
9525 | - "futures-io", |
9526 | - "futures-macro", |
9527 | - "futures-sink", |
9528 | - "futures-task", |
9529 | - "memchr", |
9530 | - "pin-project-lite", |
9531 | - "pin-utils", |
9532 | - "slab", |
9533 | - ] |
9534 | - |
9535 | - [[package]] |
9536 | - name = "generic-array" |
9537 | - version = "0.14.7" |
9538 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9539 | - checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" |
9540 | - dependencies = [ |
9541 | - "typenum", |
9542 | - "version_check", |
9543 | - ] |
9544 | - |
9545 | - [[package]] |
9546 | - name = "getrandom" |
9547 | - version = "0.2.10" |
9548 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9549 | - checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" |
9550 | - dependencies = [ |
9551 | - "cfg-if 1.0.0", |
9552 | - "js-sys", |
9553 | - "libc", |
9554 | - "wasi", |
9555 | - "wasm-bindgen", |
9556 | - ] |
9557 | - |
9558 | - [[package]] |
9559 | - name = "gimli" |
9560 | - version = "0.28.0" |
9561 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9562 | - checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" |
9563 | - |
9564 | - [[package]] |
9565 | - name = "git2" |
9566 | - version = "0.17.2" |
9567 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9568 | - checksum = "7b989d6a7ca95a362cf2cfc5ad688b3a467be1f87e480b8dad07fee8c79b0044" |
9569 | - dependencies = [ |
9570 | - "bitflags 1.3.2", |
9571 | - "libc", |
9572 | - "libgit2-sys", |
9573 | - "log", |
9574 | - "url", |
9575 | - ] |
9576 | - |
9577 | - [[package]] |
9578 | - name = "glob" |
9579 | - version = "0.3.1" |
9580 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9581 | - checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" |
9582 | - |
9583 | - [[package]] |
9584 | - name = "hashbrown" |
9585 | - version = "0.12.3" |
9586 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9587 | - checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" |
9588 | - dependencies = [ |
9589 | - "ahash 0.7.6", |
9590 | - ] |
9591 | - |
9592 | - [[package]] |
9593 | - name = "hashbrown" |
9594 | - version = "0.14.1" |
9595 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9596 | - checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" |
9597 | - dependencies = [ |
9598 | - "ahash 0.8.3", |
9599 | - "allocator-api2", |
9600 | - ] |
9601 | - |
9602 | - [[package]] |
9603 | - name = "hashlink" |
9604 | - version = "0.8.4" |
9605 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9606 | - checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" |
9607 | - dependencies = [ |
9608 | - "hashbrown 0.14.1", |
9609 | - ] |
9610 | - |
9611 | - [[package]] |
9612 | - name = "headers" |
9613 | - version = "0.3.9" |
9614 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9615 | - checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270" |
9616 | - dependencies = [ |
9617 | - "base64 0.21.4", |
9618 | - "bytes", |
9619 | - "headers-core", |
9620 | - "http", |
9621 | - "httpdate", |
9622 | - "mime", |
9623 | - "sha1", |
9624 | - ] |
9625 | - |
9626 | - [[package]] |
9627 | - name = "headers-core" |
9628 | - version = "0.2.0" |
9629 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9630 | - checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429" |
9631 | - dependencies = [ |
9632 | - "http", |
9633 | - ] |
9634 | - |
9635 | - [[package]] |
9636 | - name = "heck" |
9637 | - version = "0.4.1" |
9638 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9639 | - checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" |
9640 | - |
9641 | - [[package]] |
9642 | - name = "hermit-abi" |
9643 | - version = "0.1.19" |
9644 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9645 | - checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" |
9646 | - dependencies = [ |
9647 | - "libc", |
9648 | - ] |
9649 | - |
9650 | - [[package]] |
9651 | - name = "hermit-abi" |
9652 | - version = "0.3.3" |
9653 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9654 | - checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" |
9655 | - |
9656 | - [[package]] |
9657 | - name = "hmac" |
9658 | - version = "0.11.0" |
9659 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9660 | - checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" |
9661 | - dependencies = [ |
9662 | - "crypto-mac 0.11.0", |
9663 | - "digest 0.9.0", |
9664 | - ] |
9665 | - |
9666 | - [[package]] |
9667 | - name = "hmac" |
9668 | - version = "0.12.1" |
9669 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9670 | - checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" |
9671 | - dependencies = [ |
9672 | - "digest 0.10.7", |
9673 | - ] |
9674 | - |
9675 | - [[package]] |
9676 | - name = "http" |
9677 | - version = "0.2.9" |
9678 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9679 | - checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" |
9680 | - dependencies = [ |
9681 | - "bytes", |
9682 | - "fnv", |
9683 | - "itoa", |
9684 | - ] |
9685 | - |
9686 | - [[package]] |
9687 | - name = "http-body" |
9688 | - version = "0.4.5" |
9689 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9690 | - checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" |
9691 | - dependencies = [ |
9692 | - "bytes", |
9693 | - "http", |
9694 | - "pin-project-lite", |
9695 | - ] |
9696 | - |
9697 | - [[package]] |
9698 | - name = "http-range-header" |
9699 | - version = "0.3.1" |
9700 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9701 | - checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" |
9702 | - |
9703 | - [[package]] |
9704 | - name = "httparse" |
9705 | - version = "1.8.0" |
9706 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9707 | - checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" |
9708 | - |
9709 | - [[package]] |
9710 | - name = "httpdate" |
9711 | - version = "1.0.3" |
9712 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9713 | - checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" |
9714 | - |
9715 | - [[package]] |
9716 | - name = "hyper" |
9717 | - version = "0.14.27" |
9718 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9719 | - checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" |
9720 | - dependencies = [ |
9721 | - "bytes", |
9722 | - "futures-channel", |
9723 | - "futures-core", |
9724 | - "futures-util", |
9725 | - "http", |
9726 | - "http-body", |
9727 | - "httparse", |
9728 | - "httpdate", |
9729 | - "itoa", |
9730 | - "pin-project-lite", |
9731 | - "socket2 0.4.9", |
9732 | - "tokio", |
9733 | - "tower-service", |
9734 | - "tracing", |
9735 | - "want", |
9736 | - ] |
9737 | - |
9738 | - [[package]] |
9739 | - name = "iana-time-zone" |
9740 | - version = "0.1.57" |
9741 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9742 | - checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" |
9743 | - dependencies = [ |
9744 | - "android_system_properties", |
9745 | - "core-foundation-sys", |
9746 | - "iana-time-zone-haiku", |
9747 | - "js-sys", |
9748 | - "wasm-bindgen", |
9749 | - "windows", |
9750 | - ] |
9751 | - |
9752 | - [[package]] |
9753 | - name = "iana-time-zone-haiku" |
9754 | - version = "0.1.2" |
9755 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9756 | - checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" |
9757 | - dependencies = [ |
9758 | - "cc", |
9759 | - ] |
9760 | - |
9761 | - [[package]] |
9762 | - name = "idna" |
9763 | - version = "0.4.0" |
9764 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9765 | - checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" |
9766 | - dependencies = [ |
9767 | - "unicode-bidi", |
9768 | - "unicode-normalization", |
9769 | - ] |
9770 | - |
9771 | - [[package]] |
9772 | - name = "indenter" |
9773 | - version = "0.3.3" |
9774 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9775 | - checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" |
9776 | - |
9777 | - [[package]] |
9778 | - name = "indexmap" |
9779 | - version = "1.9.3" |
9780 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9781 | - checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" |
9782 | - dependencies = [ |
9783 | - "autocfg", |
9784 | - "hashbrown 0.12.3", |
9785 | - "serde", |
9786 | - ] |
9787 | - |
9788 | - [[package]] |
9789 | - name = "indexmap" |
9790 | - version = "2.0.2" |
9791 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9792 | - checksum = "8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897" |
9793 | - dependencies = [ |
9794 | - "equivalent", |
9795 | - "hashbrown 0.14.1", |
9796 | - ] |
9797 | - |
9798 | - [[package]] |
9799 | - name = "inotify" |
9800 | - version = "0.7.1" |
9801 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9802 | - checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f" |
9803 | - dependencies = [ |
9804 | - "bitflags 1.3.2", |
9805 | - "inotify-sys", |
9806 | - "libc", |
9807 | - ] |
9808 | - |
9809 | - [[package]] |
9810 | - name = "inotify-sys" |
9811 | - version = "0.1.5" |
9812 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9813 | - checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" |
9814 | - dependencies = [ |
9815 | - "libc", |
9816 | - ] |
9817 | - |
9818 | - [[package]] |
9819 | - name = "inout" |
9820 | - version = "0.1.3" |
9821 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9822 | - checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" |
9823 | - dependencies = [ |
9824 | - "generic-array", |
9825 | - ] |
9826 | - |
9827 | - [[package]] |
9828 | - name = "instant" |
9829 | - version = "0.1.12" |
9830 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9831 | - checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" |
9832 | - dependencies = [ |
9833 | - "cfg-if 1.0.0", |
9834 | - ] |
9835 | - |
9836 | - [[package]] |
9837 | - name = "io-lifetimes" |
9838 | - version = "1.0.11" |
9839 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9840 | - checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" |
9841 | - dependencies = [ |
9842 | - "hermit-abi 0.3.3", |
9843 | - "libc", |
9844 | - "windows-sys", |
9845 | - ] |
9846 | - |
9847 | - [[package]] |
9848 | - name = "iovec" |
9849 | - version = "0.1.4" |
9850 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9851 | - checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" |
9852 | - dependencies = [ |
9853 | - "libc", |
9854 | - ] |
9855 | - |
9856 | - [[package]] |
9857 | - name = "iso8601" |
9858 | - version = "0.6.1" |
9859 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9860 | - checksum = "924e5d73ea28f59011fec52a0d12185d496a9b075d360657aed2a5707f701153" |
9861 | - dependencies = [ |
9862 | - "nom", |
9863 | - ] |
9864 | - |
9865 | - [[package]] |
9866 | - name = "itoa" |
9867 | - version = "1.0.9" |
9868 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9869 | - checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" |
9870 | - |
9871 | - [[package]] |
9872 | - name = "jobserver" |
9873 | - version = "0.1.26" |
9874 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9875 | - checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" |
9876 | - dependencies = [ |
9877 | - "libc", |
9878 | - ] |
9879 | - |
9880 | - [[package]] |
9881 | - name = "js-sys" |
9882 | - version = "0.3.64" |
9883 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9884 | - checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" |
9885 | - dependencies = [ |
9886 | - "wasm-bindgen", |
9887 | - ] |
9888 | - |
9889 | - [[package]] |
9890 | - name = "json5" |
9891 | - version = "0.4.1" |
9892 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9893 | - checksum = "96b0db21af676c1ce64250b5f40f3ce2cf27e4e47cb91ed91eb6fe9350b430c1" |
9894 | - dependencies = [ |
9895 | - "pest", |
9896 | - "pest_derive", |
9897 | - "serde", |
9898 | - ] |
9899 | - |
9900 | - [[package]] |
9901 | - name = "jsonschema" |
9902 | - version = "0.17.1" |
9903 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9904 | - checksum = "2a071f4f7efc9a9118dfb627a0a94ef247986e1ab8606a4c806ae2b3aa3b6978" |
9905 | - dependencies = [ |
9906 | - "ahash 0.8.3", |
9907 | - "anyhow", |
9908 | - "base64 0.21.4", |
9909 | - "bytecount", |
9910 | - "fancy-regex", |
9911 | - "fraction", |
9912 | - "getrandom", |
9913 | - "iso8601", |
9914 | - "itoa", |
9915 | - "memchr", |
9916 | - "num-cmp", |
9917 | - "once_cell", |
9918 | - "parking_lot", |
9919 | - "percent-encoding", |
9920 | - "regex", |
9921 | - "serde", |
9922 | - "serde_json", |
9923 | - "time", |
9924 | - "url", |
9925 | - "uuid", |
9926 | - ] |
9927 | - |
9928 | - [[package]] |
9929 | - name = "kernel32-sys" |
9930 | - version = "0.2.2" |
9931 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9932 | - checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" |
9933 | - dependencies = [ |
9934 | - "winapi 0.2.8", |
9935 | - "winapi-build", |
9936 | - ] |
9937 | - |
9938 | - [[package]] |
9939 | - name = "lazy_static" |
9940 | - version = "1.4.0" |
9941 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9942 | - checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" |
9943 | - |
9944 | - [[package]] |
9945 | - name = "lazycell" |
9946 | - version = "1.3.0" |
9947 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9948 | - checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" |
9949 | - |
9950 | - [[package]] |
9951 | - name = "libc" |
9952 | - version = "0.2.149" |
9953 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9954 | - checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" |
9955 | - |
9956 | - [[package]] |
9957 | - name = "libgit2-sys" |
9958 | - version = "0.15.2+1.6.4" |
9959 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9960 | - checksum = "a80df2e11fb4a61f4ba2ab42dbe7f74468da143f1a75c74e11dee7c813f694fa" |
9961 | - dependencies = [ |
9962 | - "cc", |
9963 | - "libc", |
9964 | - "libz-sys", |
9965 | - "pkg-config", |
9966 | - ] |
9967 | - |
9968 | - [[package]] |
9969 | - name = "libloading" |
9970 | - version = "0.7.4" |
9971 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9972 | - checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" |
9973 | - dependencies = [ |
9974 | - "cfg-if 1.0.0", |
9975 | - "winapi 0.3.9", |
9976 | - ] |
9977 | - |
9978 | - [[package]] |
9979 | - name = "libsqlite3-sys" |
9980 | - version = "0.25.2" |
9981 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9982 | - checksum = "29f835d03d717946d28b1d1ed632eb6f0e24a299388ee623d0c23118d3e8a7fa" |
9983 | - dependencies = [ |
9984 | - "cc", |
9985 | - "pkg-config", |
9986 | - "vcpkg", |
9987 | - ] |
9988 | - |
9989 | - [[package]] |
9990 | - name = "libz-sys" |
9991 | - version = "1.1.12" |
9992 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
9993 | - checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b" |
9994 | - dependencies = [ |
9995 | - "cc", |
9996 | - "libc", |
9997 | - "pkg-config", |
9998 | - "vcpkg", |
9999 | - ] |
10000 | - |
10001 | - [[package]] |
10002 | - name = "linked-hash-map" |
10003 | - version = "0.5.6" |
10004 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10005 | - checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" |
10006 | - |
10007 | - [[package]] |
10008 | - name = "linux-raw-sys" |
10009 | - version = "0.3.8" |
10010 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10011 | - checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" |
10012 | - |
10013 | - [[package]] |
10014 | - name = "linux-raw-sys" |
10015 | - version = "0.4.10" |
10016 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10017 | - checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" |
10018 | - |
10019 | - [[package]] |
10020 | - name = "lock_api" |
10021 | - version = "0.4.10" |
10022 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10023 | - checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" |
10024 | - dependencies = [ |
10025 | - "autocfg", |
10026 | - "scopeguard", |
10027 | - ] |
10028 | - |
10029 | - [[package]] |
10030 | - name = "log" |
10031 | - version = "0.4.20" |
10032 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10033 | - checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" |
10034 | - |
10035 | - [[package]] |
10036 | - name = "lzma-sys" |
10037 | - version = "0.1.20" |
10038 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10039 | - checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" |
10040 | - dependencies = [ |
10041 | - "cc", |
10042 | - "libc", |
10043 | - "pkg-config", |
10044 | - ] |
10045 | - |
10046 | - [[package]] |
10047 | - name = "mailpot" |
10048 | - version = "0.1.1" |
10049 | - dependencies = [ |
10050 | - "anyhow", |
10051 | - "chrono", |
10052 | - "jsonschema", |
10053 | - "log", |
10054 | - "melib", |
10055 | - "minijinja", |
10056 | - "percent-encoding", |
10057 | - "rusqlite", |
10058 | - "serde", |
10059 | - "serde_json", |
10060 | - "thiserror", |
10061 | - "toml", |
10062 | - "xdg", |
10063 | - ] |
10064 | - |
10065 | - [[package]] |
10066 | - name = "mailpot-http" |
10067 | - version = "0.1.1" |
10068 | - dependencies = [ |
10069 | - "async-trait", |
10070 | - "axum", |
10071 | - "axum-extra", |
10072 | - "bcrypt", |
10073 | - "config", |
10074 | - "http", |
10075 | - "lazy_static", |
10076 | - "log", |
10077 | - "mailpot", |
10078 | - "mailpot-web", |
10079 | - "serde", |
10080 | - "serde_json", |
10081 | - "stderrlog", |
10082 | - "thiserror", |
10083 | - "tokio", |
10084 | - "tower-http 0.4.4", |
10085 | - ] |
10086 | - |
10087 | - [[package]] |
10088 | - name = "mailpot-web" |
10089 | - version = "0.1.1" |
10090 | - dependencies = [ |
10091 | - "axum", |
10092 | - "axum-extra", |
10093 | - "axum-login", |
10094 | - "axum-sessions", |
10095 | - "build-info", |
10096 | - "build-info-build", |
10097 | - "cfg-if 1.0.0", |
10098 | - "chrono", |
10099 | - "convert_case", |
10100 | - "dyn-clone", |
10101 | - "eyre", |
10102 | - "http", |
10103 | - "indexmap 1.9.3", |
10104 | - "lazy_static", |
10105 | - "mailpot", |
10106 | - "minijinja", |
10107 | - "percent-encoding", |
10108 | - "rand", |
10109 | - "serde", |
10110 | - "serde_json", |
10111 | - "stderrlog", |
10112 | - "tempfile", |
10113 | - "tokio", |
10114 | - "tower-http 0.3.5", |
10115 | - "tower-service", |
10116 | - "zstd", |
10117 | - ] |
10118 | - |
10119 | - [[package]] |
10120 | - name = "matchit" |
10121 | - version = "0.7.3" |
10122 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10123 | - checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" |
10124 | - |
10125 | - [[package]] |
10126 | - name = "melib" |
10127 | - version = "0.7.2" |
10128 | - source = "git+https://github.com/meli/meli?rev=2447a2c#2447a2cbfeaa8d6f7ec11a2a8a6f3be1ff2fea58" |
10129 | - dependencies = [ |
10130 | - "async-stream", |
10131 | - "base64 0.13.1", |
10132 | - "bincode", |
10133 | - "bitflags 1.3.2", |
10134 | - "data-encoding", |
10135 | - "encoding", |
10136 | - "futures", |
10137 | - "indexmap 1.9.3", |
10138 | - "libc", |
10139 | - "libloading", |
10140 | - "native-tls", |
10141 | - "nix", |
10142 | - "nom", |
10143 | - "notify", |
10144 | - "serde", |
10145 | - "serde_derive", |
10146 | - "smallvec", |
10147 | - "smol", |
10148 | - "unicode-segmentation", |
10149 | - "uuid", |
10150 | - "xdg", |
10151 | - "xdg-utils", |
10152 | - ] |
10153 | - |
10154 | - [[package]] |
10155 | - name = "memchr" |
10156 | - version = "2.6.4" |
10157 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10158 | - checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" |
10159 | - |
10160 | - [[package]] |
10161 | - name = "memo-map" |
10162 | - version = "0.3.2" |
10163 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10164 | - checksum = "374c335b2df19e62d4cb323103473cbc6510980253119180de862d89184f6a83" |
10165 | - |
10166 | - [[package]] |
10167 | - name = "memoffset" |
10168 | - version = "0.6.5" |
10169 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10170 | - checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" |
10171 | - dependencies = [ |
10172 | - "autocfg", |
10173 | - ] |
10174 | - |
10175 | - [[package]] |
10176 | - name = "mime" |
10177 | - version = "0.3.17" |
10178 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10179 | - checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" |
10180 | - |
10181 | - [[package]] |
10182 | - name = "minijinja" |
10183 | - version = "0.31.1" |
10184 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10185 | - checksum = "0b1dbc390e4447b2500c4071d7bc2a808cf07e925bae6b92db8a3c3eae773c58" |
10186 | - dependencies = [ |
10187 | - "memo-map", |
10188 | - "self_cell", |
10189 | - "serde", |
10190 | - ] |
10191 | - |
10192 | - [[package]] |
10193 | - name = "minimal-lexical" |
10194 | - version = "0.2.1" |
10195 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10196 | - checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" |
10197 | - |
10198 | - [[package]] |
10199 | - name = "miniz_oxide" |
10200 | - version = "0.7.1" |
10201 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10202 | - checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" |
10203 | - dependencies = [ |
10204 | - "adler", |
10205 | - ] |
10206 | - |
10207 | - [[package]] |
10208 | - name = "mio" |
10209 | - version = "0.6.23" |
10210 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10211 | - checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4" |
10212 | - dependencies = [ |
10213 | - "cfg-if 0.1.10", |
10214 | - "fuchsia-zircon", |
10215 | - "fuchsia-zircon-sys", |
10216 | - "iovec", |
10217 | - "kernel32-sys", |
10218 | - "libc", |
10219 | - "log", |
10220 | - "miow", |
10221 | - "net2", |
10222 | - "slab", |
10223 | - "winapi 0.2.8", |
10224 | - ] |
10225 | - |
10226 | - [[package]] |
10227 | - name = "mio" |
10228 | - version = "0.8.8" |
10229 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10230 | - checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" |
10231 | - dependencies = [ |
10232 | - "libc", |
10233 | - "wasi", |
10234 | - "windows-sys", |
10235 | - ] |
10236 | - |
10237 | - [[package]] |
10238 | - name = "mio-extras" |
10239 | - version = "2.0.6" |
10240 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10241 | - checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" |
10242 | - dependencies = [ |
10243 | - "lazycell", |
10244 | - "log", |
10245 | - "mio 0.6.23", |
10246 | - "slab", |
10247 | - ] |
10248 | - |
10249 | - [[package]] |
10250 | - name = "miow" |
10251 | - version = "0.2.2" |
10252 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10253 | - checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d" |
10254 | - dependencies = [ |
10255 | - "kernel32-sys", |
10256 | - "net2", |
10257 | - "winapi 0.2.8", |
10258 | - "ws2_32-sys", |
10259 | - ] |
10260 | - |
10261 | - [[package]] |
10262 | - name = "native-tls" |
10263 | - version = "0.2.11" |
10264 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10265 | - checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" |
10266 | - dependencies = [ |
10267 | - "lazy_static", |
10268 | - "libc", |
10269 | - "log", |
10270 | - "openssl", |
10271 | - "openssl-probe", |
10272 | - "openssl-sys", |
10273 | - "schannel", |
10274 | - "security-framework", |
10275 | - "security-framework-sys", |
10276 | - "tempfile", |
10277 | - ] |
10278 | - |
10279 | - [[package]] |
10280 | - name = "net2" |
10281 | - version = "0.2.39" |
10282 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10283 | - checksum = "b13b648036a2339d06de780866fbdfda0dde886de7b3af2ddeba8b14f4ee34ac" |
10284 | - dependencies = [ |
10285 | - "cfg-if 0.1.10", |
10286 | - "libc", |
10287 | - "winapi 0.3.9", |
10288 | - ] |
10289 | - |
10290 | - [[package]] |
10291 | - name = "nix" |
10292 | - version = "0.24.3" |
10293 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10294 | - checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" |
10295 | - dependencies = [ |
10296 | - "bitflags 1.3.2", |
10297 | - "cfg-if 1.0.0", |
10298 | - "libc", |
10299 | - "memoffset", |
10300 | - ] |
10301 | - |
10302 | - [[package]] |
10303 | - name = "nom" |
10304 | - version = "7.1.3" |
10305 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10306 | - checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" |
10307 | - dependencies = [ |
10308 | - "memchr", |
10309 | - "minimal-lexical", |
10310 | - ] |
10311 | - |
10312 | - [[package]] |
10313 | - name = "notify" |
10314 | - version = "4.0.17" |
10315 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10316 | - checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257" |
10317 | - dependencies = [ |
10318 | - "bitflags 1.3.2", |
10319 | - "filetime", |
10320 | - "fsevent", |
10321 | - "fsevent-sys", |
10322 | - "inotify", |
10323 | - "libc", |
10324 | - "mio 0.6.23", |
10325 | - "mio-extras", |
10326 | - "walkdir", |
10327 | - "winapi 0.3.9", |
10328 | - ] |
10329 | - |
10330 | - [[package]] |
10331 | - name = "num" |
10332 | - version = "0.4.1" |
10333 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10334 | - checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" |
10335 | - dependencies = [ |
10336 | - "num-bigint", |
10337 | - "num-complex", |
10338 | - "num-integer", |
10339 | - "num-iter", |
10340 | - "num-rational", |
10341 | - "num-traits", |
10342 | - ] |
10343 | - |
10344 | - [[package]] |
10345 | - name = "num-bigint" |
10346 | - version = "0.4.4" |
10347 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10348 | - checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" |
10349 | - dependencies = [ |
10350 | - "autocfg", |
10351 | - "num-integer", |
10352 | - "num-traits", |
10353 | - ] |
10354 | - |
10355 | - [[package]] |
10356 | - name = "num-cmp" |
10357 | - version = "0.1.0" |
10358 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10359 | - checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa" |
10360 | - |
10361 | - [[package]] |
10362 | - name = "num-complex" |
10363 | - version = "0.4.4" |
10364 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10365 | - checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" |
10366 | - dependencies = [ |
10367 | - "num-traits", |
10368 | - ] |
10369 | - |
10370 | - [[package]] |
10371 | - name = "num-integer" |
10372 | - version = "0.1.45" |
10373 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10374 | - checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" |
10375 | - dependencies = [ |
10376 | - "autocfg", |
10377 | - "num-traits", |
10378 | - ] |
10379 | - |
10380 | - [[package]] |
10381 | - name = "num-iter" |
10382 | - version = "0.1.43" |
10383 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10384 | - checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" |
10385 | - dependencies = [ |
10386 | - "autocfg", |
10387 | - "num-integer", |
10388 | - "num-traits", |
10389 | - ] |
10390 | - |
10391 | - [[package]] |
10392 | - name = "num-rational" |
10393 | - version = "0.4.1" |
10394 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10395 | - checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" |
10396 | - dependencies = [ |
10397 | - "autocfg", |
10398 | - "num-bigint", |
10399 | - "num-integer", |
10400 | - "num-traits", |
10401 | - ] |
10402 | - |
10403 | - [[package]] |
10404 | - name = "num-traits" |
10405 | - version = "0.2.17" |
10406 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10407 | - checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" |
10408 | - dependencies = [ |
10409 | - "autocfg", |
10410 | - ] |
10411 | - |
10412 | - [[package]] |
10413 | - name = "num_cpus" |
10414 | - version = "1.16.0" |
10415 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10416 | - checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" |
10417 | - dependencies = [ |
10418 | - "hermit-abi 0.3.3", |
10419 | - "libc", |
10420 | - ] |
10421 | - |
10422 | - [[package]] |
10423 | - name = "object" |
10424 | - version = "0.32.1" |
10425 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10426 | - checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" |
10427 | - dependencies = [ |
10428 | - "memchr", |
10429 | - ] |
10430 | - |
10431 | - [[package]] |
10432 | - name = "once_cell" |
10433 | - version = "1.18.0" |
10434 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10435 | - checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" |
10436 | - |
10437 | - [[package]] |
10438 | - name = "opaque-debug" |
10439 | - version = "0.3.0" |
10440 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10441 | - checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" |
10442 | - |
10443 | - [[package]] |
10444 | - name = "openssl" |
10445 | - version = "0.10.57" |
10446 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10447 | - checksum = "bac25ee399abb46215765b1cb35bc0212377e58a061560d8b29b024fd0430e7c" |
10448 | - dependencies = [ |
10449 | - "bitflags 2.4.0", |
10450 | - "cfg-if 1.0.0", |
10451 | - "foreign-types", |
10452 | - "libc", |
10453 | - "once_cell", |
10454 | - "openssl-macros", |
10455 | - "openssl-sys", |
10456 | - ] |
10457 | - |
10458 | - [[package]] |
10459 | - name = "openssl-macros" |
10460 | - version = "0.1.1" |
10461 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10462 | - checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" |
10463 | - dependencies = [ |
10464 | - "proc-macro2", |
10465 | - "quote", |
10466 | - "syn 2.0.38", |
10467 | - ] |
10468 | - |
10469 | - [[package]] |
10470 | - name = "openssl-probe" |
10471 | - version = "0.1.5" |
10472 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10473 | - checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" |
10474 | - |
10475 | - [[package]] |
10476 | - name = "openssl-sys" |
10477 | - version = "0.9.93" |
10478 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10479 | - checksum = "db4d56a4c0478783083cfafcc42493dd4a981d41669da64b4572a2a089b51b1d" |
10480 | - dependencies = [ |
10481 | - "cc", |
10482 | - "libc", |
10483 | - "pkg-config", |
10484 | - "vcpkg", |
10485 | - ] |
10486 | - |
10487 | - [[package]] |
10488 | - name = "ordered-multimap" |
10489 | - version = "0.4.3" |
10490 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10491 | - checksum = "ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a" |
10492 | - dependencies = [ |
10493 | - "dlv-list", |
10494 | - "hashbrown 0.12.3", |
10495 | - ] |
10496 | - |
10497 | - [[package]] |
10498 | - name = "parking" |
10499 | - version = "2.1.1" |
10500 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10501 | - checksum = "e52c774a4c39359c1d1c52e43f73dd91a75a614652c825408eec30c95a9b2067" |
10502 | - |
10503 | - [[package]] |
10504 | - name = "parking_lot" |
10505 | - version = "0.12.1" |
10506 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10507 | - checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" |
10508 | - dependencies = [ |
10509 | - "lock_api", |
10510 | - "parking_lot_core", |
10511 | - ] |
10512 | - |
10513 | - [[package]] |
10514 | - name = "parking_lot_core" |
10515 | - version = "0.9.8" |
10516 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10517 | - checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" |
10518 | - dependencies = [ |
10519 | - "cfg-if 1.0.0", |
10520 | - "libc", |
10521 | - "redox_syscall", |
10522 | - "smallvec", |
10523 | - "windows-targets", |
10524 | - ] |
10525 | - |
10526 | - [[package]] |
10527 | - name = "pathdiff" |
10528 | - version = "0.2.1" |
10529 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10530 | - checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" |
10531 | - |
10532 | - [[package]] |
10533 | - name = "percent-encoding" |
10534 | - version = "2.3.0" |
10535 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10536 | - checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" |
10537 | - |
10538 | - [[package]] |
10539 | - name = "pest" |
10540 | - version = "2.7.4" |
10541 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10542 | - checksum = "c022f1e7b65d6a24c0dbbd5fb344c66881bc01f3e5ae74a1c8100f2f985d98a4" |
10543 | - dependencies = [ |
10544 | - "memchr", |
10545 | - "thiserror", |
10546 | - "ucd-trie", |
10547 | - ] |
10548 | - |
10549 | - [[package]] |
10550 | - name = "pest_derive" |
10551 | - version = "2.7.4" |
10552 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10553 | - checksum = "35513f630d46400a977c4cb58f78e1bfbe01434316e60c37d27b9ad6139c66d8" |
10554 | - dependencies = [ |
10555 | - "pest", |
10556 | - "pest_generator", |
10557 | - ] |
10558 | - |
10559 | - [[package]] |
10560 | - name = "pest_generator" |
10561 | - version = "2.7.4" |
10562 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10563 | - checksum = "bc9fc1b9e7057baba189b5c626e2d6f40681ae5b6eb064dc7c7834101ec8123a" |
10564 | - dependencies = [ |
10565 | - "pest", |
10566 | - "pest_meta", |
10567 | - "proc-macro2", |
10568 | - "quote", |
10569 | - "syn 2.0.38", |
10570 | - ] |
10571 | - |
10572 | - [[package]] |
10573 | - name = "pest_meta" |
10574 | - version = "2.7.4" |
10575 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10576 | - checksum = "1df74e9e7ec4053ceb980e7c0c8bd3594e977fde1af91daba9c928e8e8c6708d" |
10577 | - dependencies = [ |
10578 | - "once_cell", |
10579 | - "pest", |
10580 | - "sha2 0.10.8", |
10581 | - ] |
10582 | - |
10583 | - [[package]] |
10584 | - name = "pin-project" |
10585 | - version = "1.1.3" |
10586 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10587 | - checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" |
10588 | - dependencies = [ |
10589 | - "pin-project-internal", |
10590 | - ] |
10591 | - |
10592 | - [[package]] |
10593 | - name = "pin-project-internal" |
10594 | - version = "1.1.3" |
10595 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10596 | - checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" |
10597 | - dependencies = [ |
10598 | - "proc-macro2", |
10599 | - "quote", |
10600 | - "syn 2.0.38", |
10601 | - ] |
10602 | - |
10603 | - [[package]] |
10604 | - name = "pin-project-lite" |
10605 | - version = "0.2.13" |
10606 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10607 | - checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" |
10608 | - |
10609 | - [[package]] |
10610 | - name = "pin-utils" |
10611 | - version = "0.1.0" |
10612 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10613 | - checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" |
10614 | - |
10615 | - [[package]] |
10616 | - name = "piper" |
10617 | - version = "0.2.1" |
10618 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10619 | - checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" |
10620 | - dependencies = [ |
10621 | - "atomic-waker", |
10622 | - "fastrand 2.0.1", |
10623 | - "futures-io", |
10624 | - ] |
10625 | - |
10626 | - [[package]] |
10627 | - name = "pkg-config" |
10628 | - version = "0.3.27" |
10629 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10630 | - checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" |
10631 | - |
10632 | - [[package]] |
10633 | - name = "polling" |
10634 | - version = "2.8.0" |
10635 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10636 | - checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" |
10637 | - dependencies = [ |
10638 | - "autocfg", |
10639 | - "bitflags 1.3.2", |
10640 | - "cfg-if 1.0.0", |
10641 | - "concurrent-queue", |
10642 | - "libc", |
10643 | - "log", |
10644 | - "pin-project-lite", |
10645 | - "windows-sys", |
10646 | - ] |
10647 | - |
10648 | - [[package]] |
10649 | - name = "ppv-lite86" |
10650 | - version = "0.2.17" |
10651 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10652 | - checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" |
10653 | - |
10654 | - [[package]] |
10655 | - name = "pretty_assertions" |
10656 | - version = "1.4.0" |
10657 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10658 | - checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" |
10659 | - dependencies = [ |
10660 | - "diff", |
10661 | - "yansi", |
10662 | - ] |
10663 | - |
10664 | - [[package]] |
10665 | - name = "proc-macro-error" |
10666 | - version = "1.0.4" |
10667 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10668 | - checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" |
10669 | - dependencies = [ |
10670 | - "proc-macro-error-attr", |
10671 | - "proc-macro2", |
10672 | - "quote", |
10673 | - "syn 1.0.109", |
10674 | - "version_check", |
10675 | - ] |
10676 | - |
10677 | - [[package]] |
10678 | - name = "proc-macro-error-attr" |
10679 | - version = "1.0.4" |
10680 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10681 | - checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" |
10682 | - dependencies = [ |
10683 | - "proc-macro2", |
10684 | - "quote", |
10685 | - "version_check", |
10686 | - ] |
10687 | - |
10688 | - [[package]] |
10689 | - name = "proc-macro2" |
10690 | - version = "1.0.69" |
10691 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10692 | - checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" |
10693 | - dependencies = [ |
10694 | - "unicode-ident", |
10695 | - ] |
10696 | - |
10697 | - [[package]] |
10698 | - name = "quote" |
10699 | - version = "1.0.33" |
10700 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10701 | - checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" |
10702 | - dependencies = [ |
10703 | - "proc-macro2", |
10704 | - ] |
10705 | - |
10706 | - [[package]] |
10707 | - name = "rand" |
10708 | - version = "0.8.5" |
10709 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10710 | - checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" |
10711 | - dependencies = [ |
10712 | - "libc", |
10713 | - "rand_chacha", |
10714 | - "rand_core", |
10715 | - ] |
10716 | - |
10717 | - [[package]] |
10718 | - name = "rand_chacha" |
10719 | - version = "0.3.1" |
10720 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10721 | - checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" |
10722 | - dependencies = [ |
10723 | - "ppv-lite86", |
10724 | - "rand_core", |
10725 | - ] |
10726 | - |
10727 | - [[package]] |
10728 | - name = "rand_core" |
10729 | - version = "0.6.4" |
10730 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10731 | - checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" |
10732 | - dependencies = [ |
10733 | - "getrandom", |
10734 | - ] |
10735 | - |
10736 | - [[package]] |
10737 | - name = "redox_syscall" |
10738 | - version = "0.3.5" |
10739 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10740 | - checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" |
10741 | - dependencies = [ |
10742 | - "bitflags 1.3.2", |
10743 | - ] |
10744 | - |
10745 | - [[package]] |
10746 | - name = "regex" |
10747 | - version = "1.9.6" |
10748 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10749 | - checksum = "ebee201405406dbf528b8b672104ae6d6d63e6d118cb10e4d51abbc7b58044ff" |
10750 | - dependencies = [ |
10751 | - "aho-corasick", |
10752 | - "memchr", |
10753 | - "regex-automata", |
10754 | - "regex-syntax", |
10755 | - ] |
10756 | - |
10757 | - [[package]] |
10758 | - name = "regex-automata" |
10759 | - version = "0.3.9" |
10760 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10761 | - checksum = "59b23e92ee4318893fa3fe3e6fb365258efbfe6ac6ab30f090cdcbb7aa37efa9" |
10762 | - dependencies = [ |
10763 | - "aho-corasick", |
10764 | - "memchr", |
10765 | - "regex-syntax", |
10766 | - ] |
10767 | - |
10768 | - [[package]] |
10769 | - name = "regex-syntax" |
10770 | - version = "0.7.5" |
10771 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10772 | - checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" |
10773 | - |
10774 | - [[package]] |
10775 | - name = "ring" |
10776 | - version = "0.16.20" |
10777 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10778 | - checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" |
10779 | - dependencies = [ |
10780 | - "cc", |
10781 | - "libc", |
10782 | - "once_cell", |
10783 | - "spin", |
10784 | - "untrusted", |
10785 | - "web-sys", |
10786 | - "winapi 0.3.9", |
10787 | - ] |
10788 | - |
10789 | - [[package]] |
10790 | - name = "ron" |
10791 | - version = "0.7.1" |
10792 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10793 | - checksum = "88073939a61e5b7680558e6be56b419e208420c2adb92be54921fa6b72283f1a" |
10794 | - dependencies = [ |
10795 | - "base64 0.13.1", |
10796 | - "bitflags 1.3.2", |
10797 | - "serde", |
10798 | - ] |
10799 | - |
10800 | - [[package]] |
10801 | - name = "rusqlite" |
10802 | - version = "0.28.0" |
10803 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10804 | - checksum = "01e213bc3ecb39ac32e81e51ebe31fd888a940515173e3a18a35f8c6e896422a" |
10805 | - dependencies = [ |
10806 | - "bitflags 1.3.2", |
10807 | - "chrono", |
10808 | - "fallible-iterator", |
10809 | - "fallible-streaming-iterator", |
10810 | - "hashlink", |
10811 | - "libsqlite3-sys", |
10812 | - "serde_json", |
10813 | - "smallvec", |
10814 | - ] |
10815 | - |
10816 | - [[package]] |
10817 | - name = "rust-ini" |
10818 | - version = "0.18.0" |
10819 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10820 | - checksum = "f6d5f2436026b4f6e79dc829837d467cc7e9a55ee40e750d716713540715a2df" |
10821 | - dependencies = [ |
10822 | - "cfg-if 1.0.0", |
10823 | - "ordered-multimap", |
10824 | - ] |
10825 | - |
10826 | - [[package]] |
10827 | - name = "rustc-demangle" |
10828 | - version = "0.1.23" |
10829 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10830 | - checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" |
10831 | - |
10832 | - [[package]] |
10833 | - name = "rustc_version" |
10834 | - version = "0.4.0" |
10835 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10836 | - checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" |
10837 | - dependencies = [ |
10838 | - "semver", |
10839 | - ] |
10840 | - |
10841 | - [[package]] |
10842 | - name = "rustix" |
10843 | - version = "0.37.24" |
10844 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10845 | - checksum = "4279d76516df406a8bd37e7dff53fd37d1a093f997a3c34a5c21658c126db06d" |
10846 | - dependencies = [ |
10847 | - "bitflags 1.3.2", |
10848 | - "errno", |
10849 | - "io-lifetimes", |
10850 | - "libc", |
10851 | - "linux-raw-sys 0.3.8", |
10852 | - "windows-sys", |
10853 | - ] |
10854 | - |
10855 | - [[package]] |
10856 | - name = "rustix" |
10857 | - version = "0.38.18" |
10858 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10859 | - checksum = "5a74ee2d7c2581cd139b42447d7d9389b889bdaad3a73f1ebb16f2a3237bb19c" |
10860 | - dependencies = [ |
10861 | - "bitflags 2.4.0", |
10862 | - "errno", |
10863 | - "libc", |
10864 | - "linux-raw-sys 0.4.10", |
10865 | - "windows-sys", |
10866 | - ] |
10867 | - |
10868 | - [[package]] |
10869 | - name = "rustversion" |
10870 | - version = "1.0.14" |
10871 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10872 | - checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" |
10873 | - |
10874 | - [[package]] |
10875 | - name = "ryu" |
10876 | - version = "1.0.15" |
10877 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10878 | - checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" |
10879 | - |
10880 | - [[package]] |
10881 | - name = "same-file" |
10882 | - version = "1.0.6" |
10883 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10884 | - checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" |
10885 | - dependencies = [ |
10886 | - "winapi-util", |
10887 | - ] |
10888 | - |
10889 | - [[package]] |
10890 | - name = "schannel" |
10891 | - version = "0.1.22" |
10892 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10893 | - checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" |
10894 | - dependencies = [ |
10895 | - "windows-sys", |
10896 | - ] |
10897 | - |
10898 | - [[package]] |
10899 | - name = "scopeguard" |
10900 | - version = "1.2.0" |
10901 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10902 | - checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" |
10903 | - |
10904 | - [[package]] |
10905 | - name = "secrecy" |
10906 | - version = "0.8.0" |
10907 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10908 | - checksum = "9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e" |
10909 | - dependencies = [ |
10910 | - "zeroize", |
10911 | - ] |
10912 | - |
10913 | - [[package]] |
10914 | - name = "security-framework" |
10915 | - version = "2.9.2" |
10916 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10917 | - checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" |
10918 | - dependencies = [ |
10919 | - "bitflags 1.3.2", |
10920 | - "core-foundation", |
10921 | - "core-foundation-sys", |
10922 | - "libc", |
10923 | - "security-framework-sys", |
10924 | - ] |
10925 | - |
10926 | - [[package]] |
10927 | - name = "security-framework-sys" |
10928 | - version = "2.9.1" |
10929 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10930 | - checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" |
10931 | - dependencies = [ |
10932 | - "core-foundation-sys", |
10933 | - "libc", |
10934 | - ] |
10935 | - |
10936 | - [[package]] |
10937 | - name = "self_cell" |
10938 | - version = "0.10.2" |
10939 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10940 | - checksum = "1ef965a420fe14fdac7dd018862966a4c14094f900e1650bbc71ddd7d580c8af" |
10941 | - |
10942 | - [[package]] |
10943 | - name = "semver" |
10944 | - version = "1.0.19" |
10945 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10946 | - checksum = "ad977052201c6de01a8ef2aa3378c4bd23217a056337d1d6da40468d267a4fb0" |
10947 | - dependencies = [ |
10948 | - "serde", |
10949 | - ] |
10950 | - |
10951 | - [[package]] |
10952 | - name = "serde" |
10953 | - version = "1.0.188" |
10954 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10955 | - checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" |
10956 | - dependencies = [ |
10957 | - "serde_derive", |
10958 | - ] |
10959 | - |
10960 | - [[package]] |
10961 | - name = "serde_derive" |
10962 | - version = "1.0.188" |
10963 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10964 | - checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" |
10965 | - dependencies = [ |
10966 | - "proc-macro2", |
10967 | - "quote", |
10968 | - "syn 2.0.38", |
10969 | - ] |
10970 | - |
10971 | - [[package]] |
10972 | - name = "serde_html_form" |
10973 | - version = "0.2.2" |
10974 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10975 | - checksum = "cde65b75f2603066b78d6fa239b2c07b43e06ead09435f60554d3912962b4a3c" |
10976 | - dependencies = [ |
10977 | - "form_urlencoded", |
10978 | - "indexmap 2.0.2", |
10979 | - "itoa", |
10980 | - "ryu", |
10981 | - "serde", |
10982 | - ] |
10983 | - |
10984 | - [[package]] |
10985 | - name = "serde_json" |
10986 | - version = "1.0.107" |
10987 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10988 | - checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" |
10989 | - dependencies = [ |
10990 | - "itoa", |
10991 | - "ryu", |
10992 | - "serde", |
10993 | - ] |
10994 | - |
10995 | - [[package]] |
10996 | - name = "serde_path_to_error" |
10997 | - version = "0.1.14" |
10998 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
10999 | - checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" |
11000 | - dependencies = [ |
11001 | - "itoa", |
11002 | - "serde", |
11003 | - ] |
11004 | - |
11005 | - [[package]] |
11006 | - name = "serde_urlencoded" |
11007 | - version = "0.7.1" |
11008 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11009 | - checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" |
11010 | - dependencies = [ |
11011 | - "form_urlencoded", |
11012 | - "itoa", |
11013 | - "ryu", |
11014 | - "serde", |
11015 | - ] |
11016 | - |
11017 | - [[package]] |
11018 | - name = "sha1" |
11019 | - version = "0.10.6" |
11020 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11021 | - checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" |
11022 | - dependencies = [ |
11023 | - "cfg-if 1.0.0", |
11024 | - "cpufeatures", |
11025 | - "digest 0.10.7", |
11026 | - ] |
11027 | - |
11028 | - [[package]] |
11029 | - name = "sha1_smol" |
11030 | - version = "1.0.0" |
11031 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11032 | - checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" |
11033 | - |
11034 | - [[package]] |
11035 | - name = "sha2" |
11036 | - version = "0.9.9" |
11037 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11038 | - checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" |
11039 | - dependencies = [ |
11040 | - "block-buffer 0.9.0", |
11041 | - "cfg-if 1.0.0", |
11042 | - "cpufeatures", |
11043 | - "digest 0.9.0", |
11044 | - "opaque-debug", |
11045 | - ] |
11046 | - |
11047 | - [[package]] |
11048 | - name = "sha2" |
11049 | - version = "0.10.8" |
11050 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11051 | - checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" |
11052 | - dependencies = [ |
11053 | - "cfg-if 1.0.0", |
11054 | - "cpufeatures", |
11055 | - "digest 0.10.7", |
11056 | - ] |
11057 | - |
11058 | - [[package]] |
11059 | - name = "signal-hook-registry" |
11060 | - version = "1.4.1" |
11061 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11062 | - checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" |
11063 | - dependencies = [ |
11064 | - "libc", |
11065 | - ] |
11066 | - |
11067 | - [[package]] |
11068 | - name = "slab" |
11069 | - version = "0.4.9" |
11070 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11071 | - checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" |
11072 | - dependencies = [ |
11073 | - "autocfg", |
11074 | - ] |
11075 | - |
11076 | - [[package]] |
11077 | - name = "smallvec" |
11078 | - version = "1.11.1" |
11079 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11080 | - checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" |
11081 | - dependencies = [ |
11082 | - "serde", |
11083 | - ] |
11084 | - |
11085 | - [[package]] |
11086 | - name = "smol" |
11087 | - version = "1.3.0" |
11088 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11089 | - checksum = "13f2b548cd8447f8de0fdf1c592929f70f4fc7039a05e47404b0d096ec6987a1" |
11090 | - dependencies = [ |
11091 | - "async-channel", |
11092 | - "async-executor", |
11093 | - "async-fs", |
11094 | - "async-io", |
11095 | - "async-lock", |
11096 | - "async-net", |
11097 | - "async-process", |
11098 | - "blocking", |
11099 | - "futures-lite", |
11100 | - ] |
11101 | - |
11102 | - [[package]] |
11103 | - name = "socket2" |
11104 | - version = "0.4.9" |
11105 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11106 | - checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" |
11107 | - dependencies = [ |
11108 | - "libc", |
11109 | - "winapi 0.3.9", |
11110 | - ] |
11111 | - |
11112 | - [[package]] |
11113 | - name = "socket2" |
11114 | - version = "0.5.4" |
11115 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11116 | - checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" |
11117 | - dependencies = [ |
11118 | - "libc", |
11119 | - "windows-sys", |
11120 | - ] |
11121 | - |
11122 | - [[package]] |
11123 | - name = "spin" |
11124 | - version = "0.5.2" |
11125 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11126 | - checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" |
11127 | - |
11128 | - [[package]] |
11129 | - name = "stderrlog" |
11130 | - version = "0.5.4" |
11131 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11132 | - checksum = "69a26bbf6de627d389164afa9783739b56746c6c72c4ed16539f4ff54170327b" |
11133 | - dependencies = [ |
11134 | - "atty", |
11135 | - "chrono", |
11136 | - "log", |
11137 | - "termcolor", |
11138 | - "thread_local", |
11139 | - ] |
11140 | - |
11141 | - [[package]] |
11142 | - name = "subtle" |
11143 | - version = "2.5.0" |
11144 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11145 | - checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" |
11146 | - |
11147 | - [[package]] |
11148 | - name = "syn" |
11149 | - version = "1.0.109" |
11150 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11151 | - checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" |
11152 | - dependencies = [ |
11153 | - "proc-macro2", |
11154 | - "quote", |
11155 | - "unicode-ident", |
11156 | - ] |
11157 | - |
11158 | - [[package]] |
11159 | - name = "syn" |
11160 | - version = "2.0.38" |
11161 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11162 | - checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" |
11163 | - dependencies = [ |
11164 | - "proc-macro2", |
11165 | - "quote", |
11166 | - "unicode-ident", |
11167 | - ] |
11168 | - |
11169 | - [[package]] |
11170 | - name = "sync_wrapper" |
11171 | - version = "0.1.2" |
11172 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11173 | - checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" |
11174 | - |
11175 | - [[package]] |
11176 | - name = "tempfile" |
11177 | - version = "3.8.0" |
11178 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11179 | - checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" |
11180 | - dependencies = [ |
11181 | - "cfg-if 1.0.0", |
11182 | - "fastrand 2.0.1", |
11183 | - "redox_syscall", |
11184 | - "rustix 0.38.18", |
11185 | - "windows-sys", |
11186 | - ] |
11187 | - |
11188 | - [[package]] |
11189 | - name = "termcolor" |
11190 | - version = "1.1.3" |
11191 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11192 | - checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" |
11193 | - dependencies = [ |
11194 | - "winapi-util", |
11195 | - ] |
11196 | - |
11197 | - [[package]] |
11198 | - name = "thiserror" |
11199 | - version = "1.0.49" |
11200 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11201 | - checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4" |
11202 | - dependencies = [ |
11203 | - "thiserror-impl", |
11204 | - ] |
11205 | - |
11206 | - [[package]] |
11207 | - name = "thiserror-impl" |
11208 | - version = "1.0.49" |
11209 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11210 | - checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" |
11211 | - dependencies = [ |
11212 | - "proc-macro2", |
11213 | - "quote", |
11214 | - "syn 2.0.38", |
11215 | - ] |
11216 | - |
11217 | - [[package]] |
11218 | - name = "thread_local" |
11219 | - version = "1.1.7" |
11220 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11221 | - checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" |
11222 | - dependencies = [ |
11223 | - "cfg-if 1.0.0", |
11224 | - "once_cell", |
11225 | - ] |
11226 | - |
11227 | - [[package]] |
11228 | - name = "time" |
11229 | - version = "0.3.29" |
11230 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11231 | - checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" |
11232 | - dependencies = [ |
11233 | - "deranged", |
11234 | - "itoa", |
11235 | - "serde", |
11236 | - "time-core", |
11237 | - "time-macros", |
11238 | - ] |
11239 | - |
11240 | - [[package]] |
11241 | - name = "time-core" |
11242 | - version = "0.1.2" |
11243 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11244 | - checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" |
11245 | - |
11246 | - [[package]] |
11247 | - name = "time-macros" |
11248 | - version = "0.2.15" |
11249 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11250 | - checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" |
11251 | - dependencies = [ |
11252 | - "time-core", |
11253 | - ] |
11254 | - |
11255 | - [[package]] |
11256 | - name = "tinyvec" |
11257 | - version = "1.6.0" |
11258 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11259 | - checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" |
11260 | - dependencies = [ |
11261 | - "tinyvec_macros", |
11262 | - ] |
11263 | - |
11264 | - [[package]] |
11265 | - name = "tinyvec_macros" |
11266 | - version = "0.1.1" |
11267 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11268 | - checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" |
11269 | - |
11270 | - [[package]] |
11271 | - name = "tokio" |
11272 | - version = "1.33.0" |
11273 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11274 | - checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" |
11275 | - dependencies = [ |
11276 | - "backtrace", |
11277 | - "bytes", |
11278 | - "libc", |
11279 | - "mio 0.8.8", |
11280 | - "num_cpus", |
11281 | - "parking_lot", |
11282 | - "pin-project-lite", |
11283 | - "signal-hook-registry", |
11284 | - "socket2 0.5.4", |
11285 | - "tokio-macros", |
11286 | - "windows-sys", |
11287 | - ] |
11288 | - |
11289 | - [[package]] |
11290 | - name = "tokio-macros" |
11291 | - version = "2.1.0" |
11292 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11293 | - checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" |
11294 | - dependencies = [ |
11295 | - "proc-macro2", |
11296 | - "quote", |
11297 | - "syn 2.0.38", |
11298 | - ] |
11299 | - |
11300 | - [[package]] |
11301 | - name = "tokio-util" |
11302 | - version = "0.7.9" |
11303 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11304 | - checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" |
11305 | - dependencies = [ |
11306 | - "bytes", |
11307 | - "futures-core", |
11308 | - "futures-sink", |
11309 | - "pin-project-lite", |
11310 | - "tokio", |
11311 | - ] |
11312 | - |
11313 | - [[package]] |
11314 | - name = "toml" |
11315 | - version = "0.5.11" |
11316 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11317 | - checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" |
11318 | - dependencies = [ |
11319 | - "serde", |
11320 | - ] |
11321 | - |
11322 | - [[package]] |
11323 | - name = "tower" |
11324 | - version = "0.4.13" |
11325 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11326 | - checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" |
11327 | - dependencies = [ |
11328 | - "futures-core", |
11329 | - "futures-util", |
11330 | - "pin-project", |
11331 | - "pin-project-lite", |
11332 | - "tokio", |
11333 | - "tower-layer", |
11334 | - "tower-service", |
11335 | - "tracing", |
11336 | - ] |
11337 | - |
11338 | - [[package]] |
11339 | - name = "tower-http" |
11340 | - version = "0.3.5" |
11341 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11342 | - checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" |
11343 | - dependencies = [ |
11344 | - "base64 0.13.1", |
11345 | - "bitflags 1.3.2", |
11346 | - "bytes", |
11347 | - "futures-core", |
11348 | - "futures-util", |
11349 | - "http", |
11350 | - "http-body", |
11351 | - "http-range-header", |
11352 | - "pin-project-lite", |
11353 | - "tower-layer", |
11354 | - "tower-service", |
11355 | - ] |
11356 | - |
11357 | - [[package]] |
11358 | - name = "tower-http" |
11359 | - version = "0.4.4" |
11360 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11361 | - checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" |
11362 | - dependencies = [ |
11363 | - "async-compression", |
11364 | - "bitflags 2.4.0", |
11365 | - "bytes", |
11366 | - "futures-core", |
11367 | - "futures-util", |
11368 | - "http", |
11369 | - "http-body", |
11370 | - "http-range-header", |
11371 | - "pin-project-lite", |
11372 | - "tokio", |
11373 | - "tokio-util", |
11374 | - "tower-layer", |
11375 | - "tower-service", |
11376 | - "tracing", |
11377 | - ] |
11378 | - |
11379 | - [[package]] |
11380 | - name = "tower-layer" |
11381 | - version = "0.3.2" |
11382 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11383 | - checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" |
11384 | - |
11385 | - [[package]] |
11386 | - name = "tower-service" |
11387 | - version = "0.3.2" |
11388 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11389 | - checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" |
11390 | - |
11391 | - [[package]] |
11392 | - name = "tracing" |
11393 | - version = "0.1.37" |
11394 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11395 | - checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" |
11396 | - dependencies = [ |
11397 | - "cfg-if 1.0.0", |
11398 | - "log", |
11399 | - "pin-project-lite", |
11400 | - "tracing-attributes", |
11401 | - "tracing-core", |
11402 | - ] |
11403 | - |
11404 | - [[package]] |
11405 | - name = "tracing-attributes" |
11406 | - version = "0.1.26" |
11407 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11408 | - checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" |
11409 | - dependencies = [ |
11410 | - "proc-macro2", |
11411 | - "quote", |
11412 | - "syn 2.0.38", |
11413 | - ] |
11414 | - |
11415 | - [[package]] |
11416 | - name = "tracing-core" |
11417 | - version = "0.1.31" |
11418 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11419 | - checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" |
11420 | - dependencies = [ |
11421 | - "once_cell", |
11422 | - ] |
11423 | - |
11424 | - [[package]] |
11425 | - name = "try-lock" |
11426 | - version = "0.2.4" |
11427 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11428 | - checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" |
11429 | - |
11430 | - [[package]] |
11431 | - name = "typenum" |
11432 | - version = "1.17.0" |
11433 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11434 | - checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" |
11435 | - |
11436 | - [[package]] |
11437 | - name = "ucd-trie" |
11438 | - version = "0.1.6" |
11439 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11440 | - checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" |
11441 | - |
11442 | - [[package]] |
11443 | - name = "unicode-bidi" |
11444 | - version = "0.3.13" |
11445 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11446 | - checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" |
11447 | - |
11448 | - [[package]] |
11449 | - name = "unicode-ident" |
11450 | - version = "1.0.12" |
11451 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11452 | - checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" |
11453 | - |
11454 | - [[package]] |
11455 | - name = "unicode-normalization" |
11456 | - version = "0.1.22" |
11457 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11458 | - checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" |
11459 | - dependencies = [ |
11460 | - "tinyvec", |
11461 | - ] |
11462 | - |
11463 | - [[package]] |
11464 | - name = "unicode-segmentation" |
11465 | - version = "1.10.1" |
11466 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11467 | - checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" |
11468 | - |
11469 | - [[package]] |
11470 | - name = "untrusted" |
11471 | - version = "0.7.1" |
11472 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11473 | - checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" |
11474 | - |
11475 | - [[package]] |
11476 | - name = "url" |
11477 | - version = "2.4.1" |
11478 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11479 | - checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" |
11480 | - dependencies = [ |
11481 | - "form_urlencoded", |
11482 | - "idna", |
11483 | - "percent-encoding", |
11484 | - ] |
11485 | - |
11486 | - [[package]] |
11487 | - name = "uuid" |
11488 | - version = "1.4.1" |
11489 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11490 | - checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" |
11491 | - dependencies = [ |
11492 | - "getrandom", |
11493 | - "serde", |
11494 | - "sha1_smol", |
11495 | - ] |
11496 | - |
11497 | - [[package]] |
11498 | - name = "vcpkg" |
11499 | - version = "0.2.15" |
11500 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11501 | - checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" |
11502 | - |
11503 | - [[package]] |
11504 | - name = "version_check" |
11505 | - version = "0.9.4" |
11506 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11507 | - checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" |
11508 | - |
11509 | - [[package]] |
11510 | - name = "waker-fn" |
11511 | - version = "1.1.1" |
11512 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11513 | - checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" |
11514 | - |
11515 | - [[package]] |
11516 | - name = "walkdir" |
11517 | - version = "2.4.0" |
11518 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11519 | - checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" |
11520 | - dependencies = [ |
11521 | - "same-file", |
11522 | - "winapi-util", |
11523 | - ] |
11524 | - |
11525 | - [[package]] |
11526 | - name = "want" |
11527 | - version = "0.3.1" |
11528 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11529 | - checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" |
11530 | - dependencies = [ |
11531 | - "try-lock", |
11532 | - ] |
11533 | - |
11534 | - [[package]] |
11535 | - name = "wasi" |
11536 | - version = "0.11.0+wasi-snapshot-preview1" |
11537 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11538 | - checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" |
11539 | - |
11540 | - [[package]] |
11541 | - name = "wasm-bindgen" |
11542 | - version = "0.2.87" |
11543 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11544 | - checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" |
11545 | - dependencies = [ |
11546 | - "cfg-if 1.0.0", |
11547 | - "wasm-bindgen-macro", |
11548 | - ] |
11549 | - |
11550 | - [[package]] |
11551 | - name = "wasm-bindgen-backend" |
11552 | - version = "0.2.87" |
11553 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11554 | - checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" |
11555 | - dependencies = [ |
11556 | - "bumpalo", |
11557 | - "log", |
11558 | - "once_cell", |
11559 | - "proc-macro2", |
11560 | - "quote", |
11561 | - "syn 2.0.38", |
11562 | - "wasm-bindgen-shared", |
11563 | - ] |
11564 | - |
11565 | - [[package]] |
11566 | - name = "wasm-bindgen-macro" |
11567 | - version = "0.2.87" |
11568 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11569 | - checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" |
11570 | - dependencies = [ |
11571 | - "quote", |
11572 | - "wasm-bindgen-macro-support", |
11573 | - ] |
11574 | - |
11575 | - [[package]] |
11576 | - name = "wasm-bindgen-macro-support" |
11577 | - version = "0.2.87" |
11578 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11579 | - checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" |
11580 | - dependencies = [ |
11581 | - "proc-macro2", |
11582 | - "quote", |
11583 | - "syn 2.0.38", |
11584 | - "wasm-bindgen-backend", |
11585 | - "wasm-bindgen-shared", |
11586 | - ] |
11587 | - |
11588 | - [[package]] |
11589 | - name = "wasm-bindgen-shared" |
11590 | - version = "0.2.87" |
11591 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11592 | - checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" |
11593 | - |
11594 | - [[package]] |
11595 | - name = "web-sys" |
11596 | - version = "0.3.64" |
11597 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11598 | - checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" |
11599 | - dependencies = [ |
11600 | - "js-sys", |
11601 | - "wasm-bindgen", |
11602 | - ] |
11603 | - |
11604 | - [[package]] |
11605 | - name = "winapi" |
11606 | - version = "0.2.8" |
11607 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11608 | - checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" |
11609 | - |
11610 | - [[package]] |
11611 | - name = "winapi" |
11612 | - version = "0.3.9" |
11613 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11614 | - checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" |
11615 | - dependencies = [ |
11616 | - "winapi-i686-pc-windows-gnu", |
11617 | - "winapi-x86_64-pc-windows-gnu", |
11618 | - ] |
11619 | - |
11620 | - [[package]] |
11621 | - name = "winapi-build" |
11622 | - version = "0.1.1" |
11623 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11624 | - checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" |
11625 | - |
11626 | - [[package]] |
11627 | - name = "winapi-i686-pc-windows-gnu" |
11628 | - version = "0.4.0" |
11629 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11630 | - checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" |
11631 | - |
11632 | - [[package]] |
11633 | - name = "winapi-util" |
11634 | - version = "0.1.6" |
11635 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11636 | - checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" |
11637 | - dependencies = [ |
11638 | - "winapi 0.3.9", |
11639 | - ] |
11640 | - |
11641 | - [[package]] |
11642 | - name = "winapi-x86_64-pc-windows-gnu" |
11643 | - version = "0.4.0" |
11644 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11645 | - checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" |
11646 | - |
11647 | - [[package]] |
11648 | - name = "windows" |
11649 | - version = "0.48.0" |
11650 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11651 | - checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" |
11652 | - dependencies = [ |
11653 | - "windows-targets", |
11654 | - ] |
11655 | - |
11656 | - [[package]] |
11657 | - name = "windows-sys" |
11658 | - version = "0.48.0" |
11659 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11660 | - checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" |
11661 | - dependencies = [ |
11662 | - "windows-targets", |
11663 | - ] |
11664 | - |
11665 | - [[package]] |
11666 | - name = "windows-targets" |
11667 | - version = "0.48.5" |
11668 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11669 | - checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" |
11670 | - dependencies = [ |
11671 | - "windows_aarch64_gnullvm", |
11672 | - "windows_aarch64_msvc", |
11673 | - "windows_i686_gnu", |
11674 | - "windows_i686_msvc", |
11675 | - "windows_x86_64_gnu", |
11676 | - "windows_x86_64_gnullvm", |
11677 | - "windows_x86_64_msvc", |
11678 | - ] |
11679 | - |
11680 | - [[package]] |
11681 | - name = "windows_aarch64_gnullvm" |
11682 | - version = "0.48.5" |
11683 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11684 | - checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" |
11685 | - |
11686 | - [[package]] |
11687 | - name = "windows_aarch64_msvc" |
11688 | - version = "0.48.5" |
11689 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11690 | - checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" |
11691 | - |
11692 | - [[package]] |
11693 | - name = "windows_i686_gnu" |
11694 | - version = "0.48.5" |
11695 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11696 | - checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" |
11697 | - |
11698 | - [[package]] |
11699 | - name = "windows_i686_msvc" |
11700 | - version = "0.48.5" |
11701 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11702 | - checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" |
11703 | - |
11704 | - [[package]] |
11705 | - name = "windows_x86_64_gnu" |
11706 | - version = "0.48.5" |
11707 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11708 | - checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" |
11709 | - |
11710 | - [[package]] |
11711 | - name = "windows_x86_64_gnullvm" |
11712 | - version = "0.48.5" |
11713 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11714 | - checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" |
11715 | - |
11716 | - [[package]] |
11717 | - name = "windows_x86_64_msvc" |
11718 | - version = "0.48.5" |
11719 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11720 | - checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" |
11721 | - |
11722 | - [[package]] |
11723 | - name = "ws2_32-sys" |
11724 | - version = "0.2.1" |
11725 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11726 | - checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" |
11727 | - dependencies = [ |
11728 | - "winapi 0.2.8", |
11729 | - "winapi-build", |
11730 | - ] |
11731 | - |
11732 | - [[package]] |
11733 | - name = "xdg" |
11734 | - version = "2.5.2" |
11735 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11736 | - checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546" |
11737 | - |
11738 | - [[package]] |
11739 | - name = "xdg-utils" |
11740 | - version = "0.4.0" |
11741 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11742 | - checksum = "db9fefe62d5969721e2cfc529e6a760901cc0da422b6d67e7bfd18e69490dba6" |
11743 | - |
11744 | - [[package]] |
11745 | - name = "xz2" |
11746 | - version = "0.1.7" |
11747 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11748 | - checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" |
11749 | - dependencies = [ |
11750 | - "lzma-sys", |
11751 | - ] |
11752 | - |
11753 | - [[package]] |
11754 | - name = "yaml-rust" |
11755 | - version = "0.4.5" |
11756 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11757 | - checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" |
11758 | - dependencies = [ |
11759 | - "linked-hash-map", |
11760 | - ] |
11761 | - |
11762 | - [[package]] |
11763 | - name = "yansi" |
11764 | - version = "0.5.1" |
11765 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11766 | - checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" |
11767 | - |
11768 | - [[package]] |
11769 | - name = "zeroize" |
11770 | - version = "1.6.0" |
11771 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11772 | - checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" |
11773 | - |
11774 | - [[package]] |
11775 | - name = "zstd" |
11776 | - version = "0.12.4" |
11777 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11778 | - checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" |
11779 | - dependencies = [ |
11780 | - "zstd-safe", |
11781 | - ] |
11782 | - |
11783 | - [[package]] |
11784 | - name = "zstd-safe" |
11785 | - version = "6.0.6" |
11786 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11787 | - checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" |
11788 | - dependencies = [ |
11789 | - "libc", |
11790 | - "zstd-sys", |
11791 | - ] |
11792 | - |
11793 | - [[package]] |
11794 | - name = "zstd-sys" |
11795 | - version = "2.0.8+zstd.1.5.5" |
11796 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
11797 | - checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c" |
11798 | - dependencies = [ |
11799 | - "cc", |
11800 | - "libc", |
11801 | - "pkg-config", |
11802 | - ] |
11803 | diff --git a/crescent-mail/Cargo.toml b/crescent-mail/Cargo.toml |
11804 | deleted file mode 100644 |
11805 | index bfd034b..0000000 |
11806 | --- a/crescent-mail/Cargo.toml |
11807 | +++ /dev/null |
11808 | @@ -1,20 +0,0 @@ |
11809 | - [package] |
11810 | - name = "crescent_mail" |
11811 | - version = "0.2.1" |
11812 | - edition = "2021" |
11813 | - |
11814 | - [dependencies] |
11815 | - crescent_api = {workspace = true} |
11816 | - crescent_config = {workspace = true} |
11817 | - crescent_rpc = {workspace = true} |
11818 | - rusqlite = { version = "0.29.0", features = ["bundled", "functions", "trace", "hooks", "serde_json", "array", "chrono", "unlock_notify"] } |
11819 | - serde = { version = "1.0.188", features = ["derive"] } |
11820 | - clap = "4.4.6" |
11821 | - tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } |
11822 | - tracing = "0.1.37" |
11823 | - tokio = { version = "1.33.0", features = ["full"] } |
11824 | - capnp-rpc = "0.18.0" |
11825 | - futures = "0.3.28" |
11826 | - capnp = "0.18.1" |
11827 | - melib = "0.8.2" |
11828 | - mailpot = { git = "https://kevinschoon.com/forks/mailpot", branch = "crescent"} |
11829 | diff --git a/crescent-mail/README.md b/crescent-mail/README.md |
11830 | deleted file mode 100644 |
11831 | index 5bdeae8..0000000 |
11832 | --- a/crescent-mail/README.md |
11833 | +++ /dev/null |
11834 | @@ -1,3 +0,0 @@ |
11835 | - # Mailing list Management |
11836 | - |
11837 | - Mailing list management system build on [mailpot](https://git.meli.delivery/meli/mailpot). |
11838 | diff --git a/crescent-mail/src/config.rs b/crescent-mail/src/config.rs |
11839 | deleted file mode 100644 |
11840 | index 1be9575..0000000 |
11841 | --- a/crescent-mail/src/config.rs |
11842 | +++ /dev/null |
11843 | @@ -1,84 +0,0 @@ |
11844 | - use serde::{Deserialize, Serialize}; |
11845 | - |
11846 | - use crescent_config::{data_dir, runtime_dir, Configurable, Error, Reader}; |
11847 | - use mailpot::{Configuration as MailPotConfig, SendMail}; |
11848 | - |
11849 | - #[derive(Serialize, Deserialize, Clone)] |
11850 | - pub struct Database { |
11851 | - pub migrate: Option<bool>, |
11852 | - #[serde(default = "Database::default_database_path")] |
11853 | - pub path: String, |
11854 | - } |
11855 | - |
11856 | - impl Database { |
11857 | - pub fn default_database_path() -> String { |
11858 | - let mut data_path = data_dir(); |
11859 | - data_path.push("mail.db"); |
11860 | - let path = String::from(data_path.to_str().unwrap()); |
11861 | - path |
11862 | - } |
11863 | - } |
11864 | - |
11865 | - #[derive(Deserialize, Serialize, Clone, Debug, Default)] |
11866 | - pub struct MailingList { |
11867 | - pub id: String, |
11868 | - pub name: Option<String>, |
11869 | - pub address: String, |
11870 | - pub description: Option<String>, |
11871 | - pub topics: Vec<String>, |
11872 | - } |
11873 | - |
11874 | - #[derive(Serialize, Deserialize, Clone)] |
11875 | - pub struct Mail { |
11876 | - #[serde(default = "Mail::default_socket_path")] |
11877 | - pub socket_path: String, |
11878 | - pub database: Database, |
11879 | - #[serde(default = "Mail::default_sendmail_command")] |
11880 | - pub sendmail_command: String, |
11881 | - pub lists: Vec<MailingList>, |
11882 | - } |
11883 | - |
11884 | - impl Mail { |
11885 | - fn default_socket_path() -> String { |
11886 | - runtime_dir().to_str().unwrap().to_string() + "/crescent-mail.sock" |
11887 | - } |
11888 | - |
11889 | - fn default_sendmail_command() -> String { |
11890 | - String::from("/usr/bin/sendmail") |
11891 | - } |
11892 | - } |
11893 | - |
11894 | - #[derive(Serialize, Deserialize, Clone)] |
11895 | - pub struct Config { |
11896 | - pub sysadmin: Option<String>, |
11897 | - pub log_level: String, |
11898 | - pub mail: Mail, |
11899 | - } |
11900 | - |
11901 | - impl Config { |
11902 | - pub fn mailpot_config(self: &Self) -> MailPotConfig { |
11903 | - MailPotConfig { |
11904 | - send_mail: SendMail::ShellCommand(self.mail.sendmail_command.clone()), |
11905 | - data_path: data_dir().into(), |
11906 | - db_path: self.mail.database.path.clone().into(), |
11907 | - administrators: self |
11908 | - .sysadmin |
11909 | - .clone() |
11910 | - .map_or(vec![], |admin| vec![admin.clone()]), |
11911 | - } |
11912 | - } |
11913 | - } |
11914 | - |
11915 | - impl Configurable for Config { |
11916 | - fn initialize(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
11917 | - Ok(()) |
11918 | - } |
11919 | - |
11920 | - fn validate(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
11921 | - Ok(()) |
11922 | - } |
11923 | - } |
11924 | - |
11925 | - pub fn load(path: Option<&str>) -> Result<Config, Error> { |
11926 | - Reader::load(path) |
11927 | - } |
11928 | diff --git a/crescent-mail/src/main.rs b/crescent-mail/src/main.rs |
11929 | deleted file mode 100644 |
11930 | index 2b6dd0f..0000000 |
11931 | --- a/crescent-mail/src/main.rs |
11932 | +++ /dev/null |
11933 | @@ -1,88 +0,0 @@ |
11934 | - use std::thread::Builder as ThreadBuilder; |
11935 | - |
11936 | - use clap::{arg, value_parser, Command}; |
11937 | - use mailpot::{models::MailingList, Connection, Result as MpResult}; |
11938 | - use tokio::{runtime::Builder as TokioBuilder, task::LocalSet}; |
11939 | - use tracing; |
11940 | - use tracing::log; |
11941 | - use tracing_subscriber; |
11942 | - |
11943 | - mod config; |
11944 | - mod server; |
11945 | - |
11946 | - /// ensure the mailing lists in the global config are available |
11947 | - pub fn initialize(cfg: &config::Config) -> MpResult<()> { |
11948 | - let db = Connection::open_or_create_db(cfg.mailpot_config())?.trusted(); |
11949 | - // initialize any mailing list which hasn't been created |
11950 | - let existing_lists: Vec<String> = db |
11951 | - .lists()? |
11952 | - .iter() |
11953 | - .map(|list| list.address.clone()) |
11954 | - .collect(); |
11955 | - |
11956 | - for mailing_list in cfg.mail.lists.clone() { |
11957 | - if existing_lists |
11958 | - .iter() |
11959 | - .find(|address| **address == mailing_list.address) |
11960 | - .is_none() |
11961 | - { |
11962 | - log::info!("creating mailing list: {}", mailing_list.address); |
11963 | - db.create_list(MailingList { |
11964 | - pk: -1, |
11965 | - name: mailing_list.name.unwrap_or(mailing_list.id.clone()), |
11966 | - id: mailing_list.id, |
11967 | - address: mailing_list.address, |
11968 | - topics: mailing_list.topics, |
11969 | - description: mailing_list.description, |
11970 | - archive_url: None, |
11971 | - })?; |
11972 | - } |
11973 | - } |
11974 | - |
11975 | - Ok(()) |
11976 | - } |
11977 | - |
11978 | - fn main() -> Result<(), Box<dyn std::error::Error>> { |
11979 | - let command = Command::new("crescent-mail") |
11980 | - .about("crescent email service") |
11981 | - .arg( |
11982 | - arg!(-c --config <FILE> "optional path to a configuration file") |
11983 | - .id("config") |
11984 | - .required(false) |
11985 | - .value_parser(value_parser!(String)), |
11986 | - ) |
11987 | - .arg( |
11988 | - arg!(-l --level <LEVEL> "logging level [ERROR,WARN,INFO,DEBUG,TRACE]") |
11989 | - .id("level") |
11990 | - .required(false) |
11991 | - .value_parser(value_parser!(String)), |
11992 | - ); |
11993 | - let matches = command.get_matches(); |
11994 | - let crescent_config = &config::load(matches.get_one::<String>("config").map(|s| s.as_str()))?; |
11995 | - let log_level = matches |
11996 | - .get_one::<String>("level") |
11997 | - .map(|level| level.clone()) |
11998 | - .unwrap_or(crescent_config.log_level.clone()); |
11999 | - tracing_subscriber::fmt() |
12000 | - .compact() |
12001 | - .with_line_number(true) |
12002 | - .with_level(true) |
12003 | - // tokei will spam the console unless this is set |
12004 | - .with_env_filter(format!( |
12005 | - "{},tokei::language::language_type=error", |
12006 | - log_level |
12007 | - )) |
12008 | - .init(); |
12009 | - tracing::info!("logger initialized"); |
12010 | - initialize(crescent_config)?; |
12011 | - TokioBuilder::new_current_thread() |
12012 | - .enable_all() |
12013 | - .build() |
12014 | - .unwrap() |
12015 | - .block_on(async move { |
12016 | - LocalSet::new() |
12017 | - .run_until(server::serve(crescent_config)) |
12018 | - .await |
12019 | - })?; |
12020 | - Ok(()) |
12021 | - } |
12022 | diff --git a/crescent-mail/src/server.rs b/crescent-mail/src/server.rs |
12023 | deleted file mode 100644 |
12024 | index 5dda1b7..0000000 |
12025 | --- a/crescent-mail/src/server.rs |
12026 | +++ /dev/null |
12027 | @@ -1,99 +0,0 @@ |
12028 | - use std::collections::HashMap; |
12029 | - use std::error::Error as StdError; |
12030 | - use std::sync::{Arc, RwLock}; |
12031 | - |
12032 | - use capnp::capability::Promise; |
12033 | - use capnp_rpc::pry; |
12034 | - use mailpot::{models::Post, Connection}; |
12035 | - use melib::{thread::Threads, Envelope, EnvelopeHash}; |
12036 | - use tracing::log; |
12037 | - |
12038 | - use crate::config::Config; |
12039 | - use crescent_api::mail_capnp::server::{ |
12040 | - Client, ListThreadsParams, ListThreadsResults, PostMessageParams, PostMessageResults, |
12041 | - ReadThreadParams, ReadThreadResults, Server, |
12042 | - }; |
12043 | - use crescent_rpc::Server as RpcHelper; |
12044 | - |
12045 | - struct ServerImpl { |
12046 | - db: Connection, |
12047 | - } |
12048 | - |
12049 | - impl Server for ServerImpl { |
12050 | - fn list_threads( |
12051 | - &mut self, |
12052 | - params: ListThreadsParams, |
12053 | - mut results: ListThreadsResults, |
12054 | - ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
12055 | - let mailing_list_name = pry!(pry!(pry!(params.get()).get_name()).to_string()); |
12056 | - log::info!("looking up threads: {}", mailing_list_name); |
12057 | - for list in self.db.lists().unwrap() { |
12058 | - if list.address == mailing_list_name { |
12059 | - let posts = self.db.list_posts(list.pk, None).unwrap(); |
12060 | - log::info!("processing {} posts", posts.len()); |
12061 | - let mut posts_by_hash: HashMap<EnvelopeHash, Post> = HashMap::new(); |
12062 | - let mut envelopes: HashMap<EnvelopeHash, Envelope> = HashMap::new(); |
12063 | - for post in &posts { |
12064 | - let envelope = Envelope::from_bytes(&post.message, None).unwrap(); |
12065 | - let envelope_hash = envelope.hash.clone(); |
12066 | - posts_by_hash.insert(envelope_hash, post.0.clone()); |
12067 | - envelopes.insert(envelope_hash, envelope); |
12068 | - } |
12069 | - let mut threads = Threads::new(posts.len()); |
12070 | - let envelopes = Arc::new(RwLock::new(envelopes)); |
12071 | - threads.amend(&envelopes); |
12072 | - let envelopes = envelopes.read().unwrap(); |
12073 | - let mut root_threads: Vec<(Post, Envelope, usize)> = Vec::new(); |
12074 | - for node in threads.thread_nodes.into_iter() { |
12075 | - if node.1.has_parent() == false { |
12076 | - let n_replies = node.1.children.len(); |
12077 | - let envelope_hash = node.1.message().unwrap(); |
12078 | - let envelope = envelopes.get(&envelope_hash).unwrap(); |
12079 | - let post = posts_by_hash.get(&envelope_hash).unwrap(); |
12080 | - root_threads.push((post.clone(), envelope.clone(), n_replies)); |
12081 | - } |
12082 | - } |
12083 | - let mut threads = results.get().init_threads(root_threads.len() as u32); |
12084 | - for (i, thread) in root_threads.into_iter().enumerate() { |
12085 | - let mut result_thread = threads.reborrow().get(i as u32); |
12086 | - result_thread.set_n_replies(thread.2 as i64); |
12087 | - let mut message = result_thread.init_first(); |
12088 | - message.set_id(thread.0.pk); |
12089 | - message.set_address(thread.0.address.as_str().into()); |
12090 | - message.set_from(thread.1.from()[0].get_email().as_str().into()); |
12091 | - message.set_subject(thread.1.subject.unwrap_or(String::new()).as_str().into()); |
12092 | - message.set_timestamp(thread.1.timestamp as i64); |
12093 | - } |
12094 | - } |
12095 | - } |
12096 | - Promise::ok(()) |
12097 | - } |
12098 | - |
12099 | - fn read_thread( |
12100 | - &mut self, |
12101 | - _: ReadThreadParams, |
12102 | - _: ReadThreadResults, |
12103 | - ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
12104 | - ::capnp::capability::Promise::err(::capnp::Error::unimplemented( |
12105 | - "method server::Server::read_thread not implemented".to_string(), |
12106 | - )) |
12107 | - } |
12108 | - |
12109 | - fn post_message( |
12110 | - &mut self, |
12111 | - _: PostMessageParams, |
12112 | - _: PostMessageResults, |
12113 | - ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
12114 | - ::capnp::capability::Promise::err(::capnp::Error::unimplemented( |
12115 | - "method server::Server::post_message not implemented".to_string(), |
12116 | - )) |
12117 | - } |
12118 | - } |
12119 | - |
12120 | - pub async fn serve(cfg: &Config) -> Result<(), Box<dyn StdError>> { |
12121 | - let db = Connection::open_or_create_db(cfg.mailpot_config())?; |
12122 | - let server = ServerImpl { db }; |
12123 | - let runtime = RpcHelper::<Client, ServerImpl>::new(&cfg.mail.socket_path, server); |
12124 | - runtime.serve().await?; |
12125 | - Ok(()) |
12126 | - } |
12127 | diff --git a/crescent-spaces/README.md b/crescent-spaces/README.md |
12128 | deleted file mode 100644 |
12129 | index f240710..0000000 |
12130 | --- a/crescent-spaces/README.md |
12131 | +++ /dev/null |
12132 | @@ -1,4 +0,0 @@ |
12133 | - # crescent-spaces |
12134 | - |
12135 | - Placeholder for "Code Spaces" like functionality in Crescent designed around |
12136 | - LXC. |
12137 | diff --git a/crescent-xmpp/.env b/crescent-xmpp/.env |
12138 | deleted file mode 100644 |
12139 | index 01c1b44..0000000 |
12140 | --- a/crescent-xmpp/.env |
12141 | +++ /dev/null |
12142 | @@ -1 +0,0 @@ |
12143 | - DATABASE_URL=sqlite://crescent-xmpp/db/crescent-xmpp.db |
12144 | diff --git a/crescent-xmpp/Cargo.lock b/crescent-xmpp/Cargo.lock |
12145 | deleted file mode 100644 |
12146 | index eefc4c0..0000000 |
12147 | --- a/crescent-xmpp/Cargo.lock |
12148 | +++ /dev/null |
12149 | @@ -1,2076 +0,0 @@ |
12150 | - # This file is automatically @generated by Cargo. |
12151 | - # It is not intended for manual editing. |
12152 | - version = 3 |
12153 | - |
12154 | - [[package]] |
12155 | - name = "addr2line" |
12156 | - version = "0.21.0" |
12157 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12158 | - checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" |
12159 | - dependencies = [ |
12160 | - "gimli", |
12161 | - ] |
12162 | - |
12163 | - [[package]] |
12164 | - name = "adler" |
12165 | - version = "1.0.2" |
12166 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12167 | - checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" |
12168 | - |
12169 | - [[package]] |
12170 | - name = "aho-corasick" |
12171 | - version = "1.1.1" |
12172 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12173 | - checksum = "ea5d730647d4fadd988536d06fecce94b7b4f2a7efdae548f1cf4b63205518ab" |
12174 | - dependencies = [ |
12175 | - "memchr", |
12176 | - ] |
12177 | - |
12178 | - [[package]] |
12179 | - name = "async-trait" |
12180 | - version = "0.1.73" |
12181 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12182 | - checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" |
12183 | - dependencies = [ |
12184 | - "proc-macro2", |
12185 | - "quote", |
12186 | - "syn 2.0.37", |
12187 | - ] |
12188 | - |
12189 | - [[package]] |
12190 | - name = "autocfg" |
12191 | - version = "1.1.0" |
12192 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12193 | - checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" |
12194 | - |
12195 | - [[package]] |
12196 | - name = "axum" |
12197 | - version = "0.6.20" |
12198 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12199 | - checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" |
12200 | - dependencies = [ |
12201 | - "async-trait", |
12202 | - "axum-core", |
12203 | - "bitflags 1.3.2", |
12204 | - "bytes", |
12205 | - "futures-util", |
12206 | - "http", |
12207 | - "http-body", |
12208 | - "hyper", |
12209 | - "itoa", |
12210 | - "matchit", |
12211 | - "memchr", |
12212 | - "mime", |
12213 | - "percent-encoding", |
12214 | - "pin-project-lite", |
12215 | - "rustversion", |
12216 | - "serde", |
12217 | - "serde_json", |
12218 | - "serde_path_to_error", |
12219 | - "serde_urlencoded", |
12220 | - "sync_wrapper", |
12221 | - "tokio", |
12222 | - "tower", |
12223 | - "tower-layer", |
12224 | - "tower-service", |
12225 | - ] |
12226 | - |
12227 | - [[package]] |
12228 | - name = "axum-core" |
12229 | - version = "0.3.4" |
12230 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12231 | - checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" |
12232 | - dependencies = [ |
12233 | - "async-trait", |
12234 | - "bytes", |
12235 | - "futures-util", |
12236 | - "http", |
12237 | - "http-body", |
12238 | - "mime", |
12239 | - "rustversion", |
12240 | - "tower-layer", |
12241 | - "tower-service", |
12242 | - ] |
12243 | - |
12244 | - [[package]] |
12245 | - name = "backtrace" |
12246 | - version = "0.3.69" |
12247 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12248 | - checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" |
12249 | - dependencies = [ |
12250 | - "addr2line", |
12251 | - "cc", |
12252 | - "cfg-if", |
12253 | - "libc", |
12254 | - "miniz_oxide", |
12255 | - "object", |
12256 | - "rustc-demangle", |
12257 | - ] |
12258 | - |
12259 | - [[package]] |
12260 | - name = "base64" |
12261 | - version = "0.21.4" |
12262 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12263 | - checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" |
12264 | - |
12265 | - [[package]] |
12266 | - name = "bitflags" |
12267 | - version = "1.3.2" |
12268 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12269 | - checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" |
12270 | - |
12271 | - [[package]] |
12272 | - name = "bitflags" |
12273 | - version = "2.4.0" |
12274 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12275 | - checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" |
12276 | - |
12277 | - [[package]] |
12278 | - name = "blake2" |
12279 | - version = "0.10.6" |
12280 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12281 | - checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" |
12282 | - dependencies = [ |
12283 | - "digest", |
12284 | - ] |
12285 | - |
12286 | - [[package]] |
12287 | - name = "block-buffer" |
12288 | - version = "0.10.4" |
12289 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12290 | - checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" |
12291 | - dependencies = [ |
12292 | - "generic-array", |
12293 | - ] |
12294 | - |
12295 | - [[package]] |
12296 | - name = "bumpalo" |
12297 | - version = "3.14.0" |
12298 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12299 | - checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" |
12300 | - |
12301 | - [[package]] |
12302 | - name = "bytes" |
12303 | - version = "1.5.0" |
12304 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12305 | - checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" |
12306 | - |
12307 | - [[package]] |
12308 | - name = "cc" |
12309 | - version = "1.0.83" |
12310 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12311 | - checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" |
12312 | - dependencies = [ |
12313 | - "libc", |
12314 | - ] |
12315 | - |
12316 | - [[package]] |
12317 | - name = "cfg-if" |
12318 | - version = "1.0.0" |
12319 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12320 | - checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" |
12321 | - |
12322 | - [[package]] |
12323 | - name = "chrono" |
12324 | - version = "0.4.31" |
12325 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12326 | - checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" |
12327 | - dependencies = [ |
12328 | - "num-traits", |
12329 | - ] |
12330 | - |
12331 | - [[package]] |
12332 | - name = "core-foundation" |
12333 | - version = "0.9.3" |
12334 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12335 | - checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" |
12336 | - dependencies = [ |
12337 | - "core-foundation-sys", |
12338 | - "libc", |
12339 | - ] |
12340 | - |
12341 | - [[package]] |
12342 | - name = "core-foundation-sys" |
12343 | - version = "0.8.4" |
12344 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12345 | - checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" |
12346 | - |
12347 | - [[package]] |
12348 | - name = "cpufeatures" |
12349 | - version = "0.2.9" |
12350 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12351 | - checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" |
12352 | - dependencies = [ |
12353 | - "libc", |
12354 | - ] |
12355 | - |
12356 | - [[package]] |
12357 | - name = "crescent-xmpp" |
12358 | - version = "0.1.0" |
12359 | - dependencies = [ |
12360 | - "axum", |
12361 | - "hyper", |
12362 | - "serde", |
12363 | - "tokio", |
12364 | - "tower", |
12365 | - "tower-http", |
12366 | - "tracing", |
12367 | - "tracing-subscriber", |
12368 | - "uuid", |
12369 | - "xmpp", |
12370 | - ] |
12371 | - |
12372 | - [[package]] |
12373 | - name = "crypto-common" |
12374 | - version = "0.1.6" |
12375 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12376 | - checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" |
12377 | - dependencies = [ |
12378 | - "generic-array", |
12379 | - "typenum", |
12380 | - ] |
12381 | - |
12382 | - [[package]] |
12383 | - name = "data-encoding" |
12384 | - version = "2.4.0" |
12385 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12386 | - checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" |
12387 | - |
12388 | - [[package]] |
12389 | - name = "digest" |
12390 | - version = "0.10.7" |
12391 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12392 | - checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" |
12393 | - dependencies = [ |
12394 | - "block-buffer", |
12395 | - "crypto-common", |
12396 | - "subtle", |
12397 | - ] |
12398 | - |
12399 | - [[package]] |
12400 | - name = "encoding_rs" |
12401 | - version = "0.8.33" |
12402 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12403 | - checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" |
12404 | - dependencies = [ |
12405 | - "cfg-if", |
12406 | - ] |
12407 | - |
12408 | - [[package]] |
12409 | - name = "enum-as-inner" |
12410 | - version = "0.5.1" |
12411 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12412 | - checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116" |
12413 | - dependencies = [ |
12414 | - "heck", |
12415 | - "proc-macro2", |
12416 | - "quote", |
12417 | - "syn 1.0.109", |
12418 | - ] |
12419 | - |
12420 | - [[package]] |
12421 | - name = "errno" |
12422 | - version = "0.3.3" |
12423 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12424 | - checksum = "136526188508e25c6fef639d7927dfb3e0e3084488bf202267829cf7fc23dbdd" |
12425 | - dependencies = [ |
12426 | - "errno-dragonfly", |
12427 | - "libc", |
12428 | - "windows-sys", |
12429 | - ] |
12430 | - |
12431 | - [[package]] |
12432 | - name = "errno-dragonfly" |
12433 | - version = "0.1.2" |
12434 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12435 | - checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" |
12436 | - dependencies = [ |
12437 | - "cc", |
12438 | - "libc", |
12439 | - ] |
12440 | - |
12441 | - [[package]] |
12442 | - name = "fastrand" |
12443 | - version = "2.0.0" |
12444 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12445 | - checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" |
12446 | - |
12447 | - [[package]] |
12448 | - name = "finl_unicode" |
12449 | - version = "1.2.0" |
12450 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12451 | - checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" |
12452 | - |
12453 | - [[package]] |
12454 | - name = "fnv" |
12455 | - version = "1.0.7" |
12456 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12457 | - checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" |
12458 | - |
12459 | - [[package]] |
12460 | - name = "foreign-types" |
12461 | - version = "0.3.2" |
12462 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12463 | - checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" |
12464 | - dependencies = [ |
12465 | - "foreign-types-shared", |
12466 | - ] |
12467 | - |
12468 | - [[package]] |
12469 | - name = "foreign-types-shared" |
12470 | - version = "0.1.1" |
12471 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12472 | - checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" |
12473 | - |
12474 | - [[package]] |
12475 | - name = "form_urlencoded" |
12476 | - version = "1.2.0" |
12477 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12478 | - checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" |
12479 | - dependencies = [ |
12480 | - "percent-encoding", |
12481 | - ] |
12482 | - |
12483 | - [[package]] |
12484 | - name = "futures" |
12485 | - version = "0.3.28" |
12486 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12487 | - checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" |
12488 | - dependencies = [ |
12489 | - "futures-channel", |
12490 | - "futures-core", |
12491 | - "futures-executor", |
12492 | - "futures-io", |
12493 | - "futures-sink", |
12494 | - "futures-task", |
12495 | - "futures-util", |
12496 | - ] |
12497 | - |
12498 | - [[package]] |
12499 | - name = "futures-channel" |
12500 | - version = "0.3.28" |
12501 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12502 | - checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" |
12503 | - dependencies = [ |
12504 | - "futures-core", |
12505 | - "futures-sink", |
12506 | - ] |
12507 | - |
12508 | - [[package]] |
12509 | - name = "futures-core" |
12510 | - version = "0.3.28" |
12511 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12512 | - checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" |
12513 | - |
12514 | - [[package]] |
12515 | - name = "futures-executor" |
12516 | - version = "0.3.28" |
12517 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12518 | - checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" |
12519 | - dependencies = [ |
12520 | - "futures-core", |
12521 | - "futures-task", |
12522 | - "futures-util", |
12523 | - ] |
12524 | - |
12525 | - [[package]] |
12526 | - name = "futures-io" |
12527 | - version = "0.3.28" |
12528 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12529 | - checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" |
12530 | - |
12531 | - [[package]] |
12532 | - name = "futures-macro" |
12533 | - version = "0.3.28" |
12534 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12535 | - checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" |
12536 | - dependencies = [ |
12537 | - "proc-macro2", |
12538 | - "quote", |
12539 | - "syn 2.0.37", |
12540 | - ] |
12541 | - |
12542 | - [[package]] |
12543 | - name = "futures-sink" |
12544 | - version = "0.3.28" |
12545 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12546 | - checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" |
12547 | - |
12548 | - [[package]] |
12549 | - name = "futures-task" |
12550 | - version = "0.3.28" |
12551 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12552 | - checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" |
12553 | - |
12554 | - [[package]] |
12555 | - name = "futures-util" |
12556 | - version = "0.3.28" |
12557 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12558 | - checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" |
12559 | - dependencies = [ |
12560 | - "futures-channel", |
12561 | - "futures-core", |
12562 | - "futures-io", |
12563 | - "futures-macro", |
12564 | - "futures-sink", |
12565 | - "futures-task", |
12566 | - "memchr", |
12567 | - "pin-project-lite", |
12568 | - "pin-utils", |
12569 | - "slab", |
12570 | - ] |
12571 | - |
12572 | - [[package]] |
12573 | - name = "generic-array" |
12574 | - version = "0.14.7" |
12575 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12576 | - checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" |
12577 | - dependencies = [ |
12578 | - "typenum", |
12579 | - "version_check", |
12580 | - ] |
12581 | - |
12582 | - [[package]] |
12583 | - name = "getrandom" |
12584 | - version = "0.2.10" |
12585 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12586 | - checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" |
12587 | - dependencies = [ |
12588 | - "cfg-if", |
12589 | - "libc", |
12590 | - "wasi", |
12591 | - ] |
12592 | - |
12593 | - [[package]] |
12594 | - name = "gimli" |
12595 | - version = "0.28.0" |
12596 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12597 | - checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" |
12598 | - |
12599 | - [[package]] |
12600 | - name = "h2" |
12601 | - version = "0.3.21" |
12602 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12603 | - checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" |
12604 | - dependencies = [ |
12605 | - "bytes", |
12606 | - "fnv", |
12607 | - "futures-core", |
12608 | - "futures-sink", |
12609 | - "futures-util", |
12610 | - "http", |
12611 | - "indexmap", |
12612 | - "slab", |
12613 | - "tokio", |
12614 | - "tokio-util", |
12615 | - "tracing", |
12616 | - ] |
12617 | - |
12618 | - [[package]] |
12619 | - name = "hashbrown" |
12620 | - version = "0.12.3" |
12621 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12622 | - checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" |
12623 | - |
12624 | - [[package]] |
12625 | - name = "heck" |
12626 | - version = "0.4.1" |
12627 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12628 | - checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" |
12629 | - |
12630 | - [[package]] |
12631 | - name = "hermit-abi" |
12632 | - version = "0.3.3" |
12633 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12634 | - checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" |
12635 | - |
12636 | - [[package]] |
12637 | - name = "hmac" |
12638 | - version = "0.12.1" |
12639 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12640 | - checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" |
12641 | - dependencies = [ |
12642 | - "digest", |
12643 | - ] |
12644 | - |
12645 | - [[package]] |
12646 | - name = "hostname" |
12647 | - version = "0.3.1" |
12648 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12649 | - checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" |
12650 | - dependencies = [ |
12651 | - "libc", |
12652 | - "match_cfg", |
12653 | - "winapi", |
12654 | - ] |
12655 | - |
12656 | - [[package]] |
12657 | - name = "http" |
12658 | - version = "0.2.9" |
12659 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12660 | - checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" |
12661 | - dependencies = [ |
12662 | - "bytes", |
12663 | - "fnv", |
12664 | - "itoa", |
12665 | - ] |
12666 | - |
12667 | - [[package]] |
12668 | - name = "http-body" |
12669 | - version = "0.4.5" |
12670 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12671 | - checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" |
12672 | - dependencies = [ |
12673 | - "bytes", |
12674 | - "http", |
12675 | - "pin-project-lite", |
12676 | - ] |
12677 | - |
12678 | - [[package]] |
12679 | - name = "http-range-header" |
12680 | - version = "0.3.1" |
12681 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12682 | - checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" |
12683 | - |
12684 | - [[package]] |
12685 | - name = "httparse" |
12686 | - version = "1.8.0" |
12687 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12688 | - checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" |
12689 | - |
12690 | - [[package]] |
12691 | - name = "httpdate" |
12692 | - version = "1.0.3" |
12693 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12694 | - checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" |
12695 | - |
12696 | - [[package]] |
12697 | - name = "hyper" |
12698 | - version = "0.14.27" |
12699 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12700 | - checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" |
12701 | - dependencies = [ |
12702 | - "bytes", |
12703 | - "futures-channel", |
12704 | - "futures-core", |
12705 | - "futures-util", |
12706 | - "h2", |
12707 | - "http", |
12708 | - "http-body", |
12709 | - "httparse", |
12710 | - "httpdate", |
12711 | - "itoa", |
12712 | - "pin-project-lite", |
12713 | - "socket2 0.4.9", |
12714 | - "tokio", |
12715 | - "tower-service", |
12716 | - "tracing", |
12717 | - "want", |
12718 | - ] |
12719 | - |
12720 | - [[package]] |
12721 | - name = "hyper-tls" |
12722 | - version = "0.5.0" |
12723 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12724 | - checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" |
12725 | - dependencies = [ |
12726 | - "bytes", |
12727 | - "hyper", |
12728 | - "native-tls", |
12729 | - "tokio", |
12730 | - "tokio-native-tls", |
12731 | - ] |
12732 | - |
12733 | - [[package]] |
12734 | - name = "idna" |
12735 | - version = "0.2.3" |
12736 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12737 | - checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" |
12738 | - dependencies = [ |
12739 | - "matches", |
12740 | - "unicode-bidi", |
12741 | - "unicode-normalization", |
12742 | - ] |
12743 | - |
12744 | - [[package]] |
12745 | - name = "idna" |
12746 | - version = "0.4.0" |
12747 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12748 | - checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" |
12749 | - dependencies = [ |
12750 | - "unicode-bidi", |
12751 | - "unicode-normalization", |
12752 | - ] |
12753 | - |
12754 | - [[package]] |
12755 | - name = "indexmap" |
12756 | - version = "1.9.3" |
12757 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12758 | - checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" |
12759 | - dependencies = [ |
12760 | - "autocfg", |
12761 | - "hashbrown", |
12762 | - ] |
12763 | - |
12764 | - [[package]] |
12765 | - name = "ipconfig" |
12766 | - version = "0.3.2" |
12767 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12768 | - checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" |
12769 | - dependencies = [ |
12770 | - "socket2 0.5.4", |
12771 | - "widestring", |
12772 | - "windows-sys", |
12773 | - "winreg", |
12774 | - ] |
12775 | - |
12776 | - [[package]] |
12777 | - name = "ipnet" |
12778 | - version = "2.8.0" |
12779 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12780 | - checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" |
12781 | - |
12782 | - [[package]] |
12783 | - name = "itoa" |
12784 | - version = "1.0.9" |
12785 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12786 | - checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" |
12787 | - |
12788 | - [[package]] |
12789 | - name = "jid" |
12790 | - version = "0.10.0" |
12791 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12792 | - checksum = "b4a52cacd869b804660986b10aa2076c3a4b6da644c7198f9fd0b613f4a7b249" |
12793 | - dependencies = [ |
12794 | - "memchr", |
12795 | - "minidom", |
12796 | - "stringprep", |
12797 | - ] |
12798 | - |
12799 | - [[package]] |
12800 | - name = "js-sys" |
12801 | - version = "0.3.64" |
12802 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12803 | - checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" |
12804 | - dependencies = [ |
12805 | - "wasm-bindgen", |
12806 | - ] |
12807 | - |
12808 | - [[package]] |
12809 | - name = "keccak" |
12810 | - version = "0.1.4" |
12811 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12812 | - checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" |
12813 | - dependencies = [ |
12814 | - "cpufeatures", |
12815 | - ] |
12816 | - |
12817 | - [[package]] |
12818 | - name = "lazy_static" |
12819 | - version = "1.4.0" |
12820 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12821 | - checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" |
12822 | - |
12823 | - [[package]] |
12824 | - name = "libc" |
12825 | - version = "0.2.148" |
12826 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12827 | - checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" |
12828 | - |
12829 | - [[package]] |
12830 | - name = "linked-hash-map" |
12831 | - version = "0.5.6" |
12832 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12833 | - checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" |
12834 | - |
12835 | - [[package]] |
12836 | - name = "linux-raw-sys" |
12837 | - version = "0.4.7" |
12838 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12839 | - checksum = "1a9bad9f94746442c783ca431b22403b519cd7fbeed0533fdd6328b2f2212128" |
12840 | - |
12841 | - [[package]] |
12842 | - name = "lock_api" |
12843 | - version = "0.4.10" |
12844 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12845 | - checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" |
12846 | - dependencies = [ |
12847 | - "autocfg", |
12848 | - "scopeguard", |
12849 | - ] |
12850 | - |
12851 | - [[package]] |
12852 | - name = "log" |
12853 | - version = "0.4.20" |
12854 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12855 | - checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" |
12856 | - |
12857 | - [[package]] |
12858 | - name = "lru-cache" |
12859 | - version = "0.1.2" |
12860 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12861 | - checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" |
12862 | - dependencies = [ |
12863 | - "linked-hash-map", |
12864 | - ] |
12865 | - |
12866 | - [[package]] |
12867 | - name = "match_cfg" |
12868 | - version = "0.1.0" |
12869 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12870 | - checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" |
12871 | - |
12872 | - [[package]] |
12873 | - name = "matchers" |
12874 | - version = "0.1.0" |
12875 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12876 | - checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" |
12877 | - dependencies = [ |
12878 | - "regex-automata 0.1.10", |
12879 | - ] |
12880 | - |
12881 | - [[package]] |
12882 | - name = "matches" |
12883 | - version = "0.1.10" |
12884 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12885 | - checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" |
12886 | - |
12887 | - [[package]] |
12888 | - name = "matchit" |
12889 | - version = "0.7.3" |
12890 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12891 | - checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" |
12892 | - |
12893 | - [[package]] |
12894 | - name = "memchr" |
12895 | - version = "2.6.3" |
12896 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12897 | - checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" |
12898 | - |
12899 | - [[package]] |
12900 | - name = "mime" |
12901 | - version = "0.3.17" |
12902 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12903 | - checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" |
12904 | - |
12905 | - [[package]] |
12906 | - name = "minidom" |
12907 | - version = "0.15.2" |
12908 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12909 | - checksum = "f45614075738ce1b77a1768912a60c0227525971b03e09122a05b8a34a2a6278" |
12910 | - dependencies = [ |
12911 | - "rxml", |
12912 | - ] |
12913 | - |
12914 | - [[package]] |
12915 | - name = "miniz_oxide" |
12916 | - version = "0.7.1" |
12917 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12918 | - checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" |
12919 | - dependencies = [ |
12920 | - "adler", |
12921 | - ] |
12922 | - |
12923 | - [[package]] |
12924 | - name = "mio" |
12925 | - version = "0.8.8" |
12926 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12927 | - checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" |
12928 | - dependencies = [ |
12929 | - "libc", |
12930 | - "wasi", |
12931 | - "windows-sys", |
12932 | - ] |
12933 | - |
12934 | - [[package]] |
12935 | - name = "native-tls" |
12936 | - version = "0.2.11" |
12937 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12938 | - checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" |
12939 | - dependencies = [ |
12940 | - "lazy_static", |
12941 | - "libc", |
12942 | - "log", |
12943 | - "openssl", |
12944 | - "openssl-probe", |
12945 | - "openssl-sys", |
12946 | - "schannel", |
12947 | - "security-framework", |
12948 | - "security-framework-sys", |
12949 | - "tempfile", |
12950 | - ] |
12951 | - |
12952 | - [[package]] |
12953 | - name = "nu-ansi-term" |
12954 | - version = "0.46.0" |
12955 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12956 | - checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" |
12957 | - dependencies = [ |
12958 | - "overload", |
12959 | - "winapi", |
12960 | - ] |
12961 | - |
12962 | - [[package]] |
12963 | - name = "num-traits" |
12964 | - version = "0.2.16" |
12965 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12966 | - checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" |
12967 | - dependencies = [ |
12968 | - "autocfg", |
12969 | - ] |
12970 | - |
12971 | - [[package]] |
12972 | - name = "num_cpus" |
12973 | - version = "1.16.0" |
12974 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12975 | - checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" |
12976 | - dependencies = [ |
12977 | - "hermit-abi", |
12978 | - "libc", |
12979 | - ] |
12980 | - |
12981 | - [[package]] |
12982 | - name = "object" |
12983 | - version = "0.32.1" |
12984 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12985 | - checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" |
12986 | - dependencies = [ |
12987 | - "memchr", |
12988 | - ] |
12989 | - |
12990 | - [[package]] |
12991 | - name = "once_cell" |
12992 | - version = "1.18.0" |
12993 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
12994 | - checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" |
12995 | - |
12996 | - [[package]] |
12997 | - name = "openssl" |
12998 | - version = "0.10.57" |
12999 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13000 | - checksum = "bac25ee399abb46215765b1cb35bc0212377e58a061560d8b29b024fd0430e7c" |
13001 | - dependencies = [ |
13002 | - "bitflags 2.4.0", |
13003 | - "cfg-if", |
13004 | - "foreign-types", |
13005 | - "libc", |
13006 | - "once_cell", |
13007 | - "openssl-macros", |
13008 | - "openssl-sys", |
13009 | - ] |
13010 | - |
13011 | - [[package]] |
13012 | - name = "openssl-macros" |
13013 | - version = "0.1.1" |
13014 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13015 | - checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" |
13016 | - dependencies = [ |
13017 | - "proc-macro2", |
13018 | - "quote", |
13019 | - "syn 2.0.37", |
13020 | - ] |
13021 | - |
13022 | - [[package]] |
13023 | - name = "openssl-probe" |
13024 | - version = "0.1.5" |
13025 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13026 | - checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" |
13027 | - |
13028 | - [[package]] |
13029 | - name = "openssl-sys" |
13030 | - version = "0.9.93" |
13031 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13032 | - checksum = "db4d56a4c0478783083cfafcc42493dd4a981d41669da64b4572a2a089b51b1d" |
13033 | - dependencies = [ |
13034 | - "cc", |
13035 | - "libc", |
13036 | - "pkg-config", |
13037 | - "vcpkg", |
13038 | - ] |
13039 | - |
13040 | - [[package]] |
13041 | - name = "overload" |
13042 | - version = "0.1.1" |
13043 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13044 | - checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" |
13045 | - |
13046 | - [[package]] |
13047 | - name = "parking_lot" |
13048 | - version = "0.12.1" |
13049 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13050 | - checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" |
13051 | - dependencies = [ |
13052 | - "lock_api", |
13053 | - "parking_lot_core", |
13054 | - ] |
13055 | - |
13056 | - [[package]] |
13057 | - name = "parking_lot_core" |
13058 | - version = "0.9.8" |
13059 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13060 | - checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" |
13061 | - dependencies = [ |
13062 | - "cfg-if", |
13063 | - "libc", |
13064 | - "redox_syscall", |
13065 | - "smallvec", |
13066 | - "windows-targets", |
13067 | - ] |
13068 | - |
13069 | - [[package]] |
13070 | - name = "pbkdf2" |
13071 | - version = "0.12.2" |
13072 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13073 | - checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" |
13074 | - dependencies = [ |
13075 | - "digest", |
13076 | - ] |
13077 | - |
13078 | - [[package]] |
13079 | - name = "percent-encoding" |
13080 | - version = "2.3.0" |
13081 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13082 | - checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" |
13083 | - |
13084 | - [[package]] |
13085 | - name = "pin-project" |
13086 | - version = "1.1.3" |
13087 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13088 | - checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" |
13089 | - dependencies = [ |
13090 | - "pin-project-internal", |
13091 | - ] |
13092 | - |
13093 | - [[package]] |
13094 | - name = "pin-project-internal" |
13095 | - version = "1.1.3" |
13096 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13097 | - checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" |
13098 | - dependencies = [ |
13099 | - "proc-macro2", |
13100 | - "quote", |
13101 | - "syn 2.0.37", |
13102 | - ] |
13103 | - |
13104 | - [[package]] |
13105 | - name = "pin-project-lite" |
13106 | - version = "0.2.13" |
13107 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13108 | - checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" |
13109 | - |
13110 | - [[package]] |
13111 | - name = "pin-utils" |
13112 | - version = "0.1.0" |
13113 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13114 | - checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" |
13115 | - |
13116 | - [[package]] |
13117 | - name = "pkg-config" |
13118 | - version = "0.3.27" |
13119 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13120 | - checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" |
13121 | - |
13122 | - [[package]] |
13123 | - name = "ppv-lite86" |
13124 | - version = "0.2.17" |
13125 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13126 | - checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" |
13127 | - |
13128 | - [[package]] |
13129 | - name = "proc-macro2" |
13130 | - version = "1.0.67" |
13131 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13132 | - checksum = "3d433d9f1a3e8c1263d9456598b16fec66f4acc9a74dacffd35c7bb09b3a1328" |
13133 | - dependencies = [ |
13134 | - "unicode-ident", |
13135 | - ] |
13136 | - |
13137 | - [[package]] |
13138 | - name = "quick-error" |
13139 | - version = "1.2.3" |
13140 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13141 | - checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" |
13142 | - |
13143 | - [[package]] |
13144 | - name = "quote" |
13145 | - version = "1.0.33" |
13146 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13147 | - checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" |
13148 | - dependencies = [ |
13149 | - "proc-macro2", |
13150 | - ] |
13151 | - |
13152 | - [[package]] |
13153 | - name = "rand" |
13154 | - version = "0.8.5" |
13155 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13156 | - checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" |
13157 | - dependencies = [ |
13158 | - "libc", |
13159 | - "rand_chacha", |
13160 | - "rand_core", |
13161 | - ] |
13162 | - |
13163 | - [[package]] |
13164 | - name = "rand_chacha" |
13165 | - version = "0.3.1" |
13166 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13167 | - checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" |
13168 | - dependencies = [ |
13169 | - "ppv-lite86", |
13170 | - "rand_core", |
13171 | - ] |
13172 | - |
13173 | - [[package]] |
13174 | - name = "rand_core" |
13175 | - version = "0.6.4" |
13176 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13177 | - checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" |
13178 | - dependencies = [ |
13179 | - "getrandom", |
13180 | - ] |
13181 | - |
13182 | - [[package]] |
13183 | - name = "redox_syscall" |
13184 | - version = "0.3.5" |
13185 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13186 | - checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" |
13187 | - dependencies = [ |
13188 | - "bitflags 1.3.2", |
13189 | - ] |
13190 | - |
13191 | - [[package]] |
13192 | - name = "regex" |
13193 | - version = "1.9.5" |
13194 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13195 | - checksum = "697061221ea1b4a94a624f67d0ae2bfe4e22b8a17b6a192afb11046542cc8c47" |
13196 | - dependencies = [ |
13197 | - "aho-corasick", |
13198 | - "memchr", |
13199 | - "regex-automata 0.3.8", |
13200 | - "regex-syntax 0.7.5", |
13201 | - ] |
13202 | - |
13203 | - [[package]] |
13204 | - name = "regex-automata" |
13205 | - version = "0.1.10" |
13206 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13207 | - checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" |
13208 | - dependencies = [ |
13209 | - "regex-syntax 0.6.29", |
13210 | - ] |
13211 | - |
13212 | - [[package]] |
13213 | - name = "regex-automata" |
13214 | - version = "0.3.8" |
13215 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13216 | - checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795" |
13217 | - dependencies = [ |
13218 | - "aho-corasick", |
13219 | - "memchr", |
13220 | - "regex-syntax 0.7.5", |
13221 | - ] |
13222 | - |
13223 | - [[package]] |
13224 | - name = "regex-syntax" |
13225 | - version = "0.6.29" |
13226 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13227 | - checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" |
13228 | - |
13229 | - [[package]] |
13230 | - name = "regex-syntax" |
13231 | - version = "0.7.5" |
13232 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13233 | - checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" |
13234 | - |
13235 | - [[package]] |
13236 | - name = "reqwest" |
13237 | - version = "0.11.20" |
13238 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13239 | - checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" |
13240 | - dependencies = [ |
13241 | - "base64", |
13242 | - "bytes", |
13243 | - "encoding_rs", |
13244 | - "futures-core", |
13245 | - "futures-util", |
13246 | - "h2", |
13247 | - "http", |
13248 | - "http-body", |
13249 | - "hyper", |
13250 | - "hyper-tls", |
13251 | - "ipnet", |
13252 | - "js-sys", |
13253 | - "log", |
13254 | - "mime", |
13255 | - "native-tls", |
13256 | - "once_cell", |
13257 | - "percent-encoding", |
13258 | - "pin-project-lite", |
13259 | - "serde", |
13260 | - "serde_json", |
13261 | - "serde_urlencoded", |
13262 | - "tokio", |
13263 | - "tokio-native-tls", |
13264 | - "tokio-util", |
13265 | - "tower-service", |
13266 | - "url", |
13267 | - "wasm-bindgen", |
13268 | - "wasm-bindgen-futures", |
13269 | - "wasm-streams", |
13270 | - "web-sys", |
13271 | - "winreg", |
13272 | - ] |
13273 | - |
13274 | - [[package]] |
13275 | - name = "resolv-conf" |
13276 | - version = "0.7.0" |
13277 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13278 | - checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" |
13279 | - dependencies = [ |
13280 | - "hostname", |
13281 | - "quick-error", |
13282 | - ] |
13283 | - |
13284 | - [[package]] |
13285 | - name = "rustc-demangle" |
13286 | - version = "0.1.23" |
13287 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13288 | - checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" |
13289 | - |
13290 | - [[package]] |
13291 | - name = "rustc_version" |
13292 | - version = "0.4.0" |
13293 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13294 | - checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" |
13295 | - dependencies = [ |
13296 | - "semver", |
13297 | - ] |
13298 | - |
13299 | - [[package]] |
13300 | - name = "rustix" |
13301 | - version = "0.38.14" |
13302 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13303 | - checksum = "747c788e9ce8e92b12cd485c49ddf90723550b654b32508f979b71a7b1ecda4f" |
13304 | - dependencies = [ |
13305 | - "bitflags 2.4.0", |
13306 | - "errno", |
13307 | - "libc", |
13308 | - "linux-raw-sys", |
13309 | - "windows-sys", |
13310 | - ] |
13311 | - |
13312 | - [[package]] |
13313 | - name = "rustversion" |
13314 | - version = "1.0.14" |
13315 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13316 | - checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" |
13317 | - |
13318 | - [[package]] |
13319 | - name = "rxml" |
13320 | - version = "0.9.1" |
13321 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13322 | - checksum = "a98f186c7a2f3abbffb802984b7f1dfd65dac8be1aafdaabbca4137f53f0dff7" |
13323 | - dependencies = [ |
13324 | - "bytes", |
13325 | - "pin-project-lite", |
13326 | - "rxml_validation", |
13327 | - "smartstring", |
13328 | - "tokio", |
13329 | - ] |
13330 | - |
13331 | - [[package]] |
13332 | - name = "rxml_validation" |
13333 | - version = "0.9.1" |
13334 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13335 | - checksum = "22a197350ece202f19a166d1ad6d9d6de145e1d2a8ef47db299abe164dbd7530" |
13336 | - |
13337 | - [[package]] |
13338 | - name = "ryu" |
13339 | - version = "1.0.15" |
13340 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13341 | - checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" |
13342 | - |
13343 | - [[package]] |
13344 | - name = "sasl" |
13345 | - version = "0.5.1" |
13346 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13347 | - checksum = "27a9f72398d92896188b100e5224a4f190c9abe5273b98cb1b5a61505be3143e" |
13348 | - dependencies = [ |
13349 | - "base64", |
13350 | - "getrandom", |
13351 | - "hmac", |
13352 | - "pbkdf2", |
13353 | - "sha-1", |
13354 | - "sha2", |
13355 | - ] |
13356 | - |
13357 | - [[package]] |
13358 | - name = "schannel" |
13359 | - version = "0.1.22" |
13360 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13361 | - checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" |
13362 | - dependencies = [ |
13363 | - "windows-sys", |
13364 | - ] |
13365 | - |
13366 | - [[package]] |
13367 | - name = "scopeguard" |
13368 | - version = "1.2.0" |
13369 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13370 | - checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" |
13371 | - |
13372 | - [[package]] |
13373 | - name = "security-framework" |
13374 | - version = "2.9.2" |
13375 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13376 | - checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" |
13377 | - dependencies = [ |
13378 | - "bitflags 1.3.2", |
13379 | - "core-foundation", |
13380 | - "core-foundation-sys", |
13381 | - "libc", |
13382 | - "security-framework-sys", |
13383 | - ] |
13384 | - |
13385 | - [[package]] |
13386 | - name = "security-framework-sys" |
13387 | - version = "2.9.1" |
13388 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13389 | - checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" |
13390 | - dependencies = [ |
13391 | - "core-foundation-sys", |
13392 | - "libc", |
13393 | - ] |
13394 | - |
13395 | - [[package]] |
13396 | - name = "semver" |
13397 | - version = "1.0.18" |
13398 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13399 | - checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" |
13400 | - |
13401 | - [[package]] |
13402 | - name = "serde" |
13403 | - version = "1.0.188" |
13404 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13405 | - checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" |
13406 | - dependencies = [ |
13407 | - "serde_derive", |
13408 | - ] |
13409 | - |
13410 | - [[package]] |
13411 | - name = "serde_derive" |
13412 | - version = "1.0.188" |
13413 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13414 | - checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" |
13415 | - dependencies = [ |
13416 | - "proc-macro2", |
13417 | - "quote", |
13418 | - "syn 2.0.37", |
13419 | - ] |
13420 | - |
13421 | - [[package]] |
13422 | - name = "serde_json" |
13423 | - version = "1.0.107" |
13424 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13425 | - checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" |
13426 | - dependencies = [ |
13427 | - "itoa", |
13428 | - "ryu", |
13429 | - "serde", |
13430 | - ] |
13431 | - |
13432 | - [[package]] |
13433 | - name = "serde_path_to_error" |
13434 | - version = "0.1.14" |
13435 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13436 | - checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" |
13437 | - dependencies = [ |
13438 | - "itoa", |
13439 | - "serde", |
13440 | - ] |
13441 | - |
13442 | - [[package]] |
13443 | - name = "serde_urlencoded" |
13444 | - version = "0.7.1" |
13445 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13446 | - checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" |
13447 | - dependencies = [ |
13448 | - "form_urlencoded", |
13449 | - "itoa", |
13450 | - "ryu", |
13451 | - "serde", |
13452 | - ] |
13453 | - |
13454 | - [[package]] |
13455 | - name = "sha-1" |
13456 | - version = "0.10.1" |
13457 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13458 | - checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" |
13459 | - dependencies = [ |
13460 | - "cfg-if", |
13461 | - "cpufeatures", |
13462 | - "digest", |
13463 | - ] |
13464 | - |
13465 | - [[package]] |
13466 | - name = "sha1" |
13467 | - version = "0.10.6" |
13468 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13469 | - checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" |
13470 | - dependencies = [ |
13471 | - "cfg-if", |
13472 | - "cpufeatures", |
13473 | - "digest", |
13474 | - ] |
13475 | - |
13476 | - [[package]] |
13477 | - name = "sha2" |
13478 | - version = "0.10.7" |
13479 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13480 | - checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" |
13481 | - dependencies = [ |
13482 | - "cfg-if", |
13483 | - "cpufeatures", |
13484 | - "digest", |
13485 | - ] |
13486 | - |
13487 | - [[package]] |
13488 | - name = "sha3" |
13489 | - version = "0.10.8" |
13490 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13491 | - checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" |
13492 | - dependencies = [ |
13493 | - "digest", |
13494 | - "keccak", |
13495 | - ] |
13496 | - |
13497 | - [[package]] |
13498 | - name = "sharded-slab" |
13499 | - version = "0.1.4" |
13500 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13501 | - checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" |
13502 | - dependencies = [ |
13503 | - "lazy_static", |
13504 | - ] |
13505 | - |
13506 | - [[package]] |
13507 | - name = "signal-hook-registry" |
13508 | - version = "1.4.1" |
13509 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13510 | - checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" |
13511 | - dependencies = [ |
13512 | - "libc", |
13513 | - ] |
13514 | - |
13515 | - [[package]] |
13516 | - name = "slab" |
13517 | - version = "0.4.9" |
13518 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13519 | - checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" |
13520 | - dependencies = [ |
13521 | - "autocfg", |
13522 | - ] |
13523 | - |
13524 | - [[package]] |
13525 | - name = "smallvec" |
13526 | - version = "1.11.1" |
13527 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13528 | - checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" |
13529 | - |
13530 | - [[package]] |
13531 | - name = "smartstring" |
13532 | - version = "1.0.1" |
13533 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13534 | - checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" |
13535 | - dependencies = [ |
13536 | - "autocfg", |
13537 | - "static_assertions", |
13538 | - "version_check", |
13539 | - ] |
13540 | - |
13541 | - [[package]] |
13542 | - name = "socket2" |
13543 | - version = "0.4.9" |
13544 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13545 | - checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" |
13546 | - dependencies = [ |
13547 | - "libc", |
13548 | - "winapi", |
13549 | - ] |
13550 | - |
13551 | - [[package]] |
13552 | - name = "socket2" |
13553 | - version = "0.5.4" |
13554 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13555 | - checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" |
13556 | - dependencies = [ |
13557 | - "libc", |
13558 | - "windows-sys", |
13559 | - ] |
13560 | - |
13561 | - [[package]] |
13562 | - name = "static_assertions" |
13563 | - version = "1.1.0" |
13564 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13565 | - checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" |
13566 | - |
13567 | - [[package]] |
13568 | - name = "stringprep" |
13569 | - version = "0.1.4" |
13570 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13571 | - checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6" |
13572 | - dependencies = [ |
13573 | - "finl_unicode", |
13574 | - "unicode-bidi", |
13575 | - "unicode-normalization", |
13576 | - ] |
13577 | - |
13578 | - [[package]] |
13579 | - name = "subtle" |
13580 | - version = "2.5.0" |
13581 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13582 | - checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" |
13583 | - |
13584 | - [[package]] |
13585 | - name = "syn" |
13586 | - version = "1.0.109" |
13587 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13588 | - checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" |
13589 | - dependencies = [ |
13590 | - "proc-macro2", |
13591 | - "quote", |
13592 | - "unicode-ident", |
13593 | - ] |
13594 | - |
13595 | - [[package]] |
13596 | - name = "syn" |
13597 | - version = "2.0.37" |
13598 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13599 | - checksum = "7303ef2c05cd654186cb250d29049a24840ca25d2747c25c0381c8d9e2f582e8" |
13600 | - dependencies = [ |
13601 | - "proc-macro2", |
13602 | - "quote", |
13603 | - "unicode-ident", |
13604 | - ] |
13605 | - |
13606 | - [[package]] |
13607 | - name = "sync_wrapper" |
13608 | - version = "0.1.2" |
13609 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13610 | - checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" |
13611 | - |
13612 | - [[package]] |
13613 | - name = "tempfile" |
13614 | - version = "3.8.0" |
13615 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13616 | - checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" |
13617 | - dependencies = [ |
13618 | - "cfg-if", |
13619 | - "fastrand", |
13620 | - "redox_syscall", |
13621 | - "rustix", |
13622 | - "windows-sys", |
13623 | - ] |
13624 | - |
13625 | - [[package]] |
13626 | - name = "thiserror" |
13627 | - version = "1.0.48" |
13628 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13629 | - checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" |
13630 | - dependencies = [ |
13631 | - "thiserror-impl", |
13632 | - ] |
13633 | - |
13634 | - [[package]] |
13635 | - name = "thiserror-impl" |
13636 | - version = "1.0.48" |
13637 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13638 | - checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" |
13639 | - dependencies = [ |
13640 | - "proc-macro2", |
13641 | - "quote", |
13642 | - "syn 2.0.37", |
13643 | - ] |
13644 | - |
13645 | - [[package]] |
13646 | - name = "thread_local" |
13647 | - version = "1.1.7" |
13648 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13649 | - checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" |
13650 | - dependencies = [ |
13651 | - "cfg-if", |
13652 | - "once_cell", |
13653 | - ] |
13654 | - |
13655 | - [[package]] |
13656 | - name = "tinyvec" |
13657 | - version = "1.6.0" |
13658 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13659 | - checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" |
13660 | - dependencies = [ |
13661 | - "tinyvec_macros", |
13662 | - ] |
13663 | - |
13664 | - [[package]] |
13665 | - name = "tinyvec_macros" |
13666 | - version = "0.1.1" |
13667 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13668 | - checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" |
13669 | - |
13670 | - [[package]] |
13671 | - name = "tokio" |
13672 | - version = "1.32.0" |
13673 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13674 | - checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" |
13675 | - dependencies = [ |
13676 | - "backtrace", |
13677 | - "bytes", |
13678 | - "libc", |
13679 | - "mio", |
13680 | - "num_cpus", |
13681 | - "parking_lot", |
13682 | - "pin-project-lite", |
13683 | - "signal-hook-registry", |
13684 | - "socket2 0.5.4", |
13685 | - "tokio-macros", |
13686 | - "windows-sys", |
13687 | - ] |
13688 | - |
13689 | - [[package]] |
13690 | - name = "tokio-macros" |
13691 | - version = "2.1.0" |
13692 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13693 | - checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" |
13694 | - dependencies = [ |
13695 | - "proc-macro2", |
13696 | - "quote", |
13697 | - "syn 2.0.37", |
13698 | - ] |
13699 | - |
13700 | - [[package]] |
13701 | - name = "tokio-native-tls" |
13702 | - version = "0.3.1" |
13703 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13704 | - checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" |
13705 | - dependencies = [ |
13706 | - "native-tls", |
13707 | - "tokio", |
13708 | - ] |
13709 | - |
13710 | - [[package]] |
13711 | - name = "tokio-stream" |
13712 | - version = "0.1.14" |
13713 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13714 | - checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" |
13715 | - dependencies = [ |
13716 | - "futures-core", |
13717 | - "pin-project-lite", |
13718 | - "tokio", |
13719 | - ] |
13720 | - |
13721 | - [[package]] |
13722 | - name = "tokio-util" |
13723 | - version = "0.7.9" |
13724 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13725 | - checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" |
13726 | - dependencies = [ |
13727 | - "bytes", |
13728 | - "futures-core", |
13729 | - "futures-sink", |
13730 | - "pin-project-lite", |
13731 | - "tokio", |
13732 | - "tracing", |
13733 | - ] |
13734 | - |
13735 | - [[package]] |
13736 | - name = "tokio-xmpp" |
13737 | - version = "3.4.0" |
13738 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13739 | - checksum = "09042a913bfef08dbf2d81524c151f7399b7892c9b12650f42711fc804dc5711" |
13740 | - dependencies = [ |
13741 | - "bytes", |
13742 | - "futures", |
13743 | - "idna 0.4.0", |
13744 | - "log", |
13745 | - "minidom", |
13746 | - "native-tls", |
13747 | - "rand", |
13748 | - "rustc_version", |
13749 | - "rxml", |
13750 | - "sasl", |
13751 | - "tokio", |
13752 | - "tokio-native-tls", |
13753 | - "tokio-stream", |
13754 | - "tokio-util", |
13755 | - "trust-dns-proto", |
13756 | - "trust-dns-resolver", |
13757 | - "xmpp-parsers", |
13758 | - ] |
13759 | - |
13760 | - [[package]] |
13761 | - name = "tower" |
13762 | - version = "0.4.13" |
13763 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13764 | - checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" |
13765 | - dependencies = [ |
13766 | - "futures-core", |
13767 | - "futures-util", |
13768 | - "pin-project", |
13769 | - "pin-project-lite", |
13770 | - "tokio", |
13771 | - "tower-layer", |
13772 | - "tower-service", |
13773 | - "tracing", |
13774 | - ] |
13775 | - |
13776 | - [[package]] |
13777 | - name = "tower-http" |
13778 | - version = "0.4.4" |
13779 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13780 | - checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" |
13781 | - dependencies = [ |
13782 | - "bitflags 2.4.0", |
13783 | - "bytes", |
13784 | - "futures-core", |
13785 | - "futures-util", |
13786 | - "http", |
13787 | - "http-body", |
13788 | - "http-range-header", |
13789 | - "pin-project-lite", |
13790 | - "tower-layer", |
13791 | - "tower-service", |
13792 | - "tracing", |
13793 | - ] |
13794 | - |
13795 | - [[package]] |
13796 | - name = "tower-layer" |
13797 | - version = "0.3.2" |
13798 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13799 | - checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" |
13800 | - |
13801 | - [[package]] |
13802 | - name = "tower-service" |
13803 | - version = "0.3.2" |
13804 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13805 | - checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" |
13806 | - |
13807 | - [[package]] |
13808 | - name = "tracing" |
13809 | - version = "0.1.37" |
13810 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13811 | - checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" |
13812 | - dependencies = [ |
13813 | - "cfg-if", |
13814 | - "log", |
13815 | - "pin-project-lite", |
13816 | - "tracing-attributes", |
13817 | - "tracing-core", |
13818 | - ] |
13819 | - |
13820 | - [[package]] |
13821 | - name = "tracing-attributes" |
13822 | - version = "0.1.26" |
13823 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13824 | - checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" |
13825 | - dependencies = [ |
13826 | - "proc-macro2", |
13827 | - "quote", |
13828 | - "syn 2.0.37", |
13829 | - ] |
13830 | - |
13831 | - [[package]] |
13832 | - name = "tracing-core" |
13833 | - version = "0.1.31" |
13834 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13835 | - checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" |
13836 | - dependencies = [ |
13837 | - "once_cell", |
13838 | - "valuable", |
13839 | - ] |
13840 | - |
13841 | - [[package]] |
13842 | - name = "tracing-log" |
13843 | - version = "0.1.3" |
13844 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13845 | - checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" |
13846 | - dependencies = [ |
13847 | - "lazy_static", |
13848 | - "log", |
13849 | - "tracing-core", |
13850 | - ] |
13851 | - |
13852 | - [[package]] |
13853 | - name = "tracing-subscriber" |
13854 | - version = "0.3.17" |
13855 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13856 | - checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" |
13857 | - dependencies = [ |
13858 | - "matchers", |
13859 | - "nu-ansi-term", |
13860 | - "once_cell", |
13861 | - "regex", |
13862 | - "sharded-slab", |
13863 | - "smallvec", |
13864 | - "thread_local", |
13865 | - "tracing", |
13866 | - "tracing-core", |
13867 | - "tracing-log", |
13868 | - ] |
13869 | - |
13870 | - [[package]] |
13871 | - name = "trust-dns-proto" |
13872 | - version = "0.22.0" |
13873 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13874 | - checksum = "4f7f83d1e4a0e4358ac54c5c3681e5d7da5efc5a7a632c90bb6d6669ddd9bc26" |
13875 | - dependencies = [ |
13876 | - "async-trait", |
13877 | - "cfg-if", |
13878 | - "data-encoding", |
13879 | - "enum-as-inner", |
13880 | - "futures-channel", |
13881 | - "futures-io", |
13882 | - "futures-util", |
13883 | - "idna 0.2.3", |
13884 | - "ipnet", |
13885 | - "lazy_static", |
13886 | - "rand", |
13887 | - "smallvec", |
13888 | - "thiserror", |
13889 | - "tinyvec", |
13890 | - "tokio", |
13891 | - "tracing", |
13892 | - "url", |
13893 | - ] |
13894 | - |
13895 | - [[package]] |
13896 | - name = "trust-dns-resolver" |
13897 | - version = "0.22.0" |
13898 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13899 | - checksum = "aff21aa4dcefb0a1afbfac26deb0adc93888c7d295fb63ab273ef276ba2b7cfe" |
13900 | - dependencies = [ |
13901 | - "cfg-if", |
13902 | - "futures-util", |
13903 | - "ipconfig", |
13904 | - "lazy_static", |
13905 | - "lru-cache", |
13906 | - "parking_lot", |
13907 | - "resolv-conf", |
13908 | - "smallvec", |
13909 | - "thiserror", |
13910 | - "tokio", |
13911 | - "tracing", |
13912 | - "trust-dns-proto", |
13913 | - ] |
13914 | - |
13915 | - [[package]] |
13916 | - name = "try-lock" |
13917 | - version = "0.2.4" |
13918 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13919 | - checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" |
13920 | - |
13921 | - [[package]] |
13922 | - name = "typenum" |
13923 | - version = "1.17.0" |
13924 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13925 | - checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" |
13926 | - |
13927 | - [[package]] |
13928 | - name = "unicode-bidi" |
13929 | - version = "0.3.13" |
13930 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13931 | - checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" |
13932 | - |
13933 | - [[package]] |
13934 | - name = "unicode-ident" |
13935 | - version = "1.0.12" |
13936 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13937 | - checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" |
13938 | - |
13939 | - [[package]] |
13940 | - name = "unicode-normalization" |
13941 | - version = "0.1.22" |
13942 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13943 | - checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" |
13944 | - dependencies = [ |
13945 | - "tinyvec", |
13946 | - ] |
13947 | - |
13948 | - [[package]] |
13949 | - name = "url" |
13950 | - version = "2.4.1" |
13951 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13952 | - checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" |
13953 | - dependencies = [ |
13954 | - "form_urlencoded", |
13955 | - "idna 0.4.0", |
13956 | - "percent-encoding", |
13957 | - ] |
13958 | - |
13959 | - [[package]] |
13960 | - name = "uuid" |
13961 | - version = "1.4.1" |
13962 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13963 | - checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" |
13964 | - dependencies = [ |
13965 | - "getrandom", |
13966 | - "serde", |
13967 | - ] |
13968 | - |
13969 | - [[package]] |
13970 | - name = "valuable" |
13971 | - version = "0.1.0" |
13972 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13973 | - checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" |
13974 | - |
13975 | - [[package]] |
13976 | - name = "vcpkg" |
13977 | - version = "0.2.15" |
13978 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13979 | - checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" |
13980 | - |
13981 | - [[package]] |
13982 | - name = "version_check" |
13983 | - version = "0.9.4" |
13984 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13985 | - checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" |
13986 | - |
13987 | - [[package]] |
13988 | - name = "want" |
13989 | - version = "0.3.1" |
13990 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
13991 | - checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" |
13992 | - dependencies = [ |
13993 | - "try-lock", |
13994 | - ] |
13995 | - |
13996 | - [[package]] |
13997 | - name = "wasi" |
13998 | - version = "0.11.0+wasi-snapshot-preview1" |
13999 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14000 | - checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" |
14001 | - |
14002 | - [[package]] |
14003 | - name = "wasm-bindgen" |
14004 | - version = "0.2.87" |
14005 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14006 | - checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" |
14007 | - dependencies = [ |
14008 | - "cfg-if", |
14009 | - "wasm-bindgen-macro", |
14010 | - ] |
14011 | - |
14012 | - [[package]] |
14013 | - name = "wasm-bindgen-backend" |
14014 | - version = "0.2.87" |
14015 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14016 | - checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" |
14017 | - dependencies = [ |
14018 | - "bumpalo", |
14019 | - "log", |
14020 | - "once_cell", |
14021 | - "proc-macro2", |
14022 | - "quote", |
14023 | - "syn 2.0.37", |
14024 | - "wasm-bindgen-shared", |
14025 | - ] |
14026 | - |
14027 | - [[package]] |
14028 | - name = "wasm-bindgen-futures" |
14029 | - version = "0.4.37" |
14030 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14031 | - checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" |
14032 | - dependencies = [ |
14033 | - "cfg-if", |
14034 | - "js-sys", |
14035 | - "wasm-bindgen", |
14036 | - "web-sys", |
14037 | - ] |
14038 | - |
14039 | - [[package]] |
14040 | - name = "wasm-bindgen-macro" |
14041 | - version = "0.2.87" |
14042 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14043 | - checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" |
14044 | - dependencies = [ |
14045 | - "quote", |
14046 | - "wasm-bindgen-macro-support", |
14047 | - ] |
14048 | - |
14049 | - [[package]] |
14050 | - name = "wasm-bindgen-macro-support" |
14051 | - version = "0.2.87" |
14052 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14053 | - checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" |
14054 | - dependencies = [ |
14055 | - "proc-macro2", |
14056 | - "quote", |
14057 | - "syn 2.0.37", |
14058 | - "wasm-bindgen-backend", |
14059 | - "wasm-bindgen-shared", |
14060 | - ] |
14061 | - |
14062 | - [[package]] |
14063 | - name = "wasm-bindgen-shared" |
14064 | - version = "0.2.87" |
14065 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14066 | - checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" |
14067 | - |
14068 | - [[package]] |
14069 | - name = "wasm-streams" |
14070 | - version = "0.3.0" |
14071 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14072 | - checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" |
14073 | - dependencies = [ |
14074 | - "futures-util", |
14075 | - "js-sys", |
14076 | - "wasm-bindgen", |
14077 | - "wasm-bindgen-futures", |
14078 | - "web-sys", |
14079 | - ] |
14080 | - |
14081 | - [[package]] |
14082 | - name = "web-sys" |
14083 | - version = "0.3.64" |
14084 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14085 | - checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" |
14086 | - dependencies = [ |
14087 | - "js-sys", |
14088 | - "wasm-bindgen", |
14089 | - ] |
14090 | - |
14091 | - [[package]] |
14092 | - name = "widestring" |
14093 | - version = "1.0.2" |
14094 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14095 | - checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" |
14096 | - |
14097 | - [[package]] |
14098 | - name = "winapi" |
14099 | - version = "0.3.9" |
14100 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14101 | - checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" |
14102 | - dependencies = [ |
14103 | - "winapi-i686-pc-windows-gnu", |
14104 | - "winapi-x86_64-pc-windows-gnu", |
14105 | - ] |
14106 | - |
14107 | - [[package]] |
14108 | - name = "winapi-i686-pc-windows-gnu" |
14109 | - version = "0.4.0" |
14110 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14111 | - checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" |
14112 | - |
14113 | - [[package]] |
14114 | - name = "winapi-x86_64-pc-windows-gnu" |
14115 | - version = "0.4.0" |
14116 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14117 | - checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" |
14118 | - |
14119 | - [[package]] |
14120 | - name = "windows-sys" |
14121 | - version = "0.48.0" |
14122 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14123 | - checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" |
14124 | - dependencies = [ |
14125 | - "windows-targets", |
14126 | - ] |
14127 | - |
14128 | - [[package]] |
14129 | - name = "windows-targets" |
14130 | - version = "0.48.5" |
14131 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14132 | - checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" |
14133 | - dependencies = [ |
14134 | - "windows_aarch64_gnullvm", |
14135 | - "windows_aarch64_msvc", |
14136 | - "windows_i686_gnu", |
14137 | - "windows_i686_msvc", |
14138 | - "windows_x86_64_gnu", |
14139 | - "windows_x86_64_gnullvm", |
14140 | - "windows_x86_64_msvc", |
14141 | - ] |
14142 | - |
14143 | - [[package]] |
14144 | - name = "windows_aarch64_gnullvm" |
14145 | - version = "0.48.5" |
14146 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14147 | - checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" |
14148 | - |
14149 | - [[package]] |
14150 | - name = "windows_aarch64_msvc" |
14151 | - version = "0.48.5" |
14152 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14153 | - checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" |
14154 | - |
14155 | - [[package]] |
14156 | - name = "windows_i686_gnu" |
14157 | - version = "0.48.5" |
14158 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14159 | - checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" |
14160 | - |
14161 | - [[package]] |
14162 | - name = "windows_i686_msvc" |
14163 | - version = "0.48.5" |
14164 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14165 | - checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" |
14166 | - |
14167 | - [[package]] |
14168 | - name = "windows_x86_64_gnu" |
14169 | - version = "0.48.5" |
14170 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14171 | - checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" |
14172 | - |
14173 | - [[package]] |
14174 | - name = "windows_x86_64_gnullvm" |
14175 | - version = "0.48.5" |
14176 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14177 | - checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" |
14178 | - |
14179 | - [[package]] |
14180 | - name = "windows_x86_64_msvc" |
14181 | - version = "0.48.5" |
14182 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14183 | - checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" |
14184 | - |
14185 | - [[package]] |
14186 | - name = "winreg" |
14187 | - version = "0.50.0" |
14188 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14189 | - checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" |
14190 | - dependencies = [ |
14191 | - "cfg-if", |
14192 | - "windows-sys", |
14193 | - ] |
14194 | - |
14195 | - [[package]] |
14196 | - name = "xmpp" |
14197 | - version = "0.5.0" |
14198 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14199 | - checksum = "d49e896c63e7554f9e75c6cd22e4b0b553a2d7582060b676996b4ac6fb87dbac" |
14200 | - dependencies = [ |
14201 | - "futures", |
14202 | - "log", |
14203 | - "reqwest", |
14204 | - "tokio", |
14205 | - "tokio-util", |
14206 | - "tokio-xmpp", |
14207 | - ] |
14208 | - |
14209 | - [[package]] |
14210 | - name = "xmpp-parsers" |
14211 | - version = "0.20.0" |
14212 | - source = "registry+https://github.com/rust-lang/crates.io-index" |
14213 | - checksum = "c0905d294e6e7f7668f4b3ca9c4a6343fd85355d21c44d2f1c8b1c027394048e" |
14214 | - dependencies = [ |
14215 | - "base64", |
14216 | - "blake2", |
14217 | - "chrono", |
14218 | - "digest", |
14219 | - "jid", |
14220 | - "minidom", |
14221 | - "rustc_version", |
14222 | - "sha1", |
14223 | - "sha2", |
14224 | - "sha3", |
14225 | - ] |
14226 | diff --git a/crescent-xmpp/Cargo.toml b/crescent-xmpp/Cargo.toml |
14227 | deleted file mode 100644 |
14228 | index a9e6eb9..0000000 |
14229 | --- a/crescent-xmpp/Cargo.toml |
14230 | +++ /dev/null |
14231 | @@ -1,25 +0,0 @@ |
14232 | - [package] |
14233 | - name = "crescent_xmpp" |
14234 | - version = "0.2.1" |
14235 | - edition = "2021" |
14236 | - |
14237 | - [dependencies] |
14238 | - crescent_api = {workspace = true} |
14239 | - crescent_config = {workspace = true} |
14240 | - crescent_database = {workspace = true} |
14241 | - crescent_rpc = {workspace = true} |
14242 | - clap = "4.4.4" |
14243 | - serde = { version = "1.0", features = ["derive"] } |
14244 | - tokio = { version = "1.32.0", features = ["full"] } |
14245 | - anyhow = "1.0.75" |
14246 | - tokio-xmpp = "3.4.0" |
14247 | - futures = "0.3.28" |
14248 | - rand = "0.8.5" |
14249 | - capnp = "0.18.3" |
14250 | - capnp-rpc = "0.18.0" |
14251 | - tracing = { version = "0.1.40", features = ["log"] } |
14252 | - async-trait = "0.1.74" |
14253 | - sqlx = { version = "0.7.2", features = [ "sqlite", "macros", ] } |
14254 | - tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } |
14255 | - xmpp = { git = "https://kevinschoon.com/forks/xmpp-rs", branch = "crescent"} |
14256 | - time = { version = "0.3.30", features = ["formatting"] } |
14257 | diff --git a/crescent-xmpp/README.md b/crescent-xmpp/README.md |
14258 | deleted file mode 100644 |
14259 | index f778427..0000000 |
14260 | --- a/crescent-xmpp/README.md |
14261 | +++ /dev/null |
14262 | @@ -1,8 +0,0 @@ |
14263 | - # crescent-xmpp |
14264 | - |
14265 | - Simple XMPP based bot. |
14266 | - |
14267 | - ## Features |
14268 | - |
14269 | - * Record the active number of users per channel |
14270 | - * Export chat history per channel |
14271 | diff --git a/crescent-xmpp/migrations/20231028110138_init.sql b/crescent-xmpp/migrations/20231028110138_init.sql |
14272 | deleted file mode 100644 |
14273 | index f2739e0..0000000 |
14274 | --- a/crescent-xmpp/migrations/20231028110138_init.sql |
14275 | +++ /dev/null |
14276 | @@ -1,23 +0,0 @@ |
14277 | - CREATE TABLE channels ( |
14278 | - id INTEGER PRIMARY KEY, |
14279 | - name TEXT UNIQUE NOT NULL , |
14280 | - description TEXT NOT NULL |
14281 | - ) STRICT; |
14282 | - |
14283 | - CREATE TABLE channels_users_online ( |
14284 | - id INTEGER PRIMARY KEY, |
14285 | - channel_id INTEGER REFERENCES channels(id) ON DELETE CASCADE NOT NULL UNIQUE, |
14286 | - n_users INTEGER DEFAULT 0, |
14287 | - last_updated INTEGER NOT NULL DEFAULT (UNIXEPOCH()) |
14288 | - ) STRICT; |
14289 | - |
14290 | - CREATE TABLE messages ( |
14291 | - id INTEGER PRIMARY KEY, |
14292 | - channel_id INTEGER REFERENCES channels(id) ON DELETE CASCADE NOT NULL, |
14293 | - xmpp_timestamp TEXT NOT NULL, |
14294 | - xmpp_nickname TEXT NOT NULL, |
14295 | - xmpp_id TEXT NOT NULL UNIQUE, |
14296 | - xmpp_body TEXT |
14297 | - ) STRICT; |
14298 | - |
14299 | - CREATE INDEX messages_count ON messages (id, channel_id, xmpp_id); |
14300 | diff --git a/crescent-xmpp/queries/channels_delete.sql b/crescent-xmpp/queries/channels_delete.sql |
14301 | deleted file mode 100644 |
14302 | index 73a5778..0000000 |
14303 | --- a/crescent-xmpp/queries/channels_delete.sql |
14304 | +++ /dev/null |
14305 | @@ -1 +0,0 @@ |
14306 | - DELETE FROM channels WHERE name = ?; |
14307 | diff --git a/crescent-xmpp/queries/channels_list.sql b/crescent-xmpp/queries/channels_list.sql |
14308 | deleted file mode 100644 |
14309 | index 90b01bf..0000000 |
14310 | --- a/crescent-xmpp/queries/channels_list.sql |
14311 | +++ /dev/null |
14312 | @@ -1 +0,0 @@ |
14313 | - SELECT (id, name, description) FROM channels WHERE name = ? |
14314 | diff --git a/crescent-xmpp/queries/channels_reset_counts.sql b/crescent-xmpp/queries/channels_reset_counts.sql |
14315 | deleted file mode 100644 |
14316 | index abd353e..0000000 |
14317 | --- a/crescent-xmpp/queries/channels_reset_counts.sql |
14318 | +++ /dev/null |
14319 | @@ -1,10 +0,0 @@ |
14320 | - INSERT INTO |
14321 | - channels_users_online (channel_id, n_users, last_updated) |
14322 | - VALUES ( |
14323 | - (SELECT id FROM channels WHERE name = ?), |
14324 | - 0, |
14325 | - UNIXEPOCH() |
14326 | - ) |
14327 | - ON CONFLICT DO UPDATE |
14328 | - SET |
14329 | - n_users = 0 |
14330 | diff --git a/crescent-xmpp/queries/channels_stats.sql b/crescent-xmpp/queries/channels_stats.sql |
14331 | deleted file mode 100644 |
14332 | index 223f3c2..0000000 |
14333 | --- a/crescent-xmpp/queries/channels_stats.sql |
14334 | +++ /dev/null |
14335 | @@ -1,6 +0,0 @@ |
14336 | - SELECT |
14337 | - name, |
14338 | - channels_users_online.n_users AS "n_users!: i64", |
14339 | - (SELECT COUNT(id) FROM messages WHERE messages.channel_id = channels.id) AS "n_messages!: i64" |
14340 | - FROM channels |
14341 | - LEFT JOIN channels_users_online ON (channels.id = channels_users_online.channel_id) |
14342 | diff --git a/crescent-xmpp/queries/channels_update_user_count.sql b/crescent-xmpp/queries/channels_update_user_count.sql |
14343 | deleted file mode 100644 |
14344 | index 66c6fa3..0000000 |
14345 | --- a/crescent-xmpp/queries/channels_update_user_count.sql |
14346 | +++ /dev/null |
14347 | @@ -1,11 +0,0 @@ |
14348 | - INSERT INTO |
14349 | - channels_users_online (channel_id, n_users, last_updated) |
14350 | - VALUES ( |
14351 | - (SELECT id FROM channels WHERE name = ?), |
14352 | - MAX(?, 0), |
14353 | - UNIXEPOCH() |
14354 | - ) |
14355 | - ON CONFLICT DO UPDATE |
14356 | - SET |
14357 | - n_users = MAX(n_users + ?, 0), |
14358 | - last_updated = UNIXEPOCH() |
14359 | diff --git a/crescent-xmpp/queries/channels_upsert.sql b/crescent-xmpp/queries/channels_upsert.sql |
14360 | deleted file mode 100644 |
14361 | index c6e00b3..0000000 |
14362 | --- a/crescent-xmpp/queries/channels_upsert.sql |
14363 | +++ /dev/null |
14364 | @@ -1,5 +0,0 @@ |
14365 | - INSERT INTO channels (name, description) |
14366 | - VALUES (?, ?) ON CONFLICT DO |
14367 | - UPDATE SET |
14368 | - description = ? |
14369 | - RETURNING id |
14370 | diff --git a/crescent-xmpp/queries/messages_last_id.sql b/crescent-xmpp/queries/messages_last_id.sql |
14371 | deleted file mode 100644 |
14372 | index b9c5259..0000000 |
14373 | --- a/crescent-xmpp/queries/messages_last_id.sql |
14374 | +++ /dev/null |
14375 | @@ -1,3 +0,0 @@ |
14376 | - SELECT xmpp_id FROM messages WHERE |
14377 | - messages.channel_id = (SELECT id FROM channels WHERE name = ?) |
14378 | - ORDER BY messages.id ASC |
14379 | diff --git a/crescent-xmpp/queries/messages_list.sql b/crescent-xmpp/queries/messages_list.sql |
14380 | deleted file mode 100644 |
14381 | index 3a5d8f4..0000000 |
14382 | --- a/crescent-xmpp/queries/messages_list.sql |
14383 | +++ /dev/null |
14384 | @@ -1,10 +0,0 @@ |
14385 | - SELECT |
14386 | - xmpp_id AS "xmpp_id!: String", |
14387 | - xmpp_timestamp AS "xmpp_timestamp!: String", |
14388 | - xmpp_nickname AS "xmpp_nickname!: String", |
14389 | - xmpp_body AS "xmpp_body!: String" |
14390 | - FROM messages WHERE |
14391 | - channel_id = (SELECT channels.id FROM channels WHERE channels.name = ?) |
14392 | - AND COALESCE(? IS NULL, messages.id > (SELECT messages.id FROM messages WHERE messages.id = ?)) |
14393 | - ORDER BY messages.id |
14394 | - LIMIT ? |
14395 | diff --git a/crescent-xmpp/queries/messages_upsert.sql b/crescent-xmpp/queries/messages_upsert.sql |
14396 | deleted file mode 100644 |
14397 | index 920de22..0000000 |
14398 | --- a/crescent-xmpp/queries/messages_upsert.sql |
14399 | +++ /dev/null |
14400 | @@ -1,2 +0,0 @@ |
14401 | - INSERT INTO messages (xmpp_id, xmpp_timestamp, channel_id, xmpp_nickname, xmpp_body) |
14402 | - VALUES (?, ?, (SELECT id FROM channels WHERE name = ?), ?, ?) ON CONFLICT DO NOTHING |
14403 | diff --git a/crescent-xmpp/src/config.rs b/crescent-xmpp/src/config.rs |
14404 | deleted file mode 100644 |
14405 | index 2cd6d40..0000000 |
14406 | --- a/crescent-xmpp/src/config.rs |
14407 | +++ /dev/null |
14408 | @@ -1,72 +0,0 @@ |
14409 | - use crescent_config::{data_dir, runtime_dir, Configurable, Error, Reader}; |
14410 | - use serde::{Deserialize, Serialize}; |
14411 | - use tokio_xmpp::Jid; |
14412 | - |
14413 | - #[derive(Serialize, Deserialize, Clone)] |
14414 | - pub struct Channel { |
14415 | - pub jid: String, |
14416 | - } |
14417 | - |
14418 | - #[derive(Deserialize, Serialize, Clone, Debug)] |
14419 | - pub struct Database { |
14420 | - #[serde(default = "Database::path_default")] |
14421 | - pub path: String, |
14422 | - #[serde(default = "Database::migrate_default")] |
14423 | - pub migrate: bool, |
14424 | - } |
14425 | - |
14426 | - impl Database { |
14427 | - fn path_default() -> String { |
14428 | - let mut data_path = data_dir(); |
14429 | - data_path.push("xmpp.db"); |
14430 | - String::from(data_path.to_str().unwrap()) |
14431 | - } |
14432 | - |
14433 | - fn migrate_default() -> bool { |
14434 | - true |
14435 | - } |
14436 | - } |
14437 | - |
14438 | - #[derive(Serialize, Deserialize, Clone)] |
14439 | - pub struct Xmpp { |
14440 | - // HTTP address to listen on |
14441 | - #[serde(default = "Xmpp::default_socket_path")] |
14442 | - pub socket_path: String, |
14443 | - // Chat alias to use |
14444 | - pub alias: Option<String>, |
14445 | - // Jid for connecting to an XMPP server |
14446 | - pub jid: String, |
14447 | - // Password authentication |
14448 | - pub password: String, |
14449 | - // Array of channels to idle in |
14450 | - pub channels: Vec<Channel>, |
14451 | - // database configuration |
14452 | - pub database: Database, |
14453 | - } |
14454 | - |
14455 | - impl Xmpp { |
14456 | - fn default_socket_path() -> String { |
14457 | - runtime_dir().to_str().unwrap().to_string() + "/crescent-xmpp.sock" |
14458 | - } |
14459 | - } |
14460 | - |
14461 | - #[derive(Serialize, Deserialize, Clone)] |
14462 | - pub struct Config { |
14463 | - pub log_level: String, |
14464 | - pub xmpp: Xmpp, |
14465 | - } |
14466 | - |
14467 | - impl Configurable for Config { |
14468 | - fn initialize(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
14469 | - Ok(()) |
14470 | - } |
14471 | - |
14472 | - fn validate(&mut self) -> Result<(), Box<dyn std::error::Error>> { |
14473 | - let _ = Jid::new(&self.xmpp.jid)?; |
14474 | - Ok(()) |
14475 | - } |
14476 | - } |
14477 | - |
14478 | - pub fn load(path: Option<&str>) -> Result<Config, Error> { |
14479 | - Reader::load(path) |
14480 | - } |
14481 | diff --git a/crescent-xmpp/src/database_ext.rs b/crescent-xmpp/src/database_ext.rs |
14482 | deleted file mode 100644 |
14483 | index febe2f1..0000000 |
14484 | --- a/crescent-xmpp/src/database_ext.rs |
14485 | +++ /dev/null |
14486 | @@ -1,143 +0,0 @@ |
14487 | - use async_trait::async_trait; |
14488 | - use sqlx; |
14489 | - use sqlx::Row; |
14490 | - |
14491 | - use crescent_database::{Error, Wrapper as Database}; |
14492 | - |
14493 | - /// internal only message struct |
14494 | - pub struct Message { |
14495 | - pub xmpp_id: String, |
14496 | - pub xmpp_timestamp: String, |
14497 | - pub xmpp_nickname: String, |
14498 | - pub xmpp_body: String, |
14499 | - } |
14500 | - |
14501 | - #[async_trait] |
14502 | - pub trait XmppExt { |
14503 | - async fn upsert_channel(&self, name: &str, description: &str) -> Result<i64, Error>; |
14504 | - async fn delete_channel(&self, name: &str) -> Result<(), Error>; |
14505 | - async fn update_user_count(&self, name: &str, count: i64) -> Result<(), Error>; |
14506 | - async fn read_stats(&self, names: Vec<String>) -> Result<Vec<(String, i64, i64)>, Error>; |
14507 | - async fn reset_user_counts(&self, name: &str) -> Result<(), Error>; |
14508 | - async fn upsert_message( |
14509 | - &self, |
14510 | - message_id: &str, |
14511 | - timestamp: &str, |
14512 | - channel_name: &str, |
14513 | - nickname: &str, |
14514 | - body: &str, |
14515 | - ) -> Result<(), Error>; |
14516 | - async fn list_messages( |
14517 | - &self, |
14518 | - channel_name: &str, |
14519 | - last_message: Option<&str>, |
14520 | - limit: i64, |
14521 | - ) -> Result<Vec<Message>, Error>; |
14522 | - async fn last_message_id(&self, name: &str) -> Result<Option<String>, Error>; |
14523 | - } |
14524 | - |
14525 | - #[async_trait] |
14526 | - impl XmppExt for Database { |
14527 | - async fn upsert_channel(&self, name: &str, description: &str) -> Result<i64, Error> { |
14528 | - let ret = sqlx::query_file!( |
14529 | - "queries/channels_upsert.sql", |
14530 | - name, |
14531 | - description, |
14532 | - description |
14533 | - ) |
14534 | - .fetch_one(&self.pool) |
14535 | - .await?; |
14536 | - Ok(ret.id) |
14537 | - } |
14538 | - |
14539 | - async fn delete_channel(&self, name: &str) -> Result<(), Error> { |
14540 | - sqlx::query_file!("queries/channels_delete.sql", name) |
14541 | - .execute(&self.pool) |
14542 | - .await?; |
14543 | - Ok(()) |
14544 | - } |
14545 | - |
14546 | - async fn reset_user_counts(&self, name: &str) -> Result<(), Error> { |
14547 | - sqlx::query_file!("queries/channels_reset_counts.sql", name) |
14548 | - .execute(&self.pool) |
14549 | - .await?; |
14550 | - Ok(()) |
14551 | - } |
14552 | - |
14553 | - async fn update_user_count(&self, name: &str, change: i64) -> Result<(), Error> { |
14554 | - sqlx::query_file!( |
14555 | - "queries/channels_update_user_count.sql", |
14556 | - name, |
14557 | - change, |
14558 | - change |
14559 | - ) |
14560 | - .execute(&self.pool) |
14561 | - .await?; |
14562 | - Ok(()) |
14563 | - } |
14564 | - |
14565 | - async fn read_stats(&self, channels: Vec<String>) -> Result<Vec<(String, i64, i64)>, Error> { |
14566 | - let mut counts: Vec<(String, i64, i64)> = Vec::new(); |
14567 | - // SQLX can't use arrays for x IN (...) clauses |
14568 | - let base = include_str!("../queries/channels_stats.sql"); |
14569 | - let mut builder: sqlx::QueryBuilder<sqlx::Sqlite> = sqlx::QueryBuilder::new(base); |
14570 | - if !channels.is_empty() { |
14571 | - builder.push("WHERE channels.name IN ("); |
14572 | - for channel in channels { |
14573 | - builder.push_bind(channel); |
14574 | - } |
14575 | - builder.push(");"); |
14576 | - } |
14577 | - for row in builder.build().fetch_all(&self.pool).await? { |
14578 | - counts.push((row.get(0), row.get(1), row.get(2))); |
14579 | - } |
14580 | - Ok(counts) |
14581 | - } |
14582 | - |
14583 | - async fn upsert_message( |
14584 | - &self, |
14585 | - message_id: &str, |
14586 | - timestamp: &str, |
14587 | - channel_name: &str, |
14588 | - nickname: &str, |
14589 | - message_body: &str, |
14590 | - ) -> Result<(), Error> { |
14591 | - sqlx::query_file!( |
14592 | - "queries/messages_upsert.sql", |
14593 | - message_id, |
14594 | - timestamp, |
14595 | - channel_name, |
14596 | - nickname, |
14597 | - message_body, |
14598 | - ) |
14599 | - .execute(&self.pool) |
14600 | - .await?; |
14601 | - Ok(()) |
14602 | - } |
14603 | - |
14604 | - async fn list_messages( |
14605 | - &self, |
14606 | - channel_name: &str, |
14607 | - last_message: Option<&str>, |
14608 | - limit: i64, |
14609 | - ) -> Result<Vec<Message>, Error> { |
14610 | - let result = sqlx::query_file_as!( |
14611 | - Message, |
14612 | - "queries/messages_list.sql", |
14613 | - channel_name, |
14614 | - last_message, |
14615 | - last_message, |
14616 | - limit |
14617 | - ) |
14618 | - .fetch_all(&self.pool) |
14619 | - .await?; |
14620 | - Ok(result) |
14621 | - } |
14622 | - |
14623 | - async fn last_message_id(&self, name: &str) -> Result<Option<String>, Error> { |
14624 | - let result = sqlx::query_file!("queries/messages_last_id.sql", name) |
14625 | - .fetch_optional(&self.pool) |
14626 | - .await?; |
14627 | - Ok(result.map(|record| record.xmpp_id)) |
14628 | - } |
14629 | - } |
14630 | diff --git a/crescent-xmpp/src/main.rs b/crescent-xmpp/src/main.rs |
14631 | deleted file mode 100644 |
14632 | index 5de8090..0000000 |
14633 | --- a/crescent-xmpp/src/main.rs |
14634 | +++ /dev/null |
14635 | @@ -1,80 +0,0 @@ |
14636 | - use std::thread::Builder as ThreadBuilder; |
14637 | - |
14638 | - use anyhow::Result; |
14639 | - use clap::{arg, value_parser, Command}; |
14640 | - use tokio::{runtime::Builder as TokioBuilder, task::LocalSet}; |
14641 | - use tracing::log; |
14642 | - |
14643 | - use crescent_database::migrate; |
14644 | - mod config; |
14645 | - mod database_ext; |
14646 | - mod rpc_server; |
14647 | - mod xmpp_bot; |
14648 | - |
14649 | - fn main() -> Result<()> { |
14650 | - let command = Command::new("crescent-xmpp") |
14651 | - .about("crescent xmpp integration") |
14652 | - .arg( |
14653 | - arg!(-c --config <FILE> "optional path to a configuration file") |
14654 | - .id("config") |
14655 | - .required(false) |
14656 | - .value_parser(value_parser!(String)), |
14657 | - ) |
14658 | - .arg( |
14659 | - arg!(-l --level <LEVEL> "logging level [ERROR,WARN,INFO,DEBUG,TRACE]") |
14660 | - .id("level") |
14661 | - .required(false) |
14662 | - .value_parser(value_parser!(String)), |
14663 | - ); |
14664 | - let matches = command.get_matches(); |
14665 | - let config = config::load(matches.get_one::<String>("config").map(|s| s.as_str()))?; |
14666 | - let log_level = matches |
14667 | - .get_one::<String>("level") |
14668 | - .map(|level| level.clone()) |
14669 | - .unwrap_or(config.log_level.clone()); |
14670 | - tracing_subscriber::fmt() |
14671 | - .compact() |
14672 | - .with_line_number(true) |
14673 | - .with_level(true) |
14674 | - .with_env_filter(log_level) |
14675 | - .init(); |
14676 | - tracing::info!("logger initialized"); |
14677 | - log::info!("logger initialized"); |
14678 | - let config = config.xmpp; |
14679 | - if config.database.migrate { |
14680 | - let config = config.clone(); |
14681 | - TokioBuilder::new_current_thread() |
14682 | - .enable_all() |
14683 | - .build() |
14684 | - .unwrap() |
14685 | - .block_on(async move { migrate(&config.database.path, "./migrations").await })?; |
14686 | - } |
14687 | - let thread_config = config.clone(); |
14688 | - // TODO: a crash in either thread should shut down the entire program, need |
14689 | - // to write a "daemon" crate for here and in other components. |
14690 | - ThreadBuilder::new() |
14691 | - .name(String::from("crescent-xmpp-bot")) |
14692 | - .spawn(move || { |
14693 | - // This thread runs the xmpp bot which monitors channels for |
14694 | - // activity and eventually may respond to commands. It holds at |
14695 | - // mutable sqlite connection and is responsible for updating the |
14696 | - // database. |
14697 | - TokioBuilder::new_current_thread() |
14698 | - .enable_all() |
14699 | - .build() |
14700 | - .unwrap() |
14701 | - .block_on(xmpp_bot::serve(thread_config)) |
14702 | - .unwrap(); |
14703 | - })?; |
14704 | - TokioBuilder::new_current_thread() |
14705 | - .enable_all() |
14706 | - .build() |
14707 | - .unwrap() |
14708 | - .block_on(async move { |
14709 | - // Capnp RPC server implementation with a read-only database |
14710 | - // connection |
14711 | - LocalSet::new().run_until(rpc_server::serve(config)).await |
14712 | - }) |
14713 | - .unwrap(); |
14714 | - Ok(()) |
14715 | - } |
14716 | diff --git a/crescent-xmpp/src/rpc_server.rs b/crescent-xmpp/src/rpc_server.rs |
14717 | deleted file mode 100644 |
14718 | index db28a90..0000000 |
14719 | --- a/crescent-xmpp/src/rpc_server.rs |
14720 | +++ /dev/null |
14721 | @@ -1,101 +0,0 @@ |
14722 | - use std::error::Error as StdError; |
14723 | - |
14724 | - use capnp::{capability::Promise, Error as CapnpError}; |
14725 | - use capnp_rpc::pry; |
14726 | - use tracing::log; |
14727 | - |
14728 | - use crate::config::Xmpp as Config; |
14729 | - use crate::database_ext::XmppExt; |
14730 | - use crescent_api::xmpp_capnp::server::{ |
14731 | - Client, MessagesParams, MessagesResults, Server, StatsParams, StatsResults, |
14732 | - }; |
14733 | - use crescent_database::Wrapper as Database; |
14734 | - use crescent_rpc::Server as RpcHelper; |
14735 | - |
14736 | - struct ServerImpl { |
14737 | - db: Database, |
14738 | - } |
14739 | - |
14740 | - impl Server for ServerImpl { |
14741 | - fn stats(&mut self, params: StatsParams, mut results: StatsResults) -> Promise<(), CapnpError> { |
14742 | - let db = self.db.clone(); |
14743 | - let mut channels: Vec<String> = Vec::new(); |
14744 | - for channel_name in pry!(pry!(params.get()).get_channels()) { |
14745 | - let channel_name = pry!(channel_name).to_string().unwrap(); |
14746 | - channels.push(channel_name); |
14747 | - } |
14748 | - Promise::from_future(async move { |
14749 | - log::info!("looking up channels: {:?}", channels); |
14750 | - let stats = db.read_stats(channels).await.unwrap(); |
14751 | - // sqlx can't use WHERE $ IN (..) .. |
14752 | - let mut results = results.get().init_stats(stats.len() as u32); |
14753 | - for (i, count) in stats.iter().enumerate() { |
14754 | - log::info!( |
14755 | - "got channel: name={} users={} msgs={}", |
14756 | - count.0, |
14757 | - count.1, |
14758 | - count.2 |
14759 | - ); |
14760 | - results |
14761 | - .reborrow() |
14762 | - .get(i as u32) |
14763 | - .set_name(count.0.as_str().into()); |
14764 | - results.reborrow().get(i as u32).set_users_online(count.1); |
14765 | - results.reborrow().get(i as u32).set_n_messages(count.2); |
14766 | - } |
14767 | - Ok(()) |
14768 | - }) |
14769 | - } |
14770 | - |
14771 | - fn messages( |
14772 | - &mut self, |
14773 | - params: MessagesParams, |
14774 | - mut results: MessagesResults, |
14775 | - ) -> Promise<(), CapnpError> { |
14776 | - let db = self.db.clone(); |
14777 | - let params = pry!(params.get()); |
14778 | - let channel_name = pry!(params.get_channel_name()).to_string().unwrap(); |
14779 | - let last_message = if params.has_last_message() { |
14780 | - Some(pry!(params.get_last_message()).to_string().unwrap()) |
14781 | - } else { |
14782 | - None |
14783 | - }; |
14784 | - let limit = params.get_limit(); |
14785 | - Promise::from_future(async move { |
14786 | - log::info!("looking up messages for channel: {:?}", channel_name); |
14787 | - let messages = db |
14788 | - .list_messages(&channel_name, last_message.as_deref(), limit) |
14789 | - .await |
14790 | - .unwrap(); |
14791 | - log::info!("db returned {} messages", messages.len()); |
14792 | - let mut results = results.get().init_messages(messages.len() as u32); |
14793 | - for (i, message) in messages.iter().enumerate() { |
14794 | - results |
14795 | - .reborrow() |
14796 | - .get(i as u32) |
14797 | - .set_message_id(message.xmpp_id.as_str().into()); |
14798 | - results |
14799 | - .reborrow() |
14800 | - .get(i as u32) |
14801 | - .set_timestamp(message.xmpp_timestamp.as_str().into()); |
14802 | - results |
14803 | - .reborrow() |
14804 | - .get(i as u32) |
14805 | - .set_nickname(message.xmpp_nickname.as_str().into()); |
14806 | - results |
14807 | - .reborrow() |
14808 | - .get(i as u32) |
14809 | - .set_body(message.xmpp_body.as_str().into()); |
14810 | - } |
14811 | - Ok(()) |
14812 | - }) |
14813 | - } |
14814 | - } |
14815 | - |
14816 | - pub async fn serve(cfg: Config) -> Result<(), Box<dyn StdError>> { |
14817 | - let db = Database::new(&cfg.database.path, true, false).await?; |
14818 | - let server = ServerImpl { db }; |
14819 | - let runtime = RpcHelper::<Client, ServerImpl>::new(&cfg.socket_path, server); |
14820 | - runtime.serve().await?; |
14821 | - Ok(()) |
14822 | - } |
14823 | diff --git a/crescent-xmpp/src/xmpp_bot.rs b/crescent-xmpp/src/xmpp_bot.rs |
14824 | deleted file mode 100644 |
14825 | index 2acdbff..0000000 |
14826 | --- a/crescent-xmpp/src/xmpp_bot.rs |
14827 | +++ /dev/null |
14828 | @@ -1,117 +0,0 @@ |
14829 | - use std::collections::HashMap; |
14830 | - use std::error::Error as StdError; |
14831 | - |
14832 | - use time::{format_description::well_known::Rfc3339, OffsetDateTime}; |
14833 | - use tokio_xmpp::parsers::{BareJid, Jid}; |
14834 | - use tracing::log; |
14835 | - use xmpp::{ClientBuilder, ClientFeature, ClientType, Event}; |
14836 | - |
14837 | - use crate::config::Xmpp as Config; |
14838 | - use crate::database_ext::XmppExt; |
14839 | - use crescent_database::Wrapper as Database; |
14840 | - |
14841 | - pub type Error = Box<dyn StdError>; |
14842 | - |
14843 | - pub async fn serve(config: Config) -> Result<(), Error> { |
14844 | - let db = Database::new(&config.database.path, false, false).await?; |
14845 | - let jid = BareJid::new(&config.jid)?; |
14846 | - let mut client = ClientBuilder::new(jid, &config.password) |
14847 | - .set_client(ClientType::Bot, "crescent-xmpp") |
14848 | - .set_website("https://crescent-forge.org/projects/crescent") |
14849 | - .set_default_nick("crescent") |
14850 | - .enable_feature(ClientFeature::ContactList) |
14851 | - .enable_feature(ClientFeature::JoinRooms) |
14852 | - .build(); |
14853 | - |
14854 | - let mut channels: Vec<Jid> = Vec::new(); |
14855 | - let mut channels_id_map: HashMap<Jid, i64> = HashMap::new(); |
14856 | - let mut channels_last_message_id: HashMap<Jid, Option<String>> = HashMap::new(); |
14857 | - let mut nick_to_jid: HashMap<Jid, Jid> = HashMap::new(); |
14858 | - |
14859 | - for channel in config.channels { |
14860 | - let jid = Jid::new(&channel.jid)?; |
14861 | - channels.push(jid.clone()); |
14862 | - let channel_id = db.upsert_channel(&channel.jid, "").await?; |
14863 | - channels_id_map.insert(jid.clone(), channel_id); |
14864 | - db.reset_user_counts(&channel.jid).await?; |
14865 | - let last_message_id = db.last_message_id(&channel.jid).await?; |
14866 | - channels_last_message_id.insert(jid, last_message_id); |
14867 | - } |
14868 | - |
14869 | - while let Some(events) = client.wait_for_events().await { |
14870 | - for event in events { |
14871 | - log::debug!("processing event: {:?}", event); |
14872 | - match event { |
14873 | - Event::Online => { |
14874 | - log::info!("Online"); |
14875 | - for channel_jid in channels.iter() { |
14876 | - log::info!("joining channel: {}", channel_jid.to_string()); |
14877 | - client |
14878 | - .join_room(channel_jid.to_bare(), None, None, "en", "๐๐ค") |
14879 | - .await; |
14880 | - let last_message_id = &channels_last_message_id |
14881 | - .get(&channel_jid.clone()) |
14882 | - .unwrap() |
14883 | - .clone(); |
14884 | - client |
14885 | - .request_room_history( |
14886 | - channel_jid.clone(), |
14887 | - last_message_id.as_deref().map(|id| id.as_ref()), |
14888 | - ) |
14889 | - .await |
14890 | - } |
14891 | - } |
14892 | - Event::Disconnected => { |
14893 | - log::warn!("client disconnected"); |
14894 | - } |
14895 | - Event::RoomJoined(jid) => { |
14896 | - // bot has joined the room |
14897 | - log::info!("joined channel: {}", jid); |
14898 | - } |
14899 | - Event::RoomLeft(jid) => { |
14900 | - log::info!("left channel: {}", jid); |
14901 | - } |
14902 | - Event::RoomPresence(room, real, type_) => { |
14903 | - let change: isize = match type_ { |
14904 | - // user is present in channel |
14905 | - tokio_xmpp::parsers::presence::Type::None => 1, |
14906 | - // user in no longer in channel |
14907 | - tokio_xmpp::parsers::presence::Type::Unavailable => -1, |
14908 | - _ => { |
14909 | - todo!("not implemented") |
14910 | - } |
14911 | - }; |
14912 | - nick_to_jid.insert(room.clone(), real.clone()); |
14913 | - db.update_user_count(&room.to_bare().to_string(), change as i64) |
14914 | - .await?; |
14915 | - } |
14916 | - Event::RoomMessage(message_id, from, nick, body) => { |
14917 | - let timestamp = OffsetDateTime::now_utc().format(&Rfc3339).unwrap(); |
14918 | - db.upsert_message( |
14919 | - &message_id.unwrap(), |
14920 | - ×tamp, |
14921 | - &from.to_string(), |
14922 | - &nick, |
14923 | - &body.0, |
14924 | - ) |
14925 | - .await?; |
14926 | - } |
14927 | - Event::ArchivedMessage(message_id, timestamp, from, _, body) => { |
14928 | - let message_id = message_id.unwrap(); |
14929 | - let from = from.unwrap(); |
14930 | - let nickname = from.resource().map(|resource| resource.to_string()); |
14931 | - db.upsert_message( |
14932 | - &message_id, |
14933 | - ×tamp, |
14934 | - &from.to_bare().to_string(), |
14935 | - &nickname.unwrap(), |
14936 | - &body.0, |
14937 | - ) |
14938 | - .await?; |
14939 | - } |
14940 | - _ => (), |
14941 | - } |
14942 | - } |
14943 | - } |
14944 | - Ok(()) |
14945 | - } |
14946 | diff --git a/package.json b/package.json |
14947 | index 9344019..b6118fb 100644 |
14948 | --- a/package.json |
14949 | +++ b/package.json |
14950 | @@ -1,10 +1,10 @@ |
14951 | { |
14952 | - "name": "crescent", |
14953 | + "name": "ayllu", |
14954 | "version": "1.0.0", |
14955 | "main": "index.js", |
14956 | "repository": { |
14957 | "type": "git", |
14958 | - "url": "https://src.kevinschoon.com/projects/crescent" |
14959 | + "url": "https://src.kevinschoon.com/projects/ayllu" |
14960 | }, |
14961 | "author": "", |
14962 | "license": "AGPL-3.0", |
14963 | diff --git a/replace.sh b/replace.sh |
14964 | new file mode 100755 |
14965 | index 0000000..2c586ed |
14966 | --- /dev/null |
14967 | +++ b/replace.sh |
14968 | @@ -0,0 +1,20 @@ |
14969 | + #!/bin/sh |
14970 | + |
14971 | + |
14972 | + find . \ |
14973 | + -not \( -path ./node_modules -prune \) \ |
14974 | + -not \( -path ./target -prune \) \ |
14975 | + -not \( -path ./packaging -prune \) \ |
14976 | + -not \( -path ./.git -prune \) \ |
14977 | + -not \( -path ./www -prune \) \ |
14978 | + -type f \ |
14979 | + -exec sed -i 's/crescent/ayllu/g' {} \; |
14980 | + |
14981 | + find . \ |
14982 | + -not \( -path ./node_modules -prune \) \ |
14983 | + -not \( -path ./target -prune \) \ |
14984 | + -not \( -path ./packaging -prune \) \ |
14985 | + -not \( -path ./.git -prune \) \ |
14986 | + -not \( -path ./www -prune \) \ |
14987 | + -type f \ |
14988 | + -exec sed -i 's/Crescent/Ayllu/g' {} \; |
14989 | diff --git a/scripts/check_build_dependencies.sh b/scripts/check_build_dependencies.sh |
14990 | index 0534b3c..23f7d05 100755 |
14991 | --- a/scripts/check_build_dependencies.sh |
14992 | +++ b/scripts/check_build_dependencies.sh |
14993 | @@ -1,5 +1,5 @@ |
14994 | #!/bin/sh |
14995 | - # quick script to verify the things needed to build crescent from scratch |
14996 | + # quick script to verify the things needed to build ayllu from scratch |
14997 | # are present on your system. |
14998 | |
14999 | FAILED="false" |
15000 | diff --git a/scripts/init_db_if_missing.sh b/scripts/init_db_if_missing.sh |
15001 | index 840c263..8a9311d 100755 |
15002 | --- a/scripts/init_db_if_missing.sh |
15003 | +++ b/scripts/init_db_if_missing.sh |
15004 | @@ -1,6 +1,6 @@ |
15005 | #!/bin/sh |
15006 | |
15007 | - DB_PATH="db/crescent.db" |
15008 | + DB_PATH="db/ayllu.db" |
15009 | DB_URL="sqlite://$DB_PATH" |
15010 | |
15011 | mkdir -p $(dirname "$DB_PATH") |
15012 | @@ -9,11 +9,11 @@ mkdir -p $(dirname "$DB_PATH") |
15013 | sqlx migrate run --database-url "$DB_URL" |
15014 | } || true |
15015 | |
15016 | - DB_PATH="crescent-xmpp/db/crescent-xmpp.db" |
15017 | + DB_PATH="ayllu-xmpp/db/ayllu-xmpp.db" |
15018 | DB_URL="sqlite://$DB_PATH" |
15019 | |
15020 | mkdir -p $(dirname "$DB_PATH") |
15021 | [[ ! -f "$DB_PATH" ]] && { |
15022 | sqlx database create --database-url "$DB_URL" |
15023 | - sqlx migrate run --source crescent-xmpp/migrations --database-url "$DB_URL" |
15024 | + sqlx migrate run --source ayllu-xmpp/migrations --database-url "$DB_URL" |
15025 | } || true |
15026 | diff --git a/scripts/install.sh b/scripts/install.sh |
15027 | index da9f37e..d76c89e 100755 |
15028 | --- a/scripts/install.sh |
15029 | +++ b/scripts/install.sh |
15030 | @@ -1,3 +1,3 @@ |
15031 | #!/bin/sh |
15032 | |
15033 | - install -m 0755 -t /usr/bin target/debug/crescent |
15034 | + install -m 0755 -t /usr/bin target/debug/ayllu |
15035 | diff --git a/scripts/make_fake_thread.sh b/scripts/make_fake_thread.sh |
15036 | index 8f02057..b308205 100755 |
15037 | --- a/scripts/make_fake_thread.sh |
15038 | +++ b/scripts/make_fake_thread.sh |
15039 | @@ -1,12 +1,12 @@ |
15040 | #!/bin/sh |
15041 | |
15042 | - DB_PATH=$HOME/.local/share/crescent/state.db |
15043 | + DB_PATH=$HOME/.local/share/ayllu/state.db |
15044 | |
15045 | read -r -d '' INIT_THREAD <<'EOF' |
15046 | INSERT INTO messages ( |
15047 | created_at, to_address, from_address, subject, body |
15048 | ) VALUES ( |
15049 | - '2023-07-21T13:21:49Z', 'dev@crescent-forge.org', 'baz@qux.net', 'Hello World, this is a thread!', 'Hello and welcome!\n\n This is a fake thread with some fake\t\n content in it.' |
15050 | + '2023-07-21T13:21:49Z', 'dev@ayllu-forge.org', 'baz@qux.net', 'Hello World, this is a thread!', 'Hello and welcome!\n\n This is a fake thread with some fake\t\n content in it.' |
15051 | ); |
15052 | EOF |
15053 | |
15054 | @@ -15,7 +15,7 @@ read -r -d '' REPLY_1 <<'EOF' |
15055 | INSERT INTO messages ( |
15056 | created_at, parent_id, to_address, from_address, subject, body |
15057 | ) VALUES ( |
15058 | - '2023-07-21T13:22:49Z', 1, 'dev@crescent-forge.org', 'baz@qux.net', 'Re: Hello World, this is a thread!', 'response 1' |
15059 | + '2023-07-21T13:22:49Z', 1, 'dev@ayllu-forge.org', 'baz@qux.net', 'Re: Hello World, this is a thread!', 'response 1' |
15060 | ); |
15061 | EOF |
15062 | |
15063 | @@ -23,7 +23,7 @@ read -r -d '' REPLY_2 <<'EOF' |
15064 | INSERT INTO messages ( |
15065 | created_at, parent_id, to_address, from_address, subject, body |
15066 | ) VALUES ( |
15067 | - '2023-07-22T13:22:49Z', 2, 'dev@crescent-forge.org', 'baz@qux.net', 'Re: Re: Hello World, this is a thread!', 'response 2' |
15068 | + '2023-07-22T13:22:49Z', 2, 'dev@ayllu-forge.org', 'baz@qux.net', 'Re: Re: Hello World, this is a thread!', 'response 2' |
15069 | ); |
15070 | EOF |
15071 | |
15072 | diff --git a/scripts/uninstall.sh b/scripts/uninstall.sh |
15073 | index 0233cd8..b20c3d2 100755 |
15074 | --- a/scripts/uninstall.sh |
15075 | +++ b/scripts/uninstall.sh |
15076 | @@ -1,3 +1,3 @@ |
15077 | #!/bin/sh |
15078 | |
15079 | - rm -v /usr/bin/crescent |
15080 | + rm -v /usr/bin/ayllu |
15081 | diff --git a/scripts/watch.sh b/scripts/watch.sh |
15082 | index fe2e4b4..11ad0e0 100755 |
15083 | --- a/scripts/watch.sh |
15084 | +++ b/scripts/watch.sh |
15085 | @@ -10,14 +10,14 @@ cd "$COMPONENT" |
15086 | |
15087 | if [ "$COMPONENT" == "." ] ; then |
15088 | cargo watch \ |
15089 | - -i crescent-build \ |
15090 | - -i crescent-xmpp \ |
15091 | - -i crescent-mail \ |
15092 | - -i crescent-spaces \ |
15093 | + -i ayllu-build \ |
15094 | + -i ayllu-xmpp \ |
15095 | + -i ayllu-mail \ |
15096 | + -i ayllu-spaces \ |
15097 | -i test/ \ |
15098 | -i contrib/nginx --why \ |
15099 | -s 'scripts/compile_stylesheets.sh && cargo run -- serve' |
15100 | - elif [ "$COMPONENT" == "crescent-build" ] ; then |
15101 | + elif [ "$COMPONENT" == "ayllu-build" ] ; then |
15102 | cargo watch -s 'cargo run -- serve' |
15103 | else |
15104 | cargo watch -x run |
15105 | diff --git a/scripts/watch_mail.sh b/scripts/watch_mail.sh |
15106 | index b4f6fd3..18f6b6d 100755 |
15107 | --- a/scripts/watch_mail.sh |
15108 | +++ b/scripts/watch_mail.sh |
15109 | @@ -1,3 +1,3 @@ |
15110 | #!/bin/sh |
15111 | |
15112 | - cd crescent-mail && cargo watch --watch src --why -x run |
15113 | + cd ayllu-mail && cargo watch --watch src --why -x run |
15114 | diff --git a/scripts/watch_xmpp.sh b/scripts/watch_xmpp.sh |
15115 | index bfce7a6..b8f41cb 100755 |
15116 | --- a/scripts/watch_xmpp.sh |
15117 | +++ b/scripts/watch_xmpp.sh |
15118 | @@ -1,3 +1,3 @@ |
15119 | #!/bin/sh |
15120 | |
15121 | - cd crescent-xmpp && cargo watch --watch src --why -x run |
15122 | + cd ayllu-xmpp && cargo watch --watch src --why -x run |
15123 | diff --git a/src/config.rs b/src/config.rs |
15124 | index cb029da..20643f5 100644 |
15125 | --- a/src/config.rs |
15126 | +++ b/src/config.rs |
15127 | @@ -6,7 +6,7 @@ use std::thread::available_parallelism; |
15128 | use url::Url; |
15129 | use comrak::ComrakOptions; |
15130 | |
15131 | - use crescent_config::{data_dir, runtime_dir, Configurable}; |
15132 | + use ayllu_config::{data_dir, runtime_dir, Configurable}; |
15133 | |
15134 | use serde::{Deserialize, Serialize}; |
15135 | |
15136 | @@ -156,7 +156,7 @@ pub struct Xmpp { |
15137 | |
15138 | impl Xmpp { |
15139 | fn default_socket_path() -> String { |
15140 | - runtime_dir().to_str().unwrap().to_string() + "/crescent-xmpp.sock" |
15141 | + runtime_dir().to_str().unwrap().to_string() + "/ayllu-xmpp.sock" |
15142 | } |
15143 | } |
15144 | |
15145 | @@ -177,7 +177,7 @@ pub struct Mail { |
15146 | |
15147 | impl Mail { |
15148 | fn default_socket_path() -> String { |
15149 | - runtime_dir().to_str().unwrap().to_string() + "/crescent-mail.sock" |
15150 | + runtime_dir().to_str().unwrap().to_string() + "/ayllu-mail.sock" |
15151 | } |
15152 | } |
15153 | |
15154 | @@ -295,7 +295,7 @@ Disallow: /*/*/chart/* |
15155 | } |
15156 | |
15157 | fn default_site_name() -> String { |
15158 | - String::from("๐crescent") |
15159 | + String::from("๐ayllu") |
15160 | } |
15161 | |
15162 | fn default_log_level() -> String { |
15163 | @@ -311,7 +311,7 @@ Disallow: /*/*/chart/* |
15164 | } |
15165 | |
15166 | fn default_jobs_socket_path() -> String { |
15167 | - runtime_dir().to_str().unwrap().to_string() + "/crescent.sock" |
15168 | + runtime_dir().to_str().unwrap().to_string() + "/ayllu.sock" |
15169 | } |
15170 | |
15171 | fn default_jobs_n_workers() -> NonZeroUsize { |
15172 | diff --git a/src/database_ext.rs b/src/database_ext.rs |
15173 | index fb04228..c19e804 100644 |
15174 | --- a/src/database_ext.rs |
15175 | +++ b/src/database_ext.rs |
15176 | @@ -4,7 +4,7 @@ use serde::Serialize; |
15177 | use sqlx::Error; |
15178 | use time::{format_description, OffsetDateTime}; |
15179 | |
15180 | - use crescent_database::Wrapper as Database; |
15181 | + use ayllu_database::Wrapper as Database; |
15182 | |
15183 | // job related db methods |
15184 | |
15185 | diff --git a/src/job_server/client.rs b/src/job_server/client.rs |
15186 | index 7bf51c8..bcd0ddc 100644 |
15187 | --- a/src/job_server/client.rs |
15188 | +++ b/src/job_server/client.rs |
15189 | @@ -1,6 +1,6 @@ |
15190 | - use crescent_api::jobs_capnp::server::Client; |
15191 | - use crescent_api::models::{Job, Kind}; |
15192 | - use crescent_rpc::Client as RpcHelper; |
15193 | + use ayllu_api::jobs_capnp::server::Client; |
15194 | + use ayllu_api::models::{Job, Kind}; |
15195 | + use ayllu_rpc::Client as RpcHelper; |
15196 | |
15197 | use capnp::Error; |
15198 | use capnp_rpc::{rpc_twoparty_capnp::Side, twoparty, RpcSystem}; |
15199 | diff --git a/src/job_server/commands.rs b/src/job_server/commands.rs |
15200 | index 5c9df5b..b76f346 100644 |
15201 | --- a/src/job_server/commands.rs |
15202 | +++ b/src/job_server/commands.rs |
15203 | @@ -7,9 +7,9 @@ use time::Duration; |
15204 | |
15205 | use crate::config::Config; |
15206 | use crate::time::friendly; |
15207 | - use crescent_api::jobs_capnp::server::Client; |
15208 | - use crescent_api::models::{Job, Kind}; |
15209 | - use crescent_rpc::Client as RpcHelper; |
15210 | + use ayllu_api::jobs_capnp::server::Client; |
15211 | + use ayllu_api::models::{Job, Kind}; |
15212 | + use ayllu_rpc::Client as RpcHelper; |
15213 | |
15214 | fn name(repo_path: Option<String>) -> String { |
15215 | match repo_path { |
15216 | diff --git a/src/job_server/jobs/cloc.rs b/src/job_server/jobs/cloc.rs |
15217 | index 296d7d9..73a1d64 100644 |
15218 | --- a/src/job_server/jobs/cloc.rs |
15219 | +++ b/src/job_server/jobs/cloc.rs |
15220 | @@ -5,9 +5,9 @@ use anyhow::Result; |
15221 | use tokei::{Config as TokeiConfig, Languages}; |
15222 | |
15223 | use crate::database_ext::{jobs::JobsExt, langauges::LanguagesExt}; |
15224 | - use crescent_api::models::{Job as JobModel, Kind}; |
15225 | - use crescent_database::Wrapper as Database; |
15226 | - use crescent_git::Wrapper as Repository; |
15227 | + use ayllu_api::models::{Job as JobModel, Kind}; |
15228 | + use ayllu_database::Wrapper as Database; |
15229 | + use ayllu_git::Wrapper as Repository; |
15230 | |
15231 | pub struct Job { |
15232 | pub repository: Repository, |
15233 | diff --git a/src/job_server/jobs/contributors.rs b/src/job_server/jobs/contributors.rs |
15234 | index b19d7ce..cc5e9a4 100644 |
15235 | --- a/src/job_server/jobs/contributors.rs |
15236 | +++ b/src/job_server/jobs/contributors.rs |
15237 | @@ -5,9 +5,9 @@ use time::OffsetDateTime; |
15238 | use anyhow::Result; |
15239 | |
15240 | use crate::database_ext::{contributors::ContributorsExt, jobs::JobsExt}; |
15241 | - use crescent_api::models::{Job as JobModel, Kind}; |
15242 | - use crescent_database::Wrapper as Database; |
15243 | - use crescent_git::Wrapper as Repository; |
15244 | + use ayllu_api::models::{Job as JobModel, Kind}; |
15245 | + use ayllu_database::Wrapper as Database; |
15246 | + use ayllu_git::Wrapper as Repository; |
15247 | |
15248 | #[derive(Default)] |
15249 | struct Contribution { |
15250 | diff --git a/src/job_server/jobs/mod.rs b/src/job_server/jobs/mod.rs |
15251 | index 57fda03..eb3ca38 100644 |
15252 | --- a/src/job_server/jobs/mod.rs |
15253 | +++ b/src/job_server/jobs/mod.rs |
15254 | @@ -3,9 +3,9 @@ use std::time::Duration; |
15255 | |
15256 | use anyhow::Result; |
15257 | |
15258 | - use crescent_api::models::{Job, Kind}; |
15259 | - use crescent_database::Wrapper as Database; |
15260 | - use crescent_git::Wrapper as Repository; |
15261 | + use ayllu_api::models::{Job, Kind}; |
15262 | + use ayllu_database::Wrapper as Database; |
15263 | + use ayllu_git::Wrapper as Repository; |
15264 | |
15265 | mod cloc; |
15266 | mod contributors; |
15267 | diff --git a/src/job_server/runner.rs b/src/job_server/runner.rs |
15268 | index f0ac556..411b5b7 100644 |
15269 | --- a/src/job_server/runner.rs |
15270 | +++ b/src/job_server/runner.rs |
15271 | @@ -6,9 +6,9 @@ use tracing::log; |
15272 | |
15273 | use crate::database_ext::jobs::JobsExt; |
15274 | use crate::job_server::jobs::invoke; |
15275 | - use crescent_api::models::{Job, Kind}; |
15276 | - use crescent_database::Wrapper as Database; |
15277 | - use crescent_git::Wrapper as Repository; |
15278 | + use ayllu_api::models::{Job, Kind}; |
15279 | + use ayllu_database::Wrapper as Database; |
15280 | + use ayllu_git::Wrapper as Repository; |
15281 | |
15282 | pub struct Runner { |
15283 | max_depth: Option<usize>, |
15284 | diff --git a/src/job_server/server.rs b/src/job_server/server.rs |
15285 | index ebeaf46..cfdec3b 100644 |
15286 | --- a/src/job_server/server.rs |
15287 | +++ b/src/job_server/server.rs |
15288 | @@ -8,12 +8,12 @@ use capnp_rpc::pry; |
15289 | use crate::config::Config; |
15290 | use crate::database_ext::jobs::JobsExt; |
15291 | use crate::job_server::runner::Runner; |
15292 | - use crescent_api::jobs_capnp::server::{ |
15293 | + use ayllu_api::jobs_capnp::server::{ |
15294 | Client, ListParams, ListResults, PurgeParams, PurgeResults, Server, SubmitParams, SubmitResults, |
15295 | }; |
15296 | - use crescent_api::models::{Job, Kind}; |
15297 | - use crescent_database::Wrapper as Database; |
15298 | - use crescent_rpc::Server as CapnpServerHelper; |
15299 | + use ayllu_api::models::{Job, Kind}; |
15300 | + use ayllu_database::Wrapper as Database; |
15301 | + use ayllu_rpc::Server as CapnpServerHelper; |
15302 | |
15303 | static THREAD_CONFIG: OnceLock<Config> = OnceLock::new(); |
15304 | |
15305 | @@ -30,8 +30,8 @@ impl Server for ServerImpl { |
15306 | ) -> ::capnp::capability::Promise<(), ::capnp::Error> { |
15307 | let repo_path = pry!(pry!(pry!(params.get()).get_repo_path()).to_string()); |
15308 | let kind = match pry!(pry!(params.get()).get_kind()) { |
15309 | - crescent_api::jobs_capnp::Kind::Contributors => String::from("contributors"), |
15310 | - crescent_api::jobs_capnp::Kind::Cloc => String::from("cloc"), |
15311 | + ayllu_api::jobs_capnp::Kind::Contributors => String::from("contributors"), |
15312 | + ayllu_api::jobs_capnp::Kind::Cloc => String::from("cloc"), |
15313 | }; |
15314 | let db = self.db.clone(); |
15315 | Promise::from_future(async move { |
15316 | diff --git a/src/license.rs b/src/license.rs |
15317 | index 38bdd10..34a6444 100644 |
15318 | --- a/src/license.rs |
15319 | +++ b/src/license.rs |
15320 | @@ -1,6 +1,6 @@ |
15321 | use std::path::Path; |
15322 | |
15323 | - use crescent_git::{Error, Wrapper}; |
15324 | + use ayllu_git::{Error, Wrapper}; |
15325 | |
15326 | // TODO: support an array of regexes |
15327 | pub static LICENSES: &[(&str, &str)] = &[ |
15328 | diff --git a/src/main.rs b/src/main.rs |
15329 | index eaab0dc..cf105e0 100644 |
15330 | --- a/src/main.rs |
15331 | +++ b/src/main.rs |
15332 | @@ -5,8 +5,8 @@ use std::io::stderr; |
15333 | use clap::{arg, value_parser, Command}; |
15334 | use tokio::runtime::Builder; |
15335 | |
15336 | - use crescent_config::Reader; |
15337 | - use crescent_database::migrate; |
15338 | + use ayllu_config::Reader; |
15339 | + use ayllu_database::migrate; |
15340 | use tracing_subscriber; |
15341 | |
15342 | mod gitbug; |
15343 | @@ -38,7 +38,7 @@ fn command() -> Command { |
15344 | .required(false) |
15345 | .value_parser(value_parser!(bool)), |
15346 | ]; |
15347 | - Command::new("crescent") |
15348 | + Command::new("ayllu") |
15349 | .about("hyper performant code forge") |
15350 | .subcommand_required(true) |
15351 | .arg( |
15352 | @@ -119,7 +119,7 @@ fn main() -> Result<(), Box<dyn Error>> { |
15353 | // launch the job server in a seperate thread |
15354 | let job_config = cfg.clone(); |
15355 | ThreadBuilder::new() |
15356 | - .name(String::from("crescent-jobs-runtime")) |
15357 | + .name(String::from("ayllu-jobs-runtime")) |
15358 | .spawn(move || { |
15359 | let runtime = Builder::new_current_thread().enable_all().build().unwrap(); |
15360 | runtime |
15361 | @@ -133,7 +133,7 @@ fn main() -> Result<(), Box<dyn Error>> { |
15362 | .unwrap(); |
15363 | let runtime = Builder::new_multi_thread() |
15364 | .worker_threads(cfg.worker_threads.into()) |
15365 | - .thread_name("crescent-web-runtime") |
15366 | + .thread_name("ayllu-web-runtime") |
15367 | .max_blocking_threads(cfg.max_blocking_threads.into()) |
15368 | .enable_all() |
15369 | .build() |
15370 | diff --git a/src/web2/error.rs b/src/web2/error.rs |
15371 | index c0314ee..fc2d786 100644 |
15372 | --- a/src/web2/error.rs |
15373 | +++ b/src/web2/error.rs |
15374 | @@ -5,9 +5,9 @@ use std::io::Error as IoError; |
15375 | use axum::{body::boxed, body::Empty, response::IntoResponse, response::Response}; |
15376 | use tera::Error as TeraError; |
15377 | |
15378 | - use crescent_database::Error as SqlError; |
15379 | - use crescent_git::Error as GitError; |
15380 | - use crescent_rpc::Error as RpcError; |
15381 | + use ayllu_database::Error as SqlError; |
15382 | + use ayllu_git::Error as GitError; |
15383 | + use ayllu_rpc::Error as RpcError; |
15384 | |
15385 | #[derive(Debug)] |
15386 | pub enum Error { |
15387 | diff --git a/src/web2/highlight.rs b/src/web2/highlight.rs |
15388 | index 76b9bbc..45db329 100644 |
15389 | --- a/src/web2/highlight.rs |
15390 | +++ b/src/web2/highlight.rs |
15391 | @@ -59,7 +59,7 @@ pub fn initialize(lib_path: &str, highlighting: &str) -> Result<(), Error> { |
15392 | } |
15393 | Err(e) => { |
15394 | eprintln!("tree-sitter looks to be unconfigured: {}", e); |
15395 | - eprintln!("see https://crescent-forge.org/getting-started for details"); |
15396 | + eprintln!("see https://ayllu-forge.org/getting-started for details"); |
15397 | } |
15398 | } |
15399 | Ok(()) |
15400 | diff --git a/src/web2/middleware/repository.rs b/src/web2/middleware/repository.rs |
15401 | index 0c738d0..ed9ac36 100644 |
15402 | --- a/src/web2/middleware/repository.rs |
15403 | +++ b/src/web2/middleware/repository.rs |
15404 | @@ -12,7 +12,7 @@ use serde::Deserialize; |
15405 | |
15406 | use crate::config::Config; |
15407 | use crate::web2::error::Error; |
15408 | - use crescent_git::{Commit, Config as GitConfig, Wrapper as Repository}; |
15409 | + use ayllu_git::{Commit, Config as GitConfig, Wrapper as Repository}; |
15410 | |
15411 | #[derive(Deserialize)] |
15412 | pub struct CommonParams { |
15413 | diff --git a/src/web2/middleware/rpc_initiator.rs b/src/web2/middleware/rpc_initiator.rs |
15414 | index 1578d3c..d32e910 100644 |
15415 | --- a/src/web2/middleware/rpc_initiator.rs |
15416 | +++ b/src/web2/middleware/rpc_initiator.rs |
15417 | @@ -15,7 +15,7 @@ use tracing::log; |
15418 | use crate::config::Config; |
15419 | use crate::web2::config::Config as ClientConfig; |
15420 | use crate::web2::extractors::config::ConfigReader; |
15421 | - use crescent_rpc::Client; |
15422 | + use ayllu_rpc::Client; |
15423 | |
15424 | pub enum Kind { |
15425 | Mail, |
15426 | @@ -105,7 +105,7 @@ pub async fn required<B>( |
15427 | initiator.mail = Some(Client::new(&mail_cfg.socket_path)); |
15428 | } |
15429 | None => { |
15430 | - return plugin_not_enabled("crescent-mail", &state.0, client_config, &state.1) |
15431 | + return plugin_not_enabled("ayllu-mail", &state.0, client_config, &state.1) |
15432 | } |
15433 | }, |
15434 | Kind::Xmpp => match &state.0.xmpp { |
15435 | @@ -113,7 +113,7 @@ pub async fn required<B>( |
15436 | initiator.xmpp = Some(Client::new(&xmpp_cfg.socket_path)); |
15437 | } |
15438 | None => { |
15439 | - return plugin_not_enabled("crescent-xmpp", &state.0, client_config, &state.1) |
15440 | + return plugin_not_enabled("ayllu-xmpp", &state.0, client_config, &state.1) |
15441 | } |
15442 | }, |
15443 | } |
15444 | diff --git a/src/web2/middleware/sites.rs b/src/web2/middleware/sites.rs |
15445 | index dd17629..0de988d 100644 |
15446 | --- a/src/web2/middleware/sites.rs |
15447 | +++ b/src/web2/middleware/sites.rs |
15448 | @@ -14,7 +14,7 @@ use mime_guess::from_path; |
15449 | use crate::config::{Collection, Config}; |
15450 | use crate::web2::error::Error; |
15451 | use crate::web2::util; |
15452 | - use crescent_git::Wrapper as Repository; |
15453 | + use ayllu_git::Wrapper as Repository; |
15454 | |
15455 | // array of all the repositories in each collection |
15456 | fn repositories(collections: Vec<Collection>) -> Result<Vec<PathBuf>, Error> { |
15457 | diff --git a/src/web2/routes/authors.rs b/src/web2/routes/authors.rs |
15458 | index 0db86d7..b265c5b 100644 |
15459 | --- a/src/web2/routes/authors.rs |
15460 | +++ b/src/web2/routes/authors.rs |
15461 | @@ -7,7 +7,7 @@ use crate::web2::error::Error; |
15462 | use crate::web2::middleware::repository::Preamble; |
15463 | use crate::web2::middleware::template::Template; |
15464 | use crate::web2::util; |
15465 | - use crescent_database::Wrapper as Database; |
15466 | + use ayllu_database::Wrapper as Database; |
15467 | |
15468 | pub async fn serve( |
15469 | Extension(db): Extension<Arc<Database>>, |
15470 | diff --git a/src/web2/routes/blame.rs b/src/web2/routes/blame.rs |
15471 | index d9bf6c5..6a9e500 100644 |
15472 | --- a/src/web2/routes/blame.rs |
15473 | +++ b/src/web2/routes/blame.rs |
15474 | @@ -9,7 +9,7 @@ use crate::web2::highlight::Highlighter; |
15475 | use crate::web2::middleware::repository::Preamble; |
15476 | use crate::web2::middleware::template::Template; |
15477 | use crate::web2::util; |
15478 | - use crescent_git::Wrapper; |
15479 | + use ayllu_git::Wrapper; |
15480 | |
15481 | #[derive(Serialize, Default, Clone)] |
15482 | struct BlameItem { |
15483 | diff --git a/src/web2/routes/blob.rs b/src/web2/routes/blob.rs |
15484 | index b64d531..d53bc58 100644 |
15485 | --- a/src/web2/routes/blob.rs |
15486 | +++ b/src/web2/routes/blob.rs |
15487 | @@ -15,7 +15,7 @@ use crate::web2::highlight::{Highlighter, TreeSitterAdapter}; |
15488 | use crate::web2::middleware::repository::Preamble; |
15489 | use crate::web2::middleware::template::Template; |
15490 | use crate::web2::util; |
15491 | - use crescent_git::Wrapper; |
15492 | + use ayllu_git::Wrapper; |
15493 | |
15494 | // TODO: considerable clean up is needed here |
15495 | pub async fn serve( |
15496 | diff --git a/src/web2/routes/chart.rs b/src/web2/routes/chart.rs |
15497 | index f9df07c..83ee008 100644 |
15498 | --- a/src/web2/routes/chart.rs |
15499 | +++ b/src/web2/routes/chart.rs |
15500 | @@ -16,7 +16,7 @@ use crate::web2::error::Error; |
15501 | use crate::web2::middleware::repository::Preamble; |
15502 | use crate::web2::middleware::template::Template; |
15503 | use crate::web2::util; |
15504 | - use crescent_database::Wrapper as Database; |
15505 | + use ayllu_database::Wrapper as Database; |
15506 | |
15507 | const MAXIMUM_SIZE: u32 = 2000; |
15508 | const DEFAULT_HEIGHT: u32 = 450; |
15509 | diff --git a/src/web2/routes/commit.rs b/src/web2/routes/commit.rs |
15510 | index 22cf26f..4b85337 100644 |
15511 | --- a/src/web2/routes/commit.rs |
15512 | +++ b/src/web2/routes/commit.rs |
15513 | @@ -9,7 +9,7 @@ use crate::web2::highlight::{Highlighter, Hint}; |
15514 | use crate::web2::middleware::repository::Preamble; |
15515 | use crate::web2::middleware::template::Template; |
15516 | use crate::web2::util; |
15517 | - use crescent_git::Wrapper; |
15518 | + use ayllu_git::Wrapper; |
15519 | |
15520 | pub async fn serve( |
15521 | Path((_, _, commit_id)): Path<(String, String, String)>, |
15522 | diff --git a/src/web2/routes/discuss.rs b/src/web2/routes/discuss.rs |
15523 | index 1593491..07dee2b 100644 |
15524 | --- a/src/web2/routes/discuss.rs |
15525 | +++ b/src/web2/routes/discuss.rs |
15526 | @@ -12,7 +12,7 @@ use crate::web2::middleware::rpc_initiator::{Initiator, Kind as InitiatorKind}; |
15527 | use crate::web2::middleware::template::Template; |
15528 | use crate::web2::util; |
15529 | use crate::web2::util::navigation; |
15530 | - use crescent_api::{ |
15531 | + use ayllu_api::{ |
15532 | mail_capnp::server::Client as MailClient, xmpp_capnp::server::Client as XmppClient, |
15533 | }; |
15534 | |
15535 | diff --git a/src/web2/routes/index.rs b/src/web2/routes/index.rs |
15536 | index 6069ff3..3f6d7d3 100644 |
15537 | --- a/src/web2/routes/index.rs |
15538 | +++ b/src/web2/routes/index.rs |
15539 | @@ -15,8 +15,8 @@ use crate::web2::charts; |
15540 | use crate::web2::error::Error; |
15541 | use crate::web2::middleware::template::Template; |
15542 | use crate::web2::util::navigation; |
15543 | - use crescent_database::Wrapper as Database; |
15544 | - use crescent_git::{Scanner, Wrapper}; |
15545 | + use ayllu_database::Wrapper as Database; |
15546 | + use ayllu_git::{Scanner, Wrapper}; |
15547 | |
15548 | #[derive(Debug, Serialize)] |
15549 | struct Collection { |
15550 | @@ -101,7 +101,7 @@ pub async fn index( |
15551 | repositories, |
15552 | }); |
15553 | } |
15554 | - ctx.insert("title", "crescent"); |
15555 | + ctx.insert("title", "ayllu"); |
15556 | ctx.insert("collections", &collections); |
15557 | ctx.insert( |
15558 | "nav_elements", |
15559 | @@ -127,7 +127,7 @@ pub async fn collection( |
15560 | } |
15561 | let entry = entry.unwrap(); |
15562 | let repositories = load_repositories(entry.path.as_str(), &db).await?; |
15563 | - ctx.insert("title", "crescent"); |
15564 | + ctx.insert("title", "ayllu"); |
15565 | ctx.insert( |
15566 | "nav_elements", |
15567 | &navigation::global("", cfg.discuss_enabled()), |
15568 | diff --git a/src/web2/routes/log.rs b/src/web2/routes/log.rs |
15569 | index 462e6e7..cd0b950 100644 |
15570 | --- a/src/web2/routes/log.rs |
15571 | +++ b/src/web2/routes/log.rs |
15572 | @@ -6,7 +6,7 @@ use axum::{ |
15573 | response::Html, |
15574 | }; |
15575 | |
15576 | - use crescent_git::{Selector, Wrapper}; |
15577 | + use ayllu_git::{Selector, Wrapper}; |
15578 | use crate::web2::error::Error; |
15579 | use crate::web2::extractors::config::ConfigReader; |
15580 | use crate::web2::middleware::repository::Preamble; |
15581 | diff --git a/src/web2/routes/refs.rs b/src/web2/routes/refs.rs |
15582 | index a05d935..33fbfe4 100644 |
15583 | --- a/src/web2/routes/refs.rs |
15584 | +++ b/src/web2/routes/refs.rs |
15585 | @@ -11,7 +11,7 @@ use tokio_util::io::ReaderStream; |
15586 | use crate::web2::error::Error; |
15587 | use crate::web2::middleware::repository::Preamble; |
15588 | use crate::web2::middleware::template::Template; |
15589 | - use crescent_git::Wrapper; |
15590 | + use ayllu_git::Wrapper; |
15591 | |
15592 | use crate::web2::util; |
15593 | |
15594 | diff --git a/src/web2/routes/repo.rs b/src/web2/routes/repo.rs |
15595 | index 323652d..6a236b7 100644 |
15596 | --- a/src/web2/routes/repo.rs |
15597 | +++ b/src/web2/routes/repo.rs |
15598 | @@ -25,9 +25,9 @@ use crate::web2::middleware::repository::Preamble; |
15599 | use crate::web2::middleware::rpc_initiator::{Initiator, Kind as InitiatorKind}; |
15600 | use crate::web2::middleware::template::Template; |
15601 | use crate::web2::util; |
15602 | - use crescent_api::xmpp_capnp::server::Client as XmppClient; |
15603 | - use crescent_database::Wrapper as Database; |
15604 | - use crescent_git::{ChatKind, Commit, Config as GitConfig, TreeEntry, Wrapper}; |
15605 | + use ayllu_api::xmpp_capnp::server::Client as XmppClient; |
15606 | + use ayllu_database::Wrapper as Database; |
15607 | + use ayllu_git::{ChatKind, Commit, Config as GitConfig, TreeEntry, Wrapper}; |
15608 | |
15609 | const README_FILES: [&str; 6] = [ |
15610 | "readme.md", |
15611 | diff --git a/src/web2/routes/rss.rs b/src/web2/routes/rss.rs |
15612 | index c5de348..798d9bc 100644 |
15613 | --- a/src/web2/routes/rss.rs |
15614 | +++ b/src/web2/routes/rss.rs |
15615 | @@ -24,7 +24,7 @@ use crate::gitbug; |
15616 | use crate::web2::middleware::repository::Preamble; |
15617 | use crate::web2::middleware::template::Template; |
15618 | use crate::web2::util; |
15619 | - use crescent_git::{Commit, Scanner, Tag, Wrapper}; |
15620 | + use ayllu_git::{Commit, Scanner, Tag, Wrapper}; |
15621 | |
15622 | fn stylesheet_hack(input: String) -> String { |
15623 | const ORIGINAL: &str = r#"<?xml version="1.0" encoding="utf-8"?>"#; |
15624 | diff --git a/src/web2/server.rs b/src/web2/server.rs |
15625 | index c502d89..f2586d0 100644 |
15626 | --- a/src/web2/server.rs |
15627 | +++ b/src/web2/server.rs |
15628 | @@ -37,7 +37,7 @@ use crate::web2::routes::repo; |
15629 | use crate::web2::routes::robots; |
15630 | use crate::web2::routes::rss; |
15631 | use crate::web2::terautil; |
15632 | - use crescent_database::Wrapper as Database; |
15633 | + use ayllu_database::Wrapper as Database; |
15634 | |
15635 | pub async fn serve(cfg: &Config) -> Result<(), Box<dyn Error>> { |
15636 | // initialize tree-sitter parsers |
15637 | diff --git a/src/web2/terautil/filters.rs b/src/web2/terautil/filters.rs |
15638 | index 093e516..2752c68 100644 |
15639 | --- a/src/web2/terautil/filters.rs |
15640 | +++ b/src/web2/terautil/filters.rs |
15641 | @@ -52,6 +52,7 @@ pub struct Emojis {} |
15642 | |
15643 | impl Filter for Emojis { |
15644 | fn filter(&self, value: &Value, _: &std::collections::HashMap<String, Value>) -> Result<Value> { |
15645 | + // TODO: load these dynamically with the rest of the theme assets |
15646 | let name = value.as_str().unwrap(); |
15647 | let svg_content = match name { |
15648 | "books" => include_str!("../../../themes/default/assets/books.svg"), |
15649 | @@ -61,6 +62,8 @@ impl Filter for Emojis { |
15650 | "code" => include_str!("../../../themes/default/assets/code.svg"), |
15651 | "feed" => include_str!("../../../themes/default/assets/feed.svg"), |
15652 | "moon" => include_str!("../../../themes/default/assets/moon.svg"), |
15653 | + "textile-pattern-1" => include_str!("../../../themes/default/assets/textile-pattern-1.svg"), |
15654 | + "textile-pattern-2" => include_str!("../../../themes/default/assets/textile-pattern-2.svg"), |
15655 | "question" => include_str!("../../../themes/default/assets/question.svg"), |
15656 | "rss" => include_str!("../../../themes/default/assets/rss.svg"), |
15657 | "scale" => include_str!("../../../themes/default/assets/scale.svg"), |
15658 | diff --git a/src/web2/util.rs b/src/web2/util.rs |
15659 | index b040a7e..e05bbd3 100644 |
15660 | --- a/src/web2/util.rs |
15661 | +++ b/src/web2/util.rs |
15662 | @@ -265,27 +265,27 @@ mod tests { |
15663 | output |
15664 | }; |
15665 | |
15666 | - let input = &Uri::try_from("https://crescent-forge.org").unwrap(); |
15667 | + let input = &Uri::try_from("https://ayllu-forge.org").unwrap(); |
15668 | assert!(select_path(input, None, None,).is_none()); |
15669 | assert!(select_path(input, Some(0), Some(2),).is_none()); |
15670 | |
15671 | - let input = &Uri::try_from("https://crescent-forge.org/projects/crescent").unwrap(); |
15672 | - assert!(as_string(select_path(input, None, Some(1))) == "/projects/crescent"); |
15673 | + let input = &Uri::try_from("https://ayllu-forge.org/projects/ayllu").unwrap(); |
15674 | + assert!(as_string(select_path(input, None, Some(1))) == "/projects/ayllu"); |
15675 | |
15676 | let input = |
15677 | - &Uri::try_from("https://crescent-forge.org/projects/crescent/tree/main").unwrap(); |
15678 | + &Uri::try_from("https://ayllu-forge.org/projects/ayllu/tree/main").unwrap(); |
15679 | assert!(as_string(select_path(input, Some(2), None)) == "/tree/main"); |
15680 | |
15681 | let input = |
15682 | - &Uri::try_from("https://crescent-forge.org/projects/crescent/tree/main").unwrap(); |
15683 | + &Uri::try_from("https://ayllu-forge.org/projects/ayllu/tree/main").unwrap(); |
15684 | assert!(select_path(input, Some(4), None).is_none()); |
15685 | |
15686 | let input = |
15687 | - &Uri::try_from("https://crescent-forge.org/projects/crescent/tree/main/").unwrap(); |
15688 | + &Uri::try_from("https://ayllu-forge.org/projects/ayllu/tree/main/").unwrap(); |
15689 | assert!(select_path(input, Some(4), None).is_none()); |
15690 | |
15691 | let input = |
15692 | - &Uri::try_from("https://crescent-forge.org/projects/crescent/tree/main/src/web") |
15693 | + &Uri::try_from("https://ayllu-forge.org/projects/ayllu/tree/main/src/web") |
15694 | .unwrap(); |
15695 | assert!(as_string(select_path(input, Some(4), None)) == "/src/web"); |
15696 | } |
15697 | diff --git a/themes/default/assets/crescent.svg b/themes/default/assets/crescent.svg |
15698 | index a6a4dd1..569e8e8 100644 |
15699 | --- a/themes/default/assets/crescent.svg |
15700 | +++ b/themes/default/assets/crescent.svg |
15701 | @@ -3,7 +3,7 @@ |
15702 | id="emoji" |
15703 | viewBox="0 0 75 92" |
15704 | version="1.1" |
15705 | - sodipodi:docname="crescent.svg" |
15706 | + sodipodi:docname="ayllu.svg" |
15707 | width="75" |
15708 | height="92" |
15709 | inkscape:version="1.3 (0e150ed6c4, 2023-07-21)" |
15710 | @@ -75,7 +75,7 @@ |
15711 | id="tspan8" |
15712 | x="5.1916618" |
15713 | y="82.728981" |
15714 | - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.7292px;font-family:'IBM Plex Mono';-inkscape-font-specification:'IBM Plex Mono, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;stroke-width:1.02969">crescent</tspan></text> |
15715 | + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.7292px;font-family:'IBM Plex Mono';-inkscape-font-specification:'IBM Plex Mono, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;stroke-width:1.02969">ayllu</tspan></text> |
15716 | </g> |
15717 | <g |
15718 | id="color" |
15719 | diff --git a/themes/default/assets/crescent_logo.png b/themes/default/assets/crescent_logo.png |
15720 | index 8420dd8..b7541c7 100644 |
15721 | Binary files a/themes/default/assets/crescent_logo.png and b/themes/default/assets/crescent_logo.png differ |
15722 | diff --git a/themes/default/assets/crescent_logo.svg b/themes/default/assets/crescent_logo.svg |
15723 | index f235e01..a4ea13b 100644 |
15724 | --- a/themes/default/assets/crescent_logo.svg |
15725 | +++ b/themes/default/assets/crescent_logo.svg |
15726 | @@ -3,11 +3,11 @@ |
15727 | id="emoji" |
15728 | viewBox="0 0 75 80" |
15729 | version="1.1" |
15730 | - sodipodi:docname="crescent_logo.svg" |
15731 | + sodipodi:docname="ayllu_logo.svg" |
15732 | width="75" |
15733 | height="80" |
15734 | inkscape:version="1.3 (0e150ed6c4, 2023-07-21)" |
15735 | - inkscape:export-filename="crescent_logo.png" |
15736 | + inkscape:export-filename="ayllu_logo.png" |
15737 | inkscape:export-xdpi="92.290512" |
15738 | inkscape:export-ydpi="92.290512" |
15739 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
15740 | @@ -18,7 +18,7 @@ |
15741 | xmlns:cc="http://creativecommons.org/ns#" |
15742 | xmlns:dc="http://purl.org/dc/elements/1.1/"> |
15743 | <title |
15744 | - id="title8">Crescent Logo</title> |
15745 | + id="title8">Ayllu Logo</title> |
15746 | <defs |
15747 | id="defs3"> |
15748 | <pattern |
15749 | @@ -140,7 +140,7 @@ |
15750 | id="tspan8" |
15751 | x="8.3051538" |
15752 | y="76.157455" |
15753 | - style="stroke-width:0.991239">crescent</tspan></text> |
15754 | + style="stroke-width:0.991239">ayllu</tspan></text> |
15755 | </g> |
15756 | <g |
15757 | id="g8" |
15758 | @@ -181,7 +181,7 @@ |
15759 | <rdf:RDF> |
15760 | <cc:Work |
15761 | rdf:about=""> |
15762 | - <dc:title>Crescent Logo</dc:title> |
15763 | + <dc:title>Ayllu Logo</dc:title> |
15764 | <cc:license |
15765 | rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" /> |
15766 | <dc:description>Originally created by Vanessa Boutzikoudi @ https://openmoji.org/library/emoji-1F319/</dc:description> |
15767 | diff --git a/themes/default/assets/crescent_logo_inkscape.svg b/themes/default/assets/crescent_logo_inkscape.svg |
15768 | index 5139628..2550b61 100644 |
15769 | --- a/themes/default/assets/crescent_logo_inkscape.svg |
15770 | +++ b/themes/default/assets/crescent_logo_inkscape.svg |
15771 | @@ -3,11 +3,11 @@ |
15772 | id="emoji" |
15773 | viewBox="0 0 74.893936 92.089966" |
15774 | version="1.1" |
15775 | - sodipodi:docname="crescent_logo_inkscape.svg" |
15776 | + sodipodi:docname="ayllu_logo_inkscape.svg" |
15777 | width="74.893936" |
15778 | height="92.089966" |
15779 | inkscape:version="1.3 (0e150ed6c4, 2023-07-21)" |
15780 | - inkscape:export-filename="crescent_logo.png" |
15781 | + inkscape:export-filename="ayllu_logo.png" |
15782 | inkscape:export-xdpi="92.290512" |
15783 | inkscape:export-ydpi="92.290512" |
15784 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
15785 | @@ -18,7 +18,7 @@ |
15786 | xmlns:cc="http://creativecommons.org/ns#" |
15787 | xmlns:dc="http://purl.org/dc/elements/1.1/"> |
15788 | <title |
15789 | - id="title8">Crescent Logo</title> |
15790 | + id="title8">Ayllu Logo</title> |
15791 | <defs |
15792 | id="defs3" /> |
15793 | <sodipodi:namedview |
15794 | @@ -86,7 +86,7 @@ |
15795 | transform="scale(1.0053557,0.99467283)" |
15796 | inkscape:label="text8"><tspan |
15797 | sodipodi:role="line" |
15798 | - id="tspan8">crescent</tspan></text> |
15799 | + id="tspan8">ayllu</tspan></text> |
15800 | </g> |
15801 | <g |
15802 | id="color" |
15803 | @@ -125,7 +125,7 @@ |
15804 | rdf:about=""> |
15805 | <cc:license |
15806 | rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" /> |
15807 | - <dc:title>Crescent Logo</dc:title> |
15808 | + <dc:title>Ayllu Logo</dc:title> |
15809 | <dc:description>Originally created by Vanessa Boutzikoudi @ https://openmoji.org/library/emoji-1F319/</dc:description> |
15810 | </cc:Work> |
15811 | <cc:License |
15812 | diff --git a/themes/default/assets/logo.svg b/themes/default/assets/logo.svg |
15813 | index e7f52fe..8e43fd6 100644 |
15814 | --- a/themes/default/assets/logo.svg |
15815 | +++ b/themes/default/assets/logo.svg |
15816 | @@ -3,7 +3,7 @@ |
15817 | id="emoji" |
15818 | viewBox="0 0 234.58891 59.331596" |
15819 | version="1.1" |
15820 | - sodipodi:docname="crescent.svg" |
15821 | + sodipodi:docname="ayllu.svg" |
15822 | width="234.58891" |
15823 | height="59.331596" |
15824 | inkscape:export-filename="logo.png" |
15825 | @@ -74,5 +74,5 @@ |
15826 | y="48.623523" |
15827 | id="tspan7896"><tspan |
15828 | style="font-weight:bold;font-family:serif;-inkscape-font-specification:'serif Bold'" |
15829 | - id="tspan7894">crescent</tspan></tspan></text> |
15830 | + id="tspan7894">ayllu</tspan></tspan></text> |
15831 | </svg> |
15832 | diff --git a/themes/default/assets/textile-pattern-1.svg b/themes/default/assets/textile-pattern-1.svg |
15833 | new file mode 100644 |
15834 | index 0000000..28124d3 |
15835 | --- /dev/null |
15836 | +++ b/themes/default/assets/textile-pattern-1.svg |
15837 | @@ -0,0 +1,90 @@ |
15838 | + <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
15839 | + <svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" inkscape:version="1.0 (1.0+r73+1)" sodipodi:docname="textil-inca-pattern-3a.svg" id="svg159" version="1.1" viewBox="0 0 902 702"> |
15840 | + <metadata id="metadata165"> |
15841 | + <rdf:RDF> |
15842 | + <cc:Work rdf:about=""> |
15843 | + <dc:format>image/svg+xml</dc:format> |
15844 | + <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/> |
15845 | + </cc:Work> |
15846 | + </rdf:RDF> |
15847 | + </metadata> |
15848 | + <defs id="defs163"/> |
15849 | + <sodipodi:namedview inkscape:current-layer="svg159" inkscape:window-maximized="1" inkscape:window-y="27" inkscape:window-x="67" inkscape:cy="467.33333" inkscape:cx="600.66667" inkscape:zoom="0.75746799" showgrid="false" id="namedview161" inkscape:window-height="1025" inkscape:window-width="1853" inkscape:pageshadow="2" inkscape:pageopacity="0" guidetolerance="10" gridtolerance="10" objecttolerance="10" borderopacity="1" bordercolor="#666666" pagecolor="#ffffff"/> |
15850 | + <path style="fill:#5c451c;fill-opacity:1;fill-rule:evenodd;stroke:#5c451c;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 1,1 H 901 V 701 H 1 Z m 0,0" id="path4"/> |
15851 | + <path style="fill:#ffa300;fill-opacity:1;fill-rule:evenodd;stroke:#ffa300;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 641,341 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path6"/> |
15852 | + <path style="fill:#ffa300;fill-opacity:1;fill-rule:evenodd;stroke:#ffa300;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 121,341 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path8"/> |
15853 | + <path style="fill:#ffa300;fill-opacity:1;fill-rule:evenodd;stroke:#ffa300;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 401,341 h 20 v -20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v -20 h -20 z m 0,0" id="path10"/> |
15854 | + <path style="fill:#ffa300;fill-opacity:1;fill-rule:evenodd;stroke:#ffa300;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,341 h 20 v -20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v -20 h -20 z m 0,0" id="path12"/> |
15855 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 701,221 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h -40 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path14"/> |
15856 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 701,481 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h -40 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path16"/> |
15857 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 621,361 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 40 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path18"/> |
15858 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 621,341 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -40 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path20"/> |
15859 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 201,221 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 H 81 v 20 H 61 v 20 h 40 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path22"/> |
15860 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 201,481 H 181 V 461 H 161 V 441 H 141 V 421 H 121 V 401 H 101 V 381 H 81 V 361 H 61 v -20 h 40 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path24"/> |
15861 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 281,361 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 40 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path26"/> |
15862 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 281,341 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -40 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path28"/> |
15863 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,121 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 40 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path30"/> |
15864 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 261,361 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 40 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path32"/> |
15865 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,121 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 40 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path34"/> |
15866 | + <path style="fill:#358794;fill-opacity:1;fill-rule:evenodd;stroke:#358794;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 641,361 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 40 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path36"/> |
15867 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 701,161 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h -40 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path38"/> |
15868 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 701,541 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h -40 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path40"/> |
15869 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,61 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 40 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path42"/> |
15870 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,641 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -40 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path44"/> |
15871 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,61 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 40 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path46"/> |
15872 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 621,421 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 40 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path48"/> |
15873 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 621,281 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -40 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path50"/> |
15874 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 281,281 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -40 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path52"/> |
15875 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 201,161 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 H 81 v 20 H 61 v 20 H 41 v 20 H 21 v 20 H 1 v 20 h 40 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path54"/> |
15876 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 201,541 H 181 V 521 H 161 V 501 H 141 V 481 H 121 V 461 H 101 V 441 H 81 V 421 H 61 V 401 H 41 V 381 H 21 V 361 H 1 v -20 h 40 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path56"/> |
15877 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,641 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -40 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path58"/> |
15878 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 281,421 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 40 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path60"/> |
15879 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 701,181 h 20 v -80 h 100 v 40 h -40 v -20 h -20 v 40 h 80 V 81 H 701 Z m 0,0" id="path62"/> |
15880 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 721,181 H 701 V 101 H 601 v 40 h 40 v -20 h 20 v 40 H 581 V 81 h 140 z m 0,0" id="path64"/> |
15881 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 701,521 h 20 v 80 h 100 v -40 h -40 v 20 h -20 v -40 h 80 v 80 H 701 Z m 0,0" id="path66"/> |
15882 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 721,521 h -20 v 80 H 601 v -40 h 40 v 20 h 20 v -40 h -80 v 80 h 140 z m 0,0" id="path68"/> |
15883 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 181,521 h 20 v 80 h 100 v -40 h -40 v 20 h -20 v -40 h 80 v 80 H 181 Z m 0,0" id="path70"/> |
15884 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 201,521 h -20 v 80 H 81 v -40 h 40 v 20 h 20 V 541 H 61 v 80 h 140 z m 0,0" id="path72"/> |
15885 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 181,181 h 20 v -80 h 100 v 40 h -40 v -20 h -20 v 40 h 80 V 81 H 181 Z m 0,0" id="path74"/> |
15886 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 201,181 H 181 V 101 H 81 v 40 h 40 v -20 h 20 v 40 H 61 V 81 h 140 z m 0,0" id="path76"/> |
15887 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,181 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h -40 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path78"/> |
15888 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,181 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h 40 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path80"/> |
15889 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,521 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h -40 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path82"/> |
15890 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,521 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h 40 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path84"/> |
15891 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 1,21 H 881 V 61 H 1 Z m 0,0" id="path86"/> |
15892 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 1,641 h 880 v 40 H 1 Z m 0,0" id="path88"/> |
15893 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 421,281 h 20 v -20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v -20 h -20 z m 0,0" id="path90"/> |
15894 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 681,341 h 20 v -20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v -20 h -20 z m 0,0" id="path92"/> |
15895 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 161,341 h 20 v -20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v -20 h -20 z m 0,0" id="path94"/> |
15896 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 421,401 h 20 v -20 h 20 v 20 h 20 v 20 h -20 v 20 h -20 v -20 h -20 z m 0,0" id="path96"/> |
15897 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 401,301 h 20 v 20 h -20 z m 0,0" id="path98"/> |
15898 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 381,321 h 20 v 20 h -20 z m 0,0" id="path100"/> |
15899 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 361,341 h 20 v 20 h -20 z m 0,0" id="path102"/> |
15900 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 381,361 h 20 v 20 h -20 z m 0,0" id="path104"/> |
15901 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 401,381 h 20 v 20 h -20 z m 0,0" id="path106"/> |
15902 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 501,321 h 20 v 20 h -20 z m 0,0" id="path108"/> |
15903 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 521,341 h 20 v 20 h -20 z m 0,0" id="path110"/> |
15904 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 501,361 h 20 v 20 h -20 z m 0,0" id="path112"/> |
15905 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 481,381 h 20 v 20 h -20 z m 0,0" id="path114"/> |
15906 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 421,341 h 20 v 20 h -20 z m 0,0" id="path116"/> |
15907 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,341 h 20 v 20 h -20 z m 0,0" id="path118"/> |
15908 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 881,21 h 20 v 40 h -20 z m 0,0" id="path120"/> |
15909 | + <path style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 881,641 h 20 v 40 h -20 z m 0,0" id="path122"/> |
15910 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 801,201 h 60 V 81 h 40 v 220 h -20 v -20 h -20 v -20 h -20 v -20 h -20 v -20 h -20 z m 0,0" id="path124"/> |
15911 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 101,201 H 41 V 81 H 1 v 220 h 20 v -20 h 20 v -20 h 20 v -20 h 20 v -20 h 20 z m 0,0" id="path126"/> |
15912 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="M 101,501 H 41 V 621 H 1 V 401 h 20 v 20 h 20 v 20 h 20 v 20 h 20 v 20 h 20 z m 0,0" id="path128"/> |
15913 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 801,501 h 60 v 120 h 40 V 401 h -20 v 20 h -20 v 20 h -20 v 20 h -20 v 20 h -20 z m 0,0" id="path130"/> |
15914 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 381,341 h 20 v 20 h -20 z m 0,0" id="path132"/> |
15915 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 401,321 h 20 v 20 h -20 z m 0,0" id="path134"/> |
15916 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 421,301 h 20 v 20 h -20 z m 0,0" id="path136"/> |
15917 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,301 h 20 v 20 h -20 z m 0,0" id="path138"/> |
15918 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 481,321 h 20 v 20 h -20 z m 0,0" id="path140"/> |
15919 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 501,341 h 20 v 20 h -20 z m 0,0" id="path142"/> |
15920 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 481,361 h 20 v 20 h -20 z m 0,0" id="path144"/> |
15921 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 461,381 h 20 v 20 h -20 z m 0,0" id="path146"/> |
15922 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 441,361 h 20 v 20 h -20 z m 0,0" id="path148"/> |
15923 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 421,381 h 20 v 20 h -20 z m 0,0" id="path150"/> |
15924 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 401,361 h 20 v 20 h -20 z m 0,0" id="path152"/> |
15925 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 881,81 h 20 v 220 h -20 z m 0,0" id="path154"/> |
15926 | + <path style="fill:#de3333;fill-opacity:1;fill-rule:evenodd;stroke:#de3333;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" d="m 881,401 h 20 v 220 h -20 z m 0,0" id="path156"/> |
15927 | + </svg> |
15928 | diff --git a/themes/default/assets/textile-pattern-2.svg b/themes/default/assets/textile-pattern-2.svg |
15929 | new file mode 100644 |
15930 | index 0000000..f442f7a |
15931 | --- /dev/null |
15932 | +++ b/themes/default/assets/textile-pattern-2.svg |
15933 | @@ -0,0 +1,308 @@ |
15934 | + <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
15935 | + <svg |
15936 | + xmlns:dc="http://purl.org/dc/elements/1.1/" |
15937 | + xmlns:cc="http://creativecommons.org/ns#" |
15938 | + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
15939 | + xmlns:svg="http://www.w3.org/2000/svg" |
15940 | + xmlns="http://www.w3.org/2000/svg" |
15941 | + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" |
15942 | + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
15943 | + width="1441.0001pt" |
15944 | + height="1441pt" |
15945 | + viewBox="0 0 1441.0001 1441" |
15946 | + version="1.1" |
15947 | + id="svg11" |
15948 | + sodipodi:docname="Manto-funerario-paracas-2.svg" |
15949 | + inkscape:version="1.0 (1.0+r73+1)"> |
15950 | + <metadata |
15951 | + id="metadata17"> |
15952 | + <rdf:RDF> |
15953 | + <cc:Work |
15954 | + rdf:about=""> |
15955 | + <dc:format>image/svg+xml</dc:format> |
15956 | + <dc:type |
15957 | + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> |
15958 | + <dc:title /> |
15959 | + </cc:Work> |
15960 | + </rdf:RDF> |
15961 | + </metadata> |
15962 | + <defs |
15963 | + id="defs15" /> |
15964 | + <sodipodi:namedview |
15965 | + inkscape:document-rotation="0" |
15966 | + pagecolor="#ffffff" |
15967 | + bordercolor="#666666" |
15968 | + borderopacity="1" |
15969 | + objecttolerance="10" |
15970 | + gridtolerance="10" |
15971 | + guidetolerance="10" |
15972 | + inkscape:pageopacity="0" |
15973 | + inkscape:pageshadow="2" |
15974 | + inkscape:window-width="1853" |
15975 | + inkscape:window-height="1025" |
15976 | + id="namedview13" |
15977 | + showgrid="false" |
15978 | + inkscape:zoom="0.18438366" |
15979 | + inkscape:cx="471.3773" |
15980 | + inkscape:cy="745.57387" |
15981 | + inkscape:window-x="67" |
15982 | + inkscape:window-y="27" |
15983 | + inkscape:window-maximized="1" |
15984 | + inkscape:current-layer="svg11" /> |
15985 | + <g |
15986 | + transform="translate(-0.49999149,719.5)" |
15987 | + id="g921"> |
15988 | + <path |
15989 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
15990 | + d="M 1,1 H 361 V 361 H 1 Z m 0,0" |
15991 | + id="path4" /> |
15992 | + <path |
15993 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
15994 | + d="m 261,281 h -80 v 50 H 101 V 281 H 21 L 61,201 H 21 L 61,121 H 21 L 81,31 V 231 H 261 V 91 l -50,110 h -80 l -30,-70 v -30 l 50,-70 h 10 v 40 h 20 V 31 h 10 l 30,50 20,-50 h 40 l 60,100 h -60 l 60,100 h -60 l 60,100 h -80 z m 0,0" |
15995 | + id="path6" /> |
15996 | + <path |
15997 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
15998 | + d="m 141,131 20,-20 h 20 l 20,20 -20,40 h -20 z m 0,0" |
15999 | + id="path8" /> |
16000 | + </g> |
16001 | + <g |
16002 | + id="g895" |
16003 | + transform="translate(384.03529,784.594)"> |
16004 | + <path |
16005 | + id="path4-2" |
16006 | + d="M -383.53528,295.906 H -23.535268 V 655.90601 H -383.53528 Z m 0,0" |
16007 | + style="fill:#e15031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16008 | + <path |
16009 | + id="path6-9" |
16010 | + d="m -123.53527,575.90601 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.00001 h -40 l 60,-90 v 200.00001 h 180.00001 V 385.906 l -50,110.00001 h -80.00001 L -283.53527,425.906 v -29.99999 l 50,-70.00001 h 9.99999 v 40 h 20.00001 v -40 h 9.99999 l 30,50 20,-50 h 40.00001 l 60.000002,100 h -60.000002 l 60.000002,100.00001 h -60.000002 l 60.000002,100 h -80.000002 z m 0,0" |
16011 | + style="fill:#ed2031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16012 | + <path |
16013 | + id="path8-1" |
16014 | + d="m -243.53528,425.906 20,-20 h 20.00001 l 20,20 -20,40 h -20.00001 z m 0,0" |
16015 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16016 | + </g> |
16017 | + <g |
16018 | + id="g944" |
16019 | + transform="translate(-198.02416,1142.587)"> |
16020 | + <path |
16021 | + id="path4-27" |
16022 | + d="M 558.52418,-62.086991 H 918.52419 V 297.91302 H 558.52418 Z m 0,0" |
16023 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16024 | + <path |
16025 | + id="path6-0" |
16026 | + d="m 818.52419,217.91302 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.000008 h -40 l 60.00001,-90.000003 V 167.91302 h 180 V 27.913013 l -50,110.000007 H 688.52418 L 658.52419,67.913012 v -29.99999 l 50,-70.000013 h 9.99999 V 7.9130143 h 20.00001 V -32.086991 h 9.99999 l 30,50.000006 20,-50.000006 h 40.00001 l 60,100.000003 h -60 l 60,100.000008 h -60 l 60,100 h -80 z m 0,0" |
16027 | + style="fill:#d66236;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16028 | + <path |
16029 | + id="path8-9" |
16030 | + d="m 698.52418,67.913012 20,-20 h 20.00001 l 20,20 -20,39.999998 h -20.00001 z m 0,0" |
16031 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16032 | + </g> |
16033 | + <g |
16034 | + transform="translate(744.03529,424.59399)" |
16035 | + id="g895-3"> |
16036 | + <path |
16037 | + style="fill:#e15031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
16038 | + d="M -383.53528,295.906 H -23.535268 V 655.90601 H -383.53528 Z m 0,0" |
16039 | + id="path4-2-6" /> |
16040 | + <path |
16041 | + style="fill:#ed2031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16042 | + d="m -123.53527,575.90601 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.00001 h -40 l 60,-90 v 200.00001 h 180.00001 V 385.906 l -50,110.00001 h -80.00001 L -283.53527,425.906 v -29.99999 l 50,-70.00001 h 9.99999 v 40 h 20.00001 v -40 h 9.99999 l 30,50 20,-50 h 40.00001 l 60.000002,100 h -60.000002 l 60.000002,100.00001 h -60.000002 l 60.000002,100 h -80.000002 z m 0,0" |
16043 | + id="path6-9-0" /> |
16044 | + <path |
16045 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16046 | + d="m -243.53528,425.906 20,-20 h 20.00001 l 20,20 -20,40 h -20.00001 z m 0,0" |
16047 | + id="path8-1-6" /> |
16048 | + </g> |
16049 | + <g |
16050 | + id="g921-2" |
16051 | + transform="translate(359.50001,359.5)"> |
16052 | + <path |
16053 | + id="path4-6" |
16054 | + d="M 1,1 H 361 V 361 H 1 Z m 0,0" |
16055 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16056 | + <path |
16057 | + id="path6-1" |
16058 | + d="m 261,281 h -80 v 50 H 101 V 281 H 21 L 61,201 H 21 L 61,121 H 21 L 81,31 V 231 H 261 V 91 l -50,110 h -80 l -30,-70 v -30 l 50,-70 h 10 v 40 h 20 V 31 h 10 l 30,50 20,-50 h 40 l 60,100 h -60 l 60,100 h -60 l 60,100 h -80 z m 0,0" |
16059 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16060 | + <path |
16061 | + id="path8-8" |
16062 | + d="m 141,131 20,-20 h 20 l 20,20 -20,40 h -20 z m 0,0" |
16063 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16064 | + </g> |
16065 | + <g |
16066 | + id="g921-9" |
16067 | + transform="translate(719.50001,-0.5)"> |
16068 | + <path |
16069 | + id="path4-7" |
16070 | + d="M 1,1 H 361 V 361 H 1 Z m 0,0" |
16071 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16072 | + <path |
16073 | + id="path6-3" |
16074 | + d="m 261,281 h -80 v 50 H 101 V 281 H 21 L 61,201 H 21 L 61,121 H 21 L 81,31 V 231 H 261 V 91 l -50,110 h -80 l -30,-70 v -30 l 50,-70 h 10 v 40 h 20 V 31 h 10 l 30,50 20,-50 h 40 l 60,100 h -60 l 60,100 h -60 l 60,100 h -80 z m 0,0" |
16075 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16076 | + <path |
16077 | + id="path8-6" |
16078 | + d="m 141,131 20,-20 h 20 l 20,20 -20,40 h -20 z m 0,0" |
16079 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16080 | + </g> |
16081 | + <g |
16082 | + transform="translate(1104.0353,64.594)" |
16083 | + id="g895-1"> |
16084 | + <path |
16085 | + style="fill:#e15031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
16086 | + d="M -383.53528,295.906 H -23.535268 V 655.90601 H -383.53528 Z m 0,0" |
16087 | + id="path4-2-2" /> |
16088 | + <path |
16089 | + style="fill:#ed2031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16090 | + d="m -123.53527,575.90601 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.00001 h -40 l 60,-90 v 200.00001 h 180.00001 V 385.906 l -50,110.00001 h -80.00001 L -283.53527,425.906 v -29.99999 l 50,-70.00001 h 9.99999 v 40 h 20.00001 v -40 h 9.99999 l 30,50 20,-50 h 40.00001 l 60.000002,100 h -60.000002 l 60.000002,100.00001 h -60.000002 l 60.000002,100 h -80.000002 z m 0,0" |
16091 | + id="path6-9-9" /> |
16092 | + <path |
16093 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16094 | + d="m -243.53528,425.906 20,-20 h 20.00001 l 20,20 -20,40 h -20.00001 z m 0,0" |
16095 | + id="path8-1-3" /> |
16096 | + </g> |
16097 | + <g |
16098 | + transform="translate(521.97583,422.58699)" |
16099 | + id="g944-1"> |
16100 | + <path |
16101 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
16102 | + d="M 558.52418,-62.086991 H 918.52419 V 297.91302 H 558.52418 Z m 0,0" |
16103 | + id="path4-27-9" /> |
16104 | + <path |
16105 | + style="fill:#d66236;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16106 | + d="m 818.52419,217.91302 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.000008 h -40 l 60.00001,-90.000003 V 167.91302 h 180 V 27.913013 l -50,110.000007 H 688.52418 L 658.52419,67.913012 v -29.99999 l 50,-70.000013 h 9.99999 V 7.9130143 h 20.00001 V -32.086991 h 9.99999 l 30,50.000006 20,-50.000006 h 40.00001 l 60,100.000003 h -60 l 60,100.000008 h -60 l 60,100 h -80 z m 0,0" |
16107 | + id="path6-0-4" /> |
16108 | + <path |
16109 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16110 | + d="m 698.52418,67.913012 20,-20 h 20.00001 l 20,20 -20,39.999998 h -20.00001 z m 0,0" |
16111 | + id="path8-9-7" /> |
16112 | + </g> |
16113 | + <g |
16114 | + id="g895-3-8" |
16115 | + transform="translate(1464.0353,-295.406)"> |
16116 | + <path |
16117 | + id="path4-2-6-4" |
16118 | + d="M -383.53528,295.906 H -23.535268 V 655.90601 H -383.53528 Z m 0,0" |
16119 | + style="fill:#e15031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16120 | + <path |
16121 | + id="path6-9-0-5" |
16122 | + d="m -123.53527,575.90601 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.00001 h -40 l 60,-90 v 200.00001 h 180.00001 V 385.906 l -50,110.00001 h -80.00001 L -283.53527,425.906 v -29.99999 l 50,-70.00001 h 9.99999 v 40 h 20.00001 v -40 h 9.99999 l 30,50 20,-50 h 40.00001 l 60.000002,100 h -60.000002 l 60.000002,100.00001 h -60.000002 l 60.000002,100 h -80.000002 z m 0,0" |
16123 | + style="fill:#ed2031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16124 | + <path |
16125 | + id="path8-1-6-0" |
16126 | + d="m -243.53528,425.906 20,-20 h 20.00001 l 20,20 -20,40 h -20.00001 z m 0,0" |
16127 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16128 | + </g> |
16129 | + <g |
16130 | + transform="translate(161.97582,782.587)" |
16131 | + id="g944-3"> |
16132 | + <path |
16133 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
16134 | + d="M 558.52418,-62.086991 H 918.52419 V 297.91302 H 558.52418 Z m 0,0" |
16135 | + id="path4-27-6" /> |
16136 | + <path |
16137 | + style="fill:#d66236;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16138 | + d="m 818.52419,217.91302 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.000008 h -40 l 60.00001,-90.000003 V 167.91302 h 180 V 27.913013 l -50,110.000007 H 688.52418 L 658.52419,67.913012 v -29.99999 l 50,-70.000013 h 9.99999 V 7.9130143 h 20.00001 V -32.086991 h 9.99999 l 30,50.000006 20,-50.000006 h 40.00001 l 60,100.000003 h -60 l 60,100.000008 h -60 l 60,100 h -80 z m 0,0" |
16139 | + id="path6-0-1" /> |
16140 | + <path |
16141 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16142 | + d="m 698.52418,67.913012 20,-20 h 20.00001 l 20,20 -20,39.999998 h -20.00001 z m 0,0" |
16143 | + id="path8-9-0" /> |
16144 | + </g> |
16145 | + <g |
16146 | + id="g921-6" |
16147 | + transform="translate(719.50003,1079.5)"> |
16148 | + <path |
16149 | + id="path4-3" |
16150 | + d="M 1,1 H 361 V 361 H 1 Z m 0,0" |
16151 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16152 | + <path |
16153 | + id="path6-2" |
16154 | + d="m 261,281 h -80 v 50 H 101 V 281 H 21 L 61,201 H 21 L 61,121 H 21 L 81,31 V 231 H 261 V 91 l -50,110 h -80 l -30,-70 v -30 l 50,-70 h 10 v 40 h 20 V 31 h 10 l 30,50 20,-50 h 40 l 60,100 h -60 l 60,100 h -60 l 60,100 h -80 z m 0,0" |
16155 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16156 | + <path |
16157 | + id="path8-0" |
16158 | + d="m 141,131 20,-20 h 20 l 20,20 -20,40 h -20 z m 0,0" |
16159 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16160 | + </g> |
16161 | + <g |
16162 | + transform="translate(1079.5,719.5)" |
16163 | + id="g921-2-6"> |
16164 | + <path |
16165 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
16166 | + d="M 1,1 H 361 V 361 H 1 Z m 0,0" |
16167 | + id="path4-6-1" /> |
16168 | + <path |
16169 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16170 | + d="m 261,281 h -80 v 50 H 101 V 281 H 21 L 61,201 H 21 L 61,121 H 21 L 81,31 V 231 H 261 V 91 l -50,110 h -80 l -30,-70 v -30 l 50,-70 h 10 v 40 h 20 V 31 h 10 l 30,50 20,-50 h 40 l 60,100 h -60 l 60,100 h -60 l 60,100 h -80 z m 0,0" |
16171 | + id="path6-1-5" /> |
16172 | + <path |
16173 | + style="fill:#730033;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16174 | + d="m 141,131 20,-20 h 20 l 20,20 -20,40 h -20 z m 0,0" |
16175 | + id="path8-8-5" /> |
16176 | + </g> |
16177 | + <g |
16178 | + transform="translate(-558.02418,422.58698)" |
16179 | + id="g944-4"> |
16180 | + <path |
16181 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" |
16182 | + d="M 558.52418,-62.086991 H 918.52419 V 297.91302 H 558.52418 Z m 0,0" |
16183 | + id="path4-27-7" /> |
16184 | + <path |
16185 | + style="fill:#d66236;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16186 | + d="m 818.52419,217.91302 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.000008 h -40 l 60.00001,-90.000003 V 167.91302 h 180 V 27.913013 l -50,110.000007 H 688.52418 L 658.52419,67.913012 v -29.99999 l 50,-70.000013 h 9.99999 V 7.9130143 h 20.00001 V -32.086991 h 9.99999 l 30,50.000006 20,-50.000006 h 40.00001 l 60,100.000003 h -60 l 60,100.000008 h -60 l 60,100 h -80 z m 0,0" |
16187 | + id="path6-0-6" /> |
16188 | + <path |
16189 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" |
16190 | + d="m 698.52418,67.913012 20,-20 h 20.00001 l 20,20 -20,39.999998 h -20.00001 z m 0,0" |
16191 | + id="path8-9-5" /> |
16192 | + </g> |
16193 | + <g |
16194 | + id="g944-3-6" |
16195 | + transform="translate(-198.02419,62.58699)"> |
16196 | + <path |
16197 | + id="path4-27-6-9" |
16198 | + d="M 558.52418,-62.086991 H 918.52419 V 297.91302 H 558.52418 Z m 0,0" |
16199 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16200 | + <path |
16201 | + id="path6-0-1-3" |
16202 | + d="m 818.52419,217.91302 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.000008 h -40 l 60.00001,-90.000003 V 167.91302 h 180 V 27.913013 l -50,110.000007 H 688.52418 L 658.52419,67.913012 v -29.99999 l 50,-70.000013 h 9.99999 V 7.9130143 h 20.00001 V -32.086991 h 9.99999 l 30,50.000006 20,-50.000006 h 40.00001 l 60,100.000003 h -60 l 60,100.000008 h -60 l 60,100 h -80 z m 0,0" |
16203 | + style="fill:#d66236;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16204 | + <path |
16205 | + id="path8-9-0-7" |
16206 | + d="m 698.52418,67.913012 20,-20 h 20.00001 l 20,20 -20,39.999998 h -20.00001 z m 0,0" |
16207 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16208 | + </g> |
16209 | + <g |
16210 | + id="g895-1-4" |
16211 | + transform="translate(384.03528,-295.406)"> |
16212 | + <path |
16213 | + id="path4-2-2-5" |
16214 | + d="M -383.53528,295.906 H -23.535268 V 655.90601 H -383.53528 Z m 0,0" |
16215 | + style="fill:#e15031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16216 | + <path |
16217 | + id="path6-9-9-2" |
16218 | + d="m -123.53527,575.90601 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.00001 h -40 l 60,-90 v 200.00001 h 180.00001 V 385.906 l -50,110.00001 h -80.00001 L -283.53527,425.906 v -29.99999 l 50,-70.00001 h 9.99999 v 40 h 20.00001 v -40 h 9.99999 l 30,50 20,-50 h 40.00001 l 60.000002,100 h -60.000002 l 60.000002,100.00001 h -60.000002 l 60.000002,100 h -80.000002 z m 0,0" |
16219 | + style="fill:#ed2031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16220 | + <path |
16221 | + id="path8-1-3-5" |
16222 | + d="m -243.53528,425.906 20,-20 h 20.00001 l 20,20 -20,40 h -20.00001 z m 0,0" |
16223 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16224 | + </g> |
16225 | + <g |
16226 | + id="g895-1-47" |
16227 | + transform="translate(1464.0353,784.594)"> |
16228 | + <path |
16229 | + id="path4-2-2-4" |
16230 | + d="M -383.53528,295.906 H -23.535268 V 655.90601 H -383.53528 Z m 0,0" |
16231 | + style="fill:#e15031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1" /> |
16232 | + <path |
16233 | + id="path6-9-9-4" |
16234 | + d="m -123.53527,575.90601 h -80 v 50 h -80 v -50 h -80.00001 l 40,-80 h -40 l 40,-80.00001 h -40 l 60,-90 v 200.00001 h 180.00001 V 385.906 l -50,110.00001 h -80.00001 L -283.53527,425.906 v -29.99999 l 50,-70.00001 h 9.99999 v 40 h 20.00001 v -40 h 9.99999 l 30,50 20,-50 h 40.00001 l 60.000002,100 h -60.000002 l 60.000002,100.00001 h -60.000002 l 60.000002,100 h -80.000002 z m 0,0" |
16235 | + style="fill:#ed2031;fill-opacity:1;fill-rule:evenodd;stroke:#730033;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16236 | + <path |
16237 | + id="path8-1-3-3" |
16238 | + d="m -243.53528,425.906 20,-20 h 20.00001 l 20,20 -20,40 h -20.00001 z m 0,0" |
16239 | + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:8.00002;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1" /> |
16240 | + </g> |
16241 | + </svg> |
16242 | diff --git a/themes/default/base.scss b/themes/default/base.scss |
16243 | index 2dfd684..8985bae 100644 |
16244 | --- a/themes/default/base.scss |
16245 | +++ b/themes/default/base.scss |
16246 | @@ -106,7 +106,7 @@ li.active > a { |
16247 | } |
16248 | |
16249 | .logo > svg { |
16250 | - width: 40px; |
16251 | + width: 72px; |
16252 | } |
16253 | |
16254 | @media (prefers-color-scheme: dark) { |
16255 | diff --git a/themes/default/templates/base.html b/themes/default/templates/base.html |
16256 | index 9a4ea57..231a41c 100644 |
16257 | --- a/themes/default/templates/base.html |
16258 | +++ b/themes/default/templates/base.html |
16259 | @@ -7,10 +7,10 @@ |
16260 | {% block title %}{{ title }}{% endblock %} |
16261 | </title> |
16262 | <link rel="stylesheet" href="/static/main.min.css" /> |
16263 | - <link href="/static/assets/crescent_logo.svg" |
16264 | + <link href="/static/assets/ayllu_logo.svg" |
16265 | rel="icon" |
16266 | type="image/svg+xml" /> |
16267 | - <link href="/static/assets/crescent_logo.png" |
16268 | + <link href="/static/assets/ayllu_logo.png" |
16269 | rel="icon" |
16270 | sizes="any" |
16271 | type="image/png" /> |
16272 | diff --git a/themes/default/templates/nav.html b/themes/default/templates/nav.html |
16273 | index 639f597..2492a79 100644 |
16274 | --- a/themes/default/templates/nav.html |
16275 | +++ b/themes/default/templates/nav.html |
16276 | @@ -2,7 +2,7 @@ |
16277 | <ul> |
16278 | <li> |
16279 | <a href="{%- if subpath_mode -%}/browse{%- else -%}/{%- endif -%}"> |
16280 | - <div class="logo">{{ "moon" | emoji | safe }} |
16281 | + <div class="logo">{{ "textile-pattern-1" | emoji | safe }} |
16282 | <h3> </h3> |
16283 | </div> |
16284 | </a> |