1 Revision history for autovivification
3 0.11 2013-02-08 19:25 UTC
4 This is a maintenance release. The code contains no functional change.
5 Satisfied users of version 0.10 can skip this update.
6 + Doc : POD tweaks and clarifications.
7 + Tst : Threads tests will not fail anymore if resources constraints
8 prevent the system from creating all the required threads.
9 + Tst : Author tests overhaul.
11 0.10 2011-08-24 15:00 UTC
12 + Fix : The pragma no longer vivifies the "autovivification" entry
13 in the hints hash %^H on perl 5.8.
15 0.09 2011-01-05 18:40 UTC
16 + Fix : [RT #64435] : Hangs with File::Copy in Config.pm.
17 This was actually a regression introduced together with the new
18 peephole optimizer strategy, and that caused the pragma to hang
19 on constructs like "for (;;) { ... }".
20 Thanks Michael Schilli for reporting.
22 0.08 2011-01-03 21:00 UTC
23 + Fix : Building on Windows.
25 0.07 2010-12-31 16:20 UTC
26 + Chg : perl 5.8.3 is required.
27 + Doc : Complements and clarifications.
28 + Fix : Segmentation faults and misbehaviours in threaded applications.
29 + Fix : Compatibility with perl 5.13.7.
30 Thanks Andreas J. König for reporting and Andrew Main for
32 + Fix : Broken linkage on Windows with gcc 3.4, which appears in
33 particular when using ActivePerl's default compiler suite.
34 For those setups, the autovivification shared library will now
35 be linked against the perl dll directly (instead of the import
37 + Opt : The pragma takes slightly more time at compile-time, but is
38 slightly faster at run-time.
39 + Tst : Lengthy tests have been ported to Test::Leaner, making the
40 whole test suite about 50% faster.
41 + Tst : Threads tests are now only run on perl 5.13.4 and higher.
42 They could segfault randomly because of what seems to be an
43 internal bug of Perl, which has been addressed in 5.13.4.
44 There is also an environment variable that allows you to
45 forcefully run those tests, but it should be set only for
46 author testing and not for end users.
48 0.06 2010-04-24 17:40 UTC
49 + Add : The A_THREADSAFE and A_FORKSAFE constants.
50 + Fix : [RT #56870] : "no autovivification" vs Regexp::Common.
51 This was a bug in how tied arrays and hashes were handled.
52 Thanks Michael G. Schwern for reporting.
53 + Fix : Scope leaks under perl 5.8-5.10.0.
54 + Fix : Segfaults when first loading the pragma from inside a thread.
56 0.05 2010-03-05 23:15 UTC
57 + Fix : [RT #55154] : Crashes and assertion failures when deparsing and
58 re-eval-uating some code compiled while autovivification was in
60 Thanks Michael G. Schwern for reporting.
61 + Fix : [RT #53647] : "leys" typo in pod.
62 Thanks Hinrik Orn Sigurdsson for reporting.
64 0.04 2010-01-10 00:30 UTC
65 + Add : Array and hash slices are now handled by the pragma.
66 + Fix : Work around Kwalitee test misfailures.
68 0.03 2009-06-23 22:20 UTC
69 + Add : Handle old-fashion dereferencing (like $$hashref{key}).
70 + Chg : Aliasing constructs (for ($x{foo}) { ... }) are now covered by
71 the 'store' category (and no longer the 'fetch' one). This is
72 because there's no way to know at compile-time if the alias
74 + Fix : Quadratic complexity at compile-time.
75 + Fix : Segfaults when dereferencing globals.
76 + Fix : Segfaults on big-endian systems.
77 + Tst : Really test plain arrays and hashes.
78 + Tst : Improved coverage.
80 0.02 2009-06-17 18:05 UTC
81 + Add : 'fetch' also applies to aliasing ("for ($hashref->{key}) { }").
82 + Fix : Don't segfault on "keys/values %$hashref", and don't vivify if
84 + Fix : Plain dereferencing shouldn't have a different behaviour when
86 + Tst : Improved coverage.
88 0.01 2009-06-14 20:10 UTC
89 First version, released on an unsuspecting world.