Decouple cached mod data from web
Pathoschild opened this issue ยท 1 comments
The web API fetches data from mod sites and the wiki on demand, and caches the fetched data for subsequent requests. The implementation is simple, but has disadvantages:
- A broken remote site may affect SMAPI's web services (e.g. mods.smapi.io breaks if the wiki does).
- All data is updated at the same rate, so can't have slower updates for sites with stricter rate limits.
- API calls may take a while or time out when querying a slow site or many mods.
Consider prefetching data for known mods with a background service instead. The web API/UI should indicate if the data being shown is stale (e.g. because the site is down), and still support fetching data on demand for unknown mods.