Skip to content

v0.30.0

Latest

Choose a tag to compare

@yusing yusing released this 23 Jul 15:14
v0.30.0
760a9fd

Bug Fixes

  • Proxmox: Proxmox stats, journalctl, and tail WebSocket streams now cancel when the client connection closes, with bounded per-host HTTP capacity and request timeouts. (2291ce7)
  • Health: Docker health monitoring now retries initialization and inspection failures instead of disabling monitoring, while route probes remain a fallback only when Docker health is unavailable. (c747de3, yusing/godoxy-webui@512eb17, #240 )
  • Idlewatcher: Idlewatcher wake retries now refresh errored container state, preserve active progress, and keep shared wakes running after the initiating request is canceled. (a3c3cd3, 4e0dbe0)
  • Idlewatcher: The default container wake timeout has increased from 30 seconds to 3 minutes. (524faf0)
  • Config: Configuration-load diagnostics are now transactional: failed reload logs are discarded, successful batches are serialized, and persistent flush failures fall back to direct logging. (29d3d6e)
  • API: API and local API handlers now register after authentication initialization, with registration conflicts and failures reported during startup. (975a89e, #241)
  • WebUI/Config: The WebUI now retains unsaved configuration changes and the save indicator when persistence fails. (yusing/godoxy-webui@1681f07)
  • Goutils/Errs: Wrapped and multiline errors now retain structured JSON serialization, with readable error text as a fallback for malformed or legacy marshalers. (yusing/goutils@45b7d97)

New Features

Improvements

  • Config: Configuration transitions are now managed by RuntimeManager with serialized reloads, activation reports, context-scoped dependencies, and runtime health diagnostics. (2777535)
  • Proxmox: Proxmox node discovery is now scoped to configuration state, ambiguous node names are reported as 409 conflicts, and LXC actions use improved polling, timeouts, and status validation. (6af20e9, yusing/godoxy-webui@9d6e8e7)

Security

  • Auth: API username and password credentials are now required at startup unless OIDC is enabled or authentication is explicitly disabled; update existing deployments that rely on default credentials. (0e1dcfb, 8032207)
  • Config: Startup diagnostics now emit allowlisted route and subsystem summaries without serializing credentials or unknown configuration values. (2c4c11f)
  • Autocert: ACME External Account Binding HMAC values are redacted in JSON and YAML serialization while the original value remains available for registration. (cfe8773)

Full Changelog

  • 760a9fd chore(deps): bump Go module dependencies
  • 2291ce7 fix(proxmox): bound requests and cancel websocket streams
  • 2777535 refactor(config): centralize runtime lifecycle management
  • 8032207 fixup! security(auth): require explicit userpass credentials
  • 524faf0 fix(idlewatcher): extend default container wake timeout
  • 0e1dcfb security(auth): require explicit userpass credentials
  • 29d3d6e fix(config): make load diagnostics transactional
  • 2c4c11f fix(config): prevent secrets in startup diagnostics
  • cfe8773 fix(autocert): redact EAB HMAC credentials
  • 975a89e fix(api): register rule handlers after auth initialization
  • edb2364 chore(deps): update webui submodule
  • d48810e feat(config): support trusted Proxy Protocol modes
  • c747de3 fix(health): make Docker health monitoring retryable
  • 2ed37ee feat(home): support Proxmox container controls
  • a3c3cd3 fix(idlewatcher): make wake retries and readiness signaling reliable
  • 6af20e9 refactor(proxmox): scope node pools to configuration state
  • 4e0dbe0 fix(idlewatcher): keep shared wakes alive across request cancellation

goutils

  • 9fc922d chore(deps): bump Go module dependencies
  • f9f510d refactor(events): route blocked events through request history
  • b6e43b9 refactor(pool): route events through instance history
  • 4a8d15b feat(events): add context helpers for event history
  • 45b7d97 fix(errs): preserve JSON serialization for wrapped errors
  • 64e7ee5 feat(server): add configurable PROXY protocol policies

webui

  • d077797 chore(deps): update wiki submodule
  • 1681f07 fix(config): preserve unsaved state when saving fails
  • a015575 chore(deps): update wiki submodule
  • f2b5d4f chore(deps): update juststore-shadcn submodule
  • 60c5d18 fix(config): bind Vite server to localhost
  • a73644a chore(deps): update wiki submodule
  • e5c8a28 fix(config): clean up proxy protocol mode subscription
  • 1a8f938 feat(config): support trusted Proxy Protocol modes
  • d3cc0d6 chore(deps): update wiki submodule
  • 512eb17 fix(routes): clarify Docker health check fallback settings
  • 504bc0f feat(home): support Proxmox container controls
  • 9d6e8e7 docs(api): document ambiguous Proxmox node responses