mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-11-14 21:17:29 -06:00
[chore] update database caching library (#1040)
* convert most of the caches to use result.Cache{}
* add caching of emojis
* fix issues causing failing tests
* update go-cache/v2 instances with v3
* fix getnotification
* add a note about the left-in StatusCreate comment
* update EmojiCategory db access to use new result.Cache{}
* fix possible panic in getstatusparents
* further proof that kim is not stinky
This commit is contained in:
parent
9ab60136dd
commit
8598dea98b
55 changed files with 725 additions and 2289 deletions
17
vendor/codeberg.org/gruf/go-cache/v3/README.md
generated
vendored
Normal file
17
vendor/codeberg.org/gruf/go-cache/v3/README.md
generated
vendored
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# go-cache
|
||||
|
||||
Provides access to a simple yet flexible, performant TTL cache via the `Cache{}` interface and `cache.New()`. Under the hood this is returning a `ttl.Cache{}`.
|
||||
|
||||
## ttl
|
||||
|
||||
A TTL cache implementation with much of the inner workings exposed, designed to be used as a base for your own customizations, or used as-is. Access via the base package `cache.New()` is recommended in the latter case, to prevent accidental use of unsafe methods.
|
||||
|
||||
## lookup
|
||||
|
||||
`lookup.Cache` is an example of a more complex cache implementation using `ttl.Cache{}` as its underpinning. It provides caching of items under multiple keys.
|
||||
|
||||
## result
|
||||
|
||||
`result.Cache` is an example of a more complex cache implementation using `ttl.Cache{}` as its underpinning.
|
||||
|
||||
It provides caching specifically of loadable struct types, with automatic keying by multiple different field members and caching of negative (error) values. All useful when wrapping, for example, a database.
|
||||
Loading…
Add table
Add a link
Reference in a new issue