Revision history for Perl extension File::Path. 2.15 2017-07-29 - Correct documentation error re possible arguments for rmtree(). 2.14 2017-06-07 - When creating subdirectories for testing underneath File::Spec::Functions::tmpdir(), use randomly generated strings. - No change in functionality from 2.13. 2.13 2017-05-31 - Document security vulnerability reported as CVE-2017-6512. 2.12_008 2017-05-07 - Patch from John Lightsey. 2.12_007 2017-04-22 - Skip tests where filesystem doesn't support permissions (RT 121248). - Add AppVeyor configuration; thanks to Charlie Gonzalez and Hayo Baan. 2.12_006 2017-04-21 - Modernize README, Makefile.PL, updating of version number and release date in documentation. 2.12_005 2017-04-21 - Recommend use of 'safe => 1' in remove_tree() and rmtree(). - Warn if mkpath() or make_path() is passed implausible options on Windows. - Corrections to errors in previous release. 2.12_004 2017-04-18 - Certain functions used in tests are not available on Windows; skip them. - Move certain functions used in testing to t/FilePathTest.pm. 2.12_003 2017-04-07 - Add tests to improve coverage ratios as measured by Devel::Cover - No functional changes. 2.12_002 2017-03-12 - GH#41 RT 117019 Fixed File::Path::remove_tree option hash is auto populated and cannot be reused - GH#40 Unskip in path root t - GH#39 Remove superfluous assignment to $arg{perm} - GH#38 Minor grammatical doc fixes. - GH#37 Minor grammatical doc fixes. 2.12_001 2016-09-18 - RT 94209 document that the thread safety issue will not change and communicate alternative. - RT 85878 be more generous with error check regex given we could be dealing with a pre-1.25 Carp. - GH #33 Be more precise in documentation example for make_path error checking. - GH #34 Skip Windows 2000 and earlier unit tests (test change). - GH #36 Do not hardcode ENOENT (test change). 2.12 2015-10-09 - RT 105935 Change ERROR HANDLING doc section to be very clear about the error handling mechanism for root nodes. - RT 105935 Change ERROR HANDLING doc section to remove the EXPERIMENTAL note; the error handling mechanism has been in place for several versions. 2.11_004 2015-10-01 - RT 105935 Revert change made in 2.10_001 to carp on failure to find root directory when performing an rmtree. 2.11_003 2015-08-03 - Fix root tests to properly call prereq() -- failed primarily on Windows since getpwent/getgrent not implemented on Windows. 2.11_002 2015-07-25 - Fix windows refactored tests - missing import and since it's out of Path.t the path creation creates 2 directories (t/Path_win32.t) - Fix root only tests. getpwent/getgrent was called twice, causing skip_all to trigger and giving impression all tests pass. 2.11_001 2015-07-24 - RT 105527 FIX: Move eg/ and author tests from t/Path.t to xt/ - RT 105935 FIX: Clarify error behavior for rmtree errors on root directory (not fixed but documented). Clarify in documentation the how alike rmtree is to 'rm -r'. - RT 105977 FIX: Fix INSTALLDIRS for Perl 5.6 - RT 105986 FIX: Refactor unit tests to better care for test counts - RT 106039 FIX: Wrong version in Pod - RT 106043 FIX: Suboptimal error message - RT 106045 FIX: _run_for_warning does not consume multiple messages - RT 106047 FIX: _run_for_verbose cause fail test on 5.6.2 - Removed optional File::Output usage and run those tests for everyone. 2.11 2015-07-17 - Change argument check error from croak to carp since there are some dependent modules using non-standard options. The error check will move back to croak when dependent modules have the opportunity to correct the argument. 2.10_005 2015-07-17 - Better argument checking and reporting of failure for unrecognized options. - RT 71562 Document automount race condition limitation and workaround - RT 99230 Document multithreaded application limitation and that the limitation may be removed in a future release. 2.10_004 2015-07-10 - Remove use of English.pm since it breaks many older Perls - Fix a unit test skip count for users who have not installed Test::Output 2.10_003 2015-07-08 - Administrative changes to MANIFEST and MANIFEST.SKIP - Style changes to Path.pm for easier reading of code - Removal of pod.t - Use English.pm to make variables like $! more fluent for code readers 2.10_002 2015-06-26 - RT 42139. Add better SKIP test emit for VMS. - RT 85360. Fix typos and better .gitignore and MANIFEST.SKIP settings. - RT 51588. Added patch elements but unable to verify on VMS. 2.10_001 2015-06-24 - RT 39949. Report errors on lstat failure. - RT 53178. Deprecate UNIVERSAL::isa usage - RT 70657. Test added. - RT 70938. Documentation fix for Windows native relative usage - RT 72256. Option added for setting permission (chmod) - RT 73840. Fix taint/untaint bug. - RT 95150. Add CPAN metadata for source tree location. - RT 103512. Documentation language fix. 2.09 2013-01-13 21:09:12 UTC - merge two bugfixes from blead see https://github.com/dland/File-Path/pull/1 2.08 2009-10-04 10:14:36 UTC - make_path() can now set user- and group-ownership on created directories. (Suggested by Jens Rehsack, CPAN #47558). 2.07_03 2009-06-21 13:11:30 UTC - Merged 2.07_02 patches from blead - Remove stat checks on Windows platform (inhibits UNC path removals from working, and Windows is immune to this particular attack). CPAN #34701 2.07 2008-11-09 13:05:50 UTC - Another VMS test tweak from Craig and additional improvements from Gisle. 2.06_08 2008-11-05 00:11:17 UTC - More documentation tweaks from Gisle Aas. - VMS tweaks courtesy of Craig A. Berry (cpan #40512). 2.06_07 2008-10-29 14:20:16 UTC - Silence 'uninitialized warning' reported in #36615. - Fix $Force_Writeable issue reported in #36982 (see also http://bugs.debian.org/487319). - Code style improvements and documentation improvements from Gisle Aas. 2.06_06 2008-10-05 21:55:34 UTC - Documentation improvements, no code changes. In this version rm_tree() was renamed to remove_tree(). 2.06_05 2008-10-02 20:30:17 UTC - Introduce make_path() and rm_tree() API extension. - Remove problematic test revealed by Matt Kraal on QNX (see http://nntp.perl.org/group/perl.perl5.porters/140187) 2.06_04 2008-05-13 14:28:10 UTC - Can't use \S+ if a directory name contains a space (which it will may do on Windows (the continuing saga of CPAN #35708)). 2.06_03 2008-05-12 20:17:33 UTC - ancestor removal test getting slashed up on Windows (see CPAN #35708). 2.06_02 2008-05-12 09:53:39 UTC - Problem on Windows where c:\path\to\dir was not considered to be underneath C:/Path/To (issues of directory separators and case sensitivity). As reported in smoke report http://www.nntp.perl.org/group/perl.cpan.testers/2008/05/msg1435813.html 2.06_01 2008-05-10 20:54:35 UTC - Close directory handle in t/Path.t with closedir (close is close but incorrect). Problem identified with Strawberry Perl. 2.06 2008-05-08 09:27:24 UTC - skip counts for ancestor rmpath() tests were wrong - fix old/new interface heuristics as per Gisle Aas http://www.nntp.perl.org/group/perl.perl5.porters/2008/05/msg136625.html 2.05 2008-05-07 08:20:20 UTC - better diagnosics and less panicking when removing an ancestor path. Reported by Alan Ferrency and patch suggested by Michael Schilli (#31721). - fix typo spotted by Brendan O'Dea (#35623). 2.04 2007-11-22 13:43:34 UTC - integrate blead change #32276 (rmtree a file on VMS) (see http://www.nntp.perl.org/group/perl.perl5.changes/2007/11/msg20108.html) - add a test to show that we can rmtree() a file - specify core prereqs in Makefile.PL (as per cpants) 2.03 2007-11-04 18:11:51 UTC - On 5.8.x, the installation would be shadowed by the core files, and thus not be visible. Makefile.PL tweaked appropriately to ensure that the installation overwrites the core files. Users on 5.6 and below need not upgrade, users on 5.8 should. Bug spotted by imacat (#30459). - Minor changes to the way POD tests are initialised. 2.02 2007-10-24 10:05:30 UTC - documentation correction fix only: corrected name of module File::Find::Rule. Users need not upgrade. 2.01 2007-09-29 10:16:34 UTC - the documentation referred to 'skip_others', but the attribute is named 'safe'. - correctly test VMS behaviour when safe attribute is set. 2.00_11 2007-09-08 12:51:30 UTC - depth attribute (for keep_root functiionality) was not correctly initialised in both old and new APIs - initial chdir() into a child dir would fail on strange protection masks (following race condition fix). - delete subsequent root paths even if a previous one fails 2.00_10 2007-09-04 17:18:01 UTC - Infinite loop fix in _rmtree() for VMS (perl change #31775) - Documentation improvements 2.00_09 2007-08-20 18:08:31 UTC - Fixed up a few oddments in the race prevention code - Reworded/reworked the diagnostics 2.00_08 2007-08-01 00:04:35 UTC - Fix race condition in rmtree() as inspired by http://bugs.gentoo.org/show_bug.cgi?id=79685 2.00_07 2007-07-09 19:33:52 UTC - 2.00_06 upload unfortunately contained blib directories 2.00_06 2007-07-04 21:34:14 UTC - Incorporate code changes from blead - Skip counts off by one 2.00_05 2007-06-27 21:23:25 UTC - Use catfile() instead of catdir() in _mkpath() for VMS, patch from Craig Berry. - Don't use warnings (my code doesn't have errors anyway), code change suggested by Rafael Garcia-Suarez. - Don't pass LICENSE key to WriteMakefile in Makefile.PL if the installed version of ExtUtils::MakeMaker is not sufficiently modern. 1.99_02 2007-05-27 09:25:53 UTC - Don't allow a directory named '' (empty string) to be created. - File::Spec routines catdir() and updir() interact differently on Win32 - $! needs to be managed more carefully on Win32 1.99_01 2007-05-17 13:09:59 UTC - Dual-lifed from the Perl core distribution. - New-style interface added. - Extensive tests added to improve code coverage. - 5.005 compatibility restored