0.14.1 |
|
---|---|
0.14.0 |
|
0.13.21 |
|
0.13.19 |
|
0.13.7 |
|
#27 in #twilight
32 downloads per month
Used in sparkle-cache-postgres
140KB
2.5K
SLoC
Sparkle Cache
A backend-agnostic Discord cache implementation for the Twilight ecosystem
It provides a Cache
trait that provides methods to get data from the cache and a Backend
trait used to add support
for a backend, refer to the documentation of each trait for more
Usage
This crate is for adding support for a backend, if you just need to use the cache, you should use one of the crates:
- Sparkle Cache Postgres
- Please create a PR to add your crate to this list
Compatibility
The models don't use any arrays and every field is a primitive type, this makes it compatible with schematic backends out of the box
Incompleteness
Only the data from events are cached, though it's on the to-do list to add support for data that requires API methods
This means this data can't be cached for now:
- Private channels
- Bans
- Auto moderation rules
- Integrations
- Scheduled events
- Invites
- Webhooks
- Missing data that you can create a PR to add to this list
Support for libraries other than Twilight
This doesn't depend tightly on Twilight, you can easily fork this and change the Twilight models used in it
Versioning
Because it tries to follow Twilight's version, minor versions will include breaking changes. This means you should pin
it to the latest version. For example instead of sparkle-cache = "0.14"
do sparkle-cache = "0.14.0"
. Of course try
to keep it at the latest version as updates usually contain bugfixes
Features
Tests
Enables the testing module, it's intended for libraries implementing traits in this library, and it should be enabled
only under [dev-dependencies]
, for example
[package]
name = "sparkle-cache-some-backend"
[dev-dependencies]
sparkle-cache = { version = "x", features = ["tests"] }
[dependencies]
sparkle-cache = "x"
If the test error is related to this crate, please create an issue
Stickers are currently not cached as they can't be tested because of a bug in Twilight
Your help is needed
Any feedback or bug reports will be very useful in further development, the code is in a working state with all essential methods done but there's many possible additions that will be added as you request them!
Dependencies
~3–14MB
~170K SLoC