Repository navigation
Releases
Releases · thebuilder/umbraco-cache-tags
v0.1.0-preview.4
What's Changed
- Count an item's references only when the response renders it by @thebuilder in #31
Full Changelog: v0.1.0-preview.3...v0.1.0-preview.4
v0.1.0-preview.3
What's Changed
- Carry one stored set key for responses past 64 items by @thebuilder in #30
Full Changelog: v0.1.0-preview.2...v0.1.0-preview.3
v0.1.0-preview.2
What's Changed
- Put the keys purges need first in the header, and cap it at 128 by @thebuilder in #19
- Keep response mappings 90 days, and recommend a server-side Delivery API by @thebuilder in #20
- Drop schema- keys: a content type or data type change purges everything by @thebuilder in #21
- Make item keys the default by @thebuilder in #22
- Remove the response mapping: a response carries the keys of what it shows by @thebuilder in #24
- Trim the settings to the six a site sets by @thebuilder in #25
- Prove purges end to end, and fix two stale-cache bugs it found by @thebuilder in #26
- Break up the timing docs, and show every backoffice tab by @thebuilder in #27
- Skip the end-to-end jobs when only documentation changed by @thebuilder in #28
- Remove eyebrows from the docs landing by @thebuilder in #29
Full Changelog: v0.1.0-preview.1...v0.1.0-preview.2
v0.1.0-preview.1
The first preview of Cache Tags for Umbraco. It tags Delivery API responses with cache keys, and purges exactly the right ones once every Umbraco server has applied a change.
dotnet add package TheBuilder.CacheTags --prereleaseSupports Umbraco 17.4 and later, Umbraco 18 included, on .NET 10, with the Delivery API enabled. SQL Server, or SQLite for a single server.
In this preview
- Cache keys on every response. Each cacheable Delivery API response carries an
X-Umbraco-Cache-Keysheader for the frontend to tag its cache with. - Exact purges. A publish, unpublish, move, sort, trash or type change purges the responses that showed it: the item's page, the listings it appears in, and the pages that pick it.
- No stale refetch. A purge waits until every server has applied the change, and listings until every server's Delivery API index has it.
- Purge targets. A signed webhook, with a complete Next.js receiver in the docs, or Cloudflare purge by tag. Configure them in
appsettings.jsonor in the backoffice, with request headers and secrets read fromCacheTags:Secrets. - Your own APIs.
[CacheTagged]andICacheTagsResponsetag your own controllers, andICacheTagsChangesrecords changes to their data. - Backoffice. Under Settings > Advanced > Cache tags: changes and their purges, key lookup, failed purges, purge by hand, and a cache info tab on each document.
Known limits
- The public C# API may still change before 1.0.
- Every Umbraco server, delivery servers included, needs write access to the package's tables.