There are two bugfixes in this release. Rack applications that use fork() internally should now behave as-expected when receiving SIGCHLD. The pid file is also unlinked during a graceful shutdown.
This release fixes a potential reentrancy deadlock when using the default logger from the Ruby standard library.
Logging of errors is more consistent in this release.
See the unicorn 4.1.0 release notes for more details:
http://bogomips.org/unicorn.git/tag/?id=v4.1.0
This gets most of the improvements Rainbows! 4.0.0 got: * client_max_header_size directive is added to limit per-client memory usage in headers. * An experimental StreamResponseEpoll concurrency option * minor bugfixes, minor stack depth reduction Since Zbatery doesn't fork workers, the ability of Unicorn 4.x to scale to a large amount of worker processes doesn't matter to us.
This release fixes dependencies on Rainbows! and gets all the improvements Rainbows! 3.4.0 got: * Kgio.autopush support for multi-threaded configurations * Immediate disconnect of idle clients on SIGQUIT for concurrency models where idle clients are cheap to maintain.
Like Rainbows! 3.3.0, we've added the GPLv3 to our license (in addition to GPLv2 and Ruby terms). See Rainbows! 3.3.0 release notes and news for more infor on changes: http://rainbows.rubyforge.org/NEWS.html
Small bug fixes that have been sitting around, not much but it's already been one month since our last release. * Unicorn dependency updated to 3.4.0, so we get IPv6 support and Kgio.autopush support for ":tcp_nopush => true" users. * Optional :pool_size argument is fixed for NeverBlock and CoolioThreadPool users. * Mostly minor internal code cleanups * Sunshowers support removed, it was out-of-date and unmaintained. Cramp remains supported for now. * X-Rainbows-* response headers support removed, nobody used it. There are severalnew features in this release not documented here. Consider any new features not mentioned in these release notes to be subject to removal/renaming in future releases.
See Rainbows! NEWS[1] and ChangeLog[2] for details. [1] http://rainbows.rubyforge.org/NEWS.html [2] http://rainbows.rubyforge.org/ChangeLog.html
All the latest and greatest changes from Rainbows! 2.1.0: http://git.bogomips.org/cgit/rainbows.git/tag/?id=v2.1.0
This release syncs up with the latest from Rainbows! 2.0.x and Unicorn 3.0.x. See Rainbows! and Unicorn release notes and changelogs for relevant details.
This release syncs up with the latest from Rainbows! 1.0.x and Unicorn 2.0.x and includes minor bugfixes from both.
Eric Wong (3): update local.mk.sample for 0.3.0 Fix documentation generation bump Rainbows! (and Unicorn) dependencies
Rainbows! v0.95.0 is more awesome than v0.94.0, so we've updated ourselves to use it and be more awesome as well!
This release fixes a denial-of-service vector for deployments exposed directly to untrusted clients. The HTTP parser in Unicorn <= 0.97.0 would trip an assertion (killing the associated worker process) on invalid Content-Length headers instead of raising an exception. Since Rainbows! and Zbatery supports multiple clients per worker process, all clients connected to the worker process that hit the assertion would be aborted. Deployments behind nginx are _not_ affected by this bug, as nginx will reject clients that send invalid Content-Length headers. The status of deployments behind other HTTP-aware proxies is unknown. Deployments behind a non-HTTP-aware proxy (or no proxy at all) are certainly affected by this DoS. Users are strongly encouraged to upgrade as soon as possible, there are no other changes besides this bug fix from Rainbows! 0.91.0 nor Unicorn 0.97.0 This bug affects all previously released versions of Rainbows! and Zbatery.
This release resyncs against the latest features/cleanups
in Unicorn 0.97.0 and Rainbows! 0.91.0
Eric Wong (7):
use Unicorn.builder to parse config.ru switches
import selected parts of test suite from Rainbows!
gemspec: depend on newer Unicorn for Unicorn.builder
support "user" directive outside of after_fork hook
MRI 1.8 thread fix to avoid blocking accept()
disable more Unicorn methods
support Unicorn 0.96.0+ ready_pipe daemonization
Unicorn had a memory that didn't affect Unicorn, but only Rainbows!, so we bumped the dependency on Rainbows! which in turn bumped the dependency on Unicorn... Also some minor documentation updates.
This gem release allows compatibility with newer versions of Rainbows! This also fixes a bug when $stdout is not redirected to a file.
Originally generated with the Darkfish Rdoc Generator 2, modified by wrongdoc.
We love to hear from you!