CHANGELOG in thin-1.6.2 vs CHANGELOG in thin-1.6.3
- old
+ new
@@ -1,5 +1,12 @@
+== 1.6.3 Protein Powder
+ * Add HTTP 422 status code [rajcybage]
+ * Add warning about EM reactor still running when stopping.
+ * Remove version number from "Server" HTTP header. [benbasson]
+ * Adding `--ssl-disable-verify` to allow disabling of client cert requests when SSL enabled [brucek]
+ * Ensure Tempfiles created by a large request are closed and deleted. [Tonkpils]
+
== 1.6.2 Doc Brown
* No longer replace response's body on HEAD request. Ensuring body.close will be called.
* Remove `---ssl-verify` option as EventMachine doesn't verify the certificate.
* Fix env['rack.peer_cert'] to return SSL certifcate.
@@ -52,14 +59,14 @@
From now on, to install on Windows, install https://github.com/oneclick/rubyinstaller/wiki/Development-Kit.
* BREAKING CHANGE: Remove automatic Content-Length setting.
It is now the responsibility of the app (or a middleware) to set the Content-Length.
* Log errors to STDERR [textgoeshere]
* Shut down gracefully when receiving SIGTERM [ddollar]
-
+
Processes are allowed a chance to shut down gracefully when receiving
SIGTERM (http://en.wikipedia.org/wiki/SIGTERM).
-
+
On Heroku, when shutting down a process, we send a SIGTERM followed 10
seconds later with a SIGKILL, similar to the behavior of the init daemon
on most Unix systems. This patch will allow Heroku apps to shut down
gracefully when they need to be terminated / moved.
@@ -80,11 +87,11 @@
the server is still receiving its request, and will continue to read
request input on the connection. The 101 status code is used to upgrade
the existing connection to another protocol, and specifically is NOT
used to upgrade a separate connection. Therefore, the connection must
remain open after this response in order to facilitate that.
-
+
* Accept IE7 badly encoded URL (eg.: %uEEEE)
* Fix gemspec to work w/ Bundler [smparkes]
* Add SSL support [tmm1]
* Catch Errno::EPERM in Process.running? [Tony Kemp]
On some systems (e.g. OpenBSD) you receive an EPERM exception if
@@ -96,14 +103,14 @@
--ssl Enables SSL
--ssl-key-file PATH Path to private key
--ssl-cert-file PATH Path to certificate
--ssl-verify Enables SSL certificate verification
-
+
* Expose peer SSL certificate in env (rack.peer_cert) [fd]
* Adjusting unix socket permissions to be more open [mbj]
-
+
== 1.2.7 No Hup
* Support multiple Ruby version (fat binaries under windows)
* Do not trap unsupported HUP signal on Windows
== 1.2.6 Crazy Delicious
@@ -123,25 +130,25 @@
* Fix uninitialized constant ActionController::Dispatcher error with Rails 1.2.3 [Chris Anderton] [#103 state:resolved]
== 1.2.2 I Find Your Lack of Sauce Disturbing release
* Fix force kill under 1.9 [Alexey Chebotar]
* Fix regression when --only option is used w/ --socket.
- * Add process name 'tag' functionality. Easier to distinguish thin daemons
+ * Add process name 'tag' functionality. Easier to distinguish thin daemons
from eachother in process listing [ctcherry]
== 1.2.1 Asynctilicious Ultra Supreme release
* Require Rack 1.0.0
* Require EventMachine 0.12.6
* Use Rails Rack based dispatcher when available
* Allow String for response body
* Require openssl before eventmachine to prevent crash in 1.9
-== 1.2.0 Asynctilicious Supreme release
+== 1.2.0 Asynctilicious Supreme release
* Add support for Windows mingw Ruby distro [Juan C. Rodriguez]
* Add async response support, see example/async_*.ru [raggi]
-== 1.1.1 Super Disco Power Plus release
+== 1.1.1 Super Disco Power Plus release
* Fix bug when running with only options [hasimo]
== 1.1.0 Super Disco Power release
* Require EventMachine 0.12.4
* Remove Thin handler, now part of Rack 0.9.1
@@ -234,34 +241,34 @@
== 0.6.3 Ninja Cookie release
* Add tasks for Vlad the Deployer in example/vlad.rake [cnantais]
* Add Ramaze Rackup config file in example dir [tmm1]
Use like this from you Ramaze app dir:
-
+
thin start -r /path/to/thin/example/ramaze.ru
-
+
* Add the --rackup option to load a Rack config file instead of the Rails adapter.
So you can use any framework with the thin script and start cluster and stuff like that.
A Rack config file is one that is usable through the rackup command and looks like this:
-
+
use Rack::CommonLogger
run MyCrazyRackAdapter.new(:uterly, 'cool')
-
+
Then use it with thin like this:
-
+
thin start --rackup config.ru
-
+
* thin config --chrdir ... -C thin/yml do not change current directory anymore, fixes #33.
* Add a better sample god config file in example/thin.god that loads all info from config
files in /etc/thin. Drop-in replacement for the thin runlevel service [Gump].
* Add support for specifying a custom Connector to the server and add more doc about Server
configuration.
* Add a script to run thin as a runlevel service that can start at startup, closes #31 [Gump]
Setup the service like this:
-
+
sudo thin install /etc/thin
-
+
This will install the boot script under /etc/init.d/thin. Then copy your config files to
/etc/thin. Works only under Linux.
* Set process name to 'thin server (0.0.0.0:3000)' when running as a daemon, closes #32.
* Make sure chdir option from config file is used when present.
* Raise an error when starting a server as a daemon and pid file already exist, fixes #27.
@@ -283,52 +290,52 @@
* Stylize stats page and make the url configurable from the thin script.
* Raise error if attempting to use unix sockets on windows.
* Add example config files for http://www.tildeslash.com/monit usage.
Include the example file using "include /path/to/thin/monit/file" in your monitrc file.
The group settings let you do this to manage your clusters:
-
+
sudo monit -g blog restart all
-
+
There are examples of thin listening on sockets and thin listening on unix sockets.
== 0.6.1 Cheesecake release
* Remove socket file when server stops.
* Set back cluster to use 'thin' command to launch servers.
== 0.6.0 Big Pony release
* Add support for connection through UNIX domain socket.
Use the --socket (-S) option w/ the thin script to configure the socket filename.
Nginx support binding to a UNIX socket like this:
-
+
upstream backend {
server unix:/tmp/thin.0.sock;
server unix:/tmp/thin.1.sock;
server unix:/tmp/thin.2.sock;
}
-
+
Start your servers like this:
-
+
thin start -s3 -S/tmp/thin.sock
-
+
* Remove Server#listen! method. Use Server#start instead.
* Server can now yield a Rack::Builder to allow building an app in one call:
-
+
Server.start '0.0.0.0', 3000 do
use Rack::CommonLogger
use Rack::ShowExceptions
map "/lobster" do
use Rack::Lint
run Rack::Lobster.new
end
end
-
+
* Add a very basic stats page through Stats adapter, load w/ --stats and browse to /stats.
* Add --trace (-V) option to trace request/response and get backtrace w/out all Ruby debug stuff.
* Add --config (-C) option to load options from a config file in thin script [Matt Todd].
* Alter response headers to output directly to a string.
* Improve specs stability.
- * Move request body to a Tempfile if too big (> 112 MB)
+ * Move request body to a Tempfile if too big (> 112 KB)
* Remove useless check for max header size in Request (already done in the parser)
== 0.5.4 Flying Mustard release
* Don't read the full body, use direct streaming when sending response.
See: Response#each
@@ -336,11 +343,11 @@
You have to do set this in your adapter. All frameworks do it anyway.
It improve memory usage and boost speed for low concurrency.
Thanks to Kent Sibilev and Ezra for their help on that one.
* Add 'Server' response header
* Fix --user and --group option not changing daemon process privileges
-
+
== 0.5.3 Purple Yogurt release
* win32 pre-compiled gem now available
* change rake task configuration to allow win32 gem build
* Add prefix option to thin script to mount app under a given path.
@@ -356,11 +363,11 @@
* Rename thin script options to be the same as mongrel_rails script [thronedrk]:
-o --host => -a --address
--log-file => --log
--pid-file => --pid
--env => --environment
-
+
== 0.5.1 LOLCAT release
* Add URL rewriting to Rails adapter so that page caching works and / fetches index.html if present.
* Fix bug in multiline response header parsing.
* Add specs for the Rails adapter.
* Fix Set-Cookie headers in Rails adapter to handle multiple values correctly.
@@ -371,11 +378,11 @@
* Add -D option to thin script to set debugging on.
* Output incoming data and response when debugging is on.
== 0.5.0
* Full rewrite to use EventMachine, Rack and Mongrel parser
-
+
== 0.4.1
* Fix Rails environment option not being used in thin script.
-
+
== 0.4.0
* First alphaish release as a gem.