Revision history for Scope-Upper
+0.22 2013-01-30 23:35 UTC
+ + Chg : perl 5.6.1 is required.
+ + Fix : context_info() now ignores %warnings::Bits for perl 5.8.6 and
+ below, just like caller().
+ + Fix : [RT #82220] : Scope-Upper-0.21 test stuck on Windows perl 5.12.3
+ t/93-pod-spelling.t will not crash anymore on perl 5.12 and
+ below.
+ Thanks Gabor Szabo for reporting and Slaven Rezic for debugging
+ this issue.
+ + Tst : Rare test failures of t/07-context_info.t on perl 5.6,
+ t/55-yield-target.t on perl 5.[68], and t/63-uplevel-ctl.t on
+ perl 5.8.[345] have been addressed.
+
+0.21 2012-09-21 15:10 UTC
+ + Fix : context_info() has been taught about perl 5.17.4.
+ + Fix : t/07-context_info.t will no longer fail with perls that have
+ sitecustomize enabled (like many perl builds for Windows).
+ Thanks Steve Hay and Nicholas Clark for debugging help.
+ + Fix : Broken linkage on Windows with gcc 3.4, which appears in
+ particular when using ActivePerl's default compiler suite.
+ For those setups, the Scope::Upper shared library will now be
+ linked against the perl dll directly (instead of the import
+ library).
+
+0.20 2012-09-17 11:00 UTC
+ + Add : The new yield(@values, $context) function can be used to return
+ values to any upper scope, including do or map blocks.
+ The new leave(@values) function is an alias for
+ yield(@values, HERE).
+ + Add : The new context_info($context) function return information
+ about context $context, similarly to what caller() provides
+ but for any upper scope.
+ + Chg : Contexts are now normalized. In previous versions, it was
+ possible for different contexts to refer to the same scope :
+ for example, "for (my $i = 0; $i < 10; ++$i) { ... }" was
+ reachable through two contexts, while "for (@array) { ... }"
+ only by one. Starting from this version, contexts are
+ normalized so that they always represent an actual scope.
+ + Doc : C++ compilers are officially NOT supported.
+ + Fix : Building with a more recent version of perl 5.17.4.
+ + Fix : Debugger compatibility with perl 5.17.1 and above.
+
+0.19 2012-09-01 13:25 UTC
+ + Doc : POD headings have been made linkable.
+ + Fix : Building with perl 5.17.4.
+ + Fix : BUILD_PREREQS are now set for ExtUtils::MakeMaker.
+ + Opt : uplevel() private data structure is 7% smaller on 64 bits
+ architectures.
+ + Tst : Author tests overhaul.
+
+0.18 2011-10-10 20:50 UTC
+ + Add : The uid() function returns an unique identifier for each dynamic
+ scope. The validate_uid() function can be used to check whether
+ one such identifier is valid (i.e. that the scope it refers to
+ is still alive).
+ + Chg : It is no longer possible on perl 5.6 to call goto() in an
+ uplevel callback to replace the uplevel call. This change was
+ needed in order to ensure consistency between platforms
+ regarding to the following fix just below.
+ + Fix : The uplevel() tests now pass on Windows.
+ Thanks C.H. Kang for bringing this to my attention.
+
0.17 2011-10-03 21:45 UTC
- + Fix : uplevel() will now use the correct pad when executing its callback. This fixes at least two issues :
+ + Fix : uplevel() will now use the correct pad when executing its
+ callback. This fixes at least two issues :
- closures defined inside the uplevel callback can now correctly
access lexicals from inside and outside the callback.
- state variables in the uplevel callback now work properly.