From d780d6ce02ff85f28539fb4204265a07575e30be Mon Sep 17 00:00:00 2001 From: Mihail Gribkov <61027276+Misha-133@users.noreply.github.com> Date: Sun, 1 Dec 2024 20:43:47 +0300 Subject: [PATCH] Add `net8.0` and `net9.0` (#3032) --- .../Discord.Net.BuildOverrides.csproj | 5 ++-- samples/BasicBot/_BasicBot.csproj | 6 ++--- .../_InteractionFramework.csproj | 17 ++++++------- samples/ShardedClient/_ShardedClient.csproj | 6 ++--- .../_TextCommandFramework.csproj | 8 +++---- samples/WebhookClient/_WebhookClient.csproj | 4 ++-- samples/idn/idn.csproj | 4 ++-- .../Discord.Net.Commands.csproj | 4 ++-- src/Discord.Net.Core/Discord.Net.Core.csproj | 8 +++---- .../Guilds/MemberSearchPropertiesV2.cs | 8 +++---- .../Discord.Net.Examples.csproj | 4 ++-- .../Discord.Net.Interactions.csproj | 10 ++++---- .../API/Common/ApplicationCommandOption.cs | 10 ++++---- src/Discord.Net.Rest/ClientHelper.cs | 4 ++-- src/Discord.Net.Rest/Discord.Net.Rest.csproj | 4 ++-- .../Interactions/InteractionHelper.cs | 24 +++++++++---------- .../Discord.Net.WebSocket.csproj | 4 ++-- .../Discord.Net.Webhook.csproj | 4 ++-- .../Discord.Net.Tests.Integration.csproj | 16 +++++-------- .../Discord.Net.Tests.Unit.csproj | 14 +++++------ 20 files changed, 80 insertions(+), 84 deletions(-) diff --git a/experiment/Discord.Net.BuildOverrides/Discord.Net.BuildOverrides.csproj b/experiment/Discord.Net.BuildOverrides/Discord.Net.BuildOverrides.csproj index e612647c..0b56d297 100644 --- a/experiment/Discord.Net.BuildOverrides/Discord.Net.BuildOverrides.csproj +++ b/experiment/Discord.Net.BuildOverrides/Discord.Net.BuildOverrides.csproj @@ -1,12 +1,11 @@ - + 9.0 Discord.Net.BuildOverrides Discord.BuildOverrides A Discord.Net extension adding a way to add build overrides for testing. - net6.0;net5.0; - net6.0;net5.0; + net8.0;net9.0; false false true diff --git a/samples/BasicBot/_BasicBot.csproj b/samples/BasicBot/_BasicBot.csproj index 7c61bcad..b4c8a437 100644 --- a/samples/BasicBot/_BasicBot.csproj +++ b/samples/BasicBot/_BasicBot.csproj @@ -1,12 +1,12 @@ - + Exe - net8.0 + net9.0 - + diff --git a/samples/InteractionFramework/_InteractionFramework.csproj b/samples/InteractionFramework/_InteractionFramework.csproj index 4d73d736..4c11c687 100644 --- a/samples/InteractionFramework/_InteractionFramework.csproj +++ b/samples/InteractionFramework/_InteractionFramework.csproj @@ -1,19 +1,20 @@ - + Exe - net8.0 + net9.0 InteractionFramework - - - - - - + + + + + + + diff --git a/samples/ShardedClient/_ShardedClient.csproj b/samples/ShardedClient/_ShardedClient.csproj index d37cb24e..e367f9d5 100644 --- a/samples/ShardedClient/_ShardedClient.csproj +++ b/samples/ShardedClient/_ShardedClient.csproj @@ -1,4 +1,4 @@ - + Exe @@ -7,8 +7,8 @@ - - + + diff --git a/samples/TextCommandFramework/_TextCommandFramework.csproj b/samples/TextCommandFramework/_TextCommandFramework.csproj index 5fab4f02..19015fcd 100644 --- a/samples/TextCommandFramework/_TextCommandFramework.csproj +++ b/samples/TextCommandFramework/_TextCommandFramework.csproj @@ -1,4 +1,4 @@ - + Exe @@ -7,9 +7,9 @@ - - - + + + diff --git a/samples/WebhookClient/_WebhookClient.csproj b/samples/WebhookClient/_WebhookClient.csproj index d0ce98c0..d396ae35 100644 --- a/samples/WebhookClient/_WebhookClient.csproj +++ b/samples/WebhookClient/_WebhookClient.csproj @@ -1,4 +1,4 @@ - + Exe @@ -7,7 +7,7 @@ - + diff --git a/samples/idn/idn.csproj b/samples/idn/idn.csproj index 85b26b50..a2956037 100644 --- a/samples/idn/idn.csproj +++ b/samples/idn/idn.csproj @@ -1,4 +1,4 @@ - + Exe @@ -6,7 +6,7 @@ - + diff --git a/src/Discord.Net.Commands/Discord.Net.Commands.csproj b/src/Discord.Net.Commands/Discord.Net.Commands.csproj index 0f15ea79..51f1d415 100644 --- a/src/Discord.Net.Commands/Discord.Net.Commands.csproj +++ b/src/Discord.Net.Commands/Discord.Net.Commands.csproj @@ -1,11 +1,11 @@ - + Discord.Net.Commands Discord.Commands A Discord.Net extension adding support for bot commands. - net6.0;net5.0;net461;netstandard2.0;netstandard2.1 + net9.0;net8.0;net6.0;net5.0;net461;netstandard2.0;netstandard2.1; 5 True false diff --git a/src/Discord.Net.Core/Discord.Net.Core.csproj b/src/Discord.Net.Core/Discord.Net.Core.csproj index bc67425e..9476da2c 100644 --- a/src/Discord.Net.Core/Discord.Net.Core.csproj +++ b/src/Discord.Net.Core/Discord.Net.Core.csproj @@ -1,11 +1,11 @@ - + Discord.Net.Core Discord The core components for the Discord.Net library. - net6.0;net5.0;net461;netstandard2.0;netstandard2.1 + net9.0;net8.0;net6.0;net5.0;net461;netstandard2.0;netstandard2.1 5 True false @@ -16,9 +16,9 @@ - + - + all diff --git a/src/Discord.Net.Core/Entities/Guilds/MemberSearchPropertiesV2.cs b/src/Discord.Net.Core/Entities/Guilds/MemberSearchPropertiesV2.cs index 75c0dac2..476f3a82 100644 --- a/src/Discord.Net.Core/Entities/Guilds/MemberSearchPropertiesV2.cs +++ b/src/Discord.Net.Core/Entities/Guilds/MemberSearchPropertiesV2.cs @@ -142,14 +142,14 @@ public readonly struct MemberSearchV2QueryProperties public MemberSearchV2QueryProperties(Dictionary andQuery, Dictionary orQuery) { - AndQuery = andQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(); - OrQuery = orQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(); + AndQuery = andQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(x => x.Key, y => y.Value); + OrQuery = orQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(x => x.Key, y => y.Value); } public MemberSearchV2QueryProperties(Dictionary andQuery, Dictionary orQuery) { - AndQuery = andQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(); - OrQuery = orQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(); + AndQuery = andQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(x => x.Key, y => y.Value); + OrQuery = orQuery.Select(x => new KeyValuePair(x.Key, x.Value)).ToDictionary(x => x.Key, y => y.Value); } } diff --git a/src/Discord.Net.Examples/Discord.Net.Examples.csproj b/src/Discord.Net.Examples/Discord.Net.Examples.csproj index 5fca6159..6288d266 100644 --- a/src/Discord.Net.Examples/Discord.Net.Examples.csproj +++ b/src/Discord.Net.Examples/Discord.Net.Examples.csproj @@ -1,4 +1,4 @@ - + net8.0 @@ -15,7 +15,7 @@ - + diff --git a/src/Discord.Net.Interactions/Discord.Net.Interactions.csproj b/src/Discord.Net.Interactions/Discord.Net.Interactions.csproj index fa7b6ae6..059cb2b9 100644 --- a/src/Discord.Net.Interactions/Discord.Net.Interactions.csproj +++ b/src/Discord.Net.Interactions/Discord.Net.Interactions.csproj @@ -1,8 +1,8 @@ - + - net6.0;net5.0;net461;netstandard2.0;netstandard2.1 + net9.0;net8.0;net6.0;net5.0;net461;netstandard2.0;netstandard2.1; Discord.Interactions Discord.Net.Interactions A Discord.Net extension adding support for Application Commands. @@ -20,9 +20,9 @@ - - - + + + diff --git a/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs b/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs index ae0c3215..e04889a7 100644 --- a/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs +++ b/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs @@ -83,8 +83,8 @@ namespace Discord.API Type = cmd.Type; Description = cmd.Description; - NameLocalizations = cmd.NameLocalizations?.ToDictionary() ?? Optional>.Unspecified; - DescriptionLocalizations = cmd.DescriptionLocalizations?.ToDictionary() ?? Optional>.Unspecified; + NameLocalizations = cmd.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value) ?? Optional>.Unspecified; + DescriptionLocalizations = cmd.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value) ?? Optional>.Unspecified; NameLocalized = cmd.NameLocalized; DescriptionLocalized = cmd.DescriptionLocalized; } @@ -94,7 +94,7 @@ namespace Discord.API { Name = x.Name, Value = x.Value, - NameLocalizations = x.NameLocalizations?.ToDictionary() ?? Optional>.Unspecified, + NameLocalizations = x.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value) ?? Optional>.Unspecified, }).ToArray() ?? Optional.Unspecified; Options = option.Options?.Select(x => new ApplicationCommandOption(x)).ToArray() ?? Optional.Unspecified; @@ -114,8 +114,8 @@ namespace Discord.API Description = option.Description; Autocomplete = option.IsAutocomplete; - NameLocalizations = option.NameLocalizations?.ToDictionary() ?? Optional>.Unspecified; - DescriptionLocalizations = option.DescriptionLocalizations?.ToDictionary() ?? Optional>.Unspecified; + NameLocalizations = option.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value) ?? Optional>.Unspecified; + DescriptionLocalizations = option.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value) ?? Optional>.Unspecified; } } } diff --git a/src/Discord.Net.Rest/ClientHelper.cs b/src/Discord.Net.Rest/ClientHelper.cs index 752b63e5..8eb94487 100644 --- a/src/Discord.Net.Rest/ClientHelper.cs +++ b/src/Discord.Net.Rest/ClientHelper.cs @@ -342,8 +342,8 @@ namespace Discord.Rest Description = x.Description, Key = x.Key, Type = x.Type, - NameLocalizations = x.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = x.DescriptionLocalizations?.ToDictionary() + NameLocalizations = x.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = x.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value) }).ToArray())) .Select(model => new RoleConnectionMetadata( diff --git a/src/Discord.Net.Rest/Discord.Net.Rest.csproj b/src/Discord.Net.Rest/Discord.Net.Rest.csproj index 1b956f31..fd74f30c 100644 --- a/src/Discord.Net.Rest/Discord.Net.Rest.csproj +++ b/src/Discord.Net.Rest/Discord.Net.Rest.csproj @@ -1,11 +1,11 @@ - + Discord.Net.Rest Discord.Rest A core Discord.Net library containing the REST client and models. - net6.0;net5.0;net461;netstandard2.0;netstandard2.1 + net9.0;net8.0;net6.0;net5.0;net461;netstandard2.0;netstandard2.1; 5 True false diff --git a/src/Discord.Net.Rest/Entities/Interactions/InteractionHelper.cs b/src/Discord.Net.Rest/Entities/Interactions/InteractionHelper.cs index f1d47cc0..6afbf74e 100644 --- a/src/Discord.Net.Rest/Entities/Interactions/InteractionHelper.cs +++ b/src/Discord.Net.Rest/Entities/Interactions/InteractionHelper.cs @@ -99,8 +99,8 @@ namespace Discord.Rest DefaultPermission = arg.IsDefaultPermission.IsSpecified ? arg.IsDefaultPermission.Value : Optional.Unspecified, - NameLocalizations = arg.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(), + NameLocalizations = arg.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value), // TODO: better conversion to nullable optionals DefaultMemberPermission = arg.DefaultMemberPermissions.ToNullable(), @@ -142,8 +142,8 @@ namespace Discord.Rest DefaultPermission = arg.IsDefaultPermission.IsSpecified ? arg.IsDefaultPermission.Value : Optional.Unspecified, - NameLocalizations = arg.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(), + NameLocalizations = arg.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value), // TODO: better conversion to nullable optionals DefaultMemberPermission = arg.DefaultMemberPermissions.ToNullable(), @@ -188,8 +188,8 @@ namespace Discord.Rest DefaultPermission = arg.IsDefaultPermission.IsSpecified ? arg.IsDefaultPermission.Value : Optional.Unspecified, - NameLocalizations = arg.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(), + NameLocalizations = arg.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value), // TODO: better conversion to nullable optionals DefaultMemberPermission = arg.DefaultMemberPermissions.ToNullable(), @@ -257,8 +257,8 @@ namespace Discord.Rest DefaultPermission = args.IsDefaultPermission.IsSpecified ? args.IsDefaultPermission.Value : Optional.Unspecified, - NameLocalizations = args.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = args.DescriptionLocalizations?.ToDictionary(), + NameLocalizations = args.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = args.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value), Nsfw = args.IsNsfw.GetValueOrDefault(false), DefaultMemberPermission = args.DefaultMemberPermissions.ToNullable(), IntegrationTypes = args.IntegrationTypes, @@ -317,8 +317,8 @@ namespace Discord.Rest DefaultPermission = arg.IsDefaultPermission.IsSpecified ? arg.IsDefaultPermission.Value : Optional.Unspecified, - NameLocalizations = arg.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(), + NameLocalizations = arg.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value), // TODO: better conversion to nullable optionals DefaultMemberPermission = arg.DefaultMemberPermissions.ToNullable(), @@ -357,8 +357,8 @@ namespace Discord.Rest DefaultPermission = arg.IsDefaultPermission.IsSpecified ? arg.IsDefaultPermission.Value : Optional.Unspecified, - NameLocalizations = arg.NameLocalizations?.ToDictionary(), - DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(), + NameLocalizations = arg.NameLocalizations?.ToDictionary(x => x.Key, y => y.Value), + DescriptionLocalizations = arg.DescriptionLocalizations?.ToDictionary(x => x.Key, y => y.Value), Nsfw = arg.IsNsfw.GetValueOrDefault(false), DefaultMemberPermission = arg.DefaultMemberPermissions.ToNullable() }; diff --git a/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj b/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj index cc319909..a51471ac 100644 --- a/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj +++ b/src/Discord.Net.WebSocket/Discord.Net.WebSocket.csproj @@ -1,11 +1,11 @@ - + Discord.Net.WebSocket Discord.WebSocket A core Discord.Net library containing the WebSocket client and models. - net6.0;net5.0;net461;netstandard2.0;netstandard2.1 + net9.0;net8.0;net6.0;net5.0;net461;netstandard2.0;netstandard2.1 true 5 True diff --git a/src/Discord.Net.Webhook/Discord.Net.Webhook.csproj b/src/Discord.Net.Webhook/Discord.Net.Webhook.csproj index 96ac3882..cfa8b042 100644 --- a/src/Discord.Net.Webhook/Discord.Net.Webhook.csproj +++ b/src/Discord.Net.Webhook/Discord.Net.Webhook.csproj @@ -1,11 +1,11 @@ - + Discord.Net.Webhook Discord.Webhook A core Discord.Net library containing the Webhook client and models. - net6.0;net5.0;netstandard2.0;netstandard2.1 + net9.0;net8.0;net6.0;net5.0;netstandard2.0;netstandard2.1; 5 True false diff --git a/test/Discord.Net.Tests.Integration/Discord.Net.Tests.Integration.csproj b/test/Discord.Net.Tests.Integration/Discord.Net.Tests.Integration.csproj index 1d7d9b1c..5b34406a 100644 --- a/test/Discord.Net.Tests.Integration/Discord.Net.Tests.Integration.csproj +++ b/test/Discord.Net.Tests.Integration/Discord.Net.Tests.Integration.csproj @@ -1,7 +1,7 @@ - + - net6.0 + net9.0 false @@ -14,17 +14,13 @@ - - - - + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - diff --git a/test/Discord.Net.Tests.Unit/Discord.Net.Tests.Unit.csproj b/test/Discord.Net.Tests.Unit/Discord.Net.Tests.Unit.csproj index b16b6b18..e7419d09 100644 --- a/test/Discord.Net.Tests.Unit/Discord.Net.Tests.Unit.csproj +++ b/test/Discord.Net.Tests.Unit/Discord.Net.Tests.Unit.csproj @@ -1,7 +1,7 @@ - + - net6.0 + net9.0 false @@ -12,11 +12,11 @@ - - - - - + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive