chore: release v0.4.0

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-04-23 19:07:51 -05:00
parent d1563e8190
commit ec23de90b9
3 changed files with 23 additions and 3 deletions

View File

@@ -11,6 +11,26 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
---
## [0.4.0] - 2026-04-23
### Added
- Sitemap pagination via `hydra:view['hydra:last']`: after the first search page, all subsequent pages are fetched in parallel using the correct 0-based item-index `start` model (`start = size, 2×size, …, lastStart`); when all results fit on one page (`hydra:view` absent) no additional requests are made
- Latest `vkm:datePublished` selection per `SearchResultItem`: when a search result contains multiple content fragments, only the fragment with the most recent `vkm:datePublished` is included in the sitemap; fragments without a date are treated as epoch 0
- Sitemap URL cap: output is limited to 50,000 `<loc>` entries per the [Sitemaps protocol](https://www.sitemaps.org/protocol.html); a `warn` log is emitted when results are truncated
- Full HTML document wrapper for content fetch responses: body is now `<!DOCTYPE html><html><head><title>…</title></head><body>…</body></html>` instead of a bare `articleBody` fragment
- `<title>` element populated from the `vkm:name` field of the fetched article (empty `<title></title>` when `vkm:name` is absent)
### Changed
- `oidcAuthFlow` route removed: requests that do not match `?kmeURL=` or `/sitemap.xml` now return `404 Not Found`
### Fixed
- `proxyBaseUrl` is now derived dynamically from the incoming request (`X-Forwarded-Proto`, `X-Forwarded-Host`, `Host` headers) rather than read from settings, ensuring correct `<loc>` URLs in all deployment environments
---
## [0.3.0] - 2026-04-23
### Added