tangled
alpha
login
or
join now
lewis.moe
/
lewiscloud
0
fork
atom
Demonstrating core cloud concepts, starting with CaaS. Not for production use.
0
fork
atom
overview
issues
pulls
pipelines
Initial worker manager
lewis.moe
4 months ago
a5fb0428
0a5d1183
+1414
6 changed files
expand all
collapse all
unified
split
worker-plane
worker-manager
.env
.env.example
.gitignore
Cargo.lock
Cargo.toml
src
main.rs
+1
worker-plane/worker-manager/.env
···
1
1
+
CONTROL_PLANE_URL=ws://127.0.0.1:9001
+1
worker-plane/worker-manager/.env.example
···
1
1
+
CONTROL_PLANE_URL=ws://127.0.0.1:9001
+1
worker-plane/worker-manager/.gitignore
···
1
1
+
target
+1282
worker-plane/worker-manager/Cargo.lock
···
1
1
+
# This file is automatically @generated by Cargo.
2
2
+
# It is not intended for manual editing.
3
3
+
version = 4
4
4
+
5
5
+
[[package]]
6
6
+
name = "bitflags"
7
7
+
version = "2.10.0"
8
8
+
source = "registry+https://github.com/rust-lang/crates.io-index"
9
9
+
checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
10
10
+
11
11
+
[[package]]
12
12
+
name = "block-buffer"
13
13
+
version = "0.10.4"
14
14
+
source = "registry+https://github.com/rust-lang/crates.io-index"
15
15
+
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
16
16
+
dependencies = [
17
17
+
"generic-array",
18
18
+
]
19
19
+
20
20
+
[[package]]
21
21
+
name = "byteorder"
22
22
+
version = "1.5.0"
23
23
+
source = "registry+https://github.com/rust-lang/crates.io-index"
24
24
+
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
25
25
+
26
26
+
[[package]]
27
27
+
name = "bytes"
28
28
+
version = "1.10.1"
29
29
+
source = "registry+https://github.com/rust-lang/crates.io-index"
30
30
+
checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a"
31
31
+
32
32
+
[[package]]
33
33
+
name = "cc"
34
34
+
version = "1.2.41"
35
35
+
source = "registry+https://github.com/rust-lang/crates.io-index"
36
36
+
checksum = "ac9fe6cdbb24b6ade63616c0a0688e45bb56732262c158df3c0c4bea4ca47cb7"
37
37
+
dependencies = [
38
38
+
"find-msvc-tools",
39
39
+
"shlex",
40
40
+
]
41
41
+
42
42
+
[[package]]
43
43
+
name = "cfg-if"
44
44
+
version = "1.0.4"
45
45
+
source = "registry+https://github.com/rust-lang/crates.io-index"
46
46
+
checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
47
47
+
48
48
+
[[package]]
49
49
+
name = "core-foundation"
50
50
+
version = "0.9.4"
51
51
+
source = "registry+https://github.com/rust-lang/crates.io-index"
52
52
+
checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
53
53
+
dependencies = [
54
54
+
"core-foundation-sys",
55
55
+
"libc",
56
56
+
]
57
57
+
58
58
+
[[package]]
59
59
+
name = "core-foundation-sys"
60
60
+
version = "0.8.7"
61
61
+
source = "registry+https://github.com/rust-lang/crates.io-index"
62
62
+
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
63
63
+
64
64
+
[[package]]
65
65
+
name = "cpufeatures"
66
66
+
version = "0.2.17"
67
67
+
source = "registry+https://github.com/rust-lang/crates.io-index"
68
68
+
checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
69
69
+
dependencies = [
70
70
+
"libc",
71
71
+
]
72
72
+
73
73
+
[[package]]
74
74
+
name = "crypto-common"
75
75
+
version = "0.1.6"
76
76
+
source = "registry+https://github.com/rust-lang/crates.io-index"
77
77
+
checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
78
78
+
dependencies = [
79
79
+
"generic-array",
80
80
+
"typenum",
81
81
+
]
82
82
+
83
83
+
[[package]]
84
84
+
name = "data-encoding"
85
85
+
version = "2.9.0"
86
86
+
source = "registry+https://github.com/rust-lang/crates.io-index"
87
87
+
checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"
88
88
+
89
89
+
[[package]]
90
90
+
name = "digest"
91
91
+
version = "0.10.7"
92
92
+
source = "registry+https://github.com/rust-lang/crates.io-index"
93
93
+
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
94
94
+
dependencies = [
95
95
+
"block-buffer",
96
96
+
"crypto-common",
97
97
+
]
98
98
+
99
99
+
[[package]]
100
100
+
name = "displaydoc"
101
101
+
version = "0.2.5"
102
102
+
source = "registry+https://github.com/rust-lang/crates.io-index"
103
103
+
checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
104
104
+
dependencies = [
105
105
+
"proc-macro2",
106
106
+
"quote",
107
107
+
"syn",
108
108
+
]
109
109
+
110
110
+
[[package]]
111
111
+
name = "dotenvy"
112
112
+
version = "0.15.7"
113
113
+
source = "registry+https://github.com/rust-lang/crates.io-index"
114
114
+
checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b"
115
115
+
116
116
+
[[package]]
117
117
+
name = "errno"
118
118
+
version = "0.3.14"
119
119
+
source = "registry+https://github.com/rust-lang/crates.io-index"
120
120
+
checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
121
121
+
dependencies = [
122
122
+
"libc",
123
123
+
"windows-sys 0.61.2",
124
124
+
]
125
125
+
126
126
+
[[package]]
127
127
+
name = "fastrand"
128
128
+
version = "2.3.0"
129
129
+
source = "registry+https://github.com/rust-lang/crates.io-index"
130
130
+
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
131
131
+
132
132
+
[[package]]
133
133
+
name = "find-msvc-tools"
134
134
+
version = "0.1.4"
135
135
+
source = "registry+https://github.com/rust-lang/crates.io-index"
136
136
+
checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127"
137
137
+
138
138
+
[[package]]
139
139
+
name = "fnv"
140
140
+
version = "1.0.7"
141
141
+
source = "registry+https://github.com/rust-lang/crates.io-index"
142
142
+
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
143
143
+
144
144
+
[[package]]
145
145
+
name = "foreign-types"
146
146
+
version = "0.3.2"
147
147
+
source = "registry+https://github.com/rust-lang/crates.io-index"
148
148
+
checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
149
149
+
dependencies = [
150
150
+
"foreign-types-shared",
151
151
+
]
152
152
+
153
153
+
[[package]]
154
154
+
name = "foreign-types-shared"
155
155
+
version = "0.1.1"
156
156
+
source = "registry+https://github.com/rust-lang/crates.io-index"
157
157
+
checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
158
158
+
159
159
+
[[package]]
160
160
+
name = "form_urlencoded"
161
161
+
version = "1.2.2"
162
162
+
source = "registry+https://github.com/rust-lang/crates.io-index"
163
163
+
checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf"
164
164
+
dependencies = [
165
165
+
"percent-encoding",
166
166
+
]
167
167
+
168
168
+
[[package]]
169
169
+
name = "futures-core"
170
170
+
version = "0.3.31"
171
171
+
source = "registry+https://github.com/rust-lang/crates.io-index"
172
172
+
checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
173
173
+
174
174
+
[[package]]
175
175
+
name = "futures-macro"
176
176
+
version = "0.3.31"
177
177
+
source = "registry+https://github.com/rust-lang/crates.io-index"
178
178
+
checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
179
179
+
dependencies = [
180
180
+
"proc-macro2",
181
181
+
"quote",
182
182
+
"syn",
183
183
+
]
184
184
+
185
185
+
[[package]]
186
186
+
name = "futures-sink"
187
187
+
version = "0.3.31"
188
188
+
source = "registry+https://github.com/rust-lang/crates.io-index"
189
189
+
checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7"
190
190
+
191
191
+
[[package]]
192
192
+
name = "futures-task"
193
193
+
version = "0.3.31"
194
194
+
source = "registry+https://github.com/rust-lang/crates.io-index"
195
195
+
checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988"
196
196
+
197
197
+
[[package]]
198
198
+
name = "futures-util"
199
199
+
version = "0.3.31"
200
200
+
source = "registry+https://github.com/rust-lang/crates.io-index"
201
201
+
checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81"
202
202
+
dependencies = [
203
203
+
"futures-core",
204
204
+
"futures-macro",
205
205
+
"futures-sink",
206
206
+
"futures-task",
207
207
+
"pin-project-lite",
208
208
+
"pin-utils",
209
209
+
"slab",
210
210
+
]
211
211
+
212
212
+
[[package]]
213
213
+
name = "generic-array"
214
214
+
version = "0.14.9"
215
215
+
source = "registry+https://github.com/rust-lang/crates.io-index"
216
216
+
checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2"
217
217
+
dependencies = [
218
218
+
"typenum",
219
219
+
"version_check",
220
220
+
]
221
221
+
222
222
+
[[package]]
223
223
+
name = "getrandom"
224
224
+
version = "0.2.16"
225
225
+
source = "registry+https://github.com/rust-lang/crates.io-index"
226
226
+
checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592"
227
227
+
dependencies = [
228
228
+
"cfg-if",
229
229
+
"libc",
230
230
+
"wasi",
231
231
+
]
232
232
+
233
233
+
[[package]]
234
234
+
name = "getrandom"
235
235
+
version = "0.3.4"
236
236
+
source = "registry+https://github.com/rust-lang/crates.io-index"
237
237
+
checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
238
238
+
dependencies = [
239
239
+
"cfg-if",
240
240
+
"libc",
241
241
+
"r-efi",
242
242
+
"wasip2",
243
243
+
]
244
244
+
245
245
+
[[package]]
246
246
+
name = "http"
247
247
+
version = "1.3.1"
248
248
+
source = "registry+https://github.com/rust-lang/crates.io-index"
249
249
+
checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565"
250
250
+
dependencies = [
251
251
+
"bytes",
252
252
+
"fnv",
253
253
+
"itoa",
254
254
+
]
255
255
+
256
256
+
[[package]]
257
257
+
name = "httparse"
258
258
+
version = "1.10.1"
259
259
+
source = "registry+https://github.com/rust-lang/crates.io-index"
260
260
+
checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87"
261
261
+
262
262
+
[[package]]
263
263
+
name = "icu_collections"
264
264
+
version = "2.0.0"
265
265
+
source = "registry+https://github.com/rust-lang/crates.io-index"
266
266
+
checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47"
267
267
+
dependencies = [
268
268
+
"displaydoc",
269
269
+
"potential_utf",
270
270
+
"yoke",
271
271
+
"zerofrom",
272
272
+
"zerovec",
273
273
+
]
274
274
+
275
275
+
[[package]]
276
276
+
name = "icu_locale_core"
277
277
+
version = "2.0.0"
278
278
+
source = "registry+https://github.com/rust-lang/crates.io-index"
279
279
+
checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a"
280
280
+
dependencies = [
281
281
+
"displaydoc",
282
282
+
"litemap",
283
283
+
"tinystr",
284
284
+
"writeable",
285
285
+
"zerovec",
286
286
+
]
287
287
+
288
288
+
[[package]]
289
289
+
name = "icu_normalizer"
290
290
+
version = "2.0.0"
291
291
+
source = "registry+https://github.com/rust-lang/crates.io-index"
292
292
+
checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979"
293
293
+
dependencies = [
294
294
+
"displaydoc",
295
295
+
"icu_collections",
296
296
+
"icu_normalizer_data",
297
297
+
"icu_properties",
298
298
+
"icu_provider",
299
299
+
"smallvec",
300
300
+
"zerovec",
301
301
+
]
302
302
+
303
303
+
[[package]]
304
304
+
name = "icu_normalizer_data"
305
305
+
version = "2.0.0"
306
306
+
source = "registry+https://github.com/rust-lang/crates.io-index"
307
307
+
checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3"
308
308
+
309
309
+
[[package]]
310
310
+
name = "icu_properties"
311
311
+
version = "2.0.1"
312
312
+
source = "registry+https://github.com/rust-lang/crates.io-index"
313
313
+
checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b"
314
314
+
dependencies = [
315
315
+
"displaydoc",
316
316
+
"icu_collections",
317
317
+
"icu_locale_core",
318
318
+
"icu_properties_data",
319
319
+
"icu_provider",
320
320
+
"potential_utf",
321
321
+
"zerotrie",
322
322
+
"zerovec",
323
323
+
]
324
324
+
325
325
+
[[package]]
326
326
+
name = "icu_properties_data"
327
327
+
version = "2.0.1"
328
328
+
source = "registry+https://github.com/rust-lang/crates.io-index"
329
329
+
checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632"
330
330
+
331
331
+
[[package]]
332
332
+
name = "icu_provider"
333
333
+
version = "2.0.0"
334
334
+
source = "registry+https://github.com/rust-lang/crates.io-index"
335
335
+
checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af"
336
336
+
dependencies = [
337
337
+
"displaydoc",
338
338
+
"icu_locale_core",
339
339
+
"stable_deref_trait",
340
340
+
"tinystr",
341
341
+
"writeable",
342
342
+
"yoke",
343
343
+
"zerofrom",
344
344
+
"zerotrie",
345
345
+
"zerovec",
346
346
+
]
347
347
+
348
348
+
[[package]]
349
349
+
name = "idna"
350
350
+
version = "1.1.0"
351
351
+
source = "registry+https://github.com/rust-lang/crates.io-index"
352
352
+
checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de"
353
353
+
dependencies = [
354
354
+
"idna_adapter",
355
355
+
"smallvec",
356
356
+
"utf8_iter",
357
357
+
]
358
358
+
359
359
+
[[package]]
360
360
+
name = "idna_adapter"
361
361
+
version = "1.2.1"
362
362
+
source = "registry+https://github.com/rust-lang/crates.io-index"
363
363
+
checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344"
364
364
+
dependencies = [
365
365
+
"icu_normalizer",
366
366
+
"icu_properties",
367
367
+
]
368
368
+
369
369
+
[[package]]
370
370
+
name = "itoa"
371
371
+
version = "1.0.15"
372
372
+
source = "registry+https://github.com/rust-lang/crates.io-index"
373
373
+
checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
374
374
+
375
375
+
[[package]]
376
376
+
name = "lazy_static"
377
377
+
version = "1.5.0"
378
378
+
source = "registry+https://github.com/rust-lang/crates.io-index"
379
379
+
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
380
380
+
381
381
+
[[package]]
382
382
+
name = "libc"
383
383
+
version = "0.2.177"
384
384
+
source = "registry+https://github.com/rust-lang/crates.io-index"
385
385
+
checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976"
386
386
+
387
387
+
[[package]]
388
388
+
name = "linux-raw-sys"
389
389
+
version = "0.11.0"
390
390
+
source = "registry+https://github.com/rust-lang/crates.io-index"
391
391
+
checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039"
392
392
+
393
393
+
[[package]]
394
394
+
name = "litemap"
395
395
+
version = "0.8.0"
396
396
+
source = "registry+https://github.com/rust-lang/crates.io-index"
397
397
+
checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956"
398
398
+
399
399
+
[[package]]
400
400
+
name = "lock_api"
401
401
+
version = "0.4.14"
402
402
+
source = "registry+https://github.com/rust-lang/crates.io-index"
403
403
+
checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"
404
404
+
dependencies = [
405
405
+
"scopeguard",
406
406
+
]
407
407
+
408
408
+
[[package]]
409
409
+
name = "log"
410
410
+
version = "0.4.28"
411
411
+
source = "registry+https://github.com/rust-lang/crates.io-index"
412
412
+
checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432"
413
413
+
414
414
+
[[package]]
415
415
+
name = "memchr"
416
416
+
version = "2.7.6"
417
417
+
source = "registry+https://github.com/rust-lang/crates.io-index"
418
418
+
checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273"
419
419
+
420
420
+
[[package]]
421
421
+
name = "mio"
422
422
+
version = "1.1.0"
423
423
+
source = "registry+https://github.com/rust-lang/crates.io-index"
424
424
+
checksum = "69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873"
425
425
+
dependencies = [
426
426
+
"libc",
427
427
+
"wasi",
428
428
+
"windows-sys 0.61.2",
429
429
+
]
430
430
+
431
431
+
[[package]]
432
432
+
name = "native-tls"
433
433
+
version = "0.2.14"
434
434
+
source = "registry+https://github.com/rust-lang/crates.io-index"
435
435
+
checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e"
436
436
+
dependencies = [
437
437
+
"libc",
438
438
+
"log",
439
439
+
"openssl",
440
440
+
"openssl-probe",
441
441
+
"openssl-sys",
442
442
+
"schannel",
443
443
+
"security-framework",
444
444
+
"security-framework-sys",
445
445
+
"tempfile",
446
446
+
]
447
447
+
448
448
+
[[package]]
449
449
+
name = "nu-ansi-term"
450
450
+
version = "0.50.3"
451
451
+
source = "registry+https://github.com/rust-lang/crates.io-index"
452
452
+
checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5"
453
453
+
dependencies = [
454
454
+
"windows-sys 0.61.2",
455
455
+
]
456
456
+
457
457
+
[[package]]
458
458
+
name = "once_cell"
459
459
+
version = "1.21.3"
460
460
+
source = "registry+https://github.com/rust-lang/crates.io-index"
461
461
+
checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
462
462
+
463
463
+
[[package]]
464
464
+
name = "openssl"
465
465
+
version = "0.10.74"
466
466
+
source = "registry+https://github.com/rust-lang/crates.io-index"
467
467
+
checksum = "24ad14dd45412269e1a30f52ad8f0664f0f4f4a89ee8fe28c3b3527021ebb654"
468
468
+
dependencies = [
469
469
+
"bitflags",
470
470
+
"cfg-if",
471
471
+
"foreign-types",
472
472
+
"libc",
473
473
+
"once_cell",
474
474
+
"openssl-macros",
475
475
+
"openssl-sys",
476
476
+
]
477
477
+
478
478
+
[[package]]
479
479
+
name = "openssl-macros"
480
480
+
version = "0.1.1"
481
481
+
source = "registry+https://github.com/rust-lang/crates.io-index"
482
482
+
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
483
483
+
dependencies = [
484
484
+
"proc-macro2",
485
485
+
"quote",
486
486
+
"syn",
487
487
+
]
488
488
+
489
489
+
[[package]]
490
490
+
name = "openssl-probe"
491
491
+
version = "0.1.6"
492
492
+
source = "registry+https://github.com/rust-lang/crates.io-index"
493
493
+
checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
494
494
+
495
495
+
[[package]]
496
496
+
name = "openssl-sys"
497
497
+
version = "0.9.110"
498
498
+
source = "registry+https://github.com/rust-lang/crates.io-index"
499
499
+
checksum = "0a9f0075ba3c21b09f8e8b2026584b1d18d49388648f2fbbf3c97ea8deced8e2"
500
500
+
dependencies = [
501
501
+
"cc",
502
502
+
"libc",
503
503
+
"pkg-config",
504
504
+
"vcpkg",
505
505
+
]
506
506
+
507
507
+
[[package]]
508
508
+
name = "parking_lot"
509
509
+
version = "0.12.5"
510
510
+
source = "registry+https://github.com/rust-lang/crates.io-index"
511
511
+
checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a"
512
512
+
dependencies = [
513
513
+
"lock_api",
514
514
+
"parking_lot_core",
515
515
+
]
516
516
+
517
517
+
[[package]]
518
518
+
name = "parking_lot_core"
519
519
+
version = "0.9.12"
520
520
+
source = "registry+https://github.com/rust-lang/crates.io-index"
521
521
+
checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1"
522
522
+
dependencies = [
523
523
+
"cfg-if",
524
524
+
"libc",
525
525
+
"redox_syscall",
526
526
+
"smallvec",
527
527
+
"windows-link",
528
528
+
]
529
529
+
530
530
+
[[package]]
531
531
+
name = "percent-encoding"
532
532
+
version = "2.3.2"
533
533
+
source = "registry+https://github.com/rust-lang/crates.io-index"
534
534
+
checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
535
535
+
536
536
+
[[package]]
537
537
+
name = "pin-project-lite"
538
538
+
version = "0.2.16"
539
539
+
source = "registry+https://github.com/rust-lang/crates.io-index"
540
540
+
checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b"
541
541
+
542
542
+
[[package]]
543
543
+
name = "pin-utils"
544
544
+
version = "0.1.0"
545
545
+
source = "registry+https://github.com/rust-lang/crates.io-index"
546
546
+
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
547
547
+
548
548
+
[[package]]
549
549
+
name = "pkg-config"
550
550
+
version = "0.3.32"
551
551
+
source = "registry+https://github.com/rust-lang/crates.io-index"
552
552
+
checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c"
553
553
+
554
554
+
[[package]]
555
555
+
name = "potential_utf"
556
556
+
version = "0.1.3"
557
557
+
source = "registry+https://github.com/rust-lang/crates.io-index"
558
558
+
checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a"
559
559
+
dependencies = [
560
560
+
"zerovec",
561
561
+
]
562
562
+
563
563
+
[[package]]
564
564
+
name = "ppv-lite86"
565
565
+
version = "0.2.21"
566
566
+
source = "registry+https://github.com/rust-lang/crates.io-index"
567
567
+
checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
568
568
+
dependencies = [
569
569
+
"zerocopy",
570
570
+
]
571
571
+
572
572
+
[[package]]
573
573
+
name = "proc-macro2"
574
574
+
version = "1.0.101"
575
575
+
source = "registry+https://github.com/rust-lang/crates.io-index"
576
576
+
checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de"
577
577
+
dependencies = [
578
578
+
"unicode-ident",
579
579
+
]
580
580
+
581
581
+
[[package]]
582
582
+
name = "quote"
583
583
+
version = "1.0.41"
584
584
+
source = "registry+https://github.com/rust-lang/crates.io-index"
585
585
+
checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1"
586
586
+
dependencies = [
587
587
+
"proc-macro2",
588
588
+
]
589
589
+
590
590
+
[[package]]
591
591
+
name = "r-efi"
592
592
+
version = "5.3.0"
593
593
+
source = "registry+https://github.com/rust-lang/crates.io-index"
594
594
+
checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
595
595
+
596
596
+
[[package]]
597
597
+
name = "rand"
598
598
+
version = "0.8.5"
599
599
+
source = "registry+https://github.com/rust-lang/crates.io-index"
600
600
+
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
601
601
+
dependencies = [
602
602
+
"libc",
603
603
+
"rand_chacha",
604
604
+
"rand_core",
605
605
+
]
606
606
+
607
607
+
[[package]]
608
608
+
name = "rand_chacha"
609
609
+
version = "0.3.1"
610
610
+
source = "registry+https://github.com/rust-lang/crates.io-index"
611
611
+
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
612
612
+
dependencies = [
613
613
+
"ppv-lite86",
614
614
+
"rand_core",
615
615
+
]
616
616
+
617
617
+
[[package]]
618
618
+
name = "rand_core"
619
619
+
version = "0.6.4"
620
620
+
source = "registry+https://github.com/rust-lang/crates.io-index"
621
621
+
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
622
622
+
dependencies = [
623
623
+
"getrandom 0.2.16",
624
624
+
]
625
625
+
626
626
+
[[package]]
627
627
+
name = "redox_syscall"
628
628
+
version = "0.5.18"
629
629
+
source = "registry+https://github.com/rust-lang/crates.io-index"
630
630
+
checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
631
631
+
dependencies = [
632
632
+
"bitflags",
633
633
+
]
634
634
+
635
635
+
[[package]]
636
636
+
name = "rustix"
637
637
+
version = "1.1.2"
638
638
+
source = "registry+https://github.com/rust-lang/crates.io-index"
639
639
+
checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e"
640
640
+
dependencies = [
641
641
+
"bitflags",
642
642
+
"errno",
643
643
+
"libc",
644
644
+
"linux-raw-sys",
645
645
+
"windows-sys 0.61.2",
646
646
+
]
647
647
+
648
648
+
[[package]]
649
649
+
name = "ryu"
650
650
+
version = "1.0.20"
651
651
+
source = "registry+https://github.com/rust-lang/crates.io-index"
652
652
+
checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f"
653
653
+
654
654
+
[[package]]
655
655
+
name = "schannel"
656
656
+
version = "0.1.28"
657
657
+
source = "registry+https://github.com/rust-lang/crates.io-index"
658
658
+
checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1"
659
659
+
dependencies = [
660
660
+
"windows-sys 0.61.2",
661
661
+
]
662
662
+
663
663
+
[[package]]
664
664
+
name = "scopeguard"
665
665
+
version = "1.2.0"
666
666
+
source = "registry+https://github.com/rust-lang/crates.io-index"
667
667
+
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
668
668
+
669
669
+
[[package]]
670
670
+
name = "security-framework"
671
671
+
version = "2.11.1"
672
672
+
source = "registry+https://github.com/rust-lang/crates.io-index"
673
673
+
checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
674
674
+
dependencies = [
675
675
+
"bitflags",
676
676
+
"core-foundation",
677
677
+
"core-foundation-sys",
678
678
+
"libc",
679
679
+
"security-framework-sys",
680
680
+
]
681
681
+
682
682
+
[[package]]
683
683
+
name = "security-framework-sys"
684
684
+
version = "2.15.0"
685
685
+
source = "registry+https://github.com/rust-lang/crates.io-index"
686
686
+
checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0"
687
687
+
dependencies = [
688
688
+
"core-foundation-sys",
689
689
+
"libc",
690
690
+
]
691
691
+
692
692
+
[[package]]
693
693
+
name = "serde"
694
694
+
version = "1.0.228"
695
695
+
source = "registry+https://github.com/rust-lang/crates.io-index"
696
696
+
checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
697
697
+
dependencies = [
698
698
+
"serde_core",
699
699
+
"serde_derive",
700
700
+
]
701
701
+
702
702
+
[[package]]
703
703
+
name = "serde_core"
704
704
+
version = "1.0.228"
705
705
+
source = "registry+https://github.com/rust-lang/crates.io-index"
706
706
+
checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
707
707
+
dependencies = [
708
708
+
"serde_derive",
709
709
+
]
710
710
+
711
711
+
[[package]]
712
712
+
name = "serde_derive"
713
713
+
version = "1.0.228"
714
714
+
source = "registry+https://github.com/rust-lang/crates.io-index"
715
715
+
checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
716
716
+
dependencies = [
717
717
+
"proc-macro2",
718
718
+
"quote",
719
719
+
"syn",
720
720
+
]
721
721
+
722
722
+
[[package]]
723
723
+
name = "serde_json"
724
724
+
version = "1.0.145"
725
725
+
source = "registry+https://github.com/rust-lang/crates.io-index"
726
726
+
checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
727
727
+
dependencies = [
728
728
+
"itoa",
729
729
+
"memchr",
730
730
+
"ryu",
731
731
+
"serde",
732
732
+
"serde_core",
733
733
+
]
734
734
+
735
735
+
[[package]]
736
736
+
name = "sha1"
737
737
+
version = "0.10.6"
738
738
+
source = "registry+https://github.com/rust-lang/crates.io-index"
739
739
+
checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
740
740
+
dependencies = [
741
741
+
"cfg-if",
742
742
+
"cpufeatures",
743
743
+
"digest",
744
744
+
]
745
745
+
746
746
+
[[package]]
747
747
+
name = "sharded-slab"
748
748
+
version = "0.1.7"
749
749
+
source = "registry+https://github.com/rust-lang/crates.io-index"
750
750
+
checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
751
751
+
dependencies = [
752
752
+
"lazy_static",
753
753
+
]
754
754
+
755
755
+
[[package]]
756
756
+
name = "shlex"
757
757
+
version = "1.3.0"
758
758
+
source = "registry+https://github.com/rust-lang/crates.io-index"
759
759
+
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
760
760
+
761
761
+
[[package]]
762
762
+
name = "signal-hook-registry"
763
763
+
version = "1.4.6"
764
764
+
source = "registry+https://github.com/rust-lang/crates.io-index"
765
765
+
checksum = "b2a4719bff48cee6b39d12c020eeb490953ad2443b7055bd0b21fca26bd8c28b"
766
766
+
dependencies = [
767
767
+
"libc",
768
768
+
]
769
769
+
770
770
+
[[package]]
771
771
+
name = "slab"
772
772
+
version = "0.4.11"
773
773
+
source = "registry+https://github.com/rust-lang/crates.io-index"
774
774
+
checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589"
775
775
+
776
776
+
[[package]]
777
777
+
name = "smallvec"
778
778
+
version = "1.15.1"
779
779
+
source = "registry+https://github.com/rust-lang/crates.io-index"
780
780
+
checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03"
781
781
+
782
782
+
[[package]]
783
783
+
name = "socket2"
784
784
+
version = "0.6.1"
785
785
+
source = "registry+https://github.com/rust-lang/crates.io-index"
786
786
+
checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881"
787
787
+
dependencies = [
788
788
+
"libc",
789
789
+
"windows-sys 0.60.2",
790
790
+
]
791
791
+
792
792
+
[[package]]
793
793
+
name = "stable_deref_trait"
794
794
+
version = "1.2.1"
795
795
+
source = "registry+https://github.com/rust-lang/crates.io-index"
796
796
+
checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"
797
797
+
798
798
+
[[package]]
799
799
+
name = "syn"
800
800
+
version = "2.0.107"
801
801
+
source = "registry+https://github.com/rust-lang/crates.io-index"
802
802
+
checksum = "2a26dbd934e5451d21ef060c018dae56fc073894c5a7896f882928a76e6d081b"
803
803
+
dependencies = [
804
804
+
"proc-macro2",
805
805
+
"quote",
806
806
+
"unicode-ident",
807
807
+
]
808
808
+
809
809
+
[[package]]
810
810
+
name = "synstructure"
811
811
+
version = "0.13.2"
812
812
+
source = "registry+https://github.com/rust-lang/crates.io-index"
813
813
+
checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
814
814
+
dependencies = [
815
815
+
"proc-macro2",
816
816
+
"quote",
817
817
+
"syn",
818
818
+
]
819
819
+
820
820
+
[[package]]
821
821
+
name = "tempfile"
822
822
+
version = "3.23.0"
823
823
+
source = "registry+https://github.com/rust-lang/crates.io-index"
824
824
+
checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16"
825
825
+
dependencies = [
826
826
+
"fastrand",
827
827
+
"getrandom 0.3.4",
828
828
+
"once_cell",
829
829
+
"rustix",
830
830
+
"windows-sys 0.61.2",
831
831
+
]
832
832
+
833
833
+
[[package]]
834
834
+
name = "thiserror"
835
835
+
version = "1.0.69"
836
836
+
source = "registry+https://github.com/rust-lang/crates.io-index"
837
837
+
checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
838
838
+
dependencies = [
839
839
+
"thiserror-impl",
840
840
+
]
841
841
+
842
842
+
[[package]]
843
843
+
name = "thiserror-impl"
844
844
+
version = "1.0.69"
845
845
+
source = "registry+https://github.com/rust-lang/crates.io-index"
846
846
+
checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
847
847
+
dependencies = [
848
848
+
"proc-macro2",
849
849
+
"quote",
850
850
+
"syn",
851
851
+
]
852
852
+
853
853
+
[[package]]
854
854
+
name = "thread_local"
855
855
+
version = "1.1.9"
856
856
+
source = "registry+https://github.com/rust-lang/crates.io-index"
857
857
+
checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185"
858
858
+
dependencies = [
859
859
+
"cfg-if",
860
860
+
]
861
861
+
862
862
+
[[package]]
863
863
+
name = "tinystr"
864
864
+
version = "0.8.1"
865
865
+
source = "registry+https://github.com/rust-lang/crates.io-index"
866
866
+
checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b"
867
867
+
dependencies = [
868
868
+
"displaydoc",
869
869
+
"zerovec",
870
870
+
]
871
871
+
872
872
+
[[package]]
873
873
+
name = "tokio"
874
874
+
version = "1.48.0"
875
875
+
source = "registry+https://github.com/rust-lang/crates.io-index"
876
876
+
checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408"
877
877
+
dependencies = [
878
878
+
"bytes",
879
879
+
"libc",
880
880
+
"mio",
881
881
+
"parking_lot",
882
882
+
"pin-project-lite",
883
883
+
"signal-hook-registry",
884
884
+
"socket2",
885
885
+
"tokio-macros",
886
886
+
"windows-sys 0.61.2",
887
887
+
]
888
888
+
889
889
+
[[package]]
890
890
+
name = "tokio-macros"
891
891
+
version = "2.6.0"
892
892
+
source = "registry+https://github.com/rust-lang/crates.io-index"
893
893
+
checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5"
894
894
+
dependencies = [
895
895
+
"proc-macro2",
896
896
+
"quote",
897
897
+
"syn",
898
898
+
]
899
899
+
900
900
+
[[package]]
901
901
+
name = "tokio-native-tls"
902
902
+
version = "0.3.1"
903
903
+
source = "registry+https://github.com/rust-lang/crates.io-index"
904
904
+
checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
905
905
+
dependencies = [
906
906
+
"native-tls",
907
907
+
"tokio",
908
908
+
]
909
909
+
910
910
+
[[package]]
911
911
+
name = "tokio-tungstenite"
912
912
+
version = "0.21.0"
913
913
+
source = "registry+https://github.com/rust-lang/crates.io-index"
914
914
+
checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
915
915
+
dependencies = [
916
916
+
"futures-util",
917
917
+
"log",
918
918
+
"native-tls",
919
919
+
"tokio",
920
920
+
"tokio-native-tls",
921
921
+
"tungstenite",
922
922
+
]
923
923
+
924
924
+
[[package]]
925
925
+
name = "tracing"
926
926
+
version = "0.1.41"
927
927
+
source = "registry+https://github.com/rust-lang/crates.io-index"
928
928
+
checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
929
929
+
dependencies = [
930
930
+
"pin-project-lite",
931
931
+
"tracing-attributes",
932
932
+
"tracing-core",
933
933
+
]
934
934
+
935
935
+
[[package]]
936
936
+
name = "tracing-attributes"
937
937
+
version = "0.1.30"
938
938
+
source = "registry+https://github.com/rust-lang/crates.io-index"
939
939
+
checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903"
940
940
+
dependencies = [
941
941
+
"proc-macro2",
942
942
+
"quote",
943
943
+
"syn",
944
944
+
]
945
945
+
946
946
+
[[package]]
947
947
+
name = "tracing-core"
948
948
+
version = "0.1.34"
949
949
+
source = "registry+https://github.com/rust-lang/crates.io-index"
950
950
+
checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678"
951
951
+
dependencies = [
952
952
+
"once_cell",
953
953
+
"valuable",
954
954
+
]
955
955
+
956
956
+
[[package]]
957
957
+
name = "tracing-log"
958
958
+
version = "0.2.0"
959
959
+
source = "registry+https://github.com/rust-lang/crates.io-index"
960
960
+
checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
961
961
+
dependencies = [
962
962
+
"log",
963
963
+
"once_cell",
964
964
+
"tracing-core",
965
965
+
]
966
966
+
967
967
+
[[package]]
968
968
+
name = "tracing-subscriber"
969
969
+
version = "0.3.20"
970
970
+
source = "registry+https://github.com/rust-lang/crates.io-index"
971
971
+
checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5"
972
972
+
dependencies = [
973
973
+
"nu-ansi-term",
974
974
+
"sharded-slab",
975
975
+
"smallvec",
976
976
+
"thread_local",
977
977
+
"tracing-core",
978
978
+
"tracing-log",
979
979
+
]
980
980
+
981
981
+
[[package]]
982
982
+
name = "tungstenite"
983
983
+
version = "0.21.0"
984
984
+
source = "registry+https://github.com/rust-lang/crates.io-index"
985
985
+
checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
986
986
+
dependencies = [
987
987
+
"byteorder",
988
988
+
"bytes",
989
989
+
"data-encoding",
990
990
+
"http",
991
991
+
"httparse",
992
992
+
"log",
993
993
+
"native-tls",
994
994
+
"rand",
995
995
+
"sha1",
996
996
+
"thiserror",
997
997
+
"url",
998
998
+
"utf-8",
999
999
+
]
1000
1000
+
1001
1001
+
[[package]]
1002
1002
+
name = "typenum"
1003
1003
+
version = "1.19.0"
1004
1004
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1005
1005
+
checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb"
1006
1006
+
1007
1007
+
[[package]]
1008
1008
+
name = "unicode-ident"
1009
1009
+
version = "1.0.20"
1010
1010
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1011
1011
+
checksum = "462eeb75aeb73aea900253ce739c8e18a67423fadf006037cd3ff27e82748a06"
1012
1012
+
1013
1013
+
[[package]]
1014
1014
+
name = "url"
1015
1015
+
version = "2.5.7"
1016
1016
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1017
1017
+
checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b"
1018
1018
+
dependencies = [
1019
1019
+
"form_urlencoded",
1020
1020
+
"idna",
1021
1021
+
"percent-encoding",
1022
1022
+
"serde",
1023
1023
+
]
1024
1024
+
1025
1025
+
[[package]]
1026
1026
+
name = "utf-8"
1027
1027
+
version = "0.7.6"
1028
1028
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1029
1029
+
checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
1030
1030
+
1031
1031
+
[[package]]
1032
1032
+
name = "utf8_iter"
1033
1033
+
version = "1.0.4"
1034
1034
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1035
1035
+
checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
1036
1036
+
1037
1037
+
[[package]]
1038
1038
+
name = "valuable"
1039
1039
+
version = "0.1.1"
1040
1040
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1041
1041
+
checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
1042
1042
+
1043
1043
+
[[package]]
1044
1044
+
name = "vcpkg"
1045
1045
+
version = "0.2.15"
1046
1046
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1047
1047
+
checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
1048
1048
+
1049
1049
+
[[package]]
1050
1050
+
name = "version_check"
1051
1051
+
version = "0.9.5"
1052
1052
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1053
1053
+
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
1054
1054
+
1055
1055
+
[[package]]
1056
1056
+
name = "wasi"
1057
1057
+
version = "0.11.1+wasi-snapshot-preview1"
1058
1058
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1059
1059
+
checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
1060
1060
+
1061
1061
+
[[package]]
1062
1062
+
name = "wasip2"
1063
1063
+
version = "1.0.1+wasi-0.2.4"
1064
1064
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1065
1065
+
checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7"
1066
1066
+
dependencies = [
1067
1067
+
"wit-bindgen",
1068
1068
+
]
1069
1069
+
1070
1070
+
[[package]]
1071
1071
+
name = "windows-link"
1072
1072
+
version = "0.2.1"
1073
1073
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1074
1074
+
checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
1075
1075
+
1076
1076
+
[[package]]
1077
1077
+
name = "windows-sys"
1078
1078
+
version = "0.60.2"
1079
1079
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1080
1080
+
checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb"
1081
1081
+
dependencies = [
1082
1082
+
"windows-targets",
1083
1083
+
]
1084
1084
+
1085
1085
+
[[package]]
1086
1086
+
name = "windows-sys"
1087
1087
+
version = "0.61.2"
1088
1088
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1089
1089
+
checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
1090
1090
+
dependencies = [
1091
1091
+
"windows-link",
1092
1092
+
]
1093
1093
+
1094
1094
+
[[package]]
1095
1095
+
name = "windows-targets"
1096
1096
+
version = "0.53.5"
1097
1097
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1098
1098
+
checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3"
1099
1099
+
dependencies = [
1100
1100
+
"windows-link",
1101
1101
+
"windows_aarch64_gnullvm",
1102
1102
+
"windows_aarch64_msvc",
1103
1103
+
"windows_i686_gnu",
1104
1104
+
"windows_i686_gnullvm",
1105
1105
+
"windows_i686_msvc",
1106
1106
+
"windows_x86_64_gnu",
1107
1107
+
"windows_x86_64_gnullvm",
1108
1108
+
"windows_x86_64_msvc",
1109
1109
+
]
1110
1110
+
1111
1111
+
[[package]]
1112
1112
+
name = "windows_aarch64_gnullvm"
1113
1113
+
version = "0.53.1"
1114
1114
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1115
1115
+
checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53"
1116
1116
+
1117
1117
+
[[package]]
1118
1118
+
name = "windows_aarch64_msvc"
1119
1119
+
version = "0.53.1"
1120
1120
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1121
1121
+
checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006"
1122
1122
+
1123
1123
+
[[package]]
1124
1124
+
name = "windows_i686_gnu"
1125
1125
+
version = "0.53.1"
1126
1126
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1127
1127
+
checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3"
1128
1128
+
1129
1129
+
[[package]]
1130
1130
+
name = "windows_i686_gnullvm"
1131
1131
+
version = "0.53.1"
1132
1132
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1133
1133
+
checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c"
1134
1134
+
1135
1135
+
[[package]]
1136
1136
+
name = "windows_i686_msvc"
1137
1137
+
version = "0.53.1"
1138
1138
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1139
1139
+
checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2"
1140
1140
+
1141
1141
+
[[package]]
1142
1142
+
name = "windows_x86_64_gnu"
1143
1143
+
version = "0.53.1"
1144
1144
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1145
1145
+
checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499"
1146
1146
+
1147
1147
+
[[package]]
1148
1148
+
name = "windows_x86_64_gnullvm"
1149
1149
+
version = "0.53.1"
1150
1150
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1151
1151
+
checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1"
1152
1152
+
1153
1153
+
[[package]]
1154
1154
+
name = "windows_x86_64_msvc"
1155
1155
+
version = "0.53.1"
1156
1156
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1157
1157
+
checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650"
1158
1158
+
1159
1159
+
[[package]]
1160
1160
+
name = "wit-bindgen"
1161
1161
+
version = "0.46.0"
1162
1162
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1163
1163
+
checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59"
1164
1164
+
1165
1165
+
[[package]]
1166
1166
+
name = "worker-manager"
1167
1167
+
version = "0.1.0"
1168
1168
+
dependencies = [
1169
1169
+
"dotenvy",
1170
1170
+
"futures-util",
1171
1171
+
"serde",
1172
1172
+
"serde_json",
1173
1173
+
"tokio",
1174
1174
+
"tokio-tungstenite",
1175
1175
+
"tracing",
1176
1176
+
"tracing-subscriber",
1177
1177
+
"url",
1178
1178
+
]
1179
1179
+
1180
1180
+
[[package]]
1181
1181
+
name = "writeable"
1182
1182
+
version = "0.6.1"
1183
1183
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1184
1184
+
checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb"
1185
1185
+
1186
1186
+
[[package]]
1187
1187
+
name = "yoke"
1188
1188
+
version = "0.8.0"
1189
1189
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1190
1190
+
checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc"
1191
1191
+
dependencies = [
1192
1192
+
"serde",
1193
1193
+
"stable_deref_trait",
1194
1194
+
"yoke-derive",
1195
1195
+
"zerofrom",
1196
1196
+
]
1197
1197
+
1198
1198
+
[[package]]
1199
1199
+
name = "yoke-derive"
1200
1200
+
version = "0.8.0"
1201
1201
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1202
1202
+
checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6"
1203
1203
+
dependencies = [
1204
1204
+
"proc-macro2",
1205
1205
+
"quote",
1206
1206
+
"syn",
1207
1207
+
"synstructure",
1208
1208
+
]
1209
1209
+
1210
1210
+
[[package]]
1211
1211
+
name = "zerocopy"
1212
1212
+
version = "0.8.27"
1213
1213
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1214
1214
+
checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c"
1215
1215
+
dependencies = [
1216
1216
+
"zerocopy-derive",
1217
1217
+
]
1218
1218
+
1219
1219
+
[[package]]
1220
1220
+
name = "zerocopy-derive"
1221
1221
+
version = "0.8.27"
1222
1222
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1223
1223
+
checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831"
1224
1224
+
dependencies = [
1225
1225
+
"proc-macro2",
1226
1226
+
"quote",
1227
1227
+
"syn",
1228
1228
+
]
1229
1229
+
1230
1230
+
[[package]]
1231
1231
+
name = "zerofrom"
1232
1232
+
version = "0.1.6"
1233
1233
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1234
1234
+
checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5"
1235
1235
+
dependencies = [
1236
1236
+
"zerofrom-derive",
1237
1237
+
]
1238
1238
+
1239
1239
+
[[package]]
1240
1240
+
name = "zerofrom-derive"
1241
1241
+
version = "0.1.6"
1242
1242
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1243
1243
+
checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502"
1244
1244
+
dependencies = [
1245
1245
+
"proc-macro2",
1246
1246
+
"quote",
1247
1247
+
"syn",
1248
1248
+
"synstructure",
1249
1249
+
]
1250
1250
+
1251
1251
+
[[package]]
1252
1252
+
name = "zerotrie"
1253
1253
+
version = "0.2.2"
1254
1254
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1255
1255
+
checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595"
1256
1256
+
dependencies = [
1257
1257
+
"displaydoc",
1258
1258
+
"yoke",
1259
1259
+
"zerofrom",
1260
1260
+
]
1261
1261
+
1262
1262
+
[[package]]
1263
1263
+
name = "zerovec"
1264
1264
+
version = "0.11.4"
1265
1265
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1266
1266
+
checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b"
1267
1267
+
dependencies = [
1268
1268
+
"yoke",
1269
1269
+
"zerofrom",
1270
1270
+
"zerovec-derive",
1271
1271
+
]
1272
1272
+
1273
1273
+
[[package]]
1274
1274
+
name = "zerovec-derive"
1275
1275
+
version = "0.11.1"
1276
1276
+
source = "registry+https://github.com/rust-lang/crates.io-index"
1277
1277
+
checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f"
1278
1278
+
dependencies = [
1279
1279
+
"proc-macro2",
1280
1280
+
"quote",
1281
1281
+
"syn",
1282
1282
+
]
+15
worker-plane/worker-manager/Cargo.toml
···
1
1
+
[package]
2
2
+
name = "worker-manager"
3
3
+
version = "0.1.0"
4
4
+
edition = "2024"
5
5
+
6
6
+
[dependencies]
7
7
+
dotenvy = "0.15"
8
8
+
futures-util = "0.3"
9
9
+
serde = { version = "1.0", features = ["derive"] }
10
10
+
serde_json = "1.0"
11
11
+
tokio = { version = "1", features = ["full"] }
12
12
+
tokio-tungstenite = { version = "0.21", features = ["native-tls"] }
13
13
+
tracing = "0.1"
14
14
+
tracing-subscriber = "0.3"
15
15
+
url = "2.5"
+114
worker-plane/worker-manager/src/main.rs
···
1
1
+
use dotenvy::dotenv;
2
2
+
use futures_util::{SinkExt, StreamExt};
3
3
+
use serde::{Deserialize, Serialize};
4
4
+
use std::env;
5
5
+
use std::time::Duration;
6
6
+
use tokio_tungstenite::{connect_async, tungstenite::Message};
7
7
+
use tracing::{error, info, instrument};
8
8
+
use tracing_subscriber::FmtSubscriber;
9
9
+
use url::Url;
10
10
+
11
11
+
#[derive(Debug, Serialize, Deserialize, Clone)]
12
12
+
struct Job {
13
13
+
id: String,
14
14
+
payload: String,
15
15
+
}
16
16
+
17
17
+
#[derive(Debug, Serialize, Deserialize, Clone)]
18
18
+
struct Bid {
19
19
+
job_id: String,
20
20
+
available_cpu_cores: u32,
21
21
+
available_ram_mb: u32,
22
22
+
available_storage_mb: u32,
23
23
+
}
24
24
+
25
25
+
#[derive(Debug, Serialize, Deserialize)]
26
26
+
#[serde(tag = "type")]
27
27
+
enum ServerMessage {
28
28
+
PingForBids { job_id: String },
29
29
+
AssignJob { job: Job },
30
30
+
Acknowledge,
31
31
+
}
32
32
+
33
33
+
#[derive(Debug, Serialize, Deserialize)]
34
34
+
#[serde(tag = "type")]
35
35
+
enum WorkerMessage {
36
36
+
BidResponse(Bid),
37
37
+
}
38
38
+
39
39
+
#[tokio::main]
40
40
+
#[instrument]
41
41
+
async fn main() {
42
42
+
dotenv().ok();
43
43
+
FmtSubscriber::builder()
44
44
+
.with_max_level(tracing::Level::INFO)
45
45
+
.init();
46
46
+
47
47
+
let server_url = env::var("CONTROL_PLANE_URL")
48
48
+
.unwrap_or_else(|_| "ws://127.0.0.1:8080".to_string());
49
49
+
50
50
+
info!("Attempting to connect to job board at {}", server_url);
51
51
+
52
52
+
let url = Url::parse(&server_url).expect("Failed to parse server URL");
53
53
+
54
54
+
loop {
55
55
+
match connect_async(&url).await {
56
56
+
Ok((ws_stream, _response)) => {
57
57
+
info!("Successfully connected to job board");
58
58
+
let (mut write, mut read) = ws_stream.split();
59
59
+
60
60
+
while let Some(msg) = read.next().await {
61
61
+
match msg {
62
62
+
Ok(Message::Text(text)) => {
63
63
+
match serde_json::from_str::<ServerMessage>(&text) {
64
64
+
Ok(server_msg) => match server_msg {
65
65
+
ServerMessage::PingForBids { job_id } => {
66
66
+
info!("Received bid request for job_id: {}", job_id);
67
67
+
let bid = Bid {
68
68
+
job_id: job_id.clone(),
69
69
+
available_cpu_cores: 8,
70
70
+
available_ram_mb: 16384,
71
71
+
available_storage_mb: 51200,
72
72
+
};
73
73
+
let response_msg = WorkerMessage::BidResponse(bid);
74
74
+
let response_json = serde_json::to_string(&response_msg)
75
75
+
.expect("Failed to serialize bid response");
76
76
+
77
77
+
if let Err(e) = write.send(Message::Text(response_json.clone())).await {
78
78
+
error!("Failed to send bid response: {}", e);
79
79
+
break;
80
80
+
}
81
81
+
info!("Sent bid for job_id: {}", job_id);
82
82
+
}
83
83
+
ServerMessage::AssignJob { job } => {
84
84
+
info!("Won bid! Assigned job: {:?}", job);
85
85
+
}
86
86
+
ServerMessage::Acknowledge => {
87
87
+
info!("Received Acknowledge from server.");
88
88
+
}
89
89
+
},
90
90
+
Err(e) => {
91
91
+
error!("Failed to deserialize server message: {}. Raw text: {}", e, text);
92
92
+
}
93
93
+
}
94
94
+
}
95
95
+
Ok(Message::Close(_)) => {
96
96
+
info!("Server closed the connection.");
97
97
+
break;
98
98
+
}
99
99
+
Err(e) => {
100
100
+
error!("Error receiving message: {}", e);
101
101
+
break;
102
102
+
}
103
103
+
_ => {}
104
104
+
}
105
105
+
}
106
106
+
}
107
107
+
Err(e) => {
108
108
+
error!("Failed to connect: {}", e);
109
109
+
}
110
110
+
}
111
111
+
info!("Disconnected. Reconnecting in 5 seconds...");
112
112
+
tokio::time::sleep(Duration::from_secs(5)).await;
113
113
+
}
114
114
+
}