Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v5 Entity overhaul #1653

Open
Plerx2493 opened this issue Oct 18, 2023 · 0 comments
Open

v5 Entity overhaul #1653

Plerx2493 opened this issue Oct 18, 2023 · 0 comments
Labels
big-change core enhancement epic-nullability for pull requests and issues relating to enabling nullability in v5 up for grabs
Milestone

Comments

@Plerx2493
Copy link
Member

Plerx2493 commented Oct 18, 2023

Details

All entities need to:

  1. be correct according to the api specification
  2. have correct nullability annotations

Outbound REST or Gateway payloads also need to represent optionals and nullability corretly to discord. The public-facing entities will continue to combine optionality and nullability, and thus both states should be represented in C# as nullable.

Contribution

This is a bigger issue, but its complexity isn't very high. Please don't hesitate to create pull requests for a specific portion and reference this issue. Once the changes get integrated, I'll make sure to revise the list.

Entities

  • DiscordApplication
  • AuditLogs
    • AuditLog
    • AuditLogAction
    • AuditLogActionChange
    • AuditLogActionOptions
  • AutoModeration
    • DiscordAutoModerationAction
    • DiscordAutoModerationActionExecution
    • DiscordRuleActionMetadata
    • DiscordAutoModerationRule
    • DiscordRuleTriggerMetadata
  • Channel
    • DiscordChannel
    • DiscordDmChannel
    • DiscordFollowedChannel
    • DiscordStageInstance
    • DiscordThreadChannel
    • DiscordThreadChannelMember
    • DiscordThreadChannelMetadata
    • ThreadQueryResult
    • DiscordForumChannel
    • DiscordForumPostStarter
    • DiscordForumPostTag
    • DiscordOverwrite
  • Message
    • DiscordMessage
    • DiscordMentions
    • DiscordAttatchment
    • DiscordMessageActivity
    • DiscordMessageApplication
    • DiscordMessageInteraction
    • DiscordMessageSticker
    • DiscordMessageStickerPack
    • DiscordReaction
    • DiscordEmoji
  • Guild
    • DiscordGuild
    • DiscordBan
    • DiscordGuildEmbed
    • DiscordGuildEmoji
    • DiscordGuildMembershipScreening
    • DiscordGuildMembershipScreeningField
    • DiscordGuildPreview
    • DiscordGuildTemplate
    • DiscordGuildWelcomeScreen
    • DiscordGuildWelcomeScreenChannel
    • DiscordMember
    • DiscordRole
    • DiscordRoleTags
    • DiscordWidget
    • DiscordWidgetMember
    • DiscordWidgetSettings
  • Integration
    • DiscordIntegration
    • DiscordIntegrationAccount
  • Interaction
    • DiscordApplicationCommand
    • DiscordApplicationCommandOption
    • DiscordApplicationCommandOptionChoice
    • DiscordAutoCompleteChoice
    • DiscordSelectComponentOption
    • DiscordActionRowComponent
    • DiscordButtonComponent
    • DiscordComponent
    • DiscordComponentEmoji
    • DiscordLinkButtonComponent
    • TextInputComponent
    • DiscordApplicationCommandPermission
    • DiscordGuildApplicationCommandPermissions
    • DiscordInteraction
    • DiscordInteractionApplicationCommandCallbackData
    • DiscordInteractionData
    • DiscordInteractionDataOption
    • DiscordInteractionResolvedCollection
  • Invites
    • DiscordInvite
    • DiscordInviteChannel
    • DiscordInviteGuild
    • DiscordStageInvite
  • User
    • DiscordUser
    • DiscordActivity
    • DiscordPresence
  • DiscordVoiceRegion
  • DiscordVoiceState
  • DiscordWebhook
  • DiscordConnection
  • Transport
    • TransportActivity
    • TransportApplication
    • TransportGuild
    • TransportUser
    • TransportTeam
    • TransportMember
  • Gateway
    • GatewayHello
    • GatewayIdentify
    • GatewayInfo
    • GatewayPayload
    • GatewayRequestGuildMembers
    • ReadyPayload
    • ClientProperties
  • Rest
    • RestApplicationCommandCreatePayload
    • RestChannelCreatePayload
    • RestGuildCreatePayload
    • RestStickerCreatePayload
    • RestStickerModifyPayload
    • RestThreadCreatePayload
    • RestForumPostCreatePayload
    • RestUserDmCreatePayload
    • RestUserGroupDmCreatePayload
    • RestUserUpdateCurrentPayload
    • RestUserGuild
    • RestUserGuildListPayload
    • RestWebhookPayload
    • RestWebhookExecutePayload
    • RestWebhookMessageEditPayload
  • FollowedChannelAddPayload
  • StatusUpdate
  • VoiceStateUpdate

Notes

Yes i did take 20 minutes to c&p those names

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
big-change core enhancement epic-nullability for pull requests and issues relating to enabling nullability in v5 up for grabs
Projects
None yet
Development

No branches or pull requests

1 participant