Subject: CVS commit: pkgsrc/sysutils/consul
From: Filip Hajny
Date: 2016-10-26 15:49:17
Message id: 20161026134917.89AB8FBD2@cvs.NetBSD.org

Log Message:
Update sysutils/consul to 0.7.0

BREAKING CHANGES:
- The default behavior of leave_on_terminate and skip_leave_on_interrupt are
  now dependent on whether or not the agent is acting as a server or client.
- The allow_stale configuration for DNS queries to the Consul agent now
  defaults to true, allowing for better utilization of available Consul
  servers and higher throughput at the expense of weaker consistency.
- Output from HTTP checks is truncated to 4k when stored on the servers,
  similar to script check output.
- Consul's Go API client will now send ACL tokens using HTTP headers instead
  of query parameters, requiring Consul 0.6.0 or later.
- Removed support for protocol version 1, so Consul 0.7 is no longer
  compatible with Consul versions prior to 0.3.
- The Raft peers information in consul info has changed format and includes
  information about the suffrage of a server, which will be used in future
  versions of Consul.
- New translate_wan_addrs behavior from [GH-2118] translates addresses in
  HTTP responses and could break clients that are expecting local addresses.
- The behavior of the peers.json file is different in this version of
  Consul. This file won't normally be present and is used only during outage
  recovery.
- Consul's default Raft timing is now set to work more reliably on
  lower-performance servers, which allows small clusters to use lower cost
  compute at the expense of reduced performance for failed leader detection
  and leader elections.

FEATURES:
- Transactional Key/Value API: A new /v1/txn API was added that allows for
  atomic updates to and fetches from multiple entries in the key/value store
  inside of an atomic transaction.
- Native ACL Replication: Added a built-in full replication capability for
  ACLs.
- Server Connection Rebalancing: Consul agents will now periodically
  reconnect to available Consul servers in order to redistribute their RPC
  query load.
- Raft Updates and Consul Operator Interface: This version of Consul
  upgrades to "stage one" of the v2 HashiCorp Raft library.
- Consul's default Raft timing is now set to work more reliably on
  lower-performance servers, which allows small clusters to use lower cost
  compute at the expense of reduced performance for failed leader detection
  and leader elections.
- Servers will now abort bootstrapping if they detect an existing cluster
  with configured Raft peers.
- Added new consul operator command, HTTP endpoint, and associated ACL to
  allow Consul operators to view and update the Raft configuration.
- Serf Lifeguard Updates: Implemented a new set of feedback controls for the
  gossip layer that help prevent degraded nodes that can't meet the soft
  real-time requirements from erroneously causing serfHealth flapping in
  other, healthy nodes
- Prepared Query Near Parameter: Prepared queries support baking in a new
  Near sorting parameter.
- Automatic Service Deregistration: Added a new
  deregister_critical_service_after timeout field for health checks which
  will cause the service associated with that check to get deregistered if the
  check is critical for longer than the timeout.
- WAN Address Translation Everywhere: Extended the translate_wan_addrs
  config option to also translate node addresses in HTTP responses, making
  it easy to use this feature from non-DNS clients.
- RPC Retries: Consul will now retry RPC calls that result in "no leader"
  errors for up to 5 seconds.
- Circonus Telemetry Support: Added support for Circonus as a telemetry
  destination.

IMPROVEMENTS:
- agent: Reap time for failed nodes is now configurable via new
  reconnect_timeout and reconnect_timeout_wan config options (use with
  caution).
- agent: Joins based on a DNS lookup will use TCP and attempt to join with
  the full list of returned addresses.
- agent: Consul will now refuse to start with a helpful message if the same
  UNIX socket is used for more than one listening endpoint.
- agent: Removed an obsolete warning message when Consul starts on Windows.
- agent: Defaults bind address to 127.0.0.1 when running in -dev mode.
- agent: Added version information to the log when Consul starts up.
- agent: Added timing metrics for HTTP requests in the form of
  consul.http.<verb>.<path>.
- build: Updated all vendored dependencies.
- build: Consul releases are now built with Go 1.6.3.
- checks: Script checks now support an optional timeout parameter.
- checks: HTTP health checks limit saved output to 4K to avoid performance
  issues.
- cli: Added a -stale mode for watchers to allow them to pull data from any
  Consul server, not just the leader.
- dns: Consul agents can now limit the number of UDP answers returned via
  the DNS interface.
- dns: Consul now compresses all DNS responses by default.
- dns: Added a new recursor_timeout configuration option to set the timeout
  for Consul's internal DNS client that's used for recursing queries to
  upstream DNS servers.
- dns: Added a new -dns-port command line option so this can be set without
  a config file.
- ui: Added a new network tomography visualization to the UI.

BUG FIXES:
- agent: Fixed an issue where a health check's output never updates if the
  check status doesn't change after the Consul agent starts.
- agent: External services can now be registered with ACL tokens.
- agent: Fixed an issue where large events affecting many nodes could cause
  infinite intent rebroadcasts, leading to many log messages about intent
  queue overflows.
- agent: Gossip encryption keys are now validated before being made
  persistent in the keyring, avoiding delayed feedback at runtime.
- dns: Fixed an issue where DNS requests for SRV records could be
  incorrectly trimmed, resulting in an ADDITIONAL section that was out of
  sync with the ANSWER.
- dns: Fixed two issues where DNS requests for SRV records on a prepared
  query that failed over would report the wrong domain and fail to translate
  addresses.
- server: Fixed a deadlock related to sorting the list of available
  datacenters by round trip time.
- server: Fixed an issue with the state store's immutable radix tree that
  would prevent it from using cached modified objects during transactions,
  leading to extra copies and increased memory / GC pressure.
- server: Upgraded Bolt DB to v1.2.1 to fix an issue on Windows where Consul
  would sometimes fail to start due to open user-mapped sections.

Files:
RevisionActionfile
1.5modifypkgsrc/sysutils/consul/Makefile
1.2modifypkgsrc/sysutils/consul/distinfo