]> git.vpit.fr Git - perl/modules/autovivification.git/blob - Changes
Sanitize the return value of a_do_multideref()
[perl/modules/autovivification.git] / Changes
1 Revision history for autovivification
2
3 0.14    2014-11-01 22:25 UTC
4         + Fix : [RT #99458] : AnyEvent::Loop hangs if autovivification 0.13 is
5                 loaded
6                 [RT #99904] : 'no autovivification' breaks Lingua::EN::Inflect
7                 from a distance
8                 This was a regression in 0.13 which caused the peephole
9                 optimizer to loop infinitely on "... while 1" constructs.
10                 However, the Lingua::EN::Inflect problem only occured in perl
11                 5.20 and above.
12                 Thanks Toshio Ito and Kent Fredric for reporting.
13
14 0.13    2014-10-04 16:55 UTC
15         This release contains a change that, while being very likely to be safe,
16         can potentially cause freezes during code compilation. Every release
17         should be carefully tested before being put in production, but this is
18         especially true for this one.
19         + Add : Support for the PERL_OP_PARENT optional feature introduced in
20                 perl 5.21.2.
21         + Doc : The CAVEATS section now warns about the global slowdown during
22                 compilation caused by this pragma.
23         + Fix : [RT #97703] : Android support
24                 t/51-threads-teardown.t will no longer fail on Android.
25                 Thanks Brian Fraser for reporting.
26         + Fix : Segfaults in eval in an END block of a Win32 pseudo-fork.
27         + Fix : Segfaults during global destruction of a thread or a
28                 pseudo-fork.
29         + Opt : The global slowdown caused by this module has been greatly
30                 reduced.
31                 Thanks Ævar Arnfjörð Bjarmason for reporting and testing the
32                 change.
33
34 0.12    2013-09-05 17:20 UTC
35         + Fix : Check functions are now replaced and restored in a thread-safe
36                 manner, either by using the wrap_op_checker() function from perl
37                 when it is available (starting from perl 5.16) or by taking the
38                 OP_REFCNT mutex on older perls.
39         + Tst : Author tests are no longer bundled with this distribution.
40                 They are only made available to authors in the git repository.
41
42 0.11    2013-02-08 19:25 UTC
43         This is a maintenance release. The code contains no functional change.
44         Satisfied users of version 0.10 can skip this update.
45         + Doc : POD tweaks and clarifications.
46         + Tst : Threads tests will not fail anymore if resources constraints
47                 prevent the system from creating all the required threads.
48         + Tst : Author tests overhaul.
49
50 0.10    2011-08-24 15:00 UTC
51         + Fix : The pragma no longer vivifies the "autovivification" entry
52                 in the hints hash %^H on perl 5.8.
53
54 0.09    2011-01-05 18:40 UTC
55         + Fix : [RT #64435] : Hangs with File::Copy in Config.pm.
56                 This was actually a regression introduced together with the new
57                 peephole optimizer strategy, and that caused the pragma to hang
58                 on constructs like "for (;;) { ... }".
59                 Thanks Michael Schilli for reporting.
60
61 0.08    2011-01-03 21:00 UTC
62         + Fix : Building on Windows.
63
64 0.07    2010-12-31 16:20 UTC
65         + Chg : perl 5.8.3 is required.
66         + Doc : Complements and clarifications.
67         + Fix : Segmentation faults and misbehaviours in threaded applications.
68         + Fix : Compatibility with perl 5.13.7.
69                 Thanks Andreas J. König for reporting and Andrew Main for
70                 providing a fix.
71         + Fix : Broken linkage on Windows with gcc 3.4, which appears in
72                 particular when using ActivePerl's default compiler suite.
73                 For those setups, the autovivification shared library will now
74                 be linked against the perl dll directly (instead of the import
75                 library).
76         + Opt : The pragma takes slightly more time at compile-time, but is
77                 slightly faster at run-time.
78         + Tst : Lengthy tests have been ported to Test::Leaner, making the
79                 whole test suite about 50% faster.
80         + Tst : Threads tests are now only run on perl 5.13.4 and higher.
81                 They could segfault randomly because of what seems to be an
82                 internal bug of Perl, which has been addressed in 5.13.4.
83                 There is also an environment variable that allows you to
84                 forcefully run those tests, but it should be set only for
85                 author testing and not for end users.
86
87 0.06    2010-04-24 17:40 UTC
88         + Add : The A_THREADSAFE and A_FORKSAFE constants.
89         + Fix : [RT #56870] : "no autovivification" vs Regexp::Common.
90                 This was a bug in how tied arrays and hashes were handled.
91                 Thanks Michael G. Schwern for reporting.
92         + Fix : Scope leaks under perl 5.8-5.10.0.
93         + Fix : Segfaults when first loading the pragma from inside a thread.
94
95 0.05    2010-03-05 23:15 UTC
96         + Fix : [RT #55154] : Crashes and assertion failures when deparsing and
97                 re-eval-uating some code compiled while autovivification was in
98                 use.
99                 Thanks Michael G. Schwern for reporting.
100         + Fix : [RT #53647] : "leys" typo in pod.
101                 Thanks Hinrik Orn Sigurdsson for reporting.
102
103 0.04    2010-01-10 00:30 UTC
104         + Add : Array and hash slices are now handled by the pragma.
105         + Fix : Work around Kwalitee test misfailures.
106
107 0.03    2009-06-23 22:20 UTC
108         + Add : Handle old-fashion dereferencing (like $$hashref{key}).
109         + Chg : Aliasing constructs (for ($x{foo}) { ... }) are now covered by
110                 the 'store' category (and no longer the 'fetch' one). This is
111                 because there's no way to know at compile-time if the alias
112                 will be assigned to.
113         + Fix : Quadratic complexity at compile-time.
114         + Fix : Segfaults when dereferencing globals.
115         + Fix : Segfaults on big-endian systems.
116         + Tst : Really test plain arrays and hashes.
117         + Tst : Improved coverage.
118
119 0.02    2009-06-17 18:05 UTC
120         + Add : 'fetch' also applies to aliasing ("for ($hashref->{key}) { }").
121         + Fix : Don't segfault on "keys/values %$hashref", and don't vivify if
122                 'fetch' is set.
123         + Fix : Plain dereferencing shouldn't have a different behaviour when
124                 the pragma is in use.
125         + Tst : Improved coverage.
126
127 0.01    2009-06-14 20:10 UTC
128         First version, released on an unsuspecting world.
129