Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/twilight-rs/twilight
Powerful, flexible, and scalable ecosystem of Rust libraries for the Discord API.
https://github.com/twilight-rs/twilight
Decrease some log levels in the SocketForwarder to DEBUGs.
Approved-by: Iris Hoffmeyer <hi@ir...
482f1c507f644b3a12c6cf000362d272ade5668c authored over 4 years ago by Cldfire <[email protected]>
Add a small utility crate named 'twilight-mention'. twilight-mention is
a crate for creating di...
Properly handle unknown map keys by also deserializing the associated
value via `serde::de::Ign...
Add variants of each method that return a Stream instead of a Future.
This is useful when you n...
Use DashMap instead of mutexed hashmaps. This means that most operations
will no longer be lock...
Add a few notices in the crate-level docs, Lavalink client docs, and
`Lavalink::process` method...
Make `Stats::frames` optional, since these might not be provided if no
frames have been process...
Remove the `serde-value` dependency from the Gateway since it's not
used.
Approved-by: AEnte...
3f4121e95f2e68c3aa206c508ad05c79d8d5ce12 authored over 4 years ago by Vivian <[email protected]>Fix a typo in a warning from 'receiveing' to 'receiving'.
Approved-by: AEnterprise <aenterpri...
cbf0a6d3ec129c1ebf17b8ac1e70ea5a79321443 authored over 4 years ago by Vivian <[email protected]>
Approved-by: AEnterprise <[email protected]>
Approved-by: Vivian Hellyer <vivian@hel...
makes sure events are emitted sequentially
Approved-by: Valdemar Erk <[email protected]>
Appro...
builders/embed: attachment://, embed limits
Approved-by: AEnterprise <aenterprise@aenterprise...
b1e61c4880864dd2043427405c1fa290ba8b6540 authored over 4 years ago by Cassandra McCarthy <[email protected]>
Derive `Deserialize` and `Serialize` on all of the shard events, marking
the `ShardEvent` enum ...
Approved-by: Vivian Hellyer <[email protected]>
Approved-by: Valdemar Erk <[email protected]>
M...
Add additional documentation to the crate docs which includes a full
sample bot and slightly cl...
Use `serde_test` for the `twilight_model::gateway::payload::TypingStart`
model to test (de)seri...
Skip serialising fields in the `UpdateCurrentUser` request if they're
empty.
Approved-by: Bl...
eaf4c0b721c342c0594bec3a7bc0476c706480e5 authored over 4 years ago by Vivian <[email protected]>
In the http's client builder, allow specifying a ratelimiter. This
allows for ratelimiters to b...
Add a bare undocumented "Gift Code Update" event to suppress warnings.
Approved-by: BlackHole...
0d214d6d8b20131235b0fe8200b3f3f0a15892cb authored over 4 years ago by AEnterprise <[email protected]>
Optimise the deserialisation of `twilight_model::guild::Guild` by
avoiding the use of `serde_va...
Fix the deserialisation of the VoiceStateUpdate model by using a custom
deserialiser which defe...
Reqwest client does not needed to be wrapped in an arc as it is
internally handled in Reqwest. ...
* Support for `SUPRESS_EMBEDS` and `allowed_mentions` in edit message.
This also fixes an iss...
d1f3a5d613dfc89adda8843b21022706440fe667 authored over 4 years ago by Erk <[email protected]>Approved-by: @Erk- @vivianhellyer @Arzte
Signed-Off-By: Iris Hoffmeyer <[email protected]>
c4e22e6340618f57d4b662b0319e9658b035928d authored over 4 years ago by Derek Lee <[email protected]>
For the `gateway::payload::GuildDelete` test suite, use `serde_test` for
all of the tests inste...
Pass the configured presence into the identify payload.
Approved-by: Valdemar Erk <valdemar@e...
af24e9890eaafc74383f886d7d8eb53a4ee81f27 authored over 4 years ago by AEnterprise <[email protected]>
Approved-by: @Erk- @Arzte
Merged-by: Iris Hoffmeyer <[email protected]>
Signed-off-by: Iris Hoff...
773ccf66a0963e586f548ead17f2117e2f9a3e9b authored over 4 years ago by Mike Ledger <[email protected]>
Approved-by: @AEnterprise, @Erk-, @Arzte
Merged-by: Iris Hoffmeyer <[email protected]>
Signed-of...
cf6198f0088e1cfe6df90f34f5b65f83b0df80e2 authored over 4 years ago by Derek Lee <[email protected]>
Make the fields of
`gateway::payload::reaction_remove_emoji::PartialEmoji` public. These
were ...
Optimise the deserialisation of `channel::Reaction` by using an
`OptionalMemberDeserializer` in...
Update the test suite for `channel::reaction` to use `serde_test` for
checking equivalence of d...
Alphabetise the fields of all structs for a few reasons:
- The ordering of fields affects the...
a769ace335158ed98d9d1105479fce8df5f7a600 authored over 4 years ago by Vivian <[email protected]>
Optimise the deserialisation of the `gateway::payload::TypingStart`
model by avoiding deseriali...
Optimise the deserialisation of
`twilight_model::gateway::payload::MemberChunk` by using seeded...
Delay the defaulting and processing of fields until all of the required
fields have already bee...
In the GuildChannel deserializer, handle unknown fields. The
deserializer, on an unknown field,...
Add a `#[serde(untagged)]` to the
`twilight_model::gateway::payload::RequestGuildMembersInfo` e...
Fix the deserialization of `twilight_model::channel::Reaction`s with
members, by making use of ...
Emit the `twilight_model::gateway::event::shard` events when something
happens to the state of ...
Fix the deserialisation of
`twilight_model::gateway::payload::TypingStart` events with members,...
Handle invalid intents (code 4013) and disallowed intents (code 4014)
errors from Discord, and ...
Derive `serde_repr::{Deserialize_repr, Serialize_repr}` for the
`channel::message::MessageType`...
* document request/user/*.rs*
* document request/*.rs
Signed-off-by: Cassandra McCarthy <cas...
97c86b6cd5ae5ae875d341ed5e25ed79c4f5e6ae authored over 4 years ago by Cassandra McCarthy <[email protected]>
* document request/guild/ban/*
* document request/guild/emoji/*
* document request/guild/integ...
In the gateway, enable the `std` feature for the `once_cell` dependency.
We need this for our u...
Remove the optional 'serde-support' feature in the model crate. As
evidenced by this patch, thi...
* docs: vivian's patch
* docs for request/channel/invite
* docs for request/channel/messag...
5f9c86812ce6a54eafa942dfbfac707e3915a444 authored over 4 years ago by Cassandra McCarthy <[email protected]>
Add a custom deserializer for
`twilight_model::gateway::payload::MemberChunk`, which now specia...
Simplify the
`twilight_model::gateway::payload::GuildDelete::unavailable` field from
an `Optio...
Fix the deserialization of guild channels by adding a custom
deserializer and matching on the c...
These logs don't need to be here.
Approved-by: AEnterprise <[email protected]>
Ap...
Fix the response deserialization of the `GetMember` request.
Approved-by: Valdemar Erk <valde...
e7305523610fb72c83c9e1bc46bcd10c726949d1 authored over 4 years ago by Cldfire <[email protected]>
When the cluster would start a shard, it clones the shard to reduce the
time it holds on to the...
Simplify the client builder. The client builder originally involved 4
structs: the client, clie...
Handle 429 (ratelimited) API errors during deserialisation. The format
of the error is:
```
...
Make all of the HTTP request structs' initialisers non-public, i.e.
`pub(crate)` instead. These...
Remove the disabled workflows, because these - and especially the stale
workflow - aren't likel...
08eddb5d2f28740bbd1087c857afb974e0c1f33d authored over 4 years ago by Cassandra McCarthy <[email protected]>
Following issue #222, the HEAD branch for the repository was renamed to
"trunk". This patch upd...
https://github.com/discord/discord-api-docs/commit/b9edace323c9df64c79f104d85984690ae4e2977
052fc8860c808268cced37a13d02c313e08d82ee authored over 4 years ago by Iris Hoffmeyer <[email protected]>
Reduce the selected features of dependencies, mostly by disabling all
default features and only...
Implement handling of the ChannelPinsUpdate event. This will first look
through the guild chann...
This PR is another try at #180, which had to be reverted in #185 due to
not supporting deserial...
Separate the booting of a Shard (connecting to the gateway, aka
"running") from the initialisat...
Improve the docs' feature layout into sub-sections, making it clearer
to read and easier to lin...
In Standby, use DashMap for internal maps, which avoids the need for
locking and many of the fu...
In the gateway's Shard, handle invalid authorization both early and
during processing of the sh...
Use the stable toolchain in the Test action, rather than the beta
toolchain.
Approved-by: AE...
f88cd2934e7445c1fae8f523dfd7cc206cf4c72e authored over 4 years ago by Vivian <[email protected]>
Sync the readmes in README.md files and in lib.rs files. This also adds
a CI workflow for check...
Remove the dependency on `twilight-gateway` from the
`twilight-cache-inmemory` crate. This was ...
`twilight-lavalink` is a client for [Lavalink] as part of the twilight
ecosystem.
It include...
94acea4a28cad34e153694bd5ee8b479ae2493e3 authored over 4 years ago by Vivian <[email protected]>
Add a lot of TRACE level logging to the standby crate, which can help
users figure out applicat...
When iterating over the bystanders of an event being waited on, if the
check didn't pass the se...
* Add simd-json support to twilight-http and twilight-gateway
* Update readme files to docume...
c2304e35a9fb5cb83f375f9390540c64f24c14d9 authored over 4 years ago by Tunahan Karlıbaş <[email protected]>Add `Send` bounds to the wait methods:
- `wait_for`
- `wait_for_event`
- `wait_for_message`...
* implement cold resuming
allows to close the close the shard without terminating the session a...
Use a new logo that's a bit more twilight-y than the old one. :)
Approved-by: AEnterprise
Ap...
* Make voice state cache optionally return
* Fmt
* Try making the voice state cache based ...
f10c6cc6a07f7d6e582f63009e68f045ecd39331 authored over 4 years ago by BlackHoleFox <[email protected]>
Fix stable clippy which introduced a regression into stable that gives
this error message for a...
When the user uses a retrieval request, like getting a user by ID, the
future output is a `Resu...
Require ReactionType for HTTP reaction methods.
Closes #181.
Approved-by: Valdemar Erk <va...
b212c4411ce8d068da5f18eba71163e338986cd8 authored over 4 years ago by Cassandra McCarthy <[email protected]>
Add back the cache update implementation for
`twilight_model::gateway::event::Event`s, which wa...
Revert #180 for now due to not including support for guild members that
don't have a guild ID o...
In Standby, instead of returning Options for the waiting methods return
Results, where the erro...
Change the `model::guild::Member`'s `guild_id` field from an
`Option<GuildId>` to just a `Guild...
Standby is a utility to wait for an event to happen based on a predicate
check. For example, yo...
* http: parse api errors in responses
When an error occurs, instead of just giving the user a...
0915edc931ab731e63b3cfc72191b8d83345699a authored over 4 years ago by Vivian <[email protected]>This should drastically speed up CI times, as cargo-audit is currently the slowest task to run w...
d653268f95573ffb39ccaf391a2185184422fa75 authored over 4 years ago by Iris Hoffmeyer <[email protected]>
Move the Event enum and its related types (such as the `EventType`,
`ShardEvent` and child stru...
https://discord.com/developers/docs/reference#user-agent
Signed-off-by: Valdemar Erk <valdema...
113ae78483aa924a9fb758c7a1123de20f95d9a5 authored over 4 years ago by Erk <[email protected]>
In the gateway's payload module, export the `reaction_remove_emoji`
module. The `payload` modul...
* Update the model with the newest changes.
- Document optional Connection object fields.
ht...
In the InMemoryCache, automatically attach Guild IDs to guild channels
as they're added. Guild ...
Add two features to the `http` crate: `native` and `rustls`. `native`
enables `reqwest`'s `nati...
Use the stable channel's rustfmt. This runs rustfmt and removes the
following lints that are un...
Update to use the discord.com domain, because discordapp.com is now
soft-deprecated but without...
Run the Audit action only when the Cargo.toml file has been updated on
pushes and PRs, instead ...
http: validate request parameters
This patch is a continuation of PR #146 with the comments a...
990d05931a35eeac1b0a76cbba9b36bb874d23d9 authored over 4 years ago by Vivian <[email protected]>
Rational is primarily allowing developers to manually cache items outside
of events, such as ho...
* actions: use stable clippy
Use stable clippy in the lint workflow and fix a lint that was c...
6cda47ced8357f36cd0a3f355ea993e506938944 authored over 4 years ago by Vivian <[email protected]>