kavita: 0.8.5.11 -> 0.8.7 (#427104)

authored by jopejoe1 and committed by GitHub fae1490b 109dfc08

+208 -396
+6 -17
pkgs/servers/web-apps/kavita/default.nix
··· 2 lib, 3 stdenvNoCC, 4 fetchFromGitHub, 5 - fetchpatch2, 6 buildDotnetModule, 7 buildNpmPackage, 8 dotnetCorePackages, ··· 11 12 stdenvNoCC.mkDerivation (finalAttrs: { 13 pname = "kavita"; 14 - version = "0.8.5.11"; 15 16 src = fetchFromGitHub { 17 owner = "kareadita"; 18 repo = "kavita"; 19 rev = "v${finalAttrs.version}"; 20 - hash = "sha256-HSVdEB0yhmm/SZseHQ5kTRBaVqCZZx934Ovq1pTmQkM="; 21 }; 22 23 backend = buildDotnetModule { ··· 27 patches = [ 28 # The webroot is hardcoded as ./wwwroot 29 ./change-webroot.diff 30 - # Upstream removes database migrations between versions 31 - # Restore them to avoid breaking on updates 32 - # Info: Restores migrations for versions between v0.7.1.4 and v0.7.9 33 - # On update: check if more migrations need to be restored! 34 - # Migrations should at least allow updates from previous NixOS versions 35 - ./restore-migrations.diff 36 - # Our nixos test depends on /api/locale; this patch fixes an upstream bug where the first response always fails 37 - # https://github.com/Kareadita/Kavita/pull/3686 remove once upstream is fixed 38 - (fetchpatch2 { 39 - name = "fix-locale-cache.patch"; 40 - url = "https://github.com/Kareadita/Kavita/commit/5af07b9525c2164a6548092244bbdf66815b3e95.patch?full_index=1"; 41 - hash = "sha256-aFZRxijAbA2mXJM+3kC4P4p76d0p5fEXLiaRhNmjOAA="; 42 - }) 43 ]; 44 postPatch = '' 45 substituteInPlace API/Services/DirectoryService.cs --subst-var out ··· 65 npmBuildScript = "prod"; 66 npmFlags = [ "--legacy-peer-deps" ]; 67 npmRebuildFlags = [ "--ignore-scripts" ]; # Prevent playwright from trying to install browsers 68 - npmDepsHash = "sha256-9SfiH567+q3Id6/7pqWeX0y934V2YFQ4EWIJ+66smgI="; 69 }; 70 71 dontBuild = true;
··· 2 lib, 3 stdenvNoCC, 4 fetchFromGitHub, 5 buildDotnetModule, 6 buildNpmPackage, 7 dotnetCorePackages, ··· 10 11 stdenvNoCC.mkDerivation (finalAttrs: { 12 pname = "kavita"; 13 + version = "0.8.7"; 14 15 src = fetchFromGitHub { 16 owner = "kareadita"; 17 repo = "kavita"; 18 rev = "v${finalAttrs.version}"; 19 + hash = "sha256-jRP7ts6+jogPdmP+DfzeijlG70kvJWgf8da/sTBT9d4="; 20 }; 21 22 backend = buildDotnetModule { ··· 26 patches = [ 27 # The webroot is hardcoded as ./wwwroot 28 ./change-webroot.diff 29 + # NOTE: Upstream frequently removes old database migrations between versions. 30 + # Currently no migration patches are needed for upgrades from NixOS 24.11 (v0.8.3.2). 31 + # Future updates should check if migration restoration is needed for supported upgrade paths. 32 ]; 33 postPatch = '' 34 substituteInPlace API/Services/DirectoryService.cs --subst-var out ··· 54 npmBuildScript = "prod"; 55 npmFlags = [ "--legacy-peer-deps" ]; 56 npmRebuildFlags = [ "--ignore-scripts" ]; # Prevent playwright from trying to install browsers 57 + npmDepsHash = "sha256-/fBUOlZfNGyRu9mfniSMBKHPNgNsZNpbFZpVrFwBtb4="; 58 }; 59 60 dontBuild = true;
+202 -232
pkgs/servers/web-apps/kavita/nuget-deps.json
··· 11 }, 12 { 13 "pname": "BouncyCastle.Cryptography", 14 - "version": "2.5.0", 15 - "hash": "sha256-4JTx7QKSu3BE7kPuspN1KK2LtA9BWKLHZRLfOBEzWHY=" 16 }, 17 { 18 "pname": "Cronos", 19 - "version": "0.9.0", 20 - "hash": "sha256-yDYBfqSXqvT/VPUf6UT3XOgqqPmOMYqhjCBxpF5i15c=" 21 }, 22 { 23 "pname": "CsvHelper", 24 - "version": "33.0.1", 25 - "hash": "sha256-4MwA/WerpI0VYWiaEudNCNnE1v6/k2tPmLbRjmgijV4=" 26 }, 27 { 28 "pname": "Docnet.Core", ··· 61 }, 62 { 63 "pname": "Hangfire", 64 - "version": "1.8.18", 65 - "hash": "sha256-Ty2nF3qL5VQyZZcAaCBuBVohT7eMtwrKwFSv9TZCx0k=" 66 }, 67 { 68 "pname": "Hangfire.AspNetCore", 69 - "version": "1.8.18", 70 - "hash": "sha256-tQx6bh68ZJk+kG2d3hszAzAY+9yPzoNqvlfgccsXfxc=" 71 }, 72 { 73 "pname": "Hangfire.Core", ··· 81 }, 82 { 83 "pname": "Hangfire.Core", 84 - "version": "1.8.18", 85 - "hash": "sha256-erTLLsfI1Vo58zke9qqI1n2PCFqCGBoH0J0/f+WCwnQ=" 86 }, 87 { 88 "pname": "Hangfire.InMemory", ··· 96 }, 97 { 98 "pname": "Hangfire.NetCore", 99 - "version": "1.8.18", 100 - "hash": "sha256-pensGJ3OJTydVhi5ziaVPCKNpOe9EMlimohtFmBw0bo=" 101 }, 102 { 103 "pname": "Hangfire.SqlServer", 104 - "version": "1.8.18", 105 - "hash": "sha256-mirQEgFPCXdvxE9XqXGUDizjixAlkUZ6WSJIk0Ovpuc=" 106 }, 107 { 108 "pname": "Hangfire.Storage.SQLite", ··· 111 }, 112 { 113 "pname": "HtmlAgilityPack", 114 - "version": "1.11.74", 115 - "hash": "sha256-kp9Hd6H6YfVI8xGOQXTcpcLXDen85tzI423vsJkL6Zo=" 116 }, 117 { 118 "pname": "Humanizer.Core", ··· 121 }, 122 { 123 "pname": "MailKit", 124 - "version": "4.10.0", 125 - "hash": "sha256-LnpMn+yD5gWrEmZ8dsHf80aBV1KM508uM91C4TftPsk=" 126 }, 127 { 128 "pname": "MarkdownDeep.NET.Core", ··· 136 }, 137 { 138 "pname": "Microsoft.AspNetCore.Authentication.JwtBearer", 139 - "version": "9.0.2", 140 - "hash": "sha256-X/n1/FojwBdgJpAwgfUjTzt6sStEsjTX5KyZWXm1cGA=" 141 }, 142 { 143 "pname": "Microsoft.AspNetCore.Authentication.OpenIdConnect", 144 - "version": "9.0.2", 145 - "hash": "sha256-xqyfZOksphmvaN71bM5on4xf8usOSiKvGZ1j8F250IE=" 146 }, 147 { 148 "pname": "Microsoft.AspNetCore.Authorization", ··· 161 }, 162 { 163 "pname": "Microsoft.AspNetCore.Cryptography.Internal", 164 - "version": "9.0.2", 165 - "hash": "sha256-rGpA88L92YFSNeMZCoO74QTGOpmcgNqhYJ6norXX3eU=" 166 }, 167 { 168 "pname": "Microsoft.AspNetCore.Cryptography.KeyDerivation", 169 - "version": "9.0.2", 170 - "hash": "sha256-crQVw+JYWjOshBokx2W5fUEa+6oitZIJKEhXIsDg70g=" 171 }, 172 { 173 "pname": "Microsoft.AspNetCore.Hosting.Abstractions", ··· 211 }, 212 { 213 "pname": "Microsoft.AspNetCore.Identity.EntityFrameworkCore", 214 - "version": "9.0.2", 215 - "hash": "sha256-0AAxLKe2QwrfdGzBVWImKYSZyz8JLEErjf+/vFVVYzU=" 216 }, 217 { 218 "pname": "Microsoft.AspNetCore.Routing", ··· 316 }, 317 { 318 "pname": "Microsoft.Data.Sqlite.Core", 319 - "version": "9.0.2", 320 - "hash": "sha256-ZUVDe+oy7fAWcnQDRdhkVeN7YZkJewwqBNaxdZcykiM=" 321 }, 322 { 323 "pname": "Microsoft.EntityFrameworkCore", 324 - "version": "9.0.2", 325 - "hash": "sha256-ew+vhHqu+4Hgc5xKiIwEHYWD8dsXqtHmu8Ctre5MrXc=" 326 }, 327 { 328 "pname": "Microsoft.EntityFrameworkCore.Abstractions", 329 - "version": "9.0.2", 330 - "hash": "sha256-FNTvIJPkG6jlEE+3p4/qeL7NPDKNDgDCYlIrSn1gQ4E=" 331 }, 332 { 333 "pname": "Microsoft.EntityFrameworkCore.Analyzers", 334 - "version": "9.0.2", 335 - "hash": "sha256-qXwOxUCeg4b4NSLFD3Ws/D161uQoozM+EiBThp7IeBY=" 336 }, 337 { 338 "pname": "Microsoft.EntityFrameworkCore.Design", 339 - "version": "9.0.2", 340 - "hash": "sha256-f5LMTlXnb13wKQOofCJJ+TyEPOnHi9FpTaHaiYwJF80=" 341 }, 342 { 343 "pname": "Microsoft.EntityFrameworkCore.Relational", 344 - "version": "9.0.2", 345 - "hash": "sha256-IGc3xy455dFu+z6M0Vaqqm09VXehb/XFquOgtpTLcGk=" 346 }, 347 { 348 "pname": "Microsoft.EntityFrameworkCore.Sqlite", 349 - "version": "9.0.2", 350 - "hash": "sha256-ucYyVaLWpRk6Xl0OtX9qp8Nr0gktElgIML5b/JPItX4=" 351 }, 352 { 353 "pname": "Microsoft.EntityFrameworkCore.Sqlite.Core", 354 - "version": "9.0.2", 355 - "hash": "sha256-LqWVpwwj837DHoQuk/aq78Y9lwD/oWDJAxwLNdYN1No=" 356 }, 357 { 358 "pname": "Microsoft.Extensions.ApiDescription.Server", 359 - "version": "6.0.5", 360 - "hash": "sha256-RJjBWz+UHxkQE2s7CeGYdTZ218mCufrxl0eBykZdIt4=" 361 }, 362 { 363 "pname": "Microsoft.Extensions.Caching.Abstractions", 364 - "version": "9.0.2", 365 - "hash": "sha256-fSHzO0OgH+bSuq7vxMhe8gw17Cx2ouMLen9IsJAOD7c=" 366 }, 367 { 368 "pname": "Microsoft.Extensions.Caching.Memory", 369 - "version": "9.0.2", 370 - "hash": "sha256-QBqH+WqnJrzjLFekeu8yCGyRBRfiMUPihfhLi+Wtm7w=" 371 }, 372 { 373 "pname": "Microsoft.Extensions.Configuration", 374 - "version": "8.0.0", 375 - "hash": "sha256-9BPsASlxrV8ilmMCjdb3TiUcm5vFZxkBnAI/fNBSEyA=" 376 }, 377 { 378 - "pname": "Microsoft.Extensions.Configuration", 379 - "version": "9.0.2", 380 - "hash": "sha256-AUNaLhYTcHUkqKGhSL7QgrifV9JkjKhNQ4Ws8UtZhlM=" 381 }, 382 { 383 "pname": "Microsoft.Extensions.Configuration.Abstractions", 384 - "version": "3.0.0", 385 - "hash": "sha256-GJDvt3qFAif5ToFjHgs8imCaUER7yvYJghnlYXiHrHU=" 386 }, 387 { 388 "pname": "Microsoft.Extensions.Configuration.Abstractions", ··· 396 }, 397 { 398 "pname": "Microsoft.Extensions.Configuration.Abstractions", 399 - "version": "9.0.2", 400 - "hash": "sha256-icRtfbi0nDRUYDErtKYx0z6A1gWo5xdswsSM6o4ozxc=" 401 }, 402 { 403 "pname": "Microsoft.Extensions.Configuration.Binder", 404 - "version": "8.0.0", 405 - "hash": "sha256-GanfInGzzoN2bKeNwON8/Hnamr6l7RTpYLA49CNXD9Q=" 406 - }, 407 - { 408 - "pname": "Microsoft.Extensions.Configuration.Binder", 409 - "version": "8.0.2", 410 - "hash": "sha256-aGB0VuoC34YadAEqrwoaXLc5qla55pswDV2xLSmR7SE=" 411 }, 412 { 413 "pname": "Microsoft.Extensions.Configuration.Binder", ··· 416 }, 417 { 418 "pname": "Microsoft.Extensions.Configuration.Binder", 419 - "version": "9.0.2", 420 - "hash": "sha256-lYWUfvSnpp9M4N4wIfFnMlB+8K79g9uUa1NXsgnxs0k=" 421 }, 422 { 423 "pname": "Microsoft.Extensions.Configuration.CommandLine", 424 - "version": "9.0.2", 425 - "hash": "sha256-qsEwiAO/n2+k8Q8/AftqdSlvvQWDx7WKb+9VlP8Nuxw=" 426 }, 427 { 428 "pname": "Microsoft.Extensions.Configuration.EnvironmentVariables", 429 - "version": "9.0.2", 430 - "hash": "sha256-XgSdv8+zh2vXmhP+a31/+Y+mNLwQwLflfCiEtDemea0=" 431 }, 432 { 433 "pname": "Microsoft.Extensions.Configuration.FileExtensions", 434 - "version": "9.0.2", 435 - "hash": "sha256-eeZbwf2lcV74mjXtOX8q0MxvP4QzEYyHXr1EGFS/orU=" 436 }, 437 { 438 "pname": "Microsoft.Extensions.Configuration.Json", 439 - "version": "9.0.2", 440 - "hash": "sha256-7/ewyjh0gXu798fYcJxOCkdaAPIzrJ8reuTzqz93IJ0=" 441 }, 442 { 443 "pname": "Microsoft.Extensions.Configuration.UserSecrets", 444 - "version": "9.0.2", 445 - "hash": "sha256-0OmAQn8gIqTPN4s0NkcidXivjq5LsEGiNVxmp3qxGoo=" 446 }, 447 { 448 "pname": "Microsoft.Extensions.DependencyInjection", 449 - "version": "9.0.2", 450 - "hash": "sha256-jNQVj2Xo7wzVdNDu27bLbYCVUOF8yDVrFtC3cZ9OsXo=" 451 }, 452 { 453 "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", ··· 466 }, 467 { 468 "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", 469 - "version": "8.0.0", 470 - "hash": "sha256-75KzEGWjbRELczJpCiJub+ltNUMMbz5A/1KQU+5dgP8=" 471 - }, 472 - { 473 - "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", 474 "version": "8.0.2", 475 "hash": "sha256-UfLfEQAkXxDaVPC7foE/J3FVEXd31Pu6uQIhTic3JgY=" 476 }, ··· 481 }, 482 { 483 "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", 484 - "version": "9.0.2", 485 - "hash": "sha256-WoTLgw/OlXhgN54Szip0Zpne7i/YTXwZ1ZLCPcHV6QM=" 486 }, 487 { 488 "pname": "Microsoft.Extensions.DependencyModel", ··· 496 }, 497 { 498 "pname": "Microsoft.Extensions.DependencyModel", 499 - "version": "9.0.2", 500 - "hash": "sha256-KqR0yrNi7S8rDje4RYjTEC98XG0rBreO4wkHGO6Llks=" 501 }, 502 { 503 "pname": "Microsoft.Extensions.Diagnostics", 504 - "version": "9.0.2", 505 - "hash": "sha256-ImTZ6PZyKEdq1XvqYT5DPr6cG0BSTrsrO7rTDuy29fc=" 506 }, 507 { 508 "pname": "Microsoft.Extensions.Diagnostics.Abstractions", ··· 511 }, 512 { 513 "pname": "Microsoft.Extensions.Diagnostics.Abstractions", 514 - "version": "9.0.2", 515 - "hash": "sha256-JTJ8LCW3aYUO86OPgXRQthtDTUMikOfILExgeOF8CX4=" 516 }, 517 { 518 "pname": "Microsoft.Extensions.FileProviders.Abstractions", ··· 531 }, 532 { 533 "pname": "Microsoft.Extensions.FileProviders.Abstractions", 534 - "version": "9.0.2", 535 - "hash": "sha256-RmVshMCWW1/RE/Wk8AeT4r6uZ+XFuwDFYzdxYKSm440=" 536 }, 537 { 538 "pname": "Microsoft.Extensions.FileProviders.Physical", 539 - "version": "9.0.2", 540 - "hash": "sha256-vQBgVLW813wOnJ1+943ArDWReok6p0jAl7fhwvyFtL8=" 541 }, 542 { 543 "pname": "Microsoft.Extensions.FileSystemGlobbing", 544 - "version": "9.0.2", 545 - "hash": "sha256-oH6X8SQjqi5Q2HLRILcUr9iPqnC1Ky5m5GbYYCKCxag=" 546 }, 547 { 548 "pname": "Microsoft.Extensions.Hosting", 549 - "version": "9.0.2", 550 - "hash": "sha256-eI9ckarRX0UCX+mBsEBYdvHZrmN86bXyTRvbH4gU9JM=" 551 }, 552 { 553 "pname": "Microsoft.Extensions.Hosting.Abstractions", ··· 566 }, 567 { 568 "pname": "Microsoft.Extensions.Hosting.Abstractions", 569 - "version": "9.0.2", 570 - "hash": "sha256-PUCam4g5g84qIqfPA9sVBNVPA26rWFq7js9nHF3WLZc=" 571 }, 572 { 573 "pname": "Microsoft.Extensions.Identity.Core", 574 - "version": "9.0.2", 575 - "hash": "sha256-5aLS+VE+FqHozXW4qFu5gyGpV8HqIfGzRnUV/zXM2/Q=" 576 }, 577 { 578 "pname": "Microsoft.Extensions.Identity.Stores", 579 - "version": "9.0.2", 580 - "hash": "sha256-Em/aKN8WTmwg79RdK6+QDx1iVTR0qCK6/f54GW2HCjo=" 581 }, 582 { 583 "pname": "Microsoft.Extensions.Logging", ··· 586 }, 587 { 588 "pname": "Microsoft.Extensions.Logging", 589 - "version": "8.0.1", 590 - "hash": "sha256-vkfVw4tQEg86Xg18v6QO0Qb4Ysz0Njx57d1XcNuj6IU=" 591 - }, 592 - { 593 - "pname": "Microsoft.Extensions.Logging", 594 "version": "9.0.0", 595 "hash": "sha256-kR16c+N8nQrWeYLajqnXPg7RiXjZMSFLnKLEs4VfjcM=" 596 }, 597 { 598 "pname": "Microsoft.Extensions.Logging", 599 - "version": "9.0.2", 600 - "hash": "sha256-vPCb4ZoiwZUSGJIOhYiLwcZLnsd0ZZhny6KQkT88nI0=" 601 }, 602 { 603 "pname": "Microsoft.Extensions.Logging.Abstractions", ··· 606 }, 607 { 608 "pname": "Microsoft.Extensions.Logging.Abstractions", 609 "version": "8.0.2", 610 "hash": "sha256-cHpe8X2BgYa5DzulZfq24rg8O2K5Lmq2OiLhoyAVgJc=" 611 }, ··· 616 }, 617 { 618 "pname": "Microsoft.Extensions.Logging.Abstractions", 619 - "version": "9.0.2", 620 - "hash": "sha256-mCxeuc+37XY0bmZR+z4p1hrZUdTZEg+FRcs/m6dAQDU=" 621 - }, 622 - { 623 - "pname": "Microsoft.Extensions.Logging.Configuration", 624 - "version": "8.0.1", 625 - "hash": "sha256-E2JbJG2EXlv2HUWLi17kIkAL6RC9rC2E18C3gAyOuaE=" 626 }, 627 { 628 "pname": "Microsoft.Extensions.Logging.Configuration", 629 - "version": "9.0.2", 630 - "hash": "sha256-SeNQ8us2cZ8xbJx8TK7xm3IxQR95EanSfMYhqvP2pWU=" 631 }, 632 { 633 "pname": "Microsoft.Extensions.Logging.Console", 634 - "version": "9.0.2", 635 - "hash": "sha256-yD30lW3ax4JHmZ9QIp1b0ELrXiwykP5KHF/feJGweyE=" 636 }, 637 { 638 "pname": "Microsoft.Extensions.Logging.Debug", 639 - "version": "9.0.2", 640 - "hash": "sha256-0WP9jFTsbXCIhYx/2IFL69mv2+K3Ld7C4QvwY00iOD0=" 641 }, 642 { 643 "pname": "Microsoft.Extensions.Logging.EventLog", 644 - "version": "9.0.2", 645 - "hash": "sha256-e4q/Z6xLq2HzQiKI7npagyEZdkfUe+FbIz3Tg+hPH9g=" 646 }, 647 { 648 "pname": "Microsoft.Extensions.Logging.EventSource", 649 - "version": "9.0.2", 650 - "hash": "sha256-W7yidllNOKxTvgIUqjJ3h55PAIR/XREfbuH+8TUhD0o=" 651 }, 652 { 653 "pname": "Microsoft.Extensions.ObjectPool", ··· 661 }, 662 { 663 "pname": "Microsoft.Extensions.Options", 664 - "version": "8.0.0", 665 - "hash": "sha256-n2m4JSegQKUTlOsKLZUUHHKMq926eJ0w9N9G+I3FoFw=" 666 - }, 667 - { 668 - "pname": "Microsoft.Extensions.Options", 669 "version": "8.0.2", 670 "hash": "sha256-AjcldddddtN/9aH9pg7ClEZycWtFHLi9IPe1GGhNQys=" 671 }, ··· 676 }, 677 { 678 "pname": "Microsoft.Extensions.Options", 679 - "version": "9.0.2", 680 - "hash": "sha256-y2jZfcWx/H6Sx7wklA248r6kPjZmzTTLGxW8ZxrzNLM=" 681 }, 682 { 683 "pname": "Microsoft.Extensions.Options.ConfigurationExtensions", ··· 686 }, 687 { 688 "pname": "Microsoft.Extensions.Options.ConfigurationExtensions", 689 - "version": "8.0.0", 690 - "hash": "sha256-A5Bbzw1kiNkgirk5x8kyxwg9lLTcSngojeD+ocpG1RI=" 691 - }, 692 - { 693 - "pname": "Microsoft.Extensions.Options.ConfigurationExtensions", 694 - "version": "9.0.2", 695 - "hash": "sha256-xOYLRlXDI4gMEoQ+J+sQBNRT2RPDNrSCZkob7qBiV10=" 696 }, 697 { 698 "pname": "Microsoft.Extensions.Primitives", ··· 711 }, 712 { 713 "pname": "Microsoft.Extensions.Primitives", 714 - "version": "9.0.2", 715 - "hash": "sha256-zy/YNMaY47o6yNv2WuYiAJEjtoOF8jlWgsWHqXeSm4s=" 716 }, 717 { 718 "pname": "Microsoft.IdentityModel.Abstractions", 719 - "version": "8.6.0", 720 - "hash": "sha256-0mXOkDKvUikcyCMUcmA7PWl4RlAwwUciKSqTTgLDa3o=" 721 }, 722 { 723 "pname": "Microsoft.IdentityModel.JsonWebTokens", 724 - "version": "8.6.0", 725 - "hash": "sha256-Wey0xjL0n6NCi4HiVFGcDS6+ONPp+ogzb5ZTF7sFt3k=" 726 }, 727 { 728 "pname": "Microsoft.IdentityModel.Logging", 729 - "version": "8.6.0", 730 - "hash": "sha256-4M4EUJDMDgmqdBxlbptnrLNWOLbmzatypDpl30CBUlk=" 731 }, 732 { 733 "pname": "Microsoft.IdentityModel.Protocols", ··· 746 }, 747 { 748 "pname": "Microsoft.IdentityModel.Tokens", 749 - "version": "8.6.0", 750 - "hash": "sha256-gyZpy8h9I09fr7icHaIXaxRTzhstHrrrq2wkd/5vz78=" 751 }, 752 { 753 "pname": "Microsoft.IO.RecyclableMemoryStream", ··· 776 }, 777 { 778 "pname": "Microsoft.OpenApi", 779 - "version": "1.6.22", 780 - "hash": "sha256-DDyPc6DAD/X4PgXlVIYqqU5KLwaIaMpvBml1fACKdjY=" 781 }, 782 { 783 "pname": "Microsoft.Win32.Primitives", ··· 786 }, 787 { 788 "pname": "Microsoft.Win32.SystemEvents", 789 - "version": "9.0.2", 790 - "hash": "sha256-WXgu8y2LT8OtQSVRojumtlTkJVjfvXeZ8N9iRKIW/lI=" 791 }, 792 { 793 "pname": "MimeKit", 794 - "version": "4.10.0", 795 - "hash": "sha256-SLQ7+Yh3o8bbxyRsA5yJgeAOkR8SqMI0vB8VwjQDzl8=" 796 }, 797 { 798 "pname": "MimeTypeMapOfficial", ··· 816 }, 817 { 818 "pname": "NetVips", 819 - "version": "3.0.0", 820 - "hash": "sha256-n3FDtdgEA12gxzfQ2bz5HlMOBnht4mz0jFstBh5CN00=" 821 }, 822 { 823 "pname": "NetVips.Native", 824 - "version": "8.16.0", 825 - "hash": "sha256-bHVoa9fWue4PY6FOIA0o3IU6WcMAK6VQOuQNADKD8S4=" 826 }, 827 { 828 "pname": "NetVips.Native.linux-arm", 829 - "version": "8.16.0", 830 - "hash": "sha256-VY/mUqkeLJZeYvLM1VbEtXFVZPuLgIHK6tvbwq+CjQw=" 831 }, 832 { 833 "pname": "NetVips.Native.linux-arm64", 834 - "version": "8.16.0", 835 - "hash": "sha256-ZXV8UmLFPVlk4tdFmoH/job43iS4ZchpM+gLJdFaoG8=" 836 }, 837 { 838 "pname": "NetVips.Native.linux-musl-arm64", 839 - "version": "8.16.0", 840 - "hash": "sha256-27EmQkg0IQ45tt7I8Gwnh442MuU5ouyIvPU0npcK2sI=" 841 }, 842 { 843 "pname": "NetVips.Native.linux-musl-x64", 844 - "version": "8.16.0", 845 - "hash": "sha256-MMT4wt0YEl7ZDvrmwXMLvmoGzlVZQ97YyHjMSHsJHZs=" 846 }, 847 { 848 "pname": "NetVips.Native.linux-x64", 849 - "version": "8.16.0", 850 - "hash": "sha256-eXSMJoz39utbAy4hiLJ2MTxWpkfdvW62OqhI3nOSYZo=" 851 }, 852 { 853 "pname": "NetVips.Native.osx-arm64", 854 - "version": "8.16.0", 855 - "hash": "sha256-tC2WmGzA/aItXj2dPunVt7Eu6pljV3334TcppN8NGqw=" 856 }, 857 { 858 "pname": "NetVips.Native.osx-x64", 859 - "version": "8.16.0", 860 - "hash": "sha256-yEfcmO33/dVgX5Qm72TouiQzw5yLPvFeveRRf/8gRs0=" 861 }, 862 { 863 "pname": "NetVips.Native.win-arm64", 864 - "version": "8.16.0", 865 - "hash": "sha256-AFM66a+i8qqda8mEuvzt48RopYSh5zDeHE+PigETBKc=" 866 }, 867 { 868 "pname": "NetVips.Native.win-x64", 869 - "version": "8.16.0", 870 - "hash": "sha256-+4j4lkE7wLd8MFKa/O1keT4Hgl3kKBg6PEAcc8dlCwA=" 871 }, 872 { 873 "pname": "NetVips.Native.win-x86", 874 - "version": "8.16.0", 875 - "hash": "sha256-kOE1SAqnf1ls3MQ4UkM4mheU7nKBFGOuFiQj5z8EL98=" 876 }, 877 { 878 "pname": "Newtonsoft.Json", ··· 883 "pname": "Newtonsoft.Json", 884 "version": "11.0.2", 885 "hash": "sha256-YhlAbGfwoxQzxb3Hef4iyV9eGdPQJJNd2GgSR0jsBJ0=" 886 - }, 887 - { 888 - "pname": "NReco.Logging.File", 889 - "version": "1.2.2", 890 - "hash": "sha256-guI+h8t26u/DfYq354CXbdKIBqrKsDAyDZh1wFtDshw=" 891 }, 892 { 893 "pname": "runtime.any.System.Collections", ··· 1101 }, 1102 { 1103 "pname": "Serilog", 1104 - "version": "4.2.0", 1105 - "hash": "sha256-7f3EpCsEbDxXgsuhE430KVI14p7oDUuCtwRpOCqtnbs=" 1106 }, 1107 { 1108 "pname": "Serilog.AspNetCore", ··· 1156 }, 1157 { 1158 "pname": "Serilog.Sinks.File", 1159 - "version": "6.0.0", 1160 - "hash": "sha256-KQmlUpG9ovRpNqKhKe6rz3XMLUjkBqjyQhEm2hV5Sow=" 1161 }, 1162 { 1163 "pname": "Serilog.Sinks.SignalR.Core", ··· 1166 }, 1167 { 1168 "pname": "SharpCompress", 1169 - "version": "0.39.0", 1170 - "hash": "sha256-Me88MMn5NUiw5bugFKCKFRnFSXQKIFZJ+k97Ex6jgZE=" 1171 }, 1172 { 1173 "pname": "SixLabors.ImageSharp", 1174 - "version": "3.1.7", 1175 - "hash": "sha256-jMD/FiIwW1kNhTI6hKig8/QFOO3eTQX/C22cSAcKBH4=" 1176 }, 1177 { 1178 "pname": "SonarAnalyzer.CSharp", 1179 - "version": "10.7.0.110445", 1180 - "hash": "sha256-HIG3Us7EnfaZOLKjxDRCJjaoqwqCdrFuDI2GlMGadp4=" 1181 }, 1182 { 1183 "pname": "sqlite-net-pcl", ··· 1226 }, 1227 { 1228 "pname": "Swashbuckle.AspNetCore", 1229 - "version": "7.3.1", 1230 - "hash": "sha256-ZcTjOzUbSEIrlGPO/7M5C3wRqyhjZggNGJ3Sg6aUjf0=" 1231 }, 1232 { 1233 "pname": "Swashbuckle.AspNetCore.Filters", 1234 - "version": "8.0.2", 1235 - "hash": "sha256-RCFdFvCzUYS850axoGaprr0heFyBFCIu9jzusXJ0YAA=" 1236 }, 1237 { 1238 "pname": "Swashbuckle.AspNetCore.Filters.Abstractions", 1239 - "version": "8.0.2", 1240 - "hash": "sha256-oe6KYmrvaAKu0JpAwxpIiyxSaqfRg2VAyc/KKQX6xFI=" 1241 }, 1242 { 1243 "pname": "Swashbuckle.AspNetCore.Swagger", 1244 - "version": "7.3.1", 1245 - "hash": "sha256-ifpw7iIFjFD1tqWuJeFxxQ9AQv4VKKbg7uk+EMzCISg=" 1246 }, 1247 { 1248 "pname": "Swashbuckle.AspNetCore.SwaggerGen", ··· 1251 }, 1252 { 1253 "pname": "Swashbuckle.AspNetCore.SwaggerGen", 1254 - "version": "7.3.1", 1255 - "hash": "sha256-ZgPqUgcK8iO+1cDqm4JxkJwg9atuj6f9uR2ty5z54Do=" 1256 }, 1257 { 1258 "pname": "Swashbuckle.AspNetCore.SwaggerUI", 1259 - "version": "7.3.1", 1260 - "hash": "sha256-0VmUWgbdW9L7YO+Xb79RsPsEJjXpDj/twLas1OlHlUs=" 1261 }, 1262 { 1263 "pname": "System.AppContext", ··· 1346 }, 1347 { 1348 "pname": "System.Diagnostics.EventLog", 1349 - "version": "9.0.2", 1350 - "hash": "sha256-IoiQbH8To9UqzYgJzYpFbuiRV3KGU85y4ccPTyttP/w=" 1351 }, 1352 { 1353 "pname": "System.Diagnostics.Tools", ··· 1361 }, 1362 { 1363 "pname": "System.Drawing.Common", 1364 - "version": "9.0.2", 1365 - "hash": "sha256-S7IMV4R/nWbZs/YCwI9UwwLHDP57NkfSEIaoYNbRq54=" 1366 }, 1367 { 1368 "pname": "System.Formats.Asn1", ··· 1386 }, 1387 { 1388 "pname": "System.IdentityModel.Tokens.Jwt", 1389 - "version": "8.6.0", 1390 - "hash": "sha256-9usJvCIfrtI6T94wSXKGoL3UjZlE+F4LE4Y5zsD3LxI=" 1391 }, 1392 { 1393 "pname": "System.IO", ··· 1396 }, 1397 { 1398 "pname": "System.IO.Abstractions", 1399 - "version": "22.0.11", 1400 - "hash": "sha256-jFfPplSHoc8HfmLDexMustNaljMFiXK/CdH35vzju+4=" 1401 }, 1402 { 1403 "pname": "System.IO.Compression", ··· 1641 }, 1642 { 1643 "pname": "System.Text.Json", 1644 - "version": "9.0.2", 1645 - "hash": "sha256-kftKUuGgZtF4APmp77U79ws76mEIi+R9+DSVGikA5y8=" 1646 }, 1647 { 1648 "pname": "System.Text.RegularExpressions", ··· 1696 }, 1697 { 1698 "pname": "TestableIO.System.IO.Abstractions", 1699 - "version": "22.0.11", 1700 - "hash": "sha256-zW1WYq/rHJF9DFzbSrVSejepEE32jtO6E0M6xSW3ZTI=" 1701 }, 1702 { 1703 "pname": "TestableIO.System.IO.Abstractions.Wrappers", 1704 - "version": "22.0.11", 1705 - "hash": "sha256-iy8sWpCe2+mG6zICnUT1qMEIz97DPcA6/P6KNonm9aM=" 1706 }, 1707 { 1708 "pname": "Testably.Abstractions.FileSystem.Interface", ··· 1711 }, 1712 { 1713 "pname": "VersOne.Epub", 1714 - "version": "3.3.2", 1715 - "hash": "sha256-jzkD4HDgFMevH8FRYml7UHEwMt7BWG+VpinIPlioIUo=" 1716 }, 1717 { 1718 "pname": "xunit.assert", ··· 1726 }, 1727 { 1728 "pname": "ZstdSharp.Port", 1729 - "version": "0.8.4", 1730 - "hash": "sha256-4bFUNK++6yUOnY7bZQiibClSJUQjH0uIiUbQLBtPWbo=" 1731 } 1732 ]
··· 11 }, 12 { 13 "pname": "BouncyCastle.Cryptography", 14 + "version": "2.5.1", 15 + "hash": "sha256-ISDd8fS6/cIJIXBFDd7F3FQ0wzWkAo4r8dvycb8iT6c=" 16 }, 17 { 18 "pname": "Cronos", 19 + "version": "0.11.0", 20 + "hash": "sha256-xElG27p+D4RrirLAbEhddOAlDgx95pm5KcOX47UAc10=" 21 }, 22 { 23 "pname": "CsvHelper", 24 + "version": "33.1.0", 25 + "hash": "sha256-pEfX4o63xupI7uuwe6qa05One0pJ7UbzzJqLh4Shju8=" 26 }, 27 { 28 "pname": "Docnet.Core", ··· 61 }, 62 { 63 "pname": "Hangfire", 64 + "version": "1.8.20", 65 + "hash": "sha256-54lEtT81UcSf5LMkpo9cwA33lf2JUHqbP3nmfe744jc=" 66 }, 67 { 68 "pname": "Hangfire.AspNetCore", 69 + "version": "1.8.20", 70 + "hash": "sha256-0fjlvnTlikupJO9MVDbWGF0pitF8jeufvcen8RyiHpc=" 71 }, 72 { 73 "pname": "Hangfire.Core", ··· 81 }, 82 { 83 "pname": "Hangfire.Core", 84 + "version": "1.8.20", 85 + "hash": "sha256-m+OTEYX7+jfhJk880KhfOH52d9TD/I1wfgil5gLlt5s=" 86 }, 87 { 88 "pname": "Hangfire.InMemory", ··· 96 }, 97 { 98 "pname": "Hangfire.NetCore", 99 + "version": "1.8.20", 100 + "hash": "sha256-5ioXNuuNaKL7IW438haeSes32r1tu6tXLdebMxFU6Zs=" 101 }, 102 { 103 "pname": "Hangfire.SqlServer", 104 + "version": "1.8.20", 105 + "hash": "sha256-rMT6IywSAt+JzN+y541g29c+2rmHTeDNA0dqT4gnWn0=" 106 }, 107 { 108 "pname": "Hangfire.Storage.SQLite", ··· 111 }, 112 { 113 "pname": "HtmlAgilityPack", 114 + "version": "1.12.1", 115 + "hash": "sha256-qravAvCdB/KjWujRk2GL/kGre/B9XVAP+jewICxiKKo=" 116 }, 117 { 118 "pname": "Humanizer.Core", ··· 121 }, 122 { 123 "pname": "MailKit", 124 + "version": "4.12.1", 125 + "hash": "sha256-fwI0YTbwfzrvdkbATWGbv4D8ugOXgaPO/WFvGxQ9WS8=" 126 }, 127 { 128 "pname": "MarkdownDeep.NET.Core", ··· 136 }, 137 { 138 "pname": "Microsoft.AspNetCore.Authentication.JwtBearer", 139 + "version": "9.0.6", 140 + "hash": "sha256-caq6+66Khlpnxx2AoKz7KZzTsAGtttn30XCpAVWHQ5M=" 141 }, 142 { 143 "pname": "Microsoft.AspNetCore.Authentication.OpenIdConnect", 144 + "version": "9.0.6", 145 + "hash": "sha256-w1oV7FvVCahOMg9RSrCfijhPQKU9DVV4opA2wKK8xLY=" 146 }, 147 { 148 "pname": "Microsoft.AspNetCore.Authorization", ··· 161 }, 162 { 163 "pname": "Microsoft.AspNetCore.Cryptography.Internal", 164 + "version": "9.0.6", 165 + "hash": "sha256-ZKt2tftooxSQifJ6UNA85fAlsesx0QgKv8NmW1jTcCs=" 166 }, 167 { 168 "pname": "Microsoft.AspNetCore.Cryptography.KeyDerivation", 169 + "version": "9.0.6", 170 + "hash": "sha256-r9knJVBbN0S+po6BK20Ak6r9FXK9saTLunchxDqXq+Q=" 171 }, 172 { 173 "pname": "Microsoft.AspNetCore.Hosting.Abstractions", ··· 211 }, 212 { 213 "pname": "Microsoft.AspNetCore.Identity.EntityFrameworkCore", 214 + "version": "9.0.6", 215 + "hash": "sha256-mF/nJQawGgra3Nc/GQQT50l1aHBmI8G1nlotw1tjCRY=" 216 }, 217 { 218 "pname": "Microsoft.AspNetCore.Routing", ··· 316 }, 317 { 318 "pname": "Microsoft.Data.Sqlite.Core", 319 + "version": "9.0.6", 320 + "hash": "sha256-f4WHab5L0S4piVCS4meER7cRcZIGDRaqcND8VS9QJAU=" 321 }, 322 { 323 "pname": "Microsoft.EntityFrameworkCore", 324 + "version": "9.0.6", 325 + "hash": "sha256-B118NSNtOYUihsHsI4741+YUZJGbMja0MUmDm8NRr5k=" 326 }, 327 { 328 "pname": "Microsoft.EntityFrameworkCore.Abstractions", 329 + "version": "9.0.6", 330 + "hash": "sha256-fd+GFr+mqNMwMq1MlN2DjnAMn0kQ75pJWgUBcXSuWv0=" 331 }, 332 { 333 "pname": "Microsoft.EntityFrameworkCore.Analyzers", 334 + "version": "9.0.6", 335 + "hash": "sha256-CDc2Xlo65IhClydJf90eoXktomxDY29UnKfQBZDYtOo=" 336 }, 337 { 338 "pname": "Microsoft.EntityFrameworkCore.Design", 339 + "version": "9.0.6", 340 + "hash": "sha256-+TeQl0uCg/UXZVO36Wa0+8s3z6OmNwdtwM2I8YhZJgk=" 341 }, 342 { 343 "pname": "Microsoft.EntityFrameworkCore.Relational", 344 + "version": "9.0.6", 345 + "hash": "sha256-g9iaI89SSxlopSnfSfU9+lT+K2OcJgFkdn25gq93oak=" 346 }, 347 { 348 "pname": "Microsoft.EntityFrameworkCore.Sqlite", 349 + "version": "9.0.6", 350 + "hash": "sha256-RAX4jmf1eMQBvcgtWUoVoRlagX6kV5hrxAj1LbxH/NY=" 351 }, 352 { 353 "pname": "Microsoft.EntityFrameworkCore.Sqlite.Core", 354 + "version": "9.0.6", 355 + "hash": "sha256-ilqZk5QeIWs1jgqgU/rMOlKld8TEHvCMwehbJ+r8IcI=" 356 }, 357 { 358 "pname": "Microsoft.Extensions.ApiDescription.Server", 359 + "version": "8.0.0", 360 + "hash": "sha256-GceEAtCVtm8xUHjR6obQ6bBJMOf+9d9OQ1iVr48sQbg=" 361 }, 362 { 363 "pname": "Microsoft.Extensions.Caching.Abstractions", 364 + "version": "9.0.6", 365 + "hash": "sha256-NuwtUydPZE7d2ntiz1rT4i9udKXlEV4r/CnM3Ii+fuQ=" 366 }, 367 { 368 "pname": "Microsoft.Extensions.Caching.Memory", 369 + "version": "9.0.6", 370 + "hash": "sha256-qtMzge0A0ZM2oaNNbLAM6ndAudY8I6LQlhUXo4fj1Mg=" 371 }, 372 { 373 "pname": "Microsoft.Extensions.Configuration", 374 + "version": "9.0.6", 375 + "hash": "sha256-Ib0B8qCNNrtcKd3dG0ZeO4cAndb5koNjPUgv9Oyvbns=" 376 }, 377 { 378 + "pname": "Microsoft.Extensions.Configuration.Abstractions", 379 + "version": "3.0.0", 380 + "hash": "sha256-GJDvt3qFAif5ToFjHgs8imCaUER7yvYJghnlYXiHrHU=" 381 }, 382 { 383 "pname": "Microsoft.Extensions.Configuration.Abstractions", 384 + "version": "6.0.0", 385 + "hash": "sha256-Evg+Ynj2QUa6Gz+zqF+bUyfGD0HI5A2fHmxZEXbn3HA=" 386 }, 387 { 388 "pname": "Microsoft.Extensions.Configuration.Abstractions", ··· 396 }, 397 { 398 "pname": "Microsoft.Extensions.Configuration.Abstractions", 399 + "version": "9.0.6", 400 + "hash": "sha256-11bIIn40Qadrlp1MZpQmAlpBHXPcbxB4Gjcp12EUQ1M=" 401 }, 402 { 403 "pname": "Microsoft.Extensions.Configuration.Binder", 404 + "version": "6.0.0", 405 + "hash": "sha256-7NZcKkiXWSuhhVcA/fXHPY/62aGUyMsRdiHm91cWC5Y=" 406 }, 407 { 408 "pname": "Microsoft.Extensions.Configuration.Binder", ··· 411 }, 412 { 413 "pname": "Microsoft.Extensions.Configuration.Binder", 414 + "version": "9.0.6", 415 + "hash": "sha256-+8YG7cvbWUxJgrYJDy+Rk4rIzXS8HV0xU8Bg+3SFoTg=" 416 }, 417 { 418 "pname": "Microsoft.Extensions.Configuration.CommandLine", 419 + "version": "9.0.6", 420 + "hash": "sha256-Mct/NLjPdur4M2h6aApzu9C7HrSpkxFis64wgloQk/g=" 421 }, 422 { 423 "pname": "Microsoft.Extensions.Configuration.EnvironmentVariables", 424 + "version": "9.0.6", 425 + "hash": "sha256-hUJX5Xcj1iIvOr2oqZUfQXVQVMFyQb4OFetvQlW3hNQ=" 426 }, 427 { 428 "pname": "Microsoft.Extensions.Configuration.FileExtensions", 429 + "version": "9.0.6", 430 + "hash": "sha256-C0ChgI6hIRuShF9rSbN6TnRcfJHw2AHu4MtyfRuAKik=" 431 }, 432 { 433 "pname": "Microsoft.Extensions.Configuration.Json", 434 + "version": "9.0.6", 435 + "hash": "sha256-isxHMvYKIY0Jrfh2KHoOxzYnDdMaux3RPlernGCL6Uw=" 436 }, 437 { 438 "pname": "Microsoft.Extensions.Configuration.UserSecrets", 439 + "version": "9.0.6", 440 + "hash": "sha256-3ViPFoe1HzTKcuJkBoT7YadGRCv8woaQj4GRwaa4p+I=" 441 }, 442 { 443 "pname": "Microsoft.Extensions.DependencyInjection", 444 + "version": "9.0.6", 445 + "hash": "sha256-m5vMZj3q3hHQDla/bKbfEk1lUj55p4/bktaqIWAVFRs=" 446 }, 447 { 448 "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", ··· 461 }, 462 { 463 "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", 464 "version": "8.0.2", 465 "hash": "sha256-UfLfEQAkXxDaVPC7foE/J3FVEXd31Pu6uQIhTic3JgY=" 466 }, ··· 471 }, 472 { 473 "pname": "Microsoft.Extensions.DependencyInjection.Abstractions", 474 + "version": "9.0.6", 475 + "hash": "sha256-40rY38OwSqueIWr/KMvJX9u+vipN+AaRQ6eNCZLqrog=" 476 }, 477 { 478 "pname": "Microsoft.Extensions.DependencyModel", ··· 486 }, 487 { 488 "pname": "Microsoft.Extensions.DependencyModel", 489 + "version": "9.0.6", 490 + "hash": "sha256-9cKF9wZidauZJ6GmwyqQ5P9YnrOlKdMZXzTLJWZflwo=" 491 }, 492 { 493 "pname": "Microsoft.Extensions.Diagnostics", 494 + "version": "9.0.6", 495 + "hash": "sha256-PoBv4gMAh53SAujZ3k7YUPuM/abxi5nHFvlHm67upEA=" 496 }, 497 { 498 "pname": "Microsoft.Extensions.Diagnostics.Abstractions", ··· 501 }, 502 { 503 "pname": "Microsoft.Extensions.Diagnostics.Abstractions", 504 + "version": "9.0.6", 505 + "hash": "sha256-3Bl1nIg0NoTbHaIXWmaRxutoxV1PSy6jlmKwPLdc5r4=" 506 }, 507 { 508 "pname": "Microsoft.Extensions.FileProviders.Abstractions", ··· 521 }, 522 { 523 "pname": "Microsoft.Extensions.FileProviders.Abstractions", 524 + "version": "9.0.6", 525 + "hash": "sha256-/1jaqN44SNaRkyfwhH3KGDq/St1M1izCGUaPgkC9dIU=" 526 }, 527 { 528 "pname": "Microsoft.Extensions.FileProviders.Physical", 529 + "version": "9.0.6", 530 + "hash": "sha256-vOKzQJqGkiGn0EyAx4Gx5po75H40g3rScySssce8vDs=" 531 }, 532 { 533 "pname": "Microsoft.Extensions.FileSystemGlobbing", 534 + "version": "9.0.6", 535 + "hash": "sha256-ehBRwCImAQ7n8XGI5KLtcp5+IWCd4GJO5l2gKtN4C08=" 536 }, 537 { 538 "pname": "Microsoft.Extensions.Hosting", 539 + "version": "9.0.6", 540 + "hash": "sha256-q/S5mPcZPfZz/fXofYj3KUi6CmUHTIV0yCtVPyXVsEU=" 541 }, 542 { 543 "pname": "Microsoft.Extensions.Hosting.Abstractions", ··· 556 }, 557 { 558 "pname": "Microsoft.Extensions.Hosting.Abstractions", 559 + "version": "9.0.6", 560 + "hash": "sha256-1Mzyk2Y5WZX0hCxpYpNumCdCTOsZsA+CUMqHOB07JrE=" 561 }, 562 { 563 "pname": "Microsoft.Extensions.Identity.Core", 564 + "version": "9.0.6", 565 + "hash": "sha256-gFnaok1z5JHYD4L8pkU6kPesPjh48iS+6fj0E/nYiGc=" 566 }, 567 { 568 "pname": "Microsoft.Extensions.Identity.Stores", 569 + "version": "9.0.6", 570 + "hash": "sha256-t2kjZDRxOkOB/vLLaZccojGlk5G1ZbqrxafWAmQCIj4=" 571 }, 572 { 573 "pname": "Microsoft.Extensions.Logging", ··· 576 }, 577 { 578 "pname": "Microsoft.Extensions.Logging", 579 "version": "9.0.0", 580 "hash": "sha256-kR16c+N8nQrWeYLajqnXPg7RiXjZMSFLnKLEs4VfjcM=" 581 }, 582 { 583 "pname": "Microsoft.Extensions.Logging", 584 + "version": "9.0.6", 585 + "hash": "sha256-XFcRh5/aGtsNIUnEOLdusdpCVD7K6/6Ixwc2U/+a3c8=" 586 }, 587 { 588 "pname": "Microsoft.Extensions.Logging.Abstractions", ··· 591 }, 592 { 593 "pname": "Microsoft.Extensions.Logging.Abstractions", 594 + "version": "8.0.0", 595 + "hash": "sha256-Jmddjeg8U5S+iBTwRlVAVLeIHxc4yrrNgqVMOB7EjM4=" 596 + }, 597 + { 598 + "pname": "Microsoft.Extensions.Logging.Abstractions", 599 "version": "8.0.2", 600 "hash": "sha256-cHpe8X2BgYa5DzulZfq24rg8O2K5Lmq2OiLhoyAVgJc=" 601 }, ··· 606 }, 607 { 608 "pname": "Microsoft.Extensions.Logging.Abstractions", 609 + "version": "9.0.6", 610 + "hash": "sha256-lhOMYT4+hua7SlgASGFBDhOkrNOsy35WyIxU3nVsD08=" 611 }, 612 { 613 "pname": "Microsoft.Extensions.Logging.Configuration", 614 + "version": "9.0.6", 615 + "hash": "sha256-xc/isehpXfDHIKZ8QOywNBaYhACL8RgUx0bv9qa9OzQ=" 616 }, 617 { 618 "pname": "Microsoft.Extensions.Logging.Console", 619 + "version": "9.0.6", 620 + "hash": "sha256-oxXnWS5RrxblaIwy5+g/KtztfvPmW/yZGaKlsy7Ft+E=" 621 }, 622 { 623 "pname": "Microsoft.Extensions.Logging.Debug", 624 + "version": "9.0.6", 625 + "hash": "sha256-vWFQxQMsCOpkJB43ErwMGsBbhFhf/OMgOJf9NMfBmSk=" 626 }, 627 { 628 "pname": "Microsoft.Extensions.Logging.EventLog", 629 + "version": "9.0.6", 630 + "hash": "sha256-Lkf+emnZ4zzEkx8QdKvJ4SeFeKX0ckEnyIqn3sVOUqY=" 631 }, 632 { 633 "pname": "Microsoft.Extensions.Logging.EventSource", 634 + "version": "9.0.6", 635 + "hash": "sha256-5V4gLVjJfBruNhxTVFE7Xx29u0oPL9ISe5U7rTV91Fg=" 636 }, 637 { 638 "pname": "Microsoft.Extensions.ObjectPool", ··· 646 }, 647 { 648 "pname": "Microsoft.Extensions.Options", 649 "version": "8.0.2", 650 "hash": "sha256-AjcldddddtN/9aH9pg7ClEZycWtFHLi9IPe1GGhNQys=" 651 }, ··· 656 }, 657 { 658 "pname": "Microsoft.Extensions.Options", 659 + "version": "9.0.6", 660 + "hash": "sha256-QXLt+WeCjH3pnbs0UVNXmskuWJtBrbNHOV8Of8w3teg=" 661 }, 662 { 663 "pname": "Microsoft.Extensions.Options.ConfigurationExtensions", ··· 666 }, 667 { 668 "pname": "Microsoft.Extensions.Options.ConfigurationExtensions", 669 + "version": "9.0.6", 670 + "hash": "sha256-/aAiaoQqvXBWPqwKogYSVzkQg+Qvg0GWLImk3+W1FKc=" 671 }, 672 { 673 "pname": "Microsoft.Extensions.Primitives", ··· 686 }, 687 { 688 "pname": "Microsoft.Extensions.Primitives", 689 + "version": "9.0.6", 690 + "hash": "sha256-hO2BmhEhL5sJUv0cf37jhsjr+gRCAJnQKOj38RKxJvo=" 691 }, 692 { 693 "pname": "Microsoft.IdentityModel.Abstractions", 694 + "version": "8.12.0", 695 + "hash": "sha256-xRK1JBycHk7WRcLgVsibjgiuLqJIiSxBTHu+FkJZ1xI=" 696 }, 697 { 698 "pname": "Microsoft.IdentityModel.JsonWebTokens", 699 + "version": "8.12.0", 700 + "hash": "sha256-baDfyzHdTEiBl0bx8VYY9VpRzHi5pROMaKYW8KyevFY=" 701 }, 702 { 703 "pname": "Microsoft.IdentityModel.Logging", 704 + "version": "8.12.0", 705 + "hash": "sha256-ujv1tXP9oQacoeCoRxxICgf4ERfWhxC19W8EyybDJ18=" 706 }, 707 { 708 "pname": "Microsoft.IdentityModel.Protocols", ··· 721 }, 722 { 723 "pname": "Microsoft.IdentityModel.Tokens", 724 + "version": "8.12.0", 725 + "hash": "sha256-T9UoF+Z+bWnM+qFPoT+BzZF0MKZ6/kd7BoFJwiBUnxA=" 726 }, 727 { 728 "pname": "Microsoft.IO.RecyclableMemoryStream", ··· 751 }, 752 { 753 "pname": "Microsoft.OpenApi", 754 + "version": "1.6.23", 755 + "hash": "sha256-YD2oxM/tlNpK5xUeHF85xdqcpBzHioUSyRjpN2A7KcY=" 756 }, 757 { 758 "pname": "Microsoft.Win32.Primitives", ··· 761 }, 762 { 763 "pname": "Microsoft.Win32.SystemEvents", 764 + "version": "9.0.6", 765 + "hash": "sha256-iIS1YZ8X8Zfahg2jOW3ODCZwmSSsp96epu+kT+wieQg=" 766 }, 767 { 768 "pname": "MimeKit", 769 + "version": "4.12.0", 770 + "hash": "sha256-4i/RvXyXQsb6LlEs7tZWz5d5ab8mw3R8Wwp7FXSbMaA=" 771 }, 772 { 773 "pname": "MimeTypeMapOfficial", ··· 791 }, 792 { 793 "pname": "NetVips", 794 + "version": "3.1.0", 795 + "hash": "sha256-ZxbN+5JCLjyH23/2NPX/U0+5kbG20knpzouaZjpcrnA=" 796 }, 797 { 798 "pname": "NetVips.Native", 799 + "version": "8.17.0.1", 800 + "hash": "sha256-YrXEAP1OOQiYBKC4zfDnQQdsoK1SvbDzJIO97pij/dQ=" 801 }, 802 { 803 "pname": "NetVips.Native.linux-arm", 804 + "version": "8.17.0.1", 805 + "hash": "sha256-wI4MKuz850GngeYPEjIe31jZgZewcEz43KRs7VAV6aQ=" 806 }, 807 { 808 "pname": "NetVips.Native.linux-arm64", 809 + "version": "8.17.0.1", 810 + "hash": "sha256-ZXHK3qCvg04TXvgWnSX2gm7B7wjESCUhFq54YVLZ7UQ=" 811 }, 812 { 813 "pname": "NetVips.Native.linux-musl-arm64", 814 + "version": "8.17.0.1", 815 + "hash": "sha256-V8yqPnCPKNR2dQXu4hzwlOkwxAFjgQN+IPF+FC8Lr+M=" 816 }, 817 { 818 "pname": "NetVips.Native.linux-musl-x64", 819 + "version": "8.17.0.1", 820 + "hash": "sha256-D+Pnme5SH8NaUc4cnRLM+bsbl6PppfGKLyKWQROfmjA=" 821 }, 822 { 823 "pname": "NetVips.Native.linux-x64", 824 + "version": "8.17.0.1", 825 + "hash": "sha256-svruN0uUM29ogRU2L5sr6YdIgPuub67WvrY2ZMUigbs=" 826 }, 827 { 828 "pname": "NetVips.Native.osx-arm64", 829 + "version": "8.17.0.1", 830 + "hash": "sha256-K7dVwkEcDKhAGpU+Y4W8KS6eVNPplDIFDcfB0ueTTxw=" 831 }, 832 { 833 "pname": "NetVips.Native.osx-x64", 834 + "version": "8.17.0.1", 835 + "hash": "sha256-3V3Ht/wiOEOasxLBG7KABtGiy2zCDZL0XjGNHjt9dM4=" 836 }, 837 { 838 "pname": "NetVips.Native.win-arm64", 839 + "version": "8.17.0.1", 840 + "hash": "sha256-iVI049MGnGoqZqq87qkQnQKKSKt5ShrUqlP0DVFyTpI=" 841 }, 842 { 843 "pname": "NetVips.Native.win-x64", 844 + "version": "8.17.0.1", 845 + "hash": "sha256-vkCIMtzO7Uwf4rPmgLW/sO/LIXhS39O925pk+DbkhQA=" 846 }, 847 { 848 "pname": "NetVips.Native.win-x86", 849 + "version": "8.17.0.1", 850 + "hash": "sha256-XN6+Ma3hTwCHv6A9A/7cP46OkNMtHE57b3ny3BBN7wo=" 851 }, 852 { 853 "pname": "Newtonsoft.Json", ··· 858 "pname": "Newtonsoft.Json", 859 "version": "11.0.2", 860 "hash": "sha256-YhlAbGfwoxQzxb3Hef4iyV9eGdPQJJNd2GgSR0jsBJ0=" 861 }, 862 { 863 "pname": "runtime.any.System.Collections", ··· 1071 }, 1072 { 1073 "pname": "Serilog", 1074 + "version": "4.3.0", 1075 + "hash": "sha256-jyIy4BjsyFXge3aO4GRFAdnX4/rz1MHfBkBDIpCDsTw=" 1076 }, 1077 { 1078 "pname": "Serilog.AspNetCore", ··· 1126 }, 1127 { 1128 "pname": "Serilog.Sinks.File", 1129 + "version": "7.0.0", 1130 + "hash": "sha256-LxZYUoUPkCjIIVarJilnXnqQiMrFNJtoRilmzTNtUjo=" 1131 }, 1132 { 1133 "pname": "Serilog.Sinks.SignalR.Core", ··· 1136 }, 1137 { 1138 "pname": "SharpCompress", 1139 + "version": "0.40.0", 1140 + "hash": "sha256-pxz5ef//xOUClwuyflO0eLAfUItFcwfq74Cf0Hj5c1E=" 1141 }, 1142 { 1143 "pname": "SixLabors.ImageSharp", 1144 + "version": "3.1.10", 1145 + "hash": "sha256-6bVTSCxLY8Dt+9lpo4F4xEtMv5oPve2vS76O/lcuIok=" 1146 }, 1147 { 1148 "pname": "SonarAnalyzer.CSharp", 1149 + "version": "10.11.0.117924", 1150 + "hash": "sha256-A+5SRnNxUQiZPTPitY5duzstu/opDQGxwpGfQWWKDOk=" 1151 }, 1152 { 1153 "pname": "sqlite-net-pcl", ··· 1196 }, 1197 { 1198 "pname": "Swashbuckle.AspNetCore", 1199 + "version": "9.0.1", 1200 + "hash": "sha256-rJFeYQgpQ6O3nK0I0ovzh5k8NA/Hzp6kIxKRBryBBBw=" 1201 }, 1202 { 1203 "pname": "Swashbuckle.AspNetCore.Filters", 1204 + "version": "8.0.3", 1205 + "hash": "sha256-ZRSXCuRoo+t489TxEb9acXKrcdincwt937ydFkF7CuU=" 1206 }, 1207 { 1208 "pname": "Swashbuckle.AspNetCore.Filters.Abstractions", 1209 + "version": "8.0.3", 1210 + "hash": "sha256-I7ubMVx9O9i3+vOWPjJHQaNvIhyHvMtlyGxFXbd7ChQ=" 1211 }, 1212 { 1213 "pname": "Swashbuckle.AspNetCore.Swagger", 1214 + "version": "9.0.1", 1215 + "hash": "sha256-MgjUvPjRdrSVALtJL+kQZsL0siNVPUhVKzsc6VMKsLM=" 1216 }, 1217 { 1218 "pname": "Swashbuckle.AspNetCore.SwaggerGen", ··· 1221 }, 1222 { 1223 "pname": "Swashbuckle.AspNetCore.SwaggerGen", 1224 + "version": "9.0.1", 1225 + "hash": "sha256-yRYM43099u0sH9uozOWAHSj0uLBOSEAp1zzR4RJCYEU=" 1226 }, 1227 { 1228 "pname": "Swashbuckle.AspNetCore.SwaggerUI", 1229 + "version": "9.0.1", 1230 + "hash": "sha256-R1c/a5mMqstqSwm/PIj6FYa0fimE7ry4KibY6PUAuZQ=" 1231 }, 1232 { 1233 "pname": "System.AppContext", ··· 1316 }, 1317 { 1318 "pname": "System.Diagnostics.EventLog", 1319 + "version": "9.0.6", 1320 + "hash": "sha256-Blj+uqyTHKp/qPkf/jM9wYC6xPcaaVZqE/jUBAQXmGY=" 1321 }, 1322 { 1323 "pname": "System.Diagnostics.Tools", ··· 1331 }, 1332 { 1333 "pname": "System.Drawing.Common", 1334 + "version": "9.0.6", 1335 + "hash": "sha256-uQDdDVOu3G39PPa1SbE7bHfTzQBAGzL705UklWl/y2I=" 1336 }, 1337 { 1338 "pname": "System.Formats.Asn1", ··· 1356 }, 1357 { 1358 "pname": "System.IdentityModel.Tokens.Jwt", 1359 + "version": "8.12.0", 1360 + "hash": "sha256-lDwnRAe7YDT+Qi0b3BWzI4GK0YTztXIMXo++GLMARJI=" 1361 }, 1362 { 1363 "pname": "System.IO", ··· 1366 }, 1367 { 1368 "pname": "System.IO.Abstractions", 1369 + "version": "22.0.14", 1370 + "hash": "sha256-Pi9mxp9Zt/ksfh1f6Su6t/rjFKb6SRR0RbVbLjGlJoQ=" 1371 }, 1372 { 1373 "pname": "System.IO.Compression", ··· 1611 }, 1612 { 1613 "pname": "System.Text.Json", 1614 + "version": "9.0.6", 1615 + "hash": "sha256-WC/QbZhTaoZ3PbDKcFvJwMIA4xLUdnMrAXGlOW87VNY=" 1616 }, 1617 { 1618 "pname": "System.Text.RegularExpressions", ··· 1666 }, 1667 { 1668 "pname": "TestableIO.System.IO.Abstractions", 1669 + "version": "22.0.14", 1670 + "hash": "sha256-DGtmN6InZDbI+jaw5j9h8308gopYxk0elRvVfZFjg9o=" 1671 }, 1672 { 1673 "pname": "TestableIO.System.IO.Abstractions.Wrappers", 1674 + "version": "22.0.14", 1675 + "hash": "sha256-FiVXyMKdep1aJm7Dxe3bP5S5WQ9aM2kCjePUhSi+cJY=" 1676 }, 1677 { 1678 "pname": "Testably.Abstractions.FileSystem.Interface", ··· 1681 }, 1682 { 1683 "pname": "VersOne.Epub", 1684 + "version": "3.3.4", 1685 + "hash": "sha256-BzUtRaxKkaG7tmXbvnWFM9vjf4g5XwhwnMUIdQzGlns=" 1686 }, 1687 { 1688 "pname": "xunit.assert", ··· 1696 }, 1697 { 1698 "pname": "ZstdSharp.Port", 1699 + "version": "0.8.5", 1700 + "hash": "sha256-+UQFeU64md0LlSf9nMXif6hHnfYEKm+WRyYd0Vo2QvI=" 1701 } 1702 ]
-147
pkgs/servers/web-apps/kavita/restore-migrations.diff
··· 1 - diff --git a/API/Data/ManualMigrations/MigrateDisableScrobblingOnComicLibraries.cs b/API/Data/ManualMigrations/MigrateDisableScrobblingOnComicLibraries.cs 2 - new file mode 100644 3 - index 00000000..0de7bf5d 4 - --- /dev/null 5 - +++ b/API/Data/ManualMigrations/MigrateDisableScrobblingOnComicLibraries.cs 6 - @@ -0,0 +1,38 @@ 7 - +using System.Linq; 8 - +using System.Threading.Tasks; 9 - +using API.Entities.Enums; 10 - +using Microsoft.EntityFrameworkCore; 11 - +using Microsoft.Extensions.Logging; 12 - + 13 - +namespace API.Data.ManualMigrations; 14 - + 15 - +/// <summary> 16 - +/// v0.7.4 introduced Scrobbling with Kavita+. By default, it is on, but Comic libraries have no scrobble providers, so disable 17 - +/// </summary> 18 - +public static class MigrateDisableScrobblingOnComicLibraries 19 - +{ 20 - + public static async Task Migrate(IUnitOfWork unitOfWork, DataContext dataContext, ILogger<Program> logger) 21 - + { 22 - + if (!await dataContext.Library.Where(s => s.Type == LibraryType.Comic).Where(l => l.AllowScrobbling).AnyAsync()) 23 - + { 24 - + return; 25 - + } 26 - + logger.LogInformation("Running MigrateDisableScrobblingOnComicLibraries migration. Please be patient, this may take some time"); 27 - + 28 - + 29 - + foreach (var lib in await dataContext.Library.Where(s => s.Type == LibraryType.Comic).Where(l => l.AllowScrobbling).ToListAsync()) 30 - + { 31 - + lib.AllowScrobbling = false; 32 - + unitOfWork.LibraryRepository.Update(lib); 33 - + } 34 - + 35 - + if (unitOfWork.HasChanges()) 36 - + { 37 - + await unitOfWork.CommitAsync(); 38 - + } 39 - + 40 - + logger.LogInformation("MigrateDisableScrobblingOnComicLibraries migration finished"); 41 - + 42 - + } 43 - + 44 - +} 45 - diff --git a/API/Data/ManualMigrations/MigrateLoginRoles.cs b/API/Data/ManualMigrations/MigrateLoginRoles.cs 46 - new file mode 100644 47 - index 00000000..f649908a 48 - --- /dev/null 49 - +++ b/API/Data/ManualMigrations/MigrateLoginRoles.cs 50 - @@ -0,0 +1,36 @@ 51 - +using System.Threading.Tasks; 52 - +using API.Constants; 53 - +using API.Entities; 54 - +using Microsoft.AspNetCore.Identity; 55 - +using Microsoft.Extensions.Logging; 56 - + 57 - +namespace API.Data.ManualMigrations; 58 - + 59 - +/// <summary> 60 - +/// Added in v0.7.1.18 61 - +/// </summary> 62 - +public static class MigrateLoginRoles 63 - +{ 64 - + /// <summary> 65 - + /// Will not run if any users have the <see cref="PolicyConstants.LoginRole"/> role already 66 - + /// </summary> 67 - + /// <param name="unitOfWork"></param> 68 - + /// <param name="userManager"></param> 69 - + /// <param name="logger"></param> 70 - + public static async Task Migrate(IUnitOfWork unitOfWork, UserManager<AppUser> userManager, ILogger<Program> logger) 71 - + { 72 - + var usersWithRole = await userManager.GetUsersInRoleAsync(PolicyConstants.LoginRole); 73 - + if (usersWithRole.Count != 0) return; 74 - + 75 - + logger.LogCritical("Running MigrateLoginRoles migration"); 76 - + 77 - + var allUsers = await unitOfWork.UserRepository.GetAllUsersAsync(); 78 - + foreach (var user in allUsers) 79 - + { 80 - + await userManager.RemoveFromRoleAsync(user, PolicyConstants.LoginRole); 81 - + await userManager.AddToRoleAsync(user, PolicyConstants.LoginRole); 82 - + } 83 - + 84 - + logger.LogInformation("MigrateLoginRoles migration complete"); 85 - + } 86 - +} 87 - diff --git a/API/Data/ManualMigrations/MigrateRemoveWebPSettingRows.cs b/API/Data/ManualMigrations/MigrateRemoveWebPSettingRows.cs 88 - new file mode 100644 89 - index 00000000..07e98ef6 90 - --- /dev/null 91 - +++ b/API/Data/ManualMigrations/MigrateRemoveWebPSettingRows.cs 92 - @@ -0,0 +1,31 @@ 93 - +using System.Threading.Tasks; 94 - +using API.Entities.Enums; 95 - +using Microsoft.Extensions.Logging; 96 - + 97 - +namespace API.Data.ManualMigrations; 98 - + 99 - +/// <summary> 100 - +/// Added in v0.7.2.7/v0.7.3 in which the ConvertXToWebP Setting keys were removed. This migration will remove them. 101 - +/// </summary> 102 - +public static class MigrateRemoveWebPSettingRows 103 - +{ 104 - + public static async Task Migrate(IUnitOfWork unitOfWork, ILogger<Program> logger) 105 - + { 106 - + logger.LogCritical("Running MigrateRemoveWebPSettingRows migration - Please be patient, this may take some time. This is not an error"); 107 - + 108 - + var key = await unitOfWork.SettingsRepository.GetSettingAsync(ServerSettingKey.ConvertBookmarkToWebP); 109 - + var key2 = await unitOfWork.SettingsRepository.GetSettingAsync(ServerSettingKey.ConvertCoverToWebP); 110 - + if (key == null && key2 == null) 111 - + { 112 - + logger.LogCritical("Running MigrateRemoveWebPSettingRows migration - complete. Nothing to do"); 113 - + return; 114 - + } 115 - + 116 - + unitOfWork.SettingsRepository.Remove(key); 117 - + unitOfWork.SettingsRepository.Remove(key2); 118 - + 119 - + await unitOfWork.CommitAsync(); 120 - + 121 - + logger.LogCritical("Running MigrateRemoveWebPSettingRows migration - Completed. This is not an error"); 122 - + } 123 - +} 124 - diff --git a/API/Startup.cs b/API/Startup.cs 125 - index 21c4fa45..04f4a077 100644 126 - --- a/API/Startup.cs 127 - +++ b/API/Startup.cs 128 - @@ -232,11 +232,19 @@ public class Startup 129 - Task.Run(async () => 130 - { 131 - // Apply all migrations on startup 132 - + var userManager = serviceProvider.GetRequiredService<UserManager<AppUser>>(); 133 - var dataContext = serviceProvider.GetRequiredService<DataContext>(); 134 - 135 - 136 - logger.LogInformation("Running Migrations"); 137 - 138 - + // v0.7.2 139 - + await MigrateLoginRoles.Migrate(unitOfWork, userManager, logger); 140 - + // v0.7.3 141 - + await MigrateRemoveWebPSettingRows.Migrate(unitOfWork, logger); 142 - + // v0.7.4 143 - + await MigrateDisableScrobblingOnComicLibraries.Migrate(unitOfWork, dataContext, logger); 144 - + 145 - // v0.7.9 146 - await MigrateUserLibrarySideNavStream.Migrate(unitOfWork, dataContext, logger); 147 -
···