kino 0.2.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +72 -0
- data/Cargo.lock +192 -52
- data/README.md +131 -16
- data/exe/kino +0 -4
- data/ext/kino/Cargo.toml +4 -2
- data/ext/kino/src/access_log.rs +245 -0
- data/ext/kino/src/control.rs +701 -0
- data/ext/kino/src/cpus.rs +37 -0
- data/ext/kino/src/lib.rs +22 -1
- data/ext/kino/src/listen.rs +134 -0
- data/ext/kino/src/log.rs +144 -0
- data/ext/kino/src/mono.rs +26 -0
- data/ext/kino/src/queue.rs +11 -0
- data/ext/kino/src/registry.rs +158 -0
- data/ext/kino/src/request.rs +52 -2
- data/ext/kino/src/server.rs +229 -53
- data/ext/kino/src/style.rs +42 -39
- data/lib/kino/cli.rb +23 -9
- data/lib/kino/configuration.rb +77 -5
- data/lib/kino/errors_stream.rb +4 -3
- data/lib/kino/hook_fire.rb +22 -0
- data/lib/kino/log.rb +104 -0
- data/lib/kino/quarantine_monitor.rb +73 -0
- data/lib/kino/ractor_supervisor.rb +66 -16
- data/lib/kino/server.rb +201 -34
- data/lib/kino/templates/kino.rb.tt +62 -5
- data/lib/kino/version.rb +1 -1
- data/lib/kino/worker.rb +46 -30
- data/lib/kino/worker_hooks.rb +13 -0
- data/lib/kino.rb +14 -0
- data/lib/rackup/handler/kino.rb +88 -0
- data/sig/kino.rbs +71 -1
- metadata +26 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 96ea3372ae6524dd1243f75354485613d0e49c38005f870bc83c57a46034e579
|
|
4
|
+
data.tar.gz: c71ac26d45838d6d5ad573e929ad72612f970799a50686b55324304e65a8daae
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5f918bd194f00189487a4229f9cffd6005a4b60c6357b21acb6d06e496b9d27ba4487002f8a7fea28f8e2f21324353d3e2fc175e9fcf04906b581d4f2c5309f9
|
|
7
|
+
data.tar.gz: 30b42185d524fc97c4f16f13e27573215ff25d5af6f91881ae91a3c8450945c3d380130aec7acf897d19e2707df5a387f62cdcca9513aa34a148960dff5f420b
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,75 @@
|
|
|
1
|
+
## [0.4.0] - 2026-08-22
|
|
2
|
+
|
|
3
|
+
- Rack handler: `rails server -u kino` and `rackup -s kino` boot Kino
|
|
4
|
+
through `Rackup::Handler::Kino`, reading the same config file as the
|
|
5
|
+
`kino` CLI with the host's flags on top; `rackup -s kino --help` lists
|
|
6
|
+
the `-O` options (Workers, Threads, Mode, Config).
|
|
7
|
+
- The config file is also looked up at `config/kino.rb` (the Rails
|
|
8
|
+
layout) when there is no `kino.rb`, by the CLI and the handler alike.
|
|
9
|
+
- `Kino::Server#run` serves an already built server the way
|
|
10
|
+
`Kino::Server.run` does (banner, signal traps, block until shutdown),
|
|
11
|
+
and syncs stdout there so the banner is never held back by block
|
|
12
|
+
buffering under a pipe, whichever entry point booted the server.
|
|
13
|
+
- `workers` now defaults to `Kino.available_parallelism`, the CPUs the
|
|
14
|
+
process may actually use: the affinity mask and, in a container, the
|
|
15
|
+
cgroup CPU quota (a pod limited to 2 CPUs on a 64-core node gets 2
|
|
16
|
+
workers, not 64). `Etc.nprocessors` only ever saw the mask.
|
|
17
|
+
- `bind "unix:///path/to.sock"` listens on a unix domain socket, the
|
|
18
|
+
usual shape behind nginx: a stale socket file is reclaimed, a live one
|
|
19
|
+
is refused, and the file is removed on shutdown. `port` is unused on
|
|
20
|
+
it and TLS is rejected (terminate TLS at the proxy). Requests arriving
|
|
21
|
+
over the socket report `REMOTE_ADDR` 127.0.0.1.
|
|
22
|
+
- `Kino::Server#url`, `#control_url`, and `#unix?` report where a started
|
|
23
|
+
server and its control plane listen.
|
|
24
|
+
- The access log is two records per request: an arrival line queued
|
|
25
|
+
before the app runs (a hang shows as an arrow with no answer) and a
|
|
26
|
+
status-tinted completion line with a timing breakdown of `ruby`,
|
|
27
|
+
`kino`, and `wait`, the `ruby` part carrying the GC pause and objects
|
|
28
|
+
allocated where one request at a time can own the VM's counters
|
|
29
|
+
(`:threaded`, or `:ractor` with `workers 1`). Local timestamps with
|
|
30
|
+
their UTC offset; a blank line between requests. The former one-line
|
|
31
|
+
format is gone.
|
|
32
|
+
- A failed request is reported as `500 GET /path · Class: message (site)`
|
|
33
|
+
followed by its backtrace relative to the working directory, the app's
|
|
34
|
+
own frames first, the rest folded into `… N more`.
|
|
35
|
+
- Every line Kino logs about itself (draining, a crash and its respawn,
|
|
36
|
+
hook failures, quarantine, the USR1 stats line, `rack.errors`) reads
|
|
37
|
+
`kino[<pid>] <source>: message`, the source naming the worker that
|
|
38
|
+
spoke (`worker-3`, `worker-3/thread-2`) or `main`; worker ractors and
|
|
39
|
+
threads now carry those names. The label is dim, yellow, or red by
|
|
40
|
+
level on color terminals. `Kino::Log.info`, `.warn`, and `.error` are
|
|
41
|
+
public, for hooks.
|
|
42
|
+
- The startup banner lists the Ruby build with its JIT and parser flags,
|
|
43
|
+
the environment, the topology, the pid, and the control-plane address
|
|
44
|
+
when one is bound.
|
|
45
|
+
|
|
46
|
+
## [0.3.0] - 2026-08-13
|
|
47
|
+
|
|
48
|
+
- Queue-time histogram: `/metrics` exposes `kino_request_queue_seconds`, a
|
|
49
|
+
histogram of how long each request waited for a free worker (the
|
|
50
|
+
saturation signal), and `server.stats`/`/stats` gain `queue_time`
|
|
51
|
+
(count and summed seconds). Measured internally with a monotonic clock,
|
|
52
|
+
so it needs no proxy header and is immune to clock skew.
|
|
53
|
+
- Lifecycle hooks: `after_boot`, `after_worker_boot`,
|
|
54
|
+
`after_request_complete`, and `on_worker_exit` join `on_error`, so apps
|
|
55
|
+
can wire their own metrics, readiness, and error tracking. The
|
|
56
|
+
worker-context hooks must be Ractor-shareable in `:ractor` mode; a raising
|
|
57
|
+
hook is logged and never kills a worker.
|
|
58
|
+
- Stuck-worker quarantine: past `quarantine_timeout`, a wedged dispatch
|
|
59
|
+
slot is quarantined and a replacement worker is spawned to restore
|
|
60
|
+
capacity (capped by `quarantine_max`), surfaced via `/stats`, `/metrics`,
|
|
61
|
+
and `server.stats`. The wedged worker is never force-killed.
|
|
62
|
+
- Control plane: a read-only monitoring listener (`control_bind`,
|
|
63
|
+
optional `control_token`) serving live stats as JSON at `/stats`,
|
|
64
|
+
Prometheus metrics at `/metrics`, and `/ready`/`/live` probes, answered
|
|
65
|
+
from the native layer on a dedicated thread so it stays responsive
|
|
66
|
+
while workers are busy, stuck, or draining.
|
|
67
|
+
- Per-worker stats: `/stats`, `/metrics`, and `server.stats` now break the
|
|
68
|
+
counters down per dispatch slot (served, in-flight, and `busy_ms`, the
|
|
69
|
+
age of the slot's current request), so a stuck slot is visible
|
|
70
|
+
individually.
|
|
71
|
+
- Update Rust and Ruby dependencies.
|
|
72
|
+
|
|
1
73
|
## [0.2.1] - 2026-07-27
|
|
2
74
|
|
|
3
75
|
- Update Rust dependencies for Kino.
|
data/Cargo.lock
CHANGED
|
@@ -17,9 +17,9 @@ dependencies = [
|
|
|
17
17
|
|
|
18
18
|
[[package]]
|
|
19
19
|
name = "aho-corasick"
|
|
20
|
-
version = "1.1.
|
|
20
|
+
version = "1.1.5"
|
|
21
21
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
22
|
-
checksum = "
|
|
22
|
+
checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba"
|
|
23
23
|
dependencies = [
|
|
24
24
|
"memchr",
|
|
25
25
|
]
|
|
@@ -42,7 +42,7 @@ version = "0.72.1"
|
|
|
42
42
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
43
43
|
checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895"
|
|
44
44
|
dependencies = [
|
|
45
|
-
"bitflags",
|
|
45
|
+
"bitflags 2.13.1",
|
|
46
46
|
"cexpr",
|
|
47
47
|
"clang-sys",
|
|
48
48
|
"itertools",
|
|
@@ -51,9 +51,15 @@ dependencies = [
|
|
|
51
51
|
"regex",
|
|
52
52
|
"rustc-hash",
|
|
53
53
|
"shlex 1.3.0",
|
|
54
|
-
"syn",
|
|
54
|
+
"syn 2.0.119",
|
|
55
55
|
]
|
|
56
56
|
|
|
57
|
+
[[package]]
|
|
58
|
+
name = "bitflags"
|
|
59
|
+
version = "1.3.2"
|
|
60
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
61
|
+
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
|
62
|
+
|
|
57
63
|
[[package]]
|
|
58
64
|
name = "bitflags"
|
|
59
65
|
version = "2.13.1"
|
|
@@ -74,9 +80,9 @@ checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
|
|
|
74
80
|
|
|
75
81
|
[[package]]
|
|
76
82
|
name = "cc"
|
|
77
|
-
version = "1.4.
|
|
83
|
+
version = "1.4.2"
|
|
78
84
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
79
|
-
checksum = "
|
|
85
|
+
checksum = "5d262e149917187838d5b42777c8253bcb64500067342904e7d429499a6f277e"
|
|
80
86
|
dependencies = [
|
|
81
87
|
"find-msvc-tools",
|
|
82
88
|
"shlex 2.0.1",
|
|
@@ -99,15 +105,46 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
|
|
|
99
105
|
|
|
100
106
|
[[package]]
|
|
101
107
|
name = "clang-sys"
|
|
102
|
-
version = "1.
|
|
108
|
+
version = "1.9.1"
|
|
103
109
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
104
|
-
checksum = "
|
|
110
|
+
checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a"
|
|
105
111
|
dependencies = [
|
|
106
112
|
"glob",
|
|
107
113
|
"libc",
|
|
108
114
|
"libloading",
|
|
109
115
|
]
|
|
110
116
|
|
|
117
|
+
[[package]]
|
|
118
|
+
name = "defmt"
|
|
119
|
+
version = "1.1.1"
|
|
120
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
121
|
+
checksum = "e2953bfe4f93bbd20cc71198842756f77d161884c99ebbabc41d80231ded88d1"
|
|
122
|
+
dependencies = [
|
|
123
|
+
"bitflags 1.3.2",
|
|
124
|
+
"defmt-macros",
|
|
125
|
+
]
|
|
126
|
+
|
|
127
|
+
[[package]]
|
|
128
|
+
name = "defmt-macros"
|
|
129
|
+
version = "1.1.1"
|
|
130
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
131
|
+
checksum = "bad9c72e7ca2137e0dc3813245a0d282fd6daad32fd800af018306a9169b5fe8"
|
|
132
|
+
dependencies = [
|
|
133
|
+
"defmt-parser",
|
|
134
|
+
"proc-macro2",
|
|
135
|
+
"quote",
|
|
136
|
+
"syn 2.0.119",
|
|
137
|
+
]
|
|
138
|
+
|
|
139
|
+
[[package]]
|
|
140
|
+
name = "defmt-parser"
|
|
141
|
+
version = "1.0.0"
|
|
142
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
143
|
+
checksum = "10d60334b3b2e7c9d91ef8150abfb6fa4c1c39ebbcf4a81c2e346aad939fee3e"
|
|
144
|
+
dependencies = [
|
|
145
|
+
"thiserror",
|
|
146
|
+
]
|
|
147
|
+
|
|
111
148
|
[[package]]
|
|
112
149
|
name = "either"
|
|
113
150
|
version = "1.17.0"
|
|
@@ -131,9 +168,9 @@ dependencies = [
|
|
|
131
168
|
|
|
132
169
|
[[package]]
|
|
133
170
|
name = "find-msvc-tools"
|
|
134
|
-
version = "0.1.
|
|
171
|
+
version = "0.1.10"
|
|
135
172
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
136
|
-
checksum = "
|
|
173
|
+
checksum = "26b73573e6edcd2af0cdf47bd6cb58f0b3839491263c314eaad1ccf24430e1de"
|
|
137
174
|
|
|
138
175
|
[[package]]
|
|
139
176
|
name = "flume"
|
|
@@ -155,24 +192,24 @@ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
|
|
|
155
192
|
|
|
156
193
|
[[package]]
|
|
157
194
|
name = "futures-channel"
|
|
158
|
-
version = "0.3.
|
|
195
|
+
version = "0.3.34"
|
|
159
196
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
160
|
-
checksum = "
|
|
197
|
+
checksum = "b1f9e3d69d39e4862ffed03ed071a76f9a13ba1d9109d355b0f0aa6b15e393c4"
|
|
161
198
|
dependencies = [
|
|
162
199
|
"futures-core",
|
|
163
200
|
]
|
|
164
201
|
|
|
165
202
|
[[package]]
|
|
166
203
|
name = "futures-core"
|
|
167
|
-
version = "0.3.
|
|
204
|
+
version = "0.3.34"
|
|
168
205
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
169
|
-
checksum = "
|
|
206
|
+
checksum = "92d699e522242e69e3003b94ecc1f960f3a5e015aa7c5d7486e65ad01dd94f5e"
|
|
170
207
|
|
|
171
208
|
[[package]]
|
|
172
209
|
name = "futures-sink"
|
|
173
|
-
version = "0.3.
|
|
210
|
+
version = "0.3.34"
|
|
174
211
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
175
|
-
checksum = "
|
|
212
|
+
checksum = "1944426bf7d03f1d14f708785e4b33efd750b36d48a157b836b3efc15ede8e1d"
|
|
176
213
|
|
|
177
214
|
[[package]]
|
|
178
215
|
name = "getrandom"
|
|
@@ -229,9 +266,9 @@ dependencies = [
|
|
|
229
266
|
|
|
230
267
|
[[package]]
|
|
231
268
|
name = "http"
|
|
232
|
-
version = "1.
|
|
269
|
+
version = "1.5.0"
|
|
233
270
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
234
|
-
checksum = "
|
|
271
|
+
checksum = "918d3568bebf352712bc2ef3d46a8bcf1a75b373be6539de198e9105cbbf9ce0"
|
|
235
272
|
dependencies = [
|
|
236
273
|
"bytes",
|
|
237
274
|
"itoa",
|
|
@@ -249,9 +286,9 @@ dependencies = [
|
|
|
249
286
|
|
|
250
287
|
[[package]]
|
|
251
288
|
name = "http-body-util"
|
|
252
|
-
version = "0.1.
|
|
289
|
+
version = "0.1.5"
|
|
253
290
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
254
|
-
checksum = "
|
|
291
|
+
checksum = "23169fe34a5fbcdd3f3862e78fb9b6fccd5f02a6dc6f732547005d45631ce71c"
|
|
255
292
|
dependencies = [
|
|
256
293
|
"bytes",
|
|
257
294
|
"futures-core",
|
|
@@ -321,11 +358,48 @@ version = "1.0.18"
|
|
|
321
358
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
322
359
|
checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
|
|
323
360
|
|
|
361
|
+
[[package]]
|
|
362
|
+
name = "jiff"
|
|
363
|
+
version = "0.2.35"
|
|
364
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
365
|
+
checksum = "668b7183bd07af9a4885f5c35b0cc5c83c4607a913c16b7e17291832910d2dcc"
|
|
366
|
+
dependencies = [
|
|
367
|
+
"defmt",
|
|
368
|
+
"jiff-core",
|
|
369
|
+
"jiff-static",
|
|
370
|
+
"log",
|
|
371
|
+
"portable-atomic",
|
|
372
|
+
"portable-atomic-util",
|
|
373
|
+
"serde_core",
|
|
374
|
+
"windows-link",
|
|
375
|
+
]
|
|
376
|
+
|
|
377
|
+
[[package]]
|
|
378
|
+
name = "jiff-core"
|
|
379
|
+
version = "0.1.0"
|
|
380
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
381
|
+
checksum = "7feca88439efe53da3754500c1851dedf3cb36c524dd5cf8225cc0794de95d09"
|
|
382
|
+
dependencies = [
|
|
383
|
+
"defmt",
|
|
384
|
+
]
|
|
385
|
+
|
|
386
|
+
[[package]]
|
|
387
|
+
name = "jiff-static"
|
|
388
|
+
version = "0.2.35"
|
|
389
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
390
|
+
checksum = "3a69dcb3a21cfb32ce1cd056169337ca284af0766dd766e7878819b251a49204"
|
|
391
|
+
dependencies = [
|
|
392
|
+
"jiff-core",
|
|
393
|
+
"proc-macro2",
|
|
394
|
+
"quote",
|
|
395
|
+
"syn 2.0.119",
|
|
396
|
+
]
|
|
397
|
+
|
|
324
398
|
[[package]]
|
|
325
399
|
name = "js-sys"
|
|
326
|
-
version = "0.3.
|
|
400
|
+
version = "0.3.104"
|
|
327
401
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
328
|
-
checksum = "
|
|
402
|
+
checksum = "0e0c1080212aad755ea003d18543e8768dd432c48819efd73a7bf1e39b7a5a3a"
|
|
329
403
|
dependencies = [
|
|
330
404
|
"cfg-if",
|
|
331
405
|
"wasm-bindgen",
|
|
@@ -333,16 +407,16 @@ dependencies = [
|
|
|
333
407
|
|
|
334
408
|
[[package]]
|
|
335
409
|
name = "kino"
|
|
336
|
-
version = "0.
|
|
410
|
+
version = "0.4.0"
|
|
337
411
|
dependencies = [
|
|
338
412
|
"ahash",
|
|
339
413
|
"bytes",
|
|
340
414
|
"flume",
|
|
341
415
|
"http",
|
|
342
416
|
"http-body-util",
|
|
343
|
-
"httpdate",
|
|
344
417
|
"hyper",
|
|
345
418
|
"hyper-util",
|
|
419
|
+
"jiff",
|
|
346
420
|
"lru",
|
|
347
421
|
"magnus",
|
|
348
422
|
"mimalloc",
|
|
@@ -403,9 +477,9 @@ checksum = "0ceec5bc11778974d1bcb055b18002eba7f4b3518b6a0081b3af5f21666da9ad"
|
|
|
403
477
|
|
|
404
478
|
[[package]]
|
|
405
479
|
name = "lru"
|
|
406
|
-
version = "0.18.
|
|
480
|
+
version = "0.18.2"
|
|
407
481
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
408
|
-
checksum = "
|
|
482
|
+
checksum = "5d2f2f9b4ba7e6b24d95e7e899329d35be83bcded72c8540cdd5368932d1d90a"
|
|
409
483
|
dependencies = [
|
|
410
484
|
"hashbrown",
|
|
411
485
|
]
|
|
@@ -430,7 +504,7 @@ checksum = "47607461fd8e1513cb4f2076c197d8092d921a1ea75bd08af97398f593751892"
|
|
|
430
504
|
dependencies = [
|
|
431
505
|
"proc-macro2",
|
|
432
506
|
"quote",
|
|
433
|
-
"syn",
|
|
507
|
+
"syn 2.0.119",
|
|
434
508
|
]
|
|
435
509
|
|
|
436
510
|
[[package]]
|
|
@@ -510,6 +584,21 @@ version = "0.2.17"
|
|
|
510
584
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
511
585
|
checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd"
|
|
512
586
|
|
|
587
|
+
[[package]]
|
|
588
|
+
name = "portable-atomic"
|
|
589
|
+
version = "1.15.0"
|
|
590
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
591
|
+
checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
|
|
592
|
+
|
|
593
|
+
[[package]]
|
|
594
|
+
name = "portable-atomic-util"
|
|
595
|
+
version = "0.2.7"
|
|
596
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
597
|
+
checksum = "c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618"
|
|
598
|
+
dependencies = [
|
|
599
|
+
"portable-atomic",
|
|
600
|
+
]
|
|
601
|
+
|
|
513
602
|
[[package]]
|
|
514
603
|
name = "proc-macro2"
|
|
515
604
|
version = "1.0.107"
|
|
@@ -561,7 +650,7 @@ dependencies = [
|
|
|
561
650
|
"quote",
|
|
562
651
|
"regex",
|
|
563
652
|
"shell-words",
|
|
564
|
-
"syn",
|
|
653
|
+
"syn 2.0.119",
|
|
565
654
|
]
|
|
566
655
|
|
|
567
656
|
[[package]]
|
|
@@ -576,7 +665,7 @@ version = "0.5.18"
|
|
|
576
665
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
577
666
|
checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
|
|
578
667
|
dependencies = [
|
|
579
|
-
"bitflags",
|
|
668
|
+
"bitflags 2.13.1",
|
|
580
669
|
]
|
|
581
670
|
|
|
582
671
|
[[package]]
|
|
@@ -593,9 +682,9 @@ dependencies = [
|
|
|
593
682
|
|
|
594
683
|
[[package]]
|
|
595
684
|
name = "regex-automata"
|
|
596
|
-
version = "0.4.
|
|
685
|
+
version = "0.4.18"
|
|
597
686
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
598
|
-
checksum = "
|
|
687
|
+
checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2"
|
|
599
688
|
dependencies = [
|
|
600
689
|
"aho-corasick",
|
|
601
690
|
"memchr",
|
|
@@ -630,9 +719,9 @@ checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"
|
|
|
630
719
|
|
|
631
720
|
[[package]]
|
|
632
721
|
name = "rustls"
|
|
633
|
-
version = "0.23.
|
|
722
|
+
version = "0.23.43"
|
|
634
723
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
635
|
-
checksum = "
|
|
724
|
+
checksum = "0283386ce02abc0151e1761d08802dfe86c173b0b494af5cbc086574e453da06"
|
|
636
725
|
dependencies = [
|
|
637
726
|
"log",
|
|
638
727
|
"once_cell",
|
|
@@ -663,9 +752,9 @@ dependencies = [
|
|
|
663
752
|
|
|
664
753
|
[[package]]
|
|
665
754
|
name = "rustls-webpki"
|
|
666
|
-
version = "0.103.
|
|
755
|
+
version = "0.103.14"
|
|
667
756
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
668
|
-
checksum = "
|
|
757
|
+
checksum = "0527518605e68109d875e248ea259b6758801cf165e4b2c2733ae3b51f12535a"
|
|
669
758
|
dependencies = [
|
|
670
759
|
"ring",
|
|
671
760
|
"rustls-pki-types",
|
|
@@ -690,6 +779,26 @@ version = "0.3.6"
|
|
|
690
779
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
691
780
|
checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc"
|
|
692
781
|
|
|
782
|
+
[[package]]
|
|
783
|
+
name = "serde_core"
|
|
784
|
+
version = "1.0.229"
|
|
785
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
786
|
+
checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
|
|
787
|
+
dependencies = [
|
|
788
|
+
"serde_derive",
|
|
789
|
+
]
|
|
790
|
+
|
|
791
|
+
[[package]]
|
|
792
|
+
name = "serde_derive"
|
|
793
|
+
version = "1.0.229"
|
|
794
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
795
|
+
checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
|
|
796
|
+
dependencies = [
|
|
797
|
+
"proc-macro2",
|
|
798
|
+
"quote",
|
|
799
|
+
"syn 3.0.3",
|
|
800
|
+
]
|
|
801
|
+
|
|
693
802
|
[[package]]
|
|
694
803
|
name = "shell-words"
|
|
695
804
|
version = "1.1.1"
|
|
@@ -750,6 +859,37 @@ dependencies = [
|
|
|
750
859
|
"unicode-ident",
|
|
751
860
|
]
|
|
752
861
|
|
|
862
|
+
[[package]]
|
|
863
|
+
name = "syn"
|
|
864
|
+
version = "3.0.3"
|
|
865
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
866
|
+
checksum = "53e9bae58849f64dfa4f5d5ae372c8341f7305f82a3868709269343628b659a3"
|
|
867
|
+
dependencies = [
|
|
868
|
+
"proc-macro2",
|
|
869
|
+
"quote",
|
|
870
|
+
"unicode-ident",
|
|
871
|
+
]
|
|
872
|
+
|
|
873
|
+
[[package]]
|
|
874
|
+
name = "thiserror"
|
|
875
|
+
version = "2.0.20"
|
|
876
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
877
|
+
checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f"
|
|
878
|
+
dependencies = [
|
|
879
|
+
"thiserror-impl",
|
|
880
|
+
]
|
|
881
|
+
|
|
882
|
+
[[package]]
|
|
883
|
+
name = "thiserror-impl"
|
|
884
|
+
version = "2.0.20"
|
|
885
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
886
|
+
checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af"
|
|
887
|
+
dependencies = [
|
|
888
|
+
"proc-macro2",
|
|
889
|
+
"quote",
|
|
890
|
+
"syn 3.0.3",
|
|
891
|
+
]
|
|
892
|
+
|
|
753
893
|
[[package]]
|
|
754
894
|
name = "tokio"
|
|
755
895
|
version = "1.53.1"
|
|
@@ -767,13 +907,13 @@ dependencies = [
|
|
|
767
907
|
|
|
768
908
|
[[package]]
|
|
769
909
|
name = "tokio-macros"
|
|
770
|
-
version = "2.7.
|
|
910
|
+
version = "2.7.2"
|
|
771
911
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
772
|
-
checksum = "
|
|
912
|
+
checksum = "78773a2a397f451582ce068015985c33193cf6dea8b74d2a639fe457b2f07b0e"
|
|
773
913
|
dependencies = [
|
|
774
914
|
"proc-macro2",
|
|
775
915
|
"quote",
|
|
776
|
-
"syn",
|
|
916
|
+
"syn 3.0.3",
|
|
777
917
|
]
|
|
778
918
|
|
|
779
919
|
[[package]]
|
|
@@ -821,9 +961,9 @@ dependencies = [
|
|
|
821
961
|
|
|
822
962
|
[[package]]
|
|
823
963
|
name = "wasm-bindgen"
|
|
824
|
-
version = "0.2.
|
|
964
|
+
version = "0.2.127"
|
|
825
965
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
826
|
-
checksum = "
|
|
966
|
+
checksum = "1b70935747edd64d89de3efa29d73789b806c15798f8e7dca4d8ac356b50ce70"
|
|
827
967
|
dependencies = [
|
|
828
968
|
"cfg-if",
|
|
829
969
|
"once_cell",
|
|
@@ -834,9 +974,9 @@ dependencies = [
|
|
|
834
974
|
|
|
835
975
|
[[package]]
|
|
836
976
|
name = "wasm-bindgen-macro"
|
|
837
|
-
version = "0.2.
|
|
977
|
+
version = "0.2.127"
|
|
838
978
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
839
|
-
checksum = "
|
|
979
|
+
checksum = "77775f8f3f7217702089053b94958f8f54061a3f663417df76e19cbdcca29bc1"
|
|
840
980
|
dependencies = [
|
|
841
981
|
"quote",
|
|
842
982
|
"wasm-bindgen-macro-support",
|
|
@@ -844,22 +984,22 @@ dependencies = [
|
|
|
844
984
|
|
|
845
985
|
[[package]]
|
|
846
986
|
name = "wasm-bindgen-macro-support"
|
|
847
|
-
version = "0.2.
|
|
987
|
+
version = "0.2.127"
|
|
848
988
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
849
|
-
checksum = "
|
|
989
|
+
checksum = "e11d33f857dc2fb11b8bc75aee111aa9cbeb12cd9f25efd3d4c2a3dd4e235284"
|
|
850
990
|
dependencies = [
|
|
851
991
|
"bumpalo",
|
|
852
992
|
"proc-macro2",
|
|
853
993
|
"quote",
|
|
854
|
-
"syn",
|
|
994
|
+
"syn 2.0.119",
|
|
855
995
|
"wasm-bindgen-shared",
|
|
856
996
|
]
|
|
857
997
|
|
|
858
998
|
[[package]]
|
|
859
999
|
name = "wasm-bindgen-shared"
|
|
860
|
-
version = "0.2.
|
|
1000
|
+
version = "0.2.127"
|
|
861
1001
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
862
|
-
checksum = "
|
|
1002
|
+
checksum = "7ef64dbcc55df09c7e5a46182d181c2cfa3e925f3da937ea764728b4bbb9dcbf"
|
|
863
1003
|
dependencies = [
|
|
864
1004
|
"unicode-ident",
|
|
865
1005
|
]
|
|
@@ -960,22 +1100,22 @@ checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e"
|
|
|
960
1100
|
|
|
961
1101
|
[[package]]
|
|
962
1102
|
name = "zerocopy"
|
|
963
|
-
version = "0.8.
|
|
1103
|
+
version = "0.8.56"
|
|
964
1104
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
965
|
-
checksum = "
|
|
1105
|
+
checksum = "556764e583adb45a9f8d413c2a147fa7e8d821e48e12b14fd560b607998b75eb"
|
|
966
1106
|
dependencies = [
|
|
967
1107
|
"zerocopy-derive",
|
|
968
1108
|
]
|
|
969
1109
|
|
|
970
1110
|
[[package]]
|
|
971
1111
|
name = "zerocopy-derive"
|
|
972
|
-
version = "0.8.
|
|
1112
|
+
version = "0.8.56"
|
|
973
1113
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
974
|
-
checksum = "
|
|
1114
|
+
checksum = "f2ab42fc20575779bd240faa45f94a74256f755c0fa9e89f0ede20d91d0cdfc1"
|
|
975
1115
|
dependencies = [
|
|
976
1116
|
"proc-macro2",
|
|
977
1117
|
"quote",
|
|
978
|
-
"syn",
|
|
1118
|
+
"syn 2.0.119",
|
|
979
1119
|
]
|
|
980
1120
|
|
|
981
1121
|
[[package]]
|