NATS v2.0.0 Release Notes
Release Date: 2019-06-05 // almost 5 years ago-
๐ Changelog
Go Version
- ๐ 1.11.10: Both release executables and Docker images are built with this Go release.
Backward incompatibility
- ๐ The routing protocol has been dramatically improved and adds support for accounts and multi-tenancy. The new protocol is not backward compatible with servers <2.0.0.
- For users embedding NATS Server and using
Varz()
to get server statistics should be aware of some changes described in #989
๐ Changed
- Repository and server name have changed: gnatsd becomes nats-server (#985)
With go.mod, users embedding NATS Server should change their import path to include
/v2
. For instance:import (
natsd "github.com/nats-io/nats-server/v2/server"
)
๐ Cluster permissions moved out of cluster's authorization section (#747)
๐ The utility mkpasswd.go file was moved to its own directory
util/mkpasswd
to enablego get
to install this tool (#996)
โ Added
- ๐ NKey support (#743)
- ๐ Accounts support (#755)
- ๐ JWT Support (#804)
- Gateways (#808)
- Leaf Nodes (#928)
- System events (#823)
- ๐ Support of TLS certificate subject for users authentication (#896, #909)
- ๐ Support of SANs in TLS certificate for user permissions. Thanks to @twrobel3 for the report (#966)
- Ability to disable TLS server name verification for routes. Thanks to @softkot for the contribution (#921)
- Ability to explicitly set server name for TLS in Gateways. Thanks to @danielsdeleo for the contribution (#922)
- ๐ง Configuration check with
-t
command line parameter (#745) - ๐ Support for route permissions configuration reload (#753)
- Lame duck mode (#780)
- ๐ Support for path as argument to
--signal
. Thanks to @pires for the contribution (#838) - ๐ฆ Expose connection remote address in
ClientAuthentication
. Thanks to @ripienaar for the contribution (#837) ntp.service
dependency to the systemd service file. Thanks to @andyxning for the contribution (#880)- ๐ง Configuration parameter to select the frequency at which failed route, gateways and leaf nodes connections are reported. Thanks to @santo74 for the feedback (#1000, #1001)
- List or route URLs in
cluster{}
from/varz
endpoint (#1012) - ๐ง Ability to ignore top-level unknown configuration field (#1024)
๐ Improved
- ๐ New route protocol (#786)
- Fan in/out scenarios (#876)
- Various optimizations (#897)
- Utility
mkpasswd
's help output. Thanks to @andyxning for the contribution (#881) - You can now have unquoted strings that start with number (#893)
- ๐ Use of https for README's links. Thanks to @huynq0911 for the contribution (#914)
- ๐ง Warning on plaintext password in configuration and redact them from log statements (#743, #776)
๐ Fixed
- Misleading "Slow Consumer" error message during a TLS Handshake (#836)
- Report "Slow Consumer" only for clients that do complete the connect process (#861)
- ๐ง Configuration reload of boolean flags. Thanks to @sazo for the report (#879)
- ๐ง Runaway process when parsing a configuration file with missing a
}
or)
(#887) - ๐ฐ Don't allow overruns for message payloads. Thanks to @valichek for the report (#889)
- Possible delays in delivering messages (#895)
- Possible slow consumer when routes exchange their subscriptions list (#912)
- ๐ Protocol Parser type safety. Thanks to @nmiculinic for the contribution (#908)
- ๐ง Use of custom authentication with configuration reload. Thanks to @Will2817 for the report (#924)
- ๐ Issue with utility
mkpasswd
on Windows platform. Thanks to @Ryner51 for the report (#935) - โ๏ธ Some typos. Thanks to @huynq0911, @JensRantil for their contributions.
- ๐ Changes to Varz content and fixed race conditions (#989)
Complete Changes