- New upstream release 0.104
- The 'absolute' method now always returns an absolute path, even if a user
provided a relative path for the base path; the old, odd behavior was
documented, but people often don't read docs so the new behavior avoids
surprises
- Added 'cached_temp' method
- New upstream release 0.100
- Fixed tests for eventual removal of '.' from @INC in Perl
- Fixed filehandle mode doc typo
- Fixed doc typo in relative() that mentioned rel2abs instead of abs2rel
- New upstream release 0.094
- Path::Tiny will prefer PerlIO::utf8_strict over encoding(UTF-8) if
available and Unicode::UTF8 is not installed
- The 'touch' method can now set the current time on files that aren't owned,
as long as they are writeable
- Improved consistency of symlink support inspection; now always looks at
$Config{d_symlink}
- Skips impossible test on 'msys' platform.
- BR: perl-generators where possible
- Drop redundant Group: tag
- New upstream release 0.088
- Fixed bugs in relative symlink resolution for realpath, spew and edit_lines
- Symlink resolution will detect circular loops and throw an error
- New upstream release 0.082
- The relative() method no longer uses File::Spec's buggy rel2abs method;
the new Path::Tiny algorithm should be comparable and passes File::Spec
rel2abs test cases, except that it correctly accounts for symlinks
- Added 'edit' and 'edit_lines' plus _utf8 and _raw variants; this is
similar to perl's -i flag (though without backups)
- Fixed lines_utf8() with chomping for repeated empty lines
- Fixed lines_utf8+chomp and relative() bugs on Windows
- Documented that subclassing is not supported
- New upstream release 0.075
- Tilde expansion on Windows was resulting in backslashes; now they are
correctly normalized to forward slashes
- Typos fixed
- Fixed spewing to a symlink that crosses a filesystem boundary
- Add Test::MockRandom to META as a recommended test prerequisite
- New upstream release 0.070
- The 'copy' method now returns the object for the copied file
- The 'visit' method only dereferences the callback return value for scalar
refs, avoiding some common bugs
- New upstream release 0.065
- Added 'assert' method
- Added 'visit' method
- Added support for a negative count for 'lines' to get the last lines of a
file
- Fixed tilde expansion if path has spaces
- Make realpath non-fatal if the parent path exists and only the final path
component does not (was fatal on Windows and some Unixes)
- Removed rendundant locking on tempfile use for spewing
- Work around File::Temp bugs on older ActiveState Windows Perls
https://bugs.activestate.com/show_bug.cgi?id=104767
- Fixed SYNOPSIS example
- New upstream release 0.058
- Added a 'sibling' method as a more efficient form of calling
$path->parent->child(...).
- Documentation for every method annotated with the version number of the
last API change
- New upstream release 0.057
- On AIX, reads that default to locking would fail without write permissions,
because locking needs write permissions; the fix is only to lock reads if
write permissions exist, otherwise locking is skipped
- New upstream release 0.056
- Fixed problem throwing errors from 'remove'
- The 'digest' method now takes a 'chunk_size' option to avoid slurping files
entirely into memory
- The 'dirname' method is deprecated due to exposing File::Spec
inconsistencies
- Use %license
- New upstream release 0.054
- The 'is_file' method now does -e && ! -d and not -f because -f is often
more restrictive than people intend or expect
- Added 'chmod' method with symbolic chmod support ("a=r,u+rx")
- The 'basename' method now takes a list of suffixes to remove before
returning the name
- Added FREEZE/THAW/TO_JSON serialization helpers
- When constructing a Path::Tiny object from another, the original is
returned unless it's a temp dir/file, which significantly speeds up calling
path($path) if $path is already a Path::Tiny object
- Constructing any path - e.g. with child() - with undef or zero-length
parts throws an error instead of constructing an invalid path
- New upstream release 0.049
- Added 'subsumes' method
- The 'chomp' option for 'lines' will remove any end-of-line sequences fully
instead of just chomping the last character
- Fixed locking test on AIX
- Revised locking tests for portability again: locks are now tested from a
separate process
- The 'flock' package will no longer indexed by PAUSE
- Hides warnings and fixes possible fatal errors from pure-perl Cwd,
particularly on MSWin32
- Generates filename for atomic writes independent of thread-ID, which fixes
crashing bug on Win32 when fork() is called
- New upstream release 0.044
- Fixed child path construction against the root path
- Fixed path construction when a relative volume is provided as the first
argument on Windows; e.g. path("C:", "lib") must be like path("C:lib"),
not path("C:/lib")
- On AIX, shared locking is replaced by exclusive locking on a R/W
filehandle, as locking read handles is not supported
- New upstream release 0.043
- Calling 'absolute' on Windows will add the volume if it is missing (e.g.
"/foo" will become "C:/foo"); this matches the behavior of
File::Spec->rel2abs
- Fixed t/00-report-prereqs.t for use with older versions of
CPAN::Meta::Requirements
- New upstream release 0.042
- When 'realpath' can't be resolved (because intermediate directories don't
exist), the exception now explains the error clearly instead of complaining
about path() needing a defined, positive-length argument
- On Windows, fixed resolution of relative paths with a volume, e.g. "C:foo"
is now correctly translated into getdcwd on "C:" plus "foo"
- New upstream release 0.040
- The 'filehandle' method now offers an option to return locked handles
based on the file mode
- The 'filehandle' method now respects default encoding set by the caller's
open pragma
- New upstream release 0.037
- No longer lists 'threads' as a prerequisite; if you have a threaded perl,
you have it and if you've not, Path::Tiny doesn't care
- Fixed for v5.8