Try our Chrome extension

Chrome store icon Chrome Webstore

Easily add the current web-page from your browser directly into your changedetection.io tool, more great features coming soon!

Changedetection.io needs your support!

You can help us by supporting changedetection.io on these platforms;

The more popular changedetection.io is, the more time we can dedicate to adding amazing features!

Many thanks :)

changedetection.io team


Keyboard: ← Previous   → Next
Not yet seconds ago
            False
        
Not yet seconds ago
Current erroring screenshot from most recent request

Triggered text Ignored text Blocked text

12 hours ago
tag:github.com,2008:https://github.com/caddyserver/caddy/releases

Release notes from caddy

2026-10-03T05:25:14Z tag:github.com,2008:Repository/29207621/v2.11.7 2026-10-03T05:58:33Z

v2.11.7

<p>This patch release fixes regressions from 2.11.6, including a crash when proxying over HTTP/2 and streams that were cut off after a minute. <strong>If you're on 2.11.6, we recommend upgrading.</strong> It also adds support for the brand new <code>Incremental</code> header field (RFC 10036).</p> <p><strong>Huge thank you to our sponsors for keeping the project alive with resources, and for our maintainers who triage and assist tirelessly in this relentless new age of AI.</strong></p> <h2>Highlights</h2> <ul> <li> <p><strong>Fixed: crash and dropped streams caused by the new idle timeouts.</strong> 2.11.6 introduced default idle read/write timeouts, which caused some problems:</p> <ul> <li> <p>In 2.11.6, the request body's idle deadline could outlive the handler that set it:</p> <ul> <li>Over HTTP/2, Caddy could panic with a nil pointer dereference when the reverse proxy was still reading a request body after the handler had returned. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5674049449" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8101" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/8101/hovercard" href="https://github.com/caddyserver/caddy/issues/8101">#8101</a>)</li> <li>Over HTTP/1.1, streaming responses to requests with a body, such as SSE clients that open the stream with a <code>POST</code>, were cut off exactly 60 seconds after the body was read. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5675849469" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8103" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/8103/hovercard" href="https://github.com/caddyserver/caddy/issues/8103">#8103</a>)</li> </ul> <p>Both are fixed in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5679165799" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8107" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8107/hovercard" href="https://github.com/caddyserver/caddy/pull/8107">#8107</a>. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a>!</p> </li> <li> <p>Over HTTP/2, streaming responses that paused between writes for longer than <a href="https://caddyserver.com/docs/caddyfile/options#timeouts" rel="nofollow"><code>write_idle</code></a> (1 minute by default), like quiet SSE streams, were reset with a stream error. As documented, only a write that stalls should count. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5686160836" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8118" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/8118/hovercard" href="https://github.com/caddyserver/caddy/issues/8118">#8118</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5686312793" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8119" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8119/hovercard" href="https://github.com/caddyserver/caddy/pull/8119">#8119</a>)</p> </li> </ul> </li> <li> <p><strong>Fixed: placeholders for missing cookies are empty again.</strong> Since 2.11.6, places that keep unknown placeholders as written, like <a href="https://caddyserver.com/docs/caddyfile/directives/respond" rel="nofollow"><code>respond</code></a> headers, would output <code>{http.request.cookie.*}</code> literally when the cookie wasn't in the request. The same happened to <code>{http.request.tls.*}</code> on plain HTTP requests. Both are empty again. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5446550348" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8019" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8019/hovercard" href="https://github.com/caddyserver/caddy/pull/8019">#8019</a>)</p> </li> <li> <p><strong>New: support for the <a href="https://www.rfc-editor.org/rfc/rfc10036.html" rel="nofollow"><code>Incremental</code></a> header field (RFC 10036).</strong> It's the standard replacement for NGINX's proprietary <code>X-Accel-Buffering</code> header. If an upstream response has <code>Incremental: ?1</code>, <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#streaming" rel="nofollow"><code>reverse_proxy</code></a> forwards it immediately, the same as <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#flush_interval" rel="nofollow"><code>flush_interval -1</code></a>, and <a href="https://caddyserver.com/docs/caddyfile/directives/encode" rel="nofollow"><code>encode</code></a> streams it instead of holding it back. Great for <a href="https://mercure.rocks" rel="nofollow">Mercure</a>, SSE and other streaming apps.</p> <ul> <li>If the <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#request_buffers" rel="nofollow"><code>request_buffers</code></a> or <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#response_buffers" rel="nofollow"><code>response_buffers</code></a> options would prevent incremental forwarding, Caddy responds with <code>501 Not Implemented</code> instead of silently buffering, as the RFC requires.</li> <li>The new <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#proxy_status_name" rel="nofollow"><code>proxy_status_name</code></a> option adds a <code>Proxy-Status</code> header to those responses, explaining why the message was refused.</li> </ul> <p>Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5451046624" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8020" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8020/hovercard" href="https://github.com/caddyserver/caddy/pull/8020">#8020</a>)</p> </li> <li> <p><strong>Faster TLS handshakes:</strong> When nothing subscribes to certificate events and debug logging is off, CertMagic no longer builds event data for every handshake. Certificate lookup per handshake is about twice as fast, with 10 allocations instead of 15. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/u5surf/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/u5surf">@u5surf</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5414020395" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8010" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8010/hovercard" href="https://github.com/caddyserver/caddy/pull/8010">#8010</a>)</p> </li> <li> <p><strong>Unix sockets:</strong> When a reload moves a listener (or the admin endpoint) off a Unix socket, the old socket now closes right away and its file is removed. Before, clients connecting to the old path would hang until the next garbage collection, about 2 minutes later. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/littfed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/littfed">@littfed</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5579693530" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8061/hovercard" href="https://github.com/caddyserver/caddy/pull/8061">#8061</a>)</p> </li> <li> <p><strong>Headers handler:</strong> Multiple <code>Set-Cookie</code> values in a JSON config's <code>set</code> are now sent as separate header fields, instead of being joined with commas into one field that clients can't parse. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Indra55/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Indra55">@Indra55</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5618924962" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8080" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8080/hovercard" href="https://github.com/caddyserver/caddy/pull/8080">#8080</a>)</p> </li> <li> <p><strong><code>caddy fmt</code></strong> no longer deletes an opening brace at the very end of the input. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/n0liu/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/n0liu">@n0liu</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5522447320" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8047" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8047/hovercard" href="https://github.com/caddyserver/caddy/pull/8047">#8047</a>)</p> </li> </ul> <h2>What's Changed</h2> <ul> <li>events: tell CertMagic which events are worth emitting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/u5surf/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/u5surf">@u5surf</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5414020395" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8010" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8010/hovercard" href="https://github.com/caddyserver/caddy/pull/8010">#8010</a></li> <li>feat: implement the Incremental header field (RFC 10036) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5451046624" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8020" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8020/hovercard" href="https://github.com/caddyserver/caddy/pull/8020">#8020</a></li> <li>caddyfile: Keep an opening brace that ends the input by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/n0liu/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/n0liu">@n0liu</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5522447320" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8047" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8047/hovercard" href="https://github.com/caddyserver/caddy/pull/8047">#8047</a></li> <li>listeners: close unix socket immediately and unlink file on reload by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/littfed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/littfed">@littfed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5579693530" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8061/hovercard" href="https://github.com/caddyserver/caddy/pull/8061">#8061</a></li> <li>reverseproxy: stabilise half-close test by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5525777437" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8049" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8049/hovercard" href="https://github.com/caddyserver/caddy/pull/8049">#8049</a></li> <li>caddyhttp: keep absent optional placeholders empty by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5446550348" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8019" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8019/hovercard" href="https://github.com/caddyserver/caddy/pull/8019">#8019</a></li> <li>headers: Preserve separate Set-Cookie values by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Indra55/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Indra55">@Indra55</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5618924962" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8080" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8080/hovercard" href="https://github.com/caddyserver/caddy/pull/8080">#8080</a></li> <li>caddyhttp: end request-body deadline ownership with handler by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5679165799" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8107" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8107/hovercard" href="https://github.com/caddyserver/caddy/pull/8107">#8107</a></li> <li>timeouts: fix idle writer terminate h2 response writers between writes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5686312793" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8119" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8119/hovercard" href="https://github.com/caddyserver/caddy/pull/8119">#8119</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/n0liu/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/n0liu">@n0liu</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5522447320" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8047" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8047/hovercard" href="https://github.com/caddyserver/caddy/pull/8047">#8047</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/littfed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/littfed">@littfed</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5579693530" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8061/hovercard" href="https://github.com/caddyserver/caddy/pull/8061">#8061</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.11.6...v2.11.7"><tt>v2.11.6...v2.11.7</tt></a></p> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.6 2026-10-01T19:02:27Z

v2.11.6

<p>This patch release contains a large number of minor and some noticeable enhancements and bug fixes. Thank you to everyone who contributed or spent their LLM tokens responsibly to help with this release!</p> <p>We have much more in the pipeline still, as AI has made contributions of all quality levels cheap and easy. We will be trying to go through them as quickly and efficiently as we can.</p> <p><strong>Huge thank you to our sponsors for keeping the project alive with resources, and for our maintainers who triage and assist tirelessly in this relentless new age of AI.</strong></p> <p><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> <strong>Please read the breaking changes below before upgrading.</strong> Most of them come from security hardening, and most configs won't notice. If you were relying on one of the old behaviors, though, you'll want to know about it.</p> <h2>Highlights</h2> <ul> <li><strong>New <a href="https://caddyserver.com/docs/caddyfile/matchers#url-pattern" rel="nofollow"><code>url_pattern</code> request matcher</a>:</strong> Match requests with the <a href="https://urlpattern.spec.whatwg.org/" rel="nofollow">URLPattern</a> standard, the same syntax used by browsers (JS) and many web frameworks. It supports named groups, wildcards, and regexp components. Captured groups become placeholders (<code>{http.url_pattern.<component>.<group>}</code>), and there's a matching <code>url_pattern</code> CEL function too. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a>! (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4566223053" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7787" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7787/hovercard" href="https://github.com/caddyserver/caddy/pull/7787">#7787</a>)</li> <li><strong>Slowloris mitigation:</strong> New idle read/write timeouts reset on every successful read or write. A stalled connection gets cut off, and a slow one that's still making progress is left alone. You can also set optional minimum transfer rates, and there's a new <a href="https://caddyserver.com/docs/caddyfile/directives/timeouts" rel="nofollow"><code>timeouts</code></a> handler directive for per-route tuning. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4997606826" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7913" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7913/hovercard" href="https://github.com/caddyserver/caddy/pull/7913">#7913</a>)</li> <li><strong>New <a href="https://caddyserver.com/docs/caddyfile/options#tls-automate-names" rel="nofollow"><code>tls_automate_names</code></a> global option:</strong> Manage certificates for names without serving them in a site block. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5439294735" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8015" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8015/hovercard" href="https://github.com/caddyserver/caddy/pull/8015">#8015</a>)</li> <li><strong>New <a href="https://caddyserver.com/docs/caddyfile/options#expected-underscore-headers" rel="nofollow"><code>expected_underscore_headers</code></a> server option:</strong> If dropping header fields with underscores in 2.11.4 broke your app, you can now list the specific headers to keep. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4608969024" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7809" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7809/hovercard" href="https://github.com/caddyserver/caddy/pull/7809">#7809</a>)</li> <li><strong>HTTP/3 over Tailscale and other low-MTU links</strong> now works, because the initial QUIC packet size is smaller. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4893669283" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7886" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7886/hovercard" href="https://github.com/caddyserver/caddy/pull/7886">#7886</a>)</li> <li><strong>Reverse proxy got more love:</strong> <ul> <li>partial responses are flushed to clients properly (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4773090360" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7849" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7849/hovercard" href="https://github.com/caddyserver/caddy/pull/7849">#7849</a>)</li> <li>TCP half-close is propagated on upgraded streams (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5466403959" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8027" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8027/hovercard" href="https://github.com/caddyserver/caddy/pull/8027">#8027</a>)</li> <li><code>versions 3</code> upstreams now honor <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#tls_trust_pool" rel="nofollow"><code>tls_trust_pool</code></a> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5517625712" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8042" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8042/hovercard" href="https://github.com/caddyserver/caddy/pull/8042">#8042</a>)</li> <li><a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#active-health-checks" rel="nofollow">active health check</a> state is kept separate per check config, so one handler's failing probes don't mark the upstream down for everyone else (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5045183679" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7916" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7916/hovercard" href="https://github.com/caddyserver/caddy/pull/7916">#7916</a>)</li> <li>the <code>random_choose</code> policy distributes correctly now (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4864455657" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7873" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7873/hovercard" href="https://github.com/caddyserver/caddy/pull/7873">#7873</a>)</li> </ul> </li> <li><strong>Server-sent events behind <a href="https://caddyserver.com/docs/caddyfile/directives/encode" rel="nofollow"><code>encode</code></a></strong> now stream immediately instead of being buffered. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4964581298" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7905" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7905/hovercard" href="https://github.com/caddyserver/caddy/pull/7905">#7905</a>)</li> <li><strong>Graceful shutdown</strong> now waits for servers left over from previous configs, so long-lived responses that started before a reload aren't cut off at exit. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5412028306" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8009" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8009/hovercard" href="https://github.com/caddyserver/caddy/pull/8009">#8009</a>)</li> <li><strong>Caddyfile:</strong> <a href="https://caddyserver.com/docs/caddyfile/directives/import" rel="nofollow"><code>import</code></a> now works inside <a href="https://caddyserver.com/docs/caddyfile/concepts#named-routes" rel="nofollow">named routes</a> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5330292529" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7986" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7986/hovercard" href="https://github.com/caddyserver/caddy/pull/7986">#7986</a>), and quoted braces are treated as literal arguments (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4864551952" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7875" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7875/hovercard" href="https://github.com/caddyserver/caddy/pull/7875">#7875</a>).</li> <li><strong>Logging:</strong> <ul> <li>new <a href="https://caddyserver.com/docs/caddyfile/directives/log#set-cookie" rel="nofollow"><code>set_cookie</code></a> log filter (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4902860438" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7888" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7888/hovercard" href="https://github.com/caddyserver/caddy/pull/7888">#7888</a>)</li> <li><a href="https://caddyserver.com/docs/caddyfile/directives/log#roll_interval" rel="nofollow"><code>roll_interval</code></a> accepts days (<code>d</code>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4943005546" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7900" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7900/hovercard" href="https://github.com/caddyserver/caddy/pull/7900">#7900</a>)</li> <li>recovered handler panics are logged at ERROR level (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5082104971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7924" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7924/hovercard" href="https://github.com/caddyserver/caddy/pull/7924">#7924</a>)</li> <li>write timeout errors show up in access logs (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5169960455" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7945" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7945/hovercard" href="https://github.com/caddyserver/caddy/pull/7945">#7945</a>)</li> </ul> </li> <li><strong>Performance:</strong> fewer allocations in request hot paths, encoding negotiation, and the reverse proxy, from <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jvoisin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jvoisin">@jvoisin</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a>. Directory browsing is much faster for large directories. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4769186702" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7847" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7847/hovercard" href="https://github.com/caddyserver/caddy/pull/7847">#7847</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4962716676" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7903" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7903/hovercard" href="https://github.com/caddyserver/caddy/pull/7903">#7903</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4989156671" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7911" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7911/hovercard" href="https://github.com/caddyserver/caddy/pull/7911">#7911</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5089725907" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7925" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7925/hovercard" href="https://github.com/caddyserver/caddy/pull/7925">#7925</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5089801716" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7926" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7926/hovercard" href="https://github.com/caddyserver/caddy/pull/7926">#7926</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5111274482" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7936" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7936/hovercard" href="https://github.com/caddyserver/caddy/pull/7936">#7936</a>)</li> <li><strong>Other new stuff:</strong> <ul> <li><code>{http.request.proto_name}</code> placeholder (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4549320061" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7782" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7782/hovercard" href="https://github.com/caddyserver/caddy/pull/7782">#7782</a>)</li> <li>FastCGI populates <code>SERVER_ADDR</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4992695830" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7912" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7912/hovercard" href="https://github.com/caddyserver/caddy/pull/7912">#7912</a>)</li> <li>multiple <code>authentication</code> providers no longer clobber each other's responses (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4964533492" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7904" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7904/hovercard" href="https://github.com/caddyserver/caddy/pull/7904">#7904</a>)</li> </ul> </li> </ul> <h2><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> Breaking changes</h2> <ul> <li><strong>Go 1.26 is now the minimum version</strong> for building Caddy and plugins. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5550453857" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8056" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8056/hovercard" href="https://github.com/caddyserver/caddy/pull/8056">#8056</a>)</li> <li><strong>Request headers are limited to 16 KiB by default.</strong> Before, we used Go's 1 MB default. Requests with larger headers (giant cookies, oversized tokens, etc.) will now get <code>431 Request Header Fields Too Large</code>. If you need more, raise it with the <a href="https://caddyserver.com/docs/caddyfile/options#max-header-size" rel="nofollow"><code>max_header_size</code></a> server option.</li> <li><strong>New 1-minute idle read/write timeouts by default.</strong> If a request body read or a response write stalls (makes no progress at all) for longer than that, the connection is aborted. Pauses <em>between</em> writes, like with SSE, don't count. Some long-lived streams where the client goes quiet mid-body may be affected. You can tune these with <code>read_body_idle</code> and <code>write_idle</code> in the <a href="https://caddyserver.com/docs/caddyfile/options#timeouts" rel="nofollow"><code>timeouts</code></a> server option, or per-route with the <a href="https://caddyserver.com/docs/caddyfile/directives/timeouts" rel="nofollow"><code>timeouts</code></a> directive. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4997606826" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7913" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7913/hovercard" href="https://github.com/caddyserver/caddy/pull/7913">#7913</a>)</li> <li><strong>Request header fields containing <code>.</code> are now dropped</strong>, the same way underscores were in 2.11.4. PHP folds <code>.</code> to <code>_</code>, so these could be used to impersonate legitimate headers. If you need specific ones, allow them with the new <a href="https://caddyserver.com/docs/caddyfile/options#expected-dot-headers" rel="nofollow"><code>expected_dot_headers</code></a> server option.</li> <li><strong>A wildcard site's <a href="https://caddyserver.com/docs/caddyfile/directives/tls#client_auth" rel="nofollow"><code>client_auth</code></a> no longer applies to more specific hostnames that have their own site blocks.</strong> For example, <code>public.example.com</code> no longer inherits mTLS from <code>*.example.com</code>. If you were counting on that inheritance, configure <code>client_auth</code> on the specific site explicitly. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5054270753" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7920" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7920/hovercard" href="https://github.com/caddyserver/caddy/pull/7920">#7920</a>)</li> <li><strong>Stricter config validation.</strong> Some configs that used to be silently accepted (and probably didn't do what you expected) are now errors: <ul> <li>duplicate <code>named_routes</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4590935965" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7800" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7800/hovercard" href="https://github.com/caddyserver/caddy/pull/7800">#7800</a>)</li> <li>duplicate <code>forward_auth</code> <code>uri</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4633207560" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7814" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7814/hovercard" href="https://github.com/caddyserver/caddy/pull/7814">#7814</a>)</li> <li>invalid <code>weighted_round_robin</code> weights (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4607527762" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7807" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7807/hovercard" href="https://github.com/caddyserver/caddy/pull/7807">#7807</a>)</li> <li>a non-integer <code>browse</code> <code>file_limit</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5342863957" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7988" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7988/hovercard" href="https://github.com/caddyserver/caddy/pull/7988">#7988</a>)</li> <li>duplicate or ambiguous <code>map</code> inputs (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5592876447" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8067" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8067/hovercard" href="https://github.com/caddyserver/caddy/pull/8067">#8067</a>)</li> <li>malformed <code>map</code> destination placeholders (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5603700365" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8074" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8074/hovercard" href="https://github.com/caddyserver/caddy/pull/8074">#8074</a>)</li> <li>module paths with ambiguous <code>@</code> version separators (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293033985" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7974" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7974/hovercard" href="https://github.com/caddyserver/caddy/pull/7974">#7974</a>)</li> </ul> </li> <li><strong>Admin API <a href="https://caddyserver.com/docs/api#post-load" rel="nofollow"><code>/load</code></a></strong> now returns <code>400</code> with warnings inside a valid JSON body when a config is invalid. Before, it returned <code>200</code> with two concatenated JSON objects. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3434848369" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7267" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7267/hovercard" href="https://github.com/caddyserver/caddy/pull/7267">#7267</a>)</li> <li><strong><a href="https://caddyserver.com/docs/caddyfile/matchers#method" rel="nofollow"><code>method</code></a> matcher values are normalized to uppercase</strong>, so <code>method get</code> now matches <code>GET</code> requests. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4706546727" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7832" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7832/hovercard" href="https://github.com/caddyserver/caddy/pull/7832">#7832</a>)</li> </ul> <h2>Security fixes</h2> <p>Thank you to everyone who reported responsibly and helped with patches:</p> <ul> <li>reverseproxy: When a route used both <a href="https://caddyserver.com/docs/caddyfile/directives/forward_auth" rel="nofollow"><code>forward_auth</code></a> and <a href="https://caddyserver.com/docs/caddyfile/directives/reverse_proxy" rel="nofollow"><code>reverse_proxy</code></a>, a request could be sent on the wrong upstream connection. Reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/carlt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/carlt">@carlt</a>, fixed by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a>. (<a title="GHSA-6365-7ppr-5r92" href="https://github.com/caddyserver/caddy/security/advisories/GHSA-6365-7ppr-5r92">GHSA-6365-7ppr-5r92</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4809110695" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7859" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7859/hovercard" href="https://github.com/caddyserver/caddy/pull/7859">#7859</a>)</li> <li>reverseproxy: Hop-by-hop headers from upstreams are now stripped from <code>101 Switching Protocols</code> responses too. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jirn073-76/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jirn073-76">@jirn073-76</a>.</li> <li>caddyhttp: <a href="https://caddyserver.com/docs/caddyfile/directives/handle_path" rel="nofollow"><code>handle_path</code></a> and <a href="https://caddyserver.com/docs/caddyfile/directives/uri" rel="nofollow"><code>uri</code></a> <code>strip_prefix</code>/<code>strip_suffix</code> now canonicalize the resulting path, so it can't bypass path-based authorization. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a>.</li> <li>caddyhttp: Extended the 2.11.4 header-alias filter to <code>.</code> (see above) to prevent bypassing <code>forward_auth copy_headers</code> with PHP/FastCGI backends. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a>.</li> <li>caddyhttp: The <a href="https://caddyserver.com/docs/caddyfile/matchers#path-regexp" rel="nofollow"><code>path_regexp</code></a> matcher now normalizes Windows backslashes like the <code>path</code> matcher does. This completes the fix for <a title="CVE-2026-52844" data-hovercard-type="advisory" data-hovercard-url="/advisories/GHSA-qrp7-cvwr-j2c6/hovercard" href="https://github.com/advisories/GHSA-qrp7-cvwr-j2c6">CVE-2026-52844</a>. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/thientd/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/thientd">@thientd</a>. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4807492604" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7858" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7858/hovercard" href="https://github.com/caddyserver/caddy/pull/7858">#7858</a>)</li> <li>fileserver: Windows 8.3 short names are rejected in every path component, not just the last one. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DavidCarliez/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/DavidCarliez">@DavidCarliez</a>. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5223576946" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7952" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7952/hovercard" href="https://github.com/caddyserver/caddy/pull/7952">#7952</a>)</li> <li>fileserver: Fixed ETag collisions between files with different modification times and sizes. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a>.</li> <li>fastcgi: The client's <code>Proxy</code> header is no longer passed to backends as <code>HTTP_PROXY</code> (HTTPoxy). Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bzyy1024/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bzyy1024">@bzyy1024</a>. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5110419971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7934" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7934/hovercard" href="https://github.com/caddyserver/caddy/pull/7934">#7934</a>)</li> <li>reverseproxy: Sticky session cookie hashes are compared in constant time. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alhudz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alhudz">@alhudz</a>. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4783378045" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7853" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7853/hovercard" href="https://github.com/caddyserver/caddy/pull/7853">#7853</a>)</li> <li>admin: Request paths are normalized in the remote admin access check, and origin/host allow-lists compare case-insensitively (defense-in-depth). Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AmariahAK/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AmariahAK">@AmariahAK</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a>. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4987862943" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7910" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7910/hovercard" href="https://github.com/caddyserver/caddy/pull/7910">#7910</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293027446" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7973" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7973/hovercard" href="https://github.com/caddyserver/caddy/pull/7973">#7973</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5357895396" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7993" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7993/hovercard" href="https://github.com/caddyserver/caddy/pull/7993">#7993</a>)</li> <li>caddyhttp: Oversized request bodies used through placeholders now correctly return <code>413</code>. Thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a>. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5292852808" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7969" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7969/hovercard" href="https://github.com/caddyserver/caddy/pull/7969">#7969</a>)</li> </ul> <p><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> These security patches may be breaking if your application relies on the buggy behaviors.</p> <p>🚨 <strong>Notice for Caddy plugin maintainers: Dependabot will probably alert you to the security fixes in Caddy and urge you to upgrade it in your <code>go.mod</code> file. Please ONLY upgrade the Caddy dependency if there's a change to an exported API your plugin uses.</strong> Note that doing so now also requires Go 1.26.</p> <p>Thank you to everyone who was involved this release, especially our 40 new contributors! 🎉</p> <h2>What's Changed</h2> <ul> <li>reverseproxy: replace placeholders specified for sni while using http3 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4466246811" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7737" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7737/hovercard" href="https://github.com/caddyserver/caddy/pull/7737">#7737</a></li> <li>caddyhttp: add {http.request.proto_name} placeholder for spec-compliant protocol names by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Jualhosting/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Jualhosting">@Jualhosting</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4549320061" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7782" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7782/hovercard" href="https://github.com/caddyserver/caddy/pull/7782">#7782</a></li> <li>httpcaddyfile: error on duplicate named_routes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vijayvenkatj/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vijayvenkatj">@vijayvenkatj</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4590935965" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7800" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7800/hovercard" href="https://github.com/caddyserver/caddy/pull/7800">#7800</a></li> <li>cmd: colored error message in WrapCommandFuncForCobra (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4487391791" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7760" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7760/hovercard" href="https://github.com/caddyserver/caddy/issues/7760">#7760</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/u5surf/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/u5surf">@u5surf</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4517221409" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7768" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7768/hovercard" href="https://github.com/caddyserver/caddy/pull/7768">#7768</a></li> <li>chore: add missing "is" in SECURITY.md by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AliMickey/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AliMickey">@AliMickey</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4603129803" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7802" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7802/hovercard" href="https://github.com/caddyserver/caddy/pull/7802">#7802</a></li> <li>reverseproxy: validate on weighted_round_robin loadbalancing policy by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vijayvenkatj/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vijayvenkatj">@vijayvenkatj</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4607527762" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7807" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7807/hovercard" href="https://github.com/caddyserver/caddy/pull/7807">#7807</a></li> <li>forwardauth: error on duplicate uri subdirective by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vijayvenkatj/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vijayvenkatj">@vijayvenkatj</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4633207560" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7814" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7814/hovercard" href="https://github.com/caddyserver/caddy/pull/7814">#7814</a></li> <li>encode: add standard benchmark and conformance harness by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ottenhoff/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ottenhoff">@ottenhoff</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4604516201" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7804" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7804/hovercard" href="https://github.com/caddyserver/caddy/pull/7804">#7804</a></li> <li>caddyhttp: restore allow_underscore_in_headers server option by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bluegate-studio/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bluegate-studio">@bluegate-studio</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4608969024" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7809" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7809/hovercard" href="https://github.com/caddyserver/caddy/pull/7809">#7809</a></li> <li>rewrite: fix wrong index check in trimPathPrefix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alhudz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alhudz">@alhudz</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4621309730" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7812" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7812/hovercard" href="https://github.com/caddyserver/caddy/pull/7812">#7812</a></li> <li>intercept: fix replace_status being silently dropped by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oksusucha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oksusucha">@oksusucha</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4610535281" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7810" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7810/hovercard" href="https://github.com/caddyserver/caddy/pull/7810">#7810</a></li> <li>fileserver: append repeated hide subdirectives instead of overwriting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/luccinmasirika/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/luccinmasirika">@luccinmasirika</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4655167436" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7817" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7817/hovercard" href="https://github.com/caddyserver/caddy/pull/7817">#7817</a></li> <li>rewrite: scope keyed query replace to its named key by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alhudz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alhudz">@alhudz</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4656000475" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7818" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7818/hovercard" href="https://github.com/caddyserver/caddy/pull/7818">#7818</a></li> <li>reverseproxy: log status 499 instead of 0 when client disconnects by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/larrasket/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/larrasket">@larrasket</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4686254928" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7827" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7827/hovercard" href="https://github.com/caddyserver/caddy/pull/7827">#7827</a></li> <li>tracing: fix BatchSpanProcessor goroutine leak on config reload by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Dean2026/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Dean2026">@Dean2026</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4683400432" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7826" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7826/hovercard" href="https://github.com/caddyserver/caddy/pull/7826">#7826</a></li> <li>caddyhttp: normalize method names to uppercase in MatchMethod.Provision by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yintaisha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yintaisha">@yintaisha</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4706546727" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7832" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7832/hovercard" href="https://github.com/caddyserver/caddy/pull/7832">#7832</a></li> <li>caddyhttp: add URL pattern request matcher by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4566223053" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7787" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7787/hovercard" href="https://github.com/caddyserver/caddy/pull/7787">#7787</a></li> <li>caddyhttp: fix escaped path matcher over-matching longer paths by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alhudz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alhudz">@alhudz</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4692983938" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7828" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7828/hovercard" href="https://github.com/caddyserver/caddy/pull/7828">#7828</a></li> <li>core: preserve metrics registry in Context.WithValue by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4820096409" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7861" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7861/hovercard" href="https://github.com/caddyserver/caddy/pull/7861">#7861</a></li> <li>reverseproxy: compare sticky-session cookie hash in constant time by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alhudz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alhudz">@alhudz</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4783378045" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7853" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7853/hovercard" href="https://github.com/caddyserver/caddy/pull/7853">#7853</a></li> <li>reverseproxy: fix misleading handle_response error for extra matcher args by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TowyTowy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TowyTowy">@TowyTowy</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4850634471" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7869" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7869/hovercard" href="https://github.com/caddyserver/caddy/pull/7869">#7869</a></li> <li>reverseproxy: save dial info in a context key instead of a variable k… by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4809110695" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7859" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7859/hovercard" href="https://github.com/caddyserver/caddy/pull/7859">#7859</a></li> <li>caddyhttp: fix path_regexp (MatchPathRE) Windows backslash bypass by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/thientd/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/thientd">@thientd</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4807492604" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7858" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7858/hovercard" href="https://github.com/caddyserver/caddy/pull/7858">#7858</a></li> <li>intercept: fix misleading handle_response error for extra matcher args by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TowyTowy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TowyTowy">@TowyTowy</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4853862628" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7871" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7871/hovercard" href="https://github.com/caddyserver/caddy/pull/7871">#7871</a></li> <li>build(deps): bump cel-go from v0.28.1 to v0.29.2 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/techknowlogick/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/techknowlogick">@techknowlogick</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4857367127" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7872" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7872/hovercard" href="https://github.com/caddyserver/caddy/pull/7872">#7872</a></li> <li>reverseproxy: fix broken reservoir sampling in random_choose policy by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TowyTowy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TowyTowy">@TowyTowy</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4864455657" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7873" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7873/hovercard" href="https://github.com/caddyserver/caddy/pull/7873">#7873</a></li> <li>caddyfile: treat quoted braces as literal arguments by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/elee1766/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/elee1766">@elee1766</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4864551952" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7875" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7875/hovercard" href="https://github.com/caddyserver/caddy/pull/7875">#7875</a></li> <li>logging: hash query parameter values in QueryFilter by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PichuChen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PichuChen">@PichuChen</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4891522540" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7884" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7884/hovercard" href="https://github.com/caddyserver/caddy/pull/7884">#7884</a></li> <li>chore: fix sabotage spelling in nolint comments by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/futurehua/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/futurehua">@futurehua</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4917122727" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7892" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7892/hovercard" href="https://github.com/caddyserver/caddy/pull/7892">#7892</a></li> <li>pki: Handle error immediately after reading root from disk by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hslatman/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hslatman">@hslatman</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4924283427" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7896" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7896/hovercard" href="https://github.com/caddyserver/caddy/pull/7896">#7896</a></li> <li>log: support <code>d</code> (day) in <code>roll_interval</code> directive by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4943005546" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7900" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7900/hovercard" href="https://github.com/caddyserver/caddy/pull/7900">#7900</a></li> <li>deps: update GitHub Actions and Go modules by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4864718844" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7876" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7876/hovercard" href="https://github.com/caddyserver/caddy/pull/7876">#7876</a></li> <li>build(deps): bump google.golang.org/grpc from 1.81.1 to 1.82.1 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4974095790" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7908" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7908/hovercard" href="https://github.com/caddyserver/caddy/pull/7908">#7908</a></li> <li>core: reduce QUIC initial packet size for low-MTU paths by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Salynn/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Salynn">@Salynn</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4893669283" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7886" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7886/hovercard" href="https://github.com/caddyserver/caddy/pull/7886">#7886</a></li> <li>rewrite: preserve non-canonical path encoding after uri replace by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/larrasket/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/larrasket">@larrasket</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4972050954" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7907" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7907/hovercard" href="https://github.com/caddyserver/caddy/pull/7907">#7907</a></li> <li>caddyhttp: use canonical header key casing to avoid re-canonicalization by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4989156671" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7911" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7911/hovercard" href="https://github.com/caddyserver/caddy/pull/7911">#7911</a></li> <li>caddyconfig: Register nested named-route invokes transitively by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SillyZir/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SillyZir">@SillyZir</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4934903193" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7898" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7898/hovercard" href="https://github.com/caddyserver/caddy/pull/7898">#7898</a></li> <li>encode: reduce allocations in AcceptedEncodings by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jvoisin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jvoisin">@jvoisin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4769186702" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7847" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7847/hovercard" href="https://github.com/caddyserver/caddy/pull/7847">#7847</a></li> <li>encode: flush headers immediately for server-sent events responses by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SillyZir/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SillyZir">@SillyZir</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4964581298" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7905" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7905/hovercard" href="https://github.com/caddyserver/caddy/pull/7905">#7905</a></li> <li>fileserver: speed up directory browsing for large directories by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/firefart/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/firefart">@firefart</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4962716676" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7903" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7903/hovercard" href="https://github.com/caddyserver/caddy/pull/7903">#7903</a></li> <li>caddyauth: isolate provider responses to prevent cross-provider clobbering by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SillyZir/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SillyZir">@SillyZir</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4964533492" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7904" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7904/hovercard" href="https://github.com/caddyserver/caddy/pull/7904">#7904</a></li> <li>log: don't allow overwriting singly-assigned vals by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5091865687" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7927" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7927/hovercard" href="https://github.com/caddyserver/caddy/pull/7927">#7927</a></li> <li>caddyconfig: cancel HTTP loader requests with context by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cuishuang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cuishuang">@cuishuang</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5048287767" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7918" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7918/hovercard" href="https://github.com/caddyserver/caddy/pull/7918">#7918</a></li> <li>feat(fastcgi): populate SERVER_ADDR by default by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renich">@renich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4992695830" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7912" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7912/hovercard" href="https://github.com/caddyserver/caddy/pull/7912">#7912</a></li> <li>reverseproxy: reduce allocation/CPU overhead in request hot paths by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jvoisin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jvoisin">@jvoisin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5089725907" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7925" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7925/hovercard" href="https://github.com/caddyserver/caddy/pull/7925">#7925</a></li> <li>reverseproxy: preallocate upstream slices with known sizes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jvoisin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jvoisin">@jvoisin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5089801716" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7926" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7926/hovercard" href="https://github.com/caddyserver/caddy/pull/7926">#7926</a></li> <li>network_proxy: reject proxy URLs that resolve to a port with no host by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/r0h1tb/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/r0h1tb">@r0h1tb</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5069072770" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7922" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7922/hovercard" href="https://github.com/caddyserver/caddy/pull/7922">#7922</a></li> <li>caddyhttp: log recovered handler panics at ERROR level by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ousamabenyounes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ousamabenyounes">@ousamabenyounes</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5082104971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7924" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7924/hovercard" href="https://github.com/caddyserver/caddy/pull/7924">#7924</a></li> <li>caddyhttp: allocate the request UUID lazily instead of on every request by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jvoisin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jvoisin">@jvoisin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5111274482" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7936" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7936/hovercard" href="https://github.com/caddyserver/caddy/pull/7936">#7936</a></li> <li>caddyhttp: shield specific hostnames from a covering wildcard's client auth by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SillyZir/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SillyZir">@SillyZir</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5054270753" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7920" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7920/hovercard" href="https://github.com/caddyserver/caddy/pull/7920">#7920</a></li> <li>reverseproxy: isolate active health-check state per distinct check config by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SillyZir/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SillyZir">@SillyZir</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5045183679" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7916" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7916/hovercard" href="https://github.com/caddyserver/caddy/pull/7916">#7916</a></li> <li>logging: add set_cookie log filter for Set-Cookie response headers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steffenbusch/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steffenbusch">@steffenbusch</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4902860438" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7888" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7888/hovercard" href="https://github.com/caddyserver/caddy/pull/7888">#7888</a></li> <li>caddyhttp: fix url_pattern authorization bypass via encoded-slash traversal by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5158642268" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7941" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7941/hovercard" href="https://github.com/caddyserver/caddy/pull/7941">#7941</a></li> <li>fix: close resources on error paths by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ittakestwo123/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ittakestwo123">@ittakestwo123</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5158356299" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7940" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7940/hovercard" href="https://github.com/caddyserver/caddy/pull/7940">#7940</a></li> <li>fastcgi: fix HTTPoxy vulnerability by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bzyy1024/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bzyy1024">@bzyy1024</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5110419971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7934" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7934/hovercard" href="https://github.com/caddyserver/caddy/pull/7934">#7934</a></li> <li>caddyhttp: mitigate slowloris via idle read/write deadlines by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4997606826" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7913" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7913/hovercard" href="https://github.com/caddyserver/caddy/pull/7913">#7913</a></li> <li>chore: fix lint errors from newer golangci-lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/faiyazrahmann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/faiyazrahmann">@faiyazrahmann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5238065367" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7958" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7958/hovercard" href="https://github.com/caddyserver/caddy/pull/7958">#7958</a></li> <li>pki: honor skip_install_trust for explicit tls internal issuers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gautamrizwani/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/gautamrizwani">@gautamrizwani</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4923183225" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7894" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7894/hovercard" href="https://github.com/caddyserver/caddy/pull/7894">#7894</a></li> <li>caddyfile: clarify ArgErr documentation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/0jaspahwa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/0jaspahwa">@0jaspahwa</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5244855789" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7960" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7960/hovercard" href="https://github.com/caddyserver/caddy/pull/7960">#7960</a></li> <li>rewrite: fix URI splitting when a query or fragment arrives via a placeholder by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5190345202" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7947" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7947/hovercard" href="https://github.com/caddyserver/caddy/pull/7947">#7947</a></li> <li>admin: normalize request path in remote admin access-control check (defense-in-depth) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AmariahAK/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AmariahAK">@AmariahAK</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4987862943" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7910" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7910/hovercard" href="https://github.com/caddyserver/caddy/pull/7910">#7910</a></li> <li>fileserver: reject short names in every path component by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DavidCarliez/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/DavidCarliez">@DavidCarliez</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5223576946" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7952" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7952/hovercard" href="https://github.com/caddyserver/caddy/pull/7952">#7952</a></li> <li>rewrite: fix strip_path_suffix ignoring percent-encoding by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TowyTowy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TowyTowy">@TowyTowy</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4866199320" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7877" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7877/hovercard" href="https://github.com/caddyserver/caddy/pull/7877">#7877</a></li> <li>admin: stabilise log redaction test by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5163954670" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7942" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7942/hovercard" href="https://github.com/caddyserver/caddy/pull/7942">#7942</a></li> <li>chore: fix canonicalheader failures by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5276745542" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7964" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7964/hovercard" href="https://github.com/caddyserver/caddy/pull/7964">#7964</a></li> <li>cmd: upgrade automemlimit to v1.0.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5300785316" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7978" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7978/hovercard" href="https://github.com/caddyserver/caddy/pull/7978">#7978</a></li> <li>caddy: fix ParseNetworkAddress port-range span off-by-one by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293038972" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7975" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7975/hovercard" href="https://github.com/caddyserver/caddy/pull/7975">#7975</a></li> <li>usagepool: avoid lock inversion after constructor failure by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kojah/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kojah">@kojah</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5288571357" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7968" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7968/hovercard" href="https://github.com/caddyserver/caddy/pull/7968">#7968</a></li> <li>cmd: reject ambiguous module version separators by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293033985" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7974" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7974/hovercard" href="https://github.com/caddyserver/caddy/pull/7974">#7974</a></li> <li>admin: fix origin allow-list host comparison to be case-insensitive by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293027446" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7973" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7973/hovercard" href="https://github.com/caddyserver/caddy/pull/7973">#7973</a></li> <li>caddyfile: fix importGraph self-loop and stale-edge bugs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293009104" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7971" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7971/hovercard" href="https://github.com/caddyserver/caddy/pull/7971">#7971</a></li> <li>caddyhttp: remove unused QUICConfig from the HTTP/3 server by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/faiyazrahmann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/faiyazrahmann">@faiyazrahmann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5303878480" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7980" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7980/hovercard" href="https://github.com/caddyserver/caddy/pull/7980">#7980</a></li> <li>fileserver: reject non-integer browse file_limit by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SashaMIT/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SashaMIT">@SashaMIT</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5342863957" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7988" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7988/hovercard" href="https://github.com/caddyserver/caddy/pull/7988">#7988</a></li> <li>caddyhttp: surface write timeout errors in access log by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/faiyazrahmann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/faiyazrahmann">@faiyazrahmann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5169960455" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7945" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7945/hovercard" href="https://github.com/caddyserver/caddy/pull/7945">#7945</a></li> <li>admin: fix host allow-list comparison to be case-insensitive by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5357895396" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7993" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7993/hovercard" href="https://github.com/caddyserver/caddy/pull/7993">#7993</a></li> <li>caddytls: synchronize storage cleaner with TLS.Stop via context and WaitGroup by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jum/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jum">@jum</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5235492338" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7954" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7954/hovercard" href="https://github.com/caddyserver/caddy/pull/7954">#7954</a></li> <li>httpcaddyfile: give each adaptation its own directive order by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/faiyazrahmann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/faiyazrahmann">@faiyazrahmann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5362786471" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7995" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7995/hovercard" href="https://github.com/caddyserver/caddy/pull/7995">#7995</a></li> <li>listen: don't wedge a reloaded listener sharing a socket on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alexandre-daubois/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alexandre-daubois">@alexandre-daubois</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5372621280" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7999" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7999/hovercard" href="https://github.com/caddyserver/caddy/pull/7999">#7999</a></li> <li>caddyhttp: demote Alt-Svc ErrNoAltSvcPort to debug level by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jum/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jum">@jum</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378617444" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8000" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8000/hovercard" href="https://github.com/caddyserver/caddy/pull/8000">#8000</a></li> <li>events: skip dispatch setup when nothing is subscribed by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/u5surf/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/u5surf">@u5surf</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5363051936" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7997" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7997/hovercard" href="https://github.com/caddyserver/caddy/pull/7997">#7997</a></li> <li>reverseproxy: replace only known placeholders in health check body by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/IslamElsayed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/IslamElsayed">@IslamElsayed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5385411233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8003" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8003/hovercard" href="https://github.com/caddyserver/caddy/pull/8003">#8003</a></li> <li>acmeserver: say when the CA database is locked by another process by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/faiyazrahmann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/faiyazrahmann">@faiyazrahmann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5408211091" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8007" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8007/hovercard" href="https://github.com/caddyserver/caddy/pull/8007">#8007</a></li> <li>fix: require module path boundaries when matching packages by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wangjingshuiku/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wangjingshuiku">@wangjingshuiku</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5237315129" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7957" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7957/hovercard" href="https://github.com/caddyserver/caddy/pull/7957">#7957</a></li> <li>caddyhttp: preserve unknown placeholders in static response headers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5434758987" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8014" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8014/hovercard" href="https://github.com/caddyserver/caddy/pull/8014">#8014</a></li> <li>build(deps): bump google.golang.org/grpc from 1.82.1 to 1.83.1 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5321489200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7984" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7984/hovercard" href="https://github.com/caddyserver/caddy/pull/7984">#7984</a></li> <li>reverseproxy: propagate TCP half-close on upgraded streams by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/btncwn/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/btncwn">@btncwn</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5466403959" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8027" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8027/hovercard" href="https://github.com/caddyserver/caddy/pull/8027">#8027</a></li> <li>build(deps): bump google.golang.org/grpc from 1.83.1 to 1.83.2 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5472807270" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8028" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8028/hovercard" href="https://github.com/caddyserver/caddy/pull/8028">#8028</a></li> <li>caddyfile: Expand imports inside named routes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/XiaoleC05/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/XiaoleC05">@XiaoleC05</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5330292529" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7986" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7986/hovercard" href="https://github.com/caddyserver/caddy/pull/7986">#7986</a></li> <li>chore(deps): bump cel-go and switch import to new url by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/techknowlogick/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/techknowlogick">@techknowlogick</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5481486283" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8030" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8030/hovercard" href="https://github.com/caddyserver/caddy/pull/8030">#8030</a></li> <li>core: synchronize Stop with concurrent config reloads by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/H-XX-D/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/H-XX-D">@H-XX-D</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5511008946" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8038" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8038/hovercard" href="https://github.com/caddyserver/caddy/pull/8038">#8038</a></li> <li>reverse_proxy with versions 3 silently ignores tls_trust_pool and verifies against the system roots by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tippexs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tippexs">@tippexs</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5517625712" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8042" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8042/hovercard" href="https://github.com/caddyserver/caddy/pull/8042">#8042</a></li> <li>admin: fix warnings and status code in /load API by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/amirdaraby/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/amirdaraby">@amirdaraby</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3434848369" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7267" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7267/hovercard" href="https://github.com/caddyserver/caddy/pull/7267">#7267</a></li> <li>fastcgi: explain 411 responses for unknown-length bodies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Rohilalala/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Rohilalala">@Rohilalala</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5236612645" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7956" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7956/hovercard" href="https://github.com/caddyserver/caddy/pull/7956">#7956</a></li> <li>Move websocket header normalization later by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nfreya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nfreya">@nfreya</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5067777580" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7921" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7921/hovercard" href="https://github.com/caddyserver/caddy/pull/7921">#7921</a></li> <li>chore: remove AI moderator workflow by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5577854178" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8059" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8059/hovercard" href="https://github.com/caddyserver/caddy/pull/8059">#8059</a></li> <li>caddyhttp: surface 413 for oversized request body placeholders by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5292852808" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7969" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7969/hovercard" href="https://github.com/caddyserver/caddy/pull/7969">#7969</a></li> <li>reverseproxy: Fix partial response not flushed to clients by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4773090360" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7849" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7849/hovercard" href="https://github.com/caddyserver/caddy/pull/7849">#7849</a></li> <li>caddyhttp: fix randString sameCase dictionary to match its docs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5293018561" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7972" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7972/hovercard" href="https://github.com/caddyserver/caddy/pull/7972">#7972</a></li> <li>requestbody: replace only known placeholders in the set body by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5410996145" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8008" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8008/hovercard" href="https://github.com/caddyserver/caddy/pull/8008">#8008</a></li> <li>internal: fix <code>MaxSizeSubjectsListForLog</code> off-by-one when <code>maxToDisplay</code> is <code>0</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5292996840" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7970" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7970/hovercard" href="https://github.com/caddyserver/caddy/pull/7970">#7970</a></li> <li>caddyauth: only replace known placeholders in basic auth credentials by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5439555856" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8017" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8017/hovercard" href="https://github.com/caddyserver/caddy/pull/8017">#8017</a></li> <li>map: Distinguish duplicate literal and regexp inputs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Indra55/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Indra55">@Indra55</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5592876447" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8067" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8067/hovercard" href="https://github.com/caddyserver/caddy/pull/8067">#8067</a></li> <li>map: reject malformed destination placeholders by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sleet0922/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sleet0922">@sleet0922</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5603700365" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8074" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8074/hovercard" href="https://github.com/caddyserver/caddy/pull/8074">#8074</a></li> <li>httpcaddyfile: new <code>tls_automate_names</code> global option by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/IslamElsayed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/IslamElsayed">@IslamElsayed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5439294735" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8015" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8015/hovercard" href="https://github.com/caddyserver/caddy/pull/8015">#8015</a></li> <li>build: bump all dependencies - (Go 1.26 floor) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5550453857" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8056" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8056/hovercard" href="https://github.com/caddyserver/caddy/pull/8056">#8056</a></li> <li>caddyhttp: wait for servers from previous configs on exit by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5412028306" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8009" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8009/hovercard" href="https://github.com/caddyserver/caddy/pull/8009">#8009</a></li> <li>caddyhttp: use errors.AsType for request body limit errors by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5650164471" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8090" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8090/hovercard" href="https://github.com/caddyserver/caddy/pull/8090">#8090</a></li> <li>ci: pin cosign to v2 for release signing by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5653569026" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8092" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8092/hovercard" href="https://github.com/caddyserver/caddy/pull/8092">#8092</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vijayvenkatj/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vijayvenkatj">@vijayvenkatj</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4590935965" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7800" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7800/hovercard" href="https://github.com/caddyserver/caddy/pull/7800">#7800</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AliMickey/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AliMickey">@AliMickey</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4603129803" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7802" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7802/hovercard" href="https://github.com/caddyserver/caddy/pull/7802">#7802</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bluegate-studio/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bluegate-studio">@bluegate-studio</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4608969024" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7809" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7809/hovercard" href="https://github.com/caddyserver/caddy/pull/7809">#7809</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alhudz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alhudz">@alhudz</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4621309730" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7812" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7812/hovercard" href="https://github.com/caddyserver/caddy/pull/7812">#7812</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oksusucha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oksusucha">@oksusucha</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4610535281" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7810" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7810/hovercard" href="https://github.com/caddyserver/caddy/pull/7810">#7810</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/luccinmasirika/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/luccinmasirika">@luccinmasirika</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4655167436" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7817" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7817/hovercard" href="https://github.com/caddyserver/caddy/pull/7817">#7817</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/larrasket/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/larrasket">@larrasket</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4686254928" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7827" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7827/hovercard" href="https://github.com/caddyserver/caddy/pull/7827">#7827</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Dean2026/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Dean2026">@Dean2026</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4683400432" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7826" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7826/hovercard" href="https://github.com/caddyserver/caddy/pull/7826">#7826</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yintaisha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yintaisha">@yintaisha</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4706546727" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7832" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7832/hovercard" href="https://github.com/caddyserver/caddy/pull/7832">#7832</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TowyTowy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TowyTowy">@TowyTowy</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4850634471" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7869" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7869/hovercard" href="https://github.com/caddyserver/caddy/pull/7869">#7869</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/thientd/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/thientd">@thientd</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4807492604" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7858" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7858/hovercard" href="https://github.com/caddyserver/caddy/pull/7858">#7858</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PichuChen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PichuChen">@PichuChen</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4891522540" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7884" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7884/hovercard" href="https://github.com/caddyserver/caddy/pull/7884">#7884</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/futurehua/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/futurehua">@futurehua</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4917122727" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7892" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7892/hovercard" href="https://github.com/caddyserver/caddy/pull/7892">#7892</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Salynn/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Salynn">@Salynn</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4893669283" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7886" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7886/hovercard" href="https://github.com/caddyserver/caddy/pull/7886">#7886</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SillyZir/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SillyZir">@SillyZir</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4934903193" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7898" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7898/hovercard" href="https://github.com/caddyserver/caddy/pull/7898">#7898</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jvoisin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jvoisin">@jvoisin</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4769186702" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7847" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7847/hovercard" href="https://github.com/caddyserver/caddy/pull/7847">#7847</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/firefart/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/firefart">@firefart</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4962716676" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7903" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7903/hovercard" href="https://github.com/caddyserver/caddy/pull/7903">#7903</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renich">@renich</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4992695830" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7912" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7912/hovercard" href="https://github.com/caddyserver/caddy/pull/7912">#7912</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/r0h1tb/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/r0h1tb">@r0h1tb</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5069072770" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7922" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7922/hovercard" href="https://github.com/caddyserver/caddy/pull/7922">#7922</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ousamabenyounes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ousamabenyounes">@ousamabenyounes</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5082104971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7924" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7924/hovercard" href="https://github.com/caddyserver/caddy/pull/7924">#7924</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ittakestwo123/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ittakestwo123">@ittakestwo123</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5158356299" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7940" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7940/hovercard" href="https://github.com/caddyserver/caddy/pull/7940">#7940</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bzyy1024/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bzyy1024">@bzyy1024</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5110419971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7934" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7934/hovercard" href="https://github.com/caddyserver/caddy/pull/7934">#7934</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/faiyazrahmann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/faiyazrahmann">@faiyazrahmann</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5238065367" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7958" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7958/hovercard" href="https://github.com/caddyserver/caddy/pull/7958">#7958</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gautamrizwani/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/gautamrizwani">@gautamrizwani</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4923183225" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7894" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7894/hovercard" href="https://github.com/caddyserver/caddy/pull/7894">#7894</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/0jaspahwa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/0jaspahwa">@0jaspahwa</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5244855789" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7960" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7960/hovercard" href="https://github.com/caddyserver/caddy/pull/7960">#7960</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AmariahAK/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AmariahAK">@AmariahAK</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4987862943" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7910" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7910/hovercard" href="https://github.com/caddyserver/caddy/pull/7910">#7910</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DavidCarliez/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/DavidCarliez">@DavidCarliez</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5223576946" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7952" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7952/hovercard" href="https://github.com/caddyserver/caddy/pull/7952">#7952</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kojah/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kojah">@kojah</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5288571357" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7968" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7968/hovercard" href="https://github.com/caddyserver/caddy/pull/7968">#7968</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SashaMIT/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SashaMIT">@SashaMIT</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5342863957" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7988" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7988/hovercard" href="https://github.com/caddyserver/caddy/pull/7988">#7988</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hktitof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hktitof">@hktitof</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5357895396" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7993" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7993/hovercard" href="https://github.com/caddyserver/caddy/pull/7993">#7993</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/IslamElsayed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/IslamElsayed">@IslamElsayed</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5385411233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8003" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8003/hovercard" href="https://github.com/caddyserver/caddy/pull/8003">#8003</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wangjingshuiku/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wangjingshuiku">@wangjingshuiku</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5237315129" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7957" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7957/hovercard" href="https://github.com/caddyserver/caddy/pull/7957">#7957</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/btncwn/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/btncwn">@btncwn</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5466403959" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8027" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8027/hovercard" href="https://github.com/caddyserver/caddy/pull/8027">#8027</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/XiaoleC05/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/XiaoleC05">@XiaoleC05</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5330292529" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7986" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7986/hovercard" href="https://github.com/caddyserver/caddy/pull/7986">#7986</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/H-XX-D/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/H-XX-D">@H-XX-D</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5511008946" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8038" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8038/hovercard" href="https://github.com/caddyserver/caddy/pull/8038">#8038</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tippexs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tippexs">@tippexs</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5517625712" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8042" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8042/hovercard" href="https://github.com/caddyserver/caddy/pull/8042">#8042</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/amirdaraby/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/amirdaraby">@amirdaraby</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3434848369" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7267" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7267/hovercard" href="https://github.com/caddyserver/caddy/pull/7267">#7267</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Rohilalala/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Rohilalala">@Rohilalala</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5236612645" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7956" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7956/hovercard" href="https://github.com/caddyserver/caddy/pull/7956">#7956</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nfreya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nfreya">@nfreya</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5067777580" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7921" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7921/hovercard" href="https://github.com/caddyserver/caddy/pull/7921">#7921</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Indra55/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Indra55">@Indra55</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5592876447" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/8067" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/8067/hovercard" href="https://github.com/caddyserver/caddy/pull/8067">#8067</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.11.4...v2.11.6"><tt>v2.11.4...v2.11.6</tt></a></p> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.5 2026-09-30T21:27:05Z

v2.11.5

<p>Release v2.11.5</p> francislavoie tag:github.com,2008:Repository/29207621/v2.11.4 2026-06-07T20:53:58Z

v2.11.4

<p>This release patches more security, security-adjacent, and normal bugs. The FrankenPHP project has collaborated on PHP-adjacent patches, which we are grateful for.</p> <p>The recent surge of patches is mostly attributed to token predictors. We have had to reject more than 75% of "security" reports because they were AI slop spam (or just lazy/incorrect). Please use LLMs and agents wisely to avoid wasting precious maintainer resources. We have started blocking offending accounts that spam slop reports. Thank you to all who submit responsible reports following our security policy to make the project better. We appreciate that the community deems the Caddy project worthy of contribution to improve the broader ecosystem!</p> <p>Security-related patches:</p> <ul> <li>caddyhttp: Normalize Windows backslashes in path matcher (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Vincent550102/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Vincent550102">@Vincent550102</a>)</li> <li>rewrite: Prevent placeholder re-expansion in injected query (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WhiskerEnt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WhiskerEnt">@WhiskerEnt</a>)</li> <li>templates: Improved <code>stripHTML</code> action to more reliably remove malformed HTML (thanks to <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jmrcsnchz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jmrcsnchz">@jmrcsnchz</a>)</li> <li>caddyhttp: Ignore header fields with underscores to prevent collisions (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Vincent550102/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Vincent550102">@Vincent550102</a> for the report and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> for the patch)</li> </ul> <p><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> These security patches may be breaking if your application relies on the buggy behaviors.</p> <p>There are also several other various fixes and enhancements by many other contributors. Thank you everyone who participated!</p> <h2>What's Changed</h2> <ul> <li>reverseproxy: further prevent body closes from dial errors by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jameshartig/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jameshartig">@jameshartig</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4425756984" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7715" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7715/hovercard" href="https://github.com/caddyserver/caddy/pull/7715">#7715</a></li> <li>caddytls: Fix client auth (fix <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4440184595" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7724" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7724/hovercard" href="https://github.com/caddyserver/caddy/issues/7724">#7724</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4443177508" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7727" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7727/hovercard" href="https://github.com/caddyserver/caddy/pull/7727">#7727</a></li> <li>chore: deps upgrade by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4481859981" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7751" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7751/hovercard" href="https://github.com/caddyserver/caddy/pull/7751">#7751</a></li> <li>caddyhttp: omit Last-Modified for unusable mod times by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bb4242/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bb4242">@bb4242</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4471560348" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7740" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7740/hovercard" href="https://github.com/caddyserver/caddy/pull/7740">#7740</a></li> <li>caddytls: fix TLS state races and ECH rotation retry by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/broady/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/broady">@broady</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4483298958" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7756" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7756/hovercard" href="https://github.com/caddyserver/caddy/pull/7756">#7756</a></li> <li>chore: clean up wording and typo fixes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4473201547" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7745" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7745/hovercard" href="https://github.com/caddyserver/caddy/pull/7745">#7745</a></li> <li>reverseproxy: Add regression test for DialInfo network override by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eyupcanakman/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eyupcanakman">@eyupcanakman</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4484754938" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7758" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7758/hovercard" href="https://github.com/caddyserver/caddy/pull/7758">#7758</a></li> <li>caddyauth: add candidate placeholders for rejected identities by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4414512072" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7698" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7698/hovercard" href="https://github.com/caddyserver/caddy/pull/7698">#7698</a></li> <li>cmd: support caddy start on IPv6-only hosts by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4473083763" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7744" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7744/hovercard" href="https://github.com/caddyserver/caddy/pull/7744">#7744</a></li> <li>caddyfile: preserve implicit TLS issuer semantics by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4473041753" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7743" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7743/hovercard" href="https://github.com/caddyserver/caddy/pull/7743">#7743</a></li> <li>reverseproxy: wraps request body to prevent closing if not read by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4435776281" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7719" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7719/hovercard" href="https://github.com/caddyserver/caddy/pull/7719">#7719</a></li> <li>caddytls: match IDN SNI in connection policies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4472963527" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7742" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7742/hovercard" href="https://github.com/caddyserver/caddy/pull/7742">#7742</a></li> <li>build(deps): bump the all-updates group across 1 directory with 9 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4481916138" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7752" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7752/hovercard" href="https://github.com/caddyserver/caddy/pull/7752">#7752</a></li> <li>caddyhttp: normalize Windows backslashes in path matcher by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Vincent550102/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Vincent550102">@Vincent550102</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4488869176" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7763" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7763/hovercard" href="https://github.com/caddyserver/caddy/pull/7763">#7763</a></li> <li>go.mod: update x/net by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4515913316" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7767" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7767/hovercard" href="https://github.com/caddyserver/caddy/pull/7767">#7767</a></li> <li>rewrite: prevent placeholder re-expansion in injected query by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WhiskerEnt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WhiskerEnt">@WhiskerEnt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4488393433" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7761" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7761/hovercard" href="https://github.com/caddyserver/caddy/pull/7761">#7761</a></li> <li>perf(replacer): optimize memory allocation for file placeholders by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Jualhosting/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Jualhosting">@Jualhosting</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4531933174" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7773" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7773/hovercard" href="https://github.com/caddyserver/caddy/pull/7773">#7773</a></li> <li>caddytls: skip idna.ToASCII for pure ASCII SNI values by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sleet0922/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sleet0922">@sleet0922</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4531809304" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7770" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7770/hovercard" href="https://github.com/caddyserver/caddy/pull/7770">#7770</a></li> <li>encode: prioritize zstd and br over gzip in content negotiation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Jualhosting/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Jualhosting">@Jualhosting</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4531888526" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7772" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7772/hovercard" href="https://github.com/caddyserver/caddy/pull/7772">#7772</a></li> <li>httpcaddyfile: fix incorrect error message on duplicate matchers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Brunotlps/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Brunotlps">@Brunotlps</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4544214462" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7780" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7780/hovercard" href="https://github.com/caddyserver/caddy/pull/7780">#7780</a></li> <li>Patch for <a title="GHSA-vcc4-2c75-vc9v" data-hovercard-type="advisory" data-hovercard-url="/advisories/GHSA-vcc4-2c75-vc9v/hovercard" href="https://github.com/advisories/GHSA-vcc4-2c75-vc9v">GHSA-vcc4-2c75-vc9v</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jmrcsnchz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jmrcsnchz">@jmrcsnchz</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4562123598" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7785" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7785/hovercard" href="https://github.com/caddyserver/caddy/pull/7785">#7785</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jameshartig/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jameshartig">@jameshartig</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4425756984" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7715" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7715/hovercard" href="https://github.com/caddyserver/caddy/pull/7715">#7715</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bb4242/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bb4242">@bb4242</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4471560348" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7740" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7740/hovercard" href="https://github.com/caddyserver/caddy/pull/7740">#7740</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/broady/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/broady">@broady</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4483298958" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7756" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7756/hovercard" href="https://github.com/caddyserver/caddy/pull/7756">#7756</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eyupcanakman/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eyupcanakman">@eyupcanakman</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4484754938" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7758" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7758/hovercard" href="https://github.com/caddyserver/caddy/pull/7758">#7758</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Vincent550102/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Vincent550102">@Vincent550102</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4488869176" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7763" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7763/hovercard" href="https://github.com/caddyserver/caddy/pull/7763">#7763</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WhiskerEnt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WhiskerEnt">@WhiskerEnt</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4488393433" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7761" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7761/hovercard" href="https://github.com/caddyserver/caddy/pull/7761">#7761</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Jualhosting/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Jualhosting">@Jualhosting</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4531933174" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7773" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7773/hovercard" href="https://github.com/caddyserver/caddy/pull/7773">#7773</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sleet0922/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sleet0922">@sleet0922</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4531809304" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7770" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7770/hovercard" href="https://github.com/caddyserver/caddy/pull/7770">#7770</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Brunotlps/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Brunotlps">@Brunotlps</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4544214462" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7780" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7780/hovercard" href="https://github.com/caddyserver/caddy/pull/7780">#7780</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jmrcsnchz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jmrcsnchz">@jmrcsnchz</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4562123598" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7785" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7785/hovercard" href="https://github.com/caddyserver/caddy/pull/7785">#7785</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.11.3...v2.11.4"><tt>v2.11.3...v2.11.4</tt></a></p> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.3 2026-05-12T15:18:58Z

v2.11.3

<p>This release improves several aspects of Caddy with minor features, bug fixes, and security patches. Thank you to everyone and their bots who contributed to help make this release the best one yet!</p> <p><strong>Security patches:</strong></p> <ul> <li>fastcgi: Carrying over a patch from FrankenPHP for a bug that could allow non-PHP files to be executed; collaborated on by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/KC1zs4/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/KC1zs4">@KC1zs4</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chenjj/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chenjj">@chenjj</a>.</li> <li>vars: A more thorough fix for <a title="GHSA-m2w3-8f23-hxxf" data-hovercard-type="advisory" data-hovercard-url="/advisories/GHSA-m2w3-8f23-hxxf/hovercard" href="https://github.com/advisories/GHSA-m2w3-8f23-hxxf">GHSA-m2w3-8f23-hxxf</a>, collaborated by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/everping/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/everping">@everping</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vnxme/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vnxme">@vnxme</a>.</li> <li>admin: Array index normalization to prevent remote admin socket auth bypass, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amemoyoi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amemoyoi">@Amemoyoi</a> and bot.</li> <li>admin: More rigorous path prefix matching to prevent remote admin socket auth bypass, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amemoyoi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amemoyoi">@Amemoyoi</a> and bot.</li> </ul> <p>We've also merged a couple PRs that fix upstream security bugs in other projects like quic-go and CertMagic. Thank you to <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> for maintaining quic-go so diligently!</p> <h2>What's Changed</h2> <ul> <li>caddyhttp: Sync placeholder expansion in <code>vars</code> and <code>vars_regexp</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vnxme/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vnxme">@vnxme</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4083267222" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7573" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7573/hovercard" href="https://github.com/caddyserver/caddy/pull/7573">#7573</a></li> <li>caddytls: Avoid ACME fallback for implicit Tailscale *.ts.net policies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4093334209" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7577" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7577/hovercard" href="https://github.com/caddyserver/caddy/pull/7577">#7577</a></li> <li>chore: Resolve recent CI failures by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4139045607" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7593" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7593/hovercard" href="https://github.com/caddyserver/caddy/pull/7593">#7593</a></li> <li>caddytls: Consolidate empty APs more smartly by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4068020186" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7567" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7567/hovercard" href="https://github.com/caddyserver/caddy/pull/7567">#7567</a></li> <li>rewrite: skip query rename when source key is absent by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4158552011" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7599" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7599/hovercard" href="https://github.com/caddyserver/caddy/pull/7599">#7599</a></li> <li>root: introduce down-propagating Helper.BlockState for other directives/plugins to use by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/henderkes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/henderkes">@henderkes</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4145032515" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7594" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7594/hovercard" href="https://github.com/caddyserver/caddy/pull/7594">#7594</a></li> <li>http: make zstd checksum configurable by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ottenhoff/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ottenhoff">@ottenhoff</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4112850408" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7586" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7586/hovercard" href="https://github.com/caddyserver/caddy/pull/7586">#7586</a></li> <li>notify: Always send "READY=1" even after an error by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4147528449" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7597" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7597/hovercard" href="https://github.com/caddyserver/caddy/pull/7597">#7597</a></li> <li>reverseproxy: Fix check for <code>header_up Host {upstream_hostport}</code> redundancy by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yubiuser/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yubiuser">@yubiuser</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4063216592" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7564" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7564/hovercard" href="https://github.com/caddyserver/caddy/pull/7564">#7564</a></li> <li>caddytls: Expand placeholders in dns_challenge override_domain tls parameter by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pberkel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pberkel">@pberkel</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4175473929" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7609" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7609/hovercard" href="https://github.com/caddyserver/caddy/pull/7609">#7609</a></li> <li>tls: add system and combined CA pool modules by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/HarshPatel5940/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/HarshPatel5940">@HarshPatel5940</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3761355285" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7406" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7406/hovercard" href="https://github.com/caddyserver/caddy/pull/7406">#7406</a></li> <li>vars: Don't expand placeholders in values by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vnxme/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vnxme">@vnxme</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4204150021" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7629" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7629/hovercard" href="https://github.com/caddyserver/caddy/pull/7629">#7629</a></li> <li>build(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp from 1.42.0 to 1.43.0 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4227227472" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7637" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7637/hovercard" href="https://github.com/caddyserver/caddy/pull/7637">#7637</a></li> <li>build(deps): bump the all-updates group across 1 directory with 11 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4241598706" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7641" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7641/hovercard" href="https://github.com/caddyserver/caddy/pull/7641">#7641</a></li> <li>reverseproxy: make stream copy buffer size configurable by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4203792551" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7627" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7627/hovercard" href="https://github.com/caddyserver/caddy/pull/7627">#7627</a></li> <li>vars: Add matcher placeholder handling tests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4241432437" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7640" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7640/hovercard" href="https://github.com/caddyserver/caddy/pull/7640">#7640</a></li> <li>build(deps): bump github.com/go-jose/go-jose/v4 from 4.1.3 to 4.1.4 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4198114558" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7621" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7621/hovercard" href="https://github.com/caddyserver/caddy/pull/7621">#7621</a></li> <li>logging: Add journald encoder wrapper by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4199954673" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7623" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7623/hovercard" href="https://github.com/caddyserver/caddy/pull/7623">#7623</a></li> <li>caddyfile: Improve import/global options UX for imports before global options by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4241992495" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7642" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7642/hovercard" href="https://github.com/caddyserver/caddy/pull/7642">#7642</a></li> <li>chore: replace <code>interface{}</code> with <code>any</code> for modernization by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tsinglua/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tsinglua">@tsinglua</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4081470621" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7571" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7571/hovercard" href="https://github.com/caddyserver/caddy/pull/7571">#7571</a></li> <li>chore: bump timberjack to v1.4.1 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DeRuina/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/DeRuina">@DeRuina</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4193863949" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7618" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7618/hovercard" href="https://github.com/caddyserver/caddy/pull/7618">#7618</a></li> <li>logging: Preserve ts for journald-wrapped JSON logs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4244791780" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7644" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7644/hovercard" href="https://github.com/caddyserver/caddy/pull/7644">#7644</a></li> <li>fileserver: show symlink targets verbatim (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3935814443" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7476" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7476/hovercard" href="https://github.com/caddyserver/caddy/issues/7476">#7476</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maxtruxa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maxtruxa">@maxtruxa</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4093575736" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7579" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7579/hovercard" href="https://github.com/caddyserver/caddy/pull/7579">#7579</a></li> <li>fix(caddyfile): {block} in snippet by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/prettysunflower/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/prettysunflower">@prettysunflower</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4049185172" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7558" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7558/hovercard" href="https://github.com/caddyserver/caddy/pull/7558">#7558</a></li> <li>caddyhttp: Document missing placeholders for escaped URI and prefixed query by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steffenbusch/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steffenbusch">@steffenbusch</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4284866539" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7659" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7659/hovercard" href="https://github.com/caddyserver/caddy/pull/7659">#7659</a></li> <li>chore: add <code>AGENTS.md</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4270518422" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7652" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7652/hovercard" href="https://github.com/caddyserver/caddy/pull/7652">#7652</a></li> <li>build(deps): bump github.com/jackc/pgx/v5 from 5.8.0 to 5.9.0 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4279120171" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7655" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7655/hovercard" href="https://github.com/caddyserver/caddy/pull/7655">#7655</a></li> <li>admin: Redact sensitive request headers in API logs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4093389527" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7578" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7578/hovercard" href="https://github.com/caddyserver/caddy/pull/7578">#7578</a></li> <li>reverseproxy: add <code>lb_retry_match</code> condition on response status by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/seroperson/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/seroperson">@seroperson</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4074648289" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7569" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7569/hovercard" href="https://github.com/caddyserver/caddy/pull/7569">#7569</a></li> <li>caddyhttp: prefer port 443 in auto-HTTPS and add tests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4310889843" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7666" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7666/hovercard" href="https://github.com/caddyserver/caddy/pull/7666">#7666</a></li> <li>fix: Propagate ECH keys to the QUIC listener by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4313983805" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7670" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7670/hovercard" href="https://github.com/caddyserver/caddy/pull/7670">#7670</a></li> <li>chore: Use atomics where appropriate by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4251306583" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7648" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7648/hovercard" href="https://github.com/caddyserver/caddy/pull/7648">#7648</a></li> <li>metrics: Implement pushing via OLTP by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4308288176" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7664" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7664/hovercard" href="https://github.com/caddyserver/caddy/pull/7664">#7664</a></li> <li>logging: Add regression coverage for rotated file mode by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4197569980" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7620" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7620/hovercard" href="https://github.com/caddyserver/caddy/pull/7620">#7620</a></li> <li>httpcaddyfile: Inherit global ACME issuer settings in tls shortcuts by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4191837459" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7617" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7617/hovercard" href="https://github.com/caddyserver/caddy/pull/7617">#7617</a></li> <li>build(deps): bump github.com/jackc/pgx/v5 from 5.9.0 to 5.9.2 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4312565024" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7668" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7668/hovercard" href="https://github.com/caddyserver/caddy/pull/7668">#7668</a></li> <li>admin: require path segment boundary in remote access control by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amemoyoi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amemoyoi">@Amemoyoi</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4327813304" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7673" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7673/hovercard" href="https://github.com/caddyserver/caddy/pull/7673">#7673</a></li> <li>reverseproxy: Add ability to clear dynamic upstreams cache during retries by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4300053529" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7662" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7662/hovercard" href="https://github.com/caddyserver/caddy/pull/7662">#7662</a></li> <li>listeners: clean up stale Unix socket files on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mfrischknecht/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mfrischknecht">@mfrischknecht</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4345294945" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7676" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7676/hovercard" href="https://github.com/caddyserver/caddy/pull/7676">#7676</a></li> <li>admin: reject non-canonical config array indices by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amemoyoi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amemoyoi">@Amemoyoi</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4126883698" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7592" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7592/hovercard" href="https://github.com/caddyserver/caddy/pull/7592">#7592</a></li> <li>caddytls: Expand ACME credentials by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tribut/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tribut">@tribut</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4038032058" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7554" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7554/hovercard" href="https://github.com/caddyserver/caddy/pull/7554">#7554</a></li> <li>caddyauth: set user placeholders before auth rejection by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cyphercodes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cyphercodes">@cyphercodes</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4370739552" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7685" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7685/hovercard" href="https://github.com/caddyserver/caddy/pull/7685">#7685</a></li> <li>caddyauth: revert user placeholders on auth rejection by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4371105620" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7688" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7688/hovercard" href="https://github.com/caddyserver/caddy/pull/7688">#7688</a></li> <li>chore: Fix golangci-lint 2.12.1 findings by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4373811032" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7690" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7690/hovercard" href="https://github.com/caddyserver/caddy/pull/7690">#7690</a></li> <li>httpcaddyfile: accept duration strings for log sampling interval by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tomholford/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tomholford">@tomholford</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4400891570" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7694" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7694/hovercard" href="https://github.com/caddyserver/caddy/pull/7694">#7694</a></li> <li>tls: Add alpn to managed HTTPS records by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4271931823" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7653" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7653/hovercard" href="https://github.com/caddyserver/caddy/pull/7653">#7653</a></li> <li>caddytls: avoid duplicate automation for wildcard-covered hosts by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Rijul-A/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Rijul-A">@Rijul-A</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4414106810" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7697" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7697/hovercard" href="https://github.com/caddyserver/caddy/pull/7697">#7697</a></li> <li>docs: add documentation for fileExists and fileStat template functions by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steffenbusch/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steffenbusch">@steffenbusch</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4415728825" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7700" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7700/hovercard" href="https://github.com/caddyserver/caddy/pull/7700">#7700</a></li> <li>rewrite: escape file matcher paths before rewriting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cyphercodes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cyphercodes">@cyphercodes</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4369342046" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7683" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7683/hovercard" href="https://github.com/caddyserver/caddy/pull/7683">#7683</a></li> <li>metrics: Add nil check for metricsHandler in AdminMetrics.serveHTTP by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Br1an67/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Br1an67">@Br1an67</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4037056585" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7553" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7553/hovercard" href="https://github.com/caddyserver/caddy/pull/7553">#7553</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steadytao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steadytao">@steadytao</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4093334209" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7577" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7577/hovercard" href="https://github.com/caddyserver/caddy/pull/7577">#7577</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/henderkes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/henderkes">@henderkes</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4145032515" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7594" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7594/hovercard" href="https://github.com/caddyserver/caddy/pull/7594">#7594</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yubiuser/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yubiuser">@yubiuser</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4063216592" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7564" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7564/hovercard" href="https://github.com/caddyserver/caddy/pull/7564">#7564</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pberkel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pberkel">@pberkel</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4175473929" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7609" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7609/hovercard" href="https://github.com/caddyserver/caddy/pull/7609">#7609</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/HarshPatel5940/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/HarshPatel5940">@HarshPatel5940</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3761355285" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7406" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7406/hovercard" href="https://github.com/caddyserver/caddy/pull/7406">#7406</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tsinglua/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tsinglua">@tsinglua</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4081470621" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7571" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7571/hovercard" href="https://github.com/caddyserver/caddy/pull/7571">#7571</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maxtruxa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maxtruxa">@maxtruxa</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4093575736" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7579" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7579/hovercard" href="https://github.com/caddyserver/caddy/pull/7579">#7579</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/seroperson/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/seroperson">@seroperson</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4074648289" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7569" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7569/hovercard" href="https://github.com/caddyserver/caddy/pull/7569">#7569</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amemoyoi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amemoyoi">@Amemoyoi</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4327813304" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7673" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7673/hovercard" href="https://github.com/caddyserver/caddy/pull/7673">#7673</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mfrischknecht/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mfrischknecht">@mfrischknecht</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4345294945" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7676" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7676/hovercard" href="https://github.com/caddyserver/caddy/pull/7676">#7676</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tribut/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tribut">@tribut</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4038032058" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7554" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7554/hovercard" href="https://github.com/caddyserver/caddy/pull/7554">#7554</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cyphercodes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cyphercodes">@cyphercodes</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4370739552" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7685" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7685/hovercard" href="https://github.com/caddyserver/caddy/pull/7685">#7685</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tomholford/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tomholford">@tomholford</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4400891570" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7694" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7694/hovercard" href="https://github.com/caddyserver/caddy/pull/7694">#7694</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Rijul-A/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Rijul-A">@Rijul-A</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4414106810" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7697" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7697/hovercard" href="https://github.com/caddyserver/caddy/pull/7697">#7697</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Br1an67/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Br1an67">@Br1an67</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4037056585" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7553" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7553/hovercard" href="https://github.com/caddyserver/caddy/pull/7553">#7553</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.11.2...v2.11.3"><tt>v2.11.2...v2.11.3</tt></a></p> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.2 2026-03-06T02:43:43Z

v2.11.2

<p>Caddy 2.11.2 contains numerous bug fixes and enhancements! I know that's a lame summary but it's really all over the place.</p> <h2>Highlights</h2> <ul> <li>Reverse proxy got a lot of love with certain edge cases related to PROXY protocol, health check port, and closing body on retries. Dynamic upstreams are now tracked which enables passive health checking.</li> <li>Performance improvements for metrics.</li> <li>New <code>tls_resolvers</code> global option to control DNS resolvers for all sites when using the ACME DNS challenge.</li> <li>Log rolling now supports <code>zstd</code> compression; deprecated <code>roll_gzip</code>, which will be removed in the future. Use <code>roll_compression</code> instead.</li> <li>Refined logging and some error messages.</li> <li>Fixed a bug in rewrite handler that could cause some URIs to not be rewritten when URI path is an escaped form of target path. Thanks to <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MaherAzzouzi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MaherAzzouzi">@MaherAzzouzi</a> for the report.</li> </ul> <h2>Security fixes</h2> <p>This release fixes two CVEs.</p> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/NucleiAv/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/NucleiAv">@NucleiAv</a> reported a bug in the <code>forward_auth</code> directive that could permit identity injection and potential privilege escalation.</li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sammiee5311/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sammiee5311">@sammiee5311</a> reported that <code>vars_regexp</code> double-expanded placeholders, allowing some unusual configs to reveal secrets.</li> </ul> <p>In addition:</p> <ul> <li>Built on Go 1.26.1 (also released today) which patches several CVEs.</li> <li>Our documentation has been updated to note that file system case sensitivity may affect the behavior of the <code>hide</code> option of the <code>file_server</code> handler.</li> </ul> <p>Thank you to everyone who contributed, and for our ongoing sponsorships that make this development possible!</p> <h2>Changelog</h2> <ul> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/88616e86e6e656738426bb86b4a42dcc20a59f77/hovercard" href="https://github.com/caddyserver/caddy/commit/88616e86e6e656738426bb86b4a42dcc20a59f77"><tt>88616e8</tt></a> api: Add all in-flight requests /reverse_proxy/upstreams (Fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3457499994" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7277" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7277/hovercard" href="https://github.com/caddyserver/caddy/issues/7277">#7277</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3983455156" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7517" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7517/hovercard" href="https://github.com/caddyserver/caddy/pull/7517">#7517</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/d935a6956c16902623b8e8f6d1aafec4f6124f46/hovercard" href="https://github.com/caddyserver/caddy/commit/d935a6956c16902623b8e8f6d1aafec4f6124f46"><tt>d935a69</tt></a> autohttps: Ensure CertMagic config is recreated after autohttps runs (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3972914804" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7510" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7510/hovercard" href="https://github.com/caddyserver/caddy/pull/7510">#7510</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/5d20adc7a97f70d6fe722099356cca2027908576/hovercard" href="https://github.com/caddyserver/caddy/commit/5d20adc7a97f70d6fe722099356cca2027908576"><tt>5d20adc</tt></a> build(deps): bump github.com/smallstep/certificates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4008606797" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7535" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7535/hovercard" href="https://github.com/caddyserver/caddy/pull/7535">#7535</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/9371ee67c64d2d2c81f9530be0d9749ecdbd2b00/hovercard" href="https://github.com/caddyserver/caddy/commit/9371ee67c64d2d2c81f9530be0d9749ecdbd2b00"><tt>9371ee6</tt></a> build(deps): bump the actions-deps group across 1 directory with 12 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4008608989" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7536" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7536/hovercard" href="https://github.com/caddyserver/caddy/pull/7536">#7536</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/9798f6964d58eb5703d1498804962faca2dae4ea/hovercard" href="https://github.com/caddyserver/caddy/commit/9798f6964d58eb5703d1498804962faca2dae4ea"><tt>9798f69</tt></a> caddyhttp: Avoid nil pointer dereference in proxyWrapper (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3985643826" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7521" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7521/hovercard" href="https://github.com/caddyserver/caddy/pull/7521">#7521</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/dc360828598440beb1dfdb21c0ba14e09bcd565b/hovercard" href="https://github.com/caddyserver/caddy/commit/dc360828598440beb1dfdb21c0ba14e09bcd565b"><tt>dc36082</tt></a> caddyhttp: Collect metrics once per route instead of per handler (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3950144469" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7492" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7492/hovercard" href="https://github.com/caddyserver/caddy/pull/7492">#7492</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/174fa2ddb93f830370b05058d1ea51ad1512597d/hovercard" href="https://github.com/caddyserver/caddy/commit/174fa2ddb93f830370b05058d1ea51ad1512597d"><tt>174fa2d</tt></a> caddyhttp: Evaluate tls.client placeholders more accurately (fix <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4000988772" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7530" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7530/hovercard" href="https://github.com/caddyserver/caddy/issues/7530">#7530</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4003192825" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7534" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7534/hovercard" href="https://github.com/caddyserver/caddy/pull/7534">#7534</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/eac02ee98f9f61d79ae774aa49aa102ddf2076ba/hovercard" href="https://github.com/caddyserver/caddy/commit/eac02ee98f9f61d79ae774aa49aa102ddf2076ba"><tt>eac02ee</tt></a> caddyhttp: Limit empty Host check to HTTP/1.1</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/f283062d37c50627d53ca682ebae2ce219b35515/hovercard" href="https://github.com/caddyserver/caddy/commit/f283062d37c50627d53ca682ebae2ce219b35515"><tt>f283062</tt></a> cmd: Custom binary names through <code>CustomBinaryName</code> and <code>CustomLongDescription</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3973919923" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7513" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7513/hovercard" href="https://github.com/caddyserver/caddy/pull/7513">#7513</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/cd9e1660aa454e6536ad740c9d1aaecf3c3552ed/hovercard" href="https://github.com/caddyserver/caddy/commit/cd9e1660aa454e6536ad740c9d1aaecf3c3552ed"><tt>cd9e166</tt></a> cmd: Pass configFile, not configFlag, for reload command (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4002493615" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7532" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7532/hovercard" href="https://github.com/caddyserver/caddy/pull/7532">#7532</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/7b34e3107eb6071fea3a3f94a5c913c32a55afd0/hovercard" href="https://github.com/caddyserver/caddy/commit/7b34e3107eb6071fea3a3f94a5c913c32a55afd0"><tt>7b34e31</tt></a> core: Check whether <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/id/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/id">@id</a> is unique (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3044985044" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7002" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7002/hovercard" href="https://github.com/caddyserver/caddy/pull/7002">#7002</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/566e710991a6b752933178e2c6126181efc563aa/hovercard" href="https://github.com/caddyserver/caddy/commit/566e710991a6b752933178e2c6126181efc563aa"><tt>566e710</tt></a> fileserver: document hide case-sensitivity (F-CADDY-FILESERVER-HIDE-CASE-001) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4024104343" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7548" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7548/hovercard" href="https://github.com/caddyserver/caddy/pull/7548">#7548</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2dd3852416e2b04bc90b98643673ec9e131c32e6/hovercard" href="https://github.com/caddyserver/caddy/commit/2dd3852416e2b04bc90b98643673ec9e131c32e6"><tt>2dd3852</tt></a> fix(caddyfile): Prevent parser to panic when no token were added by empty {block} (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4014854462" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7543" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7543/hovercard" href="https://github.com/caddyserver/caddy/pull/7543">#7543</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2dbcdefbbee68e7b4a31ac66361a0f4e3bcd2eea/hovercard" href="https://github.com/caddyserver/caddy/commit/2dbcdefbbee68e7b4a31ac66361a0f4e3bcd2eea"><tt>2dbcdef</tt></a> forward_auth: <code>copy_headers</code> does not strip client-supplied identity headers (Fixes <a title="GHSA-7r4p-vjf4-gxv4" data-hovercard-type="advisory" data-hovercard-url="/advisories/GHSA-7r4p-vjf4-gxv4/hovercard" href="https://github.com/advisories/GHSA-7r4p-vjf4-gxv4">GHSA-7r4p-vjf4-gxv4</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4019877496" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7545" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7545/hovercard" href="https://github.com/caddyserver/caddy/pull/7545">#7545</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/ce203aa9e1ff2686777019f45c36c283debb7986/hovercard" href="https://github.com/caddyserver/caddy/commit/ce203aa9e1ff2686777019f45c36c283debb7986"><tt>ce203aa</tt></a> go.mod: Upgrade x/net</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/76b198f586e4e2482a0278ba52c176cff70af8cf/hovercard" href="https://github.com/caddyserver/caddy/commit/76b198f586e4e2482a0278ba52c176cff70af8cf"><tt>76b198f</tt></a> http: Sort auto-HTTPS redirect routes by host specificity (fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3706787467" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7390" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7390/hovercard" href="https://github.com/caddyserver/caddy/issues/7390">#7390</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3970228505" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7502" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7502/hovercard" href="https://github.com/caddyserver/caddy/pull/7502">#7502</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/7ffb640a4da666203ab43396eaeb2b6b84bb983f/hovercard" href="https://github.com/caddyserver/caddy/commit/7ffb640a4da666203ab43396eaeb2b6b84bb983f"><tt>7ffb640</tt></a> httpcaddyfile: Fix missing TLS connection policies when auto_https is default (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3570141640" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7325" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7325/hovercard" href="https://github.com/caddyserver/caddy/issues/7325">#7325</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3972238149" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7507" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7507/hovercard" href="https://github.com/caddyserver/caddy/pull/7507">#7507</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/45cf61b1276b2cf79ce0147df8fa48c96e8e5356/hovercard" href="https://github.com/caddyserver/caddy/commit/45cf61b1276b2cf79ce0147df8fa48c96e8e5356"><tt>45cf61b</tt></a> logging: Ensure <code>slog</code> error level logs don't print stack traces (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3973377439" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7512" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7512/hovercard" href="https://github.com/caddyserver/caddy/pull/7512">#7512</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/987375297862d9cd0a3fa33cfb199c25e504ad1b/hovercard" href="https://github.com/caddyserver/caddy/commit/987375297862d9cd0a3fa33cfb199c25e504ad1b"><tt>9873752</tt></a> logging: Support <code>zstd</code> roll compression (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3976781554" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7515" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7515/hovercard" href="https://github.com/caddyserver/caddy/pull/7515">#7515</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/294dfff4435c31b7c8d20d26067365b0a0016610/hovercard" href="https://github.com/caddyserver/caddy/commit/294dfff4435c31b7c8d20d26067365b0a0016610"><tt>294dfff</tt></a> logging: add DirMode options and propagate FileMode to rotations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3580879164" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7335" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7335/hovercard" href="https://github.com/caddyserver/caddy/pull/7335">#7335</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/a6acb3902cb6453153db0738bd8210e093449ce1/hovercard" href="https://github.com/caddyserver/caddy/commit/a6acb3902cb6453153db0738bd8210e093449ce1"><tt>a6acb39</tt></a> proxyproto: Generated test coverage (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4010313542" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7540" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7540/hovercard" href="https://github.com/caddyserver/caddy/pull/7540">#7540</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/11b56c6cfc25f8c814fa66cb02060548d12c4040/hovercard" href="https://github.com/caddyserver/caddy/commit/11b56c6cfc25f8c814fa66cb02060548d12c4040"><tt>11b56c6</tt></a> reverseproxy: Fix <code>health_port</code> being ignored in health checks (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4002886554" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7533" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7533/hovercard" href="https://github.com/caddyserver/caddy/pull/7533">#7533</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/db2986028fc573ae3add0a9a3381268dd7599267/hovercard" href="https://github.com/caddyserver/caddy/commit/db2986028fc573ae3add0a9a3381268dd7599267"><tt>db29860</tt></a> reverseproxy: Track dynamic upstreams, enable passive healthchecking (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4010121409" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7539" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7539/hovercard" href="https://github.com/caddyserver/caddy/pull/7539">#7539</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/d7b21c610494e30e147de77a4783c18e5f206d99/hovercard" href="https://github.com/caddyserver/caddy/commit/d7b21c610494e30e147de77a4783c18e5f206d99"><tt>d7b21c6</tt></a> reverseproxy: fix tls dialing w/ proxy protocol (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3972260901" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7508" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7508/hovercard" href="https://github.com/caddyserver/caddy/pull/7508">#7508</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/a5e7c6e232573b8a8df2946914a84a36070d4b9f/hovercard" href="https://github.com/caddyserver/caddy/commit/a5e7c6e232573b8a8df2946914a84a36070d4b9f"><tt>a5e7c6e</tt></a> reverseproxy: prevent body close on dial-error retries (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4023891123" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7547" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7547/hovercard" href="https://github.com/caddyserver/caddy/pull/7547">#7547</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2ab043b8903db4574b2fc7a625619018a072f082/hovercard" href="https://github.com/caddyserver/caddy/commit/2ab043b8903db4574b2fc7a625619018a072f082"><tt>2ab043b</tt></a> reverseproxy: query escape request urls when proxy protocol is enabled (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4009075192" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7537" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7537/hovercard" href="https://github.com/caddyserver/caddy/pull/7537">#7537</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/fbfb8fc517728f85890cd46559c01bec9495bf17/hovercard" href="https://github.com/caddyserver/caddy/commit/fbfb8fc517728f85890cd46559c01bec9495bf17"><tt>fbfb8fc</tt></a> rewrite: Force recomputing path when escaped path matches rewrite target</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/f145bce553a306ca6890fea782ca4e3b06787bbb/hovercard" href="https://github.com/caddyserver/caddy/commit/f145bce553a306ca6890fea782ca4e3b06787bbb"><tt>f145bce</tt></a> tls: Add <code>tls_resolvers</code> global option for DNS challenge configuration (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3500058508" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7297" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7297/hovercard" href="https://github.com/caddyserver/caddy/pull/7297">#7297</a>)</li> </ul> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.1 2026-02-23T20:31:38Z

v2.11.1

<p>Our community is pleased to announce Caddy 2.11! Of note are new features, numerous bug fixes including several security patches, and various QoL ("quality-of-life") enhancements.</p> <p>There are no code changes from v2.11.0 other than to a CI job. Due to a recent external change that broke our release process, the first release of 2.11 is v2.11.1.</p> <h2>Special Sponsor Shoutout</h2> <p>Extra big thanks to our major sponsors:</p> <ul> <li><a href="https://zerossl.com" rel="nofollow">ZeroSSL</a></li> <li><a href="https://stripe.com" rel="nofollow">Stripe</a></li> <li><a href="https://railway.com/?utm_medium=sponsor&utm_source=oss&utm_campaign=caddy" rel="nofollow">Railway</a></li> </ul> <p>They, along with dozens of smaller sponsors, make this project and new releases possible, together with our maintainer team. Thank you all!</p> <h2>Notable changes</h2> <ul> <li>Encrypted ClientHello (ECH) keys are rotated automatically.</li> <li>Time-rolling options for logs.</li> <li><code>SIGUSR1</code> can now reload configuration if it was initially loaded from a file on the command line and did not get changed via the API.</li> <li>Reverse proxy now automatically rewrites the Host header to the address of the upstream when the upstream is HTTPS (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3877732048" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7454" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7454/hovercard" href="https://github.com/caddyserver/caddy/pull/7454">#7454</a>)</li> <li><code>log_append</code> can now log request and response bodies, useful for debugging.</li> <li>Our project now implements and requires Assistance Disclosures (for AI/LLMs) on issues, PRs, comments, replies, reviews, etc.</li> <li>Many, many other minor improvements and bug fixes.</li> </ul> <p>Thank you to everyone who was involved this release!</p> <h3><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> Security patches</h3> <ul> <li>fastcgi: <code>CVE-2026-27590</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AbdrrahimDahmani/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AbdrrahimDahmani">@AbdrrahimDahmani</a> - Unicode case-folding length expansion causes incorrect split_path index (SCRIPT_NAME/PATH_INFO confusion) in FastCGI transport.</li> <li>admin: <code>CVE-2026-27589</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/1seal/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/1seal">@1seal</a> - Cross-origin requests attempted with <code>no-cors</code> mode could cause some API requests to succeed; such requests are now blocked. (In order for this to be practically exploitable, a web browser executing a malicious web page must be running locally to a production Caddy process.)</li> <li>caddyhttp: <code>CVE-2026-27588</code> by Asim Viladi Oglu Manizada - The Host matcher becomes case-sensitive for large host lists (>100), enabling host-based route/auth bypass.</li> <li>caddyhttp: <code>CVE-2026-27587</code> by Asim Viladi Oglu Manizada - The Path matcher skips case normalization for escape sequences, enabling path-based route/auth bypass.</li> <li>caddytls: <code>CVE-2026-27586</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/moscowchill/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/moscowchill">@moscowchill</a> - TLS client authentication silently fails open when CA certificate file is missing or malformed.</li> <li>caddyhttp: <code>CVE-2026-27585</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/parrot409/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/parrot409">@parrot409</a> - Improper sanitization of glob characters in file matcher may lead to bypassing security protections.</li> </ul> <p>🚨 <strong>Notice for Caddy plugin maintainers: Dependabot will probably alert you to the security fixes in Caddy and urge you to upgrade it in your <code>go.mod</code> file. Please ONLY upgrade the Caddy dependency if there's a change to an exported API your plugin uses.</strong> (Then, <a href="https://words.filippo.io/dependabot/" rel="nofollow">turn Dependabot off</a>.)</p> <h2>What's Changed</h2> <ul> <li>caddyhttp: add replacer placeholders for escaped values by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Qusic/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Qusic">@Qusic</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3319556931" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7181" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7181/hovercard" href="https://github.com/caddyserver/caddy/pull/7181">#7181</a></li> <li>AI assistance disclosure by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3352348095" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7212" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7212/hovercard" href="https://github.com/caddyserver/caddy/pull/7212">#7212</a></li> <li>caddyfile: Prevent trailing space on line before env variable - Fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2901665864" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/6881" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/6881/hovercard" href="https://github.com/caddyserver/caddy/issues/6881">#6881</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arpansaha13/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arpansaha13">@arpansaha13</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3356946154" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7215" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7215/hovercard" href="https://github.com/caddyserver/caddy/pull/7215">#7215</a></li> <li>add: encode header Content-Type graphql-response by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aro-lew/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aro-lew">@aro-lew</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3355044099" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7214" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7214/hovercard" href="https://github.com/caddyserver/caddy/pull/7214">#7214</a></li> <li>caddyhttp: Removing redundant middleware next copy by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maxcelant/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maxcelant">@maxcelant</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3357122078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7217" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7217/hovercard" href="https://github.com/caddyserver/caddy/pull/7217">#7217</a></li> <li>build(deps): bump the all-updates group with 17 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376909200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7236" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7236/hovercard" href="https://github.com/caddyserver/caddy/pull/7236">#7236</a></li> <li>build(deps): bump the actions-deps group with 5 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3377041464" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7237" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7237/hovercard" href="https://github.com/caddyserver/caddy/pull/7237">#7237</a></li> <li>encode: fix response corruption when handle_errors is used by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376843581" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7235" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7235/hovercard" href="https://github.com/caddyserver/caddy/pull/7235">#7235</a></li> <li>Fix PKI creation when auto_https is disabled (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3351816095" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7211" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7211/hovercard" href="https://github.com/caddyserver/caddy/issues/7211">#7211</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3382460505" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7238" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7238/hovercard" href="https://github.com/caddyserver/caddy/pull/7238">#7238</a></li> <li>logging: Buffer the logs before config is loaded by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3391111000" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7245" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7245/hovercard" href="https://github.com/caddyserver/caddy/pull/7245">#7245</a></li> <li>fileserver: set Content-Length for precompressed files by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3404379530" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7251" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7251/hovercard" href="https://github.com/caddyserver/caddy/pull/7251">#7251</a></li> <li>refactor: use WaitGroup.Go to simplify code by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mickychang9/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mickychang9">@mickychang9</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3405726900" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7253" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7253/hovercard" href="https://github.com/caddyserver/caddy/pull/7253">#7253</a></li> <li>caddyfile: Allow <code>block</code> to do nothing if nothing passed to <code>import</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/BeeJay28/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/BeeJay28">@BeeJay28</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3348646787" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7206" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7206/hovercard" href="https://github.com/caddyserver/caddy/pull/7206">#7206</a></li> <li>logging: Adjustments to BufferedLog to keep logs in the correct order by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3414522715" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7257" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7257/hovercard" href="https://github.com/caddyserver/caddy/pull/7257">#7257</a></li> <li>caddyhttp: Prevent commas in header values from being split in CLI commands by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gilbsgilbs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/gilbsgilbs">@gilbsgilbs</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3436904291" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7268" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7268/hovercard" href="https://github.com/caddyserver/caddy/pull/7268">#7268</a></li> <li>update quic-go to v0.54.1 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3454114374" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7273" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7273/hovercard" href="https://github.com/caddyserver/caddy/pull/7273">#7273</a></li> <li>chore: ugh, lint fix... by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3455768930" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7275" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7275/hovercard" href="https://github.com/caddyserver/caddy/pull/7275">#7275</a></li> <li>caddypki: check intermediate lifetime to actual root cert lifetime by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/u5surf/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/u5surf">@u5surf</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3453697621" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7272" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7272/hovercard" href="https://github.com/caddyserver/caddy/pull/7272">#7272</a></li> <li>refactor: omit unnecessary reassignment by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/asttool/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/asttool">@asttool</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3456291972" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7276" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7276/hovercard" href="https://github.com/caddyserver/caddy/pull/7276">#7276</a></li> <li>core: use reflect.TypeFor to check for encoding/json.RawMessage by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3455429782" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7274" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7274/hovercard" href="https://github.com/caddyserver/caddy/pull/7274">#7274</a></li> <li>core: Reloading with <code>SIGUSR1</code> if config never changed via admin by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3414660284" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7258" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7258/hovercard" href="https://github.com/caddyserver/caddy/pull/7258">#7258</a></li> <li>build(deps): bump the actions-deps group with 8 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3475442171" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7284" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7284/hovercard" href="https://github.com/caddyserver/caddy/pull/7284">#7284</a></li> <li>httpcaddyfile: Add missing DNS challenge check for <code>acme_dns</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rightaditya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rightaditya">@rightaditya</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3438764250" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7270" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7270/hovercard" href="https://github.com/caddyserver/caddy/pull/7270">#7270</a></li> <li>httpcaddyfile: Map default_bind to BindHost in globalACMEDefaults by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Monviech/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Monviech">@Monviech</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3460157233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7278" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7278/hovercard" href="https://github.com/caddyserver/caddy/pull/7278">#7278</a></li> <li>Argon2id Support for Basic Auth by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/GreyXor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/GreyXor">@GreyXor</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3328083126" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7186" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7186/hovercard" href="https://github.com/caddyserver/caddy/pull/7186">#7186</a></li> <li>update quic-go to v0.55.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3483072006" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7288" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7288/hovercard" href="https://github.com/caddyserver/caddy/pull/7288">#7288</a></li> <li>reverse_proxy: use http1 for outbound tls requests with placeholder t… by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3497461950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7296" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7296/hovercard" href="https://github.com/caddyserver/caddy/pull/7296">#7296</a></li> <li>caddyhttp: Add server options <code>keepalive_idle</code> and <code>keepalive_count</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/joshuamcbeth/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/joshuamcbeth">@joshuamcbeth</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3500286538" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7298" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7298/hovercard" href="https://github.com/caddyserver/caddy/pull/7298">#7298</a></li> <li>chore: fix some comments by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wyrapeseed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wyrapeseed">@wyrapeseed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3516211711" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7303" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7303/hovercard" href="https://github.com/caddyserver/caddy/pull/7303">#7303</a></li> <li>logging: Switch from <code>lumberjack</code> to <code>timberjack</code>, add time-rolling options by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aeris/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aeris">@aeris</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390544978" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7244" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7244/hovercard" href="https://github.com/caddyserver/caddy/pull/7244">#7244</a></li> <li>reverseproxy: Use http1.1 upgrade for websocket for extended connect of http2 and http3. by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tonyb486/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tonyb486">@tonyb486</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3518944383" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7305" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7305/hovercard" href="https://github.com/caddyserver/caddy/pull/7305">#7305</a></li> <li>caddyhttp: Add <code>trusted_proxies_unix</code> for trusting unix socket <code>X-Forwarded-*</code> headers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cseufert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cseufert">@cseufert</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3428079513" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7265" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7265/hovercard" href="https://github.com/caddyserver/caddy/pull/7265">#7265</a></li> <li>caddyhttp: wrap accepted connection to suppress tls.ConnectionState by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3397136598" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7247" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7247/hovercard" href="https://github.com/caddyserver/caddy/pull/7247">#7247</a></li> <li>logging: fix multiple regexp filters on same field (fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3113646950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7049" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7049/hovercard" href="https://github.com/caddyserver/caddy/issues/7049">#7049</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/S2010/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/S2010">@S2010</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3138056195" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7061/hovercard" href="https://github.com/caddyserver/caddy/pull/7061">#7061</a></li> <li>intercept: use already buffered response if possible when intercepting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3075462541" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7028" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7028/hovercard" href="https://github.com/caddyserver/caddy/pull/7028">#7028</a></li> <li>listeners: Add support for named socket activation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390370717" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7243" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7243/hovercard" href="https://github.com/caddyserver/caddy/pull/7243">#7243</a></li> <li>reverseproxy: do not disable keepalive if proxy protocol is used by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3505060078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7300" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7300/hovercard" href="https://github.com/caddyserver/caddy/pull/7300">#7300</a></li> <li>metrics: resolve per-host inifinite cardinality by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3519612368" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7306" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7306/hovercard" href="https://github.com/caddyserver/caddy/pull/7306">#7306</a></li> <li>reverseproxy: use http.Protocols to handle h2c requests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3026926404" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/6990" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/6990/hovercard" href="https://github.com/caddyserver/caddy/pull/6990">#6990</a></li> <li>refactor: use reflect.TypeFor by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wyrapeseed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wyrapeseed">@wyrapeseed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3535572031" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7313" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7313/hovercard" href="https://github.com/caddyserver/caddy/pull/7313">#7313</a></li> <li>build(deps): bump the all-updates group across 1 directory with 2 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3519662028" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7307" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7307/hovercard" href="https://github.com/caddyserver/caddy/pull/7307">#7307</a></li> <li>build(deps): bump github.com/slackhq/nebula from 1.9.5 to 1.9.7 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3545628409" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7315" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7315/hovercard" href="https://github.com/caddyserver/caddy/pull/7315">#7315</a></li> <li>feat: switch to autoexport for OpenTelemetry span exporter by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PKeidel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PKeidel">@PKeidel</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3546352071" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7317" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7317/hovercard" href="https://github.com/caddyserver/caddy/pull/7317">#7317</a></li> <li>reverse_proxy: set default values for keepalive if only some of them are set by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3552085393" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7318" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7318/hovercard" href="https://github.com/caddyserver/caddy/pull/7318">#7318</a></li> <li>fix quote within quotes formatted incorrectly by fmt by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/keystroke3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/keystroke3">@keystroke3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3110119198" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7045" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7045/hovercard" href="https://github.com/caddyserver/caddy/pull/7045">#7045</a></li> <li>caddytls: correct documentation of <code>LeafFolderLoader</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3572618828" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7327" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7327/hovercard" href="https://github.com/caddyserver/caddy/pull/7327">#7327</a></li> <li>fix golangci-lint error G602 in caddyhttp by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cdenicola/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cdenicola">@cdenicola</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3580223289" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7334" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7334/hovercard" href="https://github.com/caddyserver/caddy/pull/7334">#7334</a></li> <li>feat: allow customizing the Server header by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3584161240" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7338" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7338/hovercard" href="https://github.com/caddyserver/caddy/pull/7338">#7338</a></li> <li>update quic-go to v0.56.0, enable qlog for HTTP/3 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3602864328" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7345" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7345/hovercard" href="https://github.com/caddyserver/caddy/pull/7345">#7345</a></li> <li>build(deps): bump the all-updates group with 4 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3578576180" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7333" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7333/hovercard" href="https://github.com/caddyserver/caddy/pull/7333">#7333</a></li> <li>feat: custom slog handlers for modules (log contextual data) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3603718840" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7346" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7346/hovercard" href="https://github.com/caddyserver/caddy/pull/7346">#7346</a></li> <li>ci: implement new release flow by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3593431653" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7341" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7341/hovercard" href="https://github.com/caddyserver/caddy/pull/7341">#7341</a></li> <li>reverse_proxy: use interfaces to modify the behaviors of the transports by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3631997798" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7353" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7353/hovercard" href="https://github.com/caddyserver/caddy/pull/7353">#7353</a></li> <li>build(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3645207045" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7355" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7355/hovercard" href="https://github.com/caddyserver/caddy/pull/7355">#7355</a></li> <li>update quic-go to v0.57.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651200267" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7359" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7359/hovercard" href="https://github.com/caddyserver/caddy/pull/7359">#7359</a></li> <li>refactor: replace HasSuffix+TrimSuffix with CutSuffix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ledigang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ledigang">@ledigang</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3646146453" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7357" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7357/hovercard" href="https://github.com/caddyserver/caddy/pull/7357">#7357</a></li> <li>Fix retries for requests with bodies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chebyrash/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chebyrash">@chebyrash</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651468983" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7360" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7360/hovercard" href="https://github.com/caddyserver/caddy/pull/7360">#7360</a></li> <li>build(deps): bump the all-updates group with 3 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3683672324" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7376" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7376/hovercard" href="https://github.com/caddyserver/caddy/pull/7376">#7376</a></li> <li>ci: escape backticks in changelogs embedded in JS by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690978212" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7382" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7382/hovercard" href="https://github.com/caddyserver/caddy/pull/7382">#7382</a></li> <li>build(deps): bump github.com/smallstep/certificates from 0.28.4 to 0.29.0 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690954355" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7381" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7381/hovercard" href="https://github.com/caddyserver/caddy/pull/7381">#7381</a></li> <li>caddypki: Add support for multiple intermediates in signing chain by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hslatman/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hslatman">@hslatman</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3131719539" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7057" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7057/hovercard" href="https://github.com/caddyserver/caddy/pull/7057">#7057</a></li> <li>caddyhttp: Fix logging on wildcard sites when SkipUnmappedHosts is true by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3676317090" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7372" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7372/hovercard" href="https://github.com/caddyserver/caddy/pull/7372">#7372</a></li> <li>multiplexing: Introduce packet conn wrappers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vnxme/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vnxme">@vnxme</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3318998668" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7180" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7180/hovercard" href="https://github.com/caddyserver/caddy/pull/7180">#7180</a></li> <li>docs: add maybe template function documentation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steffenbusch/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steffenbusch">@steffenbusch</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3701538368" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7388" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7388/hovercard" href="https://github.com/caddyserver/caddy/pull/7388">#7388</a></li> <li>caddyhttp: create a placeholder for and log ech status by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3572936111" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7328" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7328/hovercard" href="https://github.com/caddyserver/caddy/pull/7328">#7328</a></li> <li>caddytls: fix preferred chains options by appending values instead of replacing by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okrc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okrc">@okrc</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3700512200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7387" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7387/hovercard" href="https://github.com/caddyserver/caddy/pull/7387">#7387</a></li> <li>feat: mark Assert* functions as test helpers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690136790" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7380" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7380/hovercard" href="https://github.com/caddyserver/caddy/pull/7380">#7380</a></li> <li>caddytls: ECH key rotation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3645331970" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7356" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7356/hovercard" href="https://github.com/caddyserver/caddy/pull/7356">#7356</a></li> <li>caddytls: panic when using tls.ca_pool.source.http -> tls.ca by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Zenexer/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Zenexer">@Zenexer</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3713356207" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7393" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7393/hovercard" href="https://github.com/caddyserver/caddy/pull/7393">#7393</a></li> <li>notify: implement windows service status and error notifications by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FreyreCorona/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FreyreCorona">@FreyreCorona</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3704288732" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7389" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7389/hovercard" href="https://github.com/caddyserver/caddy/pull/7389">#7389</a></li> <li>caddyhttp: <code>{http.request.body_base64}</code> placeholder by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3666845958" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7367" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7367/hovercard" href="https://github.com/caddyserver/caddy/pull/7367">#7367</a></li> <li>chore: update tscert package to latest (aea342f6) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/willnorris/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/willnorris">@willnorris</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3735269077" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7397" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7397/hovercard" href="https://github.com/caddyserver/caddy/pull/7397">#7397</a></li> <li>logging: <code>log_append</code> Early option, Supports <code>{http.response.body}</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3667051035" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7368" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7368/hovercard" href="https://github.com/caddyserver/caddy/pull/7368">#7368</a></li> <li>update quic-go to v0.58.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3750926661" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7404" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7404/hovercard" href="https://github.com/caddyserver/caddy/pull/7404">#7404</a></li> <li>cmd: add --json flag to list-modules by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3763717950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7409" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7409/hovercard" href="https://github.com/caddyserver/caddy/pull/7409">#7409</a></li> <li>Add span attributes to tracing module by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/felix-hilden/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/felix-hilden">@felix-hilden</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3437177568" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7269" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7269/hovercard" href="https://github.com/caddyserver/caddy/pull/7269">#7269</a></li> <li>readme: fix fence by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3776593779" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7416" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7416/hovercard" href="https://github.com/caddyserver/caddy/pull/7416">#7416</a></li> <li>build(deps): bump the all-updates group across 1 directory with 12 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3782637501" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7421" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7421/hovercard" href="https://github.com/caddyserver/caddy/pull/7421">#7421</a></li> <li>reverseproxy: make error chan bigger when reverse proxying websocket by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3780663284" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7419" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7419/hovercard" href="https://github.com/caddyserver/caddy/pull/7419">#7419</a></li> <li>headers: Make ApplyTo nil-safe by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tpaulus/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tpaulus">@tpaulus</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3786472096" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7426" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7426/hovercard" href="https://github.com/caddyserver/caddy/pull/7426">#7426</a></li> <li>chore: Dumb <code>prealloc</code> lint fix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3799989329" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7430" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7430/hovercard" href="https://github.com/caddyserver/caddy/pull/7430">#7430</a></li> <li>update quic-go to v0.59.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3801116738" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7431" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7431/hovercard" href="https://github.com/caddyserver/caddy/pull/7431">#7431</a></li> <li>reverseproxy: Avoid returning error if remote address is not an IP by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3797995337" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7429" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7429/hovercard" href="https://github.com/caddyserver/caddy/pull/7429">#7429</a></li> <li>caddyfile: Fix indentation of multiline strings in fmt (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3785419425" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7425" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7425/hovercard" href="https://github.com/caddyserver/caddy/issues/7425">#7425</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3810378599" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7433" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7433/hovercard" href="https://github.com/caddyserver/caddy/pull/7433">#7433</a></li> <li>core: Embed <code>time/tzdata</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3809819757" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7432" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7432/hovercard" href="https://github.com/caddyserver/caddy/pull/7432">#7432</a></li> <li>caddyfile: add <code>observe_catchall_hosts</code> option by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3810997902" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7434" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7434/hovercard" href="https://github.com/caddyserver/caddy/pull/7434">#7434</a></li> <li>core: Show JSON error offsets where possible by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3811917066" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7437" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7437/hovercard" href="https://github.com/caddyserver/caddy/pull/7437">#7437</a></li> <li>autohttps: deterministic logic and strict bind checking on Linux by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3811103461" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7435" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7435/hovercard" href="https://github.com/caddyserver/caddy/pull/7435">#7435</a></li> <li>reverseproxy: Set <code>Host</code> to <code>{upstream_hostport}</code> automatically if TLS by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3877732048" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7454" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7454/hovercard" href="https://github.com/caddyserver/caddy/pull/7454">#7454</a></li> <li>reverseproxy: fix X-Forwarded-* headers for Unix socket requests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/XYenon/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/XYenon">@XYenon</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3916175211" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7463" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7463/hovercard" href="https://github.com/caddyserver/caddy/pull/7463">#7463</a></li> <li>chore: use math/rand/v2 instead of math/rand by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3774368314" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7413" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7413/hovercard" href="https://github.com/caddyserver/caddy/pull/7413">#7413</a></li> <li>chore: bump Go to v1.26 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3925279199" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7466" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7466/hovercard" href="https://github.com/caddyserver/caddy/pull/7466">#7466</a></li> <li>acmeserver: warn when policy rules unset by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/1seal/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/1seal">@1seal</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3927504393" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7469" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7469/hovercard" href="https://github.com/caddyserver/caddy/pull/7469">#7469</a></li> <li>caddytls: Return errors instead of nil in client auth provisioning by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/moscowchill/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/moscowchill">@moscowchill</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3919452121" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7464" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7464/hovercard" href="https://github.com/caddyserver/caddy/pull/7464">#7464</a></li> <li>fix(deps): update nebula v1.10.3 to resolve cve by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/omercnet/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/omercnet">@omercnet</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3932013739" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7471" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7471/hovercard" href="https://github.com/caddyserver/caddy/pull/7471">#7471</a></li> <li>caddyfile: Add renewal_window_ratio global option by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mehrdadbn9/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mehrdadbn9">@mehrdadbn9</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3933606401" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7473" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7473/hovercard" href="https://github.com/caddyserver/caddy/pull/7473">#7473</a></li> <li>httpcaddyfile: Override global <code>dns</code> with <code>acme_dns</code> (fix <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3493759267" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7294" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7294/hovercard" href="https://github.com/caddyserver/caddy/issues/7294">#7294</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rightaditya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rightaditya">@rightaditya</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3887233811" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7458" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7458/hovercard" href="https://github.com/caddyserver/caddy/pull/7458">#7458</a></li> <li>pki: add per-CA configurable <code>maintenance_interval</code> and <code>renewal_window_ratio</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amirhf1/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amirhf1">@Amirhf1</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3940618276" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7479" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7479/hovercard" href="https://github.com/caddyserver/caddy/pull/7479">#7479</a></li> <li>chore: Bump zerossl dependency to 0.1.5 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3948666725" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7489" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7489/hovercard" href="https://github.com/caddyserver/caddy/pull/7489">#7489</a></li> <li>chore: Remove obsolete comment in <code>ech.go</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3942836971" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7487" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7487/hovercard" href="https://github.com/caddyserver/caddy/pull/7487">#7487</a></li> <li>caddyhttp: Option to disable 0-RTT by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3942666997" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7485" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7485/hovercard" href="https://github.com/caddyserver/caddy/pull/7485">#7485</a></li> <li>dep: upgrade cel-go by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3939984779" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7478" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7478/hovercard" href="https://github.com/caddyserver/caddy/pull/7478">#7478</a></li> <li>build(deps): bump the all-updates group across 1 directory with 12 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3949046161" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7490" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7490/hovercard" href="https://github.com/caddyserver/caddy/pull/7490">#7490</a></li> <li>refactor: use strings.Builder to improve performance by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zjumathcode/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zjumathcode">@zjumathcode</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3661739923" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7364" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7364/hovercard" href="https://github.com/caddyserver/caddy/pull/7364">#7364</a></li> <li>chore: fix some comments to improve readability by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wangjingcun/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wangjingcun">@wangjingcun</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3721823623" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7395" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7395/hovercard" href="https://github.com/caddyserver/caddy/pull/7395">#7395</a></li> <li>caddytls: Enable debug logging for DNSManager by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3949324371" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7491" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7491/hovercard" href="https://github.com/caddyserver/caddy/pull/7491">#7491</a></li> <li>caddytest: make TestReverseProxyHealthCheck deterministic with poll instead of sleep by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amirhf1/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amirhf1">@Amirhf1</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3934251020" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7474" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7474/hovercard" href="https://github.com/caddyserver/caddy/pull/7474">#7474</a></li> <li>admin: Fix tests locally, properly isolate storage by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3942834187" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7486" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7486/hovercard" href="https://github.com/caddyserver/caddy/pull/7486">#7486</a></li> <li>chore: Add nolints to work around haywire linters by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3955121162" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7493" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7493/hovercard" href="https://github.com/caddyserver/caddy/pull/7493">#7493</a></li> <li>build(deps): bump filippo.io/edwards25519 from 1.1.0 to 1.1.1 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3964320065" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7497" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7497/hovercard" href="https://github.com/caddyserver/caddy/pull/7497">#7497</a></li> <li>chore: Disable windows/arm build target (Go 1.26 disabled) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3970667231" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7503" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7503/hovercard" href="https://github.com/caddyserver/caddy/pull/7503">#7503</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Qusic/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Qusic">@Qusic</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3319556931" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7181" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7181/hovercard" href="https://github.com/caddyserver/caddy/pull/7181">#7181</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arpansaha13/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arpansaha13">@arpansaha13</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3356946154" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7215" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7215/hovercard" href="https://github.com/caddyserver/caddy/pull/7215">#7215</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aro-lew/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aro-lew">@aro-lew</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3355044099" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7214" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7214/hovercard" href="https://github.com/caddyserver/caddy/pull/7214">#7214</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maxcelant/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maxcelant">@maxcelant</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3357122078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7217" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7217/hovercard" href="https://github.com/caddyserver/caddy/pull/7217">#7217</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376843581" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7235" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7235/hovercard" href="https://github.com/caddyserver/caddy/pull/7235">#7235</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mickychang9/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mickychang9">@mickychang9</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3405726900" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7253" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7253/hovercard" href="https://github.com/caddyserver/caddy/pull/7253">#7253</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/asttool/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/asttool">@asttool</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3456291972" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7276" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7276/hovercard" href="https://github.com/caddyserver/caddy/pull/7276">#7276</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rightaditya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rightaditya">@rightaditya</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3438764250" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7270" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7270/hovercard" href="https://github.com/caddyserver/caddy/pull/7270">#7270</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Monviech/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Monviech">@Monviech</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3460157233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7278" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7278/hovercard" href="https://github.com/caddyserver/caddy/pull/7278">#7278</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wyrapeseed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wyrapeseed">@wyrapeseed</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3516211711" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7303" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7303/hovercard" href="https://github.com/caddyserver/caddy/pull/7303">#7303</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aeris/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aeris">@aeris</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390544978" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7244" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7244/hovercard" href="https://github.com/caddyserver/caddy/pull/7244">#7244</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tonyb486/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tonyb486">@tonyb486</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3518944383" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7305" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7305/hovercard" href="https://github.com/caddyserver/caddy/pull/7305">#7305</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cseufert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cseufert">@cseufert</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3428079513" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7265" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7265/hovercard" href="https://github.com/caddyserver/caddy/pull/7265">#7265</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/S2010/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/S2010">@S2010</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3138056195" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7061/hovercard" href="https://github.com/caddyserver/caddy/pull/7061">#7061</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PKeidel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PKeidel">@PKeidel</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3546352071" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7317" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7317/hovercard" href="https://github.com/caddyserver/caddy/pull/7317">#7317</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cdenicola/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cdenicola">@cdenicola</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3580223289" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7334" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7334/hovercard" href="https://github.com/caddyserver/caddy/pull/7334">#7334</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ledigang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ledigang">@ledigang</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3646146453" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7357" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7357/hovercard" href="https://github.com/caddyserver/caddy/pull/7357">#7357</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chebyrash/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chebyrash">@chebyrash</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651468983" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7360" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7360/hovercard" href="https://github.com/caddyserver/caddy/pull/7360">#7360</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okrc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okrc">@okrc</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3700512200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7387" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7387/hovercard" href="https://github.com/caddyserver/caddy/pull/7387">#7387</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Zenexer/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Zenexer">@Zenexer</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3713356207" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7393" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7393/hovercard" href="https://github.com/caddyserver/caddy/pull/7393">#7393</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FreyreCorona/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FreyreCorona">@FreyreCorona</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3704288732" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7389" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7389/hovercard" href="https://github.com/caddyserver/caddy/pull/7389">#7389</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3763717950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7409" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7409/hovercard" href="https://github.com/caddyserver/caddy/pull/7409">#7409</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/felix-hilden/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/felix-hilden">@felix-hilden</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3437177568" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7269" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7269/hovercard" href="https://github.com/caddyserver/caddy/pull/7269">#7269</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tpaulus/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tpaulus">@tpaulus</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3786472096" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7426" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7426/hovercard" href="https://github.com/caddyserver/caddy/pull/7426">#7426</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/1seal/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/1seal">@1seal</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3927504393" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7469" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7469/hovercard" href="https://github.com/caddyserver/caddy/pull/7469">#7469</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/moscowchill/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/moscowchill">@moscowchill</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3919452121" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7464" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7464/hovercard" href="https://github.com/caddyserver/caddy/pull/7464">#7464</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/omercnet/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/omercnet">@omercnet</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3932013739" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7471" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7471/hovercard" href="https://github.com/caddyserver/caddy/pull/7471">#7471</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mehrdadbn9/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mehrdadbn9">@mehrdadbn9</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3933606401" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7473" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7473/hovercard" href="https://github.com/caddyserver/caddy/pull/7473">#7473</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Amirhf1/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Amirhf1">@Amirhf1</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3940618276" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7479" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7479/hovercard" href="https://github.com/caddyserver/caddy/pull/7479">#7479</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zjumathcode/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zjumathcode">@zjumathcode</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3661739923" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7364" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7364/hovercard" href="https://github.com/caddyserver/caddy/pull/7364">#7364</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wangjingcun/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wangjingcun">@wangjingcun</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3721823623" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7395" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7395/hovercard" href="https://github.com/caddyserver/caddy/pull/7395">#7395</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.10.2...v2.11.1"><tt>v2.10.2...v2.11.1</tt></a></p> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.0 2026-02-20T21:10:16Z

v2.11.0

<p>Release v2.11.0</p> mholt tag:github.com,2008:Repository/29207621/v2.11.0-beta.2 2026-01-06T18:02:07Z

v2.11.0-beta.2

<p>Welcome to the second beta version of 2.11. We are closer to a final release. This includes some minor new features and enhancements, and a fix for the ZeroSSL API issuer.</p> <p>Thank you to everyone who contributed!</p> <h2>Changelog</h2> <ul> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/8a87bb3ffb8706bbfcaada1d52008a8eb07ad790/hovercard" href="https://github.com/caddyserver/caddy/commit/8a87bb3ffb8706bbfcaada1d52008a8eb07ad790"><tt>8a87bb3</tt></a> build(deps): bump github.com/smallstep/certificates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690954355" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7381" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7381/hovercard" href="https://github.com/caddyserver/caddy/pull/7381">#7381</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/7b031e1eb5bc0bae9a8394d93f20399932ebd4d3/hovercard" href="https://github.com/caddyserver/caddy/commit/7b031e1eb5bc0bae9a8394d93f20399932ebd4d3"><tt>7b031e1</tt></a> build(deps): bump the all-updates group across 1 directory with 12 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3782637501" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7421" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7421/hovercard" href="https://github.com/caddyserver/caddy/pull/7421">#7421</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/be5f49fbeb046fb123583e5887ddf576a312a8e4/hovercard" href="https://github.com/caddyserver/caddy/commit/be5f49fbeb046fb123583e5887ddf576a312a8e4"><tt>be5f49f</tt></a> caddyhttp: Fix logging on wildcard sites when SkipUnmappedHosts is true (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3676317090" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7372" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7372/hovercard" href="https://github.com/caddyserver/caddy/pull/7372">#7372</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/6e0cbd0fa0d3022b41fc2c17b80f15402e685643/hovercard" href="https://github.com/caddyserver/caddy/commit/6e0cbd0fa0d3022b41fc2c17b80f15402e685643"><tt>6e0cbd0</tt></a> caddyhttp: create a placeholder for and log ech status (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3572936111" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7328" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7328/hovercard" href="https://github.com/caddyserver/caddy/pull/7328">#7328</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/4037d0576094c5f9f570825601615b62cb8d85b1/hovercard" href="https://github.com/caddyserver/caddy/commit/4037d0576094c5f9f570825601615b62cb8d85b1"><tt>4037d05</tt></a> caddyhttp: {http.request.body_base64} placeholder (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3666845958" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7367" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7367/hovercard" href="https://github.com/caddyserver/caddy/pull/7367">#7367</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/7ebe72bbfe342688a325325ea79e46970d017eb7/hovercard" href="https://github.com/caddyserver/caddy/commit/7ebe72bbfe342688a325325ea79e46970d017eb7"><tt>7ebe72b</tt></a> caddypki: Add support for multiple intermediates in signing chain (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3131719539" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7057" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7057/hovercard" href="https://github.com/caddyserver/caddy/pull/7057">#7057</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/3c9c67e804eb3db9a3ac6532ddd2434246058cd5/hovercard" href="https://github.com/caddyserver/caddy/commit/3c9c67e804eb3db9a3ac6532ddd2434246058cd5"><tt>3c9c67e</tt></a> caddytls: ECH key rotation (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3645331970" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7356" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7356/hovercard" href="https://github.com/caddyserver/caddy/pull/7356">#7356</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/374b7a637f2b6f8d0f2723ad2e7908a41023e8d5/hovercard" href="https://github.com/caddyserver/caddy/commit/374b7a637f2b6f8d0f2723ad2e7908a41023e8d5"><tt>374b7a6</tt></a> caddytls: fix preferred chains options by appending values instead of replacing (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3700512200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7387" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7387/hovercard" href="https://github.com/caddyserver/caddy/pull/7387">#7387</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/6a4296b1a45d81f52bf8ab01d0bcaa4423fee3ff/hovercard" href="https://github.com/caddyserver/caddy/commit/6a4296b1a45d81f52bf8ab01d0bcaa4423fee3ff"><tt>6a4296b</tt></a> caddytls: panic when using tls.ca_pool.source.http -> tls.ca (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3713356207" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7393" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7393/hovercard" href="https://github.com/caddyserver/caddy/pull/7393">#7393</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/9eabd443cb170ed846a70a84acf87002683ad29b/hovercard" href="https://github.com/caddyserver/caddy/commit/9eabd443cb170ed846a70a84acf87002683ad29b"><tt>9eabd44</tt></a> cmd: Add --json flag to list-modules command (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3763717950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7409" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7409/hovercard" href="https://github.com/caddyserver/caddy/pull/7409">#7409</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/b2d21f650a7ecd61d0a7ee85f3d423b89cddc371/hovercard" href="https://github.com/caddyserver/caddy/commit/b2d21f650a7ecd61d0a7ee85f3d423b89cddc371"><tt>b2d21f6</tt></a> go.mod: Upgrade CertMagic and ZeroSSL deps</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/34fd2dfcff4a9533bd3b63da56edb782effe561d/hovercard" href="https://github.com/caddyserver/caddy/commit/34fd2dfcff4a9533bd3b63da56edb782effe561d"><tt>34fd2df</tt></a> go.mod: update tscert package to latest (aea342f6) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3735269077" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7397" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7397/hovercard" href="https://github.com/caddyserver/caddy/pull/7397">#7397</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/decc8a4d6fc476b21165400ddc3c02d94ee9f47f/hovercard" href="https://github.com/caddyserver/caddy/commit/decc8a4d6fc476b21165400ddc3c02d94ee9f47f"><tt>decc8a4</tt></a> logging: <code>log_append</code> Early option, Supports <code>{http.response.body}</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3667051035" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7368" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7368/hovercard" href="https://github.com/caddyserver/caddy/pull/7368">#7368</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/409a0721354354a2d13e5c110be0f7f03363652b/hovercard" href="https://github.com/caddyserver/caddy/commit/409a0721354354a2d13e5c110be0f7f03363652b"><tt>409a072</tt></a> notify: implement windows service status and error notifications (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3704288732" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7389" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7389/hovercard" href="https://github.com/caddyserver/caddy/pull/7389">#7389</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/1f1be3f4fe281643fd4ac8c1217d5ade7f82f6b9/hovercard" href="https://github.com/caddyserver/caddy/commit/1f1be3f4fe281643fd4ac8c1217d5ade7f82f6b9"><tt>1f1be3f</tt></a> tracing: Add span attributes to tracing module (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3437177568" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7269" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7269/hovercard" href="https://github.com/caddyserver/caddy/pull/7269">#7269</a>)</li> </ul> <h2>What's Changed</h2> <ul> <li>build(deps): bump github.com/smallstep/certificates from 0.28.4 to 0.29.0 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690954355" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7381" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7381/hovercard" href="https://github.com/caddyserver/caddy/pull/7381">#7381</a></li> <li>caddypki: Add support for multiple intermediates in signing chain by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hslatman/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hslatman">@hslatman</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3131719539" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7057" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7057/hovercard" href="https://github.com/caddyserver/caddy/pull/7057">#7057</a></li> <li>caddyhttp: Fix logging on wildcard sites when SkipUnmappedHosts is true by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3676317090" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7372" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7372/hovercard" href="https://github.com/caddyserver/caddy/pull/7372">#7372</a></li> <li>multiplexing: Introduce packet conn wrappers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vnxme/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vnxme">@vnxme</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3318998668" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7180" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7180/hovercard" href="https://github.com/caddyserver/caddy/pull/7180">#7180</a></li> <li>docs: add maybe template function documentation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/steffenbusch/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/steffenbusch">@steffenbusch</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3701538368" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7388" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7388/hovercard" href="https://github.com/caddyserver/caddy/pull/7388">#7388</a></li> <li>caddyhttp: create a placeholder for and log ech status by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3572936111" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7328" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7328/hovercard" href="https://github.com/caddyserver/caddy/pull/7328">#7328</a></li> <li>caddytls: fix preferred chains options by appending values instead of replacing by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okrc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okrc">@okrc</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3700512200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7387" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7387/hovercard" href="https://github.com/caddyserver/caddy/pull/7387">#7387</a></li> <li>feat: mark Assert* functions as test helpers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690136790" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7380" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7380/hovercard" href="https://github.com/caddyserver/caddy/pull/7380">#7380</a></li> <li>caddytls: ECH key rotation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3645331970" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7356" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7356/hovercard" href="https://github.com/caddyserver/caddy/pull/7356">#7356</a></li> <li>caddytls: panic when using tls.ca_pool.source.http -> tls.ca by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Zenexer/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Zenexer">@Zenexer</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3713356207" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7393" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7393/hovercard" href="https://github.com/caddyserver/caddy/pull/7393">#7393</a></li> <li>notify: implement windows service status and error notifications by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FreyreCorona/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FreyreCorona">@FreyreCorona</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3704288732" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7389" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7389/hovercard" href="https://github.com/caddyserver/caddy/pull/7389">#7389</a></li> <li>caddyhttp: <code>{http.request.body_base64}</code> placeholder by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3666845958" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7367" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7367/hovercard" href="https://github.com/caddyserver/caddy/pull/7367">#7367</a></li> <li>chore: update tscert package to latest (aea342f6) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/willnorris/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/willnorris">@willnorris</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3735269077" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7397" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7397/hovercard" href="https://github.com/caddyserver/caddy/pull/7397">#7397</a></li> <li>logging: <code>log_append</code> Early option, Supports <code>{http.response.body}</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3667051035" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7368" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7368/hovercard" href="https://github.com/caddyserver/caddy/pull/7368">#7368</a></li> <li>update quic-go to v0.58.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3750926661" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7404" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7404/hovercard" href="https://github.com/caddyserver/caddy/pull/7404">#7404</a></li> <li>cmd: add --json flag to list-modules by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3763717950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7409" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7409/hovercard" href="https://github.com/caddyserver/caddy/pull/7409">#7409</a></li> <li>Add span attributes to tracing module by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/felix-hilden/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/felix-hilden">@felix-hilden</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3437177568" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7269" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7269/hovercard" href="https://github.com/caddyserver/caddy/pull/7269">#7269</a></li> <li>readme: fix fence by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3776593779" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7416" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7416/hovercard" href="https://github.com/caddyserver/caddy/pull/7416">#7416</a></li> <li>build(deps): bump the all-updates group across 1 directory with 12 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3782637501" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7421" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7421/hovercard" href="https://github.com/caddyserver/caddy/pull/7421">#7421</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okrc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okrc">@okrc</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3700512200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7387" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7387/hovercard" href="https://github.com/caddyserver/caddy/pull/7387">#7387</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Zenexer/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Zenexer">@Zenexer</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3713356207" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7393" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7393/hovercard" href="https://github.com/caddyserver/caddy/pull/7393">#7393</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FreyreCorona/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FreyreCorona">@FreyreCorona</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3704288732" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7389" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7389/hovercard" href="https://github.com/caddyserver/caddy/pull/7389">#7389</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pauloappbr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pauloappbr">@pauloappbr</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3763717950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7409" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7409/hovercard" href="https://github.com/caddyserver/caddy/pull/7409">#7409</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/felix-hilden/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/felix-hilden">@felix-hilden</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3437177568" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7269" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7269/hovercard" href="https://github.com/caddyserver/caddy/pull/7269">#7269</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.11.0-beta.1...v2.11.0-beta.2"><tt>v2.11.0-beta.1...v2.11.0-beta.2</tt></a></p> github-actions[bot] tag:github.com,2008:Repository/29207621/v2.11.0-beta.1 2025-12-04T20:48:39Z

v2.11.0-beta.1

<p>Welcome to the beta version of 2.11. This is the first release made by our <a href="https://github.com/caddyserver/caddy/pull/7383" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7383/hovercard">new, automated release process</a> developed by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> that was carried out and approved entirely by our maintainer team (together with <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a>) without intervention from <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a>, the original Caddy author. This represents a significant step forward in <a href="https://caddy.community/t/next-steps-for-the-caddy-project-maintainership/33076" rel="nofollow">project autonomy and growth</a>, ensuring that the project's stability and longevity is not reliant upon a single person.</p> <p>This first beta release was primarily to test our new workflow, so there's still a couple things left to do before the stable release.</p> <p>Featured here are numerous, mostly minor, bug fixes and enhancements, mostly affecting edge cases or niche corners of the software; for example, proxying H2C or HTTP/3, obscure Caddyfile scenarios, and named socket activation.</p> <p>Some notable changes:</p> <ul> <li>SIGUSR1 can be used to reload configuration only if it was loaded from a file using the CLI, and not changed by the API since then.</li> <li>We replaced "lumberjack", our logging library, with a fork "timberjack" that supports the oft-requested time-rolling ability.</li> <li>Caddy can now bind listeners with named socket activation.</li> </ul> <p>Before the final release, we expect ECH key rotation to be enabled as well as a few other patches/features</p> <p>Thank you to our sponsors and contributors for all that you do!</p> <h2>Changelog</h2> <ul> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/5473eb95d8e94505b8c06955bd200f37179c54a2/hovercard" href="https://github.com/caddyserver/caddy/commit/5473eb95d8e94505b8c06955bd200f37179c54a2"><tt>5473eb9</tt></a> encode: fix response corruption when handle_errors is used (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376843581" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7235" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7235/hovercard" href="https://github.com/caddyserver/caddy/pull/7235">#7235</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/13a4ec7597f8e9ebe105b0ee89102ba521f21173/hovercard" href="https://github.com/caddyserver/caddy/commit/13a4ec7597f8e9ebe105b0ee89102ba521f21173"><tt>13a4ec7</tt></a> basicauth: Implement argon2id (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3328083126" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7186" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7186/hovercard" href="https://github.com/caddyserver/caddy/pull/7186">#7186</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/6d90c7707dac3026c1b28fba615b1962d2cd45e1/hovercard" href="https://github.com/caddyserver/caddy/commit/6d90c7707dac3026c1b28fba615b1962d2cd45e1"><tt>6d90c77</tt></a> build(deps): bump github.com/slackhq/nebula from 1.9.5 to 1.9.7 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3545628409" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7315" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7315/hovercard" href="https://github.com/caddyserver/caddy/pull/7315">#7315</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/eead249382ac14c29d82ec75f30df7638e879567/hovercard" href="https://github.com/caddyserver/caddy/commit/eead249382ac14c29d82ec75f30df7638e879567"><tt>eead249</tt></a> build(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3645207045" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7355" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7355/hovercard" href="https://github.com/caddyserver/caddy/pull/7355">#7355</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2d0f3f887bc1f70c52fc183ebcc6225f7f91c041/hovercard" href="https://github.com/caddyserver/caddy/commit/2d0f3f887bc1f70c52fc183ebcc6225f7f91c041"><tt>2d0f3f8</tt></a> build(deps): bump the actions-deps group with 5 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3377041464" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7237" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7237/hovercard" href="https://github.com/caddyserver/caddy/pull/7237">#7237</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/afbdcec08bbd7471b9b5e5ed209881dfcc51bd6c/hovercard" href="https://github.com/caddyserver/caddy/commit/afbdcec08bbd7471b9b5e5ed209881dfcc51bd6c"><tt>afbdcec</tt></a> build(deps): bump the actions-deps group with 8 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3475442171" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7284" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7284/hovercard" href="https://github.com/caddyserver/caddy/pull/7284">#7284</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/cd1c203777e89a64c8426c049727c58fbebc1276/hovercard" href="https://github.com/caddyserver/caddy/commit/cd1c203777e89a64c8426c049727c58fbebc1276"><tt>cd1c203</tt></a> build(deps): bump the all-updates group across 1 directory with 2 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3519662028" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7307" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7307/hovercard" href="https://github.com/caddyserver/caddy/pull/7307">#7307</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/39357d3e5cb6124e8af651460cc8ab6975c637b8/hovercard" href="https://github.com/caddyserver/caddy/commit/39357d3e5cb6124e8af651460cc8ab6975c637b8"><tt>39357d3</tt></a> build(deps): bump the all-updates group with 17 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376909200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7236" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7236/hovercard" href="https://github.com/caddyserver/caddy/pull/7236">#7236</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/786d5378771d068440b7ddd8c310851bb7b9afe0/hovercard" href="https://github.com/caddyserver/caddy/commit/786d5378771d068440b7ddd8c310851bb7b9afe0"><tt>786d537</tt></a> build(deps): bump the all-updates group with 3 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3683672324" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7376" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7376/hovercard" href="https://github.com/caddyserver/caddy/pull/7376">#7376</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/07d2aaf22ef8225575b9557640806bc895067905/hovercard" href="https://github.com/caddyserver/caddy/commit/07d2aaf22ef8225575b9557640806bc895067905"><tt>07d2aaf</tt></a> build(deps): bump the all-updates group with 4 updates (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3578576180" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7333" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7333/hovercard" href="https://github.com/caddyserver/caddy/pull/7333">#7333</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/0ba8786b35eaec5ec53f8562bec9587e6b1e6a8b/hovercard" href="https://github.com/caddyserver/caddy/commit/0ba8786b35eaec5ec53f8562bec9587e6b1e6a8b"><tt>0ba8786</tt></a> caddyfile: Allow <code>block</code> to do nothing if nothing passed to <code>import</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3348646787" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7206" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7206/hovercard" href="https://github.com/caddyserver/caddy/pull/7206">#7206</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/92c8bc73228aad9eb0b396fdb687c024124d8dbd/hovercard" href="https://github.com/caddyserver/caddy/commit/92c8bc73228aad9eb0b396fdb687c024124d8dbd"><tt>92c8bc7</tt></a> caddyfile: fix nested quotes formatted incorrectly by fmt (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3110119198" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7045" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7045/hovercard" href="https://github.com/caddyserver/caddy/pull/7045">#7045</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/6d73d85c1fd3d20acaaadc0fb69e3f562d92f685/hovercard" href="https://github.com/caddyserver/caddy/commit/6d73d85c1fd3d20acaaadc0fb69e3f562d92f685"><tt>6d73d85</tt></a> caddyfile: prevent adding trailing space on line before env variable (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3356946154" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7215" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7215/hovercard" href="https://github.com/caddyserver/caddy/pull/7215">#7215</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/d7185fd002a2c57d20a98d3e94442da7b259b3ad/hovercard" href="https://github.com/caddyserver/caddy/commit/d7185fd002a2c57d20a98d3e94442da7b259b3ad"><tt>d7185fd</tt></a> caddyhttp: Add <code>trusted_proxies_unix</code> for trusting unix socket <code>X-Forwarded-*</code> headers (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3428079513" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7265" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7265/hovercard" href="https://github.com/caddyserver/caddy/pull/7265">#7265</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/de6b78009b840eb395c33b8d65c5d32746df38b6/hovercard" href="https://github.com/caddyserver/caddy/commit/de6b78009b840eb395c33b8d65c5d32746df38b6"><tt>de6b780</tt></a> caddyhttp: Add server options <code>keepalive_idle</code> and <code>keepalive_count</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3500286538" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7298" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7298/hovercard" href="https://github.com/caddyserver/caddy/pull/7298">#7298</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/e0a8f9541d155b7385b78d2b8bbe2fad53bb6295/hovercard" href="https://github.com/caddyserver/caddy/commit/e0a8f9541d155b7385b78d2b8bbe2fad53bb6295"><tt>e0a8f95</tt></a> caddyhttp: Normalize (lowercase) {label.N} placeholders</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/5e2953670ed7eecbc34146b5d12cca7dd85ac580/hovercard" href="https://github.com/caddyserver/caddy/commit/5e2953670ed7eecbc34146b5d12cca7dd85ac580"><tt>5e29536</tt></a> caddyhttp: add replacer placeholders for escaped values (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3319556931" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7181" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7181/hovercard" href="https://github.com/caddyserver/caddy/pull/7181">#7181</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/8285eba8426e3c75ed81d6a8c5cd6ec685430d47/hovercard" href="https://github.com/caddyserver/caddy/commit/8285eba8426e3c75ed81d6a8c5cd6ec685430d47"><tt>8285eba</tt></a> caddyhttp: allow customizing the Server header (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3584161240" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7338" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7338/hovercard" href="https://github.com/caddyserver/caddy/pull/7338">#7338</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/bc0e1841305b2cc82aeaf9953e527d9819a88c83/hovercard" href="https://github.com/caddyserver/caddy/commit/bc0e1841305b2cc82aeaf9953e527d9819a88c83"><tt>bc0e184</tt></a> caddyhttp: omit unnecessary reassignment (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3456291972" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7276" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7276/hovercard" href="https://github.com/caddyserver/caddy/pull/7276">#7276</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/3553cfb6adb2954a53d559c1841c8072b9921e61/hovercard" href="https://github.com/caddyserver/caddy/commit/3553cfb6adb2954a53d559c1841c8072b9921e61"><tt>3553cfb</tt></a> caddyhttp: remove redundant middleware next copy (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3357122078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7217" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7217/hovercard" href="https://github.com/caddyserver/caddy/pull/7217">#7217</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/1ce2a13ad10eab5693b425056c571621f5d860e9/hovercard" href="https://github.com/caddyserver/caddy/commit/1ce2a13ad10eab5693b425056c571621f5d860e9"><tt>1ce2a13</tt></a> caddyhttp: wrap accepted connection to suppress tls.ConnectionState (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3397136598" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7247" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7247/hovercard" href="https://github.com/caddyserver/caddy/pull/7247">#7247</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/d9cc24f3df663e1bab58dc08ac12bf818c9f6852/hovercard" href="https://github.com/caddyserver/caddy/commit/d9cc24f3df663e1bab58dc08ac12bf818c9f6852"><tt>d9cc24f</tt></a> caddypki: Disable internal auto-CA when auto_https is disabled (fix <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3351816095" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7211" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7211/hovercard" href="https://github.com/caddyserver/caddy/issues/7211">#7211</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3382460505" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7238" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7238/hovercard" href="https://github.com/caddyserver/caddy/pull/7238">#7238</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/1e82f9652ec561cc0c84bec501976045aa01a310/hovercard" href="https://github.com/caddyserver/caddy/commit/1e82f9652ec561cc0c84bec501976045aa01a310"><tt>1e82f96</tt></a> caddypki: check intermediate lifetime to actual root cert lifetime (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3453697621" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7272" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7272/hovercard" href="https://github.com/caddyserver/caddy/pull/7272">#7272</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/38848f7f2525777edd0241ad3118f070e045d771/hovercard" href="https://github.com/caddyserver/caddy/commit/38848f7f2525777edd0241ad3118f070e045d771"><tt>38848f7</tt></a> caddytls: Allow disabling distributed solving (except http-01)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/ddec1838b39a1b61432db4e78f2e752f27c3c769/hovercard" href="https://github.com/caddyserver/caddy/commit/ddec1838b39a1b61432db4e78f2e752f27c3c769"><tt>ddec183</tt></a> caddytls: correct documentation of <code>LeafFolderLoader</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3572618828" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7327" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7327/hovercard" href="https://github.com/caddyserver/caddy/pull/7327">#7327</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/f5c3094050566d8d4fcf9f3ecf7d26f9c3241c65/hovercard" href="https://github.com/caddyserver/caddy/commit/f5c3094050566d8d4fcf9f3ecf7d26f9c3241c65"><tt>f5c3094</tt></a> cmd: prevent commas in header values from being split (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3436904291" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7268" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7268/hovercard" href="https://github.com/caddyserver/caddy/pull/7268">#7268</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/65e0ddc22137bbbaa68c842ae0b98d0548504545/hovercard" href="https://github.com/caddyserver/caddy/commit/65e0ddc22137bbbaa68c842ae0b98d0548504545"><tt>65e0ddc</tt></a> core: Reloading with <code>SIGUSR1</code> if config never changed via admin (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3414660284" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7258" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7258/hovercard" href="https://github.com/caddyserver/caddy/pull/7258">#7258</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/b3f2db233b5a71df6680b43d025bdb62ee2a999c/hovercard" href="https://github.com/caddyserver/caddy/commit/b3f2db233b5a71df6680b43d025bdb62ee2a999c"><tt>b3f2db2</tt></a> core: custom slog handlers for modules (log contextual data) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3603718840" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7346" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7346/hovercard" href="https://github.com/caddyserver/caddy/pull/7346">#7346</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/b2ab419922e0dabc2956611531f73a6169ecc46f/hovercard" href="https://github.com/caddyserver/caddy/commit/b2ab419922e0dabc2956611531f73a6169ecc46f"><tt>b2ab419</tt></a> core: use reflect.TypeFor to check for encoding/json.RawMessage (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3455429782" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7274" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7274/hovercard" href="https://github.com/caddyserver/caddy/pull/7274">#7274</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/806fef85bedfc3fe178560afe6212c8ae90d3ebe/hovercard" href="https://github.com/caddyserver/caddy/commit/806fef85bedfc3fe178560afe6212c8ae90d3ebe"><tt>806fef8</tt></a> encode: add graphql-response header to list (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3355044099" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7214" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7214/hovercard" href="https://github.com/caddyserver/caddy/pull/7214">#7214</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2cb426776c091febccc6b9a6669f1c5a745648a4/hovercard" href="https://github.com/caddyserver/caddy/commit/2cb426776c091febccc6b9a6669f1c5a745648a4"><tt>2cb4267</tt></a> encode: modernize, replace HasSuffix+TrimSuffix with CutSuffix (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3646146453" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7357" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7357/hovercard" href="https://github.com/caddyserver/caddy/pull/7357">#7357</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/b462615439bf354dd1cb6780fb564b6a6c4a352c/hovercard" href="https://github.com/caddyserver/caddy/commit/b462615439bf354dd1cb6780fb564b6a6c4a352c"><tt>b462615</tt></a> fileserver: set Content-Length for precompressed files (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3404379530" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7251" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7251/hovercard" href="https://github.com/caddyserver/caddy/pull/7251">#7251</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/0c8798fce36b0915ff39288bff7eddfad2a1673f/hovercard" href="https://github.com/caddyserver/caddy/commit/0c8798fce36b0915ff39288bff7eddfad2a1673f"><tt>0c8798f</tt></a> go.mod: update quic-go to v0.54.1 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3454114374" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7273" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7273/hovercard" href="https://github.com/caddyserver/caddy/pull/7273">#7273</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/3c003deec67ed1ca0127f4b303c64760a9a7b19d/hovercard" href="https://github.com/caddyserver/caddy/commit/3c003deec67ed1ca0127f4b303c64760a9a7b19d"><tt>3c003de</tt></a> httpcaddyfile: Add missing DNS challenge check for <code>acme_dns</code> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3438764250" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7270" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7270/hovercard" href="https://github.com/caddyserver/caddy/pull/7270">#7270</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2f1d270968e050105e3f6814b1ef7e7660ed41ba/hovercard" href="https://github.com/caddyserver/caddy/commit/2f1d270968e050105e3f6814b1ef7e7660ed41ba"><tt>2f1d270</tt></a> httpcaddyfile: Map default_bind to BindHost in globalACMEDefaults (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3460157233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7278" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7278/hovercard" href="https://github.com/caddyserver/caddy/pull/7278">#7278</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/a7885aabec375db38ac6c221c7c709dc83122535/hovercard" href="https://github.com/caddyserver/caddy/commit/a7885aabec375db38ac6c221c7c709dc83122535"><tt>a7885aa</tt></a> intercept: use already buffered response if possible when intercepting (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3075462541" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7028" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7028/hovercard" href="https://github.com/caddyserver/caddy/pull/7028">#7028</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/156ce99d3a46be8cefe8502b2c30b757e4deb79f/hovercard" href="https://github.com/caddyserver/caddy/commit/156ce99d3a46be8cefe8502b2c30b757e4deb79f"><tt>156ce99</tt></a> listeners: Add support for named socket activation (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390370717" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7243" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7243/hovercard" href="https://github.com/caddyserver/caddy/pull/7243">#7243</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/39ace450deb23a8ebb4f41ff4d8cfe2800d68118/hovercard" href="https://github.com/caddyserver/caddy/commit/39ace450deb23a8ebb4f41ff4d8cfe2800d68118"><tt>39ace45</tt></a> logging: Adjustments to BufferedLog to keep logs in the correct order (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3414522715" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7257" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7257/hovercard" href="https://github.com/caddyserver/caddy/pull/7257">#7257</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/012b4b3d40dae32502503c9d6bc6333acb135cb3/hovercard" href="https://github.com/caddyserver/caddy/commit/012b4b3d40dae32502503c9d6bc6333acb135cb3"><tt>012b4b3</tt></a> logging: Buffer the logs before config is loaded (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3391111000" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7245" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7245/hovercard" href="https://github.com/caddyserver/caddy/pull/7245">#7245</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/10ac7da037828c5179ad7d04309fc8912f2fe0d5/hovercard" href="https://github.com/caddyserver/caddy/commit/10ac7da037828c5179ad7d04309fc8912f2fe0d5"><tt>10ac7da</tt></a> logging: Switch from <code>lumberjack</code> to <code>timberjack</code>, add time-rolling options (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390544978" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7244" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7244/hovercard" href="https://github.com/caddyserver/caddy/pull/7244">#7244</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/f5f25d845a814a600102614cc8836af5ebe1487b/hovercard" href="https://github.com/caddyserver/caddy/commit/f5f25d845a814a600102614cc8836af5ebe1487b"><tt>f5f25d8</tt></a> logging: fix multiple regexp filters on same field (fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3113646950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7049" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7049/hovercard" href="https://github.com/caddyserver/caddy/issues/7049">#7049</a>) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3138056195" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7061/hovercard" href="https://github.com/caddyserver/caddy/pull/7061">#7061</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/595aab8bc0d98c510c044a2a6b8e7053aaf4e8fb/hovercard" href="https://github.com/caddyserver/caddy/commit/595aab8bc0d98c510c044a2a6b8e7053aaf4e8fb"><tt>595aab8</tt></a> metrics: resolve per-host inifinite cardinality (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3519612368" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7306" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7306/hovercard" href="https://github.com/caddyserver/caddy/pull/7306">#7306</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/57587ed18e3908931b4f7bfd73078c47082fb742/hovercard" href="https://github.com/caddyserver/caddy/commit/57587ed18e3908931b4f7bfd73078c47082fb742"><tt>57587ed</tt></a> refactor: use reflect.TypeFor (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3535572031" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7313" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7313/hovercard" href="https://github.com/caddyserver/caddy/pull/7313">#7313</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/2ec28bca43e5269511f8d9c1656244dd84acdad9/hovercard" href="https://github.com/caddyserver/caddy/commit/2ec28bca43e5269511f8d9c1656244dd84acdad9"><tt>2ec28bc</tt></a> reverse_proxy: use http1 for outbound tls requests with placeholder that are likely websockets (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3497461950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7296" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7296/hovercard" href="https://github.com/caddyserver/caddy/pull/7296">#7296</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/a6da1acdc86199a7f99fa2347d5f91cd59ff90d8/hovercard" href="https://github.com/caddyserver/caddy/commit/a6da1acdc86199a7f99fa2347d5f91cd59ff90d8"><tt>a6da1ac</tt></a> reverse_proxy: use interfaces to modify the behaviors of the transports (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3631997798" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7353" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7353/hovercard" href="https://github.com/caddyserver/caddy/pull/7353">#7353</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/67a9e0657e60df8c78510065e8977d86ee17d01c/hovercard" href="https://github.com/caddyserver/caddy/commit/67a9e0657e60df8c78510065e8977d86ee17d01c"><tt>67a9e06</tt></a> reverseproxy: Fix retries for requests with bodies (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651468983" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7360" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7360/hovercard" href="https://github.com/caddyserver/caddy/pull/7360">#7360</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/7fb39ec1e56751c82950fa8a35a189ea39dfa005/hovercard" href="https://github.com/caddyserver/caddy/commit/7fb39ec1e56751c82950fa8a35a189ea39dfa005"><tt>7fb39ec</tt></a> reverseproxy: Use http1.1 upgrade for websocket for extended connect of http2 and http3 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3518944383" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7305" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7305/hovercard" href="https://github.com/caddyserver/caddy/pull/7305">#7305</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/8aca108d2c9d9e9ff3a39ff00684ea58df1338f6/hovercard" href="https://github.com/caddyserver/caddy/commit/8aca108d2c9d9e9ff3a39ff00684ea58df1338f6"><tt>8aca108</tt></a> reverseproxy: do not disable keepalive if proxy protocol is used (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3505060078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7300" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7300/hovercard" href="https://github.com/caddyserver/caddy/pull/7300">#7300</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/abe0acabb61b0151f58c7b750d3963dbbffe7270/hovercard" href="https://github.com/caddyserver/caddy/commit/abe0acabb61b0151f58c7b750d3963dbbffe7270"><tt>abe0aca</tt></a> reverseproxy: set default values for keepalive if only some of them are set (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3552085393" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7318" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7318/hovercard" href="https://github.com/caddyserver/caddy/pull/7318">#7318</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/1e21b660c42485cb47287b595900446093d3df2b/hovercard" href="https://github.com/caddyserver/caddy/commit/1e21b660c42485cb47287b595900446093d3df2b"><tt>1e21b66</tt></a> reverseproxy: use http.Protocols to handle h2c requests (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3026926404" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/6990" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/6990/hovercard" href="https://github.com/caddyserver/caddy/pull/6990">#6990</a>)</li> <li><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/caddyserver/caddy/commit/b54e870b26a23a98d81967c80d9e875f3a9e3c1d/hovercard" href="https://github.com/caddyserver/caddy/commit/b54e870b26a23a98d81967c80d9e875f3a9e3c1d"><tt>b54e870</tt></a> tracing: switch to autoexport for OpenTelemetry span exporter (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3546352071" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7317" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7317/hovercard" href="https://github.com/caddyserver/caddy/pull/7317">#7317</a>)</li> </ul> <h2>What's Changed</h2> <ul> <li>caddyhttp: add replacer placeholders for escaped values by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Qusic/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Qusic">@Qusic</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3319556931" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7181" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7181/hovercard" href="https://github.com/caddyserver/caddy/pull/7181">#7181</a></li> <li>AI assistance disclosure by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mholt/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mholt">@mholt</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3352348095" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7212" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7212/hovercard" href="https://github.com/caddyserver/caddy/pull/7212">#7212</a></li> <li>caddyfile: Prevent trailing space on line before env variable - Fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2901665864" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/6881" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/6881/hovercard" href="https://github.com/caddyserver/caddy/issues/6881">#6881</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arpansaha13/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arpansaha13">@arpansaha13</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3356946154" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7215" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7215/hovercard" href="https://github.com/caddyserver/caddy/pull/7215">#7215</a></li> <li>add: encode header Content-Type graphql-response by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aro-lew/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aro-lew">@aro-lew</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3355044099" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7214" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7214/hovercard" href="https://github.com/caddyserver/caddy/pull/7214">#7214</a></li> <li>caddyhttp: Removing redundant middleware next copy by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maxcelant/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maxcelant">@maxcelant</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3357122078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7217" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7217/hovercard" href="https://github.com/caddyserver/caddy/pull/7217">#7217</a></li> <li>build(deps): bump the all-updates group with 17 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376909200" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7236" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7236/hovercard" href="https://github.com/caddyserver/caddy/pull/7236">#7236</a></li> <li>build(deps): bump the actions-deps group with 5 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3377041464" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7237" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7237/hovercard" href="https://github.com/caddyserver/caddy/pull/7237">#7237</a></li> <li>encode: fix response corruption when handle_errors is used by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376843581" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7235" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7235/hovercard" href="https://github.com/caddyserver/caddy/pull/7235">#7235</a></li> <li>Fix PKI creation when auto_https is disabled (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3351816095" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7211" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7211/hovercard" href="https://github.com/caddyserver/caddy/issues/7211">#7211</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3382460505" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7238" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7238/hovercard" href="https://github.com/caddyserver/caddy/pull/7238">#7238</a></li> <li>logging: Buffer the logs before config is loaded by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3391111000" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7245" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7245/hovercard" href="https://github.com/caddyserver/caddy/pull/7245">#7245</a></li> <li>fileserver: set Content-Length for precompressed files by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3404379530" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7251" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7251/hovercard" href="https://github.com/caddyserver/caddy/pull/7251">#7251</a></li> <li>refactor: use WaitGroup.Go to simplify code by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mickychang9/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mickychang9">@mickychang9</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3405726900" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7253" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7253/hovercard" href="https://github.com/caddyserver/caddy/pull/7253">#7253</a></li> <li>caddyfile: Allow <code>block</code> to do nothing if nothing passed to <code>import</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/BeeJay28/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/BeeJay28">@BeeJay28</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3348646787" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7206" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7206/hovercard" href="https://github.com/caddyserver/caddy/pull/7206">#7206</a></li> <li>logging: Adjustments to BufferedLog to keep logs in the correct order by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3414522715" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7257" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7257/hovercard" href="https://github.com/caddyserver/caddy/pull/7257">#7257</a></li> <li>caddyhttp: Prevent commas in header values from being split in CLI commands by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gilbsgilbs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/gilbsgilbs">@gilbsgilbs</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3436904291" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7268" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7268/hovercard" href="https://github.com/caddyserver/caddy/pull/7268">#7268</a></li> <li>update quic-go to v0.54.1 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3454114374" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7273" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7273/hovercard" href="https://github.com/caddyserver/caddy/pull/7273">#7273</a></li> <li>chore: ugh, lint fix... by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3455768930" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7275" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7275/hovercard" href="https://github.com/caddyserver/caddy/pull/7275">#7275</a></li> <li>caddypki: check intermediate lifetime to actual root cert lifetime by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/u5surf/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/u5surf">@u5surf</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3453697621" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7272" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7272/hovercard" href="https://github.com/caddyserver/caddy/pull/7272">#7272</a></li> <li>refactor: omit unnecessary reassignment by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/asttool/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/asttool">@asttool</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3456291972" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7276" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7276/hovercard" href="https://github.com/caddyserver/caddy/pull/7276">#7276</a></li> <li>core: use reflect.TypeFor to check for encoding/json.RawMessage by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3455429782" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7274" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7274/hovercard" href="https://github.com/caddyserver/caddy/pull/7274">#7274</a></li> <li>core: Reloading with <code>SIGUSR1</code> if config never changed via admin by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/francislavoie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/francislavoie">@francislavoie</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3414660284" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7258" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7258/hovercard" href="https://github.com/caddyserver/caddy/pull/7258">#7258</a></li> <li>build(deps): bump the actions-deps group with 8 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3475442171" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7284" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7284/hovercard" href="https://github.com/caddyserver/caddy/pull/7284">#7284</a></li> <li>httpcaddyfile: Add missing DNS challenge check for <code>acme_dns</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rightaditya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rightaditya">@rightaditya</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3438764250" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7270" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7270/hovercard" href="https://github.com/caddyserver/caddy/pull/7270">#7270</a></li> <li>httpcaddyfile: Map default_bind to BindHost in globalACMEDefaults by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Monviech/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Monviech">@Monviech</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3460157233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7278" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7278/hovercard" href="https://github.com/caddyserver/caddy/pull/7278">#7278</a></li> <li>Argon2id Support for Basic Auth by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/GreyXor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/GreyXor">@GreyXor</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3328083126" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7186" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7186/hovercard" href="https://github.com/caddyserver/caddy/pull/7186">#7186</a></li> <li>update quic-go to v0.55.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3483072006" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7288" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7288/hovercard" href="https://github.com/caddyserver/caddy/pull/7288">#7288</a></li> <li>reverse_proxy: use http1 for outbound tls requests with placeholder t… by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3497461950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7296" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7296/hovercard" href="https://github.com/caddyserver/caddy/pull/7296">#7296</a></li> <li>caddyhttp: Add server options <code>keepalive_idle</code> and <code>keepalive_count</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/joshuamcbeth/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/joshuamcbeth">@joshuamcbeth</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3500286538" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7298" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7298/hovercard" href="https://github.com/caddyserver/caddy/pull/7298">#7298</a></li> <li>chore: fix some comments by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wyrapeseed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wyrapeseed">@wyrapeseed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3516211711" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7303" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7303/hovercard" href="https://github.com/caddyserver/caddy/pull/7303">#7303</a></li> <li>logging: Switch from <code>lumberjack</code> to <code>timberjack</code>, add time-rolling options by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aeris/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aeris">@aeris</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390544978" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7244" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7244/hovercard" href="https://github.com/caddyserver/caddy/pull/7244">#7244</a></li> <li>reverseproxy: Use http1.1 upgrade for websocket for extended connect of http2 and http3. by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tonyb486/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tonyb486">@tonyb486</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3518944383" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7305" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7305/hovercard" href="https://github.com/caddyserver/caddy/pull/7305">#7305</a></li> <li>caddyhttp: Add <code>trusted_proxies_unix</code> for trusting unix socket <code>X-Forwarded-*</code> headers by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cseufert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cseufert">@cseufert</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3428079513" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7265" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7265/hovercard" href="https://github.com/caddyserver/caddy/pull/7265">#7265</a></li> <li>caddyhttp: wrap accepted connection to suppress tls.ConnectionState by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3397136598" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7247" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7247/hovercard" href="https://github.com/caddyserver/caddy/pull/7247">#7247</a></li> <li>logging: fix multiple regexp filters on same field (fixes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3113646950" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7049" data-hovercard-type="issue" data-hovercard-url="/caddyserver/caddy/issues/7049/hovercard" href="https://github.com/caddyserver/caddy/issues/7049">#7049</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/S2010/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/S2010">@S2010</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3138056195" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7061/hovercard" href="https://github.com/caddyserver/caddy/pull/7061">#7061</a></li> <li>intercept: use already buffered response if possible when intercepting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3075462541" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7028" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7028/hovercard" href="https://github.com/caddyserver/caddy/pull/7028">#7028</a></li> <li>listeners: Add support for named socket activation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390370717" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7243" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7243/hovercard" href="https://github.com/caddyserver/caddy/pull/7243">#7243</a></li> <li>reverseproxy: do not disable keepalive if proxy protocol is used by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3505060078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7300" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7300/hovercard" href="https://github.com/caddyserver/caddy/pull/7300">#7300</a></li> <li>metrics: resolve per-host inifinite cardinality by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3519612368" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7306" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7306/hovercard" href="https://github.com/caddyserver/caddy/pull/7306">#7306</a></li> <li>reverseproxy: use http.Protocols to handle h2c requests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3026926404" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/6990" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/6990/hovercard" href="https://github.com/caddyserver/caddy/pull/6990">#6990</a></li> <li>refactor: use reflect.TypeFor by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wyrapeseed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wyrapeseed">@wyrapeseed</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3535572031" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7313" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7313/hovercard" href="https://github.com/caddyserver/caddy/pull/7313">#7313</a></li> <li>build(deps): bump the all-updates group across 1 directory with 2 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3519662028" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7307" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7307/hovercard" href="https://github.com/caddyserver/caddy/pull/7307">#7307</a></li> <li>build(deps): bump github.com/slackhq/nebula from 1.9.5 to 1.9.7 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3545628409" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7315" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7315/hovercard" href="https://github.com/caddyserver/caddy/pull/7315">#7315</a></li> <li>feat: switch to autoexport for OpenTelemetry span exporter by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PKeidel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PKeidel">@PKeidel</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3546352071" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7317" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7317/hovercard" href="https://github.com/caddyserver/caddy/pull/7317">#7317</a></li> <li>reverse_proxy: set default values for keepalive if only some of them are set by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3552085393" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7318" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7318/hovercard" href="https://github.com/caddyserver/caddy/pull/7318">#7318</a></li> <li>fix quote within quotes formatted incorrectly by fmt by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/keystroke3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/keystroke3">@keystroke3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3110119198" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7045" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7045/hovercard" href="https://github.com/caddyserver/caddy/pull/7045">#7045</a></li> <li>caddytls: correct documentation of <code>LeafFolderLoader</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3572618828" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7327" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7327/hovercard" href="https://github.com/caddyserver/caddy/pull/7327">#7327</a></li> <li>fix golangci-lint error G602 in caddyhttp by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cdenicola/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cdenicola">@cdenicola</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3580223289" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7334" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7334/hovercard" href="https://github.com/caddyserver/caddy/pull/7334">#7334</a></li> <li>feat: allow customizing the Server header by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3584161240" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7338" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7338/hovercard" href="https://github.com/caddyserver/caddy/pull/7338">#7338</a></li> <li>update quic-go to v0.56.0, enable qlog for HTTP/3 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3602864328" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7345" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7345/hovercard" href="https://github.com/caddyserver/caddy/pull/7345">#7345</a></li> <li>build(deps): bump the all-updates group with 4 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3578576180" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7333" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7333/hovercard" href="https://github.com/caddyserver/caddy/pull/7333">#7333</a></li> <li>feat: custom slog handlers for modules (log contextual data) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dunglas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dunglas">@dunglas</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3603718840" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7346" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7346/hovercard" href="https://github.com/caddyserver/caddy/pull/7346">#7346</a></li> <li>ci: implement new release flow by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3593431653" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7341" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7341/hovercard" href="https://github.com/caddyserver/caddy/pull/7341">#7341</a></li> <li>reverse_proxy: use interfaces to modify the behaviors of the transports by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/WeidiDeng/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/WeidiDeng">@WeidiDeng</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3631997798" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7353" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7353/hovercard" href="https://github.com/caddyserver/caddy/pull/7353">#7353</a></li> <li>build(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3645207045" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7355" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7355/hovercard" href="https://github.com/caddyserver/caddy/pull/7355">#7355</a></li> <li>update quic-go to v0.57.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marten-seemann/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marten-seemann">@marten-seemann</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651200267" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7359" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7359/hovercard" href="https://github.com/caddyserver/caddy/pull/7359">#7359</a></li> <li>refactor: replace HasSuffix+TrimSuffix with CutSuffix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ledigang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ledigang">@ledigang</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3646146453" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7357" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7357/hovercard" href="https://github.com/caddyserver/caddy/pull/7357">#7357</a></li> <li>Fix retries for requests with bodies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chebyrash/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chebyrash">@chebyrash</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651468983" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7360" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7360/hovercard" href="https://github.com/caddyserver/caddy/pull/7360">#7360</a></li> <li>build(deps): bump the all-updates group with 3 updates by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3683672324" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7376" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7376/hovercard" href="https://github.com/caddyserver/caddy/pull/7376">#7376</a></li> <li>ci: escape backticks in changelogs embedded in JS by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mohammed90/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mohammed90">@mohammed90</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3690978212" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7382" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7382/hovercard" href="https://github.com/caddyserver/caddy/pull/7382">#7382</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Qusic/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Qusic">@Qusic</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3319556931" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7181" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7181/hovercard" href="https://github.com/caddyserver/caddy/pull/7181">#7181</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arpansaha13/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arpansaha13">@arpansaha13</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3356946154" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7215" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7215/hovercard" href="https://github.com/caddyserver/caddy/pull/7215">#7215</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aro-lew/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aro-lew">@aro-lew</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3355044099" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7214" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7214/hovercard" href="https://github.com/caddyserver/caddy/pull/7214">#7214</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maxcelant/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maxcelant">@maxcelant</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3357122078" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7217" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7217/hovercard" href="https://github.com/caddyserver/caddy/pull/7217">#7217</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Siomachkin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Siomachkin">@Siomachkin</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3376843581" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7235" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7235/hovercard" href="https://github.com/caddyserver/caddy/pull/7235">#7235</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mickychang9/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mickychang9">@mickychang9</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3405726900" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7253" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7253/hovercard" href="https://github.com/caddyserver/caddy/pull/7253">#7253</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/asttool/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/asttool">@asttool</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3456291972" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7276" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7276/hovercard" href="https://github.com/caddyserver/caddy/pull/7276">#7276</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rightaditya/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rightaditya">@rightaditya</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3438764250" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7270" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7270/hovercard" href="https://github.com/caddyserver/caddy/pull/7270">#7270</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Monviech/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Monviech">@Monviech</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3460157233" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7278" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7278/hovercard" href="https://github.com/caddyserver/caddy/pull/7278">#7278</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wyrapeseed/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wyrapeseed">@wyrapeseed</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3516211711" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7303" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7303/hovercard" href="https://github.com/caddyserver/caddy/pull/7303">#7303</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aeris/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aeris">@aeris</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3390544978" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7244" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7244/hovercard" href="https://github.com/caddyserver/caddy/pull/7244">#7244</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tonyb486/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tonyb486">@tonyb486</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3518944383" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7305" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7305/hovercard" href="https://github.com/caddyserver/caddy/pull/7305">#7305</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cseufert/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cseufert">@cseufert</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3428079513" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7265" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7265/hovercard" href="https://github.com/caddyserver/caddy/pull/7265">#7265</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/S2010/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/S2010">@S2010</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3138056195" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7061" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7061/hovercard" href="https://github.com/caddyserver/caddy/pull/7061">#7061</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PKeidel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PKeidel">@PKeidel</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3546352071" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7317" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7317/hovercard" href="https://github.com/caddyserver/caddy/pull/7317">#7317</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cdenicola/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cdenicola">@cdenicola</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3580223289" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7334" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7334/hovercard" href="https://github.com/caddyserver/caddy/pull/7334">#7334</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ledigang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ledigang">@ledigang</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3646146453" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7357" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7357/hovercard" href="https://github.com/caddyserver/caddy/pull/7357">#7357</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chebyrash/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chebyrash">@chebyrash</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3651468983" data-permission-text="Title is private" data-url="https://github.com/caddyserver/caddy/issues/7360" data-hovercard-type="pull_request" data-hovercard-url="/caddyserver/caddy/pull/7360/hovercard" href="https://github.com/caddyserver/caddy/pull/7360">#7360</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/caddyserver/caddy/compare/v2.10.2...v2.11.0-beta.1"><tt>v2.10.2...v2.11.0-beta.1</tt></a></p> github-actions[bot]
For now, Differences are performed on text, not graphically, only the latest screenshot is available.

Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc ) that supports screenshots.