nsq version history
10 releases tracked, newest first.
v1.3.0
Dec 27, 2023- Added support for unix sockets and TLS 1.3 in nsqd
- Improved nsqadmin with ECMA upgrade, paused labels, and admin checks
- Fixed various bugs including concurrency issues and Dockerfile config
- Added new debug APIs and memory management options
5 downloads
v1.2.1
Aug 16, 2021**Upgrading**
* #1227 - bump dependencies, officially drop `dep` support, drop Go `1.9` support
Features:
* #1347 - `nsqadmin`: switch to go:embed for static assets
* #1355 / #1364 - arm64 builds (thanks @danbf)
* #1346 - `nsqd`: ability to skip ephemeral topics/channels in statsd output
* #1336 / #1341 / #1343 - `nsqd`: ability to configure auth endpoint path (thanks @tufanbarisyildirim)
* #1307 - remove `Context` to use stdlib `context`
* #1295 / #1296 - switch to GitHub Actions CI
* #1292 - `nsqd`: minimize allocations on message send (thanks @imxyb)
* #1289 - optimize `uniq` (thanks @donutloop)
* #1230 / #1232 - `nsqd`: ability to omit memory stats from `/stats` (thanks @creker)
* #1226 - `nsqd`: only update internal `RDY` count for client when it changes (thanks @andyxning)
* #1221 / #1363 - test against more recent versions of Go
* #1209 - `nsqd`: bump `go-diskqueue` (interface change) (thanks @bitpeng)
* #1206 - prefer idiomatic `sort.Ints` over `sort.Sort` (thanks @lelenanam)
* #1197 / #1362 - Dockerfile: update Alpine base image, use /data by default
* #1178 - `nsqd`: configurable queue scan worker pool (thanks @andyxning)
* #1159
5 downloads
v1.2.0
Aug 28, 2019**Upgrading**
* #1055 - `nsqd`: removed support for old metadata scheme used in v0.3.8 and earlier
* you cannot upgrade directly from v0.3.8 to v1.2.0, you must go through v1.0.0-compat or v1.1.0
* #1115 - manage dependencies with go modules
* `dep` support still present for now, but deprecated
Features:
* #1136 - `nsqd`: add `--max-channel-consumers` (default unlimited) (thanks @andyxning)
* #1133 - `nsqd`: add `--min-output-buffer-timeout` (default 25ms) to limit how low a timeout a consumer can request
* and raise default `--max-output-buffer-timeout` to 30 seconds (lower timeout, more cpu usage)
* #1127 - `nsqd`: add topic total message bytes to stats (thanks @andyxning)
* #1125 - `nsqd`: add flag to adjust default `--output-buffer-timeout` (thanks @andyxning)
* #1163 - `nsqd`: add random load balancing for authd requests (thanks @shenhui0509)
* #1119 - `nsqd`: include client TLS cert CommonName in authd requests
* #1147 - `nsq_to_file`: include topic/channel in most log messages
* #1117 - `nsq_to_file`: add `--log-level` and `--log-prefix` flags
* #1117/#1120/#1123 - `nsq_to_file`: big refactor, more robust file switching and syncing an
3 downloads
v1.1.0
Aug 19, 2018**Upgrading from 1.0.0-compat**: Just a few backwards incompatible changes:
* #1056 - Removed the `nsq_pubsub` utility
* #873 - `nsqd` flags `--msg-timeout` and `--statsd-interval` only take duration strings
* plain integer no longer supported
* #921 - `nsqd`: http `/mpub` endpoint `binary` param interprets "0" or "false" to mean text mode
* previously any value meant to use binary mode instead of text mode - (thanks @andyxning)
The previous release, version "1.0.0-compat", was curiously-named to indicate an almost (but not quite) complete transition to a 1.0 api-stable release line. Confusingly, this follow-up release which completes the transition comes more than a year later. Because there have been a fair number of changes and improvements in the past year, an additional minor version bump seems appropriate.
Features:
* #874 - `nsqd`: add memory stats to http `/stats` response (thanks @sparklxb)
* #892 - `nsqd`, `nsqlookupd`, `nsqadmin`: add `--log-level` option (deprecating `--verbose`) (thanks @antihax)
* #898 - `nsqd`, `nsqlookupd`, `nsqadmin`: logging refactor to use log levels everywhere
* #914 - `nsqadmin`: `X-Forwarded-User` based "admin"
3 downloads
v1.1.0-rc1
Pre-releaseJul 31, 2018See release [v1.1.0](https://github.com/nsqio/nsq/releases/tag/v1.1.0)
3 downloads
v1.0.0-compat
Mar 22, 2017**Upgrading from 0.3.8**: Numerous backwards incompatible changes:
* Deprecated `nsqd` features removed:
* Pre-V1 HTTP endpoints / response format:
* `/{m,}put` (use `/{m,}pub`)
* `/{create,delete,empty,pause,unpause}_{topic,channel}` (use `/{topic,channel}/<operation>`)
* `--max-message-size` flag (use `--max-msg-size`)
* `V2` protocol `IDENTIFY` command `short_id` and `long_id` properties (use `client_id`, `hostname`, and `user_agent`)
* `/stats` HTTP response `name` property (use `client_id`)
* Deprecated `nsqlookupd` features removed:
* Pre-V1 HTTP endpoints / response format:
* `/{create,delete}_{topic,channel}` (use `/{topic,channel}/<operation>`)
* `/tombstone_topic_producer` (use `/topic/tombstone`)
* Deprecated `nsqadmin` features removed:
* `--template-dir` flag (not required, templates are compiled into binary)
* `--use-statsd-prefixes` flag (use `--statsd-counter-format` and `--statsd-gauge-format`)
* `nsq_stat` `--status-every` flag (use `--interval`)
* `--reader-opt` on all binaries that had this flag (use `--consumer-opt`)
* `nsq_to_file` `--gzip-compression` flag (use `--gzip-level`)
* `nsq_to_http`
3 downloads
v0.3.8
May 26, 2016**Upgrading from 0.3.7**: Binaries contain no backwards incompatible changes.
This release fixes a critical regression in `0.3.7` that could result in message loss when attempting to cleanly shutdown `nsqd` by sending it a `SIGTERM`. The expected behavior was for it to flush messages in internal buffers to disk before exiting. See #757 and #759 for more details.
A few performance improvements landed including #743, which improves channel throughput by ~17%, and #740, which reduces garbage when reading messages from disk.
We're now stripping debug info, reducing binary size, in the official binary downloads and Windows binaries are now bundled with the appropriate `.exe` extension (#726 and #751).
Features:
- #743 - `nsqd`: remove channel `messagePump`
- #751 - strip debug info from binaries (thanks @ploxiln)
- #740 - `nsqd`: reduce garbage when reading from diskqueue (thanks @dieterbe)
Bugs:
- #757/#759 - `nsqd`: properly handle `SIGTERM` (thanks @judwhite)
- #738 - updates for latest `go-options`
- #730 - `nsqd`: diskqueue sync count on both read/write
- #734 - `nsqadmin`: make `rate` column work without `--proxy-graphite` (thanks @ploxiln)
- #726 - add `.exe` extension to Wi
3 downloads
v0.3.7
Feb 24, 2016**Upgrading from 0.3.6**: Binaries contain no backwards incompatible changes.
This release has been built with Go 1.6.
Highlights include the various work done to reduce `nsqd` lock contention, significantly improving the impact of high load on the `/stats` endpoint, addressing issues with timeouts and failures in `nsqadmin` (#700, #701, #703, #709).
Thanks to @judwhite, `nsqd` and `nsqlookupd` now natively support being run as a Windows service (#718). We're also now publishing official Windows releases.
`nsqd` will now `flock` its data directory on linux, preventing two `nsqd` from running simultaneously pointed at the same path (#583).
On the bugfix side, the most noteworthy change is that `nsqd` will now correctly reset health state on a successful backend write (#671).
Features:
- #700/#701/#703/#709 - `nsqd`: reduce lock contention (thanks @zachbadgett @absolute8511)
- #718 - `nsqd`/`nsqlookupd`: support running as a windows service (thanks @judwhite)
- #706 - `nsqd`: support enabling/disabling block profile via HTTP (thanks @absolute8511)
- #710 - `nsqd`: support `POST` `/debug/pprof/symbol` (thanks @absolute8511)
- #662 - `nsqadmin`: add flags for formatting statsd ke
3 downloads
v0.3.6
Sep 25, 2015**Upgrading from 0.3.5**: Binaries contain no backwards incompatible changes.
We've adopted the [Contributor Covenant 1.2 Code of Conduct](CODE_OF_CONDUCT.md) (#593). Help us keep NSQ open and inclusive by reading and following this document.
We closed a few longstanding issues related to `nsqadmin`, namely (#323, et al.) converting it to an API and single-page app (so that it is _much_ easier to develop), displaying fine-grained errors (#421, #657), and enabling support for `--tls-required` configurations (#396).
For `nsqd`, we added support for deferred publishing aka `DPUB` (#293), which allows a producer to specify a duration of time to delay initial delivery of the message. We also addressed performance issues relating to large numbers of topics/channels (#577) by removing some per-channel goroutines in favor of a centralized, periodic, garbage collection approach.
In order to provide more flexibility when deploying NSQ in dynamically orchestrated topologies, `nsqd` now supports the ability to configure `nsqlookupd` peers at runtime via HTTP (#601), eliminating the need to restart the daemon.
As part of the large `nsqadmin` refactoring, we took the opportunity to cleanup
2 downloads
v0.3.5
Apr 26, 2015**Upgrading from 0.3.4**: Binaries contain no backwards incompatible changes.
This is another quick bug fix release to address the broken `nsqadmin` binary in the `v0.3.4` distribution (see #578).
See the release notes for [v0.3.3](https://github.com/bitly/nsq/releases/v0.3.3) for more info.
2 downloads