1b151537f5870ed658626f2cbf3a8a11e6ce538d
[p5sagit/p5-mst-13.2.git] / ext / Storable / ChangeLog
1 Thu May 30 20:31:08 BST 2002   Nicholas Clark <nick@ccl4.org>
2
3     Version 2.03        Header changes on 5.6.x on Unix where IV is long long
4
5         5.6.x introduced the ability to have IVs as long long.  However,
6         Configure still defined BYTEORDER based on the size of a long.
7         Storable uses the BYTEORDER value as part of the header, but
8         doesn't explicity store sizeof(IV) anywhere in the header.
9         Hence on 5.6.x built with IV as long long on a platform that
10         uses Configure (ie most things except VMS and Windows) headers
11         are identical for the different IV sizes, despite the files
12         containing some fields based on sizeof(IV)
13
14         5.8.0 is consistent; all platforms have BYTEORDER in config.h
15         based on sizeof(IV) rather than sizeof(long).  This means that
16         the value of BYTEORDER will change from (say) 4321 to 87654321
17         between 5.6.1 and 5.8.0 built with the same options to Configure
18         on the same machine.  This means that the Storable header will
19         differ, and the two versions will wrongly thing that they are
20         incompatible.
21
22         For the benefit of long term consistency, Storable now
23         implements the 5.8.0 BYTEORDER policy on 5.6.x.  This means that
24         2.03 onwards default to be incompatible with 2.02 and earlier
25         (ie the large 1.0.x installed base) on the same 5.6.x perl.
26
27         To allow interworking, a new variable
28         $Storable::interwork_56_64bit is introduced. It defaults to
29         false. Set it to true to read and write old format files. Don't
30         use it unless you have existing stored data written with 5.6.x
31         that you couldn't otherwise read, or you need to interwork with
32         a machine running older Storable on a 5.6.x with long long IVs
33         (i.e., you probably don't need to use it).
34
35 Sat May 25 22:38:39 BST 2002   Nicholas Clark <nick@ccl4.org>
36
37     Version 2.02
38                 
39         Rewrite Storable.xs so that the file header structure for write_magic
40         is built at compile time, and check_magic attempts to the header in
41         blocks rather than byte per byte. These changes make the compiled
42         extension 2.25% smaller, but are not significant enough to give a
43         noticeable speed up.
44
45 Thu May 23 22:50:41 BST 2002   Nicholas Clark <nick@ccl4.org>
46
47     Version 2.01
48
49         - New regression tests integer.t
50         - Add code to safely store large unsigned integers.
51         - Change code not to attempt to store large integers (ie > 32 bits)
52           in network order as 32 bits.
53         
54         *Never* underestimate the value of a pathological test suite carefully
55         crafted with maximum malice before writing a line of real code. It
56         prevents crafty bugs from stowing away in your released code.
57         It's much less embarrassing to find them before you ship.
58         (Well, never underestimate it if you ever want to work for me)
59         
60 Fri May 17 22:48:59 BST 2002   Nicholas Clark <nick@ccl4.org>
61
62     Version 2.0, binary format 2.5 (but writes format 2.4 on pre 5.7.3)
63
64         The perl5 porters have decided to make sure that Storable still
65         builds on pre-5.8 perls, and make the 5.8 version available on CPAN.
66         The VERSION is now 2.0, and it passes all tests on 5.005_03, 5.6.1
67         and 5.6.1 with threads. On 5.6.0 t/downgrade.t fails tests 34 and 37,
68         due to a bug in 5.6.0 - upgrade to 5.6.1.
69
70         Jarkko and I have collated the list of changes the perl5 porters have
71         from the perl5 Changes file:
72
73         - data features of upcoming perl 5.8.0 are supported: Unicode hash
74           keys (Unicode hash values have been supported since Storable 1.0.1)
75           and "restricted hashes" (readonly hashes and hash entries)
76         - a newer version of perl can now be used to serialize data which is
77           not supported in earlier perls: Storable will attempt to do the
78           right thing for as long as possible, croaking only when safe data
79           conversion simply isn't possible. Alternatively earlier perls can
80           opt to have a lossy downgrade data instead of croaking
81         - when built with perls pre 5.7.3 this Storable writes out files
82           with binary format 2.4, the same format as Storable 1.0.8 onwards.
83           This should mean that this Storable will inter-operate seamlessly
84           with any Storable 1.0.8 or newer on perls pre 5.7.3
85         - dclone() now works with empty string scalar objects
86         - retrieving of large hashes is now more efficient
87         - more routines autosplit out of the main module, so Storable should
88           load slightly more quickly
89         - better documentation
90         - the internal context objects are now freed explicitly, rather than
91           relying on thread or process exit
92         - bugs fixed in debugging trace code affecting builds made with 64 bit
93           IVs
94         - code tidy-ups to allow clean compiles with more warning options
95           turned on avoid problems with $@ getting corrupted on 5.005_03 if
96           Carp wasn't already loaded
97         - added &show_file_magic, so you can add to /etc/magic and teach
98           Unix's file command about Storable files
99
100         We plan to keep Storable on CPAN in sync with the Perl core, so
101         if you encounter bugs or other problems building or using Storable,
102         please let us know at perl5-porters@perl.org
103         Patches welcome!
104         
105 Sat Dec  1 14:37:54 MET 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
106
107         This is the LAST maintenance release of the Storable module.
108         Indeed, Storable is now part of perl 5.8, and will be maintained
109         as part of Perl.  The CPAN module will remain available there
110         for people running pre-5.8 perls.
111
112         Avoid requiring Fcntl upfront, useful to embedded runtimes.
113         Use an eval {} for testing, instead of making Storable.pm
114         simply fail its compilation in the BEGIN block.
115
116         store_fd() will now correctly autoflush file if needed.
117
118 Tue Aug 28 23:53:20 MEST 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
119
120         Fixed truncation race with lock_retrieve() in lock_store().
121         The file has to be truncated only once the exclusive lock is held.
122
123         Removed spurious debugging messages in .xs file.
124
125 Sun Jul  1 13:27:32 MEST 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
126
127         Systematically use "=over 4" for POD linters.
128         Apparently, POD linters are much stricter than would
129         otherwise be needed, but that's OK.
130
131         Fixed memory corruption on croaks during thaw().  Thanks
132         to Claudio Garcia for reproducing this bug and providing the
133         code to exercise it.  Added test cases for this bug, adapted
134         from Claudio's code.
135
136         Made code compile cleanly with -Wall (from Jarkko Hietaniemi).
137
138         Changed tagnum and classnum from I32 to IV in context.  Also
139         from Jarkko.
140
141 Thu Mar 15 01:22:32 MET 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
142
143         Last version was wrongly compiling with assertions on, due
144         to an edit glitch.  That did not cause any problem (apart from
145         a slight performance loss) excepted on Win* platforms, where the
146         assertion code does not compile.
147
148 Sat Feb 17 13:37:37 MET 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
149
150     Version 1.0.10.
151
152         Forgot to increase version number at previous patch (there were
153         two of them, which is why we jump from 1.0.8 to 1.0.10).
154
155 Sat Feb 17 13:35:00 MET 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
156
157     Version 1.0.8, binary format 2.4.
158
159         Fixed incorrect error message.
160
161         Now bless objects ASAP at retrieve time, which is meant to fix
162         two bugs:
163
164         * Indirect references to overloaded object were not able to
165           restore overloading if the object was not blessed yet,
166           which was possible since blessing occurred only after the
167           recursive retrieval.
168
169         * Storable hooks asking for serialization of blessed ref could
170           get un-blessed refs at retrieval time, for the very same
171           reason.
172
173         The fix implemented here was suggested by Nick Ing-Simmons.
174
175         Added support for blessed ref to tied structures.  This is the
176         cause for the binary format change.
177
178         Added EBCDIC version of the compatibility test with 0.6.11,
179         from Peter Prymmer
180
181         Added tests for the new features, and to make sure the bugs they
182         are meant to fix are indeed fixed.
183
184 Wed Jan  3 10:43:18 MET 2001   Raphael Manfredi <Raphael_Manfredi@pobox.com>
185
186         Removed spurious 'clean' entry in Makefile.PL.
187
188         Added CAN_FLOCK to determine whether we can flock() or not,
189         by inspecting Perl's configuration parameters, as determined
190         by Configure.
191
192         Trace offending package when overloading cannot be restored
193         on a scalar.
194
195         Made context cleanup safer to avoid dup freeing, mostly in the
196         presence of repeated exceptions during store/retrieve (which can
197         cause memory leaks anyway, so it's just additional safety, not a
198         definite fix).
199
200 Sun Nov  5 18:23:48 MET 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
201
202     Version 1.0.6.
203
204         Fixed severe "object lost" bug for STORABLE_freeze returns,
205         when refs to lexicals, taken within the hook, were to be
206         serialized by Storable.  Enhanced the t/recurse.t test to
207         stress hook a little more with refs to lexicals.
208
209 Thu Oct 26 19:14:38 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
210
211     Version 1.0.5.
212
213         Documented that store() and retrieve() can return undef.
214         That is, the error reporting is not always made via exceptions,
215         as the paragraph on error reporting was implying.
216
217         Auto requires module of blessed ref when STORABLE_thaw misses.
218         When the Storable engine looks for the STORABLE_thaw hook and
219         does not find it, it now tries to require the package into which
220         the blessed reference is.
221
222         Just check $^O, in t/lock.t: there's no need to pull the whole
223         Config module for that.
224
225 Mon Oct 23 20:03:49 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
226
227     Version 1.0.4.
228
229         Protected calls to flock() for DOS platform: apparently, the
230         flock/fcnlt emulation is reported to be broken on that
231         platform.
232
233         Added logcarp emulation if they don't have Log::Agent, since
234         we now use it to carp when lock_store/lock_retrieve is used
235         on DOS.
236
237 Fri Sep 29 21:52:29 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
238
239     Version 1.0.3.
240
241         Avoid using "tainted" and "dirty" since Perl remaps them via
242         cpp (i.e. #define).  This is deeply harmful when threading
243         is enabled.  This concerned both the context structure and
244         local variable and argument names.  Brrr..., scary!
245
246 Thu Sep 28 23:46:39 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
247
248     Version 1.0.2.
249
250         Fixed spelling in README.
251
252         Added lock_store, lock_nstore, and lock_retrieve (advisory locking)
253         after a proposal from Erik Haugan <erik@solbors.no>.
254
255         Perls before 5.004_04 lack newSVpvn, added remapping in XS.
256
257         Fixed stupid typo in the t/utf8.t test.
258
259 Sun Sep 17 18:51:10 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
260
261     Version 1.0.1, binary format 2.3.
262
263         Documented that doubles are stored stringified by nstore().
264
265         Added Salvador Ortiz Garcia in CREDITS section,  He identified
266         a bug in the store hooks and proposed the right fix: the class
267         id was allocated too soon.  His bug case was also added to
268         the regression test suite.
269
270         Now only taint retrieved data when source was tainted.  A bug
271         discovered by Marc Lehmann.
272
273         Added support for UTF-8 strings, a contribution of Marc Lehmann.
274         This is normally only activated in post-5.6 perls.
275
276 Thu Aug 31 23:06:06 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
277
278         First official release Storable 1.0, for inclusion in perl 5.7.0.
279         The license scheme is now compatible with Perl's.
280
281 Thu Aug 24 01:02:02 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
282
283         ANSI-fied most of the code, preparing for Perl core integration.
284         The next version of Storable will be 0.8, and will be integrated
285         into the Perl core (development branch).
286
287         Dispatch tables were moved upfront to relieve some compilers,
288         especially on AIX and Windows platforms.
289
290         Merged 64-bit fixes from perl5-porters.
291
292 Mon Aug 14 09:22:04 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
293
294         Added a refcnt dec in retrieve_tied_key(): sv_magic() increases
295         the refcnt on the mg_ptr as well.
296
297         Removed spurious dependency to Devel::Peek, which was used for
298         testing only in t/tied_items.t.  Thanks to Conrad Heiney
299         <conrad@fringehead.org> for spotting it first.
300
301 Sun Aug 13 22:12:59 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
302
303         Marc Lehmann kindly contributed code to add overloading support
304         and to handle references to tied variables.
305
306         Rewrote leading blurb about compatibility to make it clearer what
307         "backward compatibility" is about: when I say 0.7 is backward
308         compatible with 0.6, it means the revision 0.7 can read files
309         produced by 0.6.
310
311         Mention new Clone(3) extension in SEE ALSO.
312
313         Was wrongly optimizing for "undef" values in hashes by not
314         fully recursing: as a result, tied "undef" values were incorrectly
315         serialized.
316
317 Sun Jul 30 12:59:17 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
318
319     First revision of Storable 0.7.
320
321         The serializing format is new, known as version 2.0.  It is fully
322         backward compatible with 0.6.  Earlier formats are deprecated and
323         have not even been tested: next version will drop pre-0.6 format.
324
325         Changes since 0.6@11:
326
327         - Moved interface to the "beta" status.  Some tiny parts are still
328           subject to change, but nothing important enough to warrant an "alpha"
329           status any longer.
330
331         - Slightly reduced the size of the Storable image by factorizing
332           object class names and removing final object storage notification due
333           to a redesign of the blessed object storing.
334
335         - Classes can now redefine how they wish their instances to be serialized
336           and/or deep cloned.  Serializing hooks are written in Perl code.
337
338         - The engine is now fully re-entrant.
339
340 Sun Apr  2 23:47:50 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
341
342         Added provision to detect more recent binary formats, since
343         the new upcoming Storable-0.7 will use a different format.
344         In order to prevent attempting the de-serialization of newer
345         formats by older versions, I'm adding this now to the 0.6 series.
346
347         I'm expecting this revision to be the last of the 0.6 series.
348         Unless it does not work with perl 5.6, which I don't use yet,
349         and therefore against which I cannot test.
350
351 Wed Mar 29 19:55:21 MEST 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
352
353         Added note about format incompatibilities with old versions
354         (i.e. pre 0.5@9 formats, which cannot be understood as there
355         was no versionning information in the file by then).
356
357         Protect all $@ variables when eval {} used, to avoid corrupting
358         it when store/retrieve is called within an exception handler.
359
360         Mistakenly included "patchlevel.h" instead of <patchlevel.h>,
361         preventing Perl's patchlevel from being included, which is
362         needed starting from 5.6.
363
364 Tue May 12 09:15:15 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
365
366         Fixed shared "undef" bug in hashes, which did not remain shared
367         through store/retrieve.
368
369 Thu Feb 10 19:48:16 MET 2000   Raphael Manfredi <Raphael_Manfredi@pobox.com>
370
371         added last_op_in_netorder() predicate
372         documented last_op_in_netorder()
373         added tests for the new last_op_in_netorder() predicate
374
375 Wed Oct 20 19:07:36 MEST 1999   Raphael Manfredi <Raphael_Manfredi@pobox.com>
376
377         Forgot to update VERSION
378
379 Tue Oct 19 21:25:02 MEST 1999   Raphael Manfredi <Raphael_Manfredi@pobox.com>
380
381         Added mention of japanese translation for the manual page.
382
383         Fixed typo in macro that made threaded code not compilable,
384         especially on Win32 platforms.
385
386         Changed detection of older perls (pre-5.005) by testing PATCHLEVEL
387         directly instead of relying on internal symbols.
388
389 Tue Sep 14 22:13:28 MEST 1999   Raphael Manfredi <Raphael_Manfredi@pobox.com>
390
391         Integrated "thread-safe" patch from Murray Nesbitt.
392         Note that this may not be very efficient for threaded code,
393         see comment in the code.
394
395         Try to avoid compilation warning on 64-bit CPUs. Can't test it,
396         since I don't have access to such machines.
397
398 Mon Jul 12 14:37:19 METDST 1999   Raphael Manfredi <Raphael_Manfredi@pobox.com>
399
400         changed my e-mail to pobox.
401
402         mentionned it is not thread-safe.
403
404         updated version number.
405
406         uses new internal PL_* naming convention.
407
408 Fri Jul  3 13:38:16 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
409
410         Updated benchmark figures due to recent optimizations done in
411         store(): tagnums are now stored as-is in the hash table, so
412         no surrounding SV is created. And the "shared keys" mode for
413         hash table was turned off.
414
415         Fixed backward compatibility (wrt 0.5@9) for retrieval of
416         blessed refs. That old version did something wrong, but the
417         bugfix prevented correct retrieval of the old format.
418
419 Mon Jun 22 11:00:48 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
420
421         Changed benchmark figures.
422
423         Adjust refcnt of tied objects after calling sv_magic() to avoid
424         memory leaks.  Contributed by Jeff Gresham.
425
426 Fri Jun 12 11:50:04 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
427
428         Added workaround for persistent LVALUE-ness in perl5.004. All
429         scalars tagged as being an lvalue are handled as if they were
430         not an lvalue at all.  Added test for that LVALUE bug workaround.
431
432         Now handles Perl immortal scalars explicitely, by storing &sv_yes
433         as such, explicitely.
434
435         Retrieval of non-immortal undef cannot be shared. Previous
436         version was over-optimizing by not creating a separate SV for
437         all undefined scalars seen.
438
439 Thu Jun  4 17:21:51 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
440
441     Baseline for Storable-0.6@0.
442
443         This version introduces a binary incompatibility in the generated
444         binary image, which is more compact than older ones by approximatively
445         15%, depending on the exact degree of sharing in your structures.
446
447         The good news is that your older images can still be retrieved with
448         this version, i.e. backward compatibility is preserved. This version
449         of Storable can only generate new binaries however.
450
451         Another good news is that the retrieval of data structure is
452         significantly quicker than before, because a Perl array is used
453         instead of a hash table to keep track of retrieved objects, and
454         also because the image being smaller, less I/O function calls are
455         made.
456
457 Tue May 12 09:15:15 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
458
459         Version number now got from Storable.pm directly.
460
461         Fixed overzealous sv_type() optimization, which would make
462         Storable fail when faced with an "upgraded" SV to the PVIV
463         or PVNV kind containing a reference.
464
465 Thu Apr 30 15:11:30 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
466
467         Extended the SYNOPSIS section to give quick overview of the
468         routines and their signature.
469
470         Optimized sv_type() to avoid flags checking when not needed, i.e.
471         when their type makes it impossible for them to be refs or tied.
472         This slightly increases throughput by a few percents when refs
473         and tied variables are marginal occurrences in your data.
474
475         Stubs for XS now use OutputStream and InputStream file types to
476         make it work when the given file is actually a socket. Perl
477         makes a distinction for sockets in its internal I/O structures
478         by having both a read and a write structure, whereas plain files
479         share the same one.
480
481 Tue Jun  3 09:41:33 METDST 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
482
483         Thanks to a contribution from Benjamin A. Holzman, Storable is now
484         able to correctly serialize tied SVs, i.e. tied arrays, hashes
485         and scalars.
486
487 Thu Apr  9 18:07:51 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
488
489         I said SvPOK() had changed to SvPOKp(), but that was a lie...
490
491 Wed Apr  8 13:14:29 METDST 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
492
493         Wrote sizeof(SV *) instead of sizeof(I32) when portable, which
494         in effect mangled the object tags and prevented portability
495         accross 32/64 bit architectures!
496
497 Wed Mar 25 14:57:02 MET 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
498
499         Added code example for store_fd() and retrieve_fd() in the
500         man page, to emphasize that file descriptors must be passed as
501         globs, not as plain strings.
502
503         Cannot use SV addresses as tag when using nstore() on LP64. This
504         was the cause of problems when creating a storable image on an
505         LP64 machine and retrieving it on an ILP32 system, which is
506         exactly what nstore() is meant for...
507
508         However, we continue to use SV addresses as tags for plain store(),
509         because benchamarking shows that it saves up to 8% of the store
510         time, and store() is meant to be fast at the expense of lack
511         of portability.
512
513         This means there will be approximately an 8% degradation of
514         performance for nstore(), but it's now working as expected.
515         That cost may vary on your machine of course, since it is
516         solely caused by the memory allocation overhead used to create
517         unique SV tags for each distinct stored SV.
518
519 Tue Jan 20 09:21:53 MET 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
520
521         Don't use any '_' in version number.
522
523 Tue Jan 13 17:51:50 MET 1998   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
524
525         Updated version number.
526
527         added binmode() calls for systems where it matters.
528
529         Be sure to pass globs, not plain file strings, to C routines,
530         so that Storable can be used under the Perl debugger.
531
532 Wed Nov  5 10:53:22 MET 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
533
534         Fix memory leaks on seen hash table and returned SV refs.
535
536         Storable did not work properly when tainting enabled.
537
538         Fixed "Allocation too large" messages in freeze/thaw and added.
539         proper regression test in t/freeze.t.
540
541 Tue Jun  3 09:41:33 METDST 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
542
543         Updated version number
544
545         Added freeze/thaw interface and dclone.
546
547 Fri May 16 10:45:47 METDST 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
548
549         Forgot that AutoLoader does not export its own AUTOLOAD.
550         I could use
551
552                 use AutoLoader 'AUTOLOAD';
553         
554         but that would not be backward compatible. So the export is
555         done by hand...
556
557 Tue Mar 25 11:21:32 MET 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
558
559         Empty scalar strings are now "defined" at retrieval time.
560
561         New test to ensure an empty string is defined when retrieved.
562
563 Thu Feb 27 16:32:44 MET 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
564
565         Updated version number
566
567         Declare VERSION as being used
568
569         Fixed a typo in the PerlIO_putc remapping.
570         PerlIO_read and perlIO_write inverted size/nb_items.
571         (only relevant for pre-perl5.004 versions)
572
573 Thu Feb 27 15:58:31 MET 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
574
575         Updated version number
576
577         Added VERSION identification
578
579         Allow build with perl5.003, which is ante perlIO time
580
581 Mon Jan 13 17:53:18 MET 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
582
583         Random code fixes.
584
585 Wed Jan 22 15:19:56 MET 1997   Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
586
587         Updated version number in Makefile.PL.
588
589         Added "thanks to" section to README.
590
591         Documented new forgive_me variable.
592
593         Made 64-bit clean.
594
595         Added forgive_me support to allow store() of data structures
596         containing non-storable items like CODE refs.