0.2311 2020-10-03 04:04:15Z
- Fix new PERMS test so as to also pass on root (RT#133443)
0.2310 2020-09-26 17:37:56Z
- add AppVeyor CI
- Add PERMS options to create temp file with given file permissions
- remove remaining uses of indirect object syntax (#34, Nicolas R)
0.2309 2019-01-06 20:29:15Z
- fix longstanding pod formatting error (issue #19, RT#109526)
0.2308 2018-07-11 21:06:16Z
- remove File::Temp::Dir from the PAUSE index (it is not in its own
.pm file, so it is not 'use'able on its own)
0.2307 2018-06-24 19:40:29Z (TRIAL RELEASE)
- change EXLOCK default from true to false; addresses RT#123959.
Note that this option was always a no-op on non-BSD platforms;
changing the default to false makes behaviour more predictable and
consistent across platforms.
0.2306 2018-06-24 19:33:47Z
- switch from 'use vars' to 'our'
0.2305 2018-04-19 11:58:49Z (TRIAL RELEASE)
- documentation updates for what versions contain what features
(thanks, Brian Mowrey! RT#101518)
- fix bad use of skip() in tests (RT#95922)
- Fall back to CSIDL_LOCAL_APPDATA under taint on Windows (RT#60340)
- update distribution tooling
0.2304 2013-10-10 13:16:27Z
* List all detectable dependencies for completeness. (Test::More had
been unintentionally omitted in the last release and many core
dependencies had never been listed.)
0.2303 2013-10-09 13:57:21Z
* Remove compile test and associated dependencies
0.2302 2013-09-26 13:45:35Z
* Drop minimum Perl version back to 5.6 (erroneously bumped by dzil)
* Do not inherit from Exporter (requires Exporter 5.57) (thanks to
Olivier Mengué)
* 'use base ...' => 'use parent ...' as parent is lighter (thanks to
Olivier Mengué)
0.2301 2013-04-11 15:30:05Z
* dist.ini: Managed with Dist::Zilla now; generates Makefile.PL
to avoid circular dependency when using Build.PL
0.23 2013-03-14 Tim Jenness <tjenness@cpan.org>
* Build.PL: Use Module::Build
* Temp.pm: internally holds absolute path for cleanup (Fixes RT #44924)
* t/rmtree.t: (new) Test temp dir removal explicitly.
* t/tempfile.t: Correctly tests directory removal from chdir.
* Temp.pm: Clean up temp directory on exit even if it is the
current directory. Patch supplied by Ed Avis and fixes RT #45246.
* Temp.pm: Defer unlinking tempfiles if initial unlink fails
instad of croaking; fixes problems on NFS (RT #82720)
* Temp.pm: Allow leading template to new() for consistency with
newdir()
* Temp.pm: Calling tempfile or tempdir as a class method now
produce a more useful fatal error message
* Temp.pm: new/newdir/tempfile/tempdir now all allow either
a leading template argument or a TEMPLATE option
* Temp.pm: Overload numify with refaddr() in same manner as IO::File
(closes RT #47397 from Kevin Ryde)
0.22 2009-06-28 Tim Jenness <tjenness@cpan.org>
* t/fork.t: Fix portability problems in fork.t and remove left
over file (RT #41557)
0.21 2008-11-12 Tim Jenness <tjenness@cpan.org>
* Temp.pm: Clean out $FILES_CREATED_BY_OBJECT when the destructor
runs. Otherwise memory does not get returned. Really bad idea for
daemons. (Thanks to Maxime Therreault RT #37621)
* Temp.pm: Integrate patches from bleadperl for cygwin. (thanks to
Jari Aalto RT #36376)
* t/seekable.t: seekable test was failing on perl 5.6.0 so we now
skip the specific test. (thanks to Zefram)
* Temp.pm: Remove the test on the parent directory to see if a file
can be written. This will be found out anyway as soon as the file open
is attempted. AFS systems may fail a -w test but still allow a file to
be created. (thanks to Christopher Ellison)
* Temp.pm: Put an eval around rmtree. Some versions of rmtree croak
if you attempt to remove a directory that you are inside. (debian bug
479317 and RT #35779).
* Temp.pm: Localize special variables in END blocks and destructors.
0.20 2007-12-20 Tim Jenness <tjenness@cpan.org>
* t/lock.t: Fix logic problem with BEGIN block that was causing grief on some
systems (thanks to Steve Peters for patch).
0.19 2007-11-19 Tim Jenness <tjenness@cpan.org>
* Temp.pm (tempfile): Add EXLOCK option which can be used to disable O_EXLOCK
* t/lock.t: Test ability to disable O_EXLOCK
* Temp.pm (newdir): Add object oriented interface to "tempdir". Use
File::Temp->newdir()
* Temp.pm (tempdir): Add a note to the tempdir documentation to
clarify that the default is for the directory not to be temporary
and that use of an OO approach may be required (thanks to David
Golden's annotation on CPAN).
* Temp.pm (_randchar): Remove _randchar function (no longer used)
* Temp.pm: Add note about File::Tempdir module
* Temp.pm (new): Track pid used when file created and make sure
object destructor deletes the file only when the current pid
matches the original pid (RT#11067 again - thanks to Grousse)
Added new test (fork.t) to test this behaviour.
* t/seekable.t: Add tests to verify fix for RT#22052
* Temp.pm (_is_safe): Correct cluck message to match uid check
(thanks to Alexey Tourbin RT #14218)
* Temp.pm: Add note on use of binmode to modify encoding. (prompted
by Wolfgang Husmann)
* Temp.pm (tempfile): Add TMPDIR flag to simplify
tempdir(template, DIR => File::Spec->tmpdir) and to remove confusion
for tempdir interface. (thanks to Brendan O'Dea - debian bug #351373)
* META.yml: Update to v1.0 spec YAML spec. (thanks to Alexandr Ciornii RT# 23524)
* Temp.pm: Localize $@ when using eval to prevent leakage (prompted by Zefram)
* Makefile.PL: Support LICENSE in newer ExtUtils::MakeMaker implementations
(thanks to Alexandr Ciornii RT #23524)
* t/seekable.t: Skip seek test on older IO::Seekable versions.
(thanks to Sebastien Aperghis-Tramoni RT #23524)
* Temp.pm: Allow XXX replacement to run on perl 5.005 and 5.004.
(thanks to Sebastien Aperghis-Tramoni RT #23524)
* Temp.pm: Fix range of random character determination such that the last character
in the list (_) will appear occassionally. (Thanks to Peter Dintelmann perl RT# 41345)
* Temp.pm: Clarify error message when parent directory does not exist (thanks to
Peter Dintelmann perl RT # 41346)
* Temp.pm: Carp::Heavy does not exist on older perls (eg 5.005) so wrap the require
in an eval (Thanks to Sebastien Aperghis-Tramoni, Jesse Vincent, Slaven Rezic
and Robin Barker RT #26841)
* Temp.pm: Replace "new File::Temp" with "File::Temp->new" at the behest of H. Merijn
Brand
0.18 2007-01-21 Tim Jenness <tjenness@cpan.org>
* Temp.pm: Provide "cmp" overloading so File::Temp object can
be compared to filename directly. (Rafael Garcia-Suarez)
* Temp.pm: Remove umask control (was not thread-safe)
(thanks to Peter Dintelmann, Gisle Aas)
* t/cmp.t: New test file
* Temp.pm: Export SEEK_* constants (Matt Lawrence RT #22052)
0.17 2006-08-18 Tim Jenness <tjenness@cpan.org>
* Temp.pm: Also inherit from IO::Seekable so that seek and tell
methods can work on filehandles (thanks to Rick Myers and Toby Corkindale).
* t/seekable.t: Add test script from Rick Myers.
* Temp.pm: Add note about forking and resetting the random number generator
to prevent multiple clashes of temp file names. (pointed out by Brent Cowgill)
* Temp.pm: pre-emptively load Carp::Heavy. If we don't when we run out of file
handles and attempt to call croak() we get an error message telling
us that Carp::Heavy won't load rather than an error telling us we
have run out of file handles. (pointed out by bjoern_at_hoehrmann.de RT #14151)
* Temp.pm: Remove eg. from comments and replace with e.g. In pod
replace "e.g." with "for example". (David Landgren)
* Temp.pm: Correct synopsis concerning the arguments to the
File::Temp constructor (Peter Valdemar Moerch).
* Temp.pm: Update documentation to note that croak() will be
called by tempfile() and File::Temp->new if a problem occurs (thanks to Steve
Hay for pointing this out).
* Temp.pm: Sebastien Aperghis-Tramoni indicates that File::Temp
works with perl 5.004 so change the minimum perl version. (RT #14149)
* Temp.pm: Use effective uid rather than real uid (Alexey Tourbin RT #14218)
0.16 2005-02-22 Tim Jenness <tjenness@cpan.org>
* Temp.pm: Remove spurious debug statement
0.15 2005-02-21 Tim Jenness <tjenness@cpan.org>
* Temp.pm (unlink_on_destroy): Add post-object creation method to
control whether the temp file will be unlinked when the object
goes out of scope.
* Temp.pm: Increase maximum number of tries before aborting.
* Temp.pm: Add $KEEP_ALL to allow the temporary files to be
retained whilst debugging (suggestion from Ed Avis [and others]).
* Temp.pm: Temp files should have been opened O_NOFOLLOW rather
than O_FOLLOW! (thanks to Marc Tardif)
* Temp.pm: Add cleanup() function so that temp files that would be
removed by an END block can be removed by a daemon. (RT wishlist
item #6928 by Robert Rothenberg)
* Temp.pm: Force chmod on file before unlinking it. This can be a
problem on windows (see RT bug #6935). tempdir() has been fixed by
Slaven's earlier patch to change the rmtree arguments.
* Temp.pm (top_system_uid): Add interix patch from Todd Vierling
* Temp.pm (_gettemp): Pod patch from Steven Lembark clarifying the
error message associated with two few XXXXs
* Temp.pm: Add note on forking and make sure that END blocks only
remove temporary files created by the current process ID (prompted
by Daniel Macks in RT bug #11067)
* Temp.pm (cmpstat): Roman Vasicek reported problems with the _
filehandle. Play it safe and remove that handle. (see RT bug #8822)
* t/tempfile.t: Add test for write proteceted temp file (thanks to
Slaven Rezic)
* Temp.pm (_can_do_level): Change argument to rmtree to make it
attempt to remove write-protected files on cleanup (thanks to
Slaven Rezic)
* Temp.pm: Add note on binmode usage
0.14 2003-08-16 Tim Jenness <tjenness@cpan.org>
* t/object.t: Add test of OO interface and switch to Test::More
* Temp.pm: Add object-oriented interface.
* Temp.pm: mpeix fixes from Ken Hirsch <hirschk@labcorp.com>
0.13 2003-08-15 Tim Jenness <tjenness@cpan.org>
* Temp.pm: Integrate doc fixes from bleadperl (Slaven Rezic and
Jeffrey Friedl)
* Makefile.PL: Add INSTALLDIRS switch on perl version so that the
module installs into the correct place for perl 5.6.1 and newer.
* Temp.pm: Synch with perl 5.8.0 v0.13 MacOS fixes (Chris Nandor)
0.12 2001-02-22 Tim Jenness <tjenness@cpan.org>
* t/posix.t: The unlink0 tests now skip on failure
* t/mktemp.t: The unlink0 tests now skip on failure
* Temp.pm (tmpfile): tmpfile returns undef on failure rather than
croaking.
* Temp.pm:
-Add fix for CGI::Carp
[Thanks to John Labovitz <johnl@valiha.inside.sealabs.com>]
- Use error string to propogate reason rather than a carp
0.11 2000-11-24 Tim Jenness <tjenness@cpan.org>
* t/tempfile.t: Add a test to make sure the file is present after
close and another to use tempfile in a scalar context.
* Temp.pm: Fix bug on NT with O_TEMPORARY causing the file to be
removed before the program exits.
* Temp.pm: Incorporate fixes up to bleedperl 7825. Cross platform
fixes.
* t/security.t: Incorporate fixes from bleedperl 7825 - adds more
cross platform support and more skips on the basis that this is
not testing your system security, just the module.
* Temp.pm (_gettemp): Dont use VMS::Stdio if we want the file
to remain after closing.
* Temp.pm (_can_do_level): cygwin patch
* Temp.pm: Add OPENTEMPFLAGS to support UNLINK=>0
More tweaks to VMS support (now uses VMS::Stdio)
0.09 2000-07-26 Tim Jenness <tjenness@cpan.org>
* README: Update for V0.09
* t/security.t: OS/2 can not do the security tests.
* Temp.pm: Add Support for VMS and OS/2
0.08 2000-05-15 Tim Jenness <tjenness@cpan.org>
* t/mktemp.t: Skip the test for unlink0 if it fails since in most
cases this indicates an NFS problem.
* Temp.pm (_can_do_level): Add check to make sure an OS can handle
the required safe level
(safe_level): Check the level can be supported before allowing it
to change
(END): Change order of cleanup so that files are removed ahead of
temp dirs (since files may be in the temp dirs)
* Temp.pm: Reorganize END block
* t/tempfile.t: Correct tests for new position of END{} block
* t/security.t: Correct tests for new position of END{} block
* t/posix.t: add # to print output
* t/tempfile.t: Add # to print output
* t/mktemp.t: Add # to print output
* t/security.t: Add # to print output
* Temp.pm: Calculate OPENFLAGS outside of subroutine. This
improves speed of the commands by nearly a factor of 3.
(_replace_XX): Inline the character replacement code rather than
using _randchar subroutine. Improves performance by an additional 8%.
* t/posix.t: Add explicit autoflush on filehandle
* t/mktemp.t: Add explicit autoflush on filehandle
* Temp.pm: (unlink0): Disallow HIGH and MEDIUM tests if running
perl 5.005 or earlier.
* t/security.t: Specify perl version to allow for tests
* Add support for perl 5.005 (remove 'our' and auto-vivifying file
handles). VERSION NUMBER NOW 0.07
* README: Update in preparation for V0.06
* Temp.pm (_deferred_unlink): Add new internal routine to centralise the
configuring of END blocks. This also fixes a bug where only the
first file was being unlinked in the END block (due to scoping).
(_can_unlink_opened_file): Rename from _can_unlink. Will now
return false if running on Windows.
(_is_verysafe): If _PC_CHOWN_RESTRICTED is not available assume
that "chown giveaway" is possible anyway.
(unlink0): If can not unlink an open file, simply defer removal
until later.
(_gettemp): Add O_NOINHERIT and O_TEMPORARY flags to sysopen if
they are available (Thanks to Tom Christiansen for this)
* t/mktemp.t: Add test
* t/posix.t: Add test
* t/security.t: Add test
* t/tempfile.t: Add test
0.05 2000-03-14 Tim Jenness <tjenness@cpan.org>
* Release v0.05 to CPAN