[READ-ONLY] Mirror of https://github.com/probablykasper/ferrum. Music library app for Mac, Linux and Windows ferrum.kasper.space
electron linux macos music music-library music-player napi windows
0

Configure Feed

Select the types of activity you want to include in your feed.

Show panic messages in popup

Kasper (Sep 14, 2025, 9:50 AM +0200) ef518d3a 94babb38

+927 -14
+887 -13
Cargo.lock
··· 54 54 checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" 55 55 56 56 [[package]] 57 + name = "ashpd" 58 + version = "0.11.0" 59 + source = "registry+https://github.com/rust-lang/crates.io-index" 60 + checksum = "6cbdf310d77fd3aaee6ea2093db7011dc2d35d2eb3481e5607f1f8d942ed99df" 61 + dependencies = [ 62 + "async-fs", 63 + "async-net", 64 + "enumflags2", 65 + "futures-channel", 66 + "futures-util", 67 + "rand 0.9.2", 68 + "raw-window-handle", 69 + "serde", 70 + "serde_repr", 71 + "url", 72 + "wayland-backend", 73 + "wayland-client", 74 + "wayland-protocols", 75 + "zbus", 76 + ] 77 + 78 + [[package]] 79 + name = "async-broadcast" 80 + version = "0.7.2" 81 + source = "registry+https://github.com/rust-lang/crates.io-index" 82 + checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" 83 + dependencies = [ 84 + "event-listener", 85 + "event-listener-strategy", 86 + "futures-core", 87 + "pin-project-lite", 88 + ] 89 + 90 + [[package]] 91 + name = "async-channel" 92 + version = "2.5.0" 93 + source = "registry+https://github.com/rust-lang/crates.io-index" 94 + checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" 95 + dependencies = [ 96 + "concurrent-queue", 97 + "event-listener-strategy", 98 + "futures-core", 99 + "pin-project-lite", 100 + ] 101 + 102 + [[package]] 103 + name = "async-executor" 104 + version = "1.13.3" 105 + source = "registry+https://github.com/rust-lang/crates.io-index" 106 + checksum = "497c00e0fd83a72a79a39fcbd8e3e2f055d6f6c7e025f3b3d91f4f8e76527fb8" 107 + dependencies = [ 108 + "async-task", 109 + "concurrent-queue", 110 + "fastrand", 111 + "futures-lite", 112 + "pin-project-lite", 113 + "slab", 114 + ] 115 + 116 + [[package]] 117 + name = "async-fs" 118 + version = "2.1.3" 119 + source = "registry+https://github.com/rust-lang/crates.io-index" 120 + checksum = "09f7e37c0ed80b2a977691c47dae8625cfb21e205827106c64f7c588766b2e50" 121 + dependencies = [ 122 + "async-lock", 123 + "blocking", 124 + "futures-lite", 125 + ] 126 + 127 + [[package]] 128 + name = "async-io" 129 + version = "2.5.0" 130 + source = "registry+https://github.com/rust-lang/crates.io-index" 131 + checksum = "19634d6336019ef220f09fd31168ce5c184b295cbf80345437cc36094ef223ca" 132 + dependencies = [ 133 + "async-lock", 134 + "cfg-if", 135 + "concurrent-queue", 136 + "futures-io", 137 + "futures-lite", 138 + "parking", 139 + "polling", 140 + "rustix 1.0.7", 141 + "slab", 142 + "windows-sys 0.60.2", 143 + ] 144 + 145 + [[package]] 146 + name = "async-lock" 147 + version = "3.4.1" 148 + source = "registry+https://github.com/rust-lang/crates.io-index" 149 + checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc" 150 + dependencies = [ 151 + "event-listener", 152 + "event-listener-strategy", 153 + "pin-project-lite", 154 + ] 155 + 156 + [[package]] 157 + name = "async-net" 158 + version = "2.0.0" 159 + source = "registry+https://github.com/rust-lang/crates.io-index" 160 + checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7" 161 + dependencies = [ 162 + "async-io", 163 + "blocking", 164 + "futures-lite", 165 + ] 166 + 167 + [[package]] 168 + name = "async-process" 169 + version = "2.4.0" 170 + source = "registry+https://github.com/rust-lang/crates.io-index" 171 + checksum = "65daa13722ad51e6ab1a1b9c01299142bc75135b337923cfa10e79bbbd669f00" 172 + dependencies = [ 173 + "async-channel", 174 + "async-io", 175 + "async-lock", 176 + "async-signal", 177 + "async-task", 178 + "blocking", 179 + "cfg-if", 180 + "event-listener", 181 + "futures-lite", 182 + "rustix 1.0.7", 183 + ] 184 + 185 + [[package]] 186 + name = "async-recursion" 187 + version = "1.1.1" 188 + source = "registry+https://github.com/rust-lang/crates.io-index" 189 + checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" 190 + dependencies = [ 191 + "proc-macro2", 192 + "quote", 193 + "syn", 194 + ] 195 + 196 + [[package]] 197 + name = "async-signal" 198 + version = "0.2.12" 199 + source = "registry+https://github.com/rust-lang/crates.io-index" 200 + checksum = "f567af260ef69e1d52c2b560ce0ea230763e6fbb9214a85d768760a920e3e3c1" 201 + dependencies = [ 202 + "async-io", 203 + "async-lock", 204 + "atomic-waker", 205 + "cfg-if", 206 + "futures-core", 207 + "futures-io", 208 + "rustix 1.0.7", 209 + "signal-hook-registry", 210 + "slab", 211 + "windows-sys 0.60.2", 212 + ] 213 + 214 + [[package]] 215 + name = "async-task" 216 + version = "4.7.1" 217 + source = "registry+https://github.com/rust-lang/crates.io-index" 218 + checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" 219 + 220 + [[package]] 221 + name = "async-trait" 222 + version = "0.1.89" 223 + source = "registry+https://github.com/rust-lang/crates.io-index" 224 + checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" 225 + dependencies = [ 226 + "proc-macro2", 227 + "quote", 228 + "syn", 229 + ] 230 + 231 + [[package]] 232 + name = "atomic-waker" 233 + version = "1.1.2" 234 + source = "registry+https://github.com/rust-lang/crates.io-index" 235 + checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" 236 + 237 + [[package]] 57 238 name = "atomicwrites" 58 239 version = "0.4.4" 59 240 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 109 290 source = "registry+https://github.com/rust-lang/crates.io-index" 110 291 checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" 111 292 dependencies = [ 112 - "objc2", 293 + "objc2 0.5.2", 294 + ] 295 + 296 + [[package]] 297 + name = "block2" 298 + version = "0.6.1" 299 + source = "registry+https://github.com/rust-lang/crates.io-index" 300 + checksum = "340d2f0bdb2a43c1d3cd40513185b2bd7def0aa1052f956455114bc98f82dcf2" 301 + dependencies = [ 302 + "objc2 0.6.2", 303 + ] 304 + 305 + [[package]] 306 + name = "blocking" 307 + version = "1.6.2" 308 + source = "registry+https://github.com/rust-lang/crates.io-index" 309 + checksum = "e83f8d02be6967315521be875afa792a316e28d57b5a2d401897e2a7921b7f21" 310 + dependencies = [ 311 + "async-channel", 312 + "async-task", 313 + "futures-io", 314 + "futures-lite", 315 + "piper", 113 316 ] 114 317 115 318 [[package]] ··· 152 355 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 153 356 154 357 [[package]] 358 + name = "cfg_aliases" 359 + version = "0.2.1" 360 + source = "registry+https://github.com/rust-lang/crates.io-index" 361 + checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 362 + 363 + [[package]] 155 364 name = "chrono" 156 365 version = "0.4.41" 157 366 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 161 370 "iana-time-zone", 162 371 "num-traits", 163 372 "windows-link", 373 + ] 374 + 375 + [[package]] 376 + name = "concurrent-queue" 377 + version = "2.5.0" 378 + source = "registry+https://github.com/rust-lang/crates.io-index" 379 + checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" 380 + dependencies = [ 381 + "crossbeam-utils", 164 382 ] 165 383 166 384 [[package]] ··· 260 478 ] 261 479 262 480 [[package]] 481 + name = "dispatch2" 482 + version = "0.3.0" 483 + source = "registry+https://github.com/rust-lang/crates.io-index" 484 + checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" 485 + dependencies = [ 486 + "bitflags 2.9.1", 487 + "block2 0.6.1", 488 + "libc", 489 + "objc2 0.6.2", 490 + ] 491 + 492 + [[package]] 263 493 name = "displaydoc" 264 494 version = "0.2.5" 265 495 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 271 501 ] 272 502 273 503 [[package]] 504 + name = "dlib" 505 + version = "0.5.2" 506 + source = "registry+https://github.com/rust-lang/crates.io-index" 507 + checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" 508 + dependencies = [ 509 + "libloading", 510 + ] 511 + 512 + [[package]] 274 513 name = "document-features" 275 514 version = "0.2.11" 276 515 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 278 517 dependencies = [ 279 518 "litrs", 280 519 ] 520 + 521 + [[package]] 522 + name = "downcast-rs" 523 + version = "1.2.1" 524 + source = "registry+https://github.com/rust-lang/crates.io-index" 525 + checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" 281 526 282 527 [[package]] 283 528 name = "either" ··· 286 531 checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" 287 532 288 533 [[package]] 534 + name = "endi" 535 + version = "1.1.0" 536 + source = "registry+https://github.com/rust-lang/crates.io-index" 537 + checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf" 538 + 539 + [[package]] 540 + name = "enumflags2" 541 + version = "0.7.12" 542 + source = "registry+https://github.com/rust-lang/crates.io-index" 543 + checksum = "1027f7680c853e056ebcec683615fb6fbbc07dbaa13b4d5d9442b146ded4ecef" 544 + dependencies = [ 545 + "enumflags2_derive", 546 + "serde", 547 + ] 548 + 549 + [[package]] 550 + name = "enumflags2_derive" 551 + version = "0.7.12" 552 + source = "registry+https://github.com/rust-lang/crates.io-index" 553 + checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" 554 + dependencies = [ 555 + "proc-macro2", 556 + "quote", 557 + "syn", 558 + ] 559 + 560 + [[package]] 289 561 name = "equivalent" 290 562 version = "1.0.2" 291 563 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 302 574 ] 303 575 304 576 [[package]] 577 + name = "event-listener" 578 + version = "5.4.1" 579 + source = "registry+https://github.com/rust-lang/crates.io-index" 580 + checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" 581 + dependencies = [ 582 + "concurrent-queue", 583 + "parking", 584 + "pin-project-lite", 585 + ] 586 + 587 + [[package]] 588 + name = "event-listener-strategy" 589 + version = "0.5.4" 590 + source = "registry+https://github.com/rust-lang/crates.io-index" 591 + checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" 592 + dependencies = [ 593 + "event-listener", 594 + "pin-project-lite", 595 + ] 596 + 597 + [[package]] 305 598 name = "fast_image_resize" 306 599 version = "5.1.4" 307 600 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 350 643 "plist", 351 644 "rayon", 352 645 "redb", 646 + "rfd", 353 647 "serde", 354 648 "serde_json", 355 649 "time", ··· 379 673 ] 380 674 381 675 [[package]] 676 + name = "futures-channel" 677 + version = "0.3.31" 678 + source = "registry+https://github.com/rust-lang/crates.io-index" 679 + checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" 680 + dependencies = [ 681 + "futures-core", 682 + ] 683 + 684 + [[package]] 685 + name = "futures-core" 686 + version = "0.3.31" 687 + source = "registry+https://github.com/rust-lang/crates.io-index" 688 + checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" 689 + 690 + [[package]] 691 + name = "futures-io" 692 + version = "0.3.31" 693 + source = "registry+https://github.com/rust-lang/crates.io-index" 694 + checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" 695 + 696 + [[package]] 697 + name = "futures-lite" 698 + version = "2.6.1" 699 + source = "registry+https://github.com/rust-lang/crates.io-index" 700 + checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" 701 + dependencies = [ 702 + "fastrand", 703 + "futures-core", 704 + "futures-io", 705 + "parking", 706 + "pin-project-lite", 707 + ] 708 + 709 + [[package]] 710 + name = "futures-macro" 711 + version = "0.3.31" 712 + source = "registry+https://github.com/rust-lang/crates.io-index" 713 + checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" 714 + dependencies = [ 715 + "proc-macro2", 716 + "quote", 717 + "syn", 718 + ] 719 + 720 + [[package]] 721 + name = "futures-task" 722 + version = "0.3.31" 723 + source = "registry+https://github.com/rust-lang/crates.io-index" 724 + checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" 725 + 726 + [[package]] 727 + name = "futures-util" 728 + version = "0.3.31" 729 + source = "registry+https://github.com/rust-lang/crates.io-index" 730 + checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" 731 + dependencies = [ 732 + "futures-core", 733 + "futures-io", 734 + "futures-macro", 735 + "futures-task", 736 + "memchr", 737 + "pin-project-lite", 738 + "pin-utils", 739 + "slab", 740 + ] 741 + 742 + [[package]] 382 743 name = "getrandom" 383 744 version = "0.2.16" 384 745 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 414 775 checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" 415 776 416 777 [[package]] 778 + name = "hermit-abi" 779 + version = "0.5.2" 780 + source = "registry+https://github.com/rust-lang/crates.io-index" 781 + checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" 782 + 783 + [[package]] 784 + name = "hex" 785 + version = "0.4.3" 786 + source = "registry+https://github.com/rust-lang/crates.io-index" 787 + checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 788 + 789 + [[package]] 417 790 name = "iana-time-zone" 418 791 version = "0.1.63" 419 792 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 603 976 checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" 604 977 dependencies = [ 605 978 "cfg-if", 606 - "windows-targets 0.53.0", 979 + "windows-targets 0.52.6", 607 980 ] 608 981 609 982 [[package]] ··· 688 1061 checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" 689 1062 690 1063 [[package]] 1064 + name = "memoffset" 1065 + version = "0.9.1" 1066 + source = "registry+https://github.com/rust-lang/crates.io-index" 1067 + checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" 1068 + dependencies = [ 1069 + "autocfg", 1070 + ] 1071 + 1072 + [[package]] 691 1073 name = "miniz_oxide" 692 1074 version = "0.8.8" 693 1075 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 703 1085 source = "registry+https://github.com/rust-lang/crates.io-index" 704 1086 checksum = "3ffa00dec017b5b1a8b7cf5e2c008bfda1aa7e0697ac1508b491fdf2622fb4d8" 705 1087 dependencies = [ 706 - "rand", 1088 + "rand 0.8.5", 707 1089 ] 708 1090 709 1091 [[package]] ··· 768 1150 ] 769 1151 770 1152 [[package]] 1153 + name = "nix" 1154 + version = "0.30.1" 1155 + source = "registry+https://github.com/rust-lang/crates.io-index" 1156 + checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" 1157 + dependencies = [ 1158 + "bitflags 2.9.1", 1159 + "cfg-if", 1160 + "cfg_aliases", 1161 + "libc", 1162 + "memoffset", 1163 + ] 1164 + 1165 + [[package]] 771 1166 name = "num-conv" 772 1167 version = "0.1.0" 773 1168 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 799 1194 ] 800 1195 801 1196 [[package]] 1197 + name = "objc2" 1198 + version = "0.6.2" 1199 + source = "registry+https://github.com/rust-lang/crates.io-index" 1200 + checksum = "561f357ba7f3a2a61563a186a163d0a3a5247e1089524a3981d49adb775078bc" 1201 + dependencies = [ 1202 + "objc2-encode", 1203 + ] 1204 + 1205 + [[package]] 1206 + name = "objc2-app-kit" 1207 + version = "0.3.1" 1208 + source = "registry+https://github.com/rust-lang/crates.io-index" 1209 + checksum = "e6f29f568bec459b0ddff777cec4fe3fd8666d82d5a40ebd0ff7e66134f89bcc" 1210 + dependencies = [ 1211 + "bitflags 2.9.1", 1212 + "block2 0.6.1", 1213 + "objc2 0.6.2", 1214 + "objc2-foundation 0.3.1", 1215 + ] 1216 + 1217 + [[package]] 1218 + name = "objc2-core-foundation" 1219 + version = "0.3.1" 1220 + source = "registry+https://github.com/rust-lang/crates.io-index" 1221 + checksum = "1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166" 1222 + dependencies = [ 1223 + "bitflags 2.9.1", 1224 + "dispatch2", 1225 + "objc2 0.6.2", 1226 + ] 1227 + 1228 + [[package]] 802 1229 name = "objc2-encode" 803 1230 version = "4.1.0" 804 1231 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 811 1238 checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" 812 1239 dependencies = [ 813 1240 "bitflags 2.9.1", 814 - "block2", 1241 + "block2 0.5.1", 815 1242 "libc", 816 - "objc2", 1243 + "objc2 0.5.2", 1244 + ] 1245 + 1246 + [[package]] 1247 + name = "objc2-foundation" 1248 + version = "0.3.1" 1249 + source = "registry+https://github.com/rust-lang/crates.io-index" 1250 + checksum = "900831247d2fe1a09a683278e5384cfb8c80c79fe6b166f9d14bfdde0ea1b03c" 1251 + dependencies = [ 1252 + "bitflags 2.9.1", 1253 + "objc2 0.6.2", 1254 + "objc2-core-foundation", 817 1255 ] 818 1256 819 1257 [[package]] ··· 841 1279 checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 842 1280 843 1281 [[package]] 1282 + name = "ordered-stream" 1283 + version = "0.2.0" 1284 + source = "registry+https://github.com/rust-lang/crates.io-index" 1285 + checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" 1286 + dependencies = [ 1287 + "futures-core", 1288 + "pin-project-lite", 1289 + ] 1290 + 1291 + [[package]] 1292 + name = "parking" 1293 + version = "2.2.1" 1294 + source = "registry+https://github.com/rust-lang/crates.io-index" 1295 + checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" 1296 + 1297 + [[package]] 844 1298 name = "paste" 845 1299 version = "1.0.15" 846 1300 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 859 1313 checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" 860 1314 861 1315 [[package]] 1316 + name = "pin-utils" 1317 + version = "0.1.0" 1318 + source = "registry+https://github.com/rust-lang/crates.io-index" 1319 + checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 1320 + 1321 + [[package]] 1322 + name = "piper" 1323 + version = "0.2.4" 1324 + source = "registry+https://github.com/rust-lang/crates.io-index" 1325 + checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" 1326 + dependencies = [ 1327 + "atomic-waker", 1328 + "fastrand", 1329 + "futures-io", 1330 + ] 1331 + 1332 + [[package]] 1333 + name = "pkg-config" 1334 + version = "0.3.32" 1335 + source = "registry+https://github.com/rust-lang/crates.io-index" 1336 + checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" 1337 + 1338 + [[package]] 862 1339 name = "plist" 863 1340 version = "1.7.1" 864 1341 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 866 1343 dependencies = [ 867 1344 "base64", 868 1345 "indexmap", 869 - "quick-xml", 1346 + "quick-xml 0.32.0", 870 1347 "serde", 871 1348 "time", 872 1349 ] ··· 885 1362 ] 886 1363 887 1364 [[package]] 1365 + name = "polling" 1366 + version = "3.10.0" 1367 + source = "registry+https://github.com/rust-lang/crates.io-index" 1368 + checksum = "b5bd19146350fe804f7cb2669c851c03d69da628803dab0d98018142aaa5d829" 1369 + dependencies = [ 1370 + "cfg-if", 1371 + "concurrent-queue", 1372 + "hermit-abi", 1373 + "pin-project-lite", 1374 + "rustix 1.0.7", 1375 + "windows-sys 0.60.2", 1376 + ] 1377 + 1378 + [[package]] 1379 + name = "pollster" 1380 + version = "0.4.0" 1381 + source = "registry+https://github.com/rust-lang/crates.io-index" 1382 + checksum = "2f3a9f18d041e6d0e102a0a46750538147e5e8992d3b4873aaafee2520b00ce3" 1383 + 1384 + [[package]] 888 1385 name = "potential_utf" 889 1386 version = "0.1.2" 890 1387 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 909 1406 ] 910 1407 911 1408 [[package]] 1409 + name = "proc-macro-crate" 1410 + version = "3.3.0" 1411 + source = "registry+https://github.com/rust-lang/crates.io-index" 1412 + checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" 1413 + dependencies = [ 1414 + "toml_edit", 1415 + ] 1416 + 1417 + [[package]] 912 1418 name = "proc-macro2" 913 1419 version = "1.0.95" 914 1420 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 927 1433 ] 928 1434 929 1435 [[package]] 1436 + name = "quick-xml" 1437 + version = "0.37.5" 1438 + source = "registry+https://github.com/rust-lang/crates.io-index" 1439 + checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb" 1440 + dependencies = [ 1441 + "memchr", 1442 + ] 1443 + 1444 + [[package]] 930 1445 name = "quote" 931 1446 version = "1.0.40" 932 1447 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 948 1463 checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 949 1464 dependencies = [ 950 1465 "libc", 951 - "rand_chacha", 952 - "rand_core", 1466 + "rand_chacha 0.3.1", 1467 + "rand_core 0.6.4", 1468 + ] 1469 + 1470 + [[package]] 1471 + name = "rand" 1472 + version = "0.9.2" 1473 + source = "registry+https://github.com/rust-lang/crates.io-index" 1474 + checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" 1475 + dependencies = [ 1476 + "rand_chacha 0.9.0", 1477 + "rand_core 0.9.3", 953 1478 ] 954 1479 955 1480 [[package]] ··· 959 1484 checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 960 1485 dependencies = [ 961 1486 "ppv-lite86", 962 - "rand_core", 1487 + "rand_core 0.6.4", 1488 + ] 1489 + 1490 + [[package]] 1491 + name = "rand_chacha" 1492 + version = "0.9.0" 1493 + source = "registry+https://github.com/rust-lang/crates.io-index" 1494 + checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" 1495 + dependencies = [ 1496 + "ppv-lite86", 1497 + "rand_core 0.9.3", 963 1498 ] 964 1499 965 1500 [[package]] ··· 972 1507 ] 973 1508 974 1509 [[package]] 1510 + name = "rand_core" 1511 + version = "0.9.3" 1512 + source = "registry+https://github.com/rust-lang/crates.io-index" 1513 + checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" 1514 + dependencies = [ 1515 + "getrandom 0.3.3", 1516 + ] 1517 + 1518 + [[package]] 1519 + name = "raw-window-handle" 1520 + version = "0.6.2" 1521 + source = "registry+https://github.com/rust-lang/crates.io-index" 1522 + checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" 1523 + 1524 + [[package]] 975 1525 name = "rayon" 976 1526 version = "1.10.0" 977 1527 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1041 1591 checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" 1042 1592 1043 1593 [[package]] 1594 + name = "rfd" 1595 + version = "0.15.4" 1596 + source = "registry+https://github.com/rust-lang/crates.io-index" 1597 + checksum = "ef2bee61e6cffa4635c72d7d81a84294e28f0930db0ddcb0f66d10244674ebed" 1598 + dependencies = [ 1599 + "ashpd", 1600 + "block2 0.6.1", 1601 + "dispatch2", 1602 + "js-sys", 1603 + "log", 1604 + "objc2 0.6.2", 1605 + "objc2-app-kit", 1606 + "objc2-core-foundation", 1607 + "objc2-foundation 0.3.1", 1608 + "pollster", 1609 + "raw-window-handle", 1610 + "urlencoding", 1611 + "wasm-bindgen", 1612 + "wasm-bindgen-futures", 1613 + "web-sys", 1614 + "windows-sys 0.59.0", 1615 + ] 1616 + 1617 + [[package]] 1044 1618 name = "rustc-demangle" 1045 1619 version = "0.1.24" 1046 1620 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1083 1657 version = "1.0.20" 1084 1658 source = "registry+https://github.com/rust-lang/crates.io-index" 1085 1659 checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" 1660 + 1661 + [[package]] 1662 + name = "scoped-tls" 1663 + version = "1.0.1" 1664 + source = "registry+https://github.com/rust-lang/crates.io-index" 1665 + checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" 1086 1666 1087 1667 [[package]] 1088 1668 name = "scopeguard" ··· 1129 1709 ] 1130 1710 1131 1711 [[package]] 1712 + name = "serde_repr" 1713 + version = "0.1.20" 1714 + source = "registry+https://github.com/rust-lang/crates.io-index" 1715 + checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" 1716 + dependencies = [ 1717 + "proc-macro2", 1718 + "quote", 1719 + "syn", 1720 + ] 1721 + 1722 + [[package]] 1132 1723 name = "shlex" 1133 1724 version = "1.3.0" 1134 1725 source = "registry+https://github.com/rust-lang/crates.io-index" 1135 1726 checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" 1136 1727 1137 1728 [[package]] 1729 + name = "signal-hook-registry" 1730 + version = "1.4.6" 1731 + source = "registry+https://github.com/rust-lang/crates.io-index" 1732 + checksum = "b2a4719bff48cee6b39d12c020eeb490953ad2443b7055bd0b21fca26bd8c28b" 1733 + dependencies = [ 1734 + "libc", 1735 + ] 1736 + 1737 + [[package]] 1138 1738 name = "simd-adler32" 1139 1739 version = "0.3.7" 1140 1740 source = "registry+https://github.com/rust-lang/crates.io-index" 1141 1741 checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" 1142 1742 1143 1743 [[package]] 1744 + name = "slab" 1745 + version = "0.4.11" 1746 + source = "registry+https://github.com/rust-lang/crates.io-index" 1747 + checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" 1748 + 1749 + [[package]] 1144 1750 name = "smallvec" 1145 1751 version = "1.15.0" 1146 1752 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1151 1757 version = "1.2.0" 1152 1758 source = "registry+https://github.com/rust-lang/crates.io-index" 1153 1759 checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1760 + 1761 + [[package]] 1762 + name = "static_assertions" 1763 + version = "1.1.0" 1764 + source = "registry+https://github.com/rust-lang/crates.io-index" 1765 + checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 1154 1766 1155 1767 [[package]] 1156 1768 name = "syn" ··· 1286 1898 ] 1287 1899 1288 1900 [[package]] 1901 + name = "toml_datetime" 1902 + version = "0.6.11" 1903 + source = "registry+https://github.com/rust-lang/crates.io-index" 1904 + checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" 1905 + 1906 + [[package]] 1907 + name = "toml_edit" 1908 + version = "0.22.27" 1909 + source = "registry+https://github.com/rust-lang/crates.io-index" 1910 + checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" 1911 + dependencies = [ 1912 + "indexmap", 1913 + "toml_datetime", 1914 + "winnow", 1915 + ] 1916 + 1917 + [[package]] 1918 + name = "tracing" 1919 + version = "0.1.41" 1920 + source = "registry+https://github.com/rust-lang/crates.io-index" 1921 + checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" 1922 + dependencies = [ 1923 + "pin-project-lite", 1924 + "tracing-attributes", 1925 + "tracing-core", 1926 + ] 1927 + 1928 + [[package]] 1929 + name = "tracing-attributes" 1930 + version = "0.1.30" 1931 + source = "registry+https://github.com/rust-lang/crates.io-index" 1932 + checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" 1933 + dependencies = [ 1934 + "proc-macro2", 1935 + "quote", 1936 + "syn", 1937 + ] 1938 + 1939 + [[package]] 1940 + name = "tracing-core" 1941 + version = "0.1.34" 1942 + source = "registry+https://github.com/rust-lang/crates.io-index" 1943 + checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" 1944 + dependencies = [ 1945 + "once_cell", 1946 + ] 1947 + 1948 + [[package]] 1289 1949 name = "trash" 1290 1950 version = "5.2.2" 1291 1951 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1294 1954 "chrono", 1295 1955 "libc", 1296 1956 "log", 1297 - "objc2", 1298 - "objc2-foundation", 1957 + "objc2 0.5.2", 1958 + "objc2-foundation 0.2.2", 1299 1959 "once_cell", 1300 1960 "percent-encoding", 1301 1961 "scopeguard", ··· 1304 1964 ] 1305 1965 1306 1966 [[package]] 1967 + name = "uds_windows" 1968 + version = "1.1.0" 1969 + source = "registry+https://github.com/rust-lang/crates.io-index" 1970 + checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9" 1971 + dependencies = [ 1972 + "memoffset", 1973 + "tempfile", 1974 + "winapi", 1975 + ] 1976 + 1977 + [[package]] 1307 1978 name = "unicode-ident" 1308 1979 version = "1.0.18" 1309 1980 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1333 2004 "form_urlencoded", 1334 2005 "idna", 1335 2006 "percent-encoding", 2007 + "serde", 1336 2008 ] 1337 2009 1338 2010 [[package]] ··· 1389 2061 ] 1390 2062 1391 2063 [[package]] 2064 + name = "wasm-bindgen-futures" 2065 + version = "0.4.50" 2066 + source = "registry+https://github.com/rust-lang/crates.io-index" 2067 + checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" 2068 + dependencies = [ 2069 + "cfg-if", 2070 + "js-sys", 2071 + "once_cell", 2072 + "wasm-bindgen", 2073 + "web-sys", 2074 + ] 2075 + 2076 + [[package]] 1392 2077 name = "wasm-bindgen-macro" 1393 2078 version = "0.2.100" 1394 2079 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1421 2106 ] 1422 2107 1423 2108 [[package]] 2109 + name = "wayland-backend" 2110 + version = "0.3.11" 2111 + source = "registry+https://github.com/rust-lang/crates.io-index" 2112 + checksum = "673a33c33048a5ade91a6b139580fa174e19fb0d23f396dca9fa15f2e1e49b35" 2113 + dependencies = [ 2114 + "cc", 2115 + "downcast-rs", 2116 + "rustix 1.0.7", 2117 + "scoped-tls", 2118 + "smallvec", 2119 + "wayland-sys", 2120 + ] 2121 + 2122 + [[package]] 2123 + name = "wayland-client" 2124 + version = "0.31.11" 2125 + source = "registry+https://github.com/rust-lang/crates.io-index" 2126 + checksum = "c66a47e840dc20793f2264eb4b3e4ecb4b75d91c0dd4af04b456128e0bdd449d" 2127 + dependencies = [ 2128 + "bitflags 2.9.1", 2129 + "rustix 1.0.7", 2130 + "wayland-backend", 2131 + "wayland-scanner", 2132 + ] 2133 + 2134 + [[package]] 2135 + name = "wayland-protocols" 2136 + version = "0.32.9" 2137 + source = "registry+https://github.com/rust-lang/crates.io-index" 2138 + checksum = "efa790ed75fbfd71283bd2521a1cfdc022aabcc28bdcff00851f9e4ae88d9901" 2139 + dependencies = [ 2140 + "bitflags 2.9.1", 2141 + "wayland-backend", 2142 + "wayland-client", 2143 + "wayland-scanner", 2144 + ] 2145 + 2146 + [[package]] 2147 + name = "wayland-scanner" 2148 + version = "0.31.7" 2149 + source = "registry+https://github.com/rust-lang/crates.io-index" 2150 + checksum = "54cb1e9dc49da91950bdfd8b848c49330536d9d1fb03d4bfec8cae50caa50ae3" 2151 + dependencies = [ 2152 + "proc-macro2", 2153 + "quick-xml 0.37.5", 2154 + "quote", 2155 + ] 2156 + 2157 + [[package]] 2158 + name = "wayland-sys" 2159 + version = "0.31.7" 2160 + source = "registry+https://github.com/rust-lang/crates.io-index" 2161 + checksum = "34949b42822155826b41db8e5d0c1be3a2bd296c747577a43a3e6daefc296142" 2162 + dependencies = [ 2163 + "dlib", 2164 + "log", 2165 + "pkg-config", 2166 + ] 2167 + 2168 + [[package]] 2169 + name = "web-sys" 2170 + version = "0.3.77" 2171 + source = "registry+https://github.com/rust-lang/crates.io-index" 2172 + checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" 2173 + dependencies = [ 2174 + "js-sys", 2175 + "wasm-bindgen", 2176 + ] 2177 + 2178 + [[package]] 1424 2179 name = "winapi" 1425 2180 version = "0.3.9" 1426 2181 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1573 2328 ] 1574 2329 1575 2330 [[package]] 2331 + name = "windows-sys" 2332 + version = "0.60.2" 2333 + source = "registry+https://github.com/rust-lang/crates.io-index" 2334 + checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" 2335 + dependencies = [ 2336 + "windows-targets 0.53.2", 2337 + ] 2338 + 2339 + [[package]] 1576 2340 name = "windows-targets" 1577 2341 version = "0.52.6" 1578 2342 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1590 2354 1591 2355 [[package]] 1592 2356 name = "windows-targets" 1593 - version = "0.53.0" 2357 + version = "0.53.2" 1594 2358 source = "registry+https://github.com/rust-lang/crates.io-index" 1595 - checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" 2359 + checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" 1596 2360 dependencies = [ 1597 2361 "windows_aarch64_gnullvm 0.53.0", 1598 2362 "windows_aarch64_msvc 0.53.0", ··· 1701 2465 checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" 1702 2466 1703 2467 [[package]] 2468 + name = "winnow" 2469 + version = "0.7.13" 2470 + source = "registry+https://github.com/rust-lang/crates.io-index" 2471 + checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" 2472 + dependencies = [ 2473 + "memchr", 2474 + ] 2475 + 2476 + [[package]] 1704 2477 name = "wit-bindgen-rt" 1705 2478 version = "0.39.0" 1706 2479 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1740 2513 ] 1741 2514 1742 2515 [[package]] 2516 + name = "zbus" 2517 + version = "5.11.0" 2518 + source = "registry+https://github.com/rust-lang/crates.io-index" 2519 + checksum = "2d07e46d035fb8e375b2ce63ba4e4ff90a7f73cf2ffb0138b29e1158d2eaadf7" 2520 + dependencies = [ 2521 + "async-broadcast", 2522 + "async-executor", 2523 + "async-io", 2524 + "async-lock", 2525 + "async-process", 2526 + "async-recursion", 2527 + "async-task", 2528 + "async-trait", 2529 + "blocking", 2530 + "enumflags2", 2531 + "event-listener", 2532 + "futures-core", 2533 + "futures-lite", 2534 + "hex", 2535 + "nix", 2536 + "ordered-stream", 2537 + "serde", 2538 + "serde_repr", 2539 + "tracing", 2540 + "uds_windows", 2541 + "windows-sys 0.60.2", 2542 + "winnow", 2543 + "zbus_macros", 2544 + "zbus_names", 2545 + "zvariant", 2546 + ] 2547 + 2548 + [[package]] 2549 + name = "zbus_macros" 2550 + version = "5.11.0" 2551 + source = "registry+https://github.com/rust-lang/crates.io-index" 2552 + checksum = "57e797a9c847ed3ccc5b6254e8bcce056494b375b511b3d6edcec0aeb4defaca" 2553 + dependencies = [ 2554 + "proc-macro-crate", 2555 + "proc-macro2", 2556 + "quote", 2557 + "syn", 2558 + "zbus_names", 2559 + "zvariant", 2560 + "zvariant_utils", 2561 + ] 2562 + 2563 + [[package]] 2564 + name = "zbus_names" 2565 + version = "4.2.0" 2566 + source = "registry+https://github.com/rust-lang/crates.io-index" 2567 + checksum = "7be68e64bf6ce8db94f63e72f0c7eb9a60d733f7e0499e628dfab0f84d6bcb97" 2568 + dependencies = [ 2569 + "serde", 2570 + "static_assertions", 2571 + "winnow", 2572 + "zvariant", 2573 + ] 2574 + 2575 + [[package]] 1743 2576 name = "zerocopy" 1744 2577 version = "0.8.25" 1745 2578 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1827 2660 dependencies = [ 1828 2661 "zune-core", 1829 2662 ] 2663 + 2664 + [[package]] 2665 + name = "zvariant" 2666 + version = "5.7.0" 2667 + source = "registry+https://github.com/rust-lang/crates.io-index" 2668 + checksum = "999dd3be73c52b1fccd109a4a81e4fcd20fab1d3599c8121b38d04e1419498db" 2669 + dependencies = [ 2670 + "endi", 2671 + "enumflags2", 2672 + "serde", 2673 + "url", 2674 + "winnow", 2675 + "zvariant_derive", 2676 + "zvariant_utils", 2677 + ] 2678 + 2679 + [[package]] 2680 + name = "zvariant_derive" 2681 + version = "5.7.0" 2682 + source = "registry+https://github.com/rust-lang/crates.io-index" 2683 + checksum = "6643fd0b26a46d226bd90d3f07c1b5321fe9bb7f04673cb37ac6d6883885b68e" 2684 + dependencies = [ 2685 + "proc-macro-crate", 2686 + "proc-macro2", 2687 + "quote", 2688 + "syn", 2689 + "zvariant_utils", 2690 + ] 2691 + 2692 + [[package]] 2693 + name = "zvariant_utils" 2694 + version = "3.2.1" 2695 + source = "registry+https://github.com/rust-lang/crates.io-index" 2696 + checksum = "c6949d142f89f6916deca2232cf26a8afacf2b9fdc35ce766105e104478be599" 2697 + dependencies = [ 2698 + "proc-macro2", 2699 + "quote", 2700 + "serde", 2701 + "syn", 2702 + "winnow", 2703 + ]
+1
Cargo.toml
··· 44 44 redb = "2.1.3" 45 45 anyhow = "1.0.89" 46 46 dirs-next = "2.0.0" 47 + rfd = "0.15.4" 47 48 48 49 [profile.dev] 49 50 panic = "abort"
+35
src-native/data_js.rs
··· 1 1 use crate::data::Data; 2 2 use anyhow::{Context, Result}; 3 3 use napi::{Env, JsUndefined}; 4 + use rfd::MessageDialog; 4 5 5 6 pub fn get_data(env: &Env) -> Result<&mut Data> { 6 7 let data = env.get_instance_data::<Data>()?.context("No data")?; ··· 15 16 library_path: Option<String>, 16 17 env: Env, 17 18 ) -> Result<()> { 19 + std::panic::set_hook(Box::new(move |info| { 20 + let thread = std::thread::current(); 21 + let thread_name = thread.name().unwrap_or("<unnamed>"); 22 + // Get the panic message 23 + let panic_msg = if let Some(s) = info.payload().downcast_ref::<&str>() { 24 + *s 25 + } else if let Some(s) = info.payload().downcast_ref::<String>() { 26 + s.as_str() 27 + } else { 28 + "Unknown panic message" 29 + }; 30 + 31 + // Get the location of the panic (file, line, column) 32 + let location = if let Some(loc) = info.location() { 33 + format!("{}:{}:{}", loc.file(), loc.line(), loc.column()) 34 + } else { 35 + "Unknown location".to_string() 36 + }; 37 + 38 + // let stacktrace = std::backtrace::Backtrace::force_capture(); 39 + // println!("Got panic. {}\n{}", panic_msg, stacktrace); 40 + // println!(""); 41 + eprintln!( 42 + "thread '{}' panicked at '{}': {}", 43 + thread_name, panic_msg, location 44 + ); 45 + 46 + MessageDialog::new() 47 + .set_title(&format!("{}", panic_msg)) 48 + .set_description(&format!("{}", location)) 49 + .set_buttons(rfd::MessageButtons::Ok) 50 + .set_level(rfd::MessageLevel::Error) 51 + .show(); 52 + })); 18 53 let data = Data::load(is_dev, local_data_path, library_path)?; 19 54 env.set_instance_data(data, 0, |_ctx| {})?; 20 55 return Ok(());
+4 -1
src/electron/main.ts
··· 178 178 browser_windows.main_window = main_window 179 179 }) 180 180 main_window.webContents.on('render-process-gone', (_e, details) => { 181 - if ( 181 + if (details.reason === 'crashed') { 182 + // we have a napi-rs panic handler message popup already 183 + trigger_crash() 184 + } else if ( 182 185 details.reason !== 'clean-exit' && 183 186 details.reason !== 'abnormal-exit' && 184 187 details.reason !== 'killed'