withastro
astro
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Optimizations
Branches
Benchmarks
Runs
Performance History
Latest Results
fix(content): release the content layer after sync in builds Fixes #18708
fix/release-content-layer-after-sync
11 hours ago
fix(astro): return 400 for malformed paths in dev and static preview (#18651) Co-authored-by: Princesseuh <3019731+Princesseuh@users.noreply.github.com>
main
12 hours ago
test(fonts): check that unifont is not loaded until a provider is initialized
hood:perf/lazy-fonts
12 hours ago
Mixed allowedDomains patterns no longer accept non-http(s) X-Forwarded-Proto values (#18641) * fix(allowed-domains): reject non-http(s) X-Forwarded-Proto for patterns without protocol * Only accept a plain hostname and port in Host and X-Forwarded-Host Validate the Host and X-Forwarded-Host values against a strict hostname[:port] syntax before matching them against allowedDomains, and apply the forwarded host to the URL by parsing it with the URL parser instead of splitting the string, so the host that is applied is the one that was matched. * style(astro): use \w in forwarded host regex to satisfy lint * Validate forwarded protocol, host and port together per allowedDomains entry Match X-Forwarded-Proto, X-Forwarded-Host and X-Forwarded-Port against each allowedDomains entry as a whole rather than checking each value against the list on its own: - a forwarded protocol is applied only if an entry allows it for the host in use (the forwarded host, or else the request host) - a forwarded port is applied only if the entry for that host lists it - a forwarded host without a forwarded protocol is validated with the server protocol rather than assuming https - an entry's port is compared against the protocol's default port when the host has none, so port: '443' matches https://host * Document how allowedDomains patterns without a protocol or port match --------- Co-authored-by: factory[bot] <factory[bot]@users.noreply.github.com> Co-authored-by: Matthew Phillips <matthewphillips@cloudflare.com> Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
main
12 hours ago
fix(preview): only return 400 for malformed encoding, add preview tests
umeraamir69:fix/malformed-path-400-dev-preview-18650
12 hours ago
feat(vite-plugin-router): router(options, cli); the astro CLI composes router() createVite() calls router(toRouterOptions(settings), toRouterCli(settings, …)) in place of the router plugins it assembled itself. standalonePlugins(registry, cli?) is the one assembly path: with cli, the plugins use the CLI's route table (created before Vite starts, so integration hook order is unchanged) and host data, add the dev server plugins only for command 'dev', leave out the build plugins (astro build drives the build) and the package's noExternal. router() also serves astro:static-paths in plain Vite projects. astro's manifest/serialized.ts and core/middleware/vite-plugin.ts are folded into core/router-options.ts.
vp/02d-router-cli
12 hours ago
fix(vercel): keep Rolldown's createRequire shim out of edge middleware
vp/02b-router-wiring
12 hours ago
Document how allowedDomains patterns without a protocol or port match
factory/fix-18639
13 hours ago
Latest Branches
CodSpeed Performance Gauge
0%
Free content collection entries from memory after the build sync
#18709
11 hours ago
33619ad
fix/release-content-layer-after-sync
CodSpeed Performance Gauge
0%
Load font resolution deps only when `fonts` is configured
#18658
12 hours ago
ca6715a
hood:perf/lazy-fonts
CodSpeed Performance Gauge
0%
fix(astro): return 400 for malformed paths in dev and static preview
#18651
12 hours ago
254d932
umeraamir69:fix/malformed-path-400-dev-preview-18650
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs