The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Contextual-Return

0.0.1  Mon Mar 14 22:53:00 2005
       Initial release.


0.0.2  Sun May 22 05:48:19 2005

    - added dependency on version.pm



0.1.0  Fri Feb 17 12:15:18 2006

    - added LAZY {...} block for better self-documentation

    - fixed propagation of exceptions from methods called on returned object

    - Added proxying of can() and isa(). (Should VERSION() be done as well?)
      (thanks, Rob)

    - Added FIXED() to support morphing of scalar return values (thanks, Rob)

    - BACKWARDS INCOMPATIBLE CHANGE:
      Added fallback to scalar returns for list context
      To get the old behavior, add:
        LIST { croak "Can't call this sub in list context" } 

    - Made return values under ${} and @{} remain fully lazy (unless FIXED)

    - Added LVALUE, RVALUE, and NVALUE blocks for implementing lvalue returns

    - Added FAIL block for smart failure

    - Added Contextual::Return::FAIL_WITH to configure FAIL


0.2.0  Tue Mar  6 16:34:54 2007

    - Fixed doc nit (thanks BrowserUK)

    - Fixed test suite under Windows (thanks Nigel and Doug)

    - Fixed doc bugs for FAIL_WITH

    - Removed dependency on Carp internals (now replaces them!)

    - Fixed VOID handling (now correctly falls back to DEFAULT)

    - Fixed caller semantics within handler blocks (thanks Schwern)

    - Fixed edge case of C::R::V metainformation requests (thanks Andrew)

    - Rejigged FIXED/LAZY/ACTIVE

    - Added RESULT and RECOVER blocks (thanks Aaron)


0.2.1  Thu Mar 29 17:59:40 2007

    - Removed spurious Smart::Comments dependency (thanks Dave!)


0.003001  Tue Jun 22 17:20:36 2010

    - Added Contextual::Return::FREEZE and Contextual::Return::DUMP
      to facilitate debugging

    - General clean-and-tighten of documentation

    - Added CLEANUP blocks

    - Added PUREBOOL context

    - [BACKWARDS INCOMPATIBLE CHANGE] Changed export interface

    - Added warning about (mis)behaviour of LVALUE, RVALUE, NVALUE
      under the debugger (thanks Steven)

    - Documented METHOD handlers


0.003002  Thu Jan 19 09:27:29 2012

    - Updated version number of Contextual::Return::Failure
      to placate CPAN indexer

    - Improved error messages for bare handlers in bad contexts (thanks Mathew)

    - Work around problems with Test::More and caller


0.004000  Thu Feb 16 14:30:56 2012

    - Fixed context propagation bugs in FIXED and ACTIVE modifiers

    - Added STRICT modifier to prevent fallbacks
      (i.e. impose strict typing on return values)


0.004001  Thu Feb 16 19:01:05 2012

    - Fixed annoying POD nit (thanks Salvatore)


0.004002  Fri Mar  2 06:18:38 2012

    - Fixed significant typo (Carp:carp -> Carp::carp)
      (thanks everyone who reported it)


0.004003  Wed Apr 11 07:55:49 2012

    - Doc patch (thanks Fabrizio)

    - Patched failures.t to account from bleadperl changes
      (thanks Zefram!)


0.004004  Sun Aug  5 17:46:56 2012

    - Further patch to failures.t

    - Added redefinition of Scalar::Util::blessed() to avoid nasty
      surprises (thanks Andrew!)

    - Added confess() and cluck() overrides
      and fixed caller() override to set @DB::args when appropriate


0.004005  Mon Aug 20 10:44:35 2012

    - Further patch for t/confess.t
      (Thanks, David!)


0.004006  Thu Oct  4 16:49:47 2012

    - Circumvented annoying undef-as-key warnings in Perl 5.17+

    - Honour @CARP_NOT's when reporting context


0.004007  Fri Oct  5 23:05:05 2012

    - Added BLESSED handler for better control over how blessed() lies

    - Upgraded reimplementation of blessed() to make more sense