Skip to content

Update ghcr.io/yusing/godoxy Docker tag to v0.32.3 - #7969

Open
renovate[bot] wants to merge 1 commit into
localAppsfrom
renovate/ghcr.io-yusing-godoxy-0.x
Open

renovate[bot] wants to merge 1 commit into
localAppsfrom
renovate/ghcr.io-yusing-godoxy-0.x

Conversation

@renovate

@renovate renovate Bot commented Oct 22, 2026

Copy link
Copy Markdown

This PR contains the following updates:

Package Update Change
ghcr.io/yusing/godoxy minor v0.31.4 → v0.32.3

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

yusing/godoxy (ghcr.io/yusing/godoxy)

v0.32.3

Compare Source

Bug Fixes
  • Core/Idlewatcher: Dependencies needed by always-on routes are no longer stopped as idle. (1cd3f2d, #​285)
    • Unhealthy routes and routes with unknown health retain their declared dependencies.
    • Napping routes release their dependencies.
  • Core/Rules: Environment values no longer corrupt rule syntax. (50ba67e)
    • Quotes, newlines, and escaped environment references survive configuration loading.
    • Rule parsing handles Unicode and escaped quotes safely.
  • Core/Rules: Replacing a request body updates its content length and clears stale transfer framing. (50ba67e)
  • Core/Rules: Rule-generated 204 and 304 responses remain bodyless. (d2a10f8, #​286, 50ba67e)
    • CORS preflight rules using error 204 no longer expand or write an error template.
  • WebUI/Playground: Playground results more accurately reflect route behavior. (9105c6e, yusing/godoxy-webui@5d6a5fb)
    • Mock response data is applied only when the mock upstream is called.
    • Results show modified request bodies and matches against the final response.
    • Rejected rule sets expose validation errors in per-rule results.
    • Malformed mock requests and invalid response status codes return input errors.
    • Mock requests handle IPv6 addresses and preserve path query parameters when adding query inputs.
    • Cancelling a playground API request also cancels real upstream requests.
    • Built-in CORS and logging examples apply response actions before terminating actions. (yusing/godoxy-webui@5d6a5fb)
    • The credentialed CORS example restricts requests to an explicit trusted origin. (yusing/godoxy-webui@5d6a5fb)
Breaking Changes
  • Core/Rules: Invalid rule sets now prevent routes from loading. (50ba67e, a630c5c)
    • Validation applies to inline rules, rule files, and embedded presets.
    • Move authentication and request-only middleware out of response-phase rules and nested response-phase blocks before upgrading.
    • Remove multiple default rules and rules shadowed by an earlier terminating rule with the same matcher.
Full Changelog
  • 9105c6e fix(playground): align execution and diagnostics with route semantics
  • a630c5c fix(routevalidate): enforce rule semantics before route construction
  • 50ba67e fix(rules): preserve interpolation and enforce request semantics
  • 028277a docs(rules): fix post-proxy logging example
  • d2a10f8 fix(rules): return bodyless CORS preflight responses
  • 1cd3f2d fix(idlewatcher): retain always-on route dependencies (#​285)

webui

  • 5d6a5fb fix(playground): correct examples and rule reference
  • e94ec6e docs: update route validation reference in wiki
  • d153f9f docs: update routing reference in wiki
  • b1b0580 docs: update post-proxy logging example in wiki
  • 958044e docs: update CORS routing examples in wiki

v0.32.2

Compare Source

Bug Fixes
  • Core/Idlewatcher: Shared dependencies stay awake until their last running dependent sleeps. (0fc5a6a, 1af0a65)
    • With stop_method set to kill, dependencies remain running until the runtime confirms sleep; a stop_timeout expiry leaves them running.
    • Delayed stop events no longer mark a reawakened route as sleeping.
New Features
  • Core/Routes: Route APIs expose configured public URLs. (e0da069, #​276, #​277)
    • Route list, detail, and WebSocket responses include an optional public_urls field derived from match_domains and listener settings.
    • Homepage links use the first derived URL unless explicitly overridden, including configured domains for dotted short aliases.
    • Derived URLs include nondefault listener ports but do not account for external port or protocol translation.
  • Core/Docker: Podman Compose dependencies are discovered automatically. (ff03924, 432cc77, #​279)
    • Explicit proxy.depends_on labels are honored ahead of Compose metadata and native discovery on Docker and Podman.
    • Recursive discovery includes dependency services without an idle timeout.
    • Native Podman dependencies use service_started; service_healthy must be requested explicitly through proxy.depends_on.
Improvements
  • Core/Proxmox: Proxmox startup retries transient connection failures. (7592ab7, #​280, #​281)
    • Session creation and cluster discovery retry within the existing 30-second initialization deadline.
    • Credential rejection, certificate verification failures, and invalid API responses fail immediately.
    • If initialization still times out, reload configuration or restart GoDoxy after connectivity returns.
Security
  • Core/API: Machine clients can authenticate with a restricted read-only bearer token. (18aeec4, 892b1ad, #​278)
    • Set GODOXY_API_READONLY_TOKEN before startup; restart GoDoxy to rotate or revoke it.
    • The token permits only HTTP GET route-list and route-detail requests; WebSocket upgrades are denied.
    • Browser authentication must remain enabled; the unauthenticated local API ignores this token.
    • JSON access logs redact Authorization credentials even when headers are configured to be kept, including rejected requests and redirects. (892b1ad)
Full Changelog
  • 1af0a65 fix(idlewatcher): confirm kill completion and preserve timeout causes
  • 0fc5a6a fix(idlewatcher): retain dependencies needed by running routes
  • 55833ba docs: update wiki for certificates and Proxmox retries
  • e0da069 feat(routes): derive public URLs from runtime domains and listeners
  • 3fa2a78 fix(update-wiki): generate implementation links under /docs
  • 892b1ad fix(api): protect bearer credentials at access-log serialization
  • 18aeec4 feat(api): add read-only bearer authentication for machine clients
  • 432cc77 fix(podman): discover Compose dependencies automatically
  • 7592ab7 fix(proxmox): retry transient startup connections
  • ff03924 fix(docker): read proxy.depends_on before it is consumed

webui

  • ab74e0f docs: update idlewatcher lifecycle reference
  • 2ea4a05 docs: update shared dependency lifecycle wiki
  • 5c1ce9f docs: sync certificate and Proxmox wiki updates
  • f5a475d feat(routes): expose computed public URLs in API response types
  • 4628ef6 fix(docs): sync implementation link prefixes
  • 2946db5 docs: sync API examples and credential logging guidance
  • d5666f9 docs: sync read-only API authentication wiki
  • 7d4504f docs(podman): update automatic dependency guide

v0.32.1

Compare Source

v0.32.0

Compare Source

Bug Fixes
  • Core/Routes: Partial file-provider reload failures preserve existing routes. (7adbf19, 4edd178, #​273)
    • Valid additions and updates still apply; deletions wait for a clean reload.
    • Clean empty files still remove all file routes, and Docker/agent removals remain supported during partial failures.
  • Core/Configuration: Explicit empty lists remain distinct from omitted or null values when converting configuration values. (49e22e0)
    • Empty lists can disable inherited idlewatcher notification targets.
  • Deployment/Docker: The main image sets HOME=/app so the OVH SDK can check its optional configuration without permission errors when running as a non-root user. (ec19a07, #​275)
  • WebUI/Certificates: Main and extra certificate forms offer backend-registered providers and provider-specific option fields. (3a41264, 5974829, #​274, yusing/godoxy-webui@b79f285)
    • Structured options, including arrays and nested objects, are supported while option values remain redacted in JSON/YAML output.
    • Boolean provider options use labeled checkboxes in both forms, supporting existing boolean and string values while saving edits as booleans. (yusing/godoxy-webui@b79f285)
    • Switching providers refreshes option controls and clears old option values in the selected certificate form without changing the other form. (yusing/godoxy-webui@b79f285)
    • Inferred field labels use spaced words, such as Zone Token and Polling Interval. Generic duration guidance no longer replaces duration field names; other descriptions and raw configuration keys stay unchanged. (yusing/godoxy-webui@b79f285)
  • WebUI/Search: Apps without display names can be found by their aliases. (yusing/godoxy-webui@176f390, webui #​21)
  • Core/Agents: Recovered agents retain their discovered names. (d579b86, #​269)
    • Recovered names appear in provider logs, route metadata, and statistics.
  • Core/Agents: Agent v0.18.6 receives the correct upstream protocol, including h2c. (yusing/goutils@05a7cb0, cfae89e)
  • Core/Networking: Generated listener URLs preserve IPv6 brackets. (yusing/goutils@71fa4fe, cdeac60)
  • Core/GeoIP: Repeated MaxMind reloads no longer hit a cache-limit panic. (yusing/goutils@afabe72, yusing/goutils@9450745, 56fd47b)
    • Stopped MaxMind runtimes release cached data and callbacks.
  • Core/Events: Event streams continue after route or node removals. (yusing/goutils@32bb351, yusing/godoxy-webui@9c0b122)
    • Dashboard events show the names of removed routes and Proxmox nodes. (yusing/godoxy-webui@9c0b122)
    • Concurrent registry additions and removals no longer overwrite each other.
    • Listing a cleared registry no longer panics after removals.
  • Core/Rules: Repeated Basic Auth checks no longer panic on missing or invalid credentials. (yusing/goutils@1ab11c9)
  • Core/API: API error responses no longer fail when an error cause is absent. (yusing/goutils@78359dd)
  • Core/Listeners: HTTPS listeners support PROXY protocol without startup panics. (yusing/goutils@8803127)
  • Core/Events: Event IDs avoid deterministic collisions across processes. (yusing/goutils@c71a1e5)
New Features
  • Core/Idlewatcher: Optional sleep/pause and wake notifications use configured notification providers. (1025dc0, #​264)
    • Enable them globally with defaults.idlewatcher.notify or per route with idlewatcher.notify; they are off by default.
    • Set to to provider names. An absent route block inherits global settings; an empty block inherits global targets, or uses all current providers at send time when neither block specifies targets.
    • Set notify: {to: []} to disable notifications and override global targets. A route with named targets can override a disabled global default.
    • Docker routes with proxy.idle_timeout can select targets with proxy.idle_notify_to: gotify,ntfy, or disable notifications with proxy.idle_notify_to: "".
    • Initial status, reloads, and dependency-only watchers stay silent; notifications report transitions rather than readiness or errors.
  • WebUI/Navigation: Header branding links to GitHub, and the version links to releases. (yusing/godoxy-webui@12f944b, webui #​22)
  • Core/Logging: Startup logs show effective environment settings and their sources. (4824673, e60a798)
    • Sensitive setting values are redacted.
    • Unknown GODOXY_ variables produce name-only warnings.
    • Selected unprefixed app variables produce migration warnings but remain supported.
Breaking Changes
  • Core/Listeners: HTTPS startup requires a valid certificate. (yusing/goutils@8803127, e3d7700, 1c70409, cfae89e)
    • Set GODOXY_HTTPS_ADDR= for HTTP-only operation without a certificate.
    • An explicitly empty HTTPS address disables shared HTTP/3 and TCP SNI routing.
    • Dedicated route listeners are unaffected by disabling shared HTTPS.
    • The redirectHTTP middleware skips redirects when shared HTTPS is disabled.
    • Direct HTTP login requires GODOXY_API_JWT_SECURE=false.
    • Keep secure login cookies when clients connect through an external TLS-terminating proxy.
    • Failed startup closes partially started servers without disrupting existing TCP SNI routes.
  • Core/GeoIP: MaxMind downloads City databases by default. (4824673)
    • Set GODOXY_MAXMIND_COUNTRY_ONLY=true where City downloads are unavailable or Country-only data is required.
    • An existing Country database does not satisfy the new default, so a City database must be downloaded.
    • City databases provide the location data needed by timezone ACL rules.
    • City databases can exceed 100 MiB.
  • Deployment/Compose: The updated Compose example requires explicit deployment settings. (4824673)
    • When adopting the updated example, populate TAG, GODOXY_UID, GODOXY_GID, DOCKER_SOCKET, and LISTEN_ADDR in .env.
    • Set GODOXY_DOCKER_HOST in .env because Compose no longer injects a Docker endpoint.
Security
  • Core/ACL: Later country and timezone ACL rules match correctly. (3723f81, #​270)
    • A nonmatching geographic rule no longer prevents a later deny or allow rule from matching.
  • Core/WebSocket: Local WebSocket endpoints reject cross-host origins. (yusing/goutils@7967281)
    • External reverse proxies must preserve the public Host header for same-host origin checks.
    • Closed WebSocket streams report closure instead of successful empty reads or writes.
  • Core/Redaction: Redacted output fully masks one- and two-character secrets. (yusing/goutils@c71a1e5)
    • Unicode redaction preserves valid character boundaries and JSON output.
CI
  • Contract Checks: Certificate-provider and environment contract checks run on pushes to main only when matching source, dependency, checked-output, workflow, or submodule-pointer paths change. Pull-request checks and all job steps remain unchanged. (881a4ca)
Full Changelog
  • c3b184d chore(webui): track reorganized main history
  • 881a4ca ci: limit contract checks to relevant push changes
  • b406ad2 fix(autocert): keep duration guidance out of field labels
  • b28305a fix(autocert): integrate provider form corrections
  • 5974829 fix(autocert): keep concrete provider options in sync
  • 3a41264 fix(autocert): guard schema-generated provider choices
  • ec19a07 fix(docker): set an accessible home for the main runtime
  • 1025dc0 Merge pull request #​264 from taljaards/feat/idlewatcher-sleep-notifications
  • d4aed0d docs(config): clarify notification and environment examples
  • 518f42e Merge remote-tracking branch 'origin/main' into feat/idlewatcher-sleep-notifications
  • 49e22e0 fix(serialization): preserve explicit empty slices
  • 733a32f docs(idlewatcher): clarify default notification targets
  • 4c884cb refactor(idlewatcher): resolve notifier from task context
  • 4d4f916 refactor(idlewatcher): infer notification opt-in from targets
  • 2ef64af fix(serialization): preserve explicit empty slices
  • 8bdf61b refactor(idlewatcher): simplify sleep and wake notifications
  • 958498c Merge remote-tracking branch 'origin/main' into feat/idlewatcher-sleep-notifications
  • 8f28521 Merge pull request #​273 from taljaards/codex/preserve-routes-on-partial-reload
  • fbb38ea chore: merge main into partial reload fix
  • 1de7944 chore(deps): update webui submodule
  • 4edd178 fix(provider): limit partial reload retention to file routes
  • 948dd3a chore: go mod tidy
  • fcab449 chore(deps): update webui submodule (#​272)
  • 7adbf19 fix: preserve routes after partial reload failures
  • 46399bd feat(idlewatcher)!: drop the notify event filter
  • d7d6774 refactor(idlewatcher): tighten notify code and tests
  • 1773b1f fix(idlewatcher): inherit global notify events
  • 29e8571 chore(swagger): regenerate for idlewatcher notify config
  • 0197458 feat(docker): add proxy.idle_notify labels
  • 5aeffb7 feat(config): add defaults.idlewatcher.notify
  • 60572b9 feat(idlewatcher): notify on sleep and wake transitions
  • c1e07ca feat(idlewatcher): add sleep/wake notify config
  • fce8568 fix(wiki): quote generated frontmatter metadata
  • 378ac69 chore(idlewatcher): refresh minified loading script
  • 11b0a93 docs(wiki): refresh dependency migration documentation
  • 0b3fcfb chore(deps): update frontend tooling and webui gitlink
  • e454b5d chore(deps): update backend modules and migrate major APIs
  • e1557ba chore(deps): update webui submodule
  • 1c70409 fix(env): support explicitly disabling shared HTTPS
  • e3d7700 fix(entrypoint): preserve shared SNI listeners on startup failure
  • cdeac60 fix(env): bracket IPv6 hosts in generated URLs
  • 56fd47b fix(maxmind): release lookup caches on runtime cancellation
  • cfae89e test(goutils): adapt fixtures to strict HTTPS startup
  • 8e02291 chore(integration): align module requirements and package docs
  • e60a798 feat(logging): report safe effective environment settings
  • 4824673 feat(env): consume registry and generate deployment documentation
  • 3723f81 fix(acl): reuse resolved country data across geographic rules
  • d579b86 fix(provider): publish recovered agent names safely
  • 721f423 chore(deps): sync goutils release verification budget
  • d4a2571 chore(deps): advance goutils to CI-managed v0.8.0 release
  • d0ff796 refactor(goutils): integrate dependency-light utility modules

goutils

  • aba92f5 chore(release): prepare v0.9.3 modules
  • 4850351 chore(release): normalize Go version directives to 1.27
  • 6199c93 chore(release): prepare v0.9.2 modules
  • cdcf062 chore(deps): update modules and migrate backoff to v6
  • 75d2b8a chore(release): prepare v0.9.1 modules
  • 9450745 fix(cache): release janitor registrations for runtime-owned caches
  • a21196e chore(release): prepare v0.9.0 modules
  • 54a0142 docs(goutils): update package behavior references
  • afabe72 fix(cache): remove janitor state limit and handle concurrent registration
  • 7967281 fix(websocket): correct shutdown, reader, and origin handling
  • 885fea3 fix(task): allow finishing test tasks without root children
  • 32bb351 fix(pool): make registry mutations atomic per key
  • 78359dd fix(apitypes): skip nil errors in Error response builder
  • 71fa4fe fix(env): preserve IPv6 brackets in address URLs
  • 7c712ca fix(errs): handle nil unwrapped errors and empty field hints
  • fae0430 docs(eventqueue): clarify queue lifecycle and callback behavior
  • 04d7768 fix(fs): skip hidden entries at every directory level
  • 1ab11c9 fix(http): return nil for repeated BasicAuth cache misses
  • b2c17a6 fix(reverseproxy): simplify request docs and upstream scheme error log
  • e7a3234 docs(intern): clarify generic handle documentation
  • b573731 docs(num): clarify percentage precision and value count
  • 8803127 fix(server): validate startup and roll back partial server starts
  • c71a1e5 fix(strings): correct formatting, redaction, JSON encoding, and UUID generation
  • 62cfe86 fix(synk): stop intercepting interrupts in pprof reporter
  • 6042a0f fix(workerpool): serialize concurrent Wait calls and validate worker counts
  • 05a7cb0 fix(version): make older comparisons strict
  • bc3002d fix(testing): require lossless numeric equality conversions
  • 2815616 docs: add goutils agent skill and package guides
  • d5210f8 docs: expand package READMEs with usage and behavior guides
  • 82727b3 fix(ci): cover observed Go checksum propagation delays
  • 6d8914e fix(ci): allow Go publication services to observe release tags
  • aa4e3bd chore(release): prepare v0.8.0 modules
  • 3c23076 fix(release): reject permanently recorded Go module versions
  • b0ad3b1 chore(release): prepare v0.1.0 modules
  • 7260a77 ci: manage multi-module validation and releases with GitHub Actions
  • 743b861 refactor!: minimize root dependencies and decouple logging

webui

  • b79f285 fix(autocert): generate and refresh concrete provider forms
  • 62c54c3 docs(wiki): sync notification and deployment guidance
  • a88f7f9 feat(idlewatcher): add sleep/wake notification config (#​20)
  • 8c80b73 docs(wiki): sync slice conversion semantics
  • ce8b6af docs(wiki): sync provider reload semantics
  • 12f944b Link header branding to GitHub and releases (#​22)
  • 176f390 fix: search app aliases when display names are empty (#​21)
  • de2392a chore(deps): update wiki submodule
  • bba79c8 docs(wiki): sync backend dependency migration examples
  • 4f366a2 chore(deps): refresh frontend dependencies and migrate openapi
  • 025e9cc docs(wiki): integrate HTTP-only deployment guidance
  • 9c0b122 fix(events): display names for removed pool entries
  • 913eee3 docs(wiki): sync integrated implementation guides
  • 1c6c013 docs(wiki): update environment contract
  • fbed24b docs(wiki): update goutils dependency documentation

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Never, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants