Breaking Changes
- Route
path_patternsis removed. Config, providers, Docker labels, and any
automation that relied on path-pattern multiplexing for file-server routes
must be updated; that wiring is no longer applied when serving static files.- The Web UI’s route types and generated JSON schema no longer expose
path_patterns, matching the backend model.
- The Web UI’s route types and generated JSON schema no longer expose
Bug Fixes
- File-server routes that combine rules, embedded Web UI behavior, and
middleware now return consistent responses (headers and bodies) on rule-
handled paths such as/api, themed HTML, and SPA-style assets—middleware
and response handling see the full pipeline, not only the static file
handler.- Header-only and body rewrite paths are split so header middleware can run
without forcing full-body buffering when unnecessary. - The shared HTTP helper runs
ModifyResponsebefore deciding whether to
buffer or stream, so status and headers influence buffering correctly:
goutilsa4fd3da.
- Header-only and body rewrite paths are split so header middleware can run
Improvements
- Install/bootstrap via
scripts/setup.shand READMEcurl | shflows is
more portable across POSIX environments (dash, busybox, BSD-style
/bin/sh) with fewer bash-only assumptions.
API Changes
- Published OpenAPI is refreshed: route schemas drop
path_patterns,
max_conns_per_hostis represented in the spec, and load-average field
ordering in the schema is adjusted to match the implementation.
Full Changelog
Main repository (https://github.com/yusing/godoxy)
e8de6912f0623425c2dd528f21d24bee1b572ddf- chore(scripts): portable
setup.shand READMEcurlinvokesh
- chore(scripts): portable
17f486cfe081eeec74b440575b040bcb8c2e9341- chore(scripts): add idlesleeper WebP recorder and shrink screenshot
93d526bd630be5162b4c871340598fd5a2a12acf- fix(route): wrap
FileServerhandlers with middleware after rules
- fix(route): wrap
f8d025701150b77af91eb59bea378e805a2eb6bf- refactor(route): remove
path_patterns; sync OpenAPI andwebuisubmodule
- refactor(route): remove
Submodule goutils (https://github.com/yusing/goutils)
a4fd3da67a05a570d17cd4fddae1f436ec8059ad- feat(http): run
ModifyResponsebefore lazy buffering decision
- feat(http): run
Submodule webui (https://github.com/yusing/godoxy-webui)
f64b2e8f85eec683b8e9258c23e3398c4ba828ed- chore: update wiki
77af25899ff4c4de7de5bb81b9bf4ac7d276e4aa- chore(types,ui): remove
path_patternsfrom types and UI; regenerated
JSON schema
- chore(types,ui): remove