├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── readme.md └── src └── main.rs /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "CoreFoundation-sys" 7 | version = "0.1.4" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "d0e9889e6db118d49d88d84728d0e964d973a5680befb5f85f55141beea5c20b" 10 | dependencies = [ 11 | "libc", 12 | "mach 0.1.2", 13 | ] 14 | 15 | [[package]] 16 | name = "IOKit-sys" 17 | version = "0.1.5" 18 | source = "registry+https://github.com/rust-lang/crates.io-index" 19 | checksum = "99696c398cbaf669d2368076bdb3d627fb0ce51a26899d7c61228c5c0af3bf4a" 20 | dependencies = [ 21 | "CoreFoundation-sys", 22 | "libc", 23 | "mach 0.1.2", 24 | ] 25 | 26 | [[package]] 27 | name = "ahash" 28 | version = "0.8.2" 29 | source = "registry+https://github.com/rust-lang/crates.io-index" 30 | checksum = "bf6ccdb167abbf410dcb915cabd428929d7f6a04980b54a11f26a39f1c7f7107" 31 | dependencies = [ 32 | "cfg-if", 33 | "getrandom", 34 | "once_cell", 35 | "serde", 36 | "version_check", 37 | ] 38 | 39 | [[package]] 40 | name = "aho-corasick" 41 | version = "0.7.20" 42 | source = "registry+https://github.com/rust-lang/crates.io-index" 43 | checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" 44 | dependencies = [ 45 | "memchr", 46 | ] 47 | 48 | [[package]] 49 | name = "android_system_properties" 50 | version = "0.1.5" 51 | source = "registry+https://github.com/rust-lang/crates.io-index" 52 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 53 | dependencies = [ 54 | "libc", 55 | ] 56 | 57 | [[package]] 58 | name = "anyhow" 59 | version = "1.0.68" 60 | source = "registry+https://github.com/rust-lang/crates.io-index" 61 | checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61" 62 | 63 | [[package]] 64 | name = "async-stream" 65 | version = "0.3.3" 66 | source = "registry+https://github.com/rust-lang/crates.io-index" 67 | checksum = "dad5c83079eae9969be7fadefe640a1c566901f05ff91ab221de4b6f68d9507e" 68 | dependencies = [ 69 | "async-stream-impl", 70 | "futures-core", 71 | ] 72 | 73 | [[package]] 74 | name = "async-stream-impl" 75 | version = "0.3.3" 76 | source = "registry+https://github.com/rust-lang/crates.io-index" 77 | checksum = "10f203db73a71dfa2fb6dd22763990fa26f3d2625a6da2da900d23b87d26be27" 78 | dependencies = [ 79 | "proc-macro2", 80 | "quote", 81 | "syn", 82 | ] 83 | 84 | [[package]] 85 | name = "async-trait" 86 | version = "0.1.60" 87 | source = "registry+https://github.com/rust-lang/crates.io-index" 88 | checksum = "677d1d8ab452a3936018a687b20e6f7cf5363d713b732b8884001317b0e48aa3" 89 | dependencies = [ 90 | "proc-macro2", 91 | "quote", 92 | "syn", 93 | ] 94 | 95 | [[package]] 96 | name = "async-tungstenite" 97 | version = "0.19.0" 98 | source = "registry+https://github.com/rust-lang/crates.io-index" 99 | checksum = "8e6acf7e4a267eecbb127ed696bb2d50572c22ba7f586a646321e1798d8336a1" 100 | dependencies = [ 101 | "futures-io", 102 | "futures-util", 103 | "log", 104 | "native-tls", 105 | "pin-project-lite", 106 | "tokio", 107 | "tokio-native-tls", 108 | "tungstenite", 109 | ] 110 | 111 | [[package]] 112 | name = "autocfg" 113 | version = "1.1.0" 114 | source = "registry+https://github.com/rust-lang/crates.io-index" 115 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 116 | 117 | [[package]] 118 | name = "base64" 119 | version = "0.13.1" 120 | source = "registry+https://github.com/rust-lang/crates.io-index" 121 | checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" 122 | 123 | [[package]] 124 | name = "bit-set" 125 | version = "0.5.3" 126 | source = "registry+https://github.com/rust-lang/crates.io-index" 127 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 128 | dependencies = [ 129 | "bit-vec", 130 | ] 131 | 132 | [[package]] 133 | name = "bit-vec" 134 | version = "0.6.3" 135 | source = "registry+https://github.com/rust-lang/crates.io-index" 136 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 137 | 138 | [[package]] 139 | name = "bitflags" 140 | version = "1.3.2" 141 | source = "registry+https://github.com/rust-lang/crates.io-index" 142 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 143 | 144 | [[package]] 145 | name = "block" 146 | version = "0.1.6" 147 | source = "registry+https://github.com/rust-lang/crates.io-index" 148 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" 149 | 150 | [[package]] 151 | name = "block-buffer" 152 | version = "0.10.3" 153 | source = "registry+https://github.com/rust-lang/crates.io-index" 154 | checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" 155 | dependencies = [ 156 | "generic-array", 157 | ] 158 | 159 | [[package]] 160 | name = "bluez-async" 161 | version = "0.6.0" 162 | source = "registry+https://github.com/rust-lang/crates.io-index" 163 | checksum = "e81db626818b179ab5fc3393b7ac77462335f716b302ef1ff1866473ab6ddb25" 164 | dependencies = [ 165 | "async-trait", 166 | "bitflags", 167 | "bluez-generated", 168 | "dbus", 169 | "dbus-tokio", 170 | "futures", 171 | "itertools", 172 | "log", 173 | "serde", 174 | "serde-xml-rs", 175 | "thiserror", 176 | "tokio", 177 | "uuid", 178 | ] 179 | 180 | [[package]] 181 | name = "bluez-generated" 182 | version = "0.2.1" 183 | source = "registry+https://github.com/rust-lang/crates.io-index" 184 | checksum = "33ad8f302dd79411881cd0181f3bd9fc91a959b71c3a13159bd8a07d2c40dc7f" 185 | dependencies = [ 186 | "dbus", 187 | ] 188 | 189 | [[package]] 190 | name = "btleplug" 191 | version = "0.10.4" 192 | source = "registry+https://github.com/rust-lang/crates.io-index" 193 | checksum = "331419eb41c368a28390cc881102db519d538ff01e19c77295297007fa214f1e" 194 | dependencies = [ 195 | "async-trait", 196 | "bitflags", 197 | "bluez-async", 198 | "cocoa", 199 | "dashmap", 200 | "dbus", 201 | "futures", 202 | "jni", 203 | "jni-utils", 204 | "libc", 205 | "log", 206 | "objc", 207 | "once_cell", 208 | "static_assertions", 209 | "thiserror", 210 | "tokio", 211 | "tokio-stream", 212 | "uuid", 213 | "windows", 214 | ] 215 | 216 | [[package]] 217 | name = "bumpalo" 218 | version = "3.11.1" 219 | source = "registry+https://github.com/rust-lang/crates.io-index" 220 | checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba" 221 | 222 | [[package]] 223 | name = "buttplug" 224 | version = "6.3.0" 225 | source = "registry+https://github.com/rust-lang/crates.io-index" 226 | checksum = "fb5c2ea5bdfcb439fee273e3cde678c25fd6cd6bb649ccbf6712052cc735a479" 227 | dependencies = [ 228 | "async-stream", 229 | "async-trait", 230 | "async-tungstenite", 231 | "btleplug", 232 | "buttplug_derive", 233 | "byteorder", 234 | "cfg-if", 235 | "dashmap", 236 | "derivative", 237 | "displaydoc", 238 | "futures", 239 | "futures-util", 240 | "getset", 241 | "hidapi", 242 | "jsonschema", 243 | "lazy_static", 244 | "native-tls", 245 | "once_cell", 246 | "os_info", 247 | "paste", 248 | "prost", 249 | "prost-build", 250 | "reqwest", 251 | "rusty-xinput", 252 | "serde", 253 | "serde-aux", 254 | "serde_json", 255 | "serde_repr", 256 | "serialport", 257 | "strum", 258 | "strum_macros", 259 | "thiserror", 260 | "tokio", 261 | "tokio-stream", 262 | "tokio-util", 263 | "tracing", 264 | "tracing-futures", 265 | "tracing-subscriber", 266 | "url", 267 | "uuid", 268 | "windows", 269 | ] 270 | 271 | [[package]] 272 | name = "buttplug_derive" 273 | version = "0.7.0" 274 | source = "registry+https://github.com/rust-lang/crates.io-index" 275 | checksum = "03aff4c65e86203fa86ae3bed20b7b4c1885c1670c4f99a062e0de1366ac2ed2" 276 | dependencies = [ 277 | "quote", 278 | "syn", 279 | ] 280 | 281 | [[package]] 282 | name = "bytecount" 283 | version = "0.6.3" 284 | source = "registry+https://github.com/rust-lang/crates.io-index" 285 | checksum = "2c676a478f63e9fa2dd5368a42f28bba0d6c560b775f38583c8bbaa7fcd67c9c" 286 | 287 | [[package]] 288 | name = "byteorder" 289 | version = "1.4.3" 290 | source = "registry+https://github.com/rust-lang/crates.io-index" 291 | checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" 292 | 293 | [[package]] 294 | name = "bytes" 295 | version = "1.3.0" 296 | source = "registry+https://github.com/rust-lang/crates.io-index" 297 | checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c" 298 | 299 | [[package]] 300 | name = "cargo-vibe" 301 | version = "0.0.4" 302 | dependencies = [ 303 | "buttplug", 304 | "futures", 305 | "tokio", 306 | ] 307 | 308 | [[package]] 309 | name = "cc" 310 | version = "1.0.78" 311 | source = "registry+https://github.com/rust-lang/crates.io-index" 312 | checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d" 313 | 314 | [[package]] 315 | name = "cesu8" 316 | version = "1.1.0" 317 | source = "registry+https://github.com/rust-lang/crates.io-index" 318 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 319 | 320 | [[package]] 321 | name = "cfg-if" 322 | version = "1.0.0" 323 | source = "registry+https://github.com/rust-lang/crates.io-index" 324 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 325 | 326 | [[package]] 327 | name = "chrono" 328 | version = "0.4.23" 329 | source = "registry+https://github.com/rust-lang/crates.io-index" 330 | checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f" 331 | dependencies = [ 332 | "iana-time-zone", 333 | "num-integer", 334 | "num-traits", 335 | "winapi", 336 | ] 337 | 338 | [[package]] 339 | name = "cocoa" 340 | version = "0.24.1" 341 | source = "registry+https://github.com/rust-lang/crates.io-index" 342 | checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a" 343 | dependencies = [ 344 | "bitflags", 345 | "block", 346 | "cocoa-foundation", 347 | "core-foundation", 348 | "core-graphics", 349 | "foreign-types", 350 | "libc", 351 | "objc", 352 | ] 353 | 354 | [[package]] 355 | name = "cocoa-foundation" 356 | version = "0.1.0" 357 | source = "registry+https://github.com/rust-lang/crates.io-index" 358 | checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" 359 | dependencies = [ 360 | "bitflags", 361 | "block", 362 | "core-foundation", 363 | "core-graphics-types", 364 | "foreign-types", 365 | "libc", 366 | "objc", 367 | ] 368 | 369 | [[package]] 370 | name = "codespan-reporting" 371 | version = "0.11.1" 372 | source = "registry+https://github.com/rust-lang/crates.io-index" 373 | checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" 374 | dependencies = [ 375 | "termcolor", 376 | "unicode-width", 377 | ] 378 | 379 | [[package]] 380 | name = "combine" 381 | version = "4.6.6" 382 | source = "registry+https://github.com/rust-lang/crates.io-index" 383 | checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" 384 | dependencies = [ 385 | "bytes", 386 | "memchr", 387 | ] 388 | 389 | [[package]] 390 | name = "core-foundation" 391 | version = "0.9.3" 392 | source = "registry+https://github.com/rust-lang/crates.io-index" 393 | checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" 394 | dependencies = [ 395 | "core-foundation-sys", 396 | "libc", 397 | ] 398 | 399 | [[package]] 400 | name = "core-foundation-sys" 401 | version = "0.8.3" 402 | source = "registry+https://github.com/rust-lang/crates.io-index" 403 | checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" 404 | 405 | [[package]] 406 | name = "core-graphics" 407 | version = "0.22.3" 408 | source = "registry+https://github.com/rust-lang/crates.io-index" 409 | checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" 410 | dependencies = [ 411 | "bitflags", 412 | "core-foundation", 413 | "core-graphics-types", 414 | "foreign-types", 415 | "libc", 416 | ] 417 | 418 | [[package]] 419 | name = "core-graphics-types" 420 | version = "0.1.1" 421 | source = "registry+https://github.com/rust-lang/crates.io-index" 422 | checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" 423 | dependencies = [ 424 | "bitflags", 425 | "core-foundation", 426 | "foreign-types", 427 | "libc", 428 | ] 429 | 430 | [[package]] 431 | name = "cpufeatures" 432 | version = "0.2.5" 433 | source = "registry+https://github.com/rust-lang/crates.io-index" 434 | checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" 435 | dependencies = [ 436 | "libc", 437 | ] 438 | 439 | [[package]] 440 | name = "crypto-common" 441 | version = "0.1.6" 442 | source = "registry+https://github.com/rust-lang/crates.io-index" 443 | checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" 444 | dependencies = [ 445 | "generic-array", 446 | "typenum", 447 | ] 448 | 449 | [[package]] 450 | name = "cxx" 451 | version = "1.0.85" 452 | source = "registry+https://github.com/rust-lang/crates.io-index" 453 | checksum = "5add3fc1717409d029b20c5b6903fc0c0b02fa6741d820054f4a2efa5e5816fd" 454 | dependencies = [ 455 | "cc", 456 | "cxxbridge-flags", 457 | "cxxbridge-macro", 458 | "link-cplusplus", 459 | ] 460 | 461 | [[package]] 462 | name = "cxx-build" 463 | version = "1.0.85" 464 | source = "registry+https://github.com/rust-lang/crates.io-index" 465 | checksum = "b4c87959ba14bc6fbc61df77c3fcfe180fc32b93538c4f1031dd802ccb5f2ff0" 466 | dependencies = [ 467 | "cc", 468 | "codespan-reporting", 469 | "once_cell", 470 | "proc-macro2", 471 | "quote", 472 | "scratch", 473 | "syn", 474 | ] 475 | 476 | [[package]] 477 | name = "cxxbridge-flags" 478 | version = "1.0.85" 479 | source = "registry+https://github.com/rust-lang/crates.io-index" 480 | checksum = "69a3e162fde4e594ed2b07d0f83c6c67b745e7f28ce58c6df5e6b6bef99dfb59" 481 | 482 | [[package]] 483 | name = "cxxbridge-macro" 484 | version = "1.0.85" 485 | source = "registry+https://github.com/rust-lang/crates.io-index" 486 | checksum = "3e7e2adeb6a0d4a282e581096b06e1791532b7d576dcde5ccd9382acf55db8e6" 487 | dependencies = [ 488 | "proc-macro2", 489 | "quote", 490 | "syn", 491 | ] 492 | 493 | [[package]] 494 | name = "dashmap" 495 | version = "5.4.0" 496 | source = "registry+https://github.com/rust-lang/crates.io-index" 497 | checksum = "907076dfda823b0b36d2a1bb5f90c96660a5bbcd7729e10727f07858f22c4edc" 498 | dependencies = [ 499 | "cfg-if", 500 | "hashbrown", 501 | "lock_api", 502 | "once_cell", 503 | "parking_lot_core", 504 | ] 505 | 506 | [[package]] 507 | name = "dbus" 508 | version = "0.9.6" 509 | source = "registry+https://github.com/rust-lang/crates.io-index" 510 | checksum = "6f8bcdd56d2e5c4ed26a529c5a9029f5db8290d433497506f958eae3be148eb6" 511 | dependencies = [ 512 | "futures-channel", 513 | "futures-util", 514 | "libc", 515 | "libdbus-sys", 516 | "winapi", 517 | ] 518 | 519 | [[package]] 520 | name = "dbus-tokio" 521 | version = "0.7.5" 522 | source = "registry+https://github.com/rust-lang/crates.io-index" 523 | checksum = "12a1a74a0c53b22d7d994256cf3ecbeefa5eedce3cf9d362945ac523c4132180" 524 | dependencies = [ 525 | "dbus", 526 | "libc", 527 | "tokio", 528 | ] 529 | 530 | [[package]] 531 | name = "derivative" 532 | version = "2.2.0" 533 | source = "registry+https://github.com/rust-lang/crates.io-index" 534 | checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" 535 | dependencies = [ 536 | "proc-macro2", 537 | "quote", 538 | "syn", 539 | ] 540 | 541 | [[package]] 542 | name = "digest" 543 | version = "0.10.6" 544 | source = "registry+https://github.com/rust-lang/crates.io-index" 545 | checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" 546 | dependencies = [ 547 | "block-buffer", 548 | "crypto-common", 549 | ] 550 | 551 | [[package]] 552 | name = "displaydoc" 553 | version = "0.2.3" 554 | source = "registry+https://github.com/rust-lang/crates.io-index" 555 | checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" 556 | dependencies = [ 557 | "proc-macro2", 558 | "quote", 559 | "syn", 560 | ] 561 | 562 | [[package]] 563 | name = "either" 564 | version = "1.8.0" 565 | source = "registry+https://github.com/rust-lang/crates.io-index" 566 | checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" 567 | 568 | [[package]] 569 | name = "encoding_rs" 570 | version = "0.8.31" 571 | source = "registry+https://github.com/rust-lang/crates.io-index" 572 | checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" 573 | dependencies = [ 574 | "cfg-if", 575 | ] 576 | 577 | [[package]] 578 | name = "fancy-regex" 579 | version = "0.10.0" 580 | source = "registry+https://github.com/rust-lang/crates.io-index" 581 | checksum = "0678ab2d46fa5195aaf59ad034c083d351377d4af57f3e073c074d0da3e3c766" 582 | dependencies = [ 583 | "bit-set", 584 | "regex", 585 | ] 586 | 587 | [[package]] 588 | name = "fastrand" 589 | version = "1.8.0" 590 | source = "registry+https://github.com/rust-lang/crates.io-index" 591 | checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499" 592 | dependencies = [ 593 | "instant", 594 | ] 595 | 596 | [[package]] 597 | name = "fixedbitset" 598 | version = "0.4.2" 599 | source = "registry+https://github.com/rust-lang/crates.io-index" 600 | checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" 601 | 602 | [[package]] 603 | name = "fnv" 604 | version = "1.0.7" 605 | source = "registry+https://github.com/rust-lang/crates.io-index" 606 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 607 | 608 | [[package]] 609 | name = "foreign-types" 610 | version = "0.3.2" 611 | source = "registry+https://github.com/rust-lang/crates.io-index" 612 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 613 | dependencies = [ 614 | "foreign-types-shared", 615 | ] 616 | 617 | [[package]] 618 | name = "foreign-types-shared" 619 | version = "0.1.1" 620 | source = "registry+https://github.com/rust-lang/crates.io-index" 621 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 622 | 623 | [[package]] 624 | name = "form_urlencoded" 625 | version = "1.1.0" 626 | source = "registry+https://github.com/rust-lang/crates.io-index" 627 | checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" 628 | dependencies = [ 629 | "percent-encoding", 630 | ] 631 | 632 | [[package]] 633 | name = "fraction" 634 | version = "0.12.2" 635 | source = "registry+https://github.com/rust-lang/crates.io-index" 636 | checksum = "7aa5de57a62c2440ece64342ea59efb7171aa7d016faf8dfcb8795066a17146b" 637 | dependencies = [ 638 | "lazy_static", 639 | "num", 640 | ] 641 | 642 | [[package]] 643 | name = "futures" 644 | version = "0.3.25" 645 | source = "registry+https://github.com/rust-lang/crates.io-index" 646 | checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0" 647 | dependencies = [ 648 | "futures-channel", 649 | "futures-core", 650 | "futures-executor", 651 | "futures-io", 652 | "futures-sink", 653 | "futures-task", 654 | "futures-util", 655 | ] 656 | 657 | [[package]] 658 | name = "futures-channel" 659 | version = "0.3.25" 660 | source = "registry+https://github.com/rust-lang/crates.io-index" 661 | checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed" 662 | dependencies = [ 663 | "futures-core", 664 | "futures-sink", 665 | ] 666 | 667 | [[package]] 668 | name = "futures-core" 669 | version = "0.3.25" 670 | source = "registry+https://github.com/rust-lang/crates.io-index" 671 | checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac" 672 | 673 | [[package]] 674 | name = "futures-executor" 675 | version = "0.3.25" 676 | source = "registry+https://github.com/rust-lang/crates.io-index" 677 | checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2" 678 | dependencies = [ 679 | "futures-core", 680 | "futures-task", 681 | "futures-util", 682 | ] 683 | 684 | [[package]] 685 | name = "futures-io" 686 | version = "0.3.25" 687 | source = "registry+https://github.com/rust-lang/crates.io-index" 688 | checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb" 689 | 690 | [[package]] 691 | name = "futures-macro" 692 | version = "0.3.25" 693 | source = "registry+https://github.com/rust-lang/crates.io-index" 694 | checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d" 695 | dependencies = [ 696 | "proc-macro2", 697 | "quote", 698 | "syn", 699 | ] 700 | 701 | [[package]] 702 | name = "futures-sink" 703 | version = "0.3.25" 704 | source = "registry+https://github.com/rust-lang/crates.io-index" 705 | checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9" 706 | 707 | [[package]] 708 | name = "futures-task" 709 | version = "0.3.25" 710 | source = "registry+https://github.com/rust-lang/crates.io-index" 711 | checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea" 712 | 713 | [[package]] 714 | name = "futures-util" 715 | version = "0.3.25" 716 | source = "registry+https://github.com/rust-lang/crates.io-index" 717 | checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6" 718 | dependencies = [ 719 | "futures-channel", 720 | "futures-core", 721 | "futures-io", 722 | "futures-macro", 723 | "futures-sink", 724 | "futures-task", 725 | "memchr", 726 | "pin-project-lite", 727 | "pin-utils", 728 | "slab", 729 | ] 730 | 731 | [[package]] 732 | name = "generic-array" 733 | version = "0.14.6" 734 | source = "registry+https://github.com/rust-lang/crates.io-index" 735 | checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" 736 | dependencies = [ 737 | "typenum", 738 | "version_check", 739 | ] 740 | 741 | [[package]] 742 | name = "getrandom" 743 | version = "0.2.8" 744 | source = "registry+https://github.com/rust-lang/crates.io-index" 745 | checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" 746 | dependencies = [ 747 | "cfg-if", 748 | "libc", 749 | "wasi", 750 | ] 751 | 752 | [[package]] 753 | name = "getset" 754 | version = "0.1.2" 755 | source = "registry+https://github.com/rust-lang/crates.io-index" 756 | checksum = "e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9" 757 | dependencies = [ 758 | "proc-macro-error", 759 | "proc-macro2", 760 | "quote", 761 | "syn", 762 | ] 763 | 764 | [[package]] 765 | name = "h2" 766 | version = "0.3.15" 767 | source = "registry+https://github.com/rust-lang/crates.io-index" 768 | checksum = "5f9f29bc9dda355256b2916cf526ab02ce0aeaaaf2bad60d65ef3f12f11dd0f4" 769 | dependencies = [ 770 | "bytes", 771 | "fnv", 772 | "futures-core", 773 | "futures-sink", 774 | "futures-util", 775 | "http", 776 | "indexmap", 777 | "slab", 778 | "tokio", 779 | "tokio-util", 780 | "tracing", 781 | ] 782 | 783 | [[package]] 784 | name = "hashbrown" 785 | version = "0.12.3" 786 | source = "registry+https://github.com/rust-lang/crates.io-index" 787 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 788 | 789 | [[package]] 790 | name = "heck" 791 | version = "0.4.0" 792 | source = "registry+https://github.com/rust-lang/crates.io-index" 793 | checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" 794 | 795 | [[package]] 796 | name = "hermit-abi" 797 | version = "0.2.6" 798 | source = "registry+https://github.com/rust-lang/crates.io-index" 799 | checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" 800 | dependencies = [ 801 | "libc", 802 | ] 803 | 804 | [[package]] 805 | name = "hidapi" 806 | version = "2.0.2" 807 | source = "registry+https://github.com/rust-lang/crates.io-index" 808 | checksum = "29839436a2de4587be0b5ef083492a5dcee40ac98404e63410dc98c916251ca7" 809 | dependencies = [ 810 | "cc", 811 | "libc", 812 | "pkg-config", 813 | "winapi", 814 | ] 815 | 816 | [[package]] 817 | name = "http" 818 | version = "0.2.8" 819 | source = "registry+https://github.com/rust-lang/crates.io-index" 820 | checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" 821 | dependencies = [ 822 | "bytes", 823 | "fnv", 824 | "itoa", 825 | ] 826 | 827 | [[package]] 828 | name = "http-body" 829 | version = "0.4.5" 830 | source = "registry+https://github.com/rust-lang/crates.io-index" 831 | checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" 832 | dependencies = [ 833 | "bytes", 834 | "http", 835 | "pin-project-lite", 836 | ] 837 | 838 | [[package]] 839 | name = "httparse" 840 | version = "1.8.0" 841 | source = "registry+https://github.com/rust-lang/crates.io-index" 842 | checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" 843 | 844 | [[package]] 845 | name = "httpdate" 846 | version = "1.0.2" 847 | source = "registry+https://github.com/rust-lang/crates.io-index" 848 | checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" 849 | 850 | [[package]] 851 | name = "hyper" 852 | version = "0.14.23" 853 | source = "registry+https://github.com/rust-lang/crates.io-index" 854 | checksum = "034711faac9d2166cb1baf1a2fb0b60b1f277f8492fd72176c17f3515e1abd3c" 855 | dependencies = [ 856 | "bytes", 857 | "futures-channel", 858 | "futures-core", 859 | "futures-util", 860 | "h2", 861 | "http", 862 | "http-body", 863 | "httparse", 864 | "httpdate", 865 | "itoa", 866 | "pin-project-lite", 867 | "socket2", 868 | "tokio", 869 | "tower-service", 870 | "tracing", 871 | "want", 872 | ] 873 | 874 | [[package]] 875 | name = "hyper-tls" 876 | version = "0.5.0" 877 | source = "registry+https://github.com/rust-lang/crates.io-index" 878 | checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" 879 | dependencies = [ 880 | "bytes", 881 | "hyper", 882 | "native-tls", 883 | "tokio", 884 | "tokio-native-tls", 885 | ] 886 | 887 | [[package]] 888 | name = "iana-time-zone" 889 | version = "0.1.53" 890 | source = "registry+https://github.com/rust-lang/crates.io-index" 891 | checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765" 892 | dependencies = [ 893 | "android_system_properties", 894 | "core-foundation-sys", 895 | "iana-time-zone-haiku", 896 | "js-sys", 897 | "wasm-bindgen", 898 | "winapi", 899 | ] 900 | 901 | [[package]] 902 | name = "iana-time-zone-haiku" 903 | version = "0.1.1" 904 | source = "registry+https://github.com/rust-lang/crates.io-index" 905 | checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" 906 | dependencies = [ 907 | "cxx", 908 | "cxx-build", 909 | ] 910 | 911 | [[package]] 912 | name = "idna" 913 | version = "0.3.0" 914 | source = "registry+https://github.com/rust-lang/crates.io-index" 915 | checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" 916 | dependencies = [ 917 | "unicode-bidi", 918 | "unicode-normalization", 919 | ] 920 | 921 | [[package]] 922 | name = "indexmap" 923 | version = "1.9.2" 924 | source = "registry+https://github.com/rust-lang/crates.io-index" 925 | checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" 926 | dependencies = [ 927 | "autocfg", 928 | "hashbrown", 929 | ] 930 | 931 | [[package]] 932 | name = "instant" 933 | version = "0.1.12" 934 | source = "registry+https://github.com/rust-lang/crates.io-index" 935 | checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" 936 | dependencies = [ 937 | "cfg-if", 938 | ] 939 | 940 | [[package]] 941 | name = "ipnet" 942 | version = "2.7.0" 943 | source = "registry+https://github.com/rust-lang/crates.io-index" 944 | checksum = "11b0d96e660696543b251e58030cf9787df56da39dab19ad60eae7353040917e" 945 | 946 | [[package]] 947 | name = "iso8601" 948 | version = "0.5.1" 949 | source = "registry+https://github.com/rust-lang/crates.io-index" 950 | checksum = "296af15e112ec6dc38c9fd3ae027b5337a75466e8eed757bd7d5cf742ea85eb6" 951 | dependencies = [ 952 | "nom", 953 | ] 954 | 955 | [[package]] 956 | name = "itertools" 957 | version = "0.10.5" 958 | source = "registry+https://github.com/rust-lang/crates.io-index" 959 | checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" 960 | dependencies = [ 961 | "either", 962 | ] 963 | 964 | [[package]] 965 | name = "itoa" 966 | version = "1.0.5" 967 | source = "registry+https://github.com/rust-lang/crates.io-index" 968 | checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" 969 | 970 | [[package]] 971 | name = "jni" 972 | version = "0.19.0" 973 | source = "registry+https://github.com/rust-lang/crates.io-index" 974 | checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" 975 | dependencies = [ 976 | "cesu8", 977 | "combine", 978 | "jni-sys", 979 | "log", 980 | "thiserror", 981 | "walkdir", 982 | ] 983 | 984 | [[package]] 985 | name = "jni-sys" 986 | version = "0.3.0" 987 | source = "registry+https://github.com/rust-lang/crates.io-index" 988 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 989 | 990 | [[package]] 991 | name = "jni-utils" 992 | version = "0.1.0" 993 | source = "registry+https://github.com/rust-lang/crates.io-index" 994 | checksum = "0d3a00638470bedd9bcbea85292bef2207e6db984079db0bd70148a449cdb457" 995 | dependencies = [ 996 | "dashmap", 997 | "futures", 998 | "jni", 999 | "log", 1000 | "once_cell", 1001 | "static_assertions", 1002 | "uuid", 1003 | ] 1004 | 1005 | [[package]] 1006 | name = "js-sys" 1007 | version = "0.3.60" 1008 | source = "registry+https://github.com/rust-lang/crates.io-index" 1009 | checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" 1010 | dependencies = [ 1011 | "wasm-bindgen", 1012 | ] 1013 | 1014 | [[package]] 1015 | name = "jsonschema" 1016 | version = "0.16.1" 1017 | source = "registry+https://github.com/rust-lang/crates.io-index" 1018 | checksum = "6ca9e2b45609132ae2214d50482c03aeee78826cd6fd53a8940915b81acedf16" 1019 | dependencies = [ 1020 | "ahash", 1021 | "anyhow", 1022 | "base64", 1023 | "bytecount", 1024 | "fancy-regex", 1025 | "fraction", 1026 | "iso8601", 1027 | "itoa", 1028 | "lazy_static", 1029 | "memchr", 1030 | "num-cmp", 1031 | "parking_lot", 1032 | "percent-encoding", 1033 | "regex", 1034 | "serde", 1035 | "serde_json", 1036 | "time", 1037 | "url", 1038 | "uuid", 1039 | ] 1040 | 1041 | [[package]] 1042 | name = "lazy_static" 1043 | version = "1.4.0" 1044 | source = "registry+https://github.com/rust-lang/crates.io-index" 1045 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 1046 | 1047 | [[package]] 1048 | name = "libc" 1049 | version = "0.2.139" 1050 | source = "registry+https://github.com/rust-lang/crates.io-index" 1051 | checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" 1052 | 1053 | [[package]] 1054 | name = "libdbus-sys" 1055 | version = "0.2.2" 1056 | source = "registry+https://github.com/rust-lang/crates.io-index" 1057 | checksum = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b" 1058 | dependencies = [ 1059 | "pkg-config", 1060 | ] 1061 | 1062 | [[package]] 1063 | name = "libudev" 1064 | version = "0.3.0" 1065 | source = "registry+https://github.com/rust-lang/crates.io-index" 1066 | checksum = "78b324152da65df7bb95acfcaab55e3097ceaab02fb19b228a9eb74d55f135e0" 1067 | dependencies = [ 1068 | "libc", 1069 | "libudev-sys", 1070 | ] 1071 | 1072 | [[package]] 1073 | name = "libudev-sys" 1074 | version = "0.1.4" 1075 | source = "registry+https://github.com/rust-lang/crates.io-index" 1076 | checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" 1077 | dependencies = [ 1078 | "libc", 1079 | "pkg-config", 1080 | ] 1081 | 1082 | [[package]] 1083 | name = "link-cplusplus" 1084 | version = "1.0.8" 1085 | source = "registry+https://github.com/rust-lang/crates.io-index" 1086 | checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" 1087 | dependencies = [ 1088 | "cc", 1089 | ] 1090 | 1091 | [[package]] 1092 | name = "lock_api" 1093 | version = "0.4.9" 1094 | source = "registry+https://github.com/rust-lang/crates.io-index" 1095 | checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" 1096 | dependencies = [ 1097 | "autocfg", 1098 | "scopeguard", 1099 | ] 1100 | 1101 | [[package]] 1102 | name = "log" 1103 | version = "0.4.17" 1104 | source = "registry+https://github.com/rust-lang/crates.io-index" 1105 | checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" 1106 | dependencies = [ 1107 | "cfg-if", 1108 | ] 1109 | 1110 | [[package]] 1111 | name = "mach" 1112 | version = "0.1.2" 1113 | source = "registry+https://github.com/rust-lang/crates.io-index" 1114 | checksum = "2fd13ee2dd61cc82833ba05ade5a30bb3d63f7ced605ef827063c63078302de9" 1115 | dependencies = [ 1116 | "libc", 1117 | ] 1118 | 1119 | [[package]] 1120 | name = "mach" 1121 | version = "0.3.2" 1122 | source = "registry+https://github.com/rust-lang/crates.io-index" 1123 | checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" 1124 | dependencies = [ 1125 | "libc", 1126 | ] 1127 | 1128 | [[package]] 1129 | name = "malloc_buf" 1130 | version = "0.0.6" 1131 | source = "registry+https://github.com/rust-lang/crates.io-index" 1132 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" 1133 | dependencies = [ 1134 | "libc", 1135 | ] 1136 | 1137 | [[package]] 1138 | name = "memchr" 1139 | version = "2.5.0" 1140 | source = "registry+https://github.com/rust-lang/crates.io-index" 1141 | checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" 1142 | 1143 | [[package]] 1144 | name = "mime" 1145 | version = "0.3.16" 1146 | source = "registry+https://github.com/rust-lang/crates.io-index" 1147 | checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" 1148 | 1149 | [[package]] 1150 | name = "minimal-lexical" 1151 | version = "0.2.1" 1152 | source = "registry+https://github.com/rust-lang/crates.io-index" 1153 | checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" 1154 | 1155 | [[package]] 1156 | name = "mio" 1157 | version = "0.8.5" 1158 | source = "registry+https://github.com/rust-lang/crates.io-index" 1159 | checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de" 1160 | dependencies = [ 1161 | "libc", 1162 | "log", 1163 | "wasi", 1164 | "windows-sys 0.42.0", 1165 | ] 1166 | 1167 | [[package]] 1168 | name = "multimap" 1169 | version = "0.8.3" 1170 | source = "registry+https://github.com/rust-lang/crates.io-index" 1171 | checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" 1172 | 1173 | [[package]] 1174 | name = "native-tls" 1175 | version = "0.2.11" 1176 | source = "registry+https://github.com/rust-lang/crates.io-index" 1177 | checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" 1178 | dependencies = [ 1179 | "lazy_static", 1180 | "libc", 1181 | "log", 1182 | "openssl", 1183 | "openssl-probe", 1184 | "openssl-sys", 1185 | "schannel", 1186 | "security-framework", 1187 | "security-framework-sys", 1188 | "tempfile", 1189 | ] 1190 | 1191 | [[package]] 1192 | name = "nix" 1193 | version = "0.24.3" 1194 | source = "registry+https://github.com/rust-lang/crates.io-index" 1195 | checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" 1196 | dependencies = [ 1197 | "bitflags", 1198 | "cfg-if", 1199 | "libc", 1200 | ] 1201 | 1202 | [[package]] 1203 | name = "nom" 1204 | version = "7.1.1" 1205 | source = "registry+https://github.com/rust-lang/crates.io-index" 1206 | checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" 1207 | dependencies = [ 1208 | "memchr", 1209 | "minimal-lexical", 1210 | ] 1211 | 1212 | [[package]] 1213 | name = "nu-ansi-term" 1214 | version = "0.46.0" 1215 | source = "registry+https://github.com/rust-lang/crates.io-index" 1216 | checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" 1217 | dependencies = [ 1218 | "overload", 1219 | "winapi", 1220 | ] 1221 | 1222 | [[package]] 1223 | name = "num" 1224 | version = "0.4.0" 1225 | source = "registry+https://github.com/rust-lang/crates.io-index" 1226 | checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606" 1227 | dependencies = [ 1228 | "num-bigint", 1229 | "num-complex", 1230 | "num-integer", 1231 | "num-iter", 1232 | "num-rational", 1233 | "num-traits", 1234 | ] 1235 | 1236 | [[package]] 1237 | name = "num-bigint" 1238 | version = "0.4.3" 1239 | source = "registry+https://github.com/rust-lang/crates.io-index" 1240 | checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" 1241 | dependencies = [ 1242 | "autocfg", 1243 | "num-integer", 1244 | "num-traits", 1245 | ] 1246 | 1247 | [[package]] 1248 | name = "num-cmp" 1249 | version = "0.1.0" 1250 | source = "registry+https://github.com/rust-lang/crates.io-index" 1251 | checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa" 1252 | 1253 | [[package]] 1254 | name = "num-complex" 1255 | version = "0.4.2" 1256 | source = "registry+https://github.com/rust-lang/crates.io-index" 1257 | checksum = "7ae39348c8bc5fbd7f40c727a9925f03517afd2ab27d46702108b6a7e5414c19" 1258 | dependencies = [ 1259 | "num-traits", 1260 | ] 1261 | 1262 | [[package]] 1263 | name = "num-integer" 1264 | version = "0.1.45" 1265 | source = "registry+https://github.com/rust-lang/crates.io-index" 1266 | checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" 1267 | dependencies = [ 1268 | "autocfg", 1269 | "num-traits", 1270 | ] 1271 | 1272 | [[package]] 1273 | name = "num-iter" 1274 | version = "0.1.43" 1275 | source = "registry+https://github.com/rust-lang/crates.io-index" 1276 | checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" 1277 | dependencies = [ 1278 | "autocfg", 1279 | "num-integer", 1280 | "num-traits", 1281 | ] 1282 | 1283 | [[package]] 1284 | name = "num-rational" 1285 | version = "0.4.1" 1286 | source = "registry+https://github.com/rust-lang/crates.io-index" 1287 | checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" 1288 | dependencies = [ 1289 | "autocfg", 1290 | "num-bigint", 1291 | "num-integer", 1292 | "num-traits", 1293 | ] 1294 | 1295 | [[package]] 1296 | name = "num-traits" 1297 | version = "0.2.15" 1298 | source = "registry+https://github.com/rust-lang/crates.io-index" 1299 | checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" 1300 | dependencies = [ 1301 | "autocfg", 1302 | ] 1303 | 1304 | [[package]] 1305 | name = "num_cpus" 1306 | version = "1.15.0" 1307 | source = "registry+https://github.com/rust-lang/crates.io-index" 1308 | checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" 1309 | dependencies = [ 1310 | "hermit-abi", 1311 | "libc", 1312 | ] 1313 | 1314 | [[package]] 1315 | name = "objc" 1316 | version = "0.2.7" 1317 | source = "registry+https://github.com/rust-lang/crates.io-index" 1318 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" 1319 | dependencies = [ 1320 | "malloc_buf", 1321 | ] 1322 | 1323 | [[package]] 1324 | name = "once_cell" 1325 | version = "1.16.0" 1326 | source = "registry+https://github.com/rust-lang/crates.io-index" 1327 | checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860" 1328 | 1329 | [[package]] 1330 | name = "openssl" 1331 | version = "0.10.45" 1332 | source = "registry+https://github.com/rust-lang/crates.io-index" 1333 | checksum = "b102428fd03bc5edf97f62620f7298614c45cedf287c271e7ed450bbaf83f2e1" 1334 | dependencies = [ 1335 | "bitflags", 1336 | "cfg-if", 1337 | "foreign-types", 1338 | "libc", 1339 | "once_cell", 1340 | "openssl-macros", 1341 | "openssl-sys", 1342 | ] 1343 | 1344 | [[package]] 1345 | name = "openssl-macros" 1346 | version = "0.1.0" 1347 | source = "registry+https://github.com/rust-lang/crates.io-index" 1348 | checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" 1349 | dependencies = [ 1350 | "proc-macro2", 1351 | "quote", 1352 | "syn", 1353 | ] 1354 | 1355 | [[package]] 1356 | name = "openssl-probe" 1357 | version = "0.1.5" 1358 | source = "registry+https://github.com/rust-lang/crates.io-index" 1359 | checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" 1360 | 1361 | [[package]] 1362 | name = "openssl-sys" 1363 | version = "0.9.80" 1364 | source = "registry+https://github.com/rust-lang/crates.io-index" 1365 | checksum = "23bbbf7854cd45b83958ebe919f0e8e516793727652e27fda10a8384cfc790b7" 1366 | dependencies = [ 1367 | "autocfg", 1368 | "cc", 1369 | "libc", 1370 | "pkg-config", 1371 | "vcpkg", 1372 | ] 1373 | 1374 | [[package]] 1375 | name = "os_info" 1376 | version = "3.5.1" 1377 | source = "registry+https://github.com/rust-lang/crates.io-index" 1378 | checksum = "c4750134fb6a5d49afc80777394ad5d95b04bc12068c6abb92fae8f43817270f" 1379 | dependencies = [ 1380 | "log", 1381 | "serde", 1382 | "winapi", 1383 | ] 1384 | 1385 | [[package]] 1386 | name = "overload" 1387 | version = "0.1.1" 1388 | source = "registry+https://github.com/rust-lang/crates.io-index" 1389 | checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" 1390 | 1391 | [[package]] 1392 | name = "parking_lot" 1393 | version = "0.12.1" 1394 | source = "registry+https://github.com/rust-lang/crates.io-index" 1395 | checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" 1396 | dependencies = [ 1397 | "lock_api", 1398 | "parking_lot_core", 1399 | ] 1400 | 1401 | [[package]] 1402 | name = "parking_lot_core" 1403 | version = "0.9.5" 1404 | source = "registry+https://github.com/rust-lang/crates.io-index" 1405 | checksum = "7ff9f3fef3968a3ec5945535ed654cb38ff72d7495a25619e2247fb15a2ed9ba" 1406 | dependencies = [ 1407 | "cfg-if", 1408 | "libc", 1409 | "redox_syscall", 1410 | "smallvec", 1411 | "windows-sys 0.42.0", 1412 | ] 1413 | 1414 | [[package]] 1415 | name = "paste" 1416 | version = "1.0.11" 1417 | source = "registry+https://github.com/rust-lang/crates.io-index" 1418 | checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba" 1419 | 1420 | [[package]] 1421 | name = "percent-encoding" 1422 | version = "2.2.0" 1423 | source = "registry+https://github.com/rust-lang/crates.io-index" 1424 | checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" 1425 | 1426 | [[package]] 1427 | name = "petgraph" 1428 | version = "0.6.2" 1429 | source = "registry+https://github.com/rust-lang/crates.io-index" 1430 | checksum = "e6d5014253a1331579ce62aa67443b4a658c5e7dd03d4bc6d302b94474888143" 1431 | dependencies = [ 1432 | "fixedbitset", 1433 | "indexmap", 1434 | ] 1435 | 1436 | [[package]] 1437 | name = "pin-project" 1438 | version = "1.0.12" 1439 | source = "registry+https://github.com/rust-lang/crates.io-index" 1440 | checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc" 1441 | dependencies = [ 1442 | "pin-project-internal", 1443 | ] 1444 | 1445 | [[package]] 1446 | name = "pin-project-internal" 1447 | version = "1.0.12" 1448 | source = "registry+https://github.com/rust-lang/crates.io-index" 1449 | checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55" 1450 | dependencies = [ 1451 | "proc-macro2", 1452 | "quote", 1453 | "syn", 1454 | ] 1455 | 1456 | [[package]] 1457 | name = "pin-project-lite" 1458 | version = "0.2.9" 1459 | source = "registry+https://github.com/rust-lang/crates.io-index" 1460 | checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" 1461 | 1462 | [[package]] 1463 | name = "pin-utils" 1464 | version = "0.1.0" 1465 | source = "registry+https://github.com/rust-lang/crates.io-index" 1466 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 1467 | 1468 | [[package]] 1469 | name = "pkg-config" 1470 | version = "0.3.26" 1471 | source = "registry+https://github.com/rust-lang/crates.io-index" 1472 | checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" 1473 | 1474 | [[package]] 1475 | name = "ppv-lite86" 1476 | version = "0.2.17" 1477 | source = "registry+https://github.com/rust-lang/crates.io-index" 1478 | checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" 1479 | 1480 | [[package]] 1481 | name = "prettyplease" 1482 | version = "0.1.22" 1483 | source = "registry+https://github.com/rust-lang/crates.io-index" 1484 | checksum = "2c8992a85d8e93a28bdf76137db888d3874e3b230dee5ed8bebac4c9f7617773" 1485 | dependencies = [ 1486 | "proc-macro2", 1487 | "syn", 1488 | ] 1489 | 1490 | [[package]] 1491 | name = "proc-macro-error" 1492 | version = "1.0.4" 1493 | source = "registry+https://github.com/rust-lang/crates.io-index" 1494 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 1495 | dependencies = [ 1496 | "proc-macro-error-attr", 1497 | "proc-macro2", 1498 | "quote", 1499 | "syn", 1500 | "version_check", 1501 | ] 1502 | 1503 | [[package]] 1504 | name = "proc-macro-error-attr" 1505 | version = "1.0.4" 1506 | source = "registry+https://github.com/rust-lang/crates.io-index" 1507 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 1508 | dependencies = [ 1509 | "proc-macro2", 1510 | "quote", 1511 | "version_check", 1512 | ] 1513 | 1514 | [[package]] 1515 | name = "proc-macro2" 1516 | version = "1.0.49" 1517 | source = "registry+https://github.com/rust-lang/crates.io-index" 1518 | checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5" 1519 | dependencies = [ 1520 | "unicode-ident", 1521 | ] 1522 | 1523 | [[package]] 1524 | name = "prost" 1525 | version = "0.11.5" 1526 | source = "registry+https://github.com/rust-lang/crates.io-index" 1527 | checksum = "c01db6702aa05baa3f57dec92b8eeeeb4cb19e894e73996b32a4093289e54592" 1528 | dependencies = [ 1529 | "bytes", 1530 | "prost-derive", 1531 | ] 1532 | 1533 | [[package]] 1534 | name = "prost-build" 1535 | version = "0.11.5" 1536 | source = "registry+https://github.com/rust-lang/crates.io-index" 1537 | checksum = "cb5320c680de74ba083512704acb90fe00f28f79207286a848e730c45dd73ed6" 1538 | dependencies = [ 1539 | "bytes", 1540 | "heck", 1541 | "itertools", 1542 | "lazy_static", 1543 | "log", 1544 | "multimap", 1545 | "petgraph", 1546 | "prettyplease", 1547 | "prost", 1548 | "prost-types", 1549 | "regex", 1550 | "syn", 1551 | "tempfile", 1552 | "which", 1553 | ] 1554 | 1555 | [[package]] 1556 | name = "prost-derive" 1557 | version = "0.11.5" 1558 | source = "registry+https://github.com/rust-lang/crates.io-index" 1559 | checksum = "c8842bad1a5419bca14eac663ba798f6bc19c413c2fdceb5f3ba3b0932d96720" 1560 | dependencies = [ 1561 | "anyhow", 1562 | "itertools", 1563 | "proc-macro2", 1564 | "quote", 1565 | "syn", 1566 | ] 1567 | 1568 | [[package]] 1569 | name = "prost-types" 1570 | version = "0.11.5" 1571 | source = "registry+https://github.com/rust-lang/crates.io-index" 1572 | checksum = "017f79637768cde62820bc2d4fe0e45daaa027755c323ad077767c6c5f173091" 1573 | dependencies = [ 1574 | "bytes", 1575 | "prost", 1576 | ] 1577 | 1578 | [[package]] 1579 | name = "quote" 1580 | version = "1.0.23" 1581 | source = "registry+https://github.com/rust-lang/crates.io-index" 1582 | checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" 1583 | dependencies = [ 1584 | "proc-macro2", 1585 | ] 1586 | 1587 | [[package]] 1588 | name = "rand" 1589 | version = "0.8.5" 1590 | source = "registry+https://github.com/rust-lang/crates.io-index" 1591 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 1592 | dependencies = [ 1593 | "libc", 1594 | "rand_chacha", 1595 | "rand_core", 1596 | ] 1597 | 1598 | [[package]] 1599 | name = "rand_chacha" 1600 | version = "0.3.1" 1601 | source = "registry+https://github.com/rust-lang/crates.io-index" 1602 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 1603 | dependencies = [ 1604 | "ppv-lite86", 1605 | "rand_core", 1606 | ] 1607 | 1608 | [[package]] 1609 | name = "rand_core" 1610 | version = "0.6.4" 1611 | source = "registry+https://github.com/rust-lang/crates.io-index" 1612 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 1613 | dependencies = [ 1614 | "getrandom", 1615 | ] 1616 | 1617 | [[package]] 1618 | name = "redox_syscall" 1619 | version = "0.2.16" 1620 | source = "registry+https://github.com/rust-lang/crates.io-index" 1621 | checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" 1622 | dependencies = [ 1623 | "bitflags", 1624 | ] 1625 | 1626 | [[package]] 1627 | name = "regex" 1628 | version = "1.7.0" 1629 | source = "registry+https://github.com/rust-lang/crates.io-index" 1630 | checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a" 1631 | dependencies = [ 1632 | "aho-corasick", 1633 | "memchr", 1634 | "regex-syntax", 1635 | ] 1636 | 1637 | [[package]] 1638 | name = "regex-syntax" 1639 | version = "0.6.28" 1640 | source = "registry+https://github.com/rust-lang/crates.io-index" 1641 | checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" 1642 | 1643 | [[package]] 1644 | name = "remove_dir_all" 1645 | version = "0.5.3" 1646 | source = "registry+https://github.com/rust-lang/crates.io-index" 1647 | checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" 1648 | dependencies = [ 1649 | "winapi", 1650 | ] 1651 | 1652 | [[package]] 1653 | name = "reqwest" 1654 | version = "0.11.13" 1655 | source = "registry+https://github.com/rust-lang/crates.io-index" 1656 | checksum = "68cc60575865c7831548863cc02356512e3f1dc2f3f82cb837d7fc4cc8f3c97c" 1657 | dependencies = [ 1658 | "base64", 1659 | "bytes", 1660 | "encoding_rs", 1661 | "futures-core", 1662 | "futures-util", 1663 | "h2", 1664 | "http", 1665 | "http-body", 1666 | "hyper", 1667 | "hyper-tls", 1668 | "ipnet", 1669 | "js-sys", 1670 | "log", 1671 | "mime", 1672 | "native-tls", 1673 | "once_cell", 1674 | "percent-encoding", 1675 | "pin-project-lite", 1676 | "serde", 1677 | "serde_json", 1678 | "serde_urlencoded", 1679 | "tokio", 1680 | "tokio-native-tls", 1681 | "tower-service", 1682 | "url", 1683 | "wasm-bindgen", 1684 | "wasm-bindgen-futures", 1685 | "web-sys", 1686 | "winreg", 1687 | ] 1688 | 1689 | [[package]] 1690 | name = "rustversion" 1691 | version = "1.0.11" 1692 | source = "registry+https://github.com/rust-lang/crates.io-index" 1693 | checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" 1694 | 1695 | [[package]] 1696 | name = "rusty-xinput" 1697 | version = "1.2.0" 1698 | source = "registry+https://github.com/rust-lang/crates.io-index" 1699 | checksum = "d2aa654bc32eb9ca14cce1a084abc9dfe43949a4547c35269a094c39272db3bb" 1700 | dependencies = [ 1701 | "lazy_static", 1702 | "log", 1703 | "winapi", 1704 | ] 1705 | 1706 | [[package]] 1707 | name = "ryu" 1708 | version = "1.0.12" 1709 | source = "registry+https://github.com/rust-lang/crates.io-index" 1710 | checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" 1711 | 1712 | [[package]] 1713 | name = "same-file" 1714 | version = "1.0.6" 1715 | source = "registry+https://github.com/rust-lang/crates.io-index" 1716 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 1717 | dependencies = [ 1718 | "winapi-util", 1719 | ] 1720 | 1721 | [[package]] 1722 | name = "schannel" 1723 | version = "0.1.20" 1724 | source = "registry+https://github.com/rust-lang/crates.io-index" 1725 | checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" 1726 | dependencies = [ 1727 | "lazy_static", 1728 | "windows-sys 0.36.1", 1729 | ] 1730 | 1731 | [[package]] 1732 | name = "scopeguard" 1733 | version = "1.1.0" 1734 | source = "registry+https://github.com/rust-lang/crates.io-index" 1735 | checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" 1736 | 1737 | [[package]] 1738 | name = "scratch" 1739 | version = "1.0.3" 1740 | source = "registry+https://github.com/rust-lang/crates.io-index" 1741 | checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2" 1742 | 1743 | [[package]] 1744 | name = "security-framework" 1745 | version = "2.7.0" 1746 | source = "registry+https://github.com/rust-lang/crates.io-index" 1747 | checksum = "2bc1bb97804af6631813c55739f771071e0f2ed33ee20b68c86ec505d906356c" 1748 | dependencies = [ 1749 | "bitflags", 1750 | "core-foundation", 1751 | "core-foundation-sys", 1752 | "libc", 1753 | "security-framework-sys", 1754 | ] 1755 | 1756 | [[package]] 1757 | name = "security-framework-sys" 1758 | version = "2.6.1" 1759 | source = "registry+https://github.com/rust-lang/crates.io-index" 1760 | checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" 1761 | dependencies = [ 1762 | "core-foundation-sys", 1763 | "libc", 1764 | ] 1765 | 1766 | [[package]] 1767 | name = "serde" 1768 | version = "1.0.151" 1769 | source = "registry+https://github.com/rust-lang/crates.io-index" 1770 | checksum = "97fed41fc1a24994d044e6db6935e69511a1153b52c15eb42493b26fa87feba0" 1771 | dependencies = [ 1772 | "serde_derive", 1773 | ] 1774 | 1775 | [[package]] 1776 | name = "serde-aux" 1777 | version = "4.1.2" 1778 | source = "registry+https://github.com/rust-lang/crates.io-index" 1779 | checksum = "c599b3fd89a75e0c18d6d2be693ddb12cccaf771db4ff9e39097104808a014c0" 1780 | dependencies = [ 1781 | "chrono", 1782 | "serde", 1783 | "serde_json", 1784 | ] 1785 | 1786 | [[package]] 1787 | name = "serde-xml-rs" 1788 | version = "0.5.1" 1789 | source = "registry+https://github.com/rust-lang/crates.io-index" 1790 | checksum = "65162e9059be2f6a3421ebbb4fef3e74b7d9e7c60c50a0e292c6239f19f1edfa" 1791 | dependencies = [ 1792 | "log", 1793 | "serde", 1794 | "thiserror", 1795 | "xml-rs", 1796 | ] 1797 | 1798 | [[package]] 1799 | name = "serde_derive" 1800 | version = "1.0.151" 1801 | source = "registry+https://github.com/rust-lang/crates.io-index" 1802 | checksum = "255abe9a125a985c05190d687b320c12f9b1f0b99445e608c21ba0782c719ad8" 1803 | dependencies = [ 1804 | "proc-macro2", 1805 | "quote", 1806 | "syn", 1807 | ] 1808 | 1809 | [[package]] 1810 | name = "serde_json" 1811 | version = "1.0.91" 1812 | source = "registry+https://github.com/rust-lang/crates.io-index" 1813 | checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" 1814 | dependencies = [ 1815 | "itoa", 1816 | "ryu", 1817 | "serde", 1818 | ] 1819 | 1820 | [[package]] 1821 | name = "serde_repr" 1822 | version = "0.1.10" 1823 | source = "registry+https://github.com/rust-lang/crates.io-index" 1824 | checksum = "9a5ec9fa74a20ebbe5d9ac23dac1fc96ba0ecfe9f50f2843b52e537b10fbcb4e" 1825 | dependencies = [ 1826 | "proc-macro2", 1827 | "quote", 1828 | "syn", 1829 | ] 1830 | 1831 | [[package]] 1832 | name = "serde_urlencoded" 1833 | version = "0.7.1" 1834 | source = "registry+https://github.com/rust-lang/crates.io-index" 1835 | checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" 1836 | dependencies = [ 1837 | "form_urlencoded", 1838 | "itoa", 1839 | "ryu", 1840 | "serde", 1841 | ] 1842 | 1843 | [[package]] 1844 | name = "serialport" 1845 | version = "4.2.0" 1846 | source = "registry+https://github.com/rust-lang/crates.io-index" 1847 | checksum = "aab92efb5cf60ad310548bc3f16fa6b0d950019cb7ed8ff41968c3d03721cf12" 1848 | dependencies = [ 1849 | "CoreFoundation-sys", 1850 | "IOKit-sys", 1851 | "bitflags", 1852 | "cfg-if", 1853 | "libudev", 1854 | "mach 0.3.2", 1855 | "nix", 1856 | "regex", 1857 | "winapi", 1858 | ] 1859 | 1860 | [[package]] 1861 | name = "sha1" 1862 | version = "0.10.5" 1863 | source = "registry+https://github.com/rust-lang/crates.io-index" 1864 | checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3" 1865 | dependencies = [ 1866 | "cfg-if", 1867 | "cpufeatures", 1868 | "digest", 1869 | ] 1870 | 1871 | [[package]] 1872 | name = "sharded-slab" 1873 | version = "0.1.4" 1874 | source = "registry+https://github.com/rust-lang/crates.io-index" 1875 | checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" 1876 | dependencies = [ 1877 | "lazy_static", 1878 | ] 1879 | 1880 | [[package]] 1881 | name = "signal-hook-registry" 1882 | version = "1.4.0" 1883 | source = "registry+https://github.com/rust-lang/crates.io-index" 1884 | checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0" 1885 | dependencies = [ 1886 | "libc", 1887 | ] 1888 | 1889 | [[package]] 1890 | name = "slab" 1891 | version = "0.4.7" 1892 | source = "registry+https://github.com/rust-lang/crates.io-index" 1893 | checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef" 1894 | dependencies = [ 1895 | "autocfg", 1896 | ] 1897 | 1898 | [[package]] 1899 | name = "smallvec" 1900 | version = "1.10.0" 1901 | source = "registry+https://github.com/rust-lang/crates.io-index" 1902 | checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" 1903 | 1904 | [[package]] 1905 | name = "socket2" 1906 | version = "0.4.7" 1907 | source = "registry+https://github.com/rust-lang/crates.io-index" 1908 | checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd" 1909 | dependencies = [ 1910 | "libc", 1911 | "winapi", 1912 | ] 1913 | 1914 | [[package]] 1915 | name = "static_assertions" 1916 | version = "1.1.0" 1917 | source = "registry+https://github.com/rust-lang/crates.io-index" 1918 | checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 1919 | 1920 | [[package]] 1921 | name = "strum" 1922 | version = "0.24.1" 1923 | source = "registry+https://github.com/rust-lang/crates.io-index" 1924 | checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" 1925 | 1926 | [[package]] 1927 | name = "strum_macros" 1928 | version = "0.24.3" 1929 | source = "registry+https://github.com/rust-lang/crates.io-index" 1930 | checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" 1931 | dependencies = [ 1932 | "heck", 1933 | "proc-macro2", 1934 | "quote", 1935 | "rustversion", 1936 | "syn", 1937 | ] 1938 | 1939 | [[package]] 1940 | name = "syn" 1941 | version = "1.0.107" 1942 | source = "registry+https://github.com/rust-lang/crates.io-index" 1943 | checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" 1944 | dependencies = [ 1945 | "proc-macro2", 1946 | "quote", 1947 | "unicode-ident", 1948 | ] 1949 | 1950 | [[package]] 1951 | name = "tempfile" 1952 | version = "3.3.0" 1953 | source = "registry+https://github.com/rust-lang/crates.io-index" 1954 | checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" 1955 | dependencies = [ 1956 | "cfg-if", 1957 | "fastrand", 1958 | "libc", 1959 | "redox_syscall", 1960 | "remove_dir_all", 1961 | "winapi", 1962 | ] 1963 | 1964 | [[package]] 1965 | name = "termcolor" 1966 | version = "1.1.3" 1967 | source = "registry+https://github.com/rust-lang/crates.io-index" 1968 | checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" 1969 | dependencies = [ 1970 | "winapi-util", 1971 | ] 1972 | 1973 | [[package]] 1974 | name = "thiserror" 1975 | version = "1.0.38" 1976 | source = "registry+https://github.com/rust-lang/crates.io-index" 1977 | checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" 1978 | dependencies = [ 1979 | "thiserror-impl", 1980 | ] 1981 | 1982 | [[package]] 1983 | name = "thiserror-impl" 1984 | version = "1.0.38" 1985 | source = "registry+https://github.com/rust-lang/crates.io-index" 1986 | checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" 1987 | dependencies = [ 1988 | "proc-macro2", 1989 | "quote", 1990 | "syn", 1991 | ] 1992 | 1993 | [[package]] 1994 | name = "thread_local" 1995 | version = "1.1.4" 1996 | source = "registry+https://github.com/rust-lang/crates.io-index" 1997 | checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180" 1998 | dependencies = [ 1999 | "once_cell", 2000 | ] 2001 | 2002 | [[package]] 2003 | name = "time" 2004 | version = "0.3.17" 2005 | source = "registry+https://github.com/rust-lang/crates.io-index" 2006 | checksum = "a561bf4617eebd33bca6434b988f39ed798e527f51a1e797d0ee4f61c0a38376" 2007 | dependencies = [ 2008 | "serde", 2009 | "time-core", 2010 | "time-macros", 2011 | ] 2012 | 2013 | [[package]] 2014 | name = "time-core" 2015 | version = "0.1.0" 2016 | source = "registry+https://github.com/rust-lang/crates.io-index" 2017 | checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd" 2018 | 2019 | [[package]] 2020 | name = "time-macros" 2021 | version = "0.2.6" 2022 | source = "registry+https://github.com/rust-lang/crates.io-index" 2023 | checksum = "d967f99f534ca7e495c575c62638eebc2898a8c84c119b89e250477bc4ba16b2" 2024 | dependencies = [ 2025 | "time-core", 2026 | ] 2027 | 2028 | [[package]] 2029 | name = "tinyvec" 2030 | version = "1.6.0" 2031 | source = "registry+https://github.com/rust-lang/crates.io-index" 2032 | checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 2033 | dependencies = [ 2034 | "tinyvec_macros", 2035 | ] 2036 | 2037 | [[package]] 2038 | name = "tinyvec_macros" 2039 | version = "0.1.0" 2040 | source = "registry+https://github.com/rust-lang/crates.io-index" 2041 | checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" 2042 | 2043 | [[package]] 2044 | name = "tokio" 2045 | version = "1.23.0" 2046 | source = "registry+https://github.com/rust-lang/crates.io-index" 2047 | checksum = "eab6d665857cc6ca78d6e80303a02cea7a7851e85dfbd77cbdc09bd129f1ef46" 2048 | dependencies = [ 2049 | "autocfg", 2050 | "bytes", 2051 | "libc", 2052 | "memchr", 2053 | "mio", 2054 | "num_cpus", 2055 | "parking_lot", 2056 | "pin-project-lite", 2057 | "signal-hook-registry", 2058 | "socket2", 2059 | "tokio-macros", 2060 | "windows-sys 0.42.0", 2061 | ] 2062 | 2063 | [[package]] 2064 | name = "tokio-macros" 2065 | version = "1.8.2" 2066 | source = "registry+https://github.com/rust-lang/crates.io-index" 2067 | checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" 2068 | dependencies = [ 2069 | "proc-macro2", 2070 | "quote", 2071 | "syn", 2072 | ] 2073 | 2074 | [[package]] 2075 | name = "tokio-native-tls" 2076 | version = "0.3.0" 2077 | source = "registry+https://github.com/rust-lang/crates.io-index" 2078 | checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" 2079 | dependencies = [ 2080 | "native-tls", 2081 | "tokio", 2082 | ] 2083 | 2084 | [[package]] 2085 | name = "tokio-stream" 2086 | version = "0.1.11" 2087 | source = "registry+https://github.com/rust-lang/crates.io-index" 2088 | checksum = "d660770404473ccd7bc9f8b28494a811bc18542b915c0855c51e8f419d5223ce" 2089 | dependencies = [ 2090 | "futures-core", 2091 | "pin-project-lite", 2092 | "tokio", 2093 | "tokio-util", 2094 | ] 2095 | 2096 | [[package]] 2097 | name = "tokio-util" 2098 | version = "0.7.4" 2099 | source = "registry+https://github.com/rust-lang/crates.io-index" 2100 | checksum = "0bb2e075f03b3d66d8d8785356224ba688d2906a371015e225beeb65ca92c740" 2101 | dependencies = [ 2102 | "bytes", 2103 | "futures-core", 2104 | "futures-sink", 2105 | "pin-project-lite", 2106 | "tokio", 2107 | "tracing", 2108 | ] 2109 | 2110 | [[package]] 2111 | name = "tower-service" 2112 | version = "0.3.2" 2113 | source = "registry+https://github.com/rust-lang/crates.io-index" 2114 | checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" 2115 | 2116 | [[package]] 2117 | name = "tracing" 2118 | version = "0.1.37" 2119 | source = "registry+https://github.com/rust-lang/crates.io-index" 2120 | checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" 2121 | dependencies = [ 2122 | "cfg-if", 2123 | "pin-project-lite", 2124 | "tracing-attributes", 2125 | "tracing-core", 2126 | ] 2127 | 2128 | [[package]] 2129 | name = "tracing-attributes" 2130 | version = "0.1.23" 2131 | source = "registry+https://github.com/rust-lang/crates.io-index" 2132 | checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" 2133 | dependencies = [ 2134 | "proc-macro2", 2135 | "quote", 2136 | "syn", 2137 | ] 2138 | 2139 | [[package]] 2140 | name = "tracing-core" 2141 | version = "0.1.30" 2142 | source = "registry+https://github.com/rust-lang/crates.io-index" 2143 | checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" 2144 | dependencies = [ 2145 | "once_cell", 2146 | "valuable", 2147 | ] 2148 | 2149 | [[package]] 2150 | name = "tracing-futures" 2151 | version = "0.2.5" 2152 | source = "registry+https://github.com/rust-lang/crates.io-index" 2153 | checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" 2154 | dependencies = [ 2155 | "pin-project", 2156 | "tracing", 2157 | ] 2158 | 2159 | [[package]] 2160 | name = "tracing-log" 2161 | version = "0.1.3" 2162 | source = "registry+https://github.com/rust-lang/crates.io-index" 2163 | checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" 2164 | dependencies = [ 2165 | "lazy_static", 2166 | "log", 2167 | "tracing-core", 2168 | ] 2169 | 2170 | [[package]] 2171 | name = "tracing-serde" 2172 | version = "0.1.3" 2173 | source = "registry+https://github.com/rust-lang/crates.io-index" 2174 | checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" 2175 | dependencies = [ 2176 | "serde", 2177 | "tracing-core", 2178 | ] 2179 | 2180 | [[package]] 2181 | name = "tracing-subscriber" 2182 | version = "0.3.16" 2183 | source = "registry+https://github.com/rust-lang/crates.io-index" 2184 | checksum = "a6176eae26dd70d0c919749377897b54a9276bd7061339665dd68777926b5a70" 2185 | dependencies = [ 2186 | "nu-ansi-term", 2187 | "serde", 2188 | "serde_json", 2189 | "sharded-slab", 2190 | "smallvec", 2191 | "thread_local", 2192 | "tracing-core", 2193 | "tracing-log", 2194 | "tracing-serde", 2195 | ] 2196 | 2197 | [[package]] 2198 | name = "try-lock" 2199 | version = "0.2.3" 2200 | source = "registry+https://github.com/rust-lang/crates.io-index" 2201 | checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" 2202 | 2203 | [[package]] 2204 | name = "tungstenite" 2205 | version = "0.18.0" 2206 | source = "registry+https://github.com/rust-lang/crates.io-index" 2207 | checksum = "30ee6ab729cd4cf0fd55218530c4522ed30b7b6081752839b68fcec8d0960788" 2208 | dependencies = [ 2209 | "base64", 2210 | "byteorder", 2211 | "bytes", 2212 | "http", 2213 | "httparse", 2214 | "log", 2215 | "native-tls", 2216 | "rand", 2217 | "sha1", 2218 | "thiserror", 2219 | "url", 2220 | "utf-8", 2221 | ] 2222 | 2223 | [[package]] 2224 | name = "typenum" 2225 | version = "1.16.0" 2226 | source = "registry+https://github.com/rust-lang/crates.io-index" 2227 | checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" 2228 | 2229 | [[package]] 2230 | name = "unicode-bidi" 2231 | version = "0.3.8" 2232 | source = "registry+https://github.com/rust-lang/crates.io-index" 2233 | checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" 2234 | 2235 | [[package]] 2236 | name = "unicode-ident" 2237 | version = "1.0.6" 2238 | source = "registry+https://github.com/rust-lang/crates.io-index" 2239 | checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" 2240 | 2241 | [[package]] 2242 | name = "unicode-normalization" 2243 | version = "0.1.22" 2244 | source = "registry+https://github.com/rust-lang/crates.io-index" 2245 | checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" 2246 | dependencies = [ 2247 | "tinyvec", 2248 | ] 2249 | 2250 | [[package]] 2251 | name = "unicode-width" 2252 | version = "0.1.10" 2253 | source = "registry+https://github.com/rust-lang/crates.io-index" 2254 | checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" 2255 | 2256 | [[package]] 2257 | name = "url" 2258 | version = "2.3.1" 2259 | source = "registry+https://github.com/rust-lang/crates.io-index" 2260 | checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" 2261 | dependencies = [ 2262 | "form_urlencoded", 2263 | "idna", 2264 | "percent-encoding", 2265 | ] 2266 | 2267 | [[package]] 2268 | name = "utf-8" 2269 | version = "0.7.6" 2270 | source = "registry+https://github.com/rust-lang/crates.io-index" 2271 | checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" 2272 | 2273 | [[package]] 2274 | name = "uuid" 2275 | version = "1.2.2" 2276 | source = "registry+https://github.com/rust-lang/crates.io-index" 2277 | checksum = "422ee0de9031b5b948b97a8fc04e3aa35230001a722ddd27943e0be31564ce4c" 2278 | dependencies = [ 2279 | "serde", 2280 | ] 2281 | 2282 | [[package]] 2283 | name = "valuable" 2284 | version = "0.1.0" 2285 | source = "registry+https://github.com/rust-lang/crates.io-index" 2286 | checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" 2287 | 2288 | [[package]] 2289 | name = "vcpkg" 2290 | version = "0.2.15" 2291 | source = "registry+https://github.com/rust-lang/crates.io-index" 2292 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 2293 | 2294 | [[package]] 2295 | name = "version_check" 2296 | version = "0.9.4" 2297 | source = "registry+https://github.com/rust-lang/crates.io-index" 2298 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 2299 | 2300 | [[package]] 2301 | name = "walkdir" 2302 | version = "2.3.2" 2303 | source = "registry+https://github.com/rust-lang/crates.io-index" 2304 | checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" 2305 | dependencies = [ 2306 | "same-file", 2307 | "winapi", 2308 | "winapi-util", 2309 | ] 2310 | 2311 | [[package]] 2312 | name = "want" 2313 | version = "0.3.0" 2314 | source = "registry+https://github.com/rust-lang/crates.io-index" 2315 | checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" 2316 | dependencies = [ 2317 | "log", 2318 | "try-lock", 2319 | ] 2320 | 2321 | [[package]] 2322 | name = "wasi" 2323 | version = "0.11.0+wasi-snapshot-preview1" 2324 | source = "registry+https://github.com/rust-lang/crates.io-index" 2325 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 2326 | 2327 | [[package]] 2328 | name = "wasm-bindgen" 2329 | version = "0.2.83" 2330 | source = "registry+https://github.com/rust-lang/crates.io-index" 2331 | checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268" 2332 | dependencies = [ 2333 | "cfg-if", 2334 | "wasm-bindgen-macro", 2335 | ] 2336 | 2337 | [[package]] 2338 | name = "wasm-bindgen-backend" 2339 | version = "0.2.83" 2340 | source = "registry+https://github.com/rust-lang/crates.io-index" 2341 | checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142" 2342 | dependencies = [ 2343 | "bumpalo", 2344 | "log", 2345 | "once_cell", 2346 | "proc-macro2", 2347 | "quote", 2348 | "syn", 2349 | "wasm-bindgen-shared", 2350 | ] 2351 | 2352 | [[package]] 2353 | name = "wasm-bindgen-futures" 2354 | version = "0.4.33" 2355 | source = "registry+https://github.com/rust-lang/crates.io-index" 2356 | checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d" 2357 | dependencies = [ 2358 | "cfg-if", 2359 | "js-sys", 2360 | "wasm-bindgen", 2361 | "web-sys", 2362 | ] 2363 | 2364 | [[package]] 2365 | name = "wasm-bindgen-macro" 2366 | version = "0.2.83" 2367 | source = "registry+https://github.com/rust-lang/crates.io-index" 2368 | checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" 2369 | dependencies = [ 2370 | "quote", 2371 | "wasm-bindgen-macro-support", 2372 | ] 2373 | 2374 | [[package]] 2375 | name = "wasm-bindgen-macro-support" 2376 | version = "0.2.83" 2377 | source = "registry+https://github.com/rust-lang/crates.io-index" 2378 | checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" 2379 | dependencies = [ 2380 | "proc-macro2", 2381 | "quote", 2382 | "syn", 2383 | "wasm-bindgen-backend", 2384 | "wasm-bindgen-shared", 2385 | ] 2386 | 2387 | [[package]] 2388 | name = "wasm-bindgen-shared" 2389 | version = "0.2.83" 2390 | source = "registry+https://github.com/rust-lang/crates.io-index" 2391 | checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f" 2392 | 2393 | [[package]] 2394 | name = "web-sys" 2395 | version = "0.3.60" 2396 | source = "registry+https://github.com/rust-lang/crates.io-index" 2397 | checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f" 2398 | dependencies = [ 2399 | "js-sys", 2400 | "wasm-bindgen", 2401 | ] 2402 | 2403 | [[package]] 2404 | name = "which" 2405 | version = "4.3.0" 2406 | source = "registry+https://github.com/rust-lang/crates.io-index" 2407 | checksum = "1c831fbbee9e129a8cf93e7747a82da9d95ba8e16621cae60ec2cdc849bacb7b" 2408 | dependencies = [ 2409 | "either", 2410 | "libc", 2411 | "once_cell", 2412 | ] 2413 | 2414 | [[package]] 2415 | name = "winapi" 2416 | version = "0.3.9" 2417 | source = "registry+https://github.com/rust-lang/crates.io-index" 2418 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 2419 | dependencies = [ 2420 | "winapi-i686-pc-windows-gnu", 2421 | "winapi-x86_64-pc-windows-gnu", 2422 | ] 2423 | 2424 | [[package]] 2425 | name = "winapi-i686-pc-windows-gnu" 2426 | version = "0.4.0" 2427 | source = "registry+https://github.com/rust-lang/crates.io-index" 2428 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 2429 | 2430 | [[package]] 2431 | name = "winapi-util" 2432 | version = "0.1.5" 2433 | source = "registry+https://github.com/rust-lang/crates.io-index" 2434 | checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 2435 | dependencies = [ 2436 | "winapi", 2437 | ] 2438 | 2439 | [[package]] 2440 | name = "winapi-x86_64-pc-windows-gnu" 2441 | version = "0.4.0" 2442 | source = "registry+https://github.com/rust-lang/crates.io-index" 2443 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 2444 | 2445 | [[package]] 2446 | name = "windows" 2447 | version = "0.43.0" 2448 | source = "registry+https://github.com/rust-lang/crates.io-index" 2449 | checksum = "04662ed0e3e5630dfa9b26e4cb823b817f1a9addda855d973a9458c236556244" 2450 | dependencies = [ 2451 | "windows_aarch64_gnullvm", 2452 | "windows_aarch64_msvc 0.42.0", 2453 | "windows_i686_gnu 0.42.0", 2454 | "windows_i686_msvc 0.42.0", 2455 | "windows_x86_64_gnu 0.42.0", 2456 | "windows_x86_64_gnullvm", 2457 | "windows_x86_64_msvc 0.42.0", 2458 | ] 2459 | 2460 | [[package]] 2461 | name = "windows-sys" 2462 | version = "0.36.1" 2463 | source = "registry+https://github.com/rust-lang/crates.io-index" 2464 | checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" 2465 | dependencies = [ 2466 | "windows_aarch64_msvc 0.36.1", 2467 | "windows_i686_gnu 0.36.1", 2468 | "windows_i686_msvc 0.36.1", 2469 | "windows_x86_64_gnu 0.36.1", 2470 | "windows_x86_64_msvc 0.36.1", 2471 | ] 2472 | 2473 | [[package]] 2474 | name = "windows-sys" 2475 | version = "0.42.0" 2476 | source = "registry+https://github.com/rust-lang/crates.io-index" 2477 | checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" 2478 | dependencies = [ 2479 | "windows_aarch64_gnullvm", 2480 | "windows_aarch64_msvc 0.42.0", 2481 | "windows_i686_gnu 0.42.0", 2482 | "windows_i686_msvc 0.42.0", 2483 | "windows_x86_64_gnu 0.42.0", 2484 | "windows_x86_64_gnullvm", 2485 | "windows_x86_64_msvc 0.42.0", 2486 | ] 2487 | 2488 | [[package]] 2489 | name = "windows_aarch64_gnullvm" 2490 | version = "0.42.0" 2491 | source = "registry+https://github.com/rust-lang/crates.io-index" 2492 | checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e" 2493 | 2494 | [[package]] 2495 | name = "windows_aarch64_msvc" 2496 | version = "0.36.1" 2497 | source = "registry+https://github.com/rust-lang/crates.io-index" 2498 | checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" 2499 | 2500 | [[package]] 2501 | name = "windows_aarch64_msvc" 2502 | version = "0.42.0" 2503 | source = "registry+https://github.com/rust-lang/crates.io-index" 2504 | checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4" 2505 | 2506 | [[package]] 2507 | name = "windows_i686_gnu" 2508 | version = "0.36.1" 2509 | source = "registry+https://github.com/rust-lang/crates.io-index" 2510 | checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" 2511 | 2512 | [[package]] 2513 | name = "windows_i686_gnu" 2514 | version = "0.42.0" 2515 | source = "registry+https://github.com/rust-lang/crates.io-index" 2516 | checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7" 2517 | 2518 | [[package]] 2519 | name = "windows_i686_msvc" 2520 | version = "0.36.1" 2521 | source = "registry+https://github.com/rust-lang/crates.io-index" 2522 | checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" 2523 | 2524 | [[package]] 2525 | name = "windows_i686_msvc" 2526 | version = "0.42.0" 2527 | source = "registry+https://github.com/rust-lang/crates.io-index" 2528 | checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246" 2529 | 2530 | [[package]] 2531 | name = "windows_x86_64_gnu" 2532 | version = "0.36.1" 2533 | source = "registry+https://github.com/rust-lang/crates.io-index" 2534 | checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" 2535 | 2536 | [[package]] 2537 | name = "windows_x86_64_gnu" 2538 | version = "0.42.0" 2539 | source = "registry+https://github.com/rust-lang/crates.io-index" 2540 | checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed" 2541 | 2542 | [[package]] 2543 | name = "windows_x86_64_gnullvm" 2544 | version = "0.42.0" 2545 | source = "registry+https://github.com/rust-lang/crates.io-index" 2546 | checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028" 2547 | 2548 | [[package]] 2549 | name = "windows_x86_64_msvc" 2550 | version = "0.36.1" 2551 | source = "registry+https://github.com/rust-lang/crates.io-index" 2552 | checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" 2553 | 2554 | [[package]] 2555 | name = "windows_x86_64_msvc" 2556 | version = "0.42.0" 2557 | source = "registry+https://github.com/rust-lang/crates.io-index" 2558 | checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5" 2559 | 2560 | [[package]] 2561 | name = "winreg" 2562 | version = "0.10.1" 2563 | source = "registry+https://github.com/rust-lang/crates.io-index" 2564 | checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" 2565 | dependencies = [ 2566 | "winapi", 2567 | ] 2568 | 2569 | [[package]] 2570 | name = "xml-rs" 2571 | version = "0.8.4" 2572 | source = "registry+https://github.com/rust-lang/crates.io-index" 2573 | checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3" 2574 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "cargo-vibe" 3 | version = "0.0.4" 4 | edition = "2021" 5 | license = "MIT" 6 | repository = "https://github.com/Shadlock0133/cargo-vibe" 7 | description = "Cargo x Buttplug.io" 8 | 9 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 10 | 11 | [dependencies] 12 | buttplug = "6.3.0" 13 | futures = { version = "0.3.25", default-features = false } 14 | tokio = { version = "1.23.0", features = ["full"] } 15 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Shadlock0133 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # Installation 2 | 3 | ```shell 4 | cargo install cargo-vibe 5 | ``` 6 | 7 | # Running 8 | 9 | ```shell 10 | cargo vibe build 11 | ``` 12 | 13 | # Configuration 14 | 15 | ## Vibe Pattern 16 | 17 | By default, `cargo-vibe` will, on success, vibe full strength for 3 seconds. 18 | 19 | You can change that by setting `CARGO_VIBE_PATTERN` environment variable. For 20 | example, to set it vibe for 1.5 second on 20% strength, you can do: 21 | 22 | ```shell 23 | CARGO_VIBE_PATTERN="0.2 1.5s" cargo vibe 24 | ``` 25 | 26 | You can also set full patterns of vibes to run, by separating them with slashes 27 | `/`. Here is one example: 28 | 29 | ```shell 30 | CARGO_VIBE_PATTERN="0.4 1s/0.6 1s/0.8 0.75s/1.0 0.25s" 31 | ``` 32 | 33 | ## Server Address 34 | 35 | If your server is running at an address or port other than the default (`ws://127.0.0.1:12345`), you can override it using `CARGO_VIBE_ADDR`. For example: 36 | 37 | ```shell 38 | CARGO_VIBE_ADDR="ws://172.31.160.1:69696" 39 | ``` 40 | -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- 1 | use std::{env::VarError, ffi::OsStr, time::Duration}; 2 | 3 | use buttplug::{ 4 | client::{ButtplugClient, ButtplugClientError, VibrateCommand}, 5 | core::{ 6 | connector::{ 7 | ButtplugRemoteConnector as RemoteConn, 8 | ButtplugWebsocketClientTransport as WebSocketTransport, 9 | }, 10 | message::serializer::ButtplugClientJSONSerializer as JsonSer, 11 | }, 12 | util::in_process_client, 13 | }; 14 | use futures::FutureExt; 15 | use tokio::{spawn, time::sleep}; 16 | 17 | const CLIENT_NAME: &str = "cargo-vibe"; 18 | 19 | async fn connect_to_server(address: &str) -> Result { 20 | let client = ButtplugClient::new(CLIENT_NAME); 21 | let connector = RemoteConn::<_, JsonSer, _, _>::new( 22 | WebSocketTransport::new_insecure_connector(address), 23 | ); 24 | client.connect(connector).await?; 25 | client.start_scanning().await?; 26 | Ok(client) 27 | } 28 | 29 | async fn start_in_process_server() -> Result 30 | { 31 | let client = in_process_client(CLIENT_NAME, false).await; 32 | client.start_scanning().await?; 33 | Ok(client) 34 | } 35 | 36 | // Parses pattern like "0.5 3s/0.75 1.5s" 37 | fn parse_pattern( 38 | pattern: &str, 39 | ) -> Result, Box> { 40 | pattern 41 | .split('/') 42 | .map(|x| { 43 | let (speed, duration) = 44 | x.split_once(' ').ok_or("couldn't split")?; 45 | let speed = speed.parse()?; 46 | let duration = duration 47 | .strip_suffix('s') 48 | .ok_or("missing 's'")? 49 | .parse() 50 | .map(Duration::from_secs_f64)?; 51 | Ok((speed, duration)) 52 | }) 53 | .collect() 54 | } 55 | 56 | async fn vibrate_all( 57 | client: &ButtplugClient, 58 | ) -> Result<(), ButtplugClientError> { 59 | let pattern = std::env::var("CARGO_VIBE_PATTERN") 60 | .ok() 61 | .as_deref() 62 | .and_then(|x| { 63 | parse_pattern(x) 64 | .map_err(|e| eprintln!("pattern error: {e}")) 65 | .ok() 66 | }) 67 | .unwrap_or_else(|| vec![(1.0, Duration::from_secs(3))]); 68 | eprintln!("{pattern:?}"); 69 | 70 | let devices = client.devices(); 71 | if !devices.is_empty() { 72 | for (speed, duration) in pattern { 73 | for device in &devices { 74 | device.vibrate(&VibrateCommand::Speed(speed)).await?; 75 | } 76 | sleep(duration).await; 77 | } 78 | client.stop_all_devices().await?; 79 | } else { 80 | eprintln!("[cargo-vibe] no devices found"); 81 | } 82 | Ok(()) 83 | } 84 | 85 | #[tokio::main] 86 | async fn main() { 87 | let code = real_main().await.unwrap_or_else(|e| { 88 | eprintln!("Error: {:?}", e); 89 | -1 90 | }); 91 | std::process::exit(code) 92 | } 93 | 94 | // code stolen from cargo-mommy, thanks Gankra 95 | async fn real_main() -> Result> { 96 | let address = std::env::var("CARGO_VIBE_ADDR"); 97 | if let Err(e @ VarError::NotUnicode(_)) = address { 98 | return Err(e.into()); 99 | } 100 | let must_use_remote = address.is_ok(); 101 | let remote_client = spawn(async move { 102 | let address = address.as_deref().unwrap_or("ws://127.0.0.1:12345"); 103 | connect_to_server(address).await 104 | }); 105 | let in_process_client = spawn(start_in_process_server()); 106 | 107 | let cargo_var = std::env::var_os("CARGO"); 108 | let cargo = cargo_var.as_deref().unwrap_or(OsStr::new("cargo")); 109 | let mut arg_iter = std::env::args_os(); 110 | let _cargo = arg_iter.next(); 111 | let _cmd = arg_iter.next(); 112 | 113 | let status = std::process::Command::new(cargo).args(arg_iter).status()?; 114 | if status.success() { 115 | eprintln!("[cargo-vibe] success!"); 116 | // get remote client, or fallback to in-process one 117 | let client = if must_use_remote { 118 | eprintln!("[cargo-vibe] using server"); 119 | remote_client.await 120 | } else if let Some(Ok(client)) = remote_client.now_or_never() { 121 | eprintln!("[cargo-vibe] using server"); 122 | Ok(client) 123 | } else { 124 | eprintln!("[cargo-vibe] starting in-process server"); 125 | in_process_client.await 126 | }; 127 | if let Ok(Ok(client)) = client { 128 | if let Err(e) = vibrate_all(&client).await { 129 | eprintln!("[cargo-vibe] error trying to vibe: {e}") 130 | } 131 | } else { 132 | eprintln!("[cargo-vibe] sorry, couldn't create a client") 133 | } 134 | } else { 135 | eprintln!("[cargo-vibe] failed"); 136 | } 137 | Ok(status.code().unwrap_or(-1)) 138 | } 139 | --------------------------------------------------------------------------------