diff -Nru ruby-rack-1.3.1/ChangeLog ruby-rack-1.3.2/ChangeLog --- ruby-rack-1.3.1/ChangeLog 1970-01-01 00:00:00.000000000 +0000 +++ ruby-rack-1.3.2/ChangeLog 2011-09-16 15:31:37.000000000 +0000 @@ -0,0 +1,3804 @@ +Sat Jul 16 14:45:19 2011 -0700 James Tucker + * Bump version + +Sat Jul 16 14:43:44 2011 -0700 James Tucker + * Update for the 1.3.2 release + + Conflicts: + + README.rdoc + +Sat Jul 16 17:14:03 2011 -0300 Santiago Pastorino + * Rack::Utils.escape should work with symbols in Ruby 1.8.7 + +Wed Jul 13 16:13:50 2011 -0700 James Tucker + * Bump version + +Wed Jul 13 16:10:37 2011 -0700 James Tucker + * Update readme pending patch release + +Wed Jul 13 16:05:43 2011 -0700 James Tucker + * Merge pull request #206 from brendan/19451fc0463ec424fa368cac05be15c75e87e016 + + Fixed a Regexp that allows bad urls to DoS you. + +Wed Jul 13 13:01:59 2011 -0700 Brendan Baldwin + * Fixed a Regexp bug that can DoS your box. + +Sat Jul 2 13:57:29 2011 -0700 nleguen + * Edited lib/rack/sendfile.rb via GitHub + +Wed Jun 29 20:20:25 2011 +0200 Konstantin Haase + * update changes + +Wed Jun 29 20:13:36 2011 +0200 Konstantin Haase + * prepare readme for 1.3.1 + +Tue Jun 14 09:37:48 2011 +0200 Konstantin Haase + * Have MockRequest call close on the body rather than MockResponse. + That way close is called automatically when testing just with + vanilla Rack, but not called twice when using other testing libs + like rack-test. + + Related to #191. + +Fri Jun 10 17:59:44 2011 +0200 Konstantin Haase + * test for Rack::Response#close + +Thu Jun 9 22:14:35 2011 +0200 Konstantin Haase + * call #close on body in mock responses + +Wed Jun 29 10:21:14 2011 -0700 Samuel Williams + * Minor error in documentation regarding the order of parameters in HTTP_X_ACCEL_MAPPING. + +Sun Jun 26 20:49:47 2011 -0400 Matthew M. Boedicker + * make sure the Cache-Control header can never be nil + +Sun Jun 26 20:41:52 2011 -0400 Matthew M. Boedicker + * fix typo + +Thu Jun 16 12:10:11 2011 +0200 Konstantin Haase + * simpler, dry implementation for HeaderHash#to_hash, fixes #177 + +Thu Jun 16 11:15:30 2011 +0200 Konstantin Haase + * update core team list + +Tue Jun 14 16:34:38 2011 +0800 Jan Xie + * block should not be called if IOError raised + + Signed-off-by: Konstantin Haase + +Tue Jun 14 09:49:13 2011 +0200 Konstantin Haase + * more tests for Rack::BodyProxy + +Tue Jun 14 09:44:22 2011 +0200 Konstantin Haase + * let Rack::BodyProxy raise an IOError (like IO and StringIO do) when calling #close twice. Related to #191. + +Tue Jun 14 00:22:35 2011 +0800 Jan Xie + * fix BodyProxy#close + + Signed-off-by: Konstantin Haase + +Thu Jun 9 22:13:44 2011 +0200 Konstantin Haase + * BasicObject does not define respond_to? + +Thu Jun 9 09:14:04 2011 +0200 Konstantin Haase + * fix typo + + Signed-off-by: Christian Neukirchen + +Tue May 31 11:02:15 2011 +0200 Konstantin Haase + * nicer method_missings + +Tue May 31 11:15:42 2011 +0200 Konstantin Haase + * allow passing in rack.session in tests (used to work previously) + +Tue May 31 11:47:43 2011 +0200 Konstantin Haase + * fix Rack::Lock, use same logic for Rack::CommonLogger + +Wed May 25 23:33:40 2011 -0700 James Tucker + * Sigh, thinking backports was a bad idea + +Thu May 26 11:50:08 2011 +0700 oleg dashevskii + * Fix Rack::Utils.escape in the case when $KCODE='U' + + CGI.escape backport used in this case + +Thu May 26 11:26:16 2011 +0700 oleg dashevskii + * Fix a regression caused by f043f32ce99 + +Tue May 24 22:23:10 2011 -0700 Erik Michaels-Ober + * Restore Ruby 1.9.1 compatibility + + URI.decode_www_form_component and URI.encode_www_form_component were not + added until Ruby 1.9.2. + +Wed May 25 10:14:46 2011 -0700 Erik Michaels-Ober + * Add .rdoc extension so GitHub can apply formatting + +Mon May 23 19:30:53 2011 -0700 Blake Mizerany + * fix whitespace errors + +Mon May 23 00:31:33 2011 -0700 James Tucker + * Update for 1.2.3 release + +Sun May 22 23:06:08 2011 -0700 James Tucker + * Thirteenth public release, 1.3.0 + +Sun May 22 22:52:24 2011 -0700 James Tucker + * Prep for full 1.3.0 release + +Sun May 22 22:50:04 2011 -0700 James Tucker + * We don't actually use rdoctask + +Sun May 22 22:49:10 2011 -0700 James Tucker + * Update SPEC + +Sun May 22 22:48:17 2011 -0700 James Tucker + * Grammatical corrections (thanks digitalally) + +Sun May 22 22:19:33 2011 -0700 James Tucker + * Update links and correct a spelling error + +Sun May 22 22:15:20 2011 -0700 James Tucker + * Update README changelog + +Fri May 20 09:40:50 2011 -0700 raggi + * Return behavior against Connection: close for Content-Length middleware, as it's contended. Left notes for future discussion. + +Thu May 19 23:19:19 2011 -0700 raggi + * missed a spot of coverage + +Thu May 19 23:14:40 2011 -0700 raggi + * Fix support for variable length bodies that respond to to_ary. Add notes for future proposed changes. Include test coverage. + +Thu May 19 22:20:54 2011 -0700 raggi + * Fix the line endings. You shouldn't tell git to modify files yo' + +Thu May 19 21:46:15 2011 -0500 Joshua Peek + * Revert "Improve Rack::ContentLength middleware." + + This reverts commit 2b3abc73f3e3a23110f2c8f43458416674130511. + +Thu May 19 13:10:51 2011 -0400 Joshua Peek + * Rack 1.3.0.beta2 + +Thu May 19 07:55:52 2011 -0700 Aaron Patterson + * Merge pull request #166 from josevalim/master + + Improve content-length middleware + +Thu May 19 09:31:18 2011 -0400 José Valim + * Improve Rack::ContentLength middleware. + + 1) It makes Rack::ContentLength middleware conform with the rack specification by removing the to_ary check; + + 2) Make Rack::ContentLength accept an extra header argument that checks for sendfile headers + +Tue May 17 14:14:59 2011 -0700 Joshua Peek + * Merge pull request #163 from jeremy/multipart-mixed + + Test that parsing a multipart/mixed upload no longer blows up + +Sun Jun 27 17:38:08 2010 -0700 Jeremy Kemper + * Test that parsing a multipart/mixed upload no longer blows up + +Sun May 8 11:38:12 2011 -0700 James Tucker + * Merge pull request #154 from rkh/session-options + + keep :secret and :coder in env["rack.session.options"] + +Sun May 8 11:37:57 2011 -0700 James Tucker + * Merge pull request #155 from rkh/secure-random + + use SecureRandom.hex + +Wed May 4 11:39:19 2011 -0700 Aaron Patterson + * Merge pull request #158 from josevalim/cookies. + + Ensure cookies respect renew. + +Wed May 4 20:36:37 2011 +0200 José Valim + * Ensure cookies respect renew. + +Wed May 4 12:04:45 2011 +0200 Konstantin Haase + * SecureRandom actually raises a NotImplementedError if no random device is availabl + +Wed May 4 11:19:35 2011 +0200 Konstantin Haase + * use SecureRandom.hex + + fixes session id generation on JRuby, might even produce slightly better performance on other Rubies + +Tue May 3 14:50:56 2011 +0200 Konstantin Haase + * keep :secret and :coder in env["rack.session.options"] + +Tue May 3 03:38:40 2011 -0700 raggi + * Mark as beta + +Tue May 3 03:37:26 2011 -0700 raggi + * Update readme with some changelogs + +Tue May 3 03:23:20 2011 -0700 raggi + * Pass through a cache_control option for Rack::Static + +Tue May 3 03:06:11 2011 -0700 raggi + * Support cache control in Rack::File as second argument + +Tue May 3 02:22:03 2011 -0700 raggi + * Allow files with '..', but not path components that are '..' + +Tue May 3 01:54:33 2011 -0700 James Tucker + * Merge pull request #92 from stormbrew/handler-options-2.1. + + Ability for rackup/Rack::Server to accept handler-specific options on the command line + +Tue May 3 01:46:37 2011 -0700 James Tucker + * Merge pull request #135 from rinaldifonseca/master. + + Refactor Rack::URLMap + +Tue May 3 01:41:45 2011 -0700 Florian Gilcher + * Keep #params from merging POST into GET + + Signed-off-by: raggi + +Tue May 3 01:12:16 2011 -0700 James Tucker + * Merge pull request #151 from bigfix/encode_www_form_component. + + Backport URI.encode_www_form_component instead. + +Tue May 3 01:02:31 2011 -0700 James Tucker + * Merge pull request #137 from AndreasWurm/master. + + allow multi-line comments in the config file + +Tue May 3 00:59:03 2011 -0700 raggi + * Bump release + +Tue May 3 00:55:34 2011 -0700 raggi + * escape_path (URI escape rather than CGI escape) + +Tue May 3 00:40:48 2011 -0700 raggi + * Correct bug L#94 reported by Nikolai Lugovoi, keys should not form part of the query string. + +Tue May 3 00:14:44 2011 -0700 Brendan Baldwin + * Added a new multipart fixture and spec to demonstrate that current 1.2 Rack can + explode when Content-Type is present, but "filename" is not. This is a bug in + handling multipart. Apache HTTP Client will provide Content-Type description + without filename for form-data, for example. + + Conflicts: + + test/spec_utils.rb + + Signed-off-by: raggi + +Mon May 2 23:48:36 2011 -0700 raggi + * Autoloads, requires, and using new api + +Mon May 2 23:40:17 2011 -0700 raggi + * slice is about double the speed on MRI, and slightly faster on 1.9 + +Mon May 2 23:21:51 2011 -0700 raggi + * Closes #21 Rack::Response#finish should delete Content-Length if status==204 etc from jjw + +Mon May 2 22:51:31 2011 -0700 raggi + * Bump to 1.3.0 + +Mon May 2 22:49:17 2011 -0700 raggi + * encoding not needed + +Mon May 2 22:47:47 2011 -0700 raggi + * Merge branch 'multipart' of https://github.com/shwoodard/rack into shwoodard-multipart + + * 'multipart' of https://github.com/shwoodard/rack: + refactor of multipart module + + Conflicts: + test/spec_utils.rb + +Mon May 2 22:37:36 2011 -0700 Sam Woodard + * Merge branch 'master' into multipart + + * master: + Add protection against a malformed or malicious HTTP request causing an infinite loop + If handler is not to be found, raise initial load error. + If autoloading a rack handler by guessing the corresponding ruby file to load, take into account that this ruby file might register the handler properly. + + Conflicts: + lib/rack/utils.rb + +Mon May 2 22:29:50 2011 -0700 raggi + * 1.9 lambdas care (yep, they're emo - rock on.) + +Mon May 2 22:27:10 2011 -0700 raggi + * 1.9 not having '.' in load path + +Mon May 2 22:10:25 2011 -0700 raggi + * shurrup 1.8.6 + +Mon May 2 22:06:02 2011 -0700 raggi + * Coverage for #146 + +Mon May 2 21:41:43 2011 -0700 raggi + * Add some basic Rack::Server tests, nothing like the oldies, but faster + +Mon May 2 22:08:36 2011 -0700 James Tucker + * Merge pull request #136 from rkh/better-handlers. + + Better handlers + +Mon May 2 22:08:16 2011 -0700 Sam Woodard + * refactor of multipart module + +Mon May 2 18:35:27 2011 -0700 James Tucker + * Merge pull request #147 from mcommons/master. + + Add protection against a malformed or malicious HTTP request causing an infinite loop + +Mon May 2 13:25:24 2011 -0700 John Firebaugh + * Backport URI.encode_www_form_component instead. + + This is better than the cgi/util.rb backport: + - Faster (https://gist.github.com/952373) + - More spec compliant + - Doesn't produce warnings if cgi.rb is required elsewhere + +Mon May 2 13:16:28 2011 -0700 Aaron Patterson + * backporting cgi/util.rb from ruby 1.9 to rack + +Mon May 2 12:01:20 2011 -0700 Aaron Patterson + * only pull in cgi/util + +Mon May 2 10:39:40 2011 -0700 Aaron Patterson + * Merge pull request #140 from jfirebaugh/escape. + + Just use CGI.escape/unescape. + +Wed Feb 23 19:40:36 2011 -0800 Eric Wong + * conditionalget: use canonical "ETag" capitalization + + It matches the capitalization in rfc2616 and is also faster + for Rack::HeaderHash users that also use the canonical + capitalization. + +Wed Feb 23 19:35:40 2011 -0800 Eric Wong + * conditionalget: garbage reduction and speedup + + No need to create an array and do a lookup on it every + time when case/when can be done more efficiently be + the runtime. + +Fri Apr 29 17:05:41 2011 -0400 Mobile Commons + * Add protection against a malformed or malicious HTTP request causing an infinite loop + +Tue Jan 18 02:35:33 2011 +0000 Eric Wong + * deflater flushes each chunk of the response + + This allows clients to receive streaming response bodies as + they're generated by the application, not only when it's ideal + for zlib. Space-efficiency is hurt somewhat, but there's no + other way to allow this middleware to work without completely + breaking otherwise valid applications. + +Tue Jan 18 02:35:33 2011 +0000 Eric Wong + * loosen deflater spec for zlib option changes + + As long as zlib can properly deflate the response body with + the -Zlib::MAX_WBITS option, we'll consider it a valid + response. The next commit will flush the buffer with each + chunk to allow for compressed streaming responses. + +Wed Apr 27 15:05:52 2011 -0700 Joshua Peek + * Merged pull request #126 from plentz/master. + + mongrel rack.url_scheme was hardcoded to http + +Sun Apr 17 17:06:41 2011 -0700 Aaron Patterson + * use a chunked body wrapper rather than duping and returning the chunked encoding middleware + +Thu Apr 7 00:53:29 2011 +0200 José Valim + * Do not send ETag if no-cache is set. + +Thu Apr 14 09:08:09 2011 -0700 Aaron Patterson + * Revert "Add handlers for Unicorn, Rainbows! and Zbatery" + + This reverts commit dff8e34f43c2897062d5b252406398ced2d360a8. + + The author of unicorn / rainbows! / zbatery has asked us to revert this + commit. So I am. See here: + + http://groups.google.com/group/rack-devel/browse_thread/thread/23f73707363e0918 + +Tue Apr 12 11:24:17 2011 +0000 VG + * Remove has_rdoc= method from gemspec + +Sun Apr 10 16:10:09 2011 -0700 John Firebaugh + * Just use CGI.escape/unescape. + + The previous definitions were virtually identical to those provided + by CGI in 1.8.7/1.9.2, except that Rack::Utils.escape failed on non- + UTF8 encoded input. + + Tested on 1.8.7, 1.9.2 and JRuby. + +Thu Mar 31 15:09:31 2011 +1100 Ryan Bigg + * Need to call run app for Builder example to work + +Thu Mar 31 15:09:14 2011 +1100 Ryan Bigg + * Need to require 'rack/lobster' for first Rack::Builder example to work + +Thu Mar 31 15:07:35 2011 +1100 Ryan Bigg + * Rack::Builder example needs a run otherwise it won't run + +Thu Mar 31 15:07:20 2011 +1100 Ryan Bigg + * do and end beginning and end for a multi-lined block is basically the standard in Ruby + +Thu Mar 31 15:01:22 2011 +1100 Ryan Bigg + * Add documentation for use, run and map methods in Rack::Builder + +Thu Mar 31 00:55:38 2011 +0200 Andreas Wurm + * allow multi-line comments in the config file + +Fri Mar 25 23:21:29 2011 -0300 rinaldifonseca + * 1.9, lambda argument count has to match + +Tue Mar 22 01:55:57 2011 -0300 rinaldifonseca + * Refactoring Rack::URLMap NEGATIVE_INFINITY constant + +Mon Mar 21 01:36:25 2011 -0300 rinaldifonseca + * Adding a constant in order to avoid to calculate (1.0 / 0.0) each time + +Mon Mar 21 00:18:26 2011 -0300 rinaldifonseca + * Refactoring Rack: URLMap in order to show our intention through the code rather than write comments + +Fri Mar 25 23:21:29 2011 -0300 rinaldifonseca + * 1.9, lambda argument count has to match + +Tue Mar 22 01:55:57 2011 -0300 rinaldifonseca + * Refactoring Rack::URLMap NEGATIVE_INFINITY constant + +Tue Mar 22 00:27:18 2011 +0100 Konstantin Haase + * If handler is not to be found, raise initial load error. + + Keep in mind that the load error might be for some library required by the + handler, not the handler itself. + +Mon Mar 21 22:00:56 2011 +0100 Konstantin Haase + * If autoloading a rack handler by guessing the corresponding ruby file to load, take into account that this ruby file might register the handler properly. + + This basically would allow moving the Thin handler into the Thin gem and still supporting `rackup -s thin`. + + Also, when using Rack::Handler.register, call #to_s on both arguments. This allows, besides passing a symbol for `server`, passing a class or module as `klass` argument, see the included test case for an example. + +Mon Mar 21 10:32:46 2011 -0500 Joshua Peek + * Merge branch 'master' of https://github.com/hanklords/rack into hanklords-master + +Mon Mar 21 10:32:18 2011 -0500 Joshua Peek + * Merge branch 'unicorn' of https://github.com/rkh/rack into rkh-unicorn + +Mon Mar 21 01:36:25 2011 -0300 rinaldifonseca + * Adding a constant in order to avoid to calculate (1.0 / 0.0) each time + +Mon Jan 24 19:11:37 2011 -0500 Max Cantor + * Added a note about requiring to Session::Abstract::ID docs + +Mon Mar 21 02:11:00 2011 +0800 Gabriel Horner + * Add tests for Rack::Builder.parse_file + +Mon Mar 21 00:18:26 2011 -0300 rinaldifonseca + * Refactoring Rack: URLMap in order to show our intention through the code rather than write comments + +Fri Mar 18 16:05:42 2011 -0700 Maël Clérambault + * Force content-length to 0 so apache mod_xsendfile does not hang + +Fri Mar 18 18:54:58 2011 +0100 Konstantin Haase + * Add handlers for Unicorn, Rainbows! and Zbatery + + Unicorn and akin do *not* include rack handlers, at least not in the sense of Rack::Handler. + +Fri Mar 18 10:20:34 2011 -0500 Joshua Peek + * Merge branch 'patch' of https://github.com/rkh/rack into rkh-patch + +Fri Mar 18 10:20:14 2011 -0500 Joshua Peek + * Merge branch 'safe-md5-params' of https://github.com/rkh/rack into rkh-safe-md5-params + +Fri Mar 18 10:19:30 2011 -0500 Joshua Peek + * Merge branch 'auth-digest-with-rack-builder' of https://github.com/rkh/rack into rkh-auth-digest-with-rack-builder + +Fri Mar 18 15:05:32 2011 +0100 Konstantin Haase + * add Rack::Request#patch? + +Fri Mar 18 15:02:22 2011 +0100 Konstantin Haase + * add support for PATCH verb to Rack::MethodOverride + +Fri Mar 18 14:48:20 2011 +0100 Konstantin Haase + * allow passing opaque or an options hash to Rack::Auth::Digest::MD5.new, that way it is actually usable as middleware with Rack::Builder or similar + +Fri Mar 18 14:35:53 2011 +0100 Konstantin Haase + * in auth/digest/params, do not accidentially pass block used for construction to Hash#initialize, where it is used for default values at might be triggered again later on + +Sun Mar 13 01:38:52 2011 +0100 Christian Neukirchen + * Update README + +Fri Mar 4 11:50:27 2011 -0600 Brad Ediger + * MD5 Digest auth: fail if authenticator returns nil + + Fixes the authenticator API to deny access if nil is returned from the + authenticator block. Without this patch, the nil gets to_s'd to "" and + an empty password would be accepted. + + Signed-off-by: Christian Neukirchen + +Wed Mar 9 13:58:41 2011 -0300 Diego Plentz + * mongrel rack.url_scheme was hardcoded to http + +Wed Feb 9 18:32:26 2011 -0800 raggi + * improve gemloader to include runtime deps if any, and not break on complex requirements + +Mon Jan 24 01:49:43 2011 +0800 Jon Leighton + * If there is an X-Forwarded-Host header, we should take the absence of a port segment to imply 'standard port', not 'use the SERVER_PORT' + +Thu Jan 13 14:59:50 2011 -0800 Aaron Patterson + * refactor Rack::MockResponse to be a subclass of Rack::Response, also make sure the real response object does not set Content-Length if the transfer type is chunked + + Signed-off-by: Joshua Peek + +Thu Jan 13 14:27:00 2011 -0800 Aaron Patterson + * moving MockResponse underneath Rack::Response + + Signed-off-by: Joshua Peek + +Fri Jan 14 06:10:08 2011 +0800 Aaron Patterson + * fixing unused variable warnings in 1.9.3 + +Mon Jan 3 18:08:18 2011 -0600 Joshua Peek + * Extract Request#base_url + +Fri Dec 31 20:40:09 2010 -0500 raggi + * Make mock response work like response with respect to headers + +Thu Dec 23 13:07:13 2010 -0800 Dave Myron + * Correct the regex for finding the part name by Content-Id header. Fixes issue #98 at rack/rack + + Signed-off-by: raggi + +Fri Dec 31 20:18:27 2010 -0500 raggi + * Adding SPEC with rake task dependencies + +Wed Dec 22 11:28:17 2010 +0800 Jan Dudek + * Removed references to SPEC from rack.gemspec + +Sun Dec 19 19:25:45 2010 -0800 raggi + * Use gemloader in fulltest + +Sun Dec 19 19:19:47 2010 -0800 raggi + * Add gemloader script that will provide the ability to activate development dependencies at the correct version for point releases + +Sun Dec 19 19:06:45 2010 -0800 raggi + * Add stage to gitignore + +Sun Dec 19 14:17:26 2010 -0600 Joshua Peek + * Delegate lock proxy to_path + +Sat Dec 18 06:01:13 2010 +0800 Aaron Patterson + * Cookies may be configured with an object that will serialize and deserialize the session cookie data. fixes #70, fixes #4 + +Sat Dec 18 05:07:13 2010 +0800 Aaron Patterson + * read from the input until we find the boundary. fixes #45 + +Sat Dec 18 04:20:13 2010 +0800 Aaron Patterson + * parsing cookies with quotes works + +Mon Dec 20 03:51:04 2010 +0800 John Firebaugh + * Rack::Lock should unlock if the app raises an exception. + +Fri Dec 17 10:57:19 2010 +0800 Aaron Patterson + * use a proxy object to call close on the mutex when the body is closed. closes #87 + +Mon Dec 13 09:03:15 2010 -0600 Pierre Chapuis + * Fix Rack::Auth::Digest query string bug + + Signed-off-by: Joshua Peek + +Sat Dec 11 16:21:52 2010 +0900 Michael Fellinger + * Replace %T with %H:%M:%S for compatibility on Windows + +Wed Dec 1 18:58:36 2010 -0700 Graham + * Implemented handler-specific options in a way that allows them to be retrieved and used from rackup or any other user of Rack::Server. + + - Rack handlers that can accept options can now provide a valid_options method that returns a hash of options that can be passed to the handler. + - If the hash contains Host or Port, they will be ignored for display by Rack::Server. + - Options can be passed in with -O or --option followed by optname=value, or just optname if the option is binary. + - rackup -h will display options for the default handler, and rackup -s SERVERNAME -h will display the options for SERVERNAME. + +Thu Dec 2 09:48:13 2010 +0800 Graham + * FastCGI Handler should not rebind to host/port if file is set. + + File should override Port/Host so that things like Rackup that *always* pass in a host/port combination can be overriden by the File parameter. This change makes that happen. + +Sat Dec 11 12:56:34 2010 +0800 Raving Genius + * Add MIME types for .ttf and .woff + +Thu Aug 12 02:30:55 2010 +0800 Rich Meyers + * Treat an empty content type as nil content type (issue #40) -- tests + +Thu Aug 12 02:23:55 2010 +0800 Rich Meyers + * Treat an empty content type as nil content type (issue #40) + +Wed Sep 8 04:40:48 2010 +0800 Andrew Bortz + * Resolve absolute path of config so daemonize works + +Wed Sep 22 23:55:24 2010 +0800 John Barnette + * Don't throw exceptions for invalid command-line options. + +Thu Nov 18 20:15:02 2010 +0800 Andrew Stevens + * Fixes REQUEST_PATH for WEBrick + +Thu Dec 9 21:40:00 2010 +0200 Janne Hietamaki + * use is_a?(IO) instance of instance_of?(String) + +Thu Dec 2 18:36:31 2010 +0200 Janne Hietamaki + * Fixed handling of multipart fields that have Content-Type but are not files. + + https://github.com/rack/rack/commit/acffe8ef5ea6de74fe306f2dd908b7681a21aaad + +Fri Nov 5 14:19:12 2010 -0600 John Sumsion + * Removing the promiscous umask from the daemonize implementation. + + This prevents me from putting a daemon process in a jail of some kind, and + being able to control the umask from the environment before I launch it. + + There is no corollary to this in the Ruby 1.9's Process.daemon, see + rb_daemon in ruby/process.c. + +Thu Nov 18 09:27:18 2010 +0800 Postmodern + * Properly handle nil header values in Rack::MockResponse#initialize. + +Thu Dec 9 12:08:15 2010 -0600 Joshua Peek + * Trim whitespace added in 2ed5a13d + +Sat Oct 23 14:33:34 2010 -0600 Simon Chiang + * performance improvement by making derived regexps into constants + +Thu Dec 9 12:04:20 2010 -0600 Stephen Celis + * Rack::Request support for HTTP_X_FORWARDED_{PORT,SSL} + +Thu Dec 9 11:05:17 2010 -0600 Joshua Peek + * Silence test warnings + +Tue Nov 2 21:34:25 2010 +0800 Martin Ottenwaelter + * HTTP_X_FORWARDED_PROTO can be a list of chained values, eg 'https, http, http' + +Thu Oct 28 23:00:52 2010 +0800 Sam Stephenson + * Fix initializing Response objects with differently-cased Content-Type headers + +Tue Oct 26 10:25:01 2010 -0500 Joshua Peek + * Request#scheme returns 'https' if forwarded protocol headers are set + +Fri Oct 8 15:10:03 2010 +0200 José Valim + * ssl? should also return true if rack.url_scheme is https. + + Signed-off-by: raggi + +Sun Oct 10 17:42:22 2010 -0300 raggi + * showexceptions: gracefully handle empty backtraces + + Some HTTP servers (e.g. Unicorn and Rainbows!) raise certain + exceptions without a backtrace[1], so avoid triggering our own + NoMethodError exception because of this. + + [1] - http://git.bogomips.org/cgit/unicorn.git/commit/?id=e4256da292f9626d7dfca60e08f65651a0a9139a + + Conflicts: + + test/spec_showexceptions.rb + + Signed-off-by: raggi + +Mon Oct 4 13:28:32 2010 -0300 raggi + * Use chunked first over in-memory content-length calculation + +Mon Oct 4 13:05:08 2010 -0300 raggi + * minor performance items on rack::chunked + +Mon Oct 4 13:00:25 2010 -0300 raggi + * release semantics of Rack::Chunked and Rack::ContentLength from handlers. this should not be forced on users. + +Sun Oct 3 22:09:13 2010 -0300 raggi + * Rack::Logger conforms to Rack::Lint, closes Lighthouse #89 + +Sun Oct 3 21:58:32 2010 -0300 raggi + * Move Rack::File.byte_ranges to Rack::Utils + +Sun Oct 3 21:50:06 2010 -0300 raggi + * minor style changes for merge + +Sun Oct 3 17:08:49 2010 -0700 Jens Alfke + * Byte-range support for File class. + + Allows Rack to support byte-range requests (via + the HTTP 1.1 "Range:" header) for static files, + even when sendfile is not being used. + + Conforms to RFC 2616 sec. 14.35 _except_ that + multiple byte-ranges are not supported yet. + (They're parsed correctly, but the response body + would need to be a MIME multipart.) + + Tested in Ruby 1.8.7 on Mac OS X 10.6.4. + + Signed-off-by: raggi + +Sun Oct 3 14:47:55 2010 -0700 José Valim + * Move sid initialization to another method so it can be overwritten by other frameworks. + + Signed-off-by: raggi + +Sun Oct 3 17:32:02 2010 -0300 raggi + * Adding support for securerandom, will be in use by default. n.b. hacky test + +Sun Oct 3 17:35:22 2010 -0300 raggi + * 186 bro :'( + +Sun Oct 3 15:58:49 2010 -0300 raggi + * Merge branch 'perfix' of http://github.com/thedarkone/rack into thedarkone-perfix + + * 'perfix' of http://github.com/thedarkone/rack: + No need to delete a key that doesn't exist. + Avoiding invoking #delete unless unnecessary. + Fix the phantom header key bug. + Revert "Don't set header to nil on HeaderHash#include?" + +Sun Oct 3 15:43:42 2010 -0200 Santiago Pastorino + * PERF: change inject({}) to Hash + map + + Signed-off-by: raggi + +Sun Oct 3 15:33:07 2010 -0200 Santiago Pastorino + * PERF: just using a map here is fine + + Signed-off-by: raggi + +Sun Oct 3 15:27:28 2010 -0200 Santiago Pastorino + * PERF: change inject({}) to Hash + map + + Signed-off-by: raggi + +Wed Sep 22 21:09:05 2010 +0200 José Valim + * Etag middleware should not return a digest if body is empty and should also allow a default cache directive when no caching is done. + +Sun Oct 3 19:30:20 2010 +0200 José Valim + * Fix Memcached tests. + + Signed-off-by: raggi + +Tue Sep 28 14:16:49 2010 +0200 José Valim + * Improve performance of cookie store by unpacking the data just once. + + Signed-off-by: raggi + +Sun Sep 19 23:26:16 2010 +0200 José Valim + * Improves performance by lazy loading the session. + + The session has two flags, one for reading and another for writing. If the session is just read, we get it from the store but do not send a cookie a back to the client unless it was written. + + This commit also adds Rack::Request#ssl? for convenience. + + Signed-off-by: raggi + +Sun Oct 3 13:44:31 2010 -0300 raggi + * Spec that referer no longer defaults to '/', but is allowed to be nil + +Fri Sep 17 07:33:05 2010 -0700 Greg Hazel + * do not default referer to '/' + + Signed-off-by: raggi + +Sun Oct 3 13:29:37 2010 -0300 raggi + * Cleanup whitespace and docs from patch + +Fri Sep 10 23:08:24 2010 -0700 Mark Turner + * modified rack::static comment to reflect new routes + + Signed-off-by: raggi + +Fri Sep 10 23:00:03 2010 -0700 Mark Turner + * Added the ability to pass a hash of route to file mappings to Rack::Static + + Signed-off-by: raggi + +Fri Sep 24 16:33:37 2010 +0200 thedarkone + * No need to delete a key that doesn't exist. + +Wed Sep 22 16:49:45 2010 +0200 thedarkone + * Avoiding invoking #delete unless unnecessary. + +Wed Sep 22 18:36:17 2010 +0200 thedarkone + * Fix the phantom header key bug. + + Bug report: http://groups.google.com/group/rack-devel/browse_thread/thread/cb0548dfe7a70702. + +Wed Sep 22 18:27:15 2010 +0200 thedarkone + * Revert "Don't set header to nil on HeaderHash#include?" + + The change is a bit messy. + + This reverts commit f6f3c60938ea3b08f3292a2480e6753c293584e5. + +Thu Sep 23 00:09:44 2010 +0900 Michael Fellinger + * Adjust rest of comment of Sendfile + +Wed Sep 22 23:30:27 2010 +0900 Michael Fellinger + * Adjust indentation of Sendfile source + +Wed Sep 22 23:29:53 2010 +0900 Michael Fellinger + * Fix comment in Sendfile + +Tue Sep 21 00:08:35 2010 +0800 Durran Jordan and Paul Elliott + * Need to properly escape UTF-8 strings in 1.9.2 + + Rack was generating warnings in 1.9.2: + ...rack/utils.rb:16: warning: regexp match /.../n against to UTF-8 string + + Modified the regex in utils to support UTF-8. Did not add tests since + the multibyte escape tests cover this case when in 1.9.2. + + Verified tests pass in: 1.8.6-p399, 1.8.7-p302, ree-1.8.7-2010.02, + 1.9.2-p0 + +Fri Sep 10 23:23:26 2010 +0800 Rhett Sutphin + * Include all values for repeated response headers in WEBrick. Closes #52. + +Tue Sep 7 07:22:48 2010 +0800 José Valim + * Should only handle 200 responses on conditional get middleware. + +Sat Sep 11 06:03:15 2010 +0800 stahnma + * Adding Rakefile to rack.gemspec + +Wed Sep 8 20:59:52 2010 +0800 Konstantin Haase + * Skip Rack::Lint::InputWrapper serialization in TestRequest. Makes tests pass on Ruby 1.9.1p378. + +Wed Sep 8 20:26:12 2010 +0800 Konstantin Haase + * Avoid failing tests on platforms that do not support fork (JRuby/Windows). Relies on fork raising a NotImplementedError on those platforms, which both MRI and JRuby do. + +Wed Sep 8 19:42:43 2010 +0800 Konstantin Haase + * return array instead of string as request body, so it works on 1.9 + +Wed Sep 8 19:40:42 2010 +0800 Konstantin Haase + * memcache raises a RuntimeError on 1.9.2p0, too + +Tue Sep 7 00:16:11 2010 +0800 José Valim + * Ensure the HTTP Cache-Control is set in the Etag middleware if none was given. It is extremally important to mark these responses as private by default. + +Sun Jun 13 07:02:43 2010 -0600 Simon Chiang + * updated escape_html to use hex entities and to escape forward slash + Small merge work required. + + Signed-off-by: raggi + +Tue Aug 3 13:45:23 2010 -0300 Damian Janowski + * Make ShowExceptions respond with plain text on AJAX calls. + + Signed-off-by: raggi + +Wed Aug 11 21:57:43 2010 -0700 Postmodern + * Alias Response#to_ary to #finish for implicit-splat in Ruby 1.9.2. + + * In Ruby 1.9.2 #to_ary is required for implicit-splat. + http://redmine.ruby-lang.org/issues/show/1393 + + Signed-off-by: raggi + +Tue Jul 20 12:35:07 2010 +0200 José Valim + * Should set ETag only if status is 200 or 201. + + Signed-off-by: raggi + +Mon Jul 19 12:41:56 2010 +0200 José Valim + * Refactor session stores by providing a with_lock helper and by moving the responsitility to handle :renew and :drop up to Abstract::ID. + + Signed-off-by: raggi + +Mon Jul 19 11:09:46 2010 +0200 José Valim + * Make a few changes to the session store: + + * Provide :cookie_only as option and as default. If false, allows SID to be retrieved from GET/POST params; + + * Do not send the cookie back to the client if session id did not change; + + * Make Abstract::ID implementation more modular, allowing Cookie implementation to be simpler by inheriting from it; + + Signed-off-by: raggi + +Mon Jul 19 23:38:35 2010 +0100 raggi + * Update docs and minor corrections. + +Mon Jul 19 23:09:13 2010 +0200 José Valim + * ETag middleware should not be triggered in sendfile bodies. + + Signed-off-by: raggi + +Mon Jul 19 23:36:20 2010 +0100 raggi + * Remove unneeded monkey patch to Rack::File from Rack::Sendfile + +Sun Jul 18 19:39:29 2010 +0200 José Valim + * Rack::Etag should not set ETag if Last-Modified header is sent. + + The HTTP specification says that if both Last-Modified and ETag are sent, both should be matched in other to check if a request is fresh or not. If Rack always set ETag, even if Last-Modified is sent, checking the freshness according to specification becomes non trivial, since I will always need the digested body response. + + Signed-off-by: raggi + +Sun Jul 18 20:00:59 2010 +0200 José Valim + * Make ConditionalGet middleware respect HTTP specification. + + The specification says if both IF_NONE_MATCH and IF_MODIFIED_SINCE are sent, both should match in order to return 304. + + Signed-off-by: raggi + +Sat Jun 19 19:03:48 2010 -0400 Loren Segal + * Rack::Server should accept :app and override :config. + + Signed-off-by: raggi + +Thu Jul 8 14:23:39 2010 +0100 raggi + * The application should be loaded prior to daemonization to prevent issues with chdir etc. + +Thu Jul 8 14:23:12 2010 +0100 raggi + * Debugging should not change semantics of load path or require modification before loading the application + +Tue Jun 29 04:34:02 2010 +0800 Brasten Sager + * Modified Rack::Request#port to respect HTTP_X_FORWARDED_HOST port information if available + +Thu Jun 17 08:18:27 2010 -0300 raggi + * Update gitignore to ignore compiled classes and the lighttpd error log + +Thu Jun 17 08:17:31 2010 -0300 raggi + * Use ::File.unlink in place of Tempfile#unlink to avoid 1.9.1 bug + +Thu Jun 17 11:43:36 2010 +0900 Michael Fellinger + * Fix ESCAPE_HTML_PATTERN construction + +Thu Jun 17 11:31:29 2010 +0900 Michael Fellinger + * Merge branch 'master' of github.com:rack/rack + + * 'master' of github.com:rack/rack: (24 commits) + rack handler specs are "fast" + don't need to warn about missing require + bail out of cgi tests if lighttpd isn't installed + don't run session memcache tests if no connection can be made + rack lock should require thread + Use a more common format for extra version data, as per R. Konstantin Haase suggestion + Show rack release version in rackup --version + Fix cgi test for BSDish systems + Rack should respect $RACK_ENV when starting up, fixes 3rd party bugs introduced by b433e484c9ee47ffceb7645129403df31f60db7f + Fix Rakefile + Prepare 1.2.1 + Rename spec/ back to test/ + Make CGI handler obey rack spec by wrapping stdin in a rewindable stream. + More gemspec fixes + Hard-core version number in gemspec + Push Rack.release to 1.2 + Last README updates + Fix gem dependencies to use bacon + Silence test suite + Fix thin specs for 1.0 and bacon Fix TestRequest for servers that add unserializables in env. + ... + +Wed Jun 16 10:01:50 2010 -0500 Joshua Peek + * rack handler specs are "fast" + +Wed Jun 16 09:54:02 2010 -0500 Joshua Peek + * don't need to warn about missing require + +Wed Jun 16 09:51:08 2010 -0500 Joshua Peek + * bail out of cgi tests if lighttpd isn't installed + +Wed Jun 16 09:43:25 2010 -0500 Joshua Peek + * don't run session memcache tests if no connection can be made + +Wed Jun 16 09:31:56 2010 -0500 Joshua Peek + * rack lock should require thread + +Wed Jun 16 11:13:54 2010 -0300 raggi + * Use a more common format for extra version data, as per R. Konstantin Haase suggestion + +Wed Jun 16 11:11:12 2010 -0300 raggi + * Show rack release version in rackup --version + +Wed Jun 16 11:06:49 2010 -0300 raggi + * Fix cgi test for BSDish systems + +Wed Jun 16 10:57:45 2010 -0300 raggi + * Rack should respect $RACK_ENV when starting up, fixes 3rd party bugs introduced by b433e484c9ee47ffceb7645129403df31f60db7f + +Tue Jun 15 11:52:37 2010 +0200 Christian Neukirchen + * Fix Rakefile + +Tue Jun 15 11:39:08 2010 +0200 Christian Neukirchen + * Prepare 1.2.1 + +Tue Jun 15 11:37:52 2010 +0200 Christian Neukirchen + * Rename spec/ back to test/ + +Tue Jun 15 01:11:36 2010 +0900 Michael Fellinger + * FastCGI handler should respect :Host option + +Wed May 12 00:43:31 2010 -0400 visudo + * Make CGI handler obey rack spec by wrapping stdin in a rewindable + stream. + + Signed-off-by: raggi + +Sun Jun 13 19:57:49 2010 +0200 Christian Neukirchen + * Merge remote branch 'official/master' + +Sun Jun 13 19:38:43 2010 +0200 Christian Neukirchen + * More gemspec fixes + +Sun Jun 13 19:37:40 2010 +0200 Christian Neukirchen + * Hard-core version number in gemspec + +Sun Jun 13 19:36:13 2010 +0200 Christian Neukirchen + * Push Rack.release to 1.2 + +Sun Jun 13 19:35:35 2010 +0200 Christian Neukirchen + * Last README updates + +Sun Jun 13 19:34:01 2010 +0200 Christian Neukirchen + * Merge branch 'bacon' + +Sun Jun 13 17:00:34 2010 +0200 Christian Neukirchen + * Fix gem dependencies to use bacon + +Sun Jun 13 16:54:03 2010 +0200 Christian Neukirchen + * Silence test suite + +Sun Jun 13 09:18:07 2010 -0300 raggi + * Fix thin specs for 1.0 and bacon + Fix TestRequest for servers that add unserializables in env. + +Sun Jun 13 18:40:09 2010 +0900 Michael Fellinger + * Improve performance and flexibility of Rack::Utils.escape_html + +Sat Jun 12 23:34:13 2010 +0900 Michael Fellinger + * require time in response because it's used for cookies + +Sat Jun 12 23:33:52 2010 +0900 Michael Fellinger + * Fix Handler::CGI so it uses $stdin.binmode + +Sat Jun 12 23:33:25 2010 +0900 Michael Fellinger + * Fix spec requires and the missing ones + +Sat Jun 12 12:43:36 2010 +0200 Christian Neukirchen + * Update README and gemspec + +Sat Jun 12 18:44:04 2010 +0900 Michael Fellinger + * Ported specs to bacon + +Fri Jun 11 10:29:10 2010 +0900 Michael Fellinger + * Add Request.trace? and Request.options? + +Thu Jun 10 12:45:39 2010 +0900 Michael Fellinger + * Add mime-type for webm + +Wed Jun 9 12:59:59 2010 +0900 Michael Fellinger + * Remove trailing whitespace + +Tue Jun 8 21:06:39 2010 +0200 Konstantin Haase + * make sure PATH_INFO and SCRIPT_NAME get reset + +Fri Apr 30 23:57:36 2010 -0700 Tim Connor + * don't dupe env in urlmap so modifications down the chain persist back up + +Fri Apr 30 23:38:07 2010 -0700 Tim Connor + * test for mapping in builder + +Wed Jun 9 12:44:59 2010 +0900 Michael Fellinger + * Don't use 'unknown' in HTTP_X_FORWARDED_FOR + +Wed Mar 31 19:29:47 2010 +0800 Timur Batyrshin + * set ENV["RACK_ENV"] to options[:environment] as many frameworks rely on this + +Wed Jun 9 01:03:01 2010 +0900 Michael Fellinger + * Implement proper RFC 2822 Time format based on RFC 2109 example for cookie expires + +Wed Jun 9 00:29:10 2010 +0900 Michael Fellinger + * Get rid of a few more warnings + +Wed Jun 9 00:27:03 2010 +0900 Michael Fellinger + * Avoid warning on 1.8.7 regarding File.to_path + +Wed Jun 9 00:22:16 2010 +0900 Michael Fellinger + * The correct IP from HTTP_X_FORWARDED_FOR is the first one + +Sat May 15 07:26:15 2010 +0800 Simon Chiang + * removed parsing of quoted values + +Wed May 26 16:46:30 2010 +0300 Matias Korhonen + * Fixes the nginx #send_file configuration example. + +Wed May 5 11:54:07 2010 -0600 Simon Chiang + * updated Session::Memcache initialization to pass MemCache options correctly + + Signed-off-by: Christian Neukirchen + +Wed May 5 16:58:20 2010 +0530 Anil Wadghule + * Improved comment by giving example + + Signed-off-by: Christian Neukirchen + +Thu Jan 7 21:43:51 2010 -0800 Zach Brock + * allow delete of cookies with same name but different domain + + Adding a spec for adding multiple cookies with the same name on + different domains + +Wed Apr 28 17:43:55 2010 -0700 Jon Bardin + * added test for bug with escaping query string parameters + +Thu Apr 29 14:55:34 2010 -0700 Ryan Tomayko + * avoid uninitialized ivar warning + +Fri Apr 9 17:05:25 2010 +0200 Christian Neukirchen + * Fully remove camping + +Fri Apr 9 17:02:52 2010 +0200 Christian Neukirchen + * Remove Camping adapter + + Camping 2.0 supports Rack as-is. + +Wed Apr 7 13:34:00 2010 -0500 Joshua Peek + * size is not part of the input SPEC + + If size is added as a formal requirement, revert this commit. Till + then Lint should bomb if middleware tries to access + env['rack.input'].size. + + Discussion about adding #size to rack.input + http://groups.google.com/group/rack-devel/browse_thread/thread/9c06163a4b13ccad + +Wed Apr 7 13:32:22 2010 -0500 Joshua Peek + * Require 'rack' from mock.rb since it references Rack::VERSION + + (Fixes tests) + +Tue Mar 23 19:49:28 2010 +0000 raggi + * Update Rack::Mock to use Rack::VERSION too + +Tue Mar 23 19:48:31 2010 +0000 raggi + * Merge branch 'rag' + + * rag: + Update all handlers to use Rack::VERSION instead of a hardcoded array for the protocol version. + Make Rack::Recursive thread safe by removing shared state + Deprecate unused log object in Rack::Handler::SCGI + Move trap(:INT) to Rack::Server and support optional Handler protocol where handlers may implement .shutdown to do pre-exit cleanup. + Fix a bug in CGI detection + Adding options passthrough for Rack::Server.start to make CGI apps easier to author + +Tue Mar 23 19:47:50 2010 +0000 raggi + * Update all handlers to use Rack::VERSION instead of a hardcoded array for the protocol version. + +Tue Mar 23 19:37:38 2010 +0000 raggi + * Make Rack::Recursive thread safe by removing shared state + +Tue Mar 23 19:36:05 2010 +0000 raggi + * Deprecate unused log object in Rack::Handler::SCGI + +Tue Mar 23 19:29:44 2010 +0000 raggi + * Move trap(:INT) to Rack::Server and support optional Handler protocol where handlers may implement .shutdown to do pre-exit cleanup. + +Tue Mar 23 19:23:43 2010 +0000 raggi + * Fix a bug in CGI detection + +Tue Mar 23 19:22:54 2010 +0000 raggi + * Adding options passthrough for Rack::Server.start to make CGI apps easier to author + +Tue Mar 23 08:51:04 2010 +0000 Alex + * add Mime type for .htc files ('text/x-component') + + Signed-off-by: Christian Neukirchen + +Tue Mar 9 06:54:15 2010 -0800 Ryan Tomayko + * cookie utility methods use multiline strings instead of arrays + +Tue Mar 9 06:29:02 2010 -0800 Larry Siden + * ContentLength coerces status to int + +Thu Mar 4 11:14:30 2010 -0800 Jeremy Kemper + * Rack::ETag: stream the body digest. Omit to_s on body parts since Rack spec requires strings. + +Thu Mar 4 10:09:53 2010 -0800 Jeremy Kemper + * Merge remote branch 'origin/master' + + Conflicts: + lib/rack/rewindable_input.rb + +Mon Feb 22 14:47:55 2010 -0800 Ryan Tomayko + * fix whitespace errors in rewindable_input.rb + +Mon Feb 15 11:14:32 2010 -0800 Jeremy Kemper + * Merge remote branch 'origin/master' + + Conflicts: + lib/rack/rewindable_input.rb + +Mon Feb 8 11:37:54 2010 -0800 Ryan Tomayko + * soften requirements for content-length in mock header spec + +Mon Feb 8 11:35:27 2010 -0800 Ryan Tomayko + * Merge commit 'headius/master' + +Mon Feb 8 10:41:52 2010 -0800 Alex Beregszaszi + * Don't set header to nil on HeaderHash#include? + + http://groups.google.com/group/rack-devel/browse_thread/thread/cb0548dfe7a70702 + +Sun Feb 7 23:56:01 2010 +0100 Christian Neukirchen + * "WWW-Authenticate" header generated by Auth::Digest::MD5 is wrong (RFC 2617) + + Reported by Iñaki Baz Castillo. [#83 state:resolved] + +Sun Feb 7 23:52:19 2010 +0100 Christian Neukirchen + * gem and rdoc need SPEC + +Sun Feb 7 23:50:08 2010 +0100 Christian Neukirchen + * parse_multipart: Content-Type field doesn't imply a file upload + + Fixes issues created by 6674f3652. [#79 state:resolved] + +Sun Feb 7 23:48:37 2010 +0100 Christian Neukirchen + * rack/utils needs FileUtils + +Mon Feb 1 12:21:47 2010 +0100 Julik + * Add a failing test and fix for #90 + + Signed-off-by: Christian Neukirchen + +Tue Jan 26 15:35:04 2010 -0500 Alexander Kahn + * Add possessive apostrophe to sendfile documentation. + + Signed-off-by: Christian Neukirchen + +Thu Jan 21 09:09:49 2010 -0600 Joshua Peek + * Additional tests for a180673 + +Thu Jan 21 08:41:38 2010 -0600 Sam Ruby + * Fixes next token after a filename may include a dash or other character + Signed-off-by: Joshua Peek + +Thu Jan 21 08:30:15 2010 -0600 Joshua Peek + * Fixed "quotes" typo + +Wed Jan 20 20:05:19 2010 -0600 Joshua Peek + * broken_unquoted should be case insensitive + +Wed Jan 20 19:46:44 2010 -0600 Sam Ruby + * Improve multipart parsing support for UAs that don't correctly escape + Content-Disposition filenames. + + Signed-off-by: Joshua Peek + +Sun Jan 17 13:05:29 2010 -0600 Charles Oliver Nutter + * Add 100 extra wrappers and 0.1s delay to ensure timing test produces measurable results. + +Sun Jan 17 13:05:02 2010 -0600 Charles Oliver Nutter + * Hardcode content-length of 418 for JRuby for now. + +Sun Jan 10 16:56:59 2010 +0100 Christian Neukirchen + * Fix SPEC documentation to say subclasses are allowed + +Wed Jan 6 14:47:47 2010 +0100 Christian Neukirchen + * It's 2010 now. + +Wed Jan 6 14:31:59 2010 +0100 Christian Neukirchen + * Drop RDOX support + +Sun Jan 3 13:20:07 2010 -0600 Joshua Peek + * Set 1.1 release date + +Sun Jan 3 19:45:57 2010 +0100 Christian Neukirchen + * Update copyright messages + +Sun Jan 3 12:36:04 2010 -0600 Joshua Peek + * Remove brittle spec that relies on unstable marshal format + +Sat Dec 26 18:10:36 2009 -0600 Joshua Peek + * Revert "Add --chdir option to rackup" + + This reverts commit b5a47e25cf65ad2d87cf9e20474ca372ed91c1b0 + +Sat Dec 26 17:50:26 2009 -0600 Joshua Peek + * Add --chdir option to rackup + +Sat Dec 26 17:25:20 2009 -0600 Joshua Peek + * Use "config" instead of "rack_file" + +Sat Dec 26 16:42:00 2009 -0600 Joshua Peek + * Add shebang back to rackup + +Sat Dec 26 11:24:20 2009 -0600 Joshua Peek + * Note nosqueeze change + +Sat Dec 26 11:17:52 2009 -0600 Joshua Peek + * Merge remote branch 'origin/nosqueeze' + +Sat Dec 26 11:15:47 2009 -0600 Joshua Peek + * Add previous change to changelog + +Sat Dec 26 11:10:40 2009 -0600 Joshua Peek + * Tag not found responses from file servers with X-Cascade header + + Prepares internal file servers for revised Rack::Cascade that looks + for a magic header instead of discarding all 404 responses. + +Sat Dec 26 11:07:21 2009 -0600 Joshua Peek + * whoops, bad restoration + +Sat Dec 26 11:03:42 2009 -0600 Joshua Peek + * Restore old school tar release tools + +Sat Dec 26 10:58:20 2009 -0600 Joshua Peek + * Bump version and release to 1.1 + +Sat Dec 26 06:25:41 2009 +0000 Eric Wong + * update README, Sunshowers is not a web server + + Sunshowers is a library that can enhance Rack::Request when + used with Rainbows! but is not a server itself. Additionally, + the official name for Rainbows! is "Rainbows!" with a bang. + + Signed-off-by: Christian Neukirchen + +Fri Dec 25 14:12:52 2009 +0100 Christian Neukirchen + * Update web server list in README + +Fri Dec 25 13:30:35 2009 +0100 Christian Neukirchen + * Update README + +Thu Dec 24 21:04:40 2009 -0600 Joshua Peek + * Modernize packaging and publishing tasks for gemcutter + +Thu Dec 24 21:01:27 2009 -0600 Joshua Peek + * ignore dist tmp files + +Thu Dec 24 20:46:36 2009 -0600 Joshua Peek + * Prepare release notes for 1.1 + +Wed Dec 23 20:42:37 2009 -0800 Ryan Tomayko + * Test case for matching mutliple /'s in URLMap + +Wed Dec 23 20:24:56 2009 -0800 Ryan Tomayko + * URLMap matches multiple /'s but does not modify PATH_INFO + +Wed Oct 28 19:16:29 2009 -0700 Ricardo Chimal, Jr + * Don't munge PATH_INFO in URLMap + +Tue Dec 22 15:19:22 2009 -0800 Ryan Tomayko + * Failing testcase for URLMap squeeze issue + +Thu Jan 15 05:46:21 2009 -0800 Ryan Tomayko + * Use Content-Type to determine POST params parsing [#20] + + Reverts the hard test for a 'PUT' request method (8d01dc0) and + uses the Content-Type to determine whether to read into the + request body. The Request#POST method parses the request body + if (and only if) either of the following conditions are met: + + 1. The request's Content-Type is application/x-www-form-urlencoded + or multipart/form-data. Note: the REQUEST_METHOD is ignored in + this case. + + 2. The original REQUEST_METHOD is 'POST' and no Content-Type header + was specified in the request. Note that we use the REQUEST_METHOD + value before any modifications by the MethodOverride middleware. + + This is very similar to how this worked prior to 8d01dc0 but + narrows the 'no Content-Type' special case to apply only to + POST requests. A PUT request with no Content-Type header would + trigger parsing before - with this change only POST requests + with no Content-Type trigger parsing. + +Sun Dec 20 20:58:34 2009 -0600 Joshua Peek + * Status code lookup utility + +Sun Dec 20 20:50:15 2009 -0600 Joshua Peek + * Extract parse_query and parse_multipart in Request so subclasses + can change their behavior [#71 state:resolved] + +Sun Dec 20 20:39:11 2009 -0600 Joshua Peek + * Request#host knows about forwared host [#77 state:resolved] + +Sun Dec 20 20:22:45 2009 -0600 Joshua Peek + * Request#user_agent + +Sun Dec 20 20:18:11 2009 -0600 Joshua Peek + * exclude rackup tests by default because they often stall + +Sun Dec 20 14:53:26 2009 +0100 Christian Neukirchen + * Mention fix-root-scriptname in KNOWN-ISSUES + +Sun Dec 20 14:49:02 2009 +0100 Christian Neukirchen + * Merge branch 'master' of github.com:rack/rack + +Fri Dec 11 16:44:07 2009 -0600 Joshua Peek + * ignore rackup log output + +Fri Dec 11 16:42:37 2009 -0600 Joshua Peek + * NullLogger should actually be a middleware + +Fri Dec 11 16:40:57 2009 -0600 Joshua Peek + * Simple rack logger middleware that wraps rack.errors + +Fri Dec 11 16:29:43 2009 -0600 Joshua Peek + * Nop NullLogger + +Fri Dec 11 16:18:41 2009 -0600 Joshua Peek + * rack.logger specification + +Fri Dec 11 16:03:39 2009 -0600 Joshua Peek + * Import Ryan's Sendfile from contrib into core + +Fri Dec 11 16:00:57 2009 -0600 Joshua Peek + * Import runtime middleware by paul (Paul Sadauskas) into core + +Fri Dec 11 15:52:08 2009 -0600 Joshua Peek + * Import etag middleware from contrib into core + +Fri Dec 11 15:40:08 2009 -0600 Joshua Peek + * Import Config by jcrosby (Jon Crosby) into core + +Thu Dec 10 21:52:38 2009 -0600 Joshua Peek + * Reverse hash for looking up status codes by symbol + +Thu Dec 10 21:35:12 2009 -0600 Eric Wong + * HeaderHash#each yields Lint-OK multivalue headers + + Rack::Lint does not allow header values yielded by #each to be + non-String objects, so we join them like we do in #to_hash. + This finally allows HeaderHash to be passed in the Rack response + as a header without needing #to_hash. + + Signed-off-by: Joshua Peek + +Thu Dec 10 21:34:50 2009 -0600 Eric Wong + * CommonLogger uses HeaderHash to lookup Content-Length + + Since HeaderHash is cheaper to use now, encourage its usage + instead of reinventing a way to lookup header values with + an enforced O(n) overhead. + + Under best conditions, this can now be done in O(1) time if the + rest of our middleware stack already uses (and passes) + HeaderHash. This does make things slower if CommonLogger is the + only middleware in the stack, however that's probably not too + common. + + Signed-off-by: Joshua Peek + +Thu Dec 10 21:34:17 2009 -0600 Eric Wong + * avoid HeaderHash#to_hash in middlewares + + Since HeaderHash objects are valid header responses, avoid + converting the headers to Hash objects only to have it + reconverted back to HeaderHash in the next middleware. + + Signed-off-by: Joshua Peek + +Thu Dec 10 21:33:53 2009 -0600 Eric Wong + * HeaderHash.new avoids unnecessary object creation + + Creating a new HeaderHash is an O(n) operation in addition to + the cost of allocating a new object. When using multiple pieces + of middleware, this can lead to unnecessary memory allocation + and iteration overhead. We now explicitly define the + HeaderHash.new class method to return its original argument if + it is already a HeaderHash to avoid repeating work. + + Signed-off-by: Joshua Peek + +Mon Nov 16 13:50:27 2009 -0500 Derek and Matt + * Fixed multipart parameter parsing for when a field's body ends at the same time as a chunk (i.e. we've reached EOL and buffer is empty) + +Thu Nov 5 16:00:10 2009 -0500 Bosko Milekic + * Introduce failing test case for multipart parser when it slices exactly on a boundary and patch multipart parser so it passes it - the failing test case comes with a sample payload specific to the fact that the default bufsize used by the multipart parser is exactly 16384. should this default be changed, the test will no longer apply. + +Thu Dec 10 21:08:01 2009 -0600 Joshua Peek + * Tell people to report bugs to lighthouse + +Thu Dec 10 21:03:32 2009 -0600 Joshua Peek + * Don't delete PATH_INFO from env in fastcgi, mongrel, and webrick + handlers because PATH_INFO must not be nil according to SPEC + [#75 state:resolved] + +Thu Dec 3 13:10:28 2009 -0800 Scytrin dai Kinthra + * Merge branch 'memcache-session-bugfix' + + * memcache-session-bugfix: + Test-fix for shallow copy change checks + Added test for deep hash checks, prevent shallow copy check failure + Session::Memcache fixes + Updating Session::Memcache test + Inlining of #merge_sessions + +Thu Dec 3 13:07:46 2009 -0800 Scytrin dai Kinthra + * Test-fix for shallow copy change checks + Simplification of new/missing session keys + +Thu Dec 3 13:04:16 2009 -0800 Scytrin dai Kinthra + * Added test for deep hash checks, prevent shallow copy check failure + Rewording variables for clarity + +Sun Nov 22 20:15:28 2009 -0800 Scytrin dai Kinthra + * Session::Memcache fixes + + Restructing logical branches to be less inlince + Uniform naming of variables + Fix of of inline session merging + +Sun Nov 22 20:12:04 2009 -0800 Scytrin dai Kinthra + * Updating Session::Memcache test + + Pointless instantiation removed + Moved bad connection check above good connection check + A blank string for the server specification uses defaults, fixed + +Sun Nov 22 18:08:53 2009 -0800 Scytrin dai Kinthra + * Inlining of #merge_sessions + +Wed Dec 2 19:54:36 2009 -0800 Scytrin dai Kinthra + * Merge branch 'quoted-string-cookies' + + * quoted-string-cookies: + Test added to check to ensure that quoted values are properly parsed + +Wed Dec 2 19:32:56 2009 -0800 Scytrin dai Kinthra + * Test added to check to ensure that quoted values are properly parsed + Using a regular expression to identify quoted string values, could be optimized + +Tue Nov 24 20:35:04 2009 +0800 mig-hub + * Fix typo on lib/rack/session/pool.rb + +Wed Dec 2 02:47:38 2009 +0800 Geoffrey Grosenbach + * Added mime type for .manifest (HTML5 offline storage) + +Tue Nov 17 13:02:04 2009 +0800 Chris Wanstrath + * Response should call #to_i on the status, as per the spec. + + "The status, if parsed as integer (to_i), must be greater than or equal + to 100." + +Mon Nov 23 15:06:30 2009 -0800 Carl Lerche + * Extract the option parser + + Signed-off-by: Joshua Peek + +Sun Nov 22 15:45:20 2009 -0800 Scytrin dai Kinthra + * Initial removal of OpenID related files + Removal of references in Rakefile and the core include + +Sat Nov 21 10:52:33 2009 -0800 Yehuda Katz + Carl Lerche + * Refactor rackup into Rack::Server + + Signed-off-by: Joshua Peek + +Sat Nov 21 10:30:58 2009 -0800 Yehuda Katz + Carl Lerche + * Test coverage for rackup + + Signed-off-by: Joshua Peek + +Sat Nov 21 16:53:08 2009 +0100 Christian Neukirchen + * Merge branch 'master' of github.com:rack/rack + +Sun Oct 18 21:39:16 2009 +0200 Christian Neukirchen + * Update README for 1.0.1 + +Fri Oct 23 17:49:03 2009 +0900 Michael Fellinger + * Fix LSWS handler as suggested by George Wang + +Sun Oct 18 21:39:16 2009 +0200 Christian Neukirchen + * Update README for 1.0.1 + +Sun Oct 18 21:40:04 2009 +0200 Christian Neukirchen + * Merge branch 'master' of github.com:rack/rack + +Thu Oct 8 08:51:11 2009 +0200 Daniel Rodríguez Troitiño + * Fixes the handling of the filename parameter. + + Uses the RE used by Ruby in cgi.rb, that handles + the embedded semicolons in the filename correctly. + + Signed-off-by: Christian Neukirchen + +Thu Oct 8 08:48:34 2009 +0200 Daniel Rodríguez Troitiño + * Test multipart upload with a semicolon in the name. + + Test a multipart upload in which the specified + filename includes a semicolon. Should be parsed + with the included filename, but Rack stops at the + filename. + + Signed-off-by: Christian Neukirchen + +Mon Oct 5 22:53:28 2009 +0100 raggi + * Relax Lint slightly to allow subclasses of the required types + +Tue Sep 8 19:11:05 2009 +0200 Michael Fellinger + * Pass more options to mongrel + +Sat Sep 5 13:29:45 2009 -0500 Joshua Peek + * lib/ should already be added to the $LOAD_PATH by the package manager + +Sat Sep 5 13:27:50 2009 -0500 Joshua Peek + * rackup should expect $LOAD_PATH to already be set up + +Tue Aug 11 13:56:50 2009 -0700 dmann + * Checking that the FCGI::Stream class exists, before trying to override the read method. The FCGI::Stream class does not exist in the pure ruby version of the FCGI module. FCGI will use pure ruby if: + 1. FCGI_PURE_RUBY = true + 2. The C version of FCGI doesn't load (lib not found or the like) + + Signed-off-by: Christian Neukirchen + +Wed Aug 12 00:36:25 2009 +0200 Christian Neukirchen + * Merge commit 'official/master' + +Thu Aug 6 18:41:52 2009 -0500 Eric Wong + * Update Rack::Utils::HTTP_STATUS_CODES hash + + This adds the following status code lookups for the 102, 207, + 226, 306, 422, 423, 424, 426, 506, 507, and 510 status codes. + + Signed-off-by: Joshua Peek + +Wed Aug 5 11:01:43 2009 -0500 Joshua Peek + * Revert "Add common HTTP strings to Rack::Const" + + This reverts commit 6ae0a1014c2bfc06ad4d91ea04da5c42be454079. + +Mon Aug 3 22:33:24 2009 -0500 Joshua Peek + * Kill stray debug line + +Mon Aug 3 22:21:15 2009 -0500 Joshua Peek + * Use more compatible gzip write api instead of "<<". + + Fixes undefined method `<<' for Zlib::GzipWriter on JRuby + +Mon Aug 3 16:03:30 2009 -0500 Joshua Peek + * Add common HTTP strings to Rack::Const + +Mon Aug 3 12:02:37 2009 -0500 Joshua Peek + * Don't buffer response bodies in session store by creating an unnecessary response wrapper. Extracted set and delete cookie helpers into Utils so they can be used outside Response. + +Mon Aug 3 11:41:05 2009 -0500 Masayoshi Takahashi + * rack.input should be ASCII-8BIT even if it's StringIO (for test) + + Signed-off-by: Joshua Peek + +Thu Jun 25 03:21:21 2009 +0800 Masayoshi Takahashi + * use Rack::Utils::bytesize, not String#size for multibyte characters in Ruby1.9 + + Signed-off-by: Joshua Peek + +Mon Aug 3 10:49:11 2009 -0500 Julien Sanchez + * Mongrel handler should use rack_input var + + Signed-off-by: Joshua Peek + +Mon Aug 3 10:33:18 2009 -0500 Joshua Peek + * Return an empty string for Request#host if HTTP_HOST and SERVER_NAME are both missing + +Thu Jul 30 22:53:37 2009 -0500 Patrick Aljord + * added ogv mime type so that firefox can read theora videos using the html5