Caching layer for discardable credentials
- Dominant language
- JavaScript
- Stars
- 27.2k
- Forks
- 5.6k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 46
Description
API credentials for the Matrix badge work by creating a guest user. It would be better for performance reasons of the badge and the server not to create a guest user for each request, but to create one once and use it for all requests.
In https://github.com/badges/shields/pull/2527#issuecomment-447990925 I described an adaptation of the GitHub `FsTokenPersistence`/`RedisTokenPersistence` storage layer to support Matrix.
The other places caching has arisen are for Gitlab #1838 which is similar to GitHub, and #1545 which is about caching of intermediate API responses. As I think about the Matrix use case some more, it seems possible that it's better to think of these as intermediate responses, since unlike GitHub and Gitlab API keys, they are discardable.
See also this discussion: https://github.com/badges/shields/issues/1848#issuecomment-434898047
Dependencies: #1848 #1806
Contributor guide
Research direction
Start by reading the discussion in PR #2527 and the related threads in issues #1848, #1806, #1838, and #1545. The work is complete when the Matrix badge can reuse a cached guest credential across requests without creating a guest user each time, while treating the cached credential as discardable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100