+0.48 2012-02-17 23:40 UTC
+ + Add : You can now pass a reference to undef as the magic callback in
+ order to install a no-op callback.
+ Thanks Florian Ragwitz for the suggestion.
+
+0.47 2011-10-27 16:55 UTC
+ + Add : The new constant VMG_COMPAT_HASH_DELETE_NOUVAR_VOID evaluates
+ to true when "delete $hash{key}" does not call 'delete' uvar
+ magic in void context.
+ + Chg : The MAGIC tokens created by this module no longer use the
+ mg_private member for storing a "magical" signature.
+ + Fix : Triggering magic in a thread on a variable cloned from the main
+ interpreter, and when the wizard already went out of scope,
+ will not segfault anymore.
+ + Opt : The pointer table is no longer needed to ensure thread safety.
+ The size of the object code is about 8% smaller for threaded
+ perls.
+ + Tst : Threads tests will not fail anymore if resources constraints
+ prevent the system from creating all the required threads.
+
+0.46 2011-01-23 16:45 UTC
+ + Fix : [RT #64866] : Assertion failure with perl 5.13.9.
+ The real problem was that dispell() wasn't properly resetting
+ the magical sv flags, which became visible in the test suite
+ only with perl 5.13.9.
+ Thanks Joshua ben Jore for reporting.
+
+0.45 2010-11-21 23:15 UTC
+ This is a maintenance release. The code contains no functional change.
+ Users of 0.44 can skip this update.
+ + Doc : C++ compilers are officially NOT supported.
+ + Doc : The minimum perl 5.10.0 requirement for uvar magic has been
+ made more explicit.
+ Thanks Peter Rabbitson for pointing this out and contributing a
+ patch.
+ + Tst : Tune for perl 5.13.7.
+ + Tst : Capture::Tiny will be used in t/17-ctl.t if and only if it can
+ capture a simple run.
+
+0.44 2010-09-24 19:10 UTC
+ + Fix : Broken linkage on Windows with gcc 3.4, which appears in
+ particular when using ActivePerl's default compiler suite.
+ For those setups, the Variable::Magic shared library will now
+ be linked against the perl dll directly (instead of the import
+ library). This (should) fix RT #51483.
+ Thanks Christian Walde for helping to reproduce this failure
+ and extra testing.
+ + Rem : Support for development perls from the 5.11 branch but older
+ than the 5.11.0 release was removed. This could cause more
+ recent setups to fail.
+ + Tst : Threads tests are now only run on perl 5.13.4 and higher.
+ They could segfault randomly because of what seems to be an
+ internal bug of Perl, which has been addressed in 5.13.4.
+ There is also an environment variable that allows you to
+ forcefully run those tests, but it should be set only for
+ author testing and not for end users.
+
+0.43 2010-06-25 23:35 UTC
+ + Add : The new constant VMG_COMPAT_GLOB_GET tells you whether get magic
+ is called for globs. It's true starting perl 5.13.2.
+ + Chg : All callbacks are now called within an eval-like context.
+ Only free callbacks used to be called that way.
+ + Fix : Some exceptions thrown from a free callback could be lost.
+ + Fix : Croak messages could sometimes be repeated several times.
+ + Fix : t/41-clone.t segfaulting with perl 5.13.2.
+
+0.42 2010-05-19 00:15 UTC
+ This is a maintenance release. The code contains no functional change.
+ Users of 0.41 can skip this update.
+ + Fix : Test failures with perl 5.13.
+ + Tst : Improve coverage.
+
+0.41 2010-03-15 17:35 UTC
+ + Doc : Tweaks and fixups.
+ Thanks Shlomi Fish.
+ + Fix : Compatibility with the soon-to-be-released perl 5.12.0.
+ + Fix : Correctly propagate the errors thrown when variable destruction
+ happens at compile-time and not from inside eval STRING.
+ Thanks Florian Ragwitz and Ash Berlin for reporting.
+
+0.40 2010-01-06 23:20 UTC
+ + Fix : Possible memory miswrites when passing data arguments to cast().
+ + Fix : Minor C portability tweaks.
+
+0.39 2009-12-01 00:05 UTC
+ + Add : You can use a function name as a callback by passing a string
+ reference to wizard() instead of a code reference.
+ + Fix : Compatiblity with perl 5.11.1 and 5.11.2.
+ + Fix : Scalars stored into the data slot no longer leak.
+ + Fix : Thread destruction should not segfault anymore.
+ + Opt : As a result of removing the deprecated features, less memory is
+ used for both threaded (a pointer table is used instead of a
+ hash) and non-threaded (no global structure is needed anymore)
+ perls.
+ + Rem : As advertised in the precendent version, all the signature
+ related features were removed. This includes the 'sig' option
+ to wizard(), the getsig() and gensig() functions, and the SIG_*
+ constants.
+
+0.38 2009-10-04 16:10 UTC
+ + Dep : All the signature-related features are DEPRECATED and will be
+ removed in december 2009. This includes the 'sig' option to
+ wizard(), the getsig() and gensig() functions, and the SIG_*
+ constants.
+ Afaik those features were never used in real life, and they make
+ the XS code slow and brittle. If you want your wizards to be
+ globally available, you'll have to handle that yourself by
+ storing them in a hash.
+ + Doc : More examples in a new COOKBOOK section.
+ + Fix : Compatiblity with the 5.11.0 release. The new compatibility
+ constant VMG_COMPAT_ARRAY_PUSH_NOLEN_VOID was added to cover
+ this.
+ + Fix : Work around Kwalitee test misfailures.
+
+0.37 2009-08-25 15:25 UTC
+ + Add : The new constant VMG_FORKSAFE can be tested to know whether the
+ module will behave nicely when fork()ing. It's currently always
+ true except on Windows where you need perl 5.10.1 for it to be
+ true.
+ + Doc : Nits and clarifications.
+
+0.36 2009-07-05 16:30 UTC
+ + Chg : getdata() now returns an empty list when no magic is present.
+ It used to return undef but did not croak as stated in the doc.
+ Thanks Matt S. Trout for pointing this out.
+ + Fix : Building and tests with ActiveState Perl 5.8 build >= 822.
+
+0.35 2009-05-15 20:50 UTC
+ This is a maintenance release. Users of 0.34 can skip this update.
+ + Chg : uvar magic used to be enabled for 5.9.5. It now requires 5.10 or
+ later.
+ + Fix : Silence compilation warnings for cxinc().
+ + Rem : The workaround introduced in 0.31 for the "Unknown errors" issue
+ was removed, as regression tests show that 0.34 provides a
+ better fix.
+ + Tst : Skip t/40-threads.t on 5.8.x with old versions of threads and
+ threads::shared.
+