Unicorn 0.92.0

Unicorn is a Rack HTTP server for Unix and fast clients

Small fixes and documentation are the focus of this release.

James Golick reported and helped me track down a bug that caused
SIGHUP to drop the default listener (0.0.0.0:8080) if and only
if listeners were completely unspecified in both the
command-line and Unicorn config file. The Unicorn config file
remains the recommended option for specifying listeners as it
allows fine-tuning of the :backlog, :rcvbuf, :sndbuf,
:tcp_nopush, and :tcp_nodelay options.

There are some documentation (and resulting website)
improvements. setup.rb users will notice the new section 1
manpages for unicorn and unicorn_rails, Rubygems users
will have to install manpages manually or use the website.

Edit: That’s not entirely true, I screwed up the package but
you can get them from http://unicorn.bogomips.org/unicorn.1
and http://unicorn.bogomips.org/unicorn_rails.1

The HTTP parser got a 3rd-party code review which resulted in
some cleanups and one insignificant bugfix as a result.

Additionally, the HTTP parser compiles, runs and passes unit
tests under Rubinius. The pure-Ruby parts still do not work yet
and we currently lack the resources/interest to pursue this
further but help will be gladly accepted.

The website now has an Atom feed for new release announcements.
Those unfamiliar with Atom or HTTP may finger [email protected]
for the latest announcements.

Eric W. (53):
README: update with current version
http: cleanup and avoid potential signedness warning
http: clarify the setting of the actual header in the hash
http: switch to macros for bitflag handling
http: refactor keepalive tracking to functions
http: use explicit elses for readability
http: remove needless goto
http: extra assertion when advancing p manually
http: verbose assertions
http: NIL_P(var) instead of var == Qnil
http: rb_gc_mark already ignores immediates
http: ignore Host: continuation lines with absolute URIs
doc/SIGNALS: fix the no-longer-true bit about socket options
“encoding: binary” comments for all sources (1.9)
http_response: don’t “rescue nil” for body.close
CONTRIBUTORS: fix capitalization for why
http: support Rubies without the OBJ_FROZEN macro
http: define OFFT2NUM macro on Rubies without it
http: no-op rb_str_modify() for Rubies without it
http: compile with -fPIC
http: use rb_str_{update,flush} if available
http: create a new string buffer on empty values
Update documentation for Rubinius support status
http: cleanup assertion for memoized header strings
http: add #endif comment labels where appropriate
Add .mailmap file for “git shortlog” and other tools
Update Manifest with mailmap
Fix comment about speculative accept()
SIGNALS: use “Unicorn” when referring to the web server
Add new Documentation section for manpages
test_exec: add extra tests for HUP and preload_app
socket_helper: (FreeBSD) don’t freeze the accept filter constant
Avoid freezing objects that don’t benefit from it
SIGHUP no longer drops lone, default listener
doc: generate ChangeLog and NEWS file for RDoc
Remove Echoe and roll our own packaging/release…
unicorn_rails: close parentheses in help message
launchers: deprecate ambiguous -P/–p* switches
man1/unicorn: avoid unnecessary emphasis
Add unicorn_rails(1) manpage
Documentation: don’t force --rsyncable flag with gzip(1)
Simplify and standardize manpages build/install
GNUmakefile: package .tgz includes all generated files
doc: begin integration of HTML manpages into RDoc
Update TODO
html: add Atom feeds
doc: latest news is available through finger
NEWS.atom: file timestamp matches latest entry
pandoc needs the standalone switch for manpages
man1/unicorn: split out RACK ENVIRONMENT section
man1/unicorn_rails: fix unescaped underscore
NEWS.atom.xml only lists the first 10 entries
unicorn 0.92.0

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs