+1
.gitattributes
+1
.gitattributes
···
···
1
+
init_container.sh text eol=lf
+11
.gitignore
+11
.gitignore
+2232
Cargo.lock
+2232
Cargo.lock
···
···
1
+
# This file is automatically @generated by Cargo.
2
+
# It is not intended for manual editing.
3
+
version = 4
4
+
5
+
[[package]]
6
+
name = "addr2line"
7
+
version = "0.24.2"
8
+
source = "registry+https://github.com/rust-lang/crates.io-index"
9
+
checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1"
10
+
dependencies = [
11
+
"gimli",
12
+
]
13
+
14
+
[[package]]
15
+
name = "adler2"
16
+
version = "2.0.0"
17
+
source = "registry+https://github.com/rust-lang/crates.io-index"
18
+
checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627"
19
+
20
+
[[package]]
21
+
name = "android-tzdata"
22
+
version = "0.1.1"
23
+
source = "registry+https://github.com/rust-lang/crates.io-index"
24
+
checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
25
+
26
+
[[package]]
27
+
name = "android_system_properties"
28
+
version = "0.1.5"
29
+
source = "registry+https://github.com/rust-lang/crates.io-index"
30
+
checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
31
+
dependencies = [
32
+
"libc",
33
+
]
34
+
35
+
[[package]]
36
+
name = "anyhow"
37
+
version = "1.0.94"
38
+
source = "registry+https://github.com/rust-lang/crates.io-index"
39
+
checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7"
40
+
41
+
[[package]]
42
+
name = "async-channel"
43
+
version = "1.9.0"
44
+
source = "registry+https://github.com/rust-lang/crates.io-index"
45
+
checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
46
+
dependencies = [
47
+
"concurrent-queue",
48
+
"event-listener 2.5.3",
49
+
"futures-core",
50
+
]
51
+
52
+
[[package]]
53
+
name = "async-channel"
54
+
version = "2.3.1"
55
+
source = "registry+https://github.com/rust-lang/crates.io-index"
56
+
checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a"
57
+
dependencies = [
58
+
"concurrent-queue",
59
+
"event-listener-strategy",
60
+
"futures-core",
61
+
"pin-project-lite",
62
+
]
63
+
64
+
[[package]]
65
+
name = "async-io"
66
+
version = "2.3.4"
67
+
source = "registry+https://github.com/rust-lang/crates.io-index"
68
+
checksum = "444b0228950ee6501b3568d3c93bf1176a1fdbc3b758dcd9475046d30f4dc7e8"
69
+
dependencies = [
70
+
"async-lock",
71
+
"cfg-if",
72
+
"concurrent-queue",
73
+
"futures-io",
74
+
"futures-lite 2.5.0",
75
+
"parking",
76
+
"polling",
77
+
"rustix",
78
+
"slab",
79
+
"tracing",
80
+
"windows-sys 0.59.0",
81
+
]
82
+
83
+
[[package]]
84
+
name = "async-lock"
85
+
version = "3.4.0"
86
+
source = "registry+https://github.com/rust-lang/crates.io-index"
87
+
checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
88
+
dependencies = [
89
+
"event-listener 5.3.1",
90
+
"event-listener-strategy",
91
+
"pin-project-lite",
92
+
]
93
+
94
+
[[package]]
95
+
name = "async-process"
96
+
version = "2.3.0"
97
+
source = "registry+https://github.com/rust-lang/crates.io-index"
98
+
checksum = "63255f1dc2381611000436537bbedfe83183faa303a5a0edaf191edef06526bb"
99
+
dependencies = [
100
+
"async-channel 2.3.1",
101
+
"async-io",
102
+
"async-lock",
103
+
"async-signal",
104
+
"async-task",
105
+
"blocking",
106
+
"cfg-if",
107
+
"event-listener 5.3.1",
108
+
"futures-lite 2.5.0",
109
+
"rustix",
110
+
"tracing",
111
+
]
112
+
113
+
[[package]]
114
+
name = "async-signal"
115
+
version = "0.2.9"
116
+
source = "registry+https://github.com/rust-lang/crates.io-index"
117
+
checksum = "dfb3634b73397aa844481f814fad23bbf07fdb0eabec10f2eb95e58944b1ec32"
118
+
dependencies = [
119
+
"async-io",
120
+
"async-lock",
121
+
"atomic-waker",
122
+
"cfg-if",
123
+
"futures-core",
124
+
"futures-io",
125
+
"rustix",
126
+
"signal-hook-registry",
127
+
"slab",
128
+
"windows-sys 0.52.0",
129
+
]
130
+
131
+
[[package]]
132
+
name = "async-task"
133
+
version = "4.7.1"
134
+
source = "registry+https://github.com/rust-lang/crates.io-index"
135
+
checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
136
+
137
+
[[package]]
138
+
name = "async-trait"
139
+
version = "0.1.83"
140
+
source = "registry+https://github.com/rust-lang/crates.io-index"
141
+
checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd"
142
+
dependencies = [
143
+
"proc-macro2",
144
+
"quote",
145
+
"syn",
146
+
]
147
+
148
+
[[package]]
149
+
name = "atomic-waker"
150
+
version = "1.1.2"
151
+
source = "registry+https://github.com/rust-lang/crates.io-index"
152
+
checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
153
+
154
+
[[package]]
155
+
name = "autocfg"
156
+
version = "1.4.0"
157
+
source = "registry+https://github.com/rust-lang/crates.io-index"
158
+
checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
159
+
160
+
[[package]]
161
+
name = "axum"
162
+
version = "0.7.9"
163
+
source = "registry+https://github.com/rust-lang/crates.io-index"
164
+
checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f"
165
+
dependencies = [
166
+
"async-trait",
167
+
"axum-core",
168
+
"axum-macros",
169
+
"bytes",
170
+
"futures-util",
171
+
"http 1.1.0",
172
+
"http-body",
173
+
"http-body-util",
174
+
"hyper",
175
+
"hyper-util",
176
+
"itoa",
177
+
"matchit",
178
+
"memchr",
179
+
"mime",
180
+
"percent-encoding",
181
+
"pin-project-lite",
182
+
"rustversion",
183
+
"serde",
184
+
"serde_json",
185
+
"serde_path_to_error",
186
+
"serde_urlencoded",
187
+
"sync_wrapper 1.0.1",
188
+
"tokio",
189
+
"tower",
190
+
"tower-layer",
191
+
"tower-service",
192
+
"tracing",
193
+
]
194
+
195
+
[[package]]
196
+
name = "axum-core"
197
+
version = "0.4.5"
198
+
source = "registry+https://github.com/rust-lang/crates.io-index"
199
+
checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199"
200
+
dependencies = [
201
+
"async-trait",
202
+
"bytes",
203
+
"futures-util",
204
+
"http 1.1.0",
205
+
"http-body",
206
+
"http-body-util",
207
+
"mime",
208
+
"pin-project-lite",
209
+
"rustversion",
210
+
"sync_wrapper 1.0.1",
211
+
"tower-layer",
212
+
"tower-service",
213
+
"tracing",
214
+
]
215
+
216
+
[[package]]
217
+
name = "axum-macros"
218
+
version = "0.4.2"
219
+
source = "registry+https://github.com/rust-lang/crates.io-index"
220
+
checksum = "57d123550fa8d071b7255cb0cc04dc302baa6c8c4a79f55701552684d8399bce"
221
+
dependencies = [
222
+
"proc-macro2",
223
+
"quote",
224
+
"syn",
225
+
]
226
+
227
+
[[package]]
228
+
name = "azure_core"
229
+
version = "0.21.0"
230
+
source = "registry+https://github.com/rust-lang/crates.io-index"
231
+
checksum = "7b552ad43a45a746461ec3d3a51dfb6466b4759209414b439c165eb6a6b7729e"
232
+
dependencies = [
233
+
"async-trait",
234
+
"base64 0.22.1",
235
+
"bytes",
236
+
"dyn-clone",
237
+
"futures",
238
+
"getrandom 0.2.15",
239
+
"http-types",
240
+
"once_cell",
241
+
"paste",
242
+
"pin-project",
243
+
"rand 0.8.5",
244
+
"reqwest",
245
+
"rustc_version",
246
+
"serde",
247
+
"serde_json",
248
+
"time",
249
+
"tracing",
250
+
"url",
251
+
"uuid",
252
+
]
253
+
254
+
[[package]]
255
+
name = "azure_identity"
256
+
version = "0.21.0"
257
+
source = "registry+https://github.com/rust-lang/crates.io-index"
258
+
checksum = "88ddd80344317c40c04b603807b63a5cefa532f1b43522e72f480a988141f744"
259
+
dependencies = [
260
+
"async-lock",
261
+
"async-process",
262
+
"async-trait",
263
+
"azure_core",
264
+
"futures",
265
+
"oauth2",
266
+
"pin-project",
267
+
"serde",
268
+
"time",
269
+
"tracing",
270
+
"tz-rs",
271
+
"url",
272
+
"uuid",
273
+
]
274
+
275
+
[[package]]
276
+
name = "backtrace"
277
+
version = "0.3.74"
278
+
source = "registry+https://github.com/rust-lang/crates.io-index"
279
+
checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a"
280
+
dependencies = [
281
+
"addr2line",
282
+
"cfg-if",
283
+
"libc",
284
+
"miniz_oxide",
285
+
"object",
286
+
"rustc-demangle",
287
+
"windows-targets",
288
+
]
289
+
290
+
[[package]]
291
+
name = "base64"
292
+
version = "0.13.1"
293
+
source = "registry+https://github.com/rust-lang/crates.io-index"
294
+
checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
295
+
296
+
[[package]]
297
+
name = "base64"
298
+
version = "0.22.1"
299
+
source = "registry+https://github.com/rust-lang/crates.io-index"
300
+
checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
301
+
302
+
[[package]]
303
+
name = "bitflags"
304
+
version = "2.6.0"
305
+
source = "registry+https://github.com/rust-lang/crates.io-index"
306
+
checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
307
+
308
+
[[package]]
309
+
name = "block-buffer"
310
+
version = "0.10.4"
311
+
source = "registry+https://github.com/rust-lang/crates.io-index"
312
+
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
313
+
dependencies = [
314
+
"generic-array",
315
+
]
316
+
317
+
[[package]]
318
+
name = "blocking"
319
+
version = "1.6.1"
320
+
source = "registry+https://github.com/rust-lang/crates.io-index"
321
+
checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea"
322
+
dependencies = [
323
+
"async-channel 2.3.1",
324
+
"async-task",
325
+
"futures-io",
326
+
"futures-lite 2.5.0",
327
+
"piper",
328
+
]
329
+
330
+
[[package]]
331
+
name = "bluepds"
332
+
version = "0.0.0"
333
+
dependencies = [
334
+
"anyhow",
335
+
"axum",
336
+
"azure_core",
337
+
"azure_identity",
338
+
"serde",
339
+
"serde_json",
340
+
"tokio",
341
+
"tower-http",
342
+
"tracing",
343
+
"tracing-subscriber",
344
+
]
345
+
346
+
[[package]]
347
+
name = "bumpalo"
348
+
version = "3.16.0"
349
+
source = "registry+https://github.com/rust-lang/crates.io-index"
350
+
checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
351
+
352
+
[[package]]
353
+
name = "byteorder"
354
+
version = "1.5.0"
355
+
source = "registry+https://github.com/rust-lang/crates.io-index"
356
+
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
357
+
358
+
[[package]]
359
+
name = "bytes"
360
+
version = "1.8.0"
361
+
source = "registry+https://github.com/rust-lang/crates.io-index"
362
+
checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da"
363
+
364
+
[[package]]
365
+
name = "cc"
366
+
version = "1.1.37"
367
+
source = "registry+https://github.com/rust-lang/crates.io-index"
368
+
checksum = "40545c26d092346d8a8dab71ee48e7685a7a9cba76e634790c215b41a4a7b4cf"
369
+
dependencies = [
370
+
"shlex",
371
+
]
372
+
373
+
[[package]]
374
+
name = "cfg-if"
375
+
version = "1.0.0"
376
+
source = "registry+https://github.com/rust-lang/crates.io-index"
377
+
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
378
+
379
+
[[package]]
380
+
name = "chrono"
381
+
version = "0.4.38"
382
+
source = "registry+https://github.com/rust-lang/crates.io-index"
383
+
checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
384
+
dependencies = [
385
+
"android-tzdata",
386
+
"iana-time-zone",
387
+
"js-sys",
388
+
"num-traits",
389
+
"serde",
390
+
"wasm-bindgen",
391
+
"windows-targets",
392
+
]
393
+
394
+
[[package]]
395
+
name = "concurrent-queue"
396
+
version = "2.5.0"
397
+
source = "registry+https://github.com/rust-lang/crates.io-index"
398
+
checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
399
+
dependencies = [
400
+
"crossbeam-utils",
401
+
]
402
+
403
+
[[package]]
404
+
name = "const_fn"
405
+
version = "0.4.10"
406
+
source = "registry+https://github.com/rust-lang/crates.io-index"
407
+
checksum = "373e9fafaa20882876db20562275ff58d50e0caa2590077fe7ce7bef90211d0d"
408
+
409
+
[[package]]
410
+
name = "core-foundation"
411
+
version = "0.9.4"
412
+
source = "registry+https://github.com/rust-lang/crates.io-index"
413
+
checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
414
+
dependencies = [
415
+
"core-foundation-sys",
416
+
"libc",
417
+
]
418
+
419
+
[[package]]
420
+
name = "core-foundation-sys"
421
+
version = "0.8.7"
422
+
source = "registry+https://github.com/rust-lang/crates.io-index"
423
+
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
424
+
425
+
[[package]]
426
+
name = "cpufeatures"
427
+
version = "0.2.14"
428
+
source = "registry+https://github.com/rust-lang/crates.io-index"
429
+
checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0"
430
+
dependencies = [
431
+
"libc",
432
+
]
433
+
434
+
[[package]]
435
+
name = "crossbeam-utils"
436
+
version = "0.8.20"
437
+
source = "registry+https://github.com/rust-lang/crates.io-index"
438
+
checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
439
+
440
+
[[package]]
441
+
name = "crypto-common"
442
+
version = "0.1.6"
443
+
source = "registry+https://github.com/rust-lang/crates.io-index"
444
+
checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
445
+
dependencies = [
446
+
"generic-array",
447
+
"typenum",
448
+
]
449
+
450
+
[[package]]
451
+
name = "deranged"
452
+
version = "0.3.11"
453
+
source = "registry+https://github.com/rust-lang/crates.io-index"
454
+
checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
455
+
dependencies = [
456
+
"powerfmt",
457
+
"serde",
458
+
]
459
+
460
+
[[package]]
461
+
name = "digest"
462
+
version = "0.10.7"
463
+
source = "registry+https://github.com/rust-lang/crates.io-index"
464
+
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
465
+
dependencies = [
466
+
"block-buffer",
467
+
"crypto-common",
468
+
]
469
+
470
+
[[package]]
471
+
name = "dyn-clone"
472
+
version = "1.0.17"
473
+
source = "registry+https://github.com/rust-lang/crates.io-index"
474
+
checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125"
475
+
476
+
[[package]]
477
+
name = "errno"
478
+
version = "0.3.9"
479
+
source = "registry+https://github.com/rust-lang/crates.io-index"
480
+
checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
481
+
dependencies = [
482
+
"libc",
483
+
"windows-sys 0.52.0",
484
+
]
485
+
486
+
[[package]]
487
+
name = "event-listener"
488
+
version = "2.5.3"
489
+
source = "registry+https://github.com/rust-lang/crates.io-index"
490
+
checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
491
+
492
+
[[package]]
493
+
name = "event-listener"
494
+
version = "5.3.1"
495
+
source = "registry+https://github.com/rust-lang/crates.io-index"
496
+
checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba"
497
+
dependencies = [
498
+
"concurrent-queue",
499
+
"parking",
500
+
"pin-project-lite",
501
+
]
502
+
503
+
[[package]]
504
+
name = "event-listener-strategy"
505
+
version = "0.5.2"
506
+
source = "registry+https://github.com/rust-lang/crates.io-index"
507
+
checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
508
+
dependencies = [
509
+
"event-listener 5.3.1",
510
+
"pin-project-lite",
511
+
]
512
+
513
+
[[package]]
514
+
name = "fastrand"
515
+
version = "1.9.0"
516
+
source = "registry+https://github.com/rust-lang/crates.io-index"
517
+
checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
518
+
dependencies = [
519
+
"instant",
520
+
]
521
+
522
+
[[package]]
523
+
name = "fastrand"
524
+
version = "2.2.0"
525
+
source = "registry+https://github.com/rust-lang/crates.io-index"
526
+
checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4"
527
+
528
+
[[package]]
529
+
name = "fnv"
530
+
version = "1.0.7"
531
+
source = "registry+https://github.com/rust-lang/crates.io-index"
532
+
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
533
+
534
+
[[package]]
535
+
name = "foreign-types"
536
+
version = "0.3.2"
537
+
source = "registry+https://github.com/rust-lang/crates.io-index"
538
+
checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
539
+
dependencies = [
540
+
"foreign-types-shared",
541
+
]
542
+
543
+
[[package]]
544
+
name = "foreign-types-shared"
545
+
version = "0.1.1"
546
+
source = "registry+https://github.com/rust-lang/crates.io-index"
547
+
checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
548
+
549
+
[[package]]
550
+
name = "form_urlencoded"
551
+
version = "1.2.1"
552
+
source = "registry+https://github.com/rust-lang/crates.io-index"
553
+
checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
554
+
dependencies = [
555
+
"percent-encoding",
556
+
]
557
+
558
+
[[package]]
559
+
name = "futures"
560
+
version = "0.3.31"
561
+
source = "registry+https://github.com/rust-lang/crates.io-index"
562
+
checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876"
563
+
dependencies = [
564
+
"futures-channel",
565
+
"futures-core",
566
+
"futures-executor",
567
+
"futures-io",
568
+
"futures-sink",
569
+
"futures-task",
570
+
"futures-util",
571
+
]
572
+
573
+
[[package]]
574
+
name = "futures-channel"
575
+
version = "0.3.31"
576
+
source = "registry+https://github.com/rust-lang/crates.io-index"
577
+
checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10"
578
+
dependencies = [
579
+
"futures-core",
580
+
"futures-sink",
581
+
]
582
+
583
+
[[package]]
584
+
name = "futures-core"
585
+
version = "0.3.31"
586
+
source = "registry+https://github.com/rust-lang/crates.io-index"
587
+
checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
588
+
589
+
[[package]]
590
+
name = "futures-executor"
591
+
version = "0.3.31"
592
+
source = "registry+https://github.com/rust-lang/crates.io-index"
593
+
checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f"
594
+
dependencies = [
595
+
"futures-core",
596
+
"futures-task",
597
+
"futures-util",
598
+
]
599
+
600
+
[[package]]
601
+
name = "futures-io"
602
+
version = "0.3.31"
603
+
source = "registry+https://github.com/rust-lang/crates.io-index"
604
+
checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6"
605
+
606
+
[[package]]
607
+
name = "futures-lite"
608
+
version = "1.13.0"
609
+
source = "registry+https://github.com/rust-lang/crates.io-index"
610
+
checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
611
+
dependencies = [
612
+
"fastrand 1.9.0",
613
+
"futures-core",
614
+
"futures-io",
615
+
"memchr",
616
+
"parking",
617
+
"pin-project-lite",
618
+
"waker-fn",
619
+
]
620
+
621
+
[[package]]
622
+
name = "futures-lite"
623
+
version = "2.5.0"
624
+
source = "registry+https://github.com/rust-lang/crates.io-index"
625
+
checksum = "cef40d21ae2c515b51041df9ed313ed21e572df340ea58a922a0aefe7e8891a1"
626
+
dependencies = [
627
+
"fastrand 2.2.0",
628
+
"futures-core",
629
+
"futures-io",
630
+
"parking",
631
+
"pin-project-lite",
632
+
]
633
+
634
+
[[package]]
635
+
name = "futures-macro"
636
+
version = "0.3.31"
637
+
source = "registry+https://github.com/rust-lang/crates.io-index"
638
+
checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
639
+
dependencies = [
640
+
"proc-macro2",
641
+
"quote",
642
+
"syn",
643
+
]
644
+
645
+
[[package]]
646
+
name = "futures-sink"
647
+
version = "0.3.31"
648
+
source = "registry+https://github.com/rust-lang/crates.io-index"
649
+
checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7"
650
+
651
+
[[package]]
652
+
name = "futures-task"
653
+
version = "0.3.31"
654
+
source = "registry+https://github.com/rust-lang/crates.io-index"
655
+
checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988"
656
+
657
+
[[package]]
658
+
name = "futures-util"
659
+
version = "0.3.31"
660
+
source = "registry+https://github.com/rust-lang/crates.io-index"
661
+
checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81"
662
+
dependencies = [
663
+
"futures-channel",
664
+
"futures-core",
665
+
"futures-io",
666
+
"futures-macro",
667
+
"futures-sink",
668
+
"futures-task",
669
+
"memchr",
670
+
"pin-project-lite",
671
+
"pin-utils",
672
+
"slab",
673
+
]
674
+
675
+
[[package]]
676
+
name = "generic-array"
677
+
version = "0.14.7"
678
+
source = "registry+https://github.com/rust-lang/crates.io-index"
679
+
checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
680
+
dependencies = [
681
+
"typenum",
682
+
"version_check",
683
+
]
684
+
685
+
[[package]]
686
+
name = "getrandom"
687
+
version = "0.1.16"
688
+
source = "registry+https://github.com/rust-lang/crates.io-index"
689
+
checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
690
+
dependencies = [
691
+
"cfg-if",
692
+
"libc",
693
+
"wasi 0.9.0+wasi-snapshot-preview1",
694
+
]
695
+
696
+
[[package]]
697
+
name = "getrandom"
698
+
version = "0.2.15"
699
+
source = "registry+https://github.com/rust-lang/crates.io-index"
700
+
checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
701
+
dependencies = [
702
+
"cfg-if",
703
+
"js-sys",
704
+
"libc",
705
+
"wasi 0.11.0+wasi-snapshot-preview1",
706
+
"wasm-bindgen",
707
+
]
708
+
709
+
[[package]]
710
+
name = "gimli"
711
+
version = "0.31.1"
712
+
source = "registry+https://github.com/rust-lang/crates.io-index"
713
+
checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f"
714
+
715
+
[[package]]
716
+
name = "hermit-abi"
717
+
version = "0.3.9"
718
+
source = "registry+https://github.com/rust-lang/crates.io-index"
719
+
checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
720
+
721
+
[[package]]
722
+
name = "hermit-abi"
723
+
version = "0.4.0"
724
+
source = "registry+https://github.com/rust-lang/crates.io-index"
725
+
checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
726
+
727
+
[[package]]
728
+
name = "http"
729
+
version = "0.2.12"
730
+
source = "registry+https://github.com/rust-lang/crates.io-index"
731
+
checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
732
+
dependencies = [
733
+
"bytes",
734
+
"fnv",
735
+
"itoa",
736
+
]
737
+
738
+
[[package]]
739
+
name = "http"
740
+
version = "1.1.0"
741
+
source = "registry+https://github.com/rust-lang/crates.io-index"
742
+
checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
743
+
dependencies = [
744
+
"bytes",
745
+
"fnv",
746
+
"itoa",
747
+
]
748
+
749
+
[[package]]
750
+
name = "http-body"
751
+
version = "1.0.1"
752
+
source = "registry+https://github.com/rust-lang/crates.io-index"
753
+
checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184"
754
+
dependencies = [
755
+
"bytes",
756
+
"http 1.1.0",
757
+
]
758
+
759
+
[[package]]
760
+
name = "http-body-util"
761
+
version = "0.1.2"
762
+
source = "registry+https://github.com/rust-lang/crates.io-index"
763
+
checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f"
764
+
dependencies = [
765
+
"bytes",
766
+
"futures-util",
767
+
"http 1.1.0",
768
+
"http-body",
769
+
"pin-project-lite",
770
+
]
771
+
772
+
[[package]]
773
+
name = "http-range-header"
774
+
version = "0.4.1"
775
+
source = "registry+https://github.com/rust-lang/crates.io-index"
776
+
checksum = "08a397c49fec283e3d6211adbe480be95aae5f304cfb923e9970e08956d5168a"
777
+
778
+
[[package]]
779
+
name = "http-types"
780
+
version = "2.12.0"
781
+
source = "registry+https://github.com/rust-lang/crates.io-index"
782
+
checksum = "6e9b187a72d63adbfba487f48095306ac823049cb504ee195541e91c7775f5ad"
783
+
dependencies = [
784
+
"anyhow",
785
+
"async-channel 1.9.0",
786
+
"base64 0.13.1",
787
+
"futures-lite 1.13.0",
788
+
"infer",
789
+
"pin-project-lite",
790
+
"rand 0.7.3",
791
+
"serde",
792
+
"serde_json",
793
+
"serde_qs",
794
+
"serde_urlencoded",
795
+
"url",
796
+
]
797
+
798
+
[[package]]
799
+
name = "httparse"
800
+
version = "1.9.5"
801
+
source = "registry+https://github.com/rust-lang/crates.io-index"
802
+
checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946"
803
+
804
+
[[package]]
805
+
name = "httpdate"
806
+
version = "1.0.3"
807
+
source = "registry+https://github.com/rust-lang/crates.io-index"
808
+
checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
809
+
810
+
[[package]]
811
+
name = "hyper"
812
+
version = "1.5.0"
813
+
source = "registry+https://github.com/rust-lang/crates.io-index"
814
+
checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a"
815
+
dependencies = [
816
+
"bytes",
817
+
"futures-channel",
818
+
"futures-util",
819
+
"http 1.1.0",
820
+
"http-body",
821
+
"httparse",
822
+
"httpdate",
823
+
"itoa",
824
+
"pin-project-lite",
825
+
"smallvec",
826
+
"tokio",
827
+
"want",
828
+
]
829
+
830
+
[[package]]
831
+
name = "hyper-tls"
832
+
version = "0.6.0"
833
+
source = "registry+https://github.com/rust-lang/crates.io-index"
834
+
checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
835
+
dependencies = [
836
+
"bytes",
837
+
"http-body-util",
838
+
"hyper",
839
+
"hyper-util",
840
+
"native-tls",
841
+
"tokio",
842
+
"tokio-native-tls",
843
+
"tower-service",
844
+
]
845
+
846
+
[[package]]
847
+
name = "hyper-util"
848
+
version = "0.1.10"
849
+
source = "registry+https://github.com/rust-lang/crates.io-index"
850
+
checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
851
+
dependencies = [
852
+
"bytes",
853
+
"futures-channel",
854
+
"futures-util",
855
+
"http 1.1.0",
856
+
"http-body",
857
+
"hyper",
858
+
"pin-project-lite",
859
+
"socket2",
860
+
"tokio",
861
+
"tower-service",
862
+
"tracing",
863
+
]
864
+
865
+
[[package]]
866
+
name = "iana-time-zone"
867
+
version = "0.1.61"
868
+
source = "registry+https://github.com/rust-lang/crates.io-index"
869
+
checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220"
870
+
dependencies = [
871
+
"android_system_properties",
872
+
"core-foundation-sys",
873
+
"iana-time-zone-haiku",
874
+
"js-sys",
875
+
"wasm-bindgen",
876
+
"windows-core",
877
+
]
878
+
879
+
[[package]]
880
+
name = "iana-time-zone-haiku"
881
+
version = "0.1.2"
882
+
source = "registry+https://github.com/rust-lang/crates.io-index"
883
+
checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
884
+
dependencies = [
885
+
"cc",
886
+
]
887
+
888
+
[[package]]
889
+
name = "idna"
890
+
version = "0.5.0"
891
+
source = "registry+https://github.com/rust-lang/crates.io-index"
892
+
checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
893
+
dependencies = [
894
+
"unicode-bidi",
895
+
"unicode-normalization",
896
+
]
897
+
898
+
[[package]]
899
+
name = "infer"
900
+
version = "0.2.3"
901
+
source = "registry+https://github.com/rust-lang/crates.io-index"
902
+
checksum = "64e9829a50b42bb782c1df523f78d332fe371b10c661e78b7a3c34b0198e9fac"
903
+
904
+
[[package]]
905
+
name = "instant"
906
+
version = "0.1.13"
907
+
source = "registry+https://github.com/rust-lang/crates.io-index"
908
+
checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222"
909
+
dependencies = [
910
+
"cfg-if",
911
+
]
912
+
913
+
[[package]]
914
+
name = "ipnet"
915
+
version = "2.10.1"
916
+
source = "registry+https://github.com/rust-lang/crates.io-index"
917
+
checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708"
918
+
919
+
[[package]]
920
+
name = "itoa"
921
+
version = "1.0.11"
922
+
source = "registry+https://github.com/rust-lang/crates.io-index"
923
+
checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
924
+
925
+
[[package]]
926
+
name = "js-sys"
927
+
version = "0.3.72"
928
+
source = "registry+https://github.com/rust-lang/crates.io-index"
929
+
checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9"
930
+
dependencies = [
931
+
"wasm-bindgen",
932
+
]
933
+
934
+
[[package]]
935
+
name = "lazy_static"
936
+
version = "1.5.0"
937
+
source = "registry+https://github.com/rust-lang/crates.io-index"
938
+
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
939
+
940
+
[[package]]
941
+
name = "libc"
942
+
version = "0.2.162"
943
+
source = "registry+https://github.com/rust-lang/crates.io-index"
944
+
checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398"
945
+
946
+
[[package]]
947
+
name = "linux-raw-sys"
948
+
version = "0.4.14"
949
+
source = "registry+https://github.com/rust-lang/crates.io-index"
950
+
checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
951
+
952
+
[[package]]
953
+
name = "log"
954
+
version = "0.4.22"
955
+
source = "registry+https://github.com/rust-lang/crates.io-index"
956
+
checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
957
+
958
+
[[package]]
959
+
name = "matchit"
960
+
version = "0.7.3"
961
+
source = "registry+https://github.com/rust-lang/crates.io-index"
962
+
checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
963
+
964
+
[[package]]
965
+
name = "memchr"
966
+
version = "2.7.4"
967
+
source = "registry+https://github.com/rust-lang/crates.io-index"
968
+
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
969
+
970
+
[[package]]
971
+
name = "mime"
972
+
version = "0.3.17"
973
+
source = "registry+https://github.com/rust-lang/crates.io-index"
974
+
checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
975
+
976
+
[[package]]
977
+
name = "mime_guess"
978
+
version = "2.0.5"
979
+
source = "registry+https://github.com/rust-lang/crates.io-index"
980
+
checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
981
+
dependencies = [
982
+
"mime",
983
+
"unicase",
984
+
]
985
+
986
+
[[package]]
987
+
name = "miniz_oxide"
988
+
version = "0.8.0"
989
+
source = "registry+https://github.com/rust-lang/crates.io-index"
990
+
checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1"
991
+
dependencies = [
992
+
"adler2",
993
+
]
994
+
995
+
[[package]]
996
+
name = "mio"
997
+
version = "1.0.2"
998
+
source = "registry+https://github.com/rust-lang/crates.io-index"
999
+
checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec"
1000
+
dependencies = [
1001
+
"hermit-abi 0.3.9",
1002
+
"libc",
1003
+
"wasi 0.11.0+wasi-snapshot-preview1",
1004
+
"windows-sys 0.52.0",
1005
+
]
1006
+
1007
+
[[package]]
1008
+
name = "native-tls"
1009
+
version = "0.2.12"
1010
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1011
+
checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466"
1012
+
dependencies = [
1013
+
"libc",
1014
+
"log",
1015
+
"openssl",
1016
+
"openssl-probe",
1017
+
"openssl-sys",
1018
+
"schannel",
1019
+
"security-framework",
1020
+
"security-framework-sys",
1021
+
"tempfile",
1022
+
]
1023
+
1024
+
[[package]]
1025
+
name = "nu-ansi-term"
1026
+
version = "0.46.0"
1027
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1028
+
checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
1029
+
dependencies = [
1030
+
"overload",
1031
+
"winapi",
1032
+
]
1033
+
1034
+
[[package]]
1035
+
name = "num-conv"
1036
+
version = "0.1.0"
1037
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1038
+
checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
1039
+
1040
+
[[package]]
1041
+
name = "num-traits"
1042
+
version = "0.2.19"
1043
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1044
+
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
1045
+
dependencies = [
1046
+
"autocfg",
1047
+
]
1048
+
1049
+
[[package]]
1050
+
name = "num_threads"
1051
+
version = "0.1.7"
1052
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1053
+
checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
1054
+
dependencies = [
1055
+
"libc",
1056
+
]
1057
+
1058
+
[[package]]
1059
+
name = "oauth2"
1060
+
version = "4.4.2"
1061
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1062
+
checksum = "c38841cdd844847e3e7c8d29cef9dcfed8877f8f56f9071f77843ecf3baf937f"
1063
+
dependencies = [
1064
+
"base64 0.13.1",
1065
+
"chrono",
1066
+
"getrandom 0.2.15",
1067
+
"http 0.2.12",
1068
+
"rand 0.8.5",
1069
+
"serde",
1070
+
"serde_json",
1071
+
"serde_path_to_error",
1072
+
"sha2",
1073
+
"thiserror",
1074
+
"url",
1075
+
]
1076
+
1077
+
[[package]]
1078
+
name = "object"
1079
+
version = "0.36.5"
1080
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1081
+
checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e"
1082
+
dependencies = [
1083
+
"memchr",
1084
+
]
1085
+
1086
+
[[package]]
1087
+
name = "once_cell"
1088
+
version = "1.20.2"
1089
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1090
+
checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
1091
+
1092
+
[[package]]
1093
+
name = "openssl"
1094
+
version = "0.10.66"
1095
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1096
+
checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1"
1097
+
dependencies = [
1098
+
"bitflags",
1099
+
"cfg-if",
1100
+
"foreign-types",
1101
+
"libc",
1102
+
"once_cell",
1103
+
"openssl-macros",
1104
+
"openssl-sys",
1105
+
]
1106
+
1107
+
[[package]]
1108
+
name = "openssl-macros"
1109
+
version = "0.1.1"
1110
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1111
+
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
1112
+
dependencies = [
1113
+
"proc-macro2",
1114
+
"quote",
1115
+
"syn",
1116
+
]
1117
+
1118
+
[[package]]
1119
+
name = "openssl-probe"
1120
+
version = "0.1.5"
1121
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1122
+
checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
1123
+
1124
+
[[package]]
1125
+
name = "openssl-sys"
1126
+
version = "0.9.103"
1127
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1128
+
checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6"
1129
+
dependencies = [
1130
+
"cc",
1131
+
"libc",
1132
+
"pkg-config",
1133
+
"vcpkg",
1134
+
]
1135
+
1136
+
[[package]]
1137
+
name = "overload"
1138
+
version = "0.1.1"
1139
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1140
+
checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
1141
+
1142
+
[[package]]
1143
+
name = "parking"
1144
+
version = "2.2.1"
1145
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1146
+
checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
1147
+
1148
+
[[package]]
1149
+
name = "paste"
1150
+
version = "1.0.15"
1151
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1152
+
checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
1153
+
1154
+
[[package]]
1155
+
name = "percent-encoding"
1156
+
version = "2.3.1"
1157
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1158
+
checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
1159
+
1160
+
[[package]]
1161
+
name = "pin-project"
1162
+
version = "1.1.7"
1163
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1164
+
checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95"
1165
+
dependencies = [
1166
+
"pin-project-internal",
1167
+
]
1168
+
1169
+
[[package]]
1170
+
name = "pin-project-internal"
1171
+
version = "1.1.7"
1172
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1173
+
checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c"
1174
+
dependencies = [
1175
+
"proc-macro2",
1176
+
"quote",
1177
+
"syn",
1178
+
]
1179
+
1180
+
[[package]]
1181
+
name = "pin-project-lite"
1182
+
version = "0.2.15"
1183
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1184
+
checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff"
1185
+
1186
+
[[package]]
1187
+
name = "pin-utils"
1188
+
version = "0.1.0"
1189
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1190
+
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
1191
+
1192
+
[[package]]
1193
+
name = "piper"
1194
+
version = "0.2.4"
1195
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1196
+
checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066"
1197
+
dependencies = [
1198
+
"atomic-waker",
1199
+
"fastrand 2.2.0",
1200
+
"futures-io",
1201
+
]
1202
+
1203
+
[[package]]
1204
+
name = "pkg-config"
1205
+
version = "0.3.31"
1206
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1207
+
checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
1208
+
1209
+
[[package]]
1210
+
name = "polling"
1211
+
version = "3.7.3"
1212
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1213
+
checksum = "cc2790cd301dec6cd3b7a025e4815cf825724a51c98dccfe6a3e55f05ffb6511"
1214
+
dependencies = [
1215
+
"cfg-if",
1216
+
"concurrent-queue",
1217
+
"hermit-abi 0.4.0",
1218
+
"pin-project-lite",
1219
+
"rustix",
1220
+
"tracing",
1221
+
"windows-sys 0.59.0",
1222
+
]
1223
+
1224
+
[[package]]
1225
+
name = "powerfmt"
1226
+
version = "0.2.0"
1227
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1228
+
checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
1229
+
1230
+
[[package]]
1231
+
name = "ppv-lite86"
1232
+
version = "0.2.20"
1233
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1234
+
checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04"
1235
+
dependencies = [
1236
+
"zerocopy",
1237
+
]
1238
+
1239
+
[[package]]
1240
+
name = "proc-macro2"
1241
+
version = "1.0.92"
1242
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1243
+
checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0"
1244
+
dependencies = [
1245
+
"unicode-ident",
1246
+
]
1247
+
1248
+
[[package]]
1249
+
name = "quote"
1250
+
version = "1.0.37"
1251
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1252
+
checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
1253
+
dependencies = [
1254
+
"proc-macro2",
1255
+
]
1256
+
1257
+
[[package]]
1258
+
name = "rand"
1259
+
version = "0.7.3"
1260
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1261
+
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
1262
+
dependencies = [
1263
+
"getrandom 0.1.16",
1264
+
"libc",
1265
+
"rand_chacha 0.2.2",
1266
+
"rand_core 0.5.1",
1267
+
"rand_hc",
1268
+
]
1269
+
1270
+
[[package]]
1271
+
name = "rand"
1272
+
version = "0.8.5"
1273
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1274
+
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
1275
+
dependencies = [
1276
+
"libc",
1277
+
"rand_chacha 0.3.1",
1278
+
"rand_core 0.6.4",
1279
+
]
1280
+
1281
+
[[package]]
1282
+
name = "rand_chacha"
1283
+
version = "0.2.2"
1284
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1285
+
checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
1286
+
dependencies = [
1287
+
"ppv-lite86",
1288
+
"rand_core 0.5.1",
1289
+
]
1290
+
1291
+
[[package]]
1292
+
name = "rand_chacha"
1293
+
version = "0.3.1"
1294
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1295
+
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
1296
+
dependencies = [
1297
+
"ppv-lite86",
1298
+
"rand_core 0.6.4",
1299
+
]
1300
+
1301
+
[[package]]
1302
+
name = "rand_core"
1303
+
version = "0.5.1"
1304
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1305
+
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
1306
+
dependencies = [
1307
+
"getrandom 0.1.16",
1308
+
]
1309
+
1310
+
[[package]]
1311
+
name = "rand_core"
1312
+
version = "0.6.4"
1313
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1314
+
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
1315
+
dependencies = [
1316
+
"getrandom 0.2.15",
1317
+
]
1318
+
1319
+
[[package]]
1320
+
name = "rand_hc"
1321
+
version = "0.2.0"
1322
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1323
+
checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
1324
+
dependencies = [
1325
+
"rand_core 0.5.1",
1326
+
]
1327
+
1328
+
[[package]]
1329
+
name = "reqwest"
1330
+
version = "0.12.9"
1331
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1332
+
checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f"
1333
+
dependencies = [
1334
+
"base64 0.22.1",
1335
+
"bytes",
1336
+
"futures-core",
1337
+
"futures-util",
1338
+
"http 1.1.0",
1339
+
"http-body",
1340
+
"http-body-util",
1341
+
"hyper",
1342
+
"hyper-tls",
1343
+
"hyper-util",
1344
+
"ipnet",
1345
+
"js-sys",
1346
+
"log",
1347
+
"mime",
1348
+
"native-tls",
1349
+
"once_cell",
1350
+
"percent-encoding",
1351
+
"pin-project-lite",
1352
+
"rustls-pemfile",
1353
+
"serde",
1354
+
"serde_json",
1355
+
"serde_urlencoded",
1356
+
"sync_wrapper 1.0.1",
1357
+
"tokio",
1358
+
"tokio-native-tls",
1359
+
"tokio-util",
1360
+
"tower-service",
1361
+
"url",
1362
+
"wasm-bindgen",
1363
+
"wasm-bindgen-futures",
1364
+
"wasm-streams",
1365
+
"web-sys",
1366
+
"windows-registry",
1367
+
]
1368
+
1369
+
[[package]]
1370
+
name = "rustc-demangle"
1371
+
version = "0.1.24"
1372
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1373
+
checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
1374
+
1375
+
[[package]]
1376
+
name = "rustc_version"
1377
+
version = "0.4.1"
1378
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1379
+
checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
1380
+
dependencies = [
1381
+
"semver",
1382
+
]
1383
+
1384
+
[[package]]
1385
+
name = "rustix"
1386
+
version = "0.38.37"
1387
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1388
+
checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811"
1389
+
dependencies = [
1390
+
"bitflags",
1391
+
"errno",
1392
+
"libc",
1393
+
"linux-raw-sys",
1394
+
"windows-sys 0.52.0",
1395
+
]
1396
+
1397
+
[[package]]
1398
+
name = "rustls-pemfile"
1399
+
version = "2.2.0"
1400
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1401
+
checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50"
1402
+
dependencies = [
1403
+
"rustls-pki-types",
1404
+
]
1405
+
1406
+
[[package]]
1407
+
name = "rustls-pki-types"
1408
+
version = "1.10.0"
1409
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1410
+
checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b"
1411
+
1412
+
[[package]]
1413
+
name = "rustversion"
1414
+
version = "1.0.18"
1415
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1416
+
checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248"
1417
+
1418
+
[[package]]
1419
+
name = "ryu"
1420
+
version = "1.0.18"
1421
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1422
+
checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
1423
+
1424
+
[[package]]
1425
+
name = "schannel"
1426
+
version = "0.1.26"
1427
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1428
+
checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1"
1429
+
dependencies = [
1430
+
"windows-sys 0.59.0",
1431
+
]
1432
+
1433
+
[[package]]
1434
+
name = "security-framework"
1435
+
version = "2.11.1"
1436
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1437
+
checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
1438
+
dependencies = [
1439
+
"bitflags",
1440
+
"core-foundation",
1441
+
"core-foundation-sys",
1442
+
"libc",
1443
+
"security-framework-sys",
1444
+
]
1445
+
1446
+
[[package]]
1447
+
name = "security-framework-sys"
1448
+
version = "2.11.1"
1449
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1450
+
checksum = "75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf"
1451
+
dependencies = [
1452
+
"core-foundation-sys",
1453
+
"libc",
1454
+
]
1455
+
1456
+
[[package]]
1457
+
name = "semver"
1458
+
version = "1.0.23"
1459
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1460
+
checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
1461
+
1462
+
[[package]]
1463
+
name = "serde"
1464
+
version = "1.0.216"
1465
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1466
+
checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e"
1467
+
dependencies = [
1468
+
"serde_derive",
1469
+
]
1470
+
1471
+
[[package]]
1472
+
name = "serde_derive"
1473
+
version = "1.0.216"
1474
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1475
+
checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e"
1476
+
dependencies = [
1477
+
"proc-macro2",
1478
+
"quote",
1479
+
"syn",
1480
+
]
1481
+
1482
+
[[package]]
1483
+
name = "serde_json"
1484
+
version = "1.0.133"
1485
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1486
+
checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377"
1487
+
dependencies = [
1488
+
"itoa",
1489
+
"memchr",
1490
+
"ryu",
1491
+
"serde",
1492
+
]
1493
+
1494
+
[[package]]
1495
+
name = "serde_path_to_error"
1496
+
version = "0.1.16"
1497
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1498
+
checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6"
1499
+
dependencies = [
1500
+
"itoa",
1501
+
"serde",
1502
+
]
1503
+
1504
+
[[package]]
1505
+
name = "serde_qs"
1506
+
version = "0.8.5"
1507
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1508
+
checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6"
1509
+
dependencies = [
1510
+
"percent-encoding",
1511
+
"serde",
1512
+
"thiserror",
1513
+
]
1514
+
1515
+
[[package]]
1516
+
name = "serde_urlencoded"
1517
+
version = "0.7.1"
1518
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1519
+
checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
1520
+
dependencies = [
1521
+
"form_urlencoded",
1522
+
"itoa",
1523
+
"ryu",
1524
+
"serde",
1525
+
]
1526
+
1527
+
[[package]]
1528
+
name = "sha2"
1529
+
version = "0.10.8"
1530
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1531
+
checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
1532
+
dependencies = [
1533
+
"cfg-if",
1534
+
"cpufeatures",
1535
+
"digest",
1536
+
]
1537
+
1538
+
[[package]]
1539
+
name = "sharded-slab"
1540
+
version = "0.1.7"
1541
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1542
+
checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
1543
+
dependencies = [
1544
+
"lazy_static",
1545
+
]
1546
+
1547
+
[[package]]
1548
+
name = "shlex"
1549
+
version = "1.3.0"
1550
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1551
+
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
1552
+
1553
+
[[package]]
1554
+
name = "signal-hook-registry"
1555
+
version = "1.4.2"
1556
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1557
+
checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
1558
+
dependencies = [
1559
+
"libc",
1560
+
]
1561
+
1562
+
[[package]]
1563
+
name = "slab"
1564
+
version = "0.4.9"
1565
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1566
+
checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
1567
+
dependencies = [
1568
+
"autocfg",
1569
+
]
1570
+
1571
+
[[package]]
1572
+
name = "smallvec"
1573
+
version = "1.13.2"
1574
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1575
+
checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
1576
+
1577
+
[[package]]
1578
+
name = "socket2"
1579
+
version = "0.5.7"
1580
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1581
+
checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
1582
+
dependencies = [
1583
+
"libc",
1584
+
"windows-sys 0.52.0",
1585
+
]
1586
+
1587
+
[[package]]
1588
+
name = "syn"
1589
+
version = "2.0.90"
1590
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1591
+
checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31"
1592
+
dependencies = [
1593
+
"proc-macro2",
1594
+
"quote",
1595
+
"unicode-ident",
1596
+
]
1597
+
1598
+
[[package]]
1599
+
name = "sync_wrapper"
1600
+
version = "0.1.2"
1601
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1602
+
checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
1603
+
1604
+
[[package]]
1605
+
name = "sync_wrapper"
1606
+
version = "1.0.1"
1607
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1608
+
checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394"
1609
+
dependencies = [
1610
+
"futures-core",
1611
+
]
1612
+
1613
+
[[package]]
1614
+
name = "tempfile"
1615
+
version = "3.13.0"
1616
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1617
+
checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b"
1618
+
dependencies = [
1619
+
"cfg-if",
1620
+
"fastrand 2.2.0",
1621
+
"once_cell",
1622
+
"rustix",
1623
+
"windows-sys 0.59.0",
1624
+
]
1625
+
1626
+
[[package]]
1627
+
name = "thiserror"
1628
+
version = "1.0.69"
1629
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1630
+
checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
1631
+
dependencies = [
1632
+
"thiserror-impl",
1633
+
]
1634
+
1635
+
[[package]]
1636
+
name = "thiserror-impl"
1637
+
version = "1.0.69"
1638
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1639
+
checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
1640
+
dependencies = [
1641
+
"proc-macro2",
1642
+
"quote",
1643
+
"syn",
1644
+
]
1645
+
1646
+
[[package]]
1647
+
name = "thread_local"
1648
+
version = "1.1.8"
1649
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1650
+
checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
1651
+
dependencies = [
1652
+
"cfg-if",
1653
+
"once_cell",
1654
+
]
1655
+
1656
+
[[package]]
1657
+
name = "time"
1658
+
version = "0.3.36"
1659
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1660
+
checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
1661
+
dependencies = [
1662
+
"deranged",
1663
+
"itoa",
1664
+
"js-sys",
1665
+
"libc",
1666
+
"num-conv",
1667
+
"num_threads",
1668
+
"powerfmt",
1669
+
"serde",
1670
+
"time-core",
1671
+
"time-macros",
1672
+
]
1673
+
1674
+
[[package]]
1675
+
name = "time-core"
1676
+
version = "0.1.2"
1677
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1678
+
checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
1679
+
1680
+
[[package]]
1681
+
name = "time-macros"
1682
+
version = "0.2.18"
1683
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1684
+
checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
1685
+
dependencies = [
1686
+
"num-conv",
1687
+
"time-core",
1688
+
]
1689
+
1690
+
[[package]]
1691
+
name = "tinyvec"
1692
+
version = "1.8.0"
1693
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1694
+
checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
1695
+
dependencies = [
1696
+
"tinyvec_macros",
1697
+
]
1698
+
1699
+
[[package]]
1700
+
name = "tinyvec_macros"
1701
+
version = "0.1.1"
1702
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1703
+
checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
1704
+
1705
+
[[package]]
1706
+
name = "tokio"
1707
+
version = "1.42.0"
1708
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1709
+
checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551"
1710
+
dependencies = [
1711
+
"backtrace",
1712
+
"bytes",
1713
+
"libc",
1714
+
"mio",
1715
+
"pin-project-lite",
1716
+
"socket2",
1717
+
"tokio-macros",
1718
+
"windows-sys 0.52.0",
1719
+
]
1720
+
1721
+
[[package]]
1722
+
name = "tokio-macros"
1723
+
version = "2.4.0"
1724
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1725
+
checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752"
1726
+
dependencies = [
1727
+
"proc-macro2",
1728
+
"quote",
1729
+
"syn",
1730
+
]
1731
+
1732
+
[[package]]
1733
+
name = "tokio-native-tls"
1734
+
version = "0.3.1"
1735
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1736
+
checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
1737
+
dependencies = [
1738
+
"native-tls",
1739
+
"tokio",
1740
+
]
1741
+
1742
+
[[package]]
1743
+
name = "tokio-util"
1744
+
version = "0.7.12"
1745
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1746
+
checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a"
1747
+
dependencies = [
1748
+
"bytes",
1749
+
"futures-core",
1750
+
"futures-sink",
1751
+
"pin-project-lite",
1752
+
"tokio",
1753
+
]
1754
+
1755
+
[[package]]
1756
+
name = "tower"
1757
+
version = "0.5.1"
1758
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1759
+
checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f"
1760
+
dependencies = [
1761
+
"futures-core",
1762
+
"futures-util",
1763
+
"pin-project-lite",
1764
+
"sync_wrapper 0.1.2",
1765
+
"tokio",
1766
+
"tower-layer",
1767
+
"tower-service",
1768
+
"tracing",
1769
+
]
1770
+
1771
+
[[package]]
1772
+
name = "tower-http"
1773
+
version = "0.6.2"
1774
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1775
+
checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697"
1776
+
dependencies = [
1777
+
"bitflags",
1778
+
"bytes",
1779
+
"futures-util",
1780
+
"http 1.1.0",
1781
+
"http-body",
1782
+
"http-body-util",
1783
+
"http-range-header",
1784
+
"httpdate",
1785
+
"mime",
1786
+
"mime_guess",
1787
+
"percent-encoding",
1788
+
"pin-project-lite",
1789
+
"tokio",
1790
+
"tokio-util",
1791
+
"tower-layer",
1792
+
"tower-service",
1793
+
"tracing",
1794
+
]
1795
+
1796
+
[[package]]
1797
+
name = "tower-layer"
1798
+
version = "0.3.3"
1799
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1800
+
checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e"
1801
+
1802
+
[[package]]
1803
+
name = "tower-service"
1804
+
version = "0.3.3"
1805
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1806
+
checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
1807
+
1808
+
[[package]]
1809
+
name = "tracing"
1810
+
version = "0.1.41"
1811
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1812
+
checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
1813
+
dependencies = [
1814
+
"log",
1815
+
"pin-project-lite",
1816
+
"tracing-attributes",
1817
+
"tracing-core",
1818
+
]
1819
+
1820
+
[[package]]
1821
+
name = "tracing-attributes"
1822
+
version = "0.1.28"
1823
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1824
+
checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
1825
+
dependencies = [
1826
+
"proc-macro2",
1827
+
"quote",
1828
+
"syn",
1829
+
]
1830
+
1831
+
[[package]]
1832
+
name = "tracing-core"
1833
+
version = "0.1.33"
1834
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1835
+
checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
1836
+
dependencies = [
1837
+
"once_cell",
1838
+
"valuable",
1839
+
]
1840
+
1841
+
[[package]]
1842
+
name = "tracing-log"
1843
+
version = "0.2.0"
1844
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1845
+
checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
1846
+
dependencies = [
1847
+
"log",
1848
+
"once_cell",
1849
+
"tracing-core",
1850
+
]
1851
+
1852
+
[[package]]
1853
+
name = "tracing-subscriber"
1854
+
version = "0.3.19"
1855
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1856
+
checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008"
1857
+
dependencies = [
1858
+
"nu-ansi-term",
1859
+
"sharded-slab",
1860
+
"smallvec",
1861
+
"thread_local",
1862
+
"tracing-core",
1863
+
"tracing-log",
1864
+
]
1865
+
1866
+
[[package]]
1867
+
name = "try-lock"
1868
+
version = "0.2.5"
1869
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1870
+
checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
1871
+
1872
+
[[package]]
1873
+
name = "typenum"
1874
+
version = "1.17.0"
1875
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1876
+
checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
1877
+
1878
+
[[package]]
1879
+
name = "tz-rs"
1880
+
version = "0.6.14"
1881
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1882
+
checksum = "33851b15c848fad2cf4b105c6bb66eb9512b6f6c44a4b13f57c53c73c707e2b4"
1883
+
dependencies = [
1884
+
"const_fn",
1885
+
]
1886
+
1887
+
[[package]]
1888
+
name = "unicase"
1889
+
version = "2.8.0"
1890
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1891
+
checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df"
1892
+
1893
+
[[package]]
1894
+
name = "unicode-bidi"
1895
+
version = "0.3.17"
1896
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1897
+
checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893"
1898
+
1899
+
[[package]]
1900
+
name = "unicode-ident"
1901
+
version = "1.0.13"
1902
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1903
+
checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
1904
+
1905
+
[[package]]
1906
+
name = "unicode-normalization"
1907
+
version = "0.1.24"
1908
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1909
+
checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956"
1910
+
dependencies = [
1911
+
"tinyvec",
1912
+
]
1913
+
1914
+
[[package]]
1915
+
name = "url"
1916
+
version = "2.5.2"
1917
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1918
+
checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c"
1919
+
dependencies = [
1920
+
"form_urlencoded",
1921
+
"idna",
1922
+
"percent-encoding",
1923
+
"serde",
1924
+
]
1925
+
1926
+
[[package]]
1927
+
name = "uuid"
1928
+
version = "1.11.0"
1929
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1930
+
checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a"
1931
+
dependencies = [
1932
+
"getrandom 0.2.15",
1933
+
]
1934
+
1935
+
[[package]]
1936
+
name = "valuable"
1937
+
version = "0.1.0"
1938
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1939
+
checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
1940
+
1941
+
[[package]]
1942
+
name = "vcpkg"
1943
+
version = "0.2.15"
1944
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1945
+
checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
1946
+
1947
+
[[package]]
1948
+
name = "version_check"
1949
+
version = "0.9.5"
1950
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1951
+
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
1952
+
1953
+
[[package]]
1954
+
name = "waker-fn"
1955
+
version = "1.2.0"
1956
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1957
+
checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7"
1958
+
1959
+
[[package]]
1960
+
name = "want"
1961
+
version = "0.3.1"
1962
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1963
+
checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
1964
+
dependencies = [
1965
+
"try-lock",
1966
+
]
1967
+
1968
+
[[package]]
1969
+
name = "wasi"
1970
+
version = "0.9.0+wasi-snapshot-preview1"
1971
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1972
+
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
1973
+
1974
+
[[package]]
1975
+
name = "wasi"
1976
+
version = "0.11.0+wasi-snapshot-preview1"
1977
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1978
+
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
1979
+
1980
+
[[package]]
1981
+
name = "wasm-bindgen"
1982
+
version = "0.2.95"
1983
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1984
+
checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e"
1985
+
dependencies = [
1986
+
"cfg-if",
1987
+
"once_cell",
1988
+
"wasm-bindgen-macro",
1989
+
]
1990
+
1991
+
[[package]]
1992
+
name = "wasm-bindgen-backend"
1993
+
version = "0.2.95"
1994
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1995
+
checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358"
1996
+
dependencies = [
1997
+
"bumpalo",
1998
+
"log",
1999
+
"once_cell",
2000
+
"proc-macro2",
2001
+
"quote",
2002
+
"syn",
2003
+
"wasm-bindgen-shared",
2004
+
]
2005
+
2006
+
[[package]]
2007
+
name = "wasm-bindgen-futures"
2008
+
version = "0.4.45"
2009
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2010
+
checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b"
2011
+
dependencies = [
2012
+
"cfg-if",
2013
+
"js-sys",
2014
+
"wasm-bindgen",
2015
+
"web-sys",
2016
+
]
2017
+
2018
+
[[package]]
2019
+
name = "wasm-bindgen-macro"
2020
+
version = "0.2.95"
2021
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2022
+
checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56"
2023
+
dependencies = [
2024
+
"quote",
2025
+
"wasm-bindgen-macro-support",
2026
+
]
2027
+
2028
+
[[package]]
2029
+
name = "wasm-bindgen-macro-support"
2030
+
version = "0.2.95"
2031
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2032
+
checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68"
2033
+
dependencies = [
2034
+
"proc-macro2",
2035
+
"quote",
2036
+
"syn",
2037
+
"wasm-bindgen-backend",
2038
+
"wasm-bindgen-shared",
2039
+
]
2040
+
2041
+
[[package]]
2042
+
name = "wasm-bindgen-shared"
2043
+
version = "0.2.95"
2044
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2045
+
checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d"
2046
+
2047
+
[[package]]
2048
+
name = "wasm-streams"
2049
+
version = "0.4.0"
2050
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2051
+
checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129"
2052
+
dependencies = [
2053
+
"futures-util",
2054
+
"js-sys",
2055
+
"wasm-bindgen",
2056
+
"wasm-bindgen-futures",
2057
+
"web-sys",
2058
+
]
2059
+
2060
+
[[package]]
2061
+
name = "web-sys"
2062
+
version = "0.3.72"
2063
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2064
+
checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112"
2065
+
dependencies = [
2066
+
"js-sys",
2067
+
"wasm-bindgen",
2068
+
]
2069
+
2070
+
[[package]]
2071
+
name = "winapi"
2072
+
version = "0.3.9"
2073
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2074
+
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
2075
+
dependencies = [
2076
+
"winapi-i686-pc-windows-gnu",
2077
+
"winapi-x86_64-pc-windows-gnu",
2078
+
]
2079
+
2080
+
[[package]]
2081
+
name = "winapi-i686-pc-windows-gnu"
2082
+
version = "0.4.0"
2083
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2084
+
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
2085
+
2086
+
[[package]]
2087
+
name = "winapi-x86_64-pc-windows-gnu"
2088
+
version = "0.4.0"
2089
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2090
+
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
2091
+
2092
+
[[package]]
2093
+
name = "windows-core"
2094
+
version = "0.52.0"
2095
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2096
+
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
2097
+
dependencies = [
2098
+
"windows-targets",
2099
+
]
2100
+
2101
+
[[package]]
2102
+
name = "windows-registry"
2103
+
version = "0.2.0"
2104
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2105
+
checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0"
2106
+
dependencies = [
2107
+
"windows-result",
2108
+
"windows-strings",
2109
+
"windows-targets",
2110
+
]
2111
+
2112
+
[[package]]
2113
+
name = "windows-result"
2114
+
version = "0.2.0"
2115
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2116
+
checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e"
2117
+
dependencies = [
2118
+
"windows-targets",
2119
+
]
2120
+
2121
+
[[package]]
2122
+
name = "windows-strings"
2123
+
version = "0.1.0"
2124
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2125
+
checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10"
2126
+
dependencies = [
2127
+
"windows-result",
2128
+
"windows-targets",
2129
+
]
2130
+
2131
+
[[package]]
2132
+
name = "windows-sys"
2133
+
version = "0.52.0"
2134
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2135
+
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
2136
+
dependencies = [
2137
+
"windows-targets",
2138
+
]
2139
+
2140
+
[[package]]
2141
+
name = "windows-sys"
2142
+
version = "0.59.0"
2143
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2144
+
checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
2145
+
dependencies = [
2146
+
"windows-targets",
2147
+
]
2148
+
2149
+
[[package]]
2150
+
name = "windows-targets"
2151
+
version = "0.52.6"
2152
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2153
+
checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
2154
+
dependencies = [
2155
+
"windows_aarch64_gnullvm",
2156
+
"windows_aarch64_msvc",
2157
+
"windows_i686_gnu",
2158
+
"windows_i686_gnullvm",
2159
+
"windows_i686_msvc",
2160
+
"windows_x86_64_gnu",
2161
+
"windows_x86_64_gnullvm",
2162
+
"windows_x86_64_msvc",
2163
+
]
2164
+
2165
+
[[package]]
2166
+
name = "windows_aarch64_gnullvm"
2167
+
version = "0.52.6"
2168
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2169
+
checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
2170
+
2171
+
[[package]]
2172
+
name = "windows_aarch64_msvc"
2173
+
version = "0.52.6"
2174
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2175
+
checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
2176
+
2177
+
[[package]]
2178
+
name = "windows_i686_gnu"
2179
+
version = "0.52.6"
2180
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2181
+
checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
2182
+
2183
+
[[package]]
2184
+
name = "windows_i686_gnullvm"
2185
+
version = "0.52.6"
2186
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2187
+
checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
2188
+
2189
+
[[package]]
2190
+
name = "windows_i686_msvc"
2191
+
version = "0.52.6"
2192
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2193
+
checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
2194
+
2195
+
[[package]]
2196
+
name = "windows_x86_64_gnu"
2197
+
version = "0.52.6"
2198
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2199
+
checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
2200
+
2201
+
[[package]]
2202
+
name = "windows_x86_64_gnullvm"
2203
+
version = "0.52.6"
2204
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2205
+
checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
2206
+
2207
+
[[package]]
2208
+
name = "windows_x86_64_msvc"
2209
+
version = "0.52.6"
2210
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2211
+
checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
2212
+
2213
+
[[package]]
2214
+
name = "zerocopy"
2215
+
version = "0.7.35"
2216
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2217
+
checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
2218
+
dependencies = [
2219
+
"byteorder",
2220
+
"zerocopy-derive",
2221
+
]
2222
+
2223
+
[[package]]
2224
+
name = "zerocopy-derive"
2225
+
version = "0.7.35"
2226
+
source = "registry+https://github.com/rust-lang/crates.io-index"
2227
+
checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
2228
+
dependencies = [
2229
+
"proc-macro2",
2230
+
"quote",
2231
+
"syn",
2232
+
]
+17
Cargo.toml
+17
Cargo.toml
···
···
1
+
[package]
2
+
name = "bluepds"
3
+
version = "0.0.0"
4
+
edition = "2021"
5
+
publish = false
6
+
7
+
[dependencies]
8
+
anyhow = "1.0.94"
9
+
axum = { version = "0.7.9", features = ["tower-log", "form", "macros"] }
10
+
azure_core = "0.21.0"
11
+
azure_identity = "0.21.0"
12
+
serde = { version = "1.0.216", features = ["derive"] }
13
+
serde_json = "1.0.133"
14
+
tokio = { version = "1.42.0", features = ["macros", "rt-multi-thread"] }
15
+
tower-http = { version = "0.6.2", features = ["fs", "trace"] }
16
+
tracing = "0.1.41"
17
+
tracing-subscriber = "0.3.19"
+23
Dockerfile
+23
Dockerfile
···
···
1
+
FROM mcr.microsoft.com/cbl-mariner/base/rust:1 as builder
2
+
3
+
COPY Cargo.lock /build/
4
+
COPY Cargo.toml /build/
5
+
COPY src /build/src
6
+
7
+
# Build the default page
8
+
WORKDIR /build
9
+
10
+
RUN cargo build --release
11
+
RUN mkdir -p /app && mv target/release/axum-app /app/
12
+
13
+
FROM mcr.microsoft.com/cbl-mariner/distroless/minimal:2.0
14
+
15
+
COPY --from=builder /app /app
16
+
COPY static /app/static
17
+
COPY templates /app/templates
18
+
19
+
#WORKDIR /home/site/wwwroot
20
+
WORKDIR /app
21
+
EXPOSE 8000
22
+
23
+
ENTRYPOINT [ "/app/axum-app" ]
+36
README.md
+36
README.md
···
···
1
+
# Axum ❤️ Azure
2
+
This is a basic example of using a [Axum](https://github.com/tokio-rs/axum) app with [Azure app services](https://learn.microsoft.com/en-us/azure/app-service/overview).
3
+
4
+
## Quick Start
5
+
```
6
+
cargo run
7
+
```
8
+
9
+
## Quick Deployment (Azure CLI)
10
+
```
11
+
az group create --name "webapp" --location southcentralus
12
+
az deployment group create --resource-group "webapp" --template-file .\deployment.bicep --parameters webAppName=testapp
13
+
14
+
az acr login --name <insert name of ACR resource here>
15
+
docker build -t <ACR>.azurecr.io/testapp:latest .
16
+
docker push <ACR>.azurecr.io/testapp:latest
17
+
```
18
+
19
+
## Manual Deployment
20
+
```
21
+
$RESOURCE_GROUP = "rustwebapp"
22
+
$DCR = "rustwebappdcr"
23
+
$APPSERVICE = "rustappservice"
24
+
$APP = "rustapp"
25
+
26
+
az group create --name $RESOURCE_GROUP --location southcentralus
27
+
az acr create -n $DCR -g $RESOURCE_GROUP --sku Standard --admin-enabled true
28
+
az acr login --name $DCR
29
+
30
+
docker build -t $DCR.azurecr.io/rustapp:latest .
31
+
docker push $DCR.azurecr.io/rustapp:latest
32
+
33
+
az appservice plan create -g $RESOURCE_GROUP -n $APPSERVICE --sku B1 --is-linux
34
+
az webapp create -g $RESOURCE_GROUP -p $APPSERVICE -n $APP -i $DCR.azurecr.io/rustapp:latest
35
+
az webapp config appsettings set -g $RESOURCE_GROUP -n $APP --settings WEBSITES_PORT=8000
36
+
```
+88
deployment.bicep
+88
deployment.bicep
···
···
1
+
param webAppName string
2
+
param location string = resourceGroup().location // Location for all resources
3
+
4
+
param sku string = 'F1' // The SKU of App Service Plan
5
+
param dockerContainerName string = '${webAppName}:latest'
6
+
param repositoryUrl string = 'https://github.com/DrChat/azure-rust-app'
7
+
param branch string = 'main'
8
+
9
+
var acrName = toLower('${webAppName}${uniqueString(resourceGroup().id)}')
10
+
var aspName = toLower('${webAppName}-asp')
11
+
var webName = toLower('${webAppName}${uniqueString(resourceGroup().id)}')
12
+
13
+
resource appServicePlan 'Microsoft.Web/serverfarms@2020-06-01' = {
14
+
name: aspName
15
+
location: location
16
+
properties: {
17
+
reserved: true
18
+
}
19
+
sku: {
20
+
name: sku
21
+
}
22
+
kind: 'linux'
23
+
}
24
+
25
+
resource acrResource 'Microsoft.ContainerRegistry/registries@2023-01-01-preview' = {
26
+
name: acrName
27
+
location: location
28
+
sku: {
29
+
name: 'Basic'
30
+
}
31
+
properties: {
32
+
adminUserEnabled: false
33
+
}
34
+
}
35
+
36
+
resource appService 'Microsoft.Web/sites@2020-06-01' = {
37
+
name: webName
38
+
location: location
39
+
identity: {
40
+
type: 'SystemAssigned'
41
+
}
42
+
properties: {
43
+
serverFarmId: appServicePlan.id
44
+
siteConfig: {
45
+
// Sigh. This took _far_ too long to figure out.
46
+
// We must authenticate to ACR, as no credentials are set up by default
47
+
// (the Az CLI will implicitly set them up in the background)
48
+
acrUseManagedIdentityCreds: true
49
+
appSettings: [
50
+
{
51
+
name: 'WEBSITES_PORT'
52
+
value: '8000'
53
+
}
54
+
]
55
+
linuxFxVersion: 'DOCKER|${acrName}.azurecr.io/${dockerContainerName}'
56
+
}
57
+
}
58
+
}
59
+
60
+
@description('This is the built-in AcrPull role. See https://docs.microsoft.com/azure/role-based-access-control/built-in-roles#acrpull')
61
+
resource acrPullRoleDefinition 'Microsoft.Authorization/roleDefinitions@2018-01-01-preview' existing = {
62
+
scope: subscription()
63
+
name: '7f951dda-4ed3-4680-a7ca-43fe172d538d'
64
+
}
65
+
66
+
resource appServiceAcrPull 'Microsoft.Authorization/roleAssignments@2020-04-01-preview' = {
67
+
name: guid(resourceGroup().id, acrResource.id, appService.id, 'AssignAcrPullToAS')
68
+
scope: acrResource
69
+
properties: {
70
+
description: 'Assign AcrPull role to AS'
71
+
principalId: appService.identity.principalId
72
+
principalType: 'ServicePrincipal'
73
+
roleDefinitionId: acrPullRoleDefinition.id
74
+
}
75
+
}
76
+
77
+
resource srcControls 'Microsoft.Web/sites/sourcecontrols@2021-01-01' = {
78
+
name: 'web'
79
+
parent: appService
80
+
properties: {
81
+
repoUrl: repositoryUrl
82
+
branch: branch
83
+
isManualIntegration: true
84
+
}
85
+
}
86
+
87
+
output acr string = acrResource.name
88
+
output domain string = appService.properties.hostNames[0]
+67
src/main.rs
+67
src/main.rs
···
···
1
+
use std::{net::SocketAddr, str::FromStr};
2
+
3
+
use axum::{extract::FromRef, response::IntoResponse, routing::get, Router};
4
+
use tokio::net::TcpListener;
5
+
use tower_http::trace::TraceLayer;
6
+
7
+
use anyhow::Context;
8
+
9
+
async fn index() -> impl IntoResponse {
10
+
"hello"
11
+
}
12
+
13
+
#[derive(Clone, FromRef)]
14
+
struct AppState {}
15
+
16
+
#[tokio::main]
17
+
async fn main() -> anyhow::Result<()> {
18
+
tracing_subscriber::fmt()
19
+
.with_max_level(tracing::Level::DEBUG)
20
+
.init();
21
+
22
+
let app = Router::new()
23
+
.route("/", get(index))
24
+
.layer(TraceLayer::new_for_http())
25
+
.with_state(AppState {});
26
+
27
+
// Required endpoints:
28
+
// U /xrpc/_health (undocumented, but impl by reference PDS)
29
+
//
30
+
// U /xrpc/com.atproto.identity.resolveHandle
31
+
// U /xrpc/com.atproto.identity.updateHandle
32
+
//
33
+
// U /xrpc/com.atproto.server.describeServer
34
+
// U /xrpc/com.atproto.server.createSession
35
+
// U /xrpc/com.atproto.server.getSession
36
+
//
37
+
// A /xrpc/com.atproto.repo.applyWrites
38
+
// A /xrpc/com.atproto.repo.createRecord
39
+
// A /xrpc/com.atproto.repo.putRecord
40
+
// A /xrpc/com.atproto.repo.deleteRecord
41
+
// U /xrpc/com.atproto.repo.describeRepo
42
+
// U /xrpc/com.atproto.repo.getRecord
43
+
// U /xrpc/com.atproto.repo.listRecords
44
+
// A /xrpc/com.atproto.repo.uploadBlob
45
+
//
46
+
// U /xrpc/com.atproto.sync.getBlob
47
+
// U /xrpc/com.atproto.sync.getBlocks
48
+
// U /xrpc/com.atproto.sync.getLatestCommit
49
+
// U /xrpc/com.atproto.sync.getRecord
50
+
// U /xrpc/com.atproto.sync.getRepoStatus
51
+
// U /xrpc/com.atproto.sync.getRepo
52
+
// U /xrpc/com.atproto.sync.listBlobs
53
+
// U /xrpc/com.atproto.sync.listRepos
54
+
// U /xrpc/com.atproto.sync.subscribeRepos
55
+
56
+
let addr = SocketAddr::from_str("0.0.0.0:8000").unwrap();
57
+
let listener = TcpListener::bind(&addr)
58
+
.await
59
+
.context("failed to bind address")?;
60
+
61
+
tracing::info!("listening on {addr}");
62
+
tracing::info!("connect to: http://127.0.0.1:{}", addr.port());
63
+
64
+
axum::serve(listener, app.into_make_service())
65
+
.await
66
+
.context("failed to serve app")
67
+
}