Revision history for indirect
+0.37 2016-07-12 16:40 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 #115392] : Intermittent segfaults with heredocs
+ Heredocs should now be handled correctly.
+ Thanks Graham Knop for reporting.
+
+0.36 2015-07-17 22:15 UTC
+ + Fix : [RT #104312] : fatal hides perl errors in modules
+ no indirect 'fatal' will no longer hide compilation errors
+ occurring before indirect constructs.
+ Thanks Lukas Mai for reporting.
+
+0.35 2015-04-06 22:20 UTC
+ + Fix : The module could end being disabled in one thread if it was
+ first loaded in another thread and that thread was immediately
+ terminated. This is now fixed and should address test failures
+ of t//09-load-threads.t and t/42-threads-global.t.
+
+0.34 2015-04-02 19:50 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 : [RT #100068] : add link to historical tchrist post
+ The link has been added to the documentation. Thanks Olivier
+ Mengué for reporting.
+ + Fix : Segfaults when the module is loaded by several threads (or
+ Windows emulated processes) ran in parallel.
+ + Fix : Update the Windows ActivePerl + gcc 3.4 workaround for
+ ExtUtils::MakeMaker 7.04. Thanks Christian Walde for reporting
+ and feedback on this issue.
+ + Fix : Be really compatible with the optional OP_PARENT feature.
+ + Tst : $ENV{$Config{ldlibpthname}} is now preserved on all platforms,
+ which will address failures of t/41-threads-teardown.t and
+ t/50-external.t with unusual compilers (like icc) that link all
+ their compiled objects to their own libraries.
+
+0.33 2014-09-29 20:20 UTC
+ + Fix : [RT #99083] : Breaks eval in an END block in Win32 pseudo-forks.
+ Thanks Graham Knop for reporting.
+ + Fix : Segfaults during global destruction of a thread or a
+ pseudo-fork.
+
+0.32 2014-09-21 20:15 UTC
+ + Add : Support for the PERL_OP_PARENT optional feature introduced in
+ perl 5.21.2.
+ + Fix : [RT #92806] : Tests that use run_perl() fail on Android
+ Thanks Brian Fraser for the patch.
+ + Fix : indirect constructs will no longer segfault while inside
+ the empty package on perl 5.8.x. This fix may also prevent
+ some segfaults during global destruction.
+
+0.31 2013-09-05 16:45 UTC
+ + Fix : [RT #88428] : no indirect in eval can trigger for direct calls
+ on __PACKAGE__
+ Thanks Graham Knop for reporting.
+ + Tst : Author tests are no longer bundled with this distribution.
+ They are only made available to authors in the git repository.
+
+0.30 2013-05-16 15:55 UTC
+ + Fix : [RT #83806] : false positives with Devel::Declare
+ [RT #83839] : false positive using ? : syntax
+ Thanks Andrew Main for the patch.
+ However, please note that the reason this patch seems to fix
+ thinks has not been explained.
+ + Fix : [RT #84649] : incorrect RT link in metadata
+ Thanks Karen Etheridge for reporting.
+
+0.29 2013-03-05 01:30 UTC
+ + Fix : [RT #83659] : false positives
+ Proper method calls in string-like environments (like
+ "@{[ $x->new ]}" will no longer be reported as indirect.
+ This was a regression in 0.28.
+ Thanks Andrew Main for reporting.
+ + Fix : Broken linkage on Windows with gcc 3.4, which appears in
+ particular when using ActivePerl's default compiler suite.
+ For those setups, the indirect shared library will now be
+ linked against the perl dll directly (instead of the import
+ library).
+
+0.28 2013-02-26 17:05 UTC
+ + Fix : [RT #83450] : newlines confuse indirect
+ Perl sometimes resets the line buffer between the object and
+ the method name (e.g. for "sort Class\n->method" outside of
+ eval), and this could cause direct method calls to be reported
+ as indirect.
+ Thanks Gianni Ceccarelli for reporting.
+ + Fix : Check functions are now replaced and restored in a thread-safe
+ manner, either by using the wrap_op_checker() function from perl
+ when it is available (starting from perl 5.16) or by taking the
+ OP_REFCNT mutex on older perls.
+
+0.27 2013-01-30 19:00 UTC
+ + Fix : [RT #82562] : indirect/Devel::CallParser interaction
+ indirect has been taught to play nicely with Devel::CallParser.
+ Thanks Andrew Main for the patch.
+ + Tst : Author tests overhaul.
+
+0.26 2011-10-23 14:25 UTC
+ + Add : "no indirect 'global'" enables the pragma for the whole program,
+ except for lexical scopes that "use indirect" explicitely.
+ + Chg : Passing both the 'fatal' and 'hook' options to unimport() is
+ now considered an error, and will result in an exception.
+ unimport() used to consider only the first passed option of
+ those two, and silently ignored the other.
+ + Tst : Test failures of t/41-threads-teardown.t and t/50-external.t on
+ Cygwin should have been addressed.
+ + Tst : Threads tests will not fail anymore if resources constraints
+ prevent the system from creating all the required threads.
+
+0.25 2011-08-24 15:40 UTC
+ + Fix : RT #69291 is now also fixed for perl 5.8. The pragma will no
+ longer vivify the "indirect" entry in the hints hash %^H on
+ perl 5.8.
+ + Tst : Attempt to make t/50-external.t pass on Cygwin.
+
+0.24 2011-07-17 23:15 UTC
+ + Fix : [RT #64521] : "no indirect" leaking into eval.
+ This is currently only fixed for perl 5.10 (perl 5.12 and
+ higher were never affected). It was caused by a very stupid
+ mistake of mine that was introduced in indirect version 0.23.
+ Thanks Michael G Schwern for reporting.
+ + Fix : [RT #69291] : indirect.pm breaks %^H.
+ This was caused by the same mistake as for the previous bug,
+ and as such it is also only fixed for perl 5.10 (and never
+ affected perl 5.12).
+ Thanks Andrew Main for reporting.
+ + Doc : C++ compilers are officially NOT supported.
+
0.23 2010-10-03 00:15 UTC
+ Fix : Some indirect constructs could be incorrectly reported when
several modules were used in the same scope. This caused