+Sat Dec 1 14:37:54 MET 2001 Raphael Manfredi <Raphael_Manfredi@pobox.com>
+
+. Description:
+
+ This is the LAST maintenance release of the Storable module.
+ Indeed, Storable is now part of perl 5.8, and will be maintained
+ as part of Perl. The CPAN module will remain available there
+ for people running pre-5.8 perls.
+
+ Avoid requiring Fcntl upfront, useful to embedded runtimes.
+ Use an eval {} for testing, instead of making Storable.pm
+ simply fail its compilation in the BEGIN block.
+
+ store_fd() will now correctly autoflush file if needed.
+
Tue Aug 28 23:53:20 MEST 2001 Raphael Manfredi <Raphael_Manfredi@pobox.com>
. Description:
-;# $Id: Storable.pm,v 1.0.1.12 2001/08/28 21:51:51 ram Exp $
+;# $Id: Storable.pm,v 1.0.1.13 2001/12/01 13:34:49 ram Exp $
;#
;# Copyright (c) 1995-2000, Raphael Manfredi
;#
;# in the README file that comes with the distribution.
;#
;# $Log: Storable.pm,v $
+;# Revision 1.0.1.13 2001/12/01 13:34:49 ram
+;# patch14: avoid requiring Fcntl upfront, useful to embedded runtimes
+;# patch14: store_fd() will now correctly autoflush file if needed
+;#
;# Revision 1.0.1.12 2001/08/28 21:51:51 ram
;# patch13: fixed truncation race with lock_retrieve() in lock_store()
;#
use AutoLoader;
use vars qw($forgive_me $VERSION);
-$VERSION = '1.013';
+$VERSION = '1.014';
*AUTOLOAD = \&AutoLoader::AUTOLOAD; # Grrr...
#
#
BEGIN {
- require Fcntl;
- if (exists $Fcntl::EXPORT_TAGS{'flock'}) {
+ if (eval { require Fcntl; 1 } && exists $Fcntl::EXPORT_TAGS{'flock'}) {
Fcntl->import(':flock');
} else {
eval q{
# Call C routine nstore or pstore, depending on network order
eval { $ret = &$xsptr($file, $self) };
logcroak $@ if $@ =~ s/\.?\n$/,/;
+ local $\; print $file ''; # Autoflush the file if wanted
$@ = $da;
return $ret ? $ret : undef;
}