From: John Napiorkowski Date: Mon, 30 Dec 2013 16:03:35 +0000 (-0600) Subject: updated changes and versions, commented on deprecations in the delta file X-Git-Tag: 5.90060~32 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=commitdiff_plain;h=8e0986141412682879028a6b44189892227f1324 updated changes and versions, commented on deprecations in the delta file --- diff --git a/Changes b/Changes index 4b28b3f..d038b6f 100644 --- 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 diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index b9dc3f1..39d513d 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -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 ) = @_; diff --git a/lib/Catalyst/Delta.pod b/lib/Catalyst/Delta.pod index 22d3244..08b043c 100755 --- a/lib/Catalyst/Delta.pod +++ b/lib/Catalyst/Delta.pod @@ -41,7 +41,20 @@ issue you can apply the middleware L 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 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 has been PSGI at the core +for several years. =head2 VERSION 5.90053 diff --git a/lib/Catalyst/Engine.pm b/lib/Catalyst/Engine.pm index 349bc43..19a6cee 100644 --- a/lib/Catalyst/Engine.pm +++ b/lib/Catalyst/Engine.pm @@ -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 { diff --git a/lib/Catalyst/Runtime.pm b/lib/Catalyst/Runtime.pm index fe879fa..0fc06f7 100644 --- a/lib/Catalyst/Runtime.pm +++ b/lib/Catalyst/Runtime.pm @@ -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