github caddyserver/caddy v2.7.5

latest release: v2.7.6
6 months ago

In this release, we've fixed quite a few small bugs and annoyances, including HTTP/2 Rapid Reset which affected most HTTP/2 implementations.

On a personal note (from @mholt): I recently became a dad! I want to thank our maintainers for helping in so many ways while I've been taking extra time for family. Francis, Matthew, Mohammed, and others -- including all the contributors below, and then some -- are to thank for shipping this release.

Highlights

  • Updated https://github.com/quic-go/quic-go from v0.37.5 to v0.39.0, including many performance improvements. GSO and ECN are now enabled by default, but you may turn them off by setting the QUIC_GO_DISABLE_GSO=true and QUIC_GO_DISABLE_ECN=true environment variables respectively, if they cause you problems. See the quic-go release notes for more details.
  • The file server's fileserver.BrowseTemplate is now exported, so it may be customized by programs embedding Caddy. (ed8bb13)
  • Environment variables loaded with --envfile no longer override existing variables. (#5803)
  • The encode handler now compresses application/wasm* content types by default. (#5869)
  • The reverse_proxy handler can now emit very detailed logs for debugging streaming and buffering. To enable it, set the verbose_logs subdirective, and set logging to debug level. Since the logs from this are very noisy, using verbose_logs to opt-in is necessary. We may ask you to enable this when asking for support! (#5793)
  • You can now check the version with caddy -v, like most other CLI utilities! (#5874)

Caddy is on feature freeze until after 2.8 so we can improve our testing situation. These patches have all been tried to ensure they work as intended, but if you notice any issues please report them!

Changelog

  • 0e204b7 admin: Respond with 4xx on non-existing config path (#5870)
  • 89c407a build(deps): bump actions/checkout from 3 to 4 (#5846)
  • 1405683 build(deps): bump goreleaser/goreleaser-action from 4 to 5 (#5847)
  • 38a7b6b caddyfile: Adjust error formatting (#5765)
  • 7103ea0 caddyfile: Fix case where heredoc marker is empty after newline (#5769)
  • 10053f7 caddyfile: Loosen heredoc parsing (#5761)
  • 58ab3a0 caddyhttp: Use LimitedReader for HTTPRedirectListener (thank you to Bartek Nowotarski for reporting)
  • 9c419f1 cmd: Fix exiting with custom status code, add caddy -v (#5874)
  • f2ab709 cmd: Prevent overwriting existing env vars with --envfile (#5803)
  • e0aaefa encode: Add application/wasm* to the default content types (#5869)
  • fa5a579 fileserver: Add command shortcuts -l and -a (#5854)
  • ed8bb13 fileserver: Export BrowseTemplate
  • 130f6d1 fileserver: Set canonical URL on browse template (#5867)
  • a306c5f fileserver: browse template SVG icons and UI tweaks (#5812)
  • 0a6d333 fileserver: docs: clarify the ability to produce JSON array with browse (#5751)
  • 82c356f fix: caddytest.AssertResponseCode error message (#5853)
  • 888c6d7 go.mod: Update quic-go to v0.38.0 (#5772)
  • 88b4fbf go.mod: Upgrade dependencies incl. x/net/http
  • df99502 httpcaddyfile: Enable TLS for catch-all site if tls directive is specified (#5808)
  • 33d8d2c httpcaddyfile: Sort TLS SNI matcher for deterministic JSON output (#5860)
  • 288216e httpcaddyfile: Stricter errors for site and upstream address schemes (#5757)
  • 2cac3c5 httpcaddyfile: fix placeholder shorthands in named routes (#5791)
  • c46ec3b logging: Clone array on log filters, prevent side-effects (#5786)
  • 1b73e38 logging: query filter for array of strings (#5779)
  • 4776f62 replacer: change timezone to UTC for "time.now.http" placeholders (#5774)
  • a8586b0 reverseproxy: Add logging for dynamic A upstreams (#5857)
  • 3a3182f reverseproxy: Add more debug logs (#5793)
  • 4feac4d reverseproxy: Allow fallthrough for response handlers without routes (#5780)
  • e8b8d4a reverseproxy: Fix least_conn policy regression (#5862)
  • 2a6859a reverseproxy: Fix retries on "upstreams unavailable" error (#5841)
  • 05dbe1c reverseproxy: Replace health header placeholders (#5861)
  • 1e0dea5 reverseproxy: fix nil pointer dereference in AUpstreams.GetUpstreams (#5811)
  • b245ecd reverseproxy: fix parsing Caddyfile fails for unlimited request/response buffers (#5828)
  • 5653c36 templates: Add dummy RemoteAddr to httpInclude request, proxy compatibility (#5845)
  • 289934f tls: Add X25519Kyber768Draft00 PQ "curve" behind build tag (#5852)

New Contributors

Full Changelog: v2.7.4...v2.7.5

Don't miss a new caddy release

NewReleases is sending notifications on new releases.