Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Created by
brew bump
Created with
brew bump-formula-pr
.resource
blocks have been checked for updates.release notes
email
global option. (We have already recommended this for years.) If you already do this, you don't have to make any changes and you'll still get Let's Encrypt and ZeroSSL automatically as defaults.acme
issuer with youremail
filled out, and theca
field set to ZeroSSL's ACME server URL.zerossl
issuer module is no longer ACME-capable and is now exclusively for the ZeroSSL API. An API key from your ZeroSSL account is required. (The ZeroSSL ACME server can still be used with theacme
module pointed to ZeroSSL's ACME server. You can provide your account email and/or EAB as well.) If you were using the ZeroSSL issuer with an API key, it will now start using ZeroSSL's API, which was probably the expected behavior anyways. The API has several advantages over the ACME endpoint, but may require payment:lego_deprecated
DNS provider module. It has been deprecated for 4 years. Usecaddy-dns
modules instead; there are over 50 to choose from already. They are more flexible, compile much leaner, and are easier to implement and support. If yours is not supported it can be easily implemented. Sponsors at or above the Business tier can request to have their provider implemented for free.ask
option in the JSON has been deprecated in favor of a permission module (Caddyfile unchanged) (#6055), and Caddyfile support forpermission
modules is added (6a02999)Etag
(used for concurrency control) is now a header, not a trailer. This is less efficient, but virtually no clients properly implement trailer support.basicauth
Caddyfile directive has been renamed tobasic_auth
(#6092), andskip_log
has been renamed tolog_skip
. The old names will continue to work for now, with a deprecation warning in the logs. (#6066).basic_auth
handler no longer supportsscrypt
(deprecated for nearly two years) (#6091)forwarded
option has been deprecated for a long time and has now been removed from theremote_ip
matcher. Use theclient_ip
matcher instead. (#6085)buffer_requests
,buffer_responses
, andmax_buffer_size
settings have been removed after being deprecated for 14 months. Userequest_buffers
andresponse_buffers
instead if you need buffering.caddy.Context.AppIfConfigured()
, it now returns an error, as part of a bug fix. (#6292)Notable changes:
--adapter
flag is not needed for config files ending with.caddyfile
(#5919)zstd
(#6140)fs
directive can declare a file system plugin to use (#5057)["REDACTED"]
instead of empty array. (#5669)log_append
handler can add fields to the access logs (#6066)uuid
field to access logs when the{http.request.uuid}
placeholder is used (#5859){file.*}
global placeholder is available, where*
is a path to a file on disk which contains a value (generally used for secrets) (#5463)*
matcher token is no longer required in the Caddyfile (#5844)local_ip
connection matcher (#6074)ask
endpoint into apermission
module, making it pluggable (#6055)uri query
(#6120, #6165)Changelog
Full Changelog: caddyserver/caddy@v2.7.6...v2.8.0
sign_with_root
for Caddyfile (#6345)Etag
a header, not a trailer (#6208)scrypt
(#6091)basicauth
tobasic_auth
(#6092)fmt
command (#6056):
(#5883)uuid
to access logs when used (#5859)file_server browse
(#6093)scheme
placeholder docs (#5910)header
replacement with empty string (#6163)%2F
and%252F
(#6084)caddy respond
command (#6010)*.caddyfiletest
extension (#6119)nobadger
to exclude badgerdb (#6031)Usage
section (#6138)ctx.Slogger()
which returns anslog
logger (#5945)fs
directive (#5833)RegisterDirectiveOrder
function for plugin authors (#5865)handle_errors
directive (#5965)skip_log
in directive order (#6153)root
andrewrite
parsing to allow omitting matcher (#5844)zap.Option
support (#5944)wrap
default forfilter
encoder (#5980)append
encoder, allow flatter filters config (#6069)log_append
handler (#6066)ip_mask
filter (#6094)ms
duration format and add docs (#6187)forwarded
option fromremote_ip
matcher (#6085)query
matcher now ANDs multiple keys (#6054)file.*
global replacements (#5463)tls_curves
option to HTTP transport (#5851)uri query
operations (#6120)uri query
replace operation (#6165)include
args docs, add.ClientIP
(#5898)httpError
to reset to clean slate (#5905)pathEscape
template function and use it in file browser (#6278)http.vars.trace_id
placeholder) (#6308)http.auth.user.id
in replacer as a special case (#6108)"<nil>"
(#6174)New Contributors
precompressed
flag to command caddyserver/caddy#5880caddy respond
command caddyserver/caddy#6010fs
directive caddyserver/caddy#5833fmt
command caddyserver/caddy#6056file_server browse
caddyserver/caddy#6093zstd
compression level support caddyserver/caddy#6140health_follow_redirects
caddyserver/caddy#6302pathEscape
template function and use it inbrowse.html
caddyserver/caddy#6278sign_with_root
for Caddyfile caddyserver/caddy#6345