All Versions
21
Latest Version
Avg Release Cycle
165 days
Latest Release
885 days ago

Changelog History
Page 2

  • v0.3.7 Changes

    May 25, 2014

    Upgrading from 0.3.6 : There are no backward incompatible changes. THIS IS THE LAST STABLE RELEASE PROVIDING THIS API. Future releases will be based on the api in #30 and will not be backwards compatible!

    ๐Ÿš€ This is a bug fix release relating to the refactoring done in 0.3.6.

    • #32 - fix potential panic for race condition when # conns == 0
    • #33/#34 - more granular connection locking
  • v0.3.6 Changes

    April 30, 2014

    Upgrading from 0.3.5 : There are no backward incompatible changes.

    ๐Ÿš€ This release includes a significant internal refactoring, designed to better encapsulate responsibility, see #19.

    Specifically:

    • ๐Ÿ‘‰ make Conn public
    • ๐Ÿšš move transport responsibilities into Conn from Reader/Writer
    • supply callbacks for hooking into Conn events

    ๐Ÿ”จ As part of the refactoring, a few additional clean exit related issues were resolved:

    • wait group now includes all exit related goroutines
    • ensure that readLoop exits before exiting cleanup
    • always check messagesInFlight at readLoop exit
    • close underlying connection last
  • v0.3.5 Changes

    April 05, 2014

    โฌ†๏ธ Upgrading from 0.3.4: There are no backward incompatible changes.

    ๐Ÿš€ This release includes a few new features such as support for channel sampling and sending along a user agent string (which is now displayed in nsqadmin).

    ๐Ÿš‘ Also, a critical bug fix for potential deadlocks (thanks @kjk โœ… for reporting and help testing).

    ๐Ÿ†• New Features/Improvements:

    • #27 - reader logs disambiguate topic/channel
    • #22 - channel sampling
    • #23 - user agent

    ๐Ÿ› Bug Fixes:

    • #24 - fix racey reader IDENTIFY buffering
    • #29 - fix recursive RLock deadlocks
  • v0.3.4 Changes

    November 19, 2013

    โฌ†๏ธ Upgrading from 0.3.3: There are no backward incompatible changes.

    ๐Ÿš€ This is a bug fix release, notably potential deadlocks in Message.Requeue() and Message.Touch() as well as a potential busy loop cleaning up closed connections with in-flight messages.

    ๐Ÿ†• New Features/Improvements:

    • #14 - add Reader.Configure()
    • #18 - return an exported error when an nsqlookupd address is already configured

    ๐Ÿ› Bug Fixes:

    • #15 - dont let handleError() loop if already connected
    • #17 - resolve potential deadlocks on Message responders
    • #16 - eliminate busy loop when draining finishedMessages
  • v0.3.3 Changes

    October 21, 2013

    โฌ†๏ธ Upgrading from 0.3.2: This release requires NSQ binary version 0.2.23+ for compression ๐Ÿ‘Œ support.

    ๐Ÿš€ This release contains significant Reader refactoring of the RDY handling code paths. The motivation is documented in #1 however the commits in #8 identify individual changes. Additionally, we eliminated deadlocks during connection cleanup in Writer.

    As a result, both user-facing APIs should now be considerably more robust and stable. Additionally, ๐Ÿ‘ Reader should behave better when backing off.

    ๐Ÿ†• New Features/Improvements:

    • #9 - ability to ignore publish responses in Writer
    • #12 - Requeue() method on Message
    • #6 - Touch() method on Message
    • #4 - snappy/deflate feature negotiation

    ๐Ÿ› Bug Fixes:

    • #8 - Reader RDY handling refactoring (race conditions, deadlocks, consolidation)
    • #13 - fix Writer deadlocks
    • #10 - stop accessing simplejson internals
    • #5 - fix max-in-flight race condition
  • v0.3.2 Changes

    August 26, 2013

    โฌ†๏ธ Upgrading from 0.3.1: This release requires NSQ binary version 0.2.22+ for TLS support.

    ๐Ÿ†• New Features/Improvements:

    • #227 - TLS feature negotiation
    • #164/#202/#255 - add Writer
    • #186 - MaxBackoffDuration of 0 disables backoff
    • #175 - support for nsqd config option --max-rdy-count
    • #169 - auto-reconnect to hard-coded nsqd

    ๐Ÿ› Bug Fixes:

    • #254/#256/#257 - new connection RDY starvation
    • #250 - nsqlookupd polling improvements
    • #243 - limit IsStarved() to connections w/ in-flight messages
    • #169 - use last RDY count for IsStarved(); redistribute RDY state
    • #204 - fix early termination blocking
    • #177 - support broadcast_address
    • #161 - connection pool goroutine safety
  • v0.3.1 Changes

    February 07, 2013

    โฌ†๏ธ Upgrading from 0.3.0: This release requires NSQ binary version 0.2.17+ for TOUCH support.

    • #119 - add TOUCH command
    • #133 - improved handling of errors/magic
    • #127 - send IDENTIFY (missed in #90)
    • #16 - add backoff to Reader
  • v0.3.0 Changes

    January 07, 2013

    โฌ†๏ธ Upgrading from 0.2.4: There are no backward incompatible changes to applications written against the public nsq.Reader API.

    However, there are a few backward incompatible changes to the API for applications that directly use other public methods, or properties of a few NSQ data types:

    nsq.Message IDs are now a type nsq.MessageID (a [16]byte array). The signatures of nsq.Finish() and nsq.Requeue() reflect this change.

    ๐Ÿšš nsq.SendCommand() and nsq.Frame() were removed in favor of nsq.SendFramedResponse().

    โฌ†๏ธ nsq.Subscribe() no longer accepts shortId and longId. If upgrading your consumers โฌ†๏ธ before upgrading your nsqd binaries to 0.2.16-rc.1 they will not be able to send the optional custom identifiers.

    • #90 performance optimizations
    • #81 reader performance improvements / MPUB support
  • v0.2.4 Changes

    October 15, 2012
    • #69 added IsStarved() to reader API
  • v0.2.3 Changes

    October 11, 2012
    • #64 timeouts on reader queries to lookupd
    • #54 fix crash issue with reader cleaning up from unexpectedly closed nsqd connections