Changelog

jsr-io/jsr · · 1 commit

Cache hot paths and cap symbol listings

A single fix cuts R2 re-downloads for docs/source and prevents oversized all-symbols docs responses from hammering render time.

Stop re-downloading immutable bucket objects (crowlKats888163a) The API now routes docs/source asset fetches through an ObjectCache, avoiding repeated R2 downloads for objects that are effectively immutable. That should remove a major storage-latency bottleneck on /docs and /source and reduce tail latency across many package requests.

Bound docs symbol listings to avoid oversized responses (crowlKats888163a) /docs/search and /docs/search_structured now reject packages whose full symbol listing would be too large, returning a dedicated 413-style error instead of attempting to generate everything at once. The frontend and API also gained shared-cache handling for these versioned search endpoints, improving cacheability for authenticated callers.

Other misc changes

  • Added API error plumbing for new docs/object-cache errors
  • Updated proxy/cache logic and tests for shared versioned responses
  • Minor docs/source handler refactors to thread cache state through