Discord.Net-Anarchy 1.9.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Discord.Net-Anarchy --version 1.9.0                
NuGet\Install-Package Discord.Net-Anarchy -Version 1.9.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Discord.Net-Anarchy" Version="1.9.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Discord.Net-Anarchy --version 1.9.0                
#r "nuget: Discord.Net-Anarchy, 1.9.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Discord.Net-Anarchy as a Cake Addin
#addin nuget:?package=Discord.Net-Anarchy&version=1.9.0

// Install Discord.Net-Anarchy as a Cake Tool
#tool nuget:?package=Discord.Net-Anarchy&version=1.9.0                

This is basically Discord .Net but I added some more features (back) like user login, some stuff in Group and DM-Channels, etc. All the changes that i made are listed below

user

  • SocketSelfUser.cs:59 → added upload limit method
  • RestSelfUser.cs:28 → added upload limit method
  • ISelfUser.cs:61 → added upload limit method
  • UserHelper.cs:113 → added upload limit method

guild

  • SocketGuild.cs:687 → Made User nullable in GetBansAsync
  • SocketGuild.cs:1607 → removed check if there are stickers in GetStickersAsync()
  • RestGuild.cs:367 → Made User nullable in GetBansAsync
  • GuildHelper.cs:447 → Changed max of 5 to 20 in forum tags
  • GuildHelper.cs:1393 → fixed nullreference in Welcomescreen get
  • GuildHelper.cs:1423 → fixed nullreference in Welcomescreen get

text channel

  • SocketTextChannel.cs:138 → Added GetArchivedThreadsAsync method
  • SocketTextChannel.cs:145 → Added GetAllThreadChannels method which gets both active an archived thread channels
  • SocketTextChannel.cs:408 → Implemented GetArchivedThreadsAsync method
  • RestTextChannel.cs:296 → Added GetArchivedThreadsAsync method
  • RestTextChannel.cs:343 → Implemented GetArchivedThreadsAsync method
  • ITextChannel.cs:160 → Added GetArchivedThreadsAsync method
  • ChannelHelper.cs:413 → fixed user problem with upload (aka added isbot check)

thread channel

  • ThreadHelper.cs:84 → added GetArchivedThreads method

forum channel

  • SocketForumChannel.cs:17 → added DebuggerDisplay attribute
  • SocketForumChannel.cs:100 → made CategoryId nullable
  • SocketForumChannel.cs:150 → Added GetArchivedThreadsAsync method
  • SocketForumChannel.cs:170 → Added GetAllPostsAsync method which tries to get both active and archived posts from Forum
  • SocketForumChannel.cs:176 → added DebuggerDisplay
  • SocketForumChannel.cs:178 → added clone
  • SocketForumChannel.cs:211 → Implemented GetArchivedThreadsAsync method
  • RestForumChannel.cs:16 → added DebuggerDisplay attribute
  • RestForumChannel.cs:94 → made CategoryId nullable
  • RestForumChannel.cs:148 → Implemented GetArchivedThreadsAsync method
  • RestForumChannel.cs:167 → Added GetAllPostsAsync method which tries to get both active and archived posts from Forum
  • RestForumChannel.cs:173 → added DebuggerDisplay
  • RestForumChannel.cs:190 → Added GetArchivedThreadsAsync method
  • IForumChannel.cs:247 → added GetArchivedThreadsAsync method
  • ForumTag.cs:45 → Added .Build() method for easier access

group channel

  • SocketGroupChannel.cs:27 → renamed iconId to ownerId
  • SocketGroupChannel.cs:30 → Created public IconId prop
  • SocketGroupChannel.cs:44 → Added Owner Property
  • SocketGroupChannel.cs:49 → fixed Users get
  • SocketGroupChannel.cs:57 → fixed Recipients get
  • SocketGroupChannel.cs:79 → fixed IconId
  • SocketGroupChannel.cs:81 → assigned ownerId field
  • SocketGroupChannel.cs:106 → Added GetIconUrl
  • SocketGroupChannel.cs:341 → Added implementations of Users
  • SocketGroupChannel.cs:343 → Added implementations of CurrentUser
  • RestGroupChannel.cs:20 → renamed iconId to ownerId
  • RestGroupChannel.cs:23 → Created public IconId prop
  • RestGroupChannel.cs:30 → Added Owner Property
  • RestGroupChannel.cs:32 → fixed Users get
  • RestGroupChannel.cs:37 → fixed Recipients get
  • RestGroupChannel.cs:54 → fixed IconId
  • RestGroupChannel.cs:57 → assigned ownerId field
  • RestGroupChannel.cs:88 → Added GetIconUrl
  • IGroupChannel.cs:22 → added Owner
  • IGroupChannel.cs:28 → added GetIconUrl()

dm channel

  • SocketDMChannel.cs:260 → Added implementations of Users
  • SocketDMChannel.cs:262 → Added implementations of CurrentUser
  • ISocketPrivateChannel.cs:12 → Added Users
  • ISocketPrivateChannel.cs:14 → Added CurrentUser

discord client

  • DiscordSocketClient.cs:253 → added validation to check if its a user or bot token
  • DiscordSocketClient.EventHandling.cs:107 → data.Application is null for users
  • DiscordShardedClient.cs:2 → added using Discord.Net.Queue
  • DiscordShardedClient.cs:298 → fixed null exception if sticker is from an unknown guild
  • DiscordShardedClient.cs:434 → removed client.SentRequest (added further down)
  • DiscordShardedClient.cs:533 → added before and after request sent events (if the BeforeRequestSent func is set it will override the ones configured at the base idk if thats correct tho, if not pls text me and tell me how to solve that)
  • DiscordShardedClient.cs:648 → added global before and after request sent events for the sharded client to receive all of them from the shards
  • DiscordWebhookClient.cs:9 → added using Discord.Net.Queue
  • DiscordWebhookClient.cs:30 → added before and after request sent events + a func to potentially await the request thats being sent
  • DiscordWebhookClient.cs:109 → implemented BeforeSentRequest event
  • DiscordWebhookClient.cs:117 → implemented AfterSentRequest event and fixed params
  • BaseDiscordClient.cs:2 → added using Discord.Net.Queue
  • BaseDiscordClient.cs:24 → added before and after request sent events + a func to potentially await the request thats being sent
  • BaseDiscordClient.cs:71 → implemented BeforeSentRequest event
  • BaseDiscordClient.cs:79 → implemented AfterSentRequest event and fixed params
  • DiscordRestApiClient.cs:33 → adjusted the sentRequestEvent params
  • DiscordRestApiClient.cs:36 → added BeforeRequestSent event
  • DiscordRestApiClient.cs:51 → add setter for AuthTokenType and Call SetBaseUrl() in there
  • DiscordRestApiClient.cs:101 → Add User and webhook to option and just return token without anything else
  • DiscordRestApiClient.cs:309 → fire the BeforeRequestSent event
  • DiscordRestApiClient.cs:316 → adjusted the sentRequestEvent params

messages

  • IMessage.cs:218 → moved Poll property from IUserMessage.cs:39 to there cus idk why its only in IUserMessage tbh
  • IUserMessage.cs:44 → removed poll property
  • RestMessage.cs: 94 → added Poll property (also changed it to protected set)
  • RestUserMessage.cs: 55 → removed poll property
  • SocketMessage.cs: 82 → added Poll property (also changed it to protected set)
  • SocketUserMessage.cs: 56 → removed poll property

token

  • TokenType.cs:23 → Added user token type
  • TokenUtils.cs:160 → added user token to switch to skip validation

miscellaneous

  • SocketCustomSticker.cs:50 → added update override so i can actually have the author of the sticker
  • CDN.cs:260 → added gif option in sticker
  • CDN.cs:268 → fixed nullreference exception with imageId
  • FileAttachment.cs:66 → added new constrcutor that instead of taking a stream takes a byte[] of data
  • SocketInteractionContext.cs:16,49,92 → Replaced DiscordSocketClient with BaseSocketClient
  • RequestQueue.cs:73 → added a preemtive check if the canceltoken has been cancelled
  • AsyncEvent.cs:75 → added 2 new invoke methods
  • InteractionService.cs:781 → added SearchModalCommand method

Pull requests

  • none

own additions

  • DiscordRestClient.cs:338 → added RefreshUrlAsync and RefreshUrlsAsync method
  • DiscordRestApiClient.cs:2595 → added RefreshUrlsAsync method
  • RefreshedUrl.cs → class added in Discord.Net.Rest/API/Common for the things above
  • fixed various ToDictionary() with "ToDictionary(i ⇒ i.Key, j ⇒ j.Value)" cus compiler gave error

helpers

kyle

  • Subscribe method to get all events for a guild that may not fire events such as messages
  • Usage:
  • DiscordSocketClient client = new DiscordSocketClient();
  • await client.SubscribeToGuildEvents(guild-id);
  • Changes:
  • added ClientExtensions.cs class in Discord.WebSocket
  • GatewayOpCode.cs:32 → added GuildSubscription enum

Cant wait for discord .Net to finally make a new release of feature x? Add them here yourself and make a PR!

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net461 is compatible.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 is compatible.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.9.1 104 10/24/2024
1.9.0 147 10/2/2024 1.9.0 is deprecated because it has critical bugs.
1.8.0 171 6/7/2024 1.8.0 is deprecated because it is no longer maintained.
1.7.2 252 2/23/2024 1.7.2 is deprecated because it is no longer maintained.
1.7.1 241 1/26/2024 1.7.1 is deprecated because it is no longer maintained.
1.7.0 477 11/20/2023 1.7.0 is deprecated because it is no longer maintained.
1.6.1 644 7/6/2023 1.6.1 is deprecated because it is no longer maintained.
1.6.0 514 7/6/2023 1.6.0 is deprecated because it has critical bugs.
1.5.5 535 5/19/2023 1.5.5 is deprecated because it is no longer maintained.
1.5.4 545 4/28/2023 1.5.4 is deprecated because it is no longer maintained.
1.5.3 566 4/27/2023 1.5.3 is deprecated because it is no longer maintained.
1.5.2 524 4/26/2023 1.5.2 is deprecated because it is no longer maintained.
1.5.1 578 4/17/2023 1.5.1 is deprecated because it has critical bugs.
1.5.0 619 4/3/2023 1.5.0 is deprecated because it has critical bugs.
1.4.8 627 3/15/2023 1.4.8 is deprecated because it is no longer maintained.
1.4.7 642 3/9/2023 1.4.7 is deprecated because it has critical bugs.
1.4.6 643 3/5/2023 1.4.6 is deprecated because it has critical bugs.
1.4.5 619 3/5/2023 1.4.5 is deprecated because it is no longer maintained.
1.4.4 641 2/13/2023 1.4.4 is deprecated because it is no longer maintained.
1.4.3 706 1/12/2023 1.4.3 is deprecated because it is no longer maintained.
1.4.2 713 1/11/2023 1.4.2 is deprecated because it is no longer maintained.
1.4.1 674 1/11/2023 1.4.1 is deprecated because it is no longer maintained.
1.4.0 710 1/6/2023 1.4.0 is deprecated because it is no longer maintained.
1.3.3 871 10/27/2022 1.3.3 is deprecated because it is no longer maintained.
1.3.2 814 10/26/2022 1.3.2 is deprecated because it is no longer maintained.
1.3.1 825 10/25/2022 1.3.1 is deprecated because it is no longer maintained.
1.2.12 862 10/24/2022 1.2.12 is deprecated because it is no longer maintained.
1.2.11 858 10/19/2022 1.2.11 is deprecated because it is no longer maintained.
1.2.10 851 10/19/2022 1.2.10 is deprecated because it is no longer maintained.
1.2.9 913 8/9/2022 1.2.9 is deprecated because it is no longer maintained.
1.2.8 905 8/3/2022 1.2.8 is deprecated because it is no longer maintained.
1.2.7 923 7/29/2022 1.2.7 is deprecated because it is no longer maintained.
1.2.6 902 7/26/2022 1.2.6 is deprecated because it is no longer maintained.
1.2.5 905 7/25/2022 1.2.5 is deprecated because it is no longer maintained.
1.2.4 911 7/25/2022 1.2.4 is deprecated because it is no longer maintained.
1.2.3 899 7/20/2022 1.2.3 is deprecated because it is no longer maintained.
1.2.2 931 7/7/2022 1.2.2 is deprecated because it is no longer maintained.
1.2.1 960 6/23/2022 1.2.1 is deprecated because it is no longer maintained.
1.2.0 866 6/23/2022 1.2.0 is deprecated because it is no longer maintained.
1.1.6 943 4/25/2022 1.1.6 is deprecated because it is no longer maintained.
1.1.4 874 4/25/2022 1.1.4 is deprecated because it is no longer maintained.
1.1.3 922 4/25/2022 1.1.3 is deprecated because it is no longer maintained.
1.1.2 921 4/24/2022 1.1.2 is deprecated because it is no longer maintained.
1.1.1 959 4/11/2022 1.1.1 is deprecated because it is no longer maintained.
1.1.0 970 4/8/2022 1.1.0 is deprecated because it is no longer maintained.
1.0.6 962 4/6/2022 1.0.6 is deprecated because it is no longer maintained.
1.0.5 948 4/6/2022 1.0.5 is deprecated because it is no longer maintained.
1.0.4 1,009 4/5/2022 1.0.4 is deprecated because it is no longer maintained.