Skip to content

Commit dfd2398

Browse files
committed
Update to preview 7
Update to preview 6 Update docker base imgs Update to preview 5 Update docker Preview 4 Use latest analyzer libs Use C# extensions Update packages Fix SDK docker image Update docker to preview 3 Update to preview 3 packages Update packages to preview 1 Initial .net10
1 parent d8f610d commit dfd2398

File tree

17 files changed

+88
-67
lines changed

17 files changed

+88
-67
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,14 @@ on:
99
- master
1010
- release/*
1111
- main
12+
- dotnet/*
1213
pull_request:
1314
branches:
1415
- dev
1516
- master
1617
- release/*
1718
- main
19+
- dotnet/*
1820

1921
env:
2022
DOTNET_NOLOGO: true

.github/workflows/commentOnDatabase.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ on:
77
- master
88
- release/*
99
- main
10+
- dotnet/*
1011
types: [opened, reopened]
1112
paths:
1213
- '**/PaperMalKing.Database/**'

Directory.Build.props

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project>
22
<PropertyGroup>
3-
<TargetFramework>net9.0</TargetFramework>
3+
<TargetFramework>net10.0</TargetFramework>
44
<LangVersion>preview</LangVersion>
55
<OutputType>Library</OutputType>
66

@@ -59,6 +59,7 @@
5959
CA2234; <!--Pass System.Uri objects instead of strings-->
6060

6161
EA0002; <!--Use 'System.TimeProvider' to make the code easier to test-->
62+
EA0004; <!--Make type 'Program' internal since it is declared in an executable-->
6263
EA0014; <!--Add CancellationToken as the parameter of asynchronous method-->
6364

6465
MA0004; <!--Use Task.ConfigureAwait(false) as the current SynchronizationContext is not needed-->
@@ -128,6 +129,8 @@
128129
VSTHRD111; <!--Add .ConfigureAwait(bool) to your await expression-->
129130

130131
AsyncFixer02; <!--ToArrayAsync should be used instead of -->
132+
133+
EPC29; <!-- 'ExcludeFromCodeCoverageAttribute' should provide a message explaining the exclusion -->
131134
</NoWarn>
132135
<WarningsNotAsErrors>
133136
MA0048; <!--File name must match type name-->

Directory.Packages.props

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,13 @@
55
<CentralPackageTransitivePinningEnabled>true</CentralPackageTransitivePinningEnabled>
66
</PropertyGroup>
77
<PropertyGroup>
8-
<EntityFrameworkCoreVersion>9.0.7</EntityFrameworkCoreVersion>
8+
<EntityFrameworkCoreVersion>10.0.0-preview.7.25380.108</EntityFrameworkCoreVersion>
99
<GraphQLClientVersion>6.1.0</GraphQLClientVersion>
1010
<DSharpPlusVersion>4.5.1</DSharpPlusVersion>
1111
<CommunityTookitVersion>8.4.0</CommunityTookitVersion>
12+
<VisualStudioThreadingVersion>17.14.15</VisualStudioThreadingVersion>
1213

13-
<VerifyVersion>30.5.0</VerifyVersion>
14+
<VerifyVersion>30.6.1</VerifyVersion>
1415
</PropertyGroup>
1516
<ItemGroup>
1617
<!-- Logging -->
@@ -19,8 +20,8 @@
1920
<PackageVersion Include="Serilog.Settings.Configuration" Version="9.0.0" />
2021
<PackageVersion Include="Serilog.Sinks.Console" Version="6.0.0" />
2122
<PackageVersion Include="Serilog.Sinks.OpenTelemetry" Version="4.2.0" />
22-
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.7" />
23-
<PackageVersion Include="Microsoft.Extensions.Telemetry.Abstractions" Version="9.7.0" />
23+
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.0-preview.7.25380.108" />
24+
<PackageVersion Include="Microsoft.Extensions.Telemetry.Abstractions" Version="9.8.0" />
2425

2526
<!-- Discord -->
2627
<PackageVersion Include="DSharpPlus" Version="$(DSharpPlusVersion)" />
@@ -44,49 +45,49 @@
4445
<PackageVersion Include="EntityFrameworkCore.Exceptions.Sqlite" Version="8.1.3" />
4546

4647
<!-- Hosting -->
47-
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.7" />
48-
<PackageVersion Include="Microsoft.Extensions.Hosting.Systemd" Version="9.0.7" Condition="'$(IsInContainer)' != 'true'" />
49-
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="9.0.7" />
48+
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.0-preview.7.25380.108" />
49+
<PackageVersion Include="Microsoft.Extensions.Hosting.Systemd" Version="10.0.0-preview.7.25380.108" />
50+
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="10.0.0-preview.7.25380.108" />
5051

5152
<!-- DI -->
52-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="9.0.7" />
53-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.7" />
53+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.0-preview.7.25380.108" />
54+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.0-preview.7.25380.108" />
5455

5556
<!-- Configuration -->
56-
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.7" />
57-
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="9.0.7" />
58-
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="9.0.7" />
59-
<PackageVersion Include="Microsoft.Extensions.Options" Version="9.0.7" />
60-
<PackageVersion Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="9.0.7" />
61-
<PackageVersion Include="Microsoft.Extensions.Options.DataAnnotations" Version="9.0.7" />
57+
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="10.0.0-preview.7.25380.108" />
58+
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="10.0.0-preview.7.25380.108" />
59+
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="10.0.0-preview.7.25380.108" />
60+
<PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.0-preview.7.25380.108" />
61+
<PackageVersion Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="10.0.0-preview.7.25380.108" />
62+
<PackageVersion Include="Microsoft.Extensions.Options.DataAnnotations" Version="10.0.0-preview.7.25380.108" />
6263

6364
<!-- Resilience -->
64-
<PackageVersion Include="Microsoft.Extensions.Http.Resilience" Version="9.7.0" />
65-
<PackageVersion Include="Microsoft.Extensions.Http" Version="9.0.7" />
65+
<PackageVersion Include="Microsoft.Extensions.Http.Resilience" Version="9.8.0" />
66+
<PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.0-preview.7.25380.108" />
6667

6768
<!-- Web -->
6869
<PackageVersion Include="AspNet.Security.OAuth.Discord" Version="9.4.0" />
69-
<PackageVersion Include="Microsoft.AspNetCore.SpaProxy" Version="9.0.6" />
70-
<PackageVersion Include="Microsoft.AspNetCore.SpaServices.Extensions" Version="9.0.7" />
70+
<PackageVersion Include="Microsoft.AspNetCore.SpaProxy" Version="10.0.0-preview.7.25380.108" />
71+
<PackageVersion Include="Microsoft.AspNetCore.SpaServices.Extensions" Version="10.0.0-preview.7.25380.108" />
7172

7273
<!-- Misc -->
7374
<PackageVersion Include="CommunityToolkit.Diagnostics" Version="$(CommunityTookitVersion)" />
7475
<PackageVersion Include="Humanizer.Core" Version="2.14.1" />
7576
<PackageVersion Include="AngleSharp" Version="1.3.0" />
7677
<PackageVersion Include="JikanDotNet" Version="2.9.1" />
77-
<PackageVersion Include="System.Threading.RateLimiting" Version="9.0.7" />
78+
<PackageVersion Include="System.Threading.RateLimiting" Version="10.0.0-preview.7.25380.108" />
7879
<PackageVersion Include="Microsoft.Extensions.EnumStrings" Version="8.0.0-rc.2.23510.2" />
79-
<PackageVersion Include="Microsoft.VisualStudio.Threading" Version="17.14.15" />
80+
<PackageVersion Include="Microsoft.VisualStudio.Threading" Version="$(VisualStudioThreadingVersion)" />
8081
<PackageVersion Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.1" />
81-
<GlobalPackageReference Include="GitVersion.MsBuild" Version="6.3.0">
82+
<GlobalPackageReference Include="GitVersion.MsBuild" Version="6.4.0">
8283
<PrivateAssets>All</PrivateAssets>
8384
</GlobalPackageReference>
8485

8586
<!-- Benchmarking -->
8687
<PackageVersion Include="BenchmarkDotNet" Version="0.15.2" />
8788

8889
<!-- Analyzers-->
89-
<GlobalPackageReference Include="Meziantou.Analyzer" Version="2.0.210">
90+
<GlobalPackageReference Include="Meziantou.Analyzer" Version="2.0.212">
9091
<PrivateAssets>all</PrivateAssets>
9192
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
9293
</GlobalPackageReference>
@@ -106,15 +107,15 @@
106107
<PrivateAssets>all</PrivateAssets>
107108
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
108109
</GlobalPackageReference>
109-
<GlobalPackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.14.15">
110+
<GlobalPackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="$(VisualStudioThreadingVersion)">
110111
<PrivateAssets>all</PrivateAssets>
111112
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
112113
</GlobalPackageReference>
113114
<GlobalPackageReference Include="Roslynator.Analyzers" Version="4.14.0">
114115
<PrivateAssets>all</PrivateAssets>
115116
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
116117
</GlobalPackageReference>
117-
<GlobalPackageReference Include="ErrorProne.NET.CoreAnalyzers" Version="0.7.0-beta.1">
118+
<GlobalPackageReference Include="ErrorProne.NET.CoreAnalyzers" Version="0.8.0-beta.1">
118119
<PrivateAssets>all</PrivateAssets>
119120
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
120121
</GlobalPackageReference>
@@ -142,7 +143,10 @@
142143

143144
<!-- Implicit -->
144145
<PackageVersion Include="System.Net.Security" Version="4.3.2" />
145-
<PackageVersion Include="System.Formats.Asn1" Version="9.0.6" />
146-
<PackageVersion Include="System.Private.Uri" Version="4.3.2" />
146+
<PackageVersion Include="System.Formats.Asn1" Version="10.0.0-preview.7.25380.108" />
147+
<PackageVersion Include="System.Private.Uri" Version="4.3.2" />
148+
<PackageVersion Include="Microsoft.CodeAnalysis.Workspaces.MSBuild" Version="4.14.0" />
149+
<PackageVersion Include="Microsoft.Build.Tasks.Core" Version="17.14.8" />
150+
<PackageVersion Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="4.14.0" />
147151
</ItemGroup>
148152
</Project>

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
FROM mcr.microsoft.com/dotnet/sdk:9.0-alpine AS builder
1+
FROM mcr.microsoft.com/dotnet/sdk:10.0.100-preview.7-alpine3.22 AS builder
22
COPY . /source
33
WORKDIR source
44
RUN dotnet publish ./src/PaperMalKing/PaperMalKing.csproj -c Release -o /app --no-self-contained -r linux-musl-x64 /p:DefineConstants=IsInContainer /p:IsInContainer=true
55

6-
FROM mcr.microsoft.com/dotnet/aspnet:9.0-alpine3.22 AS final
6+
FROM mcr.microsoft.com/dotnet/aspnet:10.0.0-preview.7-alpine3.22 AS final
77
LABEL org.opencontainers.image.source="https://github.com/TanteiBot/Tantei"
88
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
99

global.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"sdk": {
3-
"version": "9.0.0",
3+
"version": "10.0.0",
44
"rollForward": "latestFeature",
5-
"allowPrerelease": false
5+
"allowPrerelease": true
66
}
77
}

src/PaperMalKing.AniList.UpdateProvider/AniListUpdateProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ Func<IdentifiableFavourite, AniListFavourite> FavouritesSelector(AniListUser ani
106106

107107
static uint[] GetIds(IReadOnlyList<IdentifiableFavourite> collection, Func<IdentifiableFavourite, bool> predicate)
108108
{
109-
return collection.Any(predicate) ? [.. collection.Where(predicate).Select(f => f.Id)] : [];
109+
return collection.Any(predicate) ? [.. collection.Where(predicate).Select(f => f.Id),] : [];
110110
}
111111

112112
static void GetFavouritesEmbed<T>(List<DiscordEmbedBuilder> aggregator,

src/PaperMalKing.AniList.UpdateProvider/AniListUserService.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ public override async Task<BaseUser> AddUserAsync(ulong userId, ulong guildId, s
9090
LastActivityTimestamp = now,
9191
LastReviewTimestamp = now,
9292
FavouritesIdHash = HashHelpers.FavoritesHash(response.Favourites.ToFavoriteIdType()),
93-
Features = AniListUserFeatures.None.GetDefault(),
93+
Features = AniListUserFeatures.Default,
9494
Colors = [],
9595
};
9696
dbUser.Favourites.ForEach(f =>

src/PaperMalKing.Database/DbExtensions.cs

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/PaperMalKing.Database/Models/AniList/AniListUserFeatures.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,15 @@ public enum AniListUserFeatures : ulong
5757

5858
[EnumDescription("seyu", "Show seyu of anime")]
5959
Seyu = 1 << 15,
60+
}
61+
62+
public static class AniListUserFeaturesExtensions
63+
{
64+
extension(AniListUserFeatures)
65+
{
66+
public static AniListUserFeatures Default => AniListUserFeatures.AnimeList | AniListUserFeatures.MangaList |
67+
AniListUserFeatures.Favourites | AniListUserFeatures.Mention |
68+
AniListUserFeatures.Website | AniListUserFeatures.MediaFormat |
69+
AniListUserFeatures.MediaStatus;
70+
}
6071
}

0 commit comments

Comments
 (0)