All Versions
14
Latest Version
Avg Release Cycle
112 days
Latest Release
1674 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v1.10.0 Changes
May 14, 2020๐ Changelog
โ Added
Conn.GetClientIP()
returns the client IP as known by the server. Works if connected to server 2.1.6+ (#559)Conn.RTT()
calculates the round trip time between this client and the server (#559)
โก๏ธ Updated
- Protobuf import for encoder (#557)
- ๐ Change default of
Conn.Flush()
from 60 to 10 seconds (#561) - Bump default
MAX_CONTROL_LINE
to 4096 (#567)
๐ Fixed
- Possible panic on connect if discovered server list shrinks in that process. Thanks to @kirill256 for the contribution (#550)
Conn.Request()
withUseOldRequest
option was not returning on connectionConn.Close()
(#558)- โ Added jitter to the reconnection logic (#564)
- Randomize discovered server URLs (unless
NoRandomize()
option is set) (#566)
Complete Changes
-
v1.9.2 Changes
March 30, 2020๐ Changelog
โ Added
- Option to set the reply subject in
nats-pub
example (#539) - The queue group name in
nats-qsub
example (#541)
๐ Improved
- ๐ Reduced lock contention for connections receiving their own messages (#529)
โก๏ธ Updated
- ๐ฆ Dependencies, covering the golang crypto package CVE. Thanks to @KauzClay for the contribution (#548)
๐ Fixed
- ๐ Do not use
sync.Once.Do()
in connection's first request. Thanks to @hubinix for the report (#538)
Complete Changes
- Option to set the reply subject in
-
v1.9.1 Changes
October 31, 2019๐ Changelog
๐ Fixed
- ๐ In preparation for JetStream and support of subject rewriting, a bug was introduced that would cause multiple deliveries when before the delivery should have been only one per response. This affects only v1.9.0 (#528)
Complete Changes
-
v1.9.0 Changes
October 30, 2019๐ Changelog
๐ With the release of Go 1.13.3, the
go get github.com/nats-io/nats.go
is now working!โ Added
- Notes in README on using
go get
and Go modules (#481) NoCallbacksAfterClientClose()
connection option to prevent invocation of connection callback on explicit Close() (#514)
โก๏ธ Updated
- ๐ฒ Examples (log error, use Drain(), etc..)
- Replaced use of
DisconnectHandler
withDisconnectErrHandler
in our examples. Thanks to @kaxap for the contribution (#504)
๐ Improved
- When creating a subscription, error will now be reported if using a bad subject or queue name (#500)
- ๐ Support for
~
when providing the user credentials file(s) (#512)
๐ Fixed
- Document issues. Thanks to @JensRantil for the report.
- Some errors in code examples in the README. Thanks to @thylong for the contribution (#507)
- ๐ Allow synchronous subscriptions to use
msg.Respond()
when `AutoUnsubscribe() is used (#489) - Wrong error returned in
NextMsg()
andNextMsgWithContext()
. Thanks to @ekle for the report (#492) - Handling of expiration and auth errors on reconnect (#499, #506)
- Data race between
processMsg()
andStats()
. Thanks to @Will2817 for the report (#521)
Complete Changes
- Notes in README on using
-
v1.8.1
June 04, 2019 -
v1.8.0 Changes
June 04, 2019๐ Changelog
Some of you may have noticed that there was temporarily a v2.0.0 tag.
๐ We wanted to align the client version to the upcoming NATS Server 2.0 release.
However, there was no backward compatibility breaking changes in the client and
the go.mod rules for a v2 would have force us, and users, to addv2
to the import paths.
This would not be justified since, again, there are no breaking changes.๐ So we have removed the tag and instead released v1.8.0. We are deeply sorry for the
inconvenience but we hope that you will understand why we did this.๐ Changed
- The repository has been renamed to
nats.go
. When doing ago get github.com/nats-io/nats.go/
, make sure to include the trailing/
to avoid such error:stat github.com/nats-io/nats.go: no such file or directory
. - 0๏ธโฃ The default URL (
nats.DefaultURL
) has been changed fromnats://localhost:4222
tonats://127.0.0.1:4222
(#460)
โ Added
ConnErrHandler
: handler which can be invoked when a disconnect event occurs. Unlike ConnHandler, you can get the error that caused the disconnect event. Thanks to @mkorolyov for the contribution (#462, #464)Message.Respond()
to be able to conveniently reply to a request message from the message handler (#472)
๐ Deprecated
๐ Improved
- Some cleanup with use of RWMutex, removal of un-needed defer, etc... Thanks to @MaruHyl for the contributions (#434, #437, #438)
- ๐จ Refactor some of the examples. Thanks to @andyxning for the contribution (#440)
๐ Fixed
- Proper randomization of IPs resolved from a hostname prior to dial (#445)
- Misleading TLS error report due to credential file errors (#446)
- ๐ Race on synchronous subscription type setting (#447)
- ๐จ Examples would not exit after printing usage, possibly causing panic (#456, #465)
- โ๏ธ Some typos. Thanks to @0xflotus for the contribution (#471)
Complete Changes
- The repository has been renamed to
-
v1.7.2 Changes
February 21, 2019๐ Changelog
โ Added
- Ability to set MaxPingsOutstanding as an Option (#414)
- Conn.ConnectedAddr() (#426)
- FlushWithContext() (#433)
โก๏ธ Updated
- ๐ Handle host names that resolve to more than one IP (#417)
- Disable automatic TLS skip verify (#420)
- Examples and Benchmarks can use new credentials based authentication and authorization (#419)
- Smarter kickFlusher behavior (#429)
- Smarter processing on NextMsg() when a message already available (#432)
๐ Improved
- ๐ Better handling of TLS errors. Thanks to @brianshannan for the contribution (#418)
- โก๏ธ Updates to samples in docs (#422, #421)
- ๐ Uses staticcheck now vs megacheck
๐ Fixed
- Maintain string case for async errors from the server (#415)
Complete Changes
-
v1.7.0 Changes
December 11, 2018๐ Changelog
โ Added
- Ability to retrieve CID from server the client is currently connected to (#395)
- ๐ NKey support (#399)
- TokenHandler option. Thanks to @nicholaslam for the contribution (#405)
- ๐ Support for User JWTs (#408)
- FlusherTimeout option to allow all writes to honor the deadline. Thanks to @gwik for the contribution (#393)
โก๏ธ Updated
- ๐ Examples moved to separate directories so they can be "go install"'ed (#406)
- ๐ Allow expressed url parameters to influence implicit servers (#409, #410)
- โก๏ธ Some updates for NGS support (#400)
๐ Improved
- Faster and smaller reply subjects (#402)
๐ Fixed
- Set connection's last error if async error occurs during Drain (#392)
Complete Changes
-
v1.6.0 Changes
August 29, 2018๐ Changelog
โ Added
PingInterval()
option. Thanks to @karpovicham for the contribution (#361)- Ability to suppress receiving messages published by own connection, aka
NoEcho()
option. Requires server 1.2.0+ (#375) - Ability to drain subscriptions and/or connections (#378, #380)
๐ Improved
- 0๏ธโฃ Simpler URLs. It is now possible to simply pass hostname without scheme nor port (which defaults to 4222). That is,
nats.Connect("myhost")
is now equivalent tonats.Connect("nats://myhost:4222")
. Also switches automatically to secure connection (TLS) if server requests it (#381)
๐ Fixed
- Possible deadlock in asynchronous connection callbacks. Thanks to @teh-cmc for the contribution (#365, #369)
- ๐
Close()
may not release resources immediately. Thanks to @mjgarton for the report (#370) - Benchmark tool (
nats-bench
) now starts subscriber's timer when getting the first message (#379) - ๐ API Documentation related to creation of various subscription types. Thanks to @nussjustin for the report (#383)
- Panic if passing a nil option to
nats.Connect()
. They will now be ignored (#385) - RequestWithContext or NextMsgWithContext could return a message although the context was canceled or timed-out (#387)
Complete Changes
-
v1.5.0 Changes
March 23, 2018๐ Changelog
โ Added
Conn.Barrier()
API. This is an advance API that can be useful in some specific situations. Thanks to @nussjustin for reporting an issue during development of this feature (#338, #346)ReconnectBufSize()
option setter. Thanks to @ripienaar (#340)
๐ Improved
- โฌ๏ธ Reduce memory usage during reconnect. Thanks to @charlievieth (#341)
- No need for regex in Connect(). Thanks to @charlievieth (#342)
- โก๏ธ List of servers is now updated when the cluster topology changes. Will require server at version 1.0.7+ (#344, #352)
๐ Fixed
- Protocol(s) received right after initial PONG may be missed. This would manifest with the handling of cluster topology state on connect with server 1.0.7+ (#348)
๐ Changed
- ๐ Moved to Apache 2.0 License as part of the move to CNCF (#354)
Complete Changes