Upgrading to Varnish 7.2
varnishd
Parameters
The following parameters are deprecated:
vcc_allow_inline_cvcc_err_unrefvcc_unsafe_path
They can still be set as individual boolean parameters. The deprecated aliases will be removed in a future release.
They are replaced by the vcc_feature bits parameter:
allow_inline_cerr_unref(enabled by default)unsafe_path(enabled by default)
The following commands are equivalent:
param.set vcc_err_unref off
param.set vcc_feature -err_unref
Identity
The server identity must be a valid HTTP token, which may pose a problem
to existing setups. For example varnishd -i "edge server 1" is no
longer accepted. You can use something like varnishd -i "edge-server-1"
instead.
VCL
Varnish generates a Via header and forwards it to the backend by default.
This can be prevented for example in vcl_recv or vcl_backend_fetch.
sub vcl_recv {
unset req.http.via;
}
sub vcl_backend_fetch {
unset bereq.http.via;
}
The Via header is generated with the server.identity variable for
the received-by field. See rfc9110_ for a description of the Via
header.
A resp.http.via header is no longer overwritten by varnish, but
rather appended to.
VMODs
Cookies generated by vmod_cookie used to have a trailing semi-colon that goes against the recommendations from rfc6265. This should not pose a problem, unless a piece of VCL code or a backend have come to rely on this incorrect behavior.
varnishlog
The Begin and Link log records have an optional 4th field for the
sub-request level. This may break log processors, log queries or NCSA
formats that expect those records to have exactly 3 fields.
varnishstat
The MAIN.fetch_no_thread counter is gone, it never worked. Track the
MAIN.bgfetch_no_thread counter instead.
Changes for developers and VMOD authors
The functions VRT_AddVDP(), VRT_AddVFP(), VRT_RemoveVDP() and
VRT_RemoveVFP() are deprecated. Use VRT_AddFilter() to add a pair
(VFP and VDP) and VRT_RemoveFilter() to remove it. A filter pair needs
at least one member of the pair.
The varnishtest -i option no longer works outside of a Varnish source
tree. There shouldn’t be a reason to use -i outside of the Varnish
test suite.
eof