From 34b020138b9165bdbe10bf9b1d11a3244874c887 Mon Sep 17 00:00:00 2001 From: Symlink420 <226738537+Symlink420@users.noreply.github.com> Date: Mon, 23 Feb 2026 02:51:20 +0100 Subject: [PATCH] Replace deprecated packages: migrate to BCrypt.Net-Next and Asp.Versioning --- ...orkloadAdvertisingManifestSentinel10.0.100 | 0 .../10.0.103.aspNetCertificateSentinel | 0 .../.dotnet/10.0.103.dotnetFirstUseSentinel | 0 .../.dotnet/10.0.103.toolpath.sentinel | 0 ...103_IsDockerContainer.dotnetUserLevelCache | 1 + .../10.0.103_MachineId.dotnetUserLevelCache | 1 + .../.dotnet/MachineId.v1.dotnetUserLevelCache | 1 + ...15052_008a2be6f8464887a07fc0d31d94511c.trn | 5 +++++ ...15052_265e56169abd4a0196ba9322fe772859.trn | 5 +++++ ...15052_936cabf6f3b44f51915ed5fda8854a17.trn | 5 +++++ ...15052_d2b2e328f7f74f5e8d981de708cc50db.trn | 5 +++++ .../microsoft.net.workloads.workloadset.json | 18 ++++++++++++++++++ .../AdvertisedManifestFeatureBand.txt | 1 + .../workloadVersion.txt | 1 + OpenBullet2.Core/OpenBullet2.Core.csproj | 2 +- OpenBullet2.Web/GlobalUsings.cs | 2 ++ OpenBullet2.Web/OpenBullet2.Web.csproj | 6 +++--- OpenBullet2.Web/Program.cs | 16 ++++++---------- OpenBullet2.Web/Utils/AutoMapperProfile.cs | 4 ++-- .../Utils/ConfigureSwaggerOptions.cs | 2 +- RuriLib/Blocks/Functions/Crypto/Methods.cs | 7 +++---- RuriLib/Functions/Crypto/Crypto.cs | 6 +++--- RuriLib/RuriLib.csproj | 2 +- build_log.txt | Bin 0 -> 634694 bytes build_log_pr3.txt | Bin 0 -> 68048 bytes build_log_pr3_v2.txt | Bin 0 -> 360966 bytes restore_log.txt | Bin 0 -> 3774 bytes 27 files changed, 65 insertions(+), 25 deletions(-) create mode 100644 .dotnet_home/.dotnet/.workloadAdvertisingManifestSentinel10.0.100 create mode 100644 .dotnet_home/.dotnet/10.0.103.aspNetCertificateSentinel create mode 100644 .dotnet_home/.dotnet/10.0.103.dotnetFirstUseSentinel create mode 100644 .dotnet_home/.dotnet/10.0.103.toolpath.sentinel create mode 100644 .dotnet_home/.dotnet/10.0.103_IsDockerContainer.dotnetUserLevelCache create mode 100644 .dotnet_home/.dotnet/10.0.103_MachineId.dotnetUserLevelCache create mode 100644 .dotnet_home/.dotnet/MachineId.v1.dotnetUserLevelCache create mode 100644 .dotnet_home/.dotnet/TelemetryStorageService/20260223015052_008a2be6f8464887a07fc0d31d94511c.trn create mode 100644 .dotnet_home/.dotnet/TelemetryStorageService/20260223015052_265e56169abd4a0196ba9322fe772859.trn create mode 100644 .dotnet_home/.dotnet/TelemetryStorageService/20260223015052_936cabf6f3b44f51915ed5fda8854a17.trn create mode 100644 .dotnet_home/.dotnet/TelemetryStorageService/20260223015052_d2b2e328f7f74f5e8d981de708cc50db.trn create mode 100644 .dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/10.0.103/microsoft.net.workloads.workloadset.json create mode 100644 .dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/AdvertisedManifestFeatureBand.txt create mode 100644 .dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/workloadVersion.txt create mode 100644 OpenBullet2.Web/GlobalUsings.cs create mode 100644 build_log.txt create mode 100644 build_log_pr3.txt create mode 100644 build_log_pr3_v2.txt create mode 100644 restore_log.txt diff --git a/.dotnet_home/.dotnet/.workloadAdvertisingManifestSentinel10.0.100 b/.dotnet_home/.dotnet/.workloadAdvertisingManifestSentinel10.0.100 new file mode 100644 index 000000000..e69de29bb diff --git a/.dotnet_home/.dotnet/10.0.103.aspNetCertificateSentinel b/.dotnet_home/.dotnet/10.0.103.aspNetCertificateSentinel new file mode 100644 index 000000000..e69de29bb diff --git a/.dotnet_home/.dotnet/10.0.103.dotnetFirstUseSentinel b/.dotnet_home/.dotnet/10.0.103.dotnetFirstUseSentinel new file mode 100644 index 000000000..e69de29bb diff --git a/.dotnet_home/.dotnet/10.0.103.toolpath.sentinel b/.dotnet_home/.dotnet/10.0.103.toolpath.sentinel new file mode 100644 index 000000000..e69de29bb diff --git a/.dotnet_home/.dotnet/10.0.103_IsDockerContainer.dotnetUserLevelCache b/.dotnet_home/.dotnet/10.0.103_IsDockerContainer.dotnetUserLevelCache new file mode 100644 index 000000000..c1f22fbc2 --- /dev/null +++ b/.dotnet_home/.dotnet/10.0.103_IsDockerContainer.dotnetUserLevelCache @@ -0,0 +1 @@ +False \ No newline at end of file diff --git a/.dotnet_home/.dotnet/10.0.103_MachineId.dotnetUserLevelCache b/.dotnet_home/.dotnet/10.0.103_MachineId.dotnetUserLevelCache new file mode 100644 index 000000000..b887abbda --- /dev/null +++ b/.dotnet_home/.dotnet/10.0.103_MachineId.dotnetUserLevelCache @@ -0,0 +1 @@ +ed9f5ea2a66b781f44c6b7ab8e9fb92affb5463d671bdeeb62f10925c1330d4c \ No newline at end of file diff --git a/.dotnet_home/.dotnet/MachineId.v1.dotnetUserLevelCache b/.dotnet_home/.dotnet/MachineId.v1.dotnetUserLevelCache new file mode 100644 index 000000000..b887abbda --- /dev/null +++ b/.dotnet_home/.dotnet/MachineId.v1.dotnetUserLevelCache @@ -0,0 +1 @@ +ed9f5ea2a66b781f44c6b7ab8e9fb92affb5463d671bdeeb62f10925c1330d4c \ No newline at end of file diff --git a/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_008a2be6f8464887a07fc0d31d94511c.trn b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_008a2be6f8464887a07fc0d31d94511c.trn new file mode 100644 index 000000000..b464152dc --- /dev/null +++ b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_008a2be6f8464887a07fc0d31d94511c.trn @@ -0,0 +1,5 @@ +https://dc.services.visualstudio.com/v2/track +Content-Type:application/x-json-stream +Content-Encoding:gzip + +H4sIAAAAAAAACqxUy24cNxD8lUGfhyO+53EzpAQRFMOCZThBbk2y6SU84ixmuLINYf894KwMRbkFyI1oorqrqot8hoyPBBO8Ox5/eaJcNmihpL0kubSMSybVJy4mwycjO9UbLST/C1pId/QDJui198KPxBRZYjpww5yKnoVAo+AicGl07YlfNpieAVMX6Cl56pbtM61bWjJM8EfKYflWZ2Pq/LycQrcuM93mrWD2lczD73eX2422CupSgAkGK5wZSDA7SME0R89QoGZ8RK9iL4WR8QJLudCace628PV1blhKpuIn2UnVcSZHOLcQsGCl6nCjTz+OdfpuzU2tt3t5P07P8EQrTLL9aeKl3ZWf05VfHh8xh6uYctoO0MJxXY60lkS7DbuyecaSlty8DLmeE+UCLXx4aO5nLHFZH99483CRfvsflL9Hf0iZmtsbmIDCGA2hRGtdP4iotbeuRzfQGN0oMUZntFXB9sIFImdlFHyUxguleNAeWrheckn5tJy25jYX+rLuCmCCX3He6ML93eoPqZAvp7XK+tPW/dP3VK6XUAsCWrhfl3DypXldheAd7wRXtcepHE+l+UghreQLhbf9/4WRVnBeqZ3WlXJp7rEcmt9wO8AEVtgxiuipj47ioEfnpFbSkxpklEZZLpCj4YjS6LGXCocYlSHtMBokV4nX1Td72ryxvQwiMMEHZNqawAYrDYvDWPFBe1elvnrefJgr7n/w/adfL1HRA7QQ6OnylHZyWtteaiOYQiOYVp7YWAMxGMuFdQrRVf/uaM00/8PD98mvy7bE0rwErXnj6sdTrt9Bs4fuW8rs+77Om8V/pbWpccCU6yt42dD5fD7/DQAA//8DABsIlFFVBAAA \ No newline at end of file diff --git a/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_265e56169abd4a0196ba9322fe772859.trn b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_265e56169abd4a0196ba9322fe772859.trn new file mode 100644 index 000000000..870cac450 --- /dev/null +++ b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_265e56169abd4a0196ba9322fe772859.trn @@ -0,0 +1,5 @@ +https://dc.services.visualstudio.com/v2/track +Content-Type:application/x-json-stream +Content-Encoding:gzip + +H4sIAAAAAAAACqxUXWvdOBD9K0bPlqNvW34rSUpDtjQ0Ybf0bSSNEhFHvthy2hLuf1/km9LNvhX6IsyYM2fOmSO9kAxPSEby7nC4fMZcVtKSkvaSYMJQJqiQd4yPmo1adLLnXCv5lbQkXeMPMpJeec+9RSrRIFWBaepk9DQEtJzxwIRWtSfcr2R8IZC6gM/JYzevf+OypjmTkfyTcpi/VW5InZ/mLXTLPOFVXgtkX4e5/ev69HfFtYK6FMhIBsOdHpBTMwhOFQNPgYOizIKXsRdci3iCpVxwyTB1a3j8xRvmkrH4UXRCdowKS44tCVCgjupgxbsfh8q+W3NR6+1e3j/HF/KMCxlF+9PEU7szP6Wzp9VtaQpnp7PA+ljVHZb5gEtJuHuxy5smKGnOzSvT+ZQwF9KST7fNzQQlzsvTG4NuT/qvfkP+XWW//I5+KxjO5y0XMhLZk5Z8BP+QMjZXF2QkGGzUCAKMcf3Ao1LeuB7cgDY6KyBGp5WRwfTcBURnROTMCu25lCwoT1pyPueS8jZva3OVC94vuzYykvcwrXhS9W7xD6mgL9tSBX8xNR43yxw2X5pfq+GsYx1nsoK2cthK8xlDWtAXDG8b/g8jDGeszrItC+bS3EB5aD7A+kBGYrixkUePfXQYB2WdE0oKj3IQUWhpGAcGmgEIrWwvJAwxSo3KQdSAjrQEaxSaU/qsNNy6QAXTQBX0kloLhtpgmQ3Kcx/emtx8miruDxj906/X1KiBtCTg8+lq7cMpZXqhNKcSNKdKeqS2ZmPQhnHjJICr/l3jknH6j4cfk1/mdY6lec1c88bVz1uuz0Oz5+9byvT7vr+L2T/i0tT9Q8r1Vrxu6Hg8Hv8FAAD//wMAaDA4y2UEAAA= \ No newline at end of file diff --git a/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_936cabf6f3b44f51915ed5fda8854a17.trn b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_936cabf6f3b44f51915ed5fda8854a17.trn new file mode 100644 index 000000000..f68601483 --- /dev/null +++ b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_936cabf6f3b44f51915ed5fda8854a17.trn @@ -0,0 +1,5 @@ +https://dc.services.visualstudio.com/v2/track +Content-Type:application/x-json-stream +Content-Encoding:gzip + +H4sIAAAAAAAACqyUXW/dKBCG/4o118YBDPjjLkpabZStGjXRbrV3fAwNioOPAKeNovPfV/ikymZvqpX2BqHBM/PyzItfIOpHhBnOD4cPTxhLhhZK2EOcckUoJ7y/o2yWdJa869Uox5H+BS2Ea3yGGQZhLbMTkh4VEuGoJKb3ljiHE6PMUS5Fram/ZZhfQIfO4VOw2K35D0w5rBFm+DNEt36vvXXo7LJurkvrglcxFx1tFXP7+/XpNGOuSV1wMMOomJEjMqJGzoig2hLNtCB00rb3A2eS+1NaiAVT1EuX3cNbX7eWiMXOvON9Rwmf4NiC00VXqUZnvHs+1O47mssab/fwvp1f4AkTzLz9CfFU7swu4ewxmy0s7uy0Fp0f8r56bcuanqGFQ1oPmErAnct5zvholuc7nR8+nr6p2/zhB9qtoLtYt1hgBqaghZ3LsugS1ti8SrxYAsayH5YUYg72V6U4gxY+3zY3iy5+TY/v5nB7wnz1Hyh/0vY+RGyuLmEGdJOXqLlWygwj80JYZQZtRpy8mbj23kiheqcGZhyiUdwzOnFpWd9TJyy0cLHGEuK2brm5igW/pf2+MMNHvWQ8aT9P9j4UtGVLFcJXVb12k1a32dK8zZnRjnaM9jVpK4etNF/QhYS2oHtf8F85XDFKq5YtJYyludHlvvlN53uYQTE1eeYtDt6gH8VkDBc9t9iP3HPZK8o01ZJqzaWYBt7r0fteojDaS40GWsDqq2a3shtwdBNHMimriBi5I6MZDVHUS4NuHCZXM94gN5+Xmvc/gP7J69VJYoQWHD6d3ukuTgg1cCEZ6bVkRPQWyVQdMEpFmTK91qbyu8YUcfkHw0/BpjWvvjSvzmreUf2yxfqvaXaXfQ+R/Njnd7naB0xNnb8OsT6x1wkdj8fj3wAAAP//AwAC6zB2sgQAAA== \ No newline at end of file diff --git a/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_d2b2e328f7f74f5e8d981de708cc50db.trn b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_d2b2e328f7f74f5e8d981de708cc50db.trn new file mode 100644 index 000000000..e66b8ab67 --- /dev/null +++ b/.dotnet_home/.dotnet/TelemetryStorageService/20260223015052_d2b2e328f7f74f5e8d981de708cc50db.trn @@ -0,0 +1,5 @@ +https://dc.services.visualstudio.com/v2/track +Content-Type:application/x-json-stream +Content-Encoding:gzip + +H4sIAAAAAAAACqxUXU/lNhD9K5FfmwR/5+ONAqtFlAXtRduqb2N7DC65zlXiQBG6/71yLuwCqz5U6ksU2Z6ZM+ecmWcSYYukJ8e73dkDxjSTkqSwHnHKdUV5xcUNZb2iveK1aKRqJPuTlCRc4BPpSSOtZbbDSqDGSjqqKiO8rZzDjlHmKFcy54TbmfTPBELt8CFYrMf5G05zGCPpye8huvEx14ZQ22FcXD2NA57HOUG0Gczmt4vD7YxzDqqDIz1pNTOqRVbplrNKUrAVMJAV7cAK33CmuD+EhZhwijDUs7v/UdeNKWKyPa+5qGnFO7IviYMEGaqBGW+edrn6Ss1pPi/X4/W3fyYPOJGel68kHtId2SEcbWezhMEdrV9Skt007nBKAVcW1saGAVIYY/FS42QIGBMpya85ZLNYi/NMevIJhhlfj8/ibYj4aYItPo7T/ZdD3frL2Q0pyfU0/oU2XUO6Iz0x2FHsOAjBPLTApXAOrOpc56xrgaq2oQqlEQK6BhqqQTJoWs58x5k3hpTkalNcD5D8OG3fibQ5aHD+HyTYHJ+cRTADuo8t3cB0i4n0RILSujW66xBZo1xrUWtk3lkmLYJwoLBVgjZOG8UNpQKtkNBxJhiizi67BHsXIhbnp6Qn6DqvEDhobZqWeSmtNg2YFjtvOg7eGyW1cLphxiEazT2jHVeWCUGdtKQkJ2NMIS7jMhfnMeHttCr2poOrTXE82buQ0KZlylr8sQK5nka32FT8sBqjNa0ZFTloSbslFV/RhQltekfJ1eZjDNeM0oxlmSaMqcjyFp9hzhprpjvPvMXGG/St7IzhUnCLouWeK6EpAwqKAnAlu4YLaL0XWXXwCjBrjNnaxTpNCjqlBW8qKrGppKGmyjapmgakkWg8pe4dycXV4P4fot+Y+037baaM1Y1eaXvl9GVeZEtK4vDhsE7WBqTUDZeKVQIUq6SwWHXZi63SlGkjAMyHSfo8ztl63zYno8tXFzhFHN5IcBnsNM6jT8WL/Yt3orxJdRrm3QBPP8H/xXIplBX4/f3JHdr7n6fh6xLz5i3WsXoMsfp7tdLpaO9xKrIVIcS8cL5HXC5DCjd3E4JDdzk6/Jh0X5ItwrxMuF13+7p6Ik4rjNPlYOfzeBmGIcxox+hm0jMuGaulFPIF778/VLKruZR6v9/v/wEAAP//AwC4m3+MSwYAAA== \ No newline at end of file diff --git a/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/10.0.103/microsoft.net.workloads.workloadset.json b/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/10.0.103/microsoft.net.workloads.workloadset.json new file mode 100644 index 000000000..4bb40d222 --- /dev/null +++ b/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/10.0.103/microsoft.net.workloads.workloadset.json @@ -0,0 +1,18 @@ +{ + "Microsoft.NET.Workload.Emscripten.Current": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Emscripten.net6": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Emscripten.net7": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Emscripten.net8": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Emscripten.net9": "10.0.103/10.0.100", + "Microsoft.NET.Sdk.Android": "36.1.30/10.0.100", + "Microsoft.NET.Sdk.iOS": "26.2.10197/10.0.100", + "Microsoft.NET.Sdk.MacCatalyst": "26.2.10197/10.0.100", + "Microsoft.NET.Sdk.macOS": "26.2.10197/10.0.100", + "Microsoft.NET.Sdk.Maui": "10.0.20/10.0.100", + "Microsoft.NET.Sdk.tvOS": "26.2.10197/10.0.100", + "Microsoft.NET.Workload.Mono.ToolChain.Current": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Mono.ToolChain.net6": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Mono.ToolChain.net7": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Mono.ToolChain.net8": "10.0.103/10.0.100", + "Microsoft.NET.Workload.Mono.ToolChain.net9": "10.0.103/10.0.100" +} diff --git a/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/AdvertisedManifestFeatureBand.txt b/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/AdvertisedManifestFeatureBand.txt new file mode 100644 index 000000000..2ce303bea --- /dev/null +++ b/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/AdvertisedManifestFeatureBand.txt @@ -0,0 +1 @@ +10.0.100 \ No newline at end of file diff --git a/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/workloadVersion.txt b/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/workloadVersion.txt new file mode 100644 index 000000000..02277ab29 --- /dev/null +++ b/.dotnet_home/.dotnet/sdk-advertising/10.0.100/microsoft.net.workloads/workloadVersion.txt @@ -0,0 +1 @@ +10.0.103 \ No newline at end of file diff --git a/OpenBullet2.Core/OpenBullet2.Core.csproj b/OpenBullet2.Core/OpenBullet2.Core.csproj index cc5d4d278..e379ba71d 100644 --- a/OpenBullet2.Core/OpenBullet2.Core.csproj +++ b/OpenBullet2.Core/OpenBullet2.Core.csproj @@ -5,7 +5,7 @@ - + diff --git a/OpenBullet2.Web/GlobalUsings.cs b/OpenBullet2.Web/GlobalUsings.cs new file mode 100644 index 000000000..5941ed147 --- /dev/null +++ b/OpenBullet2.Web/GlobalUsings.cs @@ -0,0 +1,2 @@ +global using Asp.Versioning; +global using Asp.Versioning.ApiExplorer; diff --git a/OpenBullet2.Web/OpenBullet2.Web.csproj b/OpenBullet2.Web/OpenBullet2.Web.csproj index ff5938fc1..b84d189c3 100644 --- a/OpenBullet2.Web/OpenBullet2.Web.csproj +++ b/OpenBullet2.Web/OpenBullet2.Web.csproj @@ -48,8 +48,8 @@ - - + + @@ -59,7 +59,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/OpenBullet2.Web/Program.cs b/OpenBullet2.Web/Program.cs index c20fadb0f..917134693 100644 --- a/OpenBullet2.Web/Program.cs +++ b/OpenBullet2.Web/Program.cs @@ -1,6 +1,6 @@ using Microsoft.AspNetCore.Http.Features; -using Microsoft.AspNetCore.Mvc; -using Microsoft.AspNetCore.Mvc.ApiExplorer; +using Asp.Versioning; +using Asp.Versioning.ApiExplorer; using Microsoft.EntityFrameworkCore; using OpenBullet2.Core; using OpenBullet2.Core.Helpers; @@ -53,6 +53,10 @@ options.AssumeDefaultVersionWhenUnspecified = true; options.DefaultApiVersion = new ApiVersion(1, 0); options.ReportApiVersions = true; +}).AddApiExplorer(setup => +{ + setup.GroupNameFormat = "'v'VVV"; + setup.SubstituteApiVersionInUrl = true; }); builder.Services.AddControllers() @@ -71,14 +75,6 @@ var enumConverter = new JsonStringEnumConverter(JsonNamingPolicy.CamelCase); options.PayloadSerializerOptions.Converters.Add(enumConverter); }); - -// Swagger with versioning implemented according to this guide -// https://referbruv.com/blog/integrating-aspnet-core-api-versions-with-swagger-ui/ -builder.Services.AddVersionedApiExplorer(setup => -{ - setup.GroupNameFormat = "'v'VVV"; - setup.SubstituteApiVersionInUrl = true; -}); builder.Services.AddSwaggerGen(c => { c.AddSecurityDefinition("Api Key", new OpenApiSecurityScheme diff --git a/OpenBullet2.Web/Utils/AutoMapperProfile.cs b/OpenBullet2.Web/Utils/AutoMapperProfile.cs index f8ed544b0..d72de1441 100644 --- a/OpenBullet2.Web/Utils/AutoMapperProfile.cs +++ b/OpenBullet2.Web/Utils/AutoMapperProfile.cs @@ -85,7 +85,7 @@ public AutoMapperProfile() CreateMap() .ForMember(entity => entity.PasswordHash, e => e.MapFrom(dto => - BCrypt.Net.BCrypt.HashPassword(dto.Password, SaltRevision.Revision2B))) + BCrypt.Net.BCrypt.HashPassword(dto.Password))) .ForMember(entity => entity.AllowedAddresses, e => e.MapFrom(dto => string.Join(',', dto.AllowedAddresses))); @@ -95,7 +95,7 @@ public AutoMapperProfile() CreateMap() .ForMember(entity => entity.PasswordHash, e => e.MapFrom(dto => - BCrypt.Net.BCrypt.HashPassword(dto.Password, SaltRevision.Revision2B))); + BCrypt.Net.BCrypt.HashPassword(dto.Password))); CreateMap() .ForMember(dto => dto.AllowedAddresses, e => e.MapFrom(entity => diff --git a/OpenBullet2.Web/Utils/ConfigureSwaggerOptions.cs b/OpenBullet2.Web/Utils/ConfigureSwaggerOptions.cs index e51f41c52..2dfbbb3cc 100644 --- a/OpenBullet2.Web/Utils/ConfigureSwaggerOptions.cs +++ b/OpenBullet2.Web/Utils/ConfigureSwaggerOptions.cs @@ -1,4 +1,4 @@ -using Microsoft.AspNetCore.Mvc.ApiExplorer; +using Asp.Versioning.ApiExplorer; using Microsoft.Extensions.Options; using Microsoft.OpenApi.Models; using Swashbuckle.AspNetCore.SwaggerGen; diff --git a/RuriLib/Blocks/Functions/Crypto/Methods.cs b/RuriLib/Blocks/Functions/Crypto/Methods.cs index b51e529a0..ce8c64c14 100644 --- a/RuriLib/Blocks/Functions/Crypto/Methods.cs +++ b/RuriLib/Blocks/Functions/Crypto/Methods.cs @@ -243,13 +243,12 @@ public static string BCryptHash(BotData data, string input, string salt) return hashed; } - [Block("Generates a BCrypt hash from an input by generating a salt", name = "BCrypt Hash (Gen Salt)", - extraInfo = "bcryptjs uses salt revision 2X by default currently")] - public static string BCryptHashGenSalt(BotData data, string input, int rounds = 10, SaltRevision saltRevision = SaltRevision.Revision2X) + [Block("Generates a BCrypt hash from an input by generating a salt", name = "BCrypt Hash (Gen Salt)")] + public static string BCryptHashGenSalt(BotData data, string input, int rounds = 10) { data.Logger.LogHeader(); - var hashed = RuriLib.Functions.Crypto.Crypto.BCryptGenSalt(input, rounds, saltRevision); + var hashed = RuriLib.Functions.Crypto.Crypto.BCryptGenSalt(input, rounds); data.Logger.Log($"Hashed: {hashed}", LogColors.YellowGreen); return hashed; diff --git a/RuriLib/Functions/Crypto/Crypto.cs b/RuriLib/Functions/Crypto/Crypto.cs index 7937593c8..5bc149715 100644 --- a/RuriLib/Functions/Crypto/Crypto.cs +++ b/RuriLib/Functions/Crypto/Crypto.cs @@ -714,10 +714,10 @@ public static string BCryptWithSalt(string input, string salt = "") /// /// Hashes an with BCrypt after generating the salt with the given number of - /// and . + /// . /// - public static string BCryptGenSalt(string input, int rounds = 10, SaltRevision saltRevision = SaltRevision.Revision2X) - => BCrypt.Net.BCrypt.HashPassword(input, rounds, saltRevision); + public static string BCryptGenSalt(string input, int rounds = 10) + => BCrypt.Net.BCrypt.HashPassword(input, rounds); /// /// Verifies that a BCrypt is valid with respect to a given . diff --git a/RuriLib/RuriLib.csproj b/RuriLib/RuriLib.csproj index 07a5fa2e5..fea95e6d9 100644 --- a/RuriLib/RuriLib.csproj +++ b/RuriLib/RuriLib.csproj @@ -8,7 +8,7 @@ - + diff --git a/build_log.txt b/build_log.txt new file mode 100644 index 0000000000000000000000000000000000000000..ea024334562773f7f89ef2ef70efda3b1f7c3e8c GIT binary patch literal 634694 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 YJ`P?6QM?Ul47sK8@3#C37_vF$|92S(_y7O^ literal 0 HcmV?d00001 diff --git a/build_log_pr3.txt b/build_log_pr3.txt new file mode 100644 index 0000000000000000000000000000000000000000..84fc2523b6852146bba56b7a2c764cb729469978 GIT binary patch literal 68048 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 literal 0 HcmV?d00001 diff --git a/build_log_pr3_v2.txt b/build_log_pr3_v2.txt new file mode 100644 index 0000000000000000000000000000000000000000..5f6a7012e3bd7dce37c7f76a9d469267bf542271 GIT binary patch literal 360966 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