Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ Semver applies from 1.0.0. A breaking change to a documented API needs a major

## [Unreleased]

Nothing yet.

## 27.8.1 - 2026-10-11

### Fixed

Tier 2 — http. Tier 4 — render. Tier 5 — cli.
Expand All @@ -19,6 +23,10 @@ Tier 2 — http. Tier 4 — render. Tier 5 — cli.
- **A served `static` page is one kept document.** The container's static memo (1,024 documents) was keyed on the raw pathname too, so `/about/`, `//about`, `/about//`, … were each a render and a slot, and a visitor could fill it before the real pages arrived — each of which was then rendered per request for the life of the process. It is keyed, and the page rendered, at the matched address, as the export writes it. `ssr` and `stream` pages still receive the URL as the visitor wrote it.
- `@ultimat3/http` exports `canonicalPath`, `requestAddress(ctx)` and `RequestAddress`; `RequestContext` gains `routePath`. `@ultimat3/render/server` exports `isrRouteFor`. `isrKey(url, locale)` canonicalises the pathname it is given, so a caller's own keys change spelling only where the URL was not already canonical.

### Commits

- fix(render): an isr page is one entry however its URL is spelled; a key no route owns is never stored; isr under a basePath honours revalidate (#762)

## 27.8.0 - 2026-10-11

### Added
Expand Down
Loading
Loading