Installing from RubyGems.org: gem install --pre unicorn>From db919d18e01f6b2339915cbd057fba9dc040988b Mon Sep 17 00:00:00 2001From: Eric Wong <normalperson at yhbt.net> Date: Tue, 29 Jan 2013 21:02:55 +0000 Subject: [PATCH] unicorn 4.6.0pre1 - hijacking support This pre-release adds hijacking support for Rack 1.5 users. See Rack documentation for more information about hijacking. There is also a new --no-default-middleware/-N option for the `unicorn'' command to ignore RACK_ENV within unicorn. --- GIT-VERSION-GEN | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN index 365df8d..46ef417 100755 --- a/GIT-VERSION-GEN +++ b/GIT-VERSION-GEN @@ -1,7 +1,7 @@ #!/bin/sh GVF=GIT-VERSION-FILE -DEF_VER=v4.5.0 +DEF_VER=v4.6.0.pre1 LF='' '' -- 1.8.1.1.253.g2934a48
-N/--no-default-middleware needs a corresponding manpage entry. Additionally, the Rack::Chunked/ContentLength middleware comment is out-of-date as of unicorn v4.1.0 --- Also just pushed this to master of git://bogomips.org/unicorn commit 64765b95df06256d39daefdeebde97c874770131 Documentation/unicorn.1.txt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Documentation/unicorn.1.txt b/Documentation/unicorn.1.txt index c20a570..a42dfff 100644 --- a/Documentation/unicorn.1.txt +++ b/Documentation/unicorn.1.txt @@ -61,6 +61,10 @@ with rackup(1) but strongly discouraged. For production deployments, specifying the "listen" directive in CONFIG_FILE is recommended as it allows fine-tuning of socket options. +-N, \--no-default-middleware +: Disables loading middleware implied by RACK_ENV. This bypasses the + configuration documented in the RACK ENVIRONMENT section, but still + allows RACK_ENV to be used for application/framework-specific purposes. # RACKUP COMPATIBILITY OPTIONS -o, \--host HOST @@ -144,10 +148,10 @@ As of Unicorn 0.94.0, RACK_ENV is exported as a process-wide environment variable as well. While not current a part of the Rack specification as of Rack 1.0.1, this has become a de facto standard in the Rack world. -Note that the Rack::ContentLength and Rack::Chunked middlewares -are never loaded by default. If needed, they should be -individually specified in the RACKUP_FILE, some frameworks do -not require them. +Note the Rack::ContentLength and Rack::Chunked middlewares are also +loaded by "deployment" and "development", but no other values of +RACK_ENV. If needed, they must be individually specified in the +RACKUP_FILE, some frameworks do not require them. # ENVIRONMENT VARIABLES -- 1.8.1.2.422.g08c0e7f
Anybody running 4.6.0pre1, yet? I''m tempted to release 4.6.0 soon. I just pushed out a couple of *BSD-related test fixes ported over from rainbows.git (@ git://bogomips.org/rainbows.git ) commit 9cd8554749a9f120b010c93933d09d2dd27b1280 Author: Eric Wong <normalperson at yhbt.net> Date: Mon Feb 4 12:39:09 2013 +0000 tests: "wc -l" portability for *BSDs On FreeBSD 9.0, "wc -l" emits leading whitespace, so filter it through tr -d ''[:space:]'' to eliminate it. commit 2a2163594ea2b515e98fbe9f909bcf90e4c35fe8 Author: Eric Wong <normalperson at yhbt.net> Date: Mon Feb 4 12:29:00 2013 +0000 tests: "wc -c" portability for *BSDs On FreeBSD 9.0, "wc -c" emits leading whitespace, so filter it through tr -d ''[:space:]'' to eliminate it. This is commit 8a6117a22a7d01eeb5adc63d3152acf435cd3176 in rainbows.git commit 85223902e8229bd460ce0b4ad126f42b1db42a46 Author: Eric Wong <normalperson at yhbt.net> Date: Mon Feb 4 10:36:18 2013 +0000 tests: replace non-portable "date +%s" with ruby equivalent "date +%s" is not in POSIX (it is in GNU, and at least FreeBSD 9.0, possibly earlier). The Ruby equivalent should be sufficiently portable between different Ruby versions. This change was automated via: perl -i -p -e ''s/date \+%s/unix_time/'' t/*.sh This is commit 0ba6fc3c30b9cf530faf7fcf5ce7be519ec13fe7 in rainbows.git commit a09a622b4988b5eee819487c96a4563e71f753f7 Author: Eric Wong <normalperson at yhbt.net> Date: Mon Feb 4 10:30:25 2013 +0000 tests: remove utee POSIX already stipulates tee(1) must be unbuffered. I think my decision to use utee was due to my being misled by a bug in older curl where -N did not work as advertised (but --no-buffer did). N.B. we don''t use tee in unicorn tests, this just matches commit cbff7b0892148b037581541184364e0e91d2a138 in rainbows commit 64765b95df06256d39daefdeebde97c874770131 Author: Eric Wong <normalperson at yhbt.net> Date: Tue Jan 29 21:19:22 2013 +0000 manpage: update middleware-related documentation -N/--no-default-middleware needs a corresponding manpage entry. Additionally, the Rack::Chunked/ContentLength middleware comment is out-of-date as of unicorn v4.1.0