updated changes and versions, commented on deprecations in the delta file
John Napiorkowski [Mon, 30 Dec 2013 16:03:35 +0000 (10:03 -0600)]
Changes
lib/Catalyst.pm
lib/Catalyst/Delta.pod
lib/Catalyst/Engine.pm
lib/Catalyst/Runtime.pm

diff --git a/Changes b/Changes
index 4b28b3f..d038b6f 100644 (file)
--- a/Changes
+++ b/Changes
@@ -3,6 +3,16 @@
   - Announcing the repo is not open for development of Perl Catalyst 'Runner'
   - http://questhub.io/realm/perl/explore/latest/tag/runner
 
+5.90059_004 - TBA
+  - Make sure IO handle objects do 'getline' before sending them to the
+    response callback, to properly support the PSGI specification.
+  - Added some backcompat code when setting a response body to an object
+    that does 'read' but not 'getline'.  Added deprecation notice for this
+    case.  Added docs to Catalyst::Delta.
+  - Official warning that Catalyst::Engine::PSGI is no longer supported and
+    we will be removing any existing backcompat code for this engine in a
+    future release.
+
 5.90059_003 - 2013-12-24
   - More documentation about alternative ways to setup middleware.
   - removed unneeded use of Devel::Dwarn in test case that was causing
index b9dc3f1..39d513d 100644 (file)
@@ -123,7 +123,7 @@ __PACKAGE__->stats_class('Catalyst::Stats');
 
 # Remember to update this in Catalyst::Runtime as well!
 
-our $VERSION = '5.90059_003';
+our $VERSION = '5.90059_004';
 
 sub import {
     my ( $class, @arguments ) = @_;
index 22d3244..08b043c 100755 (executable)
@@ -41,7 +41,20 @@ issue you can apply the middleware L<Plack::Middleware::BufferedStreaming>
 or report specific problems to the dev team.
 
 Also, we have started migrating code in Catalyst to equivilent Plack
-Middleware when such exists and is correct to do so. 
+Middleware when such exists and is correct to do so.
+
+We also deprecated setting the response body to an object that does 'read'
+but not 'getline'.  If you are using a custom IO-Handle like object for
+response you should verify that 'getline' is supported in your interface.
+You will get a first use warning for this error in your logs.  Unless we
+here this case is a major issue for people, we will be removing support
+in a near future release of Catalyst.
+
+L<Catalyst::Engine::PSGI> is also officially no longer supported.  We will
+no long run test cases against this and can remove backcompat code for it
+as deemed necessary for the evolution of the platform.  You should simple
+discontinue use of this engine, as L<Catalyst> has been PSGI at the core
+for several years.
 
 =head2 VERSION 5.90053
 
index 349bc43..19a6cee 100644 (file)
@@ -103,6 +103,11 @@ sub finalize_body {
                     $got = 0 unless $self->write($c, $buffer );
                 } while $got > 0;
 
+                # I really am guessing this case is pathological.  I'd like to remove it
+                # but need to give people a bit of heads up
+                $c->log->warn('!!! Setting $response->body to an object that supports "read" but not "getline" is deprecated. !!!')
+                  unless $self->{__FH_READ_DEPRECATION_NOTICE_qwvsretf43}++;
+
                 close $body;
                 return;
             } else {
index fe879fa..0fc06f7 100644 (file)
@@ -7,7 +7,7 @@ BEGIN { require 5.008003; }
 
 # Remember to update this in Catalyst as well!
 
-our $VERSION = '5.90059_003';
+our $VERSION = '5.90059_004';
 
 =head1 NAME