X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=Changes;h=6a9695192f17387641c51c6098775aa63689bbb2;hb=dcc300c85d8832a6e0ad6852f68ea4ec5899348d;hp=cdcf75b32e7992bbc28c92c3287d63e4a681b7e6;hpb=f1d34eeb61ec676615d9aafe69110af9b0dc302a;p=perl%2Fmodules%2FScope-Upper.git diff --git a/Changes b/Changes index cdcf75b..6a96951 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,67 @@ Revision history for Scope-Upper +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 : + - 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. + + Fix : It is now generally possible to call goto() in the uplevel'd + code to replace the uplevel stack frame. There are two cases + for which it is still not possible : + - if -D flags were set when running perl (as in "perl -Dt ..."). + - if the perl runloop has been replaced with a custom one by + another module. + If uplevel() detects that the replacement code contains a goto + statement, and is in one of those two cases, then it will refuse + to execute the callback and throw an exception. + Note that this fix implies a run-time overhead of uplevel() + proportional to the size of the the callback in every case + (with a small ratio), and proportional to the size of ALL the + code executed as the result of the uplevel call (including + subroutine calls inside the callback) when a goto statement is + found in the uplevel callback. + + Fix : uplevel() has been taught how to handle XS callbacks properly. + + Fix : The cause of "Attempt to free unreferenced scalar" warnings + when using uplevel() has been addressed. + + Fix : [RT #71212] : build failure on Windows. + The module does no longer rely on calling Perl_cv_clone, which + isn't exported. + Thanks C.H. Kang for reporting. + +0.16 2011-09-03 23:00 UTC + + Add : uplevel($code, @args, $cxt) executes $code with arguments @args + in the upper context pointed by $cxt. + This is an XS version of the well-known uplevel() routine from + Sub::Uplevel. There are a few differences between both + implmentations that are listed in the documentation. + The XS version is roughly 10 times faster than the pure-Perl + version. + +0.15 2011-08-24 14:20 UTC + + Fix : Localizing subroutines in an higher scope will now correctly + update the method cache. + 0.14 2011-02-27 00:00 UTC + Fix : [RT #64997] : Compatibility with perl 5.13.10. Thanks Dave Mitchell for the notice.