Fix bug in Catalyst::Engine which could cause it to all go wrong if read returned...
[catagits/Catalyst-Runtime.git] / Changes
diff --git a/Changes b/Changes
index adc4932..aa1c453 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,12 +1,30 @@
 # This file documents the revision history for Perl extension Catalyst.
 
   Bug fixes:
+   - Fix bug in Catalyst::Engine which would cause a request parsing to end
+     prematurely in the hypothetical case where calling $engine->read returned
+     the single character '0'.
+
+  Documentation:
+   - Improved documentation on read and read_chunk methods in Catalyst::Engine.
+
+5.80014_02 2009-12-01 00:55:23
+  Bug fixes:
    - Fix reporting the wrong Content-Length if the response body is an
      upgraded string. Strings mean the same thing whether or not they are
      upgraded, may get upgraded even after they are encoded, and will
      produce the same output either way, but bytes::length returns too big
      values for upgraded strings containing characters >127
    - Fix t/live_fork.t with bleadperl (RT#52100)
+   - Set $ENV{PATH_INFO} from $ENV{REQUEST_URI} combined with
+     $ENV{SCRIPT_NAME} if possible. This is many web servers always fully
+     decode PATH_INFO including URI reserved characters. This allows us to
+     tell foo%2cbar from foo%252cbar, and fixes issues with %2F in paths
+     being incorrectly decoded, resulting in too many path parts (rather
+     than 1 path part containing a /, on some web servers (at least nginx).
+     (RT#50082)
+   - Require new HTTP::Request::AsCGI so that it fully decodes $ENV{PATH_INFO}
+     in non CGI contexts. (RT#50082)
 
   Refactoring / cleanups:
    - NoTabs and Pod tests moved to t/author so that they're not run