NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules
Last release today
14 Oct 2026
Ships on a steady schedule
a new release about every 9 days
Some releases are documented
notes for 20 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
8 years old
2336 releases · first in 2019
Upgrade envoy module dependencies to version 1.27.7, 1.28.5 and 1.29.7 or higher to resolve CVE-2024-39305 [GH-21524]
SECURITY:
IMPROVEMENTS:
BUG FIXES:
tag.name.service.consul, were being disregarded. [GH-21361]One column per quarter.
Upgrade to support Envoy 1.27.5 and 1.28.3. This resolves CVE CVE-2024-32475 (auto_sni). [GH-21017]
BREAKING CHANGES:
consul element in the metric name have been removed. Please use the same metric without the second consul instead. As an example instead of consul.consul.state.config_entries use consul.state.config_entries [GH-20674]SECURITY:
1.27.5 and 1.28.3. This resolves CVE
CVE-2024-32475 (auto_sni). [GH-21017]v0.18.7 or higher. This resolves CVE
CVE-2020-8559. [GH-21017]FEATURES:
v1dns in the experiments agent config to disable.
The legacy server will be removed in a future release of Consul.
See the Consul 1.19.x Release Notes for removed DNS features. [GH-20715]IMPROVEMENTS:
github.com/envoyproxy/go-control-plane to 0.12.0. [GH-20973]consul-dataplane now accepts partition, namespace, token as metadata to default those query parameters.
consul-dataplane v1.5+ will send this information automatically. [GH-20899]consul snapshot decode CLI command to output a JSON object stream of all the snapshots data. [GH-20824]telemetry.disable_per_tenancy_usage_metrics in agent configuration to disable setting tenancy labels on usage metrics. This significantly decreases CPU utilization in clusters with many admin partitions or namespaces.DEPRECATIONS:
local_storage, aws_storage, azure_blob_storage, and google_storage in snapshot agent configuration files are now deprecated. Use the backup_destinations config object instead.BUG FIXES:
Update vault/api to v1.12.2 to address CVE-2024-28180 (removes indirect dependency on impacted go-jose.v2) [GH-20910]
Enterprise LTS: Consul Enterprise 1.18 is a Long-Term Support (LTS) release.
SECURITY:
alpine:3.19. [GH-20897]vault/api to v1.12.2 to address CVE-2024-28180
(removes indirect dependency on impacted go-jose.v2) [GH-20910]1.26.8, 1.27.4, 1.27.5, 1.28.2 and 1.28.3. This resolves CVEs
CVE-2024-27919 (http2). [GH-20956] and CVE-2024-32475 (auto_sni). [GH-21030]v0.18.7 or higher. This resolves CVE
CVE-2020-8559. [GH-21034]1.21.9. This resolves CVE
CVE-2023-45288 (http2). [GH-20956]v0.24.0. This resolves CVE
CVE-2023-45288 (x/net). [GH-20956]IMPROVEMENTS:
BUG FIXES:
DefaultForFailover.
DNS requests against sameness groups without this field set will now error as intended.Update google.golang.org/protobuf to v1.33.0 to address CVE-2024-24786. [GH-20801]
Enterprise LTS: Consul Enterprise 1.18 is a Long-Term Support (LTS) release.
BREAKING CHANGES:
SECURITY:
google.golang.org/protobuf to v1.33.0 to address CVE-2024-24786. [GH-20801]alpine3.19. This resolves CVEs
CVE-2023-52425
CVE-2023-52426 [GH-20812]1.21.8. This resolves CVEs
CVE-2024-24783 (crypto/x509).
CVE-2023-45290 (net/http).
CVE-2023-45289 (net/http, net/http/cookiejar).
CVE-2024-24785 (html/template).
CVE-2024-24784 (net/mail). [GH-20812]IMPROVEMENTS:
backup_destinations config file object.BUG FIXES:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Update golang.org/x/crypto to v0.17.0 to address CVE-2023-48795. [GH-20023]
BREAKING CHANGES:
telemetry.disable_hostname when determining whether to prefix gauge-type metrics with the hostname of the Consul agent. Previously, if only the default metric sink was enabled, this configuration was ignored and always treated as true, even though its default value is false. [GH-20312]SECURITY:
golang.org/x/crypto to v0.17.0 to address CVE-2023-48795. [GH-20023]FEATURES:
v2dns in the experiments agent config to enable.
It will automatically be enabled when using the resource-apis (Catalog v2) experiment.
The new DNS implementation will be the default in Consul 1.19.
See the Consul 1.18.x Release Notes for deprecated DNS features. [GH-20643]IMPROVEMENTS:
envoy.config.core.v3.HeaderValueOption.append. [GH-20078]envoy.config.route.v3.HeaderMatcher.safe_regex_match and envoy.type.matcher.v3.RegexMatcher.google_re2. [GH-20013]BUG FIXES:
Update golang.org/x/net to v0.17.0 to address CVE-2023-39325 / CVE-2023-44487(x/net/http2). [GH-19225]
BREAKING CHANGES:
DEPRECATIONS:
-admin-access-log-path flag from consul connect envoy command in favor of: -admin-access-log-config. [GH-15946]SECURITY:
golang.org/x/net to v0.17.0 to address CVE-2023-39325
/ CVE-2023-44487(x/net/http2). [GH-19225]net/http). [GH-19225]google.golang.org/grpc to 1.56.3.
This resolves vulnerability CVE-2023-44487. [GH-19414]FEATURE PREVIEW: Catalog v2
This release provides the ability to preview Consul's v2 Catalog and Resource API if enabled. The new model supports multi-port application deployments with only a single Envoy proxy. Note that the v1 and v2 catalogs are not cross compatible, and not all Consul features are available within this v2 feature preview. See the v2 Catalog and Resource API documentation for more information. The v2 Catalog and Resources API should be considered a feature preview within this release and should not be used in production environments.
Limitations
Significant Pull Requests
FEATURES:
acl.tokens.dns config field which specifies the token used implicitly during dns checks. [GH-17936]bind-var flag to consul acl binding-rule for templated policy variables. [GH-18719]consul acl templated-policy commands to read, list and preview templated policies. [GH-18816]IMPROVEMENTS:
CheckRegisterOpts to Agent API [GH-18943]Token field to ServiceRegisterOpts type in Agent API [GH-18983]-templated-policy, -templated-policy-file, -replace-templated-policy, -append-templated-policy, -replace-templated-policy-file, -append-templated-policy-file and -var flags for creating or updating tokens/roles. [GH-18708]tls.defaults.verify_server_hostname configuration option. This specifies the default value for any interfaces that support the verify_server_hostname option. [GH-17155]BUG FIXES:
/v1/catalog/services endpoint [GH-18322]performance.grpc_keepalive_timeout and performance.grpc_keepalive_interval now exist to allow for configuration on how often these dead connections will be cleaned up. [GH-19339]peering: Removed deprecated backward-compatibility behavior. Upstream overrides in service-defaults will now only apply to peer upstreams when the pee…
KNOWN ISSUES:
BREAKING CHANGES:
/v1/health/connect/ and /v1/health/ingress/ endpoints now immediately return 403 "Permission Denied" errors whenever a token with insufficient service:read permissions is provided. Prior to this change, the endpoints returned a success code with an empty result list when a token with insufficient permissions was provided. [GH-17424]peer field is provided.
Visit the 1.16.x upgrade instructions for more information. [GH-16957]SECURITY:
alpine:3.18. [GH-17719]v1/operator/audit-hash endpoint to ACL token with operator:read privileges.FEATURES:
POST /v1/operator/audit-hash endpoint to calculate the hash of the data used by the audit log hash function and salt.consul operator audit hash command to retrieve and compare the hash of the data used by the audit log hash function and salt.consul services export - for exporting a service to a peer or partition [GH-15654]AllowEnablingPermissiveMutualTLS setting to the mesh config entry and the MutualTLSMode setting to proxy-defaults and service-defaults. [GH-17035]property-override built-in Envoy extension that directly patches Envoy resources. [GH-17487]IMPROVEMENTS:
-filter option to consul config list for filtering config entries. [GH-17183]datacenter, ap (enterprise-only), and namespace (enterprise-only). Both short-hand and long-hand forms of these query params are now supported via the HTTP API (dc/datacenter, ap/partition, ns/namespace). [GH-17525]BUG FIXES:
…set to outbound in extension configuration. See CVE-2023-2816 changelog entry for more details. [GH-17415]
BREAKING CHANGES:
SECURITY:
go/scanner),
CVE-2023-24538(html/template),
CVE-2023-24534(net/textproto) and
CVE-2023-24536(mime/multipart).
Also, golang.org/x/net has been updated to v0.7.0 to resolve CVEs CVE-2022-41721
, CVE-2022-27664 and [CVE-2022-41723
](https://github.com/advisories/GHSA-vvpx-j8f3-3w6h
.) [GH-17240]FEATURES:
IMPROVEMENTS:
MaxEjectionPercent and BaseEjectionTime to passive health check configs. [GH-15979]agent.server.snapshot to agent.server.raft.snapshot [GH-17236]BUG FIXES:
reflect: call of reflect.Value.Type on zero Value. [GH-17048]api module representation of a namespace.
This fixes an error with the consul namespace list command when a namespace has a deferred deletion timestamp.xds: Allow for configuring connect proxies to send service mesh telemetry to an HCP metrics collection service. [GH-16585]
FEATURES:
BUG FIXES:
/agent/monitor and /agent/metrics endpoints return a Streaming not supported error when audit logs are enabled. This also fixes the delay receiving logs when running consul monitor against an agent with audit logs enabled. [GH-16700]service:write access in the default namespace to query data, which was too restrictive. Now having service:write to any namespace is sufficient to query the peering data.cli: Deprecate the -merge-node-identites and -merge-service-identities flags from the consul token update command in favor of: -append-node-identity a…
IMPROVEMENTS:
-append-policy-id, -append-policy-name, -append-role-name, and -append-role-id flags to the consul token update command.
These flags allow updates to a token's policies/roles without having to override them completely. [GH-16288]-append-service-identity and -append-node-identity flags to the consul token update command.
These flags allow updates to a token's node identities/service identities without having to override them. [GH-16506]DEPRECATIONS:
-merge-node-identites and -merge-service-identities flags from the consul token update command in favor of: -append-node-identity and -append-service-identity. [GH-16506]-merge-policies and -merge-roles flags from the consul token update command in favor of: -append-policy-id, -append-policy-name, -append-role-name, and -append-role-id. [GH-16288]BUG FIXES:
consul connect envoy where a log to STDOUT could malform JSON when used with -bootstrap. [GH-16530]consul connect envoy where grpc-disabled agents were not error-handled correctly. [GH-16530]Upgrade to use Go 1.20.1. This resolves vulnerabilities CVE-2022-41724 in crypto/tls and CVE-2022-41723 in net/http. [GH-16263]
KNOWN ISSUES:
BREAKING CHANGES:
-join, -join-wan, start_join, and start_join_wan.
These options are now aliases of -retry-join, -retry-join-wan, retry_join, and retry_join_wan, respectively. [GH-15598]peer field to service-defaults upstream overrides. The addition of this field makes it possible to apply upstream overrides only to peer services. Prior to this change, overrides would be applied based on matching the namespace and name fields only, which means users could not have different configuration for local versus peer services. With this change, peer upstreams are only affected if the peer field matches the destination peer name. [GH-15956]consul connect envoy command if the Envoy version is incompatible. To ignore this check use flag --ignore-envoy-compatibility [GH-15818]connect.enable_serverless_plugin agent configuration option. Now
Lambda integration is enabled by default. [GH-15710]SECURITY:
crypto/tls and CVE-2022-41723 in net/http. [GH-16263]FEATURES:
acl.tokens.config_file_registration config field which specifies the token used
to register services and checks that are defined in config files. [GH-15828]consul troubleshoot upstreams and consul troubleshoot proxy to troubleshoot Consul's service mesh configuration and network issues. [GH-16284]operator usage instances subcommand for displaying total services, connect service instances and billable service instances in the local datacenter or globally. [GH-16205]proxy-defaults config entry. [GH-15864]consul namespace. [GH-15906]IMPROVEMENTS:
consul connect envoy command the Envoy version will now be checked for compatibility. If incompatible Consul will error and exit. [GH-15818]RESOURCE_EXHAUSTED responses [GH-15892]acl bootstrap command. [GH-14437]_<query id or name>._tcp.query[.<datacenter>].<domain>. [GH-14465]wal backend for log storage. [GH-16176]consul.xds.server.streamsUnauthenticated metric to track
the number of active xDS streams handled by the server that are unauthenticated
because ACLs are not enabled or ACL tokens were missing. [GH-15967]DEPRECATIONS:
token query parameter and warn when it is used for authentication. [GH-16009]-id flag on acl token operations has been changed to -accessor-id for clarity in documentation. The -id flag will continue to work, but operators should use -accessor-id in the future. [GH-16044]BUG FIXES:
Nothing published for this version
Ensure that data imported from peers is filtered by ACLs at the UI Nodes/Services endpoints CVE-2022-3920 [GH-15356]
KNOWN ISSUES:
consul connect envoy incorrectly enables TLS for gRPC connections when the HTTP API is TLS-enabled.BREAKING CHANGES:
ports.grpc_tls configuration option.
Introduce a new port to better separate TLS config from the existing ports.grpc config.
The new ports.grpc_tls only supports TLS encrypted communication.
The existing ports.grpc now only supports plain-text communication. [GH-15339]peering and connect by default. [GH-15302]PeerName to Peer on prepared queries and exported services. [GH-14854]SECURITY:
FEATURES:
-consul-dns-port flag to the consul connect redirect-traffic command to allow forwarding DNS traffic to a specific Consul DNS port. [GH-15050]server_type=internal|external label to gRPC metrics. [GH-14922]get-or-empty operation to the txn api. Refer to the API docs for more information. [GH-14474]iptables to forward DNS traffic to a specific DNS port. [GH-15050]IMPROVEMENTS:
xds.update_max_per_second config field) [GH-14960]Failovers and Redirects only
specify Partition and Namespace on Consul Enterprise. This prevents scenarios
where OSS Consul would save service-resolvers that require Consul Enterprise. [GH-14162]RetryOn field for specifying the conditions when Envoy should retry requests beyond specific status codes and generic connection failure which already exists. [GH-12890]<servicename>.virtual.<namespace>.ns.<partition>.ap.<peername>.peer.consul and <servicename>.virtual.<partition>.ap.<peername>.peer.consul. This longer form address that allows specifying .peer would need to be used for tproxy DNS requests made within non-default partitions for imported services.[<tag>.]<service>.service[.<namespace>.ns][.<partition>.ap][.<datacenter>.dc]<domain>. [GH-14679]consul.xds.server.streamStart metric to measure time taken to first generate xDS resources for an xDS stream. [GH-14957]max_ejection_percent on Envoy's outlier detection to 100% for peered services. [GH-14373]alpn_protocols for connect-proxy and ingress-gateway based on service protocol. [GH-14356]BUG FIXES:
NOTES:
Nothing published for this version
agent: Fixed a compatibility issue when restoring snapshots from pre-1.13.0 versions of Consul [GH-14107] [GH-14149]
Nothing published for this version
Nothing published for this version
config-entry: Exporting a specific service name across all namespace is invalid.
BREAKING CHANGES:
telemetry { disable_compat_1.9 = (true|false) } has been removed. Before upgrading you should remove this flag from your config if the flag is being used. [GH-13532]FEATURES:
consul version commands
to report this. Agent also reports build date in log on startup. [GH-13357]Sign [GH-12787]destination field to the service-default config entry that allows routing egress traffic
through a terminating gateway in transparent proxy mode without modifying the catalog. [GH-13613]ingress-gateway, mesh, service-intentions and service-resolver config entry events. [GH-13658]IMPROVEMENTS:
merge-central-config query parameter support added to /catalog/node-services/:node-name API, to view a fully resolved service definition (especially when not written into the catalog that way). [GH-13450]merge-central-config query parameter support added to /catalog/node-services/:node-name API, to view a fully resolved service definition (especially when not written into the catalog that way). [GH-2046]merge-central-config query parameter support added to some catalog and health endpoints to view a fully resolved service definition (especially when not written into the catalog that way). [GH-13001]consul connect envoy command.
Adds the -prometheus-ca-file, -prometheus-ca-path, -prometheus-cert-file and -prometheus-key-file flags. [GH-13481]max_inbound_connections setting to service-defaults for limiting the number of concurrent inbound connections to each service instance. [GH-13143]consul.raft.thread.main.saturation and consul.raft.thread.fsm.saturation metrics to measure approximate saturation of the Raft goroutines [GH-12865]BUG FIXES:
acl token read is used with the -self and -expanded flags, return an error instead of panicking [GH-13787]Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
deps: update to latest go-discover to fix vulnerable transitive jwt-go dependency [GH-12739]
BREAKING CHANGES:
ACLMasterToken, renamed Master to InitialManagement, and AgentMaster to AgentRecovery) [GH-11827]consul.http... metrics can still be enabled by setting disable_compat_1.9 = false. However, we will remove these metrics in 1.13. [GH-12675]FEATURES:
WatchRoots [GH-12678]token read command now supports the -expanded flag to display detailed role and policy information for the token. [GH-12670]auto-reload-config CLI flag or auto_reload_config config option. [GH-12329]Meta is returned with the response to the ConfigEntry.ResolveServiceConfig RPC. [GH-12529]tls stanza [GH-12504]IMPROVEMENTS:
STSRegion field was removed from the auth method config. [GH-12774]autopilot.healthy and autopilot.failure_tolerance metrics are now
regularly emitted by all servers. [GH-12617]consul.raft.boltdb.writeCapacity metric was added and indicates a theoretical number of writes/second that can be performed to Consul. [GH-12646]Partition and RetryJoin to the TestServerConfig struct. [GH-12126]leader label to consul.rpc.server.call and optional target_datacenter, locality,
allow_stale, and blocking optional labels. [GH-12727]DEPRECATIONS:
consul.acl.ResolveTokenToIdentity metric is no longer reported. The values that were previous reported as part of this metric will now be part of the consul.acl.ResolveToken metric. [GH-12166]cert_file, key_file, ca_file, ca_path, tls_min_version, tls_cipher_suites, verify_incoming, verify_incoming_rpc, verify_incoming_https, verify_outgoing and verify_server_hostname at the top-level is now deprecated, use the tls stanza instead [GH-12504]BUG FIXES:
NOTES:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
…in the default namespace. This change fixes CVE-2021-41805.
BREAKING CHANGES:
consul acl set-agent-token master has been replaced with consul acl set-agent-token recovery [GH-11669]SECURITY:
acl:write permission in the default namespace. This change fixes CVE-2021-41805.FEATURES:
IMPROVEMENTS:
X-Consul-Results-Filtered-By-ACLs header [GH-11569]-cas and -modify-index flags to the consul config delete command to support Check-And-Set (CAS) deletion of config entries [GH-11419]dns_config.recursor_strategy flag to control the order which DNS recursors are queried [GH-10611]virtual endpoint for querying the assigned virtual IP for a service. [GH-11725]agent.tls.cert.expiry metric for tracking when the Agent TLS certificate expires. [GH-10768]mesh.active-root-ca.expiry metric for tracking when the root certificate expires. [GH-9924]- to _ [GH-11801]DEPRECATIONS:
/v1/agent/token/agent_master is deprecated and will be removed in a future major release - use /v1/agent/token/agent_recovery instead [GH-11669]acl.tokens.master has been renamed to acl.tokens.initial_management, and acl.tokens.agent_master has been renamed to acl.tokens.agent_recovery - the old field names are now deprecated and will be removed in a future major release [GH-11665]tls_cipher_suites will no longer be honored, and tls_prefer_server_cipher_suites is now ignored. [GH-11364]BUG FIXES:
/v1/operator/autopilot/configuration) [GH-10558] [GH-10559]license_path setting in config filesService.Namespace into available variables for dashboard_url_templates [GH-11640]NOTES:
agent_master field to agent_recovery in the acl-tokens.json file in which tokens are persisted on-disk (when acl.enable_token_persistence is enabled) [GH-11744]xds: ensure envoy verifies the subject alternative name for upstreams CVE-2021-32574 [GH-10621]
KNOWN ISSUES:
use_streaming_backend=false if using WAN federation over mesh gateways when upgrading to 1.10.1 and are working to address this issue in a future patch release.SECURITY:
FEATURES:
redirect-traffic command in a provided Linux namespace. [GH-10564]iptables rules in a provided Linux namespace. [GH-10564]IMPROVEMENTS:
acl:write [GH-10546]DEPRECATIONS:
RotationPeriod field from the Consul CA provider, it was not used for anything. [GH-10552]BUG FIXES:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →