diff --git a/CHANGELOG.md b/CHANGELOG.md index 5870c07..83c73e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.0.41] - 2023-11-14 +### Changed +- Upgraded to .NET8 to see if downloader perf improves. + ## [2.0.40] - 2023-10-03 ### Changed - Symlink downloader fixes. diff --git a/Dockerfile b/Dockerfile index 60d217f..25731b0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -21,7 +21,7 @@ RUN \ RUN ls -FCla /appclient/root # Stage 2 - Build the backend -FROM mcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim-amd64 AS dotnet-build-env +FROM mcr.microsoft.com/dotnet/sdk:8.0-bookworm-slim-amd64 AS dotnet-build-env ARG TARGETPLATFORM ENV TARGETPLATFORM=${TARGETPLATFORM:-linux/amd64} ARG BUILDPLATFORM @@ -71,7 +71,7 @@ RUN \ echo "**** Install pre-reqs ****" && \ apk add bash icu-libs krb5-libs libgcc libintl libssl1.1 libstdc++ zlib && \ echo "**** Installing dotnet ****" && \ - apk add aspnetcore6-runtime && \ + apk add aspnetcore8-runtime && \ echo "**** Setting permissions ****" && \ chown -R abc:abc /data && \ rm -rf \ diff --git a/README.md b/README.md index 4a075a4..15ba322 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ This is a web interface to manage your torrents on Real-Debrid, AllDebrid or Pre - Download all files from Real-Debrid, AllDebrid or Premiumize to your local machine automatically - Unpack all files when finished downloading - Implements a fake qBittorrent API so you can hook up other applications like Sonarr, Radarr or Couchpotato. -- Built with Angular 15 and .NET 6 +- Built with Angular 15 and .NET 8 **You will need a Premium service at Real-Debrid, AllDebrid or Premiumize!** @@ -73,7 +73,7 @@ Replace the paths in `volumes` as in the above step. Instead of running in Docker you can install it as a service in Windows or Linux. ## Windows Service -1. Make sure you have the ASP.NET Core Runtime 6 installed: [https://dotnet.microsoft.com/download/dotnet/6.0](https://dotnet.microsoft.com/download/dotnet/6.0) +1. Make sure you have the ASP.NET Core Runtime 8 installed: [https://dotnet.microsoft.com/download/dotnet/8.0](https://dotnet.microsoft.com/download/dotnet/8.0) 1. Get the latest zip file from the Releases page and extract it to your host. 1. Open the `appsettings.json` file and replace the `LogLevel` `Path` to a path on your host. 1. In `appsettings.json` replace the `Database` `Path` to a path on your host. @@ -92,7 +92,7 @@ Instead of running in Docker you can install it as a service in Linux. ```rm packages-microsoft-prod.deb``` - ```sudo apt-get update && sudo apt-get install -y dotnet-sdk-6.0``` + ```sudo apt-get update && sudo apt-get install -y dotnet-sdk-8.0``` 2. Get latest archive from [releases](https://github.com/rogerfar/rdt-client/releases): ```wget ``` @@ -218,7 +218,7 @@ By default the application runs in the root of your hosted address (i.e. https:/ - NodeJS - NPM - Angular CLI -- .NET 6 +- .NET 8 - Visual Studio 2022 - (optional) Resharper diff --git a/client/src/app/navbar/navbar.component.html b/client/src/app/navbar/navbar.component.html index 189eccc..adea8df 100644 --- a/client/src/app/navbar/navbar.component.html +++ b/client/src/app/navbar/navbar.component.html @@ -55,7 +55,7 @@ Profile Logout - Version 2.0.40 + Version 2.0.41 diff --git a/package.json b/package.json index 2a84e0d..090973a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rdt-client", - "version": "2.0.40", + "version": "2.0.41", "description": "This is a web interface to manage your torrents on Real-Debrid.", "main": "index.js", "dependencies": { diff --git a/server/RdtClient.Data/RdtClient.Data.csproj b/server/RdtClient.Data/RdtClient.Data.csproj index 9997fbb..9bdd0a3 100644 --- a/server/RdtClient.Data/RdtClient.Data.csproj +++ b/server/RdtClient.Data/RdtClient.Data.csproj @@ -1,22 +1,22 @@ - net6.0 + net8.0 enable enable latest - - - - - + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/server/RdtClient.Service/RdtClient.Service.csproj b/server/RdtClient.Service/RdtClient.Service.csproj index 4c693ab..fc5b518 100644 --- a/server/RdtClient.Service/RdtClient.Service.csproj +++ b/server/RdtClient.Service/RdtClient.Service.csproj @@ -1,7 +1,7 @@  - net6.0 + net8.0 enable enable latest @@ -15,9 +15,9 @@ - + - + diff --git a/server/RdtClient.Service/Services/QBittorrent.cs b/server/RdtClient.Service/Services/QBittorrent.cs index 08cd09f..b28907c 100644 --- a/server/RdtClient.Service/Services/QBittorrent.cs +++ b/server/RdtClient.Service/Services/QBittorrent.cs @@ -424,22 +424,22 @@ public class QBittorrent switch (Settings.Get.Integrations.Default.FinishedAction) { case TorrentFinishedAction.RemoveAllTorrents: - _logger.LogDebug($"Removing torrents from Real-Debrid and Real-Debrid Client, no files", torrent); + _logger.LogDebug("Removing torrents from Real-Debrid and Real-Debrid Client, no files"); await _torrents.Delete(torrent.TorrentId, true, true, false); break; case TorrentFinishedAction.RemoveRealDebrid: - _logger.LogDebug($"Removing torrents from Real-Debrid, no files", torrent); + _logger.LogDebug("Removing torrents from Real-Debrid, no files"); await _torrents.Delete(torrent.TorrentId, false, true, false); break; case TorrentFinishedAction.RemoveClient: - _logger.LogDebug($"Removing torrents from client, no files", torrent); + _logger.LogDebug("Removing torrents from client, no files"); await _torrents.Delete(torrent.TorrentId, true, false, false); break; case TorrentFinishedAction.None: - _logger.LogDebug($"Not removing torrents or files", torrent); + _logger.LogDebug("Not removing torrents or files"); break; default: diff --git a/server/RdtClient.Web/Controllers/QBittorrentController.cs b/server/RdtClient.Web/Controllers/QBittorrentController.cs index 7136546..3c299fd 100644 --- a/server/RdtClient.Web/Controllers/QBittorrentController.cs +++ b/server/RdtClient.Web/Controllers/QBittorrentController.cs @@ -237,7 +237,7 @@ public class QBittorrentController : Controller } [Authorize(Policy = "AuthSetting")] - [Route("torrents/topPrio")] + [Route("torrents/pause")] [HttpPost] public async Task TorrentsPausePost([FromForm] QBTorrentsHashesRequest request) { @@ -265,7 +265,7 @@ public class QBittorrentController : Controller } [Authorize(Policy = "AuthSetting")] - [Route("torrents/topPrio")] + [Route("torrents/resume")] [HttpPost] public async Task TorrentsResumePost([FromForm] QBTorrentsHashesRequest request) { diff --git a/server/RdtClient.Web/Program.cs b/server/RdtClient.Web/Program.cs index 585a52b..4bb29de 100644 --- a/server/RdtClient.Web/Program.cs +++ b/server/RdtClient.Web/Program.cs @@ -1,6 +1,7 @@ using System.Diagnostics; using System.Net; using Microsoft.AspNetCore.Authentication.Cookies; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Identity; using Microsoft.Extensions.Hosting.WindowsServices; using RdtClient.Data.Data; @@ -174,14 +175,11 @@ try app.UseRouting(); app.UseAuthentication(); - app.UseAuthorization(); - - app.UseEndpoints(endpoints => - { - endpoints.MapHub("/hub"); - endpoints.MapControllers(); - }); + + app.MapHub("/hub"); + + app.MapControllers(); app.MapWhen(x => !x.Request.Path.StartsWithSegments("/api"), routeBuilder => { diff --git a/server/RdtClient.Web/RdtClient.Web.csproj b/server/RdtClient.Web/RdtClient.Web.csproj index cfb2e5b..57e291f 100644 --- a/server/RdtClient.Web/RdtClient.Web.csproj +++ b/server/RdtClient.Web/RdtClient.Web.csproj @@ -1,10 +1,10 @@ - net6.0 + net8.0 Exe 94c24cba-f03f-4453-a671-3640b517c573 - 2.0.40 + 2.0.41 enable enable latest @@ -29,17 +29,17 @@ - - - - + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - + + + +