Split code to log stats report (RT#127392)
[catagits/Catalyst-Runtime.git] / Changes
diff --git a/Changes b/Changes
index d382ed1..4b488be 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,241 @@
 # This file documents the revision history for Perl extension Catalyst.
 
+  - Fix emitting warnings when REMOTE_ADDR is undefined (RT#113388)
+  - Fix $c->req->hostname empty for IPv6 clients (RT#75731)
+  - split code to log stats report into a separate log_stats method (RT#127392)
+
+5.90122 - 2018-11-03
+  - releasing as stable
+
+5.90_121 - 2018-10-22
+  - use the :utf8_strict (PerlIO::utf8_strict) rather than :encoding file handle
+    layer to handle decoding uploads, as a performance boost.
+  - fix handling of decoding uploaded files.  this fixes the usage of sysread
+    on :utf8 handles, and reenables the tests on all perl versions.  Fixes CPAN
+    RT#125843.  See also erl RT#133585.
+  - giving incorrect types to uri_for will warn to logs rather than via carp
+  - silence warning and error output from tests
+
+5.90120 - 2018-10-19
+  - avoid problematic test using sysread() on :utf8 filehandles on dev perl
+    versions where this is fatal (starting with 5.29.4). see RT#125843.
+
+5.90119 - 2018-09-24
+  - fix test for changes in MooseX::Getopt 0.73 (RT#127050)
+
+5.90118 - 2018-05-01
+  - fix handling of fragments in uri_for when path is an unblessed string (GH#160)
+  - ensure catalyst.pl is included with dist
+  - drop IO::Scalar prereq
+  - include optional test prereqs as develop prereqs
+  - remove unused developer prereq on Catalyst::Engine::PSGI
+  - use namespace::clean consistently rather than namespace::autoclean
+  - use JSON for test metadata to avoid needing YAML
+  - use JSON::MaybeXS consistently in code
+  - drop unused prereq of HTTP::Request::AsCGI
+  - drop unneeded prereq of Class::Data::Inheritable
+  - fix tests to cope with changes in new versions of Time::HiRes
+  - POD typo and syntax fixes
+
+5.90117 - 2018-01-21
+  - Fixed errors in distribution packaging
+
+5.90116 - 2018-01-19
+  - Switch from Module::Install to Distar (solves problems that MI has with newer Perl) haarg++
+  - Killed Test::Aggregate since its clearly doomed
+  - PR135 - improved test cases for query keywork
+  - PR158 - improved docs for Catalyst::Test
+  - PR157 - improved error response for data_handlers
+  - PR156 - POD fixes
+  - PR154 - Few dependencies
+  - PR152 - Better support for HTTP Patch
+
+5.90115 - 2017-05-01
+  - fixes for silent bad behavior in Catalyst::ScriptRole and 'ensure_class_loaded'
+    (hobbs++)
+  - do not require MXRWO if Moose is new enough to have cored it (ether++)
+  - documentation improvements (ether++)
+  - Encoding documentation improvements (colinnewell++)
+  - Improve documentation and test cases for 'abort_chain_on_error_fix' configuration
+    option (melmothx++)
+  - Better debug output when using Hash::MultiValue (tremor69++)
+  - Fixes for detecting debug terminal size (simonamor++)
+
+5.90114 - 2016-12-19
+  - Fixed regression introduced in the last version (5.90113) which caused 
+    application to hang when the action private name contained a string
+    like 'foo/bar..html'.  If you are running 5.90113 you should consider this
+    a required update.
+  - Tweaked travis CI script.
+
+5.90113 - 2016-12-15
+  - Fixed issue with $controller->action_for when targeting an action in
+    a namespace nested inside the current controller and the current controller
+    is a 'root' controller.
+  - Enhanced $controller->action_for so that you can reference the 'parent'
+    controller via relative path (eg ->action_for('../foo')).
+  - Backcompat fix for people that made the mistake of doing $c->{stash}
+  - Sort controllers in setup_actions so cross-controller precedence is
+    consistent.
+
+5.90112 - 2016-07-25
+  - Spelling fixes from Debian group.
+  - Fixed regression introduced in last release that caused the code to crap out
+    if you set the encoding to 'undef'.
+
+5.90111 - 2016-07-20
+  - Improved documentation around some of the unicode changes; tests (melmothx++)
+
+5.90110 - 2016-07-20
+  - Better catching of HTTP style exceptions so that you can reliable use one to
+    override many core method.
+  - Documention on better ways to catch and handle Unicode errors
+  - We now check the unicode in your URL request queries and raise an error if the
+    check fails.  This was done to be consistent with what we do in other parts of
+    the code (such as in args, or POSTed parameters).  If this breaks your code in
+    ways you don't want to fix, you may disable this using the global configuration
+    setting, "do_not_check_query_encoding".
+  - Removed configuration setting, "decode_query_using_global_encoding" since it no
+    longer does anything useful.  Query decoding follows from whatever you set the
+    global encoding to, unless you specify an alternative or to not decode.
+
+5.90106 - 2016-07-05
+  - Fixed regression in debug screen rendering of the private names in chained
+    actions caused by commit 5dd46e24eedec447bdfbc4061ed683b5a17a7b0c.
+  - Fixed incorrect date entered for the release of 5.90105
+  - Fixed some incorrect code in a test case that might be causing test fails
+    in some configurations.
+
+5.90105 - 2016-06-08
+  - Tweak some test cases to try and prevent them from failing in limited cases.
+  - Changed how we compose traits onto the response, request, and stats class so
+    that we compose just once at setup time (performance optimization).  Also added
+    a debug screen at startup to display composed classes to help with debugging.
+  - Fixed a regressed caused by the changes we made to the way ->state works so that
+    now when you forward to an action and that action throws an exception, $c->state
+    is set to 0, instead of the value of the exeption (this is to be as indicated by
+    the documentation). (cventers++ for reported bug and test case).
+  - Changed the code that detects if you try to set HTTP headers after headers are
+    finalized to not warn if you are just requested the response header state.  Tweaked
+    this error message a bit to help people understand it.
+
+5.90104 - 2016-04-04
+  - Merged pull request #131, fix for noisy debug logs when used type constraints
+    in your actions.  Additional changes to the developer debug screen output to
+    improve reporting details.
+  - Merged pull request #133, fix for case when a file upload filename contains
+    wide characters which caused the filename to not appear in the uploads hash.
+
+5.90103 - 2015-11-12
+  - More documentation fixes (thanks to the debian maintainers and melmothx++)
+  - Fixed the way we parse subroutine attribute values to fix a regression
+    introduced in 5.90102.  This is a recommended upgrade (tsibley++, mst++)
+  - Fixed regression around auto actions that escape by throwing an exception
+    which was introduced in the last release.
+  - Bumped namespace::autoclean dep to latest since tests require -except
+
+5.90102 - 2015-10-29
+  - Better warnings when there's an error reading the psgi.input (billmosley++)
+  - Fixed spurious warnings in uri_for when using no arguments (melmothx++ and 
+    paultcochrane++)
+  - Documentation improvements (paultcochrane++)
+  - Improvements to 'search_extra' configuration and tests around using 
+    uri_for as a class method (cngarrison++)
+  - Fix when Path() is set and not geting registered as action (grim8634++)
+  - $c->state is now preserved over actions in a chain, and across begin,
+    auto, ->forward and ->detach.
+
+5.90101 - 2015-09-04
+  - Fixed a regression introduced in the last release which caused test
+    case failure when using a version of Perl 5.14 or older.
+
+5.90100 - 2015-08-24
+  - Document using namespace::autoclean with controllers that have actions
+    with type constraints.
+  - Look for type constraints in super classes and consumed roles.
+  - Change the way the stash middleware works to no longer localize $psgi_env.
+  - If you delegate control to a sub Catalyst application, that application
+    may now return information to the parent application via the stash.
+  - Fix for RT#106373 (Issue when you try to install and also have an old
+    version of Test::Mechanize::WWW::Catalyst)
+
+5.90097 - 2015-07-28
+  - $c->uri_for now defines a final argument for setting the URL fragment
+  /URL anchor.  This is now the canonical approach to setting a fragment
+  via uri_for.
+  - Reverted how we treat $c->uri_for($path) where $path is a string.  When
+    we introduced the UTF-8 work we started encoding stringy paths, which
+    breaks code that did not expect that.  We now consider stringy $path to
+    be 'expert' mode and you are expected to perform all nessary encoding.
+
+5.90096 - 2015-07-27
+  - Fixed regression introduced in previous release that prevented a URI
+    fragment from getting properly encoded.  Added more tests around this
+    to define behavior better.
+
+5.90095 - 2015-07-27
+  - Minor test case tweak that I hope solve some minor hiesenfails reported
+    on CPAN testers.
+  - (https://github.com/perl-catalyst/catalyst-runtime/pull/109) added som
+    additional directions to how to setup a development sandbox
+  - (https://github.com/perl-catalyst/catalyst-runtime/pull/108) fix bug in
+    encoding where URI fragment seperator '#' in ->uri_for would get encoded.
+
+5.90094 - 2015-07-24
+  - When there is a multipart POST request and the parts have extended
+    HTTP headers, try harder to decode and squeeze a meaningful value
+    out of it before giving up and crying.  Updated docs and tests to
+    reflect this change.  This should solve problems when your clients
+    are posting multipart form values with special character sets.
+  - Fixed issue where last_error actually returned the first error.  Took
+    the change to add a 'pop_errors' to give the inverse of shift_errors.
+  - Merged Pull Requests:
+    - https://github.com/perl-catalyst/catalyst-runtime/pull/95
+    - https://github.com/perl-catalyst/catalyst-runtime/pull/96
+    - https://github.com/perl-catalyst/catalyst-runtime/pull/97
+    - https://github.com/perl-catalyst/catalyst-runtime/pull/98
+    - https://github.com/perl-catalyst/catalyst-runtime/pull/106
+    - https://github.com/perl-catalyst/catalyst-runtime/pull/107
+
+5.90093 - 2015-05-29
+  - Fixed a bug where if you used $res->write and then $res->body, the
+    contents of body would be double encoded (gshank++).
+
+5.90092 - 2015-05-19
+  - Allows you to use a namespace suffix for request, response and stats
+    class traits.  Docs and tests for this.
+  - Refactor the change introduced in 5.90091 to solve reported issues (for
+    example Catalyst::Controller::DBIC::API fails its tests) and to be a more
+    conservative refactor (new code more closely resembles the orginal code
+    that has proven to work for years.)
+
+5.90091 - 2015-05-08
+  - Fixed a bug where if an injected component expanded sub components, those
+    sub components would not show up in the startup debug dev console (
+    even though they were actually created).
+
+5.90090 - 2015-04-29
+  - Updated some documention in Catalyst::Request::Upload to clarify behavior
+    that RT ticket reported as confusing or unexpected
+  - Merged all changes from 5.90089_XXX development cycle.
+  - removed a mistaken use of Test::Most, which is not a core Catalyst
+    dependency.  Used Test::More instead.
+
+5.90089_004 - 2015-04-28
+  - Added swanky github badges.
+  - Reverted a change to how the stats engine is setup that was incorrect.
+  - New application setup hook 'config_for' which allows one to get the
+    canonical application configuration for a controller, view or model, or
+    a plugin.  Can also be used to override and adapt what configuration is
+    retrieved.
+
+5.90089_003 - 2015-04-27
+  - Fixed an issue where a delayed controller that did ACCEPT_CONTEXT would
+    raise an error when registering its actions.
+  - Updated some documentation around route matching.
+  - refactored the setup of injected components to allow you to hook into
+    the injection and do custom injection types.
+
 5.90089_002 - 2015-04-17
   - Changed the way we check for presence of Type::Tiny in a test case to be
     more explicit in the version requirement.  Hopefully a fix for reported
     in general any request or response trait on CPAN that used 'CatalystX::RoleApplicator'
     should now just work with this core feature.  Note that  can also set thse roles
     via new configuration keys, 'request_class_traits', 'response_class_traits' 
-    and 'stats_class_traits'. If you use both config at application class methods, they
-    are combined.
+    and 'stats_class_traits'. If you use both configuration and application class methods,
+    they are combined.
   - NEW FEATURE: Core concepts from 'CatalystX::ComponentsFromConfig'.  You can now
     setup components directly from configuration.  This could save you some effort and
     creating 'empty' base classes in your Model/View and Controller directories.  This
     report any stats related issues.
   - Added a developer mode warning if you call a component with arguments that does not
     expect arguments (for example calling $c->model('Foo', 1,2,3,4) where Myapp::Model::Foo
-    does not ACCEPT_CONTEXT.   Only components that ACCEPT_CONTEXT do anything with
+    does not ACCEPT_CONTEXT.  Only components that ACCEPT_CONTEXT do anything with
     passed arguments in $c->controller/view/model.
   - Change the way components are setup so that you can now rely on all components
     when setting up a component.  Previously application scoped components could not