+0.62 2017-11-04 16:35 UTC
+ + Fix : [RT #123314] : Compatibility with CV-in-stash optimisation
+ Thanks Father Chrysostomos for reporting and contributing a
+ patch.
+
+0.61 2017-01-24 15:30 UTC
+ + Fix : [RT #115792] : Latest blead stack unwind work causes infloop
+ in a test.
+ A change in how the core frees temporary values after eval
+ interacted badly with Variable::Magic and caused infinite loops
+ when a free callback was attached to a wizard. This change was
+ temporarily reverted, but is going to be reinstated, and
+ Variable::Magic is now able to play nicely when this happens.
+ Thanks Peter Rabbitson for reporting and David Mitchell for
+ providing a fix.
+
+
+0.60 2016-09-06 22:30 UTC
+ + Chg : A large chunk of boilerplate XS code, which is also used in
+ other XS modules, has been factored out of the main .xs file
+ to a collection of .h files in the xsh subdirectory.
+ + Fix : [RT #128989] : Bleadperl v5.25.3-266-g1d7e644 breaks V::M.
+ Len magic is no longer called for negative array indices
+ fetches, so the relevant tests are now skipped.
+ Thanks Andreas Koenig for reporting.
+
+0.59 2015-10-05 19:05 UTC
+ + Chg : The magic callbacks are now always executed in a new stack.
+ This should have no negative impact (performance-wise or
+ behaviour-wise) on your code, but may actually fix some obscure
+ bugs.
+ + Fix : [RT #107294] : Crash during install of Variable-Magic-0.58
+ running "t\18-opinfo.t".
+ A recent change in the core implementation of transliterations
+ caused an undefined behaviour when it interacted with this
+ module, which resulted in visible stack corruption on Win32
+ perls compiled with MSVC when the op_info feature was enabled.
+ This was fixed by using a separate stack for the magic
+ callbacks.
+ Thanks Peter Stokes for reporting and providing greatly
+ helpful feedback.
+ + Fix : The object op_info feature will now handle correctly Unicode
+ transliteration, multideref and custom ops.
+
+0.58 2015-07-21 16:00 UTC
+ + Add : If a non-len magic callback returns a reference, it will now
+ only be freed at the end of the statement that caused the
+ magic to trigger. This allows the user to attach free magic
+ (or a plain destructor) to a token returned from the callbacks
+ in order to defer an action after the magic is processed by
+ perl.
+ + Fix : Test failures of threads tests on systems with harsh resource
+ constraints causing the threads to exit() during run.
+
+0.57 2015-04-17 15:20 UTC
+ + Chg : The new environment variable to enable thread tests on older
+ perls is PERL_FORCE_TEST_THREADS. Note that this variable
+ should only be turned on by authors.
+ + Fix : Segfaults when the module is loaded by several threads (or
+ Windows emulated processes) ran in parallel.
+ + Fix : Segfaults when the module is loaded in a thread, which spawns
+ itself a new thread, and that child thread outlives its parent.
+ + Fix : Small memory leaks of structures required for thread safety.
+ + Fix : Update the Windows ActivePerl + gcc 3.4 workaround for
+ ExtUtils::MakeMaker 7.04. Thanks Christian Walde for reporting
+ and feedback on this issue.
+ + Tst : The global destruction test will now be exercised on any perl
+ that has DEBUGGING set.
+ + Tst : Optional capturing tests in t/17-ctl.t that were only run when
+ Capture::Tiny was present were converted to an IPC::Open3
+ based helper and will now be run everywhere.
+
+0.56 2015-03-11 15:15 UTC
+ + Fix : [RT #101410] : Install fails in blead
+ Even though the change that caused this error was reverted from
+ blead, lvalue uses of ERRSV have been removed from this module
+ so that there will be no breakage when this change is possibly
+ reintroduced in the following months.
+ Thanks Dave Rolsky for reporting.
+ + Tst : $ENV{$Config{ldlibpthname}} is now preserved on all platforms,
+ which will address failures of t/17-ctl.t with unusual
+ compilers (like icc) that link all their compiled objects to
+ their own libraries.
+ + Tst : The global destruction test is now only run on perl 5.13.4 and
+ higher, and only if either Perl::Destruct::Level is installed
+ or PERL_DESTRUCT_LEVEL is set and the perl is a debugging perl.
+ This will solve rare crashes of t/15-self.t on perl 5.13.3 and
+ older.
+
+0.55 2014-10-20 23:45 UTC
+ + Fix : [RT #99319] : t/18-opinfo.t: test failure due to change in
+ perl 5 blead
+ The new METHOP op class added in perl 5.21.5 is now supported.
+ Thanks James E Keenan for reporting.
+
+0.54 2014-09-22 17:30 UTC
+ + Add : The new constant VMG_COMPAT_CODE_COPY_CLONE evaluates to true
+ if your perl calls 'copy' magic when a magical code prototype
+ is cloned, which is currently the case for perl 5.17.0 and
+ above.
+ + Fix : [RT #90205] : copy magic on subs puts raw CV in $_[3]
+ $_[3] will now contain a reference to the cloned code when
+ 'copy' magic is called for a coderef.
+ Thanks Lukas Mai for reporting.
+ + Fix : t/35-stash.t has been taught about perl 5.21.4.
+ + Fix : Tests using run_perl() in t/17-ctl.t will no longer fail on
+ Android.
+
+0.53 2013-09-01 17:50 UTC
+ This is a maintenance release. The code contains no functional change.
+ Satisfied users of version 0.52 can skip this update.
+ + Fix : [RT #86338] : typo fix.
+ Thanks dsteinbrunner@pobox.com for the patch.
+ + Tst : Author tests are no longer bundled with this distribution.
+ They are only made available to authors in the git repository.
+
+0.52 2012-11-05 02:30 UTC
+ + Add : The new constant VMG_COMPAT_SCALAR_NOLEN evaluates to true
+ when your perl does not call 'len' magic for scalars, which
+ is the case for perl 5.17.4 and above.
+ This fixes RT #80388.
+ + Tst : t/35-stash.t has been taught about perl 5.17.4.
+ + Tst : Author tests overhaul.
+
+0.51 2012-08-18 15:00 UTC
+ + Fix : It is now safe to call dispell() from inside 'free', 'copy' and
+ 'uvar' callbacks to dispell the magic currently in use.
+ Thanks Clinton Gormley for reporting.
+ + Fix : Exceptions thrown from inside a 'free' callback are now always
+ consistently propagated outside of the callback. They used to
+ be lost when the 'free' callback was invoked at the end of an
+ eval block or string.
+ + Fix : The 'reset RMG flag' workaroundn used to allow wizards with
+ both 'uvar' and 'clear' magics to be cast onto a hash, has been
+ made thread-safe.
+