itsi 0.1.13 → 0.1.18

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.
Files changed (169) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +113 -593
  3. data/Cargo.toml +6 -0
  4. data/crates/itsi_error/Cargo.toml +1 -0
  5. data/crates/itsi_error/src/lib.rs +100 -10
  6. data/crates/itsi_scheduler/src/itsi_scheduler.rs +1 -1
  7. data/crates/itsi_server/Cargo.toml +9 -11
  8. data/crates/itsi_server/src/default_responses/html/401.html +68 -0
  9. data/crates/itsi_server/src/default_responses/html/403.html +68 -0
  10. data/crates/itsi_server/src/default_responses/html/404.html +68 -0
  11. data/crates/itsi_server/src/default_responses/html/413.html +71 -0
  12. data/crates/itsi_server/src/default_responses/html/429.html +68 -0
  13. data/crates/itsi_server/src/default_responses/html/500.html +71 -0
  14. data/crates/itsi_server/src/default_responses/html/502.html +71 -0
  15. data/crates/itsi_server/src/default_responses/html/503.html +68 -0
  16. data/crates/itsi_server/src/default_responses/html/504.html +69 -0
  17. data/crates/itsi_server/src/default_responses/html/index.html +238 -0
  18. data/crates/itsi_server/src/default_responses/json/401.json +6 -0
  19. data/crates/itsi_server/src/default_responses/json/403.json +6 -0
  20. data/crates/itsi_server/src/default_responses/json/404.json +6 -0
  21. data/crates/itsi_server/src/default_responses/json/413.json +6 -0
  22. data/crates/itsi_server/src/default_responses/json/429.json +6 -0
  23. data/crates/itsi_server/src/default_responses/json/500.json +6 -0
  24. data/crates/itsi_server/src/default_responses/json/502.json +6 -0
  25. data/crates/itsi_server/src/default_responses/json/503.json +6 -0
  26. data/crates/itsi_server/src/default_responses/json/504.json +6 -0
  27. data/crates/itsi_server/src/default_responses/mod.rs +11 -0
  28. data/crates/itsi_server/src/lib.rs +58 -26
  29. data/crates/itsi_server/src/prelude.rs +2 -0
  30. data/crates/itsi_server/src/ruby_types/README.md +21 -0
  31. data/crates/itsi_server/src/ruby_types/itsi_body_proxy/mod.rs +8 -6
  32. data/crates/itsi_server/src/ruby_types/itsi_grpc_call.rs +344 -0
  33. data/crates/itsi_server/src/ruby_types/{itsi_grpc_stream → itsi_grpc_response_stream}/mod.rs +121 -73
  34. data/crates/itsi_server/src/ruby_types/itsi_http_request.rs +103 -40
  35. data/crates/itsi_server/src/ruby_types/itsi_http_response.rs +8 -5
  36. data/crates/itsi_server/src/ruby_types/itsi_server/file_watcher.rs +4 -4
  37. data/crates/itsi_server/src/ruby_types/itsi_server/itsi_server_config.rs +37 -17
  38. data/crates/itsi_server/src/ruby_types/itsi_server.rs +4 -3
  39. data/crates/itsi_server/src/ruby_types/mod.rs +6 -13
  40. data/crates/itsi_server/src/server/{bind.rs → binds/bind.rs} +23 -4
  41. data/crates/itsi_server/src/server/{listener.rs → binds/listener.rs} +24 -10
  42. data/crates/itsi_server/src/server/binds/mod.rs +4 -0
  43. data/crates/itsi_server/src/server/{tls.rs → binds/tls.rs} +9 -4
  44. data/crates/itsi_server/src/server/http_message_types.rs +97 -0
  45. data/crates/itsi_server/src/server/io_stream.rs +2 -1
  46. data/crates/itsi_server/src/server/middleware_stack/middleware.rs +28 -16
  47. data/crates/itsi_server/src/server/middleware_stack/middlewares/allow_list.rs +17 -8
  48. data/crates/itsi_server/src/server/middleware_stack/middlewares/auth_api_key.rs +47 -18
  49. data/crates/itsi_server/src/server/middleware_stack/middlewares/auth_basic.rs +13 -9
  50. data/crates/itsi_server/src/server/middleware_stack/middlewares/auth_jwt.rs +145 -181
  51. data/crates/itsi_server/src/server/middleware_stack/middlewares/cache_control.rs +5 -2
  52. data/crates/itsi_server/src/server/middleware_stack/middlewares/compression.rs +37 -48
  53. data/crates/itsi_server/src/server/middleware_stack/middlewares/cors.rs +25 -20
  54. data/crates/itsi_server/src/server/middleware_stack/middlewares/deny_list.rs +14 -7
  55. data/crates/itsi_server/src/server/middleware_stack/middlewares/error_response/default_responses.rs +190 -0
  56. data/crates/itsi_server/src/server/middleware_stack/middlewares/error_response.rs +125 -95
  57. data/crates/itsi_server/src/server/middleware_stack/middlewares/etag.rs +9 -5
  58. data/crates/itsi_server/src/server/middleware_stack/middlewares/header_interpretation.rs +1 -4
  59. data/crates/itsi_server/src/server/middleware_stack/middlewares/intrusion_protection.rs +25 -19
  60. data/crates/itsi_server/src/server/middleware_stack/middlewares/log_requests.rs +4 -4
  61. data/crates/itsi_server/src/server/middleware_stack/middlewares/max_body.rs +47 -0
  62. data/crates/itsi_server/src/server/middleware_stack/middlewares/mod.rs +9 -4
  63. data/crates/itsi_server/src/server/middleware_stack/middlewares/proxy.rs +260 -62
  64. data/crates/itsi_server/src/server/middleware_stack/middlewares/rate_limit.rs +29 -22
  65. data/crates/itsi_server/src/server/middleware_stack/middlewares/redirect.rs +6 -6
  66. data/crates/itsi_server/src/server/middleware_stack/middlewares/request_headers.rs +6 -5
  67. data/crates/itsi_server/src/server/middleware_stack/middlewares/response_headers.rs +4 -2
  68. data/crates/itsi_server/src/server/middleware_stack/middlewares/ruby_app.rs +51 -18
  69. data/crates/itsi_server/src/server/middleware_stack/middlewares/static_assets.rs +31 -13
  70. data/crates/itsi_server/src/server/middleware_stack/middlewares/static_response.rs +55 -0
  71. data/crates/itsi_server/src/server/middleware_stack/middlewares/string_rewrite.rs +13 -8
  72. data/crates/itsi_server/src/server/middleware_stack/mod.rs +101 -69
  73. data/crates/itsi_server/src/server/mod.rs +3 -9
  74. data/crates/itsi_server/src/server/process_worker.rs +21 -3
  75. data/crates/itsi_server/src/server/request_job.rs +2 -2
  76. data/crates/itsi_server/src/server/serve_strategy/cluster_mode.rs +8 -3
  77. data/crates/itsi_server/src/server/serve_strategy/single_mode.rs +26 -26
  78. data/crates/itsi_server/src/server/signal.rs +24 -41
  79. data/crates/itsi_server/src/server/size_limited_incoming.rs +101 -0
  80. data/crates/itsi_server/src/server/thread_worker.rs +59 -28
  81. data/crates/itsi_server/src/services/itsi_http_service.rs +239 -0
  82. data/crates/itsi_server/src/services/mime_types.rs +1416 -0
  83. data/crates/itsi_server/src/services/mod.rs +6 -0
  84. data/crates/itsi_server/src/services/password_hasher.rs +83 -0
  85. data/crates/itsi_server/src/{server → services}/rate_limiter.rs +35 -31
  86. data/crates/itsi_server/src/{server → services}/static_file_server.rs +521 -181
  87. data/crates/itsi_tracing/src/lib.rs +145 -55
  88. data/{Itsi.rb → foo/Itsi.rb} +6 -9
  89. data/gems/scheduler/Cargo.lock +7 -0
  90. data/gems/scheduler/lib/itsi/scheduler/version.rb +1 -1
  91. data/gems/scheduler/test/helpers/test_helper.rb +0 -1
  92. data/gems/scheduler/test/test_address_resolve.rb +0 -1
  93. data/gems/scheduler/test/test_network_io.rb +1 -1
  94. data/gems/scheduler/test/test_process_wait.rb +0 -1
  95. data/gems/server/Cargo.lock +113 -593
  96. data/gems/server/exe/itsi +65 -19
  97. data/gems/server/itsi-server.gemspec +4 -3
  98. data/gems/server/lib/itsi/http_request/response_status_shortcodes.rb +74 -0
  99. data/gems/server/lib/itsi/http_request.rb +116 -17
  100. data/gems/server/lib/itsi/http_response.rb +2 -0
  101. data/gems/server/lib/itsi/passfile.rb +109 -0
  102. data/gems/server/lib/itsi/server/config/dsl.rb +160 -101
  103. data/gems/server/lib/itsi/server/config.rb +58 -23
  104. data/gems/server/lib/itsi/server/default_app/default_app.rb +25 -29
  105. data/gems/server/lib/itsi/server/default_app/index.html +113 -89
  106. data/gems/server/lib/itsi/server/{Itsi.rb → default_config/Itsi-rackup.rb} +1 -1
  107. data/gems/server/lib/itsi/server/default_config/Itsi.rb +107 -0
  108. data/gems/server/lib/itsi/server/grpc/grpc_call.rb +246 -0
  109. data/gems/server/lib/itsi/server/grpc/grpc_interface.rb +100 -0
  110. data/gems/server/lib/itsi/server/grpc/reflection/v1/reflection_pb.rb +26 -0
  111. data/gems/server/lib/itsi/server/grpc/reflection/v1/reflection_services_pb.rb +122 -0
  112. data/gems/server/lib/itsi/server/route_tester.rb +107 -0
  113. data/gems/server/lib/itsi/server/typed_handlers/param_parser.rb +200 -0
  114. data/gems/server/lib/itsi/server/typed_handlers/source_parser.rb +55 -0
  115. data/gems/server/lib/itsi/server/typed_handlers.rb +17 -0
  116. data/gems/server/lib/itsi/server/version.rb +1 -1
  117. data/gems/server/lib/itsi/server.rb +82 -12
  118. data/gems/server/lib/ruby_lsp/itsi/addon.rb +111 -0
  119. data/gems/server/lib/shell_completions/completions.rb +26 -0
  120. data/gems/server/test/helpers/test_helper.rb +2 -1
  121. data/lib/itsi/version.rb +1 -1
  122. data/sandbox/README.md +5 -0
  123. data/sandbox/itsi_file/Gemfile +4 -2
  124. data/sandbox/itsi_file/Gemfile.lock +48 -6
  125. data/sandbox/itsi_file/Itsi.rb +326 -129
  126. data/sandbox/itsi_file/call.json +1 -0
  127. data/sandbox/itsi_file/echo_client/Gemfile +10 -0
  128. data/sandbox/itsi_file/echo_client/Gemfile.lock +27 -0
  129. data/sandbox/itsi_file/echo_client/README.md +95 -0
  130. data/sandbox/itsi_file/echo_client/echo_client.rb +164 -0
  131. data/sandbox/itsi_file/echo_client/gen_proto.sh +17 -0
  132. data/sandbox/itsi_file/echo_client/lib/echo_pb.rb +16 -0
  133. data/sandbox/itsi_file/echo_client/lib/echo_services_pb.rb +29 -0
  134. data/sandbox/itsi_file/echo_client/run_client.rb +64 -0
  135. data/sandbox/itsi_file/echo_client/test_compressions.sh +20 -0
  136. data/sandbox/itsi_file/echo_service_nonitsi/Gemfile +10 -0
  137. data/sandbox/itsi_file/echo_service_nonitsi/Gemfile.lock +79 -0
  138. data/sandbox/itsi_file/echo_service_nonitsi/echo.proto +26 -0
  139. data/sandbox/itsi_file/echo_service_nonitsi/echo_pb.rb +16 -0
  140. data/sandbox/itsi_file/echo_service_nonitsi/echo_services_pb.rb +29 -0
  141. data/sandbox/itsi_file/echo_service_nonitsi/server.rb +52 -0
  142. data/sandbox/itsi_sandbox_async/config.ru +0 -1
  143. data/sandbox/itsi_sandbox_rack/Gemfile.lock +2 -2
  144. data/sandbox/itsi_sandbox_rails/Gemfile +2 -2
  145. data/sandbox/itsi_sandbox_rails/Gemfile.lock +76 -2
  146. data/sandbox/itsi_sandbox_rails/app/controllers/home_controller.rb +15 -0
  147. data/sandbox/itsi_sandbox_rails/config/environments/development.rb +1 -0
  148. data/sandbox/itsi_sandbox_rails/config/environments/production.rb +1 -0
  149. data/sandbox/itsi_sandbox_rails/config/routes.rb +2 -0
  150. data/sandbox/itsi_sinatra/app.rb +0 -1
  151. data/sandbox/static_files/.env +1 -0
  152. data/sandbox/static_files/404.html +25 -0
  153. data/sandbox/static_files/_DSC0102.NEF.jpg +0 -0
  154. data/sandbox/static_files/about.html +68 -0
  155. data/sandbox/static_files/tiny.html +1 -0
  156. data/sandbox/static_files/writebook.zip +0 -0
  157. data/tasks.txt +28 -32
  158. metadata +87 -26
  159. data/crates/itsi_error/src/from.rs +0 -68
  160. data/crates/itsi_server/src/ruby_types/itsi_grpc_request.rs +0 -147
  161. data/crates/itsi_server/src/ruby_types/itsi_grpc_response.rs +0 -19
  162. data/crates/itsi_server/src/server/itsi_service.rs +0 -172
  163. data/crates/itsi_server/src/server/middleware_stack/middlewares/grpc_service.rs +0 -72
  164. data/crates/itsi_server/src/server/types.rs +0 -43
  165. data/gems/server/lib/itsi/server/grpc_interface.rb +0 -213
  166. data/sandbox/itsi_file/public/assets/index.html +0 -1
  167. /data/crates/itsi_server/src/server/{bind_protocol.rs → binds/bind_protocol.rs} +0 -0
  168. /data/crates/itsi_server/src/server/{tls → binds/tls}/locked_dir_cache.rs +0 -0
  169. /data/crates/itsi_server/src/{server → services}/cache_store.rs +0 -0
@@ -69,16 +69,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
69
69
  checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
70
70
 
71
71
  [[package]]
72
- name = "arrayref"
73
- version = "0.3.9"
74
- source = "registry+https://github.com/rust-lang/crates.io-index"
75
- checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
76
-
77
- [[package]]
78
- name = "arrayvec"
79
- version = "0.7.6"
72
+ name = "argon2"
73
+ version = "0.5.3"
80
74
  source = "registry+https://github.com/rust-lang/crates.io-index"
81
- checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
75
+ checksum = "3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072"
76
+ dependencies = [
77
+ "base64ct",
78
+ "blake2",
79
+ "cpufeatures",
80
+ "password-hash",
81
+ ]
82
82
 
83
83
  [[package]]
84
84
  name = "asn1-rs"
@@ -140,6 +140,7 @@ dependencies = [
140
140
  "brotli",
141
141
  "flate2",
142
142
  "futures-core",
143
+ "futures-io",
143
144
  "memchr",
144
145
  "pin-project-lite",
145
146
  "tokio",
@@ -198,7 +199,7 @@ version = "0.26.0"
198
199
  source = "registry+https://github.com/rust-lang/crates.io-index"
199
200
  checksum = "0f9dd2e03ee80ca2822dd6ea431163d2ef259f2066a4d6ccaca6d9dcb386aa43"
200
201
  dependencies = [
201
- "bindgen 0.69.5",
202
+ "bindgen",
202
203
  "cc",
203
204
  "cmake",
204
205
  "dunce",
@@ -230,12 +231,6 @@ dependencies = [
230
231
  "windows-targets 0.52.6",
231
232
  ]
232
233
 
233
- [[package]]
234
- name = "base16ct"
235
- version = "0.2.0"
236
- source = "registry+https://github.com/rust-lang/crates.io-index"
237
- checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
238
-
239
234
  [[package]]
240
235
  name = "base64"
241
236
  version = "0.22.1"
@@ -248,6 +243,19 @@ version = "1.7.3"
248
243
  source = "registry+https://github.com/rust-lang/crates.io-index"
249
244
  checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3"
250
245
 
246
+ [[package]]
247
+ name = "bcrypt"
248
+ version = "0.17.0"
249
+ source = "registry+https://github.com/rust-lang/crates.io-index"
250
+ checksum = "92758ad6077e4c76a6cadbce5005f666df70d4f13b19976b1a8062eef880040f"
251
+ dependencies = [
252
+ "base64",
253
+ "blowfish",
254
+ "getrandom 0.3.1",
255
+ "subtle",
256
+ "zeroize",
257
+ ]
258
+
251
259
  [[package]]
252
260
  name = "bindgen"
253
261
  version = "0.69.5"
@@ -271,30 +279,6 @@ dependencies = [
271
279
  "which",
272
280
  ]
273
281
 
274
- [[package]]
275
- name = "bindgen"
276
- version = "0.70.1"
277
- source = "registry+https://github.com/rust-lang/crates.io-index"
278
- checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f"
279
- dependencies = [
280
- "bitflags 2.8.0",
281
- "cexpr",
282
- "clang-sys",
283
- "itertools",
284
- "proc-macro2",
285
- "quote",
286
- "regex",
287
- "rustc-hash 1.1.0",
288
- "shlex",
289
- "syn",
290
- ]
291
-
292
- [[package]]
293
- name = "binstring"
294
- version = "0.1.2"
295
- source = "registry+https://github.com/rust-lang/crates.io-index"
296
- checksum = "ed79c2a8151273c70956b5e3cdfdc1ff6c1a8b9779ba59c6807d281b32ee2f86"
297
-
298
282
  [[package]]
299
283
  name = "bitflags"
300
284
  version = "1.3.2"
@@ -308,14 +292,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
308
292
  checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
309
293
 
310
294
  [[package]]
311
- name = "blake2b_simd"
312
- version = "1.0.3"
295
+ name = "blake2"
296
+ version = "0.10.6"
313
297
  source = "registry+https://github.com/rust-lang/crates.io-index"
314
- checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99"
298
+ checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
315
299
  dependencies = [
316
- "arrayref",
317
- "arrayvec",
318
- "constant_time_eq",
300
+ "digest",
319
301
  ]
320
302
 
321
303
  [[package]]
@@ -328,29 +310,13 @@ dependencies = [
328
310
  ]
329
311
 
330
312
  [[package]]
331
- name = "boring"
332
- version = "4.15.0"
333
- source = "registry+https://github.com/rust-lang/crates.io-index"
334
- checksum = "c84a16a47c850f899c5cb6f2ef47bedf7268447c3cb84a89b7bc35f140c859d6"
335
- dependencies = [
336
- "bitflags 2.8.0",
337
- "boring-sys",
338
- "foreign-types 0.5.0",
339
- "libc",
340
- "openssl-macros",
341
- ]
342
-
343
- [[package]]
344
- name = "boring-sys"
345
- version = "4.15.0"
313
+ name = "blowfish"
314
+ version = "0.9.1"
346
315
  source = "registry+https://github.com/rust-lang/crates.io-index"
347
- checksum = "3cf7466056d7ca35a356fbc27c89eb2f1493fb2e61c24c5f9f0277e8f402dc9e"
316
+ checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7"
348
317
  dependencies = [
349
- "autocfg",
350
- "bindgen 0.70.1",
351
- "cmake",
352
- "fs_extra",
353
- "fslock",
318
+ "byteorder",
319
+ "cipher",
354
320
  ]
355
321
 
356
322
  [[package]]
@@ -448,6 +414,16 @@ dependencies = [
448
414
  "windows-link",
449
415
  ]
450
416
 
417
+ [[package]]
418
+ name = "cipher"
419
+ version = "0.4.4"
420
+ source = "registry+https://github.com/rust-lang/crates.io-index"
421
+ checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
422
+ dependencies = [
423
+ "crypto-common",
424
+ "inout",
425
+ ]
426
+
451
427
  [[package]]
452
428
  name = "clang-sys"
453
429
  version = "1.8.1"
@@ -468,17 +444,6 @@ dependencies = [
468
444
  "cc",
469
445
  ]
470
446
 
471
- [[package]]
472
- name = "coarsetime"
473
- version = "0.1.36"
474
- source = "registry+https://github.com/rust-lang/crates.io-index"
475
- checksum = "91849686042de1b41cd81490edc83afbcb0abe5a9b6f2c4114f23ce8cca1bcf4"
476
- dependencies = [
477
- "libc",
478
- "wasix",
479
- "wasm-bindgen",
480
- ]
481
-
482
447
  [[package]]
483
448
  name = "combine"
484
449
  version = "4.6.7"
@@ -502,18 +467,6 @@ dependencies = [
502
467
  "crossbeam-utils",
503
468
  ]
504
469
 
505
- [[package]]
506
- name = "const-oid"
507
- version = "0.9.6"
508
- source = "registry+https://github.com/rust-lang/crates.io-index"
509
- checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
510
-
511
- [[package]]
512
- name = "constant_time_eq"
513
- version = "0.3.1"
514
- source = "registry+https://github.com/rust-lang/crates.io-index"
515
- checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
516
-
517
470
  [[package]]
518
471
  name = "core-foundation"
519
472
  version = "0.9.4"
@@ -540,6 +493,17 @@ version = "0.8.7"
540
493
  source = "registry+https://github.com/rust-lang/crates.io-index"
541
494
  checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
542
495
 
496
+ [[package]]
497
+ name = "core_affinity"
498
+ version = "0.8.3"
499
+ source = "registry+https://github.com/rust-lang/crates.io-index"
500
+ checksum = "a034b3a7b624016c6e13f5df875747cc25f884156aad2abd12b6c46797971342"
501
+ dependencies = [
502
+ "libc",
503
+ "num_cpus",
504
+ "winapi",
505
+ ]
506
+
543
507
  [[package]]
544
508
  name = "cpufeatures"
545
509
  version = "0.2.17"
@@ -558,19 +522,6 @@ dependencies = [
558
522
  "cfg-if",
559
523
  ]
560
524
 
561
- [[package]]
562
- name = "crossbeam"
563
- version = "0.8.4"
564
- source = "registry+https://github.com/rust-lang/crates.io-index"
565
- checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8"
566
- dependencies = [
567
- "crossbeam-channel",
568
- "crossbeam-deque",
569
- "crossbeam-epoch",
570
- "crossbeam-queue",
571
- "crossbeam-utils",
572
- ]
573
-
574
525
  [[package]]
575
526
  name = "crossbeam-channel"
576
527
  version = "0.5.14"
@@ -599,33 +550,12 @@ dependencies = [
599
550
  "crossbeam-utils",
600
551
  ]
601
552
 
602
- [[package]]
603
- name = "crossbeam-queue"
604
- version = "0.3.12"
605
- source = "registry+https://github.com/rust-lang/crates.io-index"
606
- checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115"
607
- dependencies = [
608
- "crossbeam-utils",
609
- ]
610
-
611
553
  [[package]]
612
554
  name = "crossbeam-utils"
613
555
  version = "0.8.21"
614
556
  source = "registry+https://github.com/rust-lang/crates.io-index"
615
557
  checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
616
558
 
617
- [[package]]
618
- name = "crypto-bigint"
619
- version = "0.5.5"
620
- source = "registry+https://github.com/rust-lang/crates.io-index"
621
- checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
622
- dependencies = [
623
- "generic-array",
624
- "rand_core 0.6.4",
625
- "subtle",
626
- "zeroize",
627
- ]
628
-
629
559
  [[package]]
630
560
  name = "crypto-common"
631
561
  version = "0.1.6"
@@ -636,43 +566,12 @@ dependencies = [
636
566
  "typenum",
637
567
  ]
638
568
 
639
- [[package]]
640
- name = "ct-codecs"
641
- version = "1.1.3"
642
- source = "registry+https://github.com/rust-lang/crates.io-index"
643
- checksum = "b916ba8ce9e4182696896f015e8a5ae6081b305f74690baa8465e35f5a142ea4"
644
-
645
- [[package]]
646
- name = "dashmap"
647
- version = "6.1.0"
648
- source = "registry+https://github.com/rust-lang/crates.io-index"
649
- checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
650
- dependencies = [
651
- "cfg-if",
652
- "crossbeam-utils",
653
- "hashbrown 0.14.5",
654
- "lock_api",
655
- "once_cell",
656
- "parking_lot_core",
657
- ]
658
-
659
569
  [[package]]
660
570
  name = "data-encoding"
661
571
  version = "2.8.0"
662
572
  source = "registry+https://github.com/rust-lang/crates.io-index"
663
573
  checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010"
664
574
 
665
- [[package]]
666
- name = "der"
667
- version = "0.7.9"
668
- source = "registry+https://github.com/rust-lang/crates.io-index"
669
- checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
670
- dependencies = [
671
- "const-oid",
672
- "pem-rfc7468",
673
- "zeroize",
674
- ]
675
-
676
575
  [[package]]
677
576
  name = "der-parser"
678
577
  version = "9.0.0"
@@ -724,7 +623,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
724
623
  checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
725
624
  dependencies = [
726
625
  "block-buffer",
727
- "const-oid",
728
626
  "crypto-common",
729
627
  "subtle",
730
628
  ]
@@ -767,57 +665,12 @@ version = "1.0.5"
767
665
  source = "registry+https://github.com/rust-lang/crates.io-index"
768
666
  checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"
769
667
 
770
- [[package]]
771
- name = "ecdsa"
772
- version = "0.16.9"
773
- source = "registry+https://github.com/rust-lang/crates.io-index"
774
- checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
775
- dependencies = [
776
- "der",
777
- "digest",
778
- "elliptic-curve",
779
- "rfc6979",
780
- "signature",
781
- "spki",
782
- ]
783
-
784
- [[package]]
785
- name = "ed25519-compact"
786
- version = "2.1.1"
787
- source = "registry+https://github.com/rust-lang/crates.io-index"
788
- checksum = "e9b3460f44bea8cd47f45a0c70892f1eff856d97cd55358b2f73f663789f6190"
789
- dependencies = [
790
- "ct-codecs",
791
- "getrandom 0.2.15",
792
- ]
793
-
794
668
  [[package]]
795
669
  name = "either"
796
670
  version = "1.15.0"
797
671
  source = "registry+https://github.com/rust-lang/crates.io-index"
798
672
  checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
799
673
 
800
- [[package]]
801
- name = "elliptic-curve"
802
- version = "0.13.8"
803
- source = "registry+https://github.com/rust-lang/crates.io-index"
804
- checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
805
- dependencies = [
806
- "base16ct",
807
- "crypto-bigint",
808
- "digest",
809
- "ff",
810
- "generic-array",
811
- "group",
812
- "hkdf",
813
- "pem-rfc7468",
814
- "pkcs8",
815
- "rand_core 0.6.4",
816
- "sec1",
817
- "subtle",
818
- "zeroize",
819
- ]
820
-
821
674
  [[package]]
822
675
  name = "encoding_rs"
823
676
  version = "0.8.35"
@@ -870,16 +723,6 @@ version = "2.3.0"
870
723
  source = "registry+https://github.com/rust-lang/crates.io-index"
871
724
  checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
872
725
 
873
- [[package]]
874
- name = "ff"
875
- version = "0.13.1"
876
- source = "registry+https://github.com/rust-lang/crates.io-index"
877
- checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393"
878
- dependencies = [
879
- "rand_core 0.6.4",
880
- "subtle",
881
- ]
882
-
883
726
  [[package]]
884
727
  name = "filetime"
885
728
  version = "0.2.25"
@@ -914,28 +757,7 @@ version = "0.3.2"
914
757
  source = "registry+https://github.com/rust-lang/crates.io-index"
915
758
  checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
916
759
  dependencies = [
917
- "foreign-types-shared 0.1.1",
918
- ]
919
-
920
- [[package]]
921
- name = "foreign-types"
922
- version = "0.5.0"
923
- source = "registry+https://github.com/rust-lang/crates.io-index"
924
- checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
925
- dependencies = [
926
- "foreign-types-macros",
927
- "foreign-types-shared 0.3.1",
928
- ]
929
-
930
- [[package]]
931
- name = "foreign-types-macros"
932
- version = "0.2.3"
933
- source = "registry+https://github.com/rust-lang/crates.io-index"
934
- checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
935
- dependencies = [
936
- "proc-macro2",
937
- "quote",
938
- "syn",
760
+ "foreign-types-shared",
939
761
  ]
940
762
 
941
763
  [[package]]
@@ -944,12 +766,6 @@ version = "0.1.1"
944
766
  source = "registry+https://github.com/rust-lang/crates.io-index"
945
767
  checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
946
768
 
947
- [[package]]
948
- name = "foreign-types-shared"
949
- version = "0.3.1"
950
- source = "registry+https://github.com/rust-lang/crates.io-index"
951
- checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
952
-
953
769
  [[package]]
954
770
  name = "form_urlencoded"
955
771
  version = "1.2.1"
@@ -984,16 +800,6 @@ dependencies = [
984
800
  "libc",
985
801
  ]
986
802
 
987
- [[package]]
988
- name = "fslock"
989
- version = "0.2.1"
990
- source = "registry+https://github.com/rust-lang/crates.io-index"
991
- checksum = "04412b8935272e3a9bae6f48c7bfff74c2911f60525404edfdd28e49884c3bfb"
992
- dependencies = [
993
- "libc",
994
- "winapi",
995
- ]
996
-
997
803
  [[package]]
998
804
  name = "futures"
999
805
  version = "0.3.31"
@@ -1104,7 +910,6 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
1104
910
  dependencies = [
1105
911
  "typenum",
1106
912
  "version_check",
1107
- "zeroize",
1108
913
  ]
1109
914
 
1110
915
  [[package]]
@@ -1157,17 +962,6 @@ dependencies = [
1157
962
  "regex-syntax 0.8.5",
1158
963
  ]
1159
964
 
1160
- [[package]]
1161
- name = "group"
1162
- version = "0.13.0"
1163
- source = "registry+https://github.com/rust-lang/crates.io-index"
1164
- checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
1165
- dependencies = [
1166
- "ff",
1167
- "rand_core 0.6.4",
1168
- "subtle",
1169
- ]
1170
-
1171
965
  [[package]]
1172
966
  name = "h2"
1173
967
  version = "0.4.8"
@@ -1187,12 +981,6 @@ dependencies = [
1187
981
  "tracing",
1188
982
  ]
1189
983
 
1190
- [[package]]
1191
- name = "hashbrown"
1192
- version = "0.14.5"
1193
- source = "registry+https://github.com/rust-lang/crates.io-index"
1194
- checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
1195
-
1196
984
  [[package]]
1197
985
  name = "hashbrown"
1198
986
  version = "0.15.2"
@@ -1214,48 +1002,6 @@ version = "0.3.9"
1214
1002
  source = "registry+https://github.com/rust-lang/crates.io-index"
1215
1003
  checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
1216
1004
 
1217
- [[package]]
1218
- name = "hkdf"
1219
- version = "0.12.4"
1220
- source = "registry+https://github.com/rust-lang/crates.io-index"
1221
- checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
1222
- dependencies = [
1223
- "hmac",
1224
- ]
1225
-
1226
- [[package]]
1227
- name = "hmac"
1228
- version = "0.12.1"
1229
- source = "registry+https://github.com/rust-lang/crates.io-index"
1230
- checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
1231
- dependencies = [
1232
- "digest",
1233
- ]
1234
-
1235
- [[package]]
1236
- name = "hmac-sha1-compact"
1237
- version = "1.1.5"
1238
- source = "registry+https://github.com/rust-lang/crates.io-index"
1239
- checksum = "18492c9f6f9a560e0d346369b665ad2bdbc89fa9bceca75796584e79042694c3"
1240
-
1241
- [[package]]
1242
- name = "hmac-sha256"
1243
- version = "1.1.8"
1244
- source = "registry+https://github.com/rust-lang/crates.io-index"
1245
- checksum = "4a8575493d277c9092b988c780c94737fb9fd8651a1001e16bee3eccfc1baedb"
1246
- dependencies = [
1247
- "digest",
1248
- ]
1249
-
1250
- [[package]]
1251
- name = "hmac-sha512"
1252
- version = "1.1.6"
1253
- source = "registry+https://github.com/rust-lang/crates.io-index"
1254
- checksum = "b0b3a0f572aa8389d325f5852b9e0a333a15b0f86ecccbb3fdb6e97cd86dc67c"
1255
- dependencies = [
1256
- "digest",
1257
- ]
1258
-
1259
1005
  [[package]]
1260
1006
  name = "home"
1261
1007
  version = "0.5.11"
@@ -1299,12 +1045,6 @@ dependencies = [
1299
1045
  "pin-project-lite",
1300
1046
  ]
1301
1047
 
1302
- [[package]]
1303
- name = "http-range"
1304
- version = "0.1.5"
1305
- source = "registry+https://github.com/rust-lang/crates.io-index"
1306
- checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573"
1307
-
1308
1048
  [[package]]
1309
1049
  name = "httparse"
1310
1050
  version = "1.10.1"
@@ -1356,25 +1096,6 @@ dependencies = [
1356
1096
  "webpki-roots",
1357
1097
  ]
1358
1098
 
1359
- [[package]]
1360
- name = "hyper-staticfile"
1361
- version = "0.10.1"
1362
- source = "registry+https://github.com/rust-lang/crates.io-index"
1363
- checksum = "bc4bce64c32578957926e75f832032f81ebb30bcee74f86c5848b13a69e547eb"
1364
- dependencies = [
1365
- "futures-util",
1366
- "http",
1367
- "http-range",
1368
- "httpdate",
1369
- "hyper",
1370
- "mime_guess",
1371
- "percent-encoding",
1372
- "rand 0.8.5",
1373
- "tokio",
1374
- "url",
1375
- "winapi",
1376
- ]
1377
-
1378
1099
  [[package]]
1379
1100
  name = "hyper-tls"
1380
1101
  version = "0.6.0"
@@ -1579,7 +1300,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1579
1300
  checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652"
1580
1301
  dependencies = [
1581
1302
  "equivalent",
1582
- "hashbrown 0.15.2",
1303
+ "hashbrown",
1583
1304
  ]
1584
1305
 
1585
1306
  [[package]]
@@ -1602,6 +1323,15 @@ dependencies = [
1602
1323
  "libc",
1603
1324
  ]
1604
1325
 
1326
+ [[package]]
1327
+ name = "inout"
1328
+ version = "0.1.4"
1329
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1330
+ checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01"
1331
+ dependencies = [
1332
+ "generic-array",
1333
+ ]
1334
+
1605
1335
  [[package]]
1606
1336
  name = "ipnet"
1607
1337
  version = "2.11.0"
@@ -1625,35 +1355,33 @@ checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
1625
1355
 
1626
1356
  [[package]]
1627
1357
  name = "itsi-server"
1628
- version = "0.1.0"
1358
+ version = "0.1.18"
1629
1359
  dependencies = [
1360
+ "argon2",
1630
1361
  "async-channel",
1631
1362
  "async-compression",
1632
1363
  "async-trait",
1633
1364
  "base64",
1365
+ "bcrypt",
1634
1366
  "bytes",
1635
1367
  "chrono",
1636
- "crossbeam",
1637
- "dashmap",
1368
+ "core_affinity",
1638
1369
  "derive_more",
1639
1370
  "dirs",
1640
1371
  "either",
1641
- "fnv",
1642
1372
  "fs2",
1643
1373
  "futures",
1644
1374
  "globset",
1645
- "hmac",
1646
1375
  "http",
1647
1376
  "http-body-util",
1648
1377
  "httparse",
1649
1378
  "httpdate",
1650
1379
  "hyper",
1651
- "hyper-staticfile",
1652
1380
  "hyper-util",
1653
1381
  "itsi_error",
1654
1382
  "itsi_rb_helpers",
1655
1383
  "itsi_tracing",
1656
- "jwt-simple",
1384
+ "jsonwebtoken",
1657
1385
  "magnus",
1658
1386
  "md5",
1659
1387
  "moka",
@@ -1661,20 +1389,19 @@ dependencies = [
1661
1389
  "notify",
1662
1390
  "num_cpus",
1663
1391
  "parking_lot",
1392
+ "percent-encoding",
1664
1393
  "pin-project",
1665
1394
  "rand 0.9.0",
1666
- "rb-sys",
1667
1395
  "rcgen",
1668
1396
  "redis",
1669
1397
  "regex",
1670
1398
  "reqwest",
1671
- "ring",
1672
- "route-recognizer",
1673
1399
  "rustls",
1674
1400
  "rustls-pemfile",
1675
1401
  "serde",
1676
1402
  "serde_json",
1677
1403
  "serde_magnus",
1404
+ "sha-crypt",
1678
1405
  "sha2",
1679
1406
  "socket2",
1680
1407
  "sysinfo",
@@ -1686,13 +1413,13 @@ dependencies = [
1686
1413
  "tokio-util",
1687
1414
  "tracing",
1688
1415
  "url",
1689
- "uuid",
1690
1416
  ]
1691
1417
 
1692
1418
  [[package]]
1693
1419
  name = "itsi_error"
1694
1420
  version = "0.1.0"
1695
1421
  dependencies = [
1422
+ "anyhow",
1696
1423
  "httparse",
1697
1424
  "magnus",
1698
1425
  "nix",
@@ -1742,44 +1469,18 @@ dependencies = [
1742
1469
  ]
1743
1470
 
1744
1471
  [[package]]
1745
- name = "jwt-simple"
1746
- version = "0.12.12"
1472
+ name = "jsonwebtoken"
1473
+ version = "9.3.1"
1747
1474
  source = "registry+https://github.com/rust-lang/crates.io-index"
1748
- checksum = "731011e9647a71ff4f8474176ff6ce6e0d2de87a0173f15613af3a84c3e3401a"
1475
+ checksum = "5a87cc7a48537badeae96744432de36f4be2b4a34a05a5ef32e9dd8a1c169dde"
1749
1476
  dependencies = [
1750
- "anyhow",
1751
- "binstring",
1752
- "blake2b_simd",
1753
- "boring",
1754
- "coarsetime",
1755
- "ct-codecs",
1756
- "ed25519-compact",
1757
- "hmac-sha1-compact",
1758
- "hmac-sha256",
1759
- "hmac-sha512",
1760
- "k256",
1761
- "p256",
1762
- "p384",
1763
- "rand 0.8.5",
1477
+ "base64",
1478
+ "js-sys",
1479
+ "pem",
1480
+ "ring",
1764
1481
  "serde",
1765
1482
  "serde_json",
1766
- "superboring",
1767
- "thiserror 2.0.12",
1768
- "zeroize",
1769
- ]
1770
-
1771
- [[package]]
1772
- name = "k256"
1773
- version = "0.13.4"
1774
- source = "registry+https://github.com/rust-lang/crates.io-index"
1775
- checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b"
1776
- dependencies = [
1777
- "cfg-if",
1778
- "ecdsa",
1779
- "elliptic-curve",
1780
- "once_cell",
1781
- "sha2",
1782
- "signature",
1483
+ "simple_asn1",
1783
1484
  ]
1784
1485
 
1785
1486
  [[package]]
@@ -1807,9 +1508,6 @@ name = "lazy_static"
1807
1508
  version = "1.5.0"
1808
1509
  source = "registry+https://github.com/rust-lang/crates.io-index"
1809
1510
  checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
1810
- dependencies = [
1811
- "spin",
1812
- ]
1813
1511
 
1814
1512
  [[package]]
1815
1513
  name = "lazycell"
@@ -1833,12 +1531,6 @@ dependencies = [
1833
1531
  "windows-targets 0.52.6",
1834
1532
  ]
1835
1533
 
1836
- [[package]]
1837
- name = "libm"
1838
- version = "0.2.11"
1839
- source = "registry+https://github.com/rust-lang/crates.io-index"
1840
- checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa"
1841
-
1842
1534
  [[package]]
1843
1535
  name = "libredox"
1844
1536
  version = "0.1.3"
@@ -1957,16 +1649,6 @@ version = "0.3.17"
1957
1649
  source = "registry+https://github.com/rust-lang/crates.io-index"
1958
1650
  checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
1959
1651
 
1960
- [[package]]
1961
- name = "mime_guess"
1962
- version = "2.0.5"
1963
- source = "registry+https://github.com/rust-lang/crates.io-index"
1964
- checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
1965
- dependencies = [
1966
- "mime",
1967
- "unicase",
1968
- ]
1969
-
1970
1652
  [[package]]
1971
1653
  name = "minimal-lexical"
1972
1654
  version = "0.2.1"
@@ -2107,23 +1789,6 @@ dependencies = [
2107
1789
  "num-traits",
2108
1790
  ]
2109
1791
 
2110
- [[package]]
2111
- name = "num-bigint-dig"
2112
- version = "0.8.4"
2113
- source = "registry+https://github.com/rust-lang/crates.io-index"
2114
- checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
2115
- dependencies = [
2116
- "byteorder",
2117
- "lazy_static",
2118
- "libm",
2119
- "num-integer",
2120
- "num-iter",
2121
- "num-traits",
2122
- "rand 0.8.5",
2123
- "smallvec",
2124
- "zeroize",
2125
- ]
2126
-
2127
1792
  [[package]]
2128
1793
  name = "num-conv"
2129
1794
  version = "0.1.0"
@@ -2139,17 +1804,6 @@ dependencies = [
2139
1804
  "num-traits",
2140
1805
  ]
2141
1806
 
2142
- [[package]]
2143
- name = "num-iter"
2144
- version = "0.1.45"
2145
- source = "registry+https://github.com/rust-lang/crates.io-index"
2146
- checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
2147
- dependencies = [
2148
- "autocfg",
2149
- "num-integer",
2150
- "num-traits",
2151
- ]
2152
-
2153
1807
  [[package]]
2154
1808
  name = "num-traits"
2155
1809
  version = "0.2.19"
@@ -2157,7 +1811,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2157
1811
  checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
2158
1812
  dependencies = [
2159
1813
  "autocfg",
2160
- "libm",
2161
1814
  ]
2162
1815
 
2163
1816
  [[package]]
@@ -2202,7 +1855,7 @@ checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd"
2202
1855
  dependencies = [
2203
1856
  "bitflags 2.8.0",
2204
1857
  "cfg-if",
2205
- "foreign-types 0.3.2",
1858
+ "foreign-types",
2206
1859
  "libc",
2207
1860
  "once_cell",
2208
1861
  "openssl-macros",
@@ -2250,30 +1903,6 @@ version = "0.1.1"
2250
1903
  source = "registry+https://github.com/rust-lang/crates.io-index"
2251
1904
  checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
2252
1905
 
2253
- [[package]]
2254
- name = "p256"
2255
- version = "0.13.2"
2256
- source = "registry+https://github.com/rust-lang/crates.io-index"
2257
- checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
2258
- dependencies = [
2259
- "ecdsa",
2260
- "elliptic-curve",
2261
- "primeorder",
2262
- "sha2",
2263
- ]
2264
-
2265
- [[package]]
2266
- name = "p384"
2267
- version = "0.13.1"
2268
- source = "registry+https://github.com/rust-lang/crates.io-index"
2269
- checksum = "fe42f1670a52a47d448f14b6a5c61dd78fce51856e68edaa38f7ae3a46b8d6b6"
2270
- dependencies = [
2271
- "ecdsa",
2272
- "elliptic-curve",
2273
- "primeorder",
2274
- "sha2",
2275
- ]
2276
-
2277
1906
  [[package]]
2278
1907
  name = "parking"
2279
1908
  version = "2.2.1"
@@ -2303,6 +1932,17 @@ dependencies = [
2303
1932
  "windows-targets 0.52.6",
2304
1933
  ]
2305
1934
 
1935
+ [[package]]
1936
+ name = "password-hash"
1937
+ version = "0.5.0"
1938
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1939
+ checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166"
1940
+ dependencies = [
1941
+ "base64ct",
1942
+ "rand_core 0.6.4",
1943
+ "subtle",
1944
+ ]
1945
+
2306
1946
  [[package]]
2307
1947
  name = "paste"
2308
1948
  version = "1.0.15"
@@ -2319,15 +1959,6 @@ dependencies = [
2319
1959
  "serde",
2320
1960
  ]
2321
1961
 
2322
- [[package]]
2323
- name = "pem-rfc7468"
2324
- version = "0.7.0"
2325
- source = "registry+https://github.com/rust-lang/crates.io-index"
2326
- checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
2327
- dependencies = [
2328
- "base64ct",
2329
- ]
2330
-
2331
1962
  [[package]]
2332
1963
  name = "percent-encoding"
2333
1964
  version = "2.3.1"
@@ -2366,27 +1997,6 @@ version = "0.1.0"
2366
1997
  source = "registry+https://github.com/rust-lang/crates.io-index"
2367
1998
  checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
2368
1999
 
2369
- [[package]]
2370
- name = "pkcs1"
2371
- version = "0.7.5"
2372
- source = "registry+https://github.com/rust-lang/crates.io-index"
2373
- checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
2374
- dependencies = [
2375
- "der",
2376
- "pkcs8",
2377
- "spki",
2378
- ]
2379
-
2380
- [[package]]
2381
- name = "pkcs8"
2382
- version = "0.10.2"
2383
- source = "registry+https://github.com/rust-lang/crates.io-index"
2384
- checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
2385
- dependencies = [
2386
- "der",
2387
- "spki",
2388
- ]
2389
-
2390
2000
  [[package]]
2391
2001
  name = "pkg-config"
2392
2002
  version = "0.3.32"
@@ -2424,15 +2034,6 @@ dependencies = [
2424
2034
  "syn",
2425
2035
  ]
2426
2036
 
2427
- [[package]]
2428
- name = "primeorder"
2429
- version = "0.13.6"
2430
- source = "registry+https://github.com/rust-lang/crates.io-index"
2431
- checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
2432
- dependencies = [
2433
- "elliptic-curve",
2434
- ]
2435
-
2436
2037
  [[package]]
2437
2038
  name = "proc-macro2"
2438
2039
  version = "1.0.93"
@@ -2609,7 +2210,7 @@ version = "0.9.111"
2609
2210
  source = "registry+https://github.com/rust-lang/crates.io-index"
2610
2211
  checksum = "64691175abc704862f60a9ca8ef06174080cc50615f2bf1d4759f46db18b4d29"
2611
2212
  dependencies = [
2612
- "bindgen 0.69.5",
2213
+ "bindgen",
2613
2214
  "lazy_static",
2614
2215
  "proc-macro2",
2615
2216
  "quote",
@@ -2781,16 +2382,6 @@ dependencies = [
2781
2382
  "windows-registry",
2782
2383
  ]
2783
2384
 
2784
- [[package]]
2785
- name = "rfc6979"
2786
- version = "0.4.0"
2787
- source = "registry+https://github.com/rust-lang/crates.io-index"
2788
- checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
2789
- dependencies = [
2790
- "hmac",
2791
- "subtle",
2792
- ]
2793
-
2794
2385
  [[package]]
2795
2386
  name = "ring"
2796
2387
  version = "0.17.14"
@@ -2805,33 +2396,6 @@ dependencies = [
2805
2396
  "windows-sys 0.52.0",
2806
2397
  ]
2807
2398
 
2808
- [[package]]
2809
- name = "route-recognizer"
2810
- version = "0.3.1"
2811
- source = "registry+https://github.com/rust-lang/crates.io-index"
2812
- checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746"
2813
-
2814
- [[package]]
2815
- name = "rsa"
2816
- version = "0.9.8"
2817
- source = "registry+https://github.com/rust-lang/crates.io-index"
2818
- checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b"
2819
- dependencies = [
2820
- "const-oid",
2821
- "digest",
2822
- "num-bigint-dig",
2823
- "num-integer",
2824
- "num-traits",
2825
- "pkcs1",
2826
- "pkcs8",
2827
- "rand_core 0.6.4",
2828
- "sha2",
2829
- "signature",
2830
- "spki",
2831
- "subtle",
2832
- "zeroize",
2833
- ]
2834
-
2835
2399
  [[package]]
2836
2400
  name = "rustc-demangle"
2837
2401
  version = "0.1.24"
@@ -3003,20 +2567,6 @@ version = "1.2.0"
3003
2567
  source = "registry+https://github.com/rust-lang/crates.io-index"
3004
2568
  checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
3005
2569
 
3006
- [[package]]
3007
- name = "sec1"
3008
- version = "0.7.3"
3009
- source = "registry+https://github.com/rust-lang/crates.io-index"
3010
- checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
3011
- dependencies = [
3012
- "base16ct",
3013
- "der",
3014
- "generic-array",
3015
- "pkcs8",
3016
- "subtle",
3017
- "zeroize",
3018
- ]
3019
-
3020
2570
  [[package]]
3021
2571
  name = "security-framework"
3022
2572
  version = "2.11.1"
@@ -3120,6 +2670,18 @@ dependencies = [
3120
2670
  "serde",
3121
2671
  ]
3122
2672
 
2673
+ [[package]]
2674
+ name = "sha-crypt"
2675
+ version = "0.5.0"
2676
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2677
+ checksum = "88e79009728d8311d42d754f2f319a975f9e38f156fd5e422d2451486c78b286"
2678
+ dependencies = [
2679
+ "base64ct",
2680
+ "rand 0.8.5",
2681
+ "sha2",
2682
+ "subtle",
2683
+ ]
2684
+
3123
2685
  [[package]]
3124
2686
  name = "sha1_smol"
3125
2687
  version = "1.0.1"
@@ -3168,13 +2730,15 @@ dependencies = [
3168
2730
  ]
3169
2731
 
3170
2732
  [[package]]
3171
- name = "signature"
3172
- version = "2.2.0"
2733
+ name = "simple_asn1"
2734
+ version = "0.6.3"
3173
2735
  source = "registry+https://github.com/rust-lang/crates.io-index"
3174
- checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
2736
+ checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb"
3175
2737
  dependencies = [
3176
- "digest",
3177
- "rand_core 0.6.4",
2738
+ "num-bigint",
2739
+ "num-traits",
2740
+ "thiserror 2.0.12",
2741
+ "time",
3178
2742
  ]
3179
2743
 
3180
2744
  [[package]]
@@ -3202,22 +2766,6 @@ dependencies = [
3202
2766
  "windows-sys 0.52.0",
3203
2767
  ]
3204
2768
 
3205
- [[package]]
3206
- name = "spin"
3207
- version = "0.9.8"
3208
- source = "registry+https://github.com/rust-lang/crates.io-index"
3209
- checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
3210
-
3211
- [[package]]
3212
- name = "spki"
3213
- version = "0.7.3"
3214
- source = "registry+https://github.com/rust-lang/crates.io-index"
3215
- checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
3216
- dependencies = [
3217
- "base64ct",
3218
- "der",
3219
- ]
3220
-
3221
2769
  [[package]]
3222
2770
  name = "stable_deref_trait"
3223
2771
  version = "1.2.0"
@@ -3230,19 +2778,6 @@ version = "2.6.1"
3230
2778
  source = "registry+https://github.com/rust-lang/crates.io-index"
3231
2779
  checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
3232
2780
 
3233
- [[package]]
3234
- name = "superboring"
3235
- version = "0.1.4"
3236
- source = "registry+https://github.com/rust-lang/crates.io-index"
3237
- checksum = "515cce34a781d7250b8a65706e0f2a5b99236ea605cb235d4baed6685820478f"
3238
- dependencies = [
3239
- "getrandom 0.2.15",
3240
- "hmac-sha256",
3241
- "hmac-sha512",
3242
- "rand 0.8.5",
3243
- "rsa",
3244
- ]
3245
-
3246
2781
  [[package]]
3247
2782
  name = "syn"
3248
2783
  version = "2.0.98"
@@ -3667,12 +3202,6 @@ version = "1.18.0"
3667
3202
  source = "registry+https://github.com/rust-lang/crates.io-index"
3668
3203
  checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f"
3669
3204
 
3670
- [[package]]
3671
- name = "unicase"
3672
- version = "2.8.1"
3673
- source = "registry+https://github.com/rust-lang/crates.io-index"
3674
- checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539"
3675
-
3676
3205
  [[package]]
3677
3206
  name = "unicode-ident"
3678
3207
  version = "1.0.17"
@@ -3775,15 +3304,6 @@ dependencies = [
3775
3304
  "wit-bindgen-rt",
3776
3305
  ]
3777
3306
 
3778
- [[package]]
3779
- name = "wasix"
3780
- version = "0.12.21"
3781
- source = "registry+https://github.com/rust-lang/crates.io-index"
3782
- checksum = "c1fbb4ef9bbca0c1170e0b00dd28abc9e3b68669821600cad1caaed606583c6d"
3783
- dependencies = [
3784
- "wasi 0.11.0+wasi-snapshot-preview1",
3785
- ]
3786
-
3787
3307
  [[package]]
3788
3308
  name = "wasm-bindgen"
3789
3309
  version = "0.2.100"