-
Notifications
You must be signed in to change notification settings - Fork 637
Rename ImageData to DataUri and allow setting its mimetype
#3412
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Collaborator
Author
|
I somehow forgot we already had support for the soundboard API. |
f7165be to
49f1b7d
Compare
49f1b7d to
d6a84c9
Compare
arqunis
approved these changes
Sep 4, 2025
BossFlea
pushed a commit
to BossFlea/serenity
that referenced
this pull request
Sep 16, 2025
…ity-rs#3412) Back in September 2024, Discord added [Soundboard][soundboard] APIs that allow a bot to create a new sound by uploading raw mp3 or ogg data. This data is specified as part of the JSON rather than a multipart upload (an odd decision IMO); however, that means that the semantics of `ImageData` are wrong as it makes too many assumptions about its contents. In particular, we assume that the base64 data will always be an image, and the `CreateAttachment::encode` method always assigns the `image/png` mimetype. This commit removes these assumptions by renaming the struct to simply `DataUri`, and now requiring the user to specify the mimetype when calling `CreateAttachment::encode`. [soundboard]: https://discord.com/developers/docs/resources/soundboard#soundboard-resource
BossFlea
pushed a commit
to BossFlea/serenity
that referenced
this pull request
Sep 16, 2025
…ity-rs#3412) Back in September 2024, Discord added [Soundboard][soundboard] APIs that allow a bot to create a new sound by uploading raw mp3 or ogg data. This data is specified as part of the JSON rather than a multipart upload (an odd decision IMO); however, that means that the semantics of `ImageData` are wrong as it makes too many assumptions about its contents. In particular, we assume that the base64 data will always be an image, and the `CreateAttachment::encode` method always assigns the `image/png` mimetype. This commit removes these assumptions by renaming the struct to simply `DataUri`, and now requiring the user to specify the mimetype when calling `CreateAttachment::encode`. [soundboard]: https://discord.com/developers/docs/resources/soundboard#soundboard-resource
mkrasnitski
added a commit
to mkrasnitski/serenity
that referenced
this pull request
Oct 7, 2025
…ity-rs#3412) Back in September 2024, Discord added [Soundboard][soundboard] APIs that allow a bot to create a new sound by uploading raw mp3 or ogg data. This data is specified as part of the JSON rather than a multipart upload (an odd decision IMO); however, that means that the semantics of `ImageData` are wrong as it makes too many assumptions about its contents. In particular, we assume that the base64 data will always be an image, and the `CreateAttachment::encode` method always assigns the `image/png` mimetype. This commit removes these assumptions by renaming the struct to simply `DataUri`, and now requiring the user to specify the mimetype when calling `CreateAttachment::encode`. [soundboard]: https://discord.com/developers/docs/resources/soundboard#soundboard-resource
mkrasnitski
added a commit
to mkrasnitski/serenity
that referenced
this pull request
Oct 7, 2025
…ity-rs#3412) Back in September 2024, Discord added [Soundboard][soundboard] APIs that allow a bot to create a new sound by uploading raw mp3 or ogg data. This data is specified as part of the JSON rather than a multipart upload (an odd decision IMO); however, that means that the semantics of `ImageData` are wrong as it makes too many assumptions about its contents. In particular, we assume that the base64 data will always be an image, and the `CreateAttachment::encode` method always assigns the `image/png` mimetype. This commit removes these assumptions by renaming the struct to simply `DataUri`, and now requiring the user to specify the mimetype when calling `CreateAttachment::encode`. [soundboard]: https://discord.com/developers/docs/resources/soundboard#soundboard-resource
mkrasnitski
added a commit
to mkrasnitski/serenity
that referenced
this pull request
Oct 7, 2025
…ity-rs#3412) Back in September 2024, Discord added [Soundboard][soundboard] APIs that allow a bot to create a new sound by uploading raw mp3 or ogg data. This data is specified as part of the JSON rather than a multipart upload (an odd decision IMO); however, that means that the semantics of `ImageData` are wrong as it makes too many assumptions about its contents. In particular, we assume that the base64 data will always be an image, and the `CreateAttachment::encode` method always assigns the `image/png` mimetype. This commit removes these assumptions by renaming the struct to simply `DataUri`, and now requiring the user to specify the mimetype when calling `CreateAttachment::encode`. [soundboard]: https://discord.com/developers/docs/resources/soundboard#soundboard-resource
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
breaking change
The public API is changed, resulting in miscompilations or unexpected new behaviour for users
builder
Related to the `builder` module.
enhancement
An improvement to Serenity.
model
Related to the `model` module.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Back in September 2024, Discord added Soundboard APIs that allow a bot to create a new sound by uploading raw mp3 or ogg data. This data is specified as part of the JSON rather than a multipart upload (an odd decision IMO), however that means that the semantics of
ImageDataare wrong as it makes too many assumptions about its contents. In particular, we assume that the base64 data will always be an image, and theCreateAttachment::encodemethod always assigns theimage/pngmimetype.This PR removes these assumptions by renaming the struct to simply
DataUri, and now requiring the user to specify the mimetype when callingCreateAttachment::encode.