The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Test-MockFile

0.020
 - Basic introduction of file ownership. Set default uid/gid to current user when not set

0.19
 - Fix POD for stat example in POD.
 - Allow scalar file handles on open. We don't care about those
 - Provide better guidance about keeping your mocks in scope in examples
 - Disable Test::CheckManifest due to break in Test-CheckManifest
 - Fix seek bug in sysopen(... O_APPEND)

0.018
 - Properly handle open and sysopen file handles going out of scope.
 - Provide a helper method to mock objects to determine the file name. GH #31
 - Do not throw a file access hook when statting a file handle that is not under MockFile control. GH #30
 - Read multiple lines via readline when wantarray is true. GH #29

0.017
 - Require a newer Test2::Bundle::Extended (0.000084) to support named isa_ok

0.016
 - Bump Overload::FileCheck to 0.007 to address stack bug
 - Try to get EISDIR handling for BSD working. Apparently something changed in perl 5.20?
 - Do not do access hooks on filehandle interactions.

0.015   12/21/2018
 - Remove errant debug messages from open
 - Pass 3 to fix t/touch.t on BSD.

0.014   12/20/2018
 - Re-factor _find_file_or_fh to handle symlink following logic better. GH #26
 - Make more standard use of _get_file_object when looking up a file path so we
   properly handle abs path and symlink following

0.013   12/20/2018
 - Add a helper to determine if goto can be used. Where it's available is complicated
 - First pass at bareword file handles for opendir and friends
 - Fix errant docs for making a symlink mock
 - Follow links for stat but not lstat
 - Add support for readlink
 - Try 2 to fix BSD issues with GH #20

0.012   11/16/2018
 - Fix for #21 - length undef on perl 5.10
 - GH #20 - Add EPERM support for freebsd when unlinking directories
 - Fix for print $fh undef throwing a warning
 - Remove faulty OS level test of readdir after opendir.

0.011   11/08/2018
 - Fix for my $file_contents = do { local $/; <$fh> };
 - Mock CORE::GLOBAL::unlink and support directories for unlink
 - Mock CORE::GLOBAL::mkdir
 - Mock CORE::GLOBAL::rmdir
 - MockFile->symlink now follows the symlink norm of ($target, $file), not the reverse.
 - New mock helper 'exists' to check if the file is there.
 - New mock helper 'permissions' tells you the current permissions of the mocked file.

0.010   10/31/2018
 - Add .perltidyrc policy
 - When reporting strict mode violations, be sure to report the a stack location outside of our modules.
 - Report a stack trace for strict mode violations to determine the source of the problem.
 - Add an ignore hash for modules (like DynaLoader) which are allowed to open files.
 - Ignore STDIN/STDERR/STDOUT since tests often have to manipulate them and that's not really IO.
 - Autovivify a sysread where the buffer passed in is undef.

0.009   10/29/2018
 - Add unlink and touch as helpers when testing
 - Depend on new Overload::FileCheck 0.006 which does not call MockFile to determine _ stats

0.008   10/26/2018
 - Depend on newest Overload::FileCheck version. Depending on older
   versions was breaking unit tests.

0.007   10/25/2018
 - More POD fixups
 - Support for unmocked file access hooks.
 - Implement strict mode to error any time an unmocked file access happens.

0.006   10/25/2018
 - Fix for Locale-dependent failures on perl < 5.22
     https://github.com/CpanelInc/Test-MockFile/issues/10
 - Minor pod fixups.

0.005   10/24/2018
 - Complete basic documentation for all public methods.

0.004   10/24/2018
 - Raise the Test::More requirement to address an issue with Test2::Formatter::TAP
   Fixes https://github.com/CpanelInc/Test-MockFile/issues/6
   
0.003   10/24/2018
 - Correct bug in use constant statement. 0.002 was broken on release.
 - Changes to code to give basic support for Perl 5.10+. Ideally you should be on
    perl 5.16 to run this code but it'll mostly work below that.

0.002   10/24/2018
 - Set bug tracker to github
 - Fix Fcntl bug when you use unsupported constants.

0.001   10/23/2018
 - First release with basic support for open/sysopen/opendir
 - Support is limited to Perl 5.20 until we address this error:
    Error:  Invalid CODE attribute: prototype(*;$@) at lib/Test/MockFile.pm