366584a | mrbean-bremen | 03 March 2020, 20:45:32 UTC | Patch release 4.0.1 | 03 March 2020, 20:45:32 UTC |
cd55b76 | mrbean-bremen | 03 March 2020, 20:37:09 UTC | Ignore any exception that may happen in inspect.getmembers() - fixes #523 | 03 March 2020, 20:37:09 UTC |
a51508e | mrbean-bremen | 03 March 2020, 19:54:53 UTC | Adapted release notes and Readme | 03 March 2020, 19:54:53 UTC |
af9d5c7 | mrbean-bremen | 03 March 2020, 19:52:37 UTC | Prepare next release | 03 March 2020, 19:52:37 UTC |
3ca0767 | mrbean-bremen | 02 March 2020, 18:14:53 UTC | Added more examples for patchfs decorator - fixed error in documentation code example | 02 March 2020, 18:14:53 UTC |
4afa338 | mrbean-bremen | 28 February 2020, 19:44:00 UTC | Changed decorator to be able to be called with and without arguments - now can be used both with call syntax, and without parentheses | 29 February 2020, 20:08:00 UTC |
14f9601 | mrbean-bremen | 25 February 2020, 21:05:49 UTC | Added convenience decorators to patch single functions - decorator patchfs is called without arguments (and no parentheses) - decorator custom_patchfs is called with Patcher arguments | 29 February 2020, 20:08:00 UTC |
cdb8431 | mrbean-bremen | 13 February 2020, 18:43:31 UTC | Consolidated setting of st_ino - now is always set in add_entry - st_ino was not set in fake_filesystem.makedir, what caused incorrect behavior for os.samefile for directories - fixes #515 | 20 February 2020, 20:10:31 UTC |
34dbbf7 | mrbean-bremen | 14 February 2020, 18:25:17 UTC | Fixed handling of current path in lresolve() / os.lstat() - fixes #516 | 19 February 2020, 20:18:44 UTC |
e801c65 | mrbean-bremen | 13 February 2020, 19:38:17 UTC | Fixed handling of byte paths - path entries are always saved as strings - byte paths are converted to string paths for most functions - fixes #517 | 18 February 2020, 20:25:26 UTC |
025f06c | mrbean-bremen | 08 February 2020, 15:08:02 UTC | Added automatic patching of file system function in default argument - works for module-level functions and methods in module-level classes - this also makes it unnecessary to reload the "tempfile" module | 09 February 2020, 12:20:15 UTC |
c4fc2c0 | mrbean-bremen | 30 January 2020, 19:42:17 UTC | Preserve top directory in os.walk - simplified the previous fix - see #512 | 30 January 2020, 19:50:16 UTC |
4e4e615 | mrbean-bremen | 28 January 2020, 17:59:59 UTC | Make sure ending path separator is preserved in os.walk - fixes #512 | 28 January 2020, 18:15:29 UTC |
14d50f6 | mrbean-bremen | 14 January 2020, 20:59:56 UTC | Added workaround for O_TMPFILE flag under linux - create unique file name for memory-based file created by that flag - fixes #511 | 14 January 2020, 21:04:34 UTC |
a900ac7 | mrbean-bremen | 14 January 2020, 19:51:42 UTC | Removed more IOError-specific code | 14 January 2020, 19:51:42 UTC |
4c2d08b | mrbean-bremen | 14 January 2020, 18:29:47 UTC | Fixed doctest in fake_filesystem | 14 January 2020, 18:29:47 UTC |
2fe80a7 | mrbean-bremen | 13 January 2020, 19:25:33 UTC | Replaced obsolete IOError with OSError | 13 January 2020, 19:25:33 UTC |
5e46306 | mrbean-bremen | 13 January 2020, 18:45:19 UTC | Fixed handling of empty path in os.makedirs - fixes #510 | 13 January 2020, 18:45:19 UTC |
b1c1932 | mrbean-bremen | 12 January 2020, 19:53:04 UTC | Added documentation for not matching file object MRO - also added features paragraph in introduction - see #484 | 12 January 2020, 19:53:04 UTC |
54d52f3 | mrbean-bremen | 11 January 2020, 14:40:41 UTC | Handle open with TMPFILE flag - added basic test for TemporaryFile - fixes #509 | 11 January 2020, 15:23:24 UTC |
0848f44 | mrbean-bremen | 04 January 2020, 18:28:26 UTC | Test using dockerfiles with different OSes - changed dockerfile in root back to initial state - put dockerfiles used for testing into separate directory - added dockerfiles for ubuntu, centos, debian, fedora | 04 January 2020, 20:09:07 UTC |
7aeb6da | mrbean-bremen | 02 January 2020, 19:57:44 UTC | Added real tests for the rest of the fake open tests | 02 January 2020, 20:32:16 UTC |
b4d8a7c | mrbean-bremen | 01 January 2020, 17:25:52 UTC | Added missing pytest pixture tests for AppVeyor | 01 January 2020, 17:25:52 UTC |
0814af7 | mrbean-bremen | 23 December 2019, 20:44:36 UTC | Fixed typo, added link to Patcher arguments | 01 January 2020, 17:13:02 UTC |
11dae49 | mrbean-bremen | 23 December 2019, 19:10:56 UTC | Added possibility to pass additional parameters to `fs` pytest fixture - added test and documentation | 01 January 2020, 17:13:02 UTC |
cb11cf5 | mrbean-bremen | 22 December 2019, 20:26:05 UTC | Check Python version also for Linux builds | 01 January 2020, 17:13:01 UTC |
09d5017 | mrbean-bremen | 22 December 2019, 20:12:44 UTC | Added pyfakefs 3.7.1 to release notes | 01 January 2020, 17:13:01 UTC |
90850d1 | mrbean-bremen | 21 December 2019, 14:52:52 UTC | Added newly introduced compile_pattern method to flavour classes - copied original versions from _PosixFlavour/_WindowsFlavour into respective fake classes - use newest available Python version in Travis builds - see #508 | 01 January 2020, 17:13:00 UTC |
5e7288d | mrbean-bremen | 20 December 2019, 18:14:50 UTC | Correctly propagate "permission denied" error on creating directory - fixes #507 | 01 January 2020, 17:13:00 UTC |
db9ea70 | mrbean-bremen | 19 December 2019, 20:35:41 UTC | Added pytest version for add_real_directory usage example - see #506 | 01 January 2020, 17:12:59 UTC |
8e2a4b5 | JarnoRFB | 19 December 2019, 12:21:00 UTC | Add note about accessing real files in pytest Should give pytest users a way to load test resources that does fit with the style that pytest is normally used. | 01 January 2020, 17:12:58 UTC |
4371d5f | mrbean-bremen | 02 December 2019, 19:13:16 UTC | Minor consolidation of release notes format | 01 January 2020, 17:12:58 UTC |
36cc6ad | mrbean-bremen | 24 November 2019, 15:05:10 UTC | Use keyword-only arguments for os functions as in real implementation - removed more obsolete comments - removed obsolete "object" superclass | 01 January 2020, 17:12:48 UTC |
b631d5c | mrbean-bremen | 24 November 2019, 18:16:18 UTC | Allow for different configuration of access time in real fs test - tests fail under some Windows systems otherwise | 24 November 2019, 18:16:18 UTC |
9f62adb | mrbean-bremen | 24 November 2019, 13:16:33 UTC | Removed support for Python 2.7 and 3.4 | 24 November 2019, 13:32:45 UTC |
14b0d17 | mrbean-bremen | 23 November 2019, 18:28:18 UTC | Prepare next version - removed Python 2.7 and 3.4 support from documentation | 24 November 2019, 12:51:52 UTC |
81d416e | mrbean-bremen | 23 November 2019, 16:35:19 UTC | Added Python 3.8 to setup.py and README - added note about ending Python 2.7/3.4 support in the documentation | 23 November 2019, 16:35:19 UTC |
4c65784 | mrbean-bremen | 22 November 2019, 18:41:06 UTC | Added support for UNC prefix in links under Windows - do not allow sendfile() to regular files under MacOs - added note about last version supporting Python 2.7 and 3.4 - see #504 | 22 November 2019, 20:19:04 UTC |
5fe5c1b | mrbean-bremen | 21 November 2019, 19:50:49 UTC | Added special handling for patching shutil under MacOs under Python 3.8 - set shutil attribute to False that allows using native posix copy function during patching - see #504 | 21 November 2019, 19:50:49 UTC |
6bffb65 | mrbean-bremen | 18 November 2019, 19:27:02 UTC | Always implement os.PathLike for DirEntry in Python >= 3.6 - added CI tests for Python 3.8 (Linux and Windows) - skip failing Windows test temporarily for Python 3.8 (test_add_existing_real_directory_symlink) - see #504 | 18 November 2019, 20:24:20 UTC |
8b993e6 | mrbean-bremen | 18 November 2019, 19:36:43 UTC | Do not test sendfile under MacOs - it does not support regular files | 18 November 2019, 19:36:43 UTC |
7b9c03b | mrbean-bremen | 17 November 2019, 20:18:55 UTC | Added sendfile implementation (posix only) - see #504 | 18 November 2019, 19:05:25 UTC |
8fa0675 | mrbean-bremen | 17 November 2019, 18:29:26 UTC | Fixed some failing tests under Windows with Python 3.8 - added support for devnull in Windows / Python 3.8 - added preliminary support for st_file_attributes and st_reparse_tag (Windows-specific os.stat_result attributes) - consider local UNC path returned by os.readlink in tests - see #504 | 17 November 2019, 18:41:53 UTC |
8c005b9 | John McGehee | 16 November 2019, 22:35:00 UTC | Clarify dereferencing comment in DynamicPatcher | 17 November 2019, 17:56:43 UTC |
1abb64c | mrbean-bremen | 15 November 2019, 19:36:20 UTC | Unload all modules loaded during the test - these module can still hold references to fake modules - modules already loaded at test start are not affected - see #501 and #427 | 17 November 2019, 17:56:43 UTC |
4309b65 | mrbean-bremen | 13 November 2019, 19:25:54 UTC | Fixed side-effect of calling DirEntry.stat() under Windows - st_nlink of the file object was set to 0 (instead of the stat result) - fixes #502 | 13 November 2019, 19:37:43 UTC |
bee0887 | mrbean-bremen | 12 November 2019, 18:22:27 UTC | Import distutils.file_util to prevent fake fs caching problem - closes #501 | 13 November 2019, 18:16:14 UTC |
a6b88e9 | mrbean-bremen | 07 November 2019, 18:40:03 UTC | Fixed flake8 warnings - changed flake8 test to fail the build step on warnings | 07 November 2019, 18:40:03 UTC |
83933bf | mrbean-bremen | 04 November 2019, 19:45:22 UTC | Re-enabled flake test - use build separate stage for flake8 - do not use a matrix build to make this possible | 05 November 2019, 20:09:15 UTC |
cd54bb3 | mrbean-bremen | 04 November 2019, 18:56:07 UTC | Make separate tests from the test script - ensures that failing tests fail the build - make time test less strict to work with PyPi - fixes #500 | 04 November 2019, 19:33:19 UTC |
2ae7616 | mrbean-bremen | 04 November 2019, 17:39:06 UTC | Skip scandir tests for dir_fd for scandir package - scandir package does not support this - fixes #499 | 04 November 2019, 17:39:06 UTC |
06c08b6 | mrbean-bremen | 03 November 2019, 15:22:37 UTC | Fixed handling of missing directory read access - enable for Linux, disable for root users - see #496 | 03 November 2019, 20:02:38 UTC |
4f237ea | mrbean-bremen | 01 November 2019, 18:50:23 UTC | Propagate exception for non-existing path in os.scandir() - fixes #498 | 01 November 2019, 19:25:39 UTC |
947e83f | mrbean-bremen | 19 October 2019, 10:57:08 UTC | Allow stat in unreadable directory | 19 October 2019, 11:08:37 UTC |
26b4c73 | mrbean-bremen | 09 October 2019, 18:21:59 UTC | Added handling of missing directory read access under MacOS - changes are for MacOS only, as long as Linux behavior is unclear - see #496 | 18 October 2019, 20:30:03 UTC |
71a60a8 | mrbean-bremen | 07 October 2019, 17:22:59 UTC | Adapt release notes after 3.6.1 release - fix syntax error in qualifiers | 07 October 2019, 17:22:59 UTC |
b766728 | mrbean-bremen | 07 October 2019, 17:02:34 UTC | Make sure real OS tests are not run by default - code had been commented out accidentally - fixes #495 | 07 October 2019, 17:02:34 UTC |
fff5325 | mrbean-bremen | 09 August 2019, 05:19:38 UTC | Removed note about removing the old API | 10 August 2019, 09:05:45 UTC |
5c8cc9f | John McGehee | 07 August 2019, 20:43:58 UTC | Clarify that version 4.0 is the release after next | 10 August 2019, 09:05:45 UTC |
683eab3 | mrbean-bremen | 07 August 2019, 18:45:44 UTC | Added note about dropping Python 2 support | 10 August 2019, 09:05:45 UTC |
50f53a1 | Erik Massop | 03 August 2019, 17:29:57 UTC | Avoid relative path corner-cases in scandir tests. On Windows the initial cwd of the fake filesystem seems to be \ [3] and the base_path of the fixture is C:\basepath [4]. I don't know what the relative paths from \ to paths below C:\basepath are, since Windows seems to have per-drive roots instead of a single one [2]. If it's C:\basepath\..., it's actually an absolute path on Windows, negating the purpose of the tests that use relative paths. On non-Windows systems, the initial cwd of the fake filesystem seems to be /, so that the relative paths are relative to the root. That might hide problems where the current working directory is not taken into account and instead paths are interpreted relative to the root, lowering the value of the tests that use relative paths. By changing the working directory to self.base_path in setUp, this patch let's us avoid problems like the above. [2] https://docs.microsoft.com/en-us/dotnet/standard/io/file-path-formats [3] https://github.com/jmcgeheeiv/pyfakefs/blob/7e6f845a795ee6be7783f15033b623f08b2707ed/pyfakefs/fake_filesystem.py#L894 [4] https://github.com/jmcgeheeiv/pyfakefs/blob/7e6f845a795ee6be7783f15033b623f08b2707ed/pyfakefs/tests/test_utils.py#L344-L346 | 03 August 2019, 18:35:32 UTC |
3f33b09 | Erik Massop | 28 July 2019, 12:37:19 UTC | Fix scandir DirEntry.path for relative path or fd The documentation for os.DirEntry.path [1] says that the path attribute of a DirEntry object is only absolute if scandir()'s path argument was absolute, and simply the name attribute if scandir()'s path argument was a filedescriptor. This patch makes pyfakefs do this, and adjusts the tests. Relative symlinks are now also covered in the scandir tests. RealScandirFdTest.test_path_like was failing for me in Python 3.7.3 on Debian Bullseye. [1] https://docs.python.org/3/library/os.html#os.DirEntry.path | 03 August 2019, 18:35:32 UTC |
7e6f845 | mrbean-bremen | 25 July 2019, 19:06:05 UTC | Added another badge for supported Python versions | 25 July 2019, 19:06:05 UTC |
39a33b1 | mrbean-bremen | 24 July 2019, 18:38:43 UTC | Replaced PyPi link in README with version badge - more prominent, easier to find | 24 July 2019, 18:38:43 UTC |
4f4cefb | mrbean-bremen | 10 July 2019, 19:25:24 UTC | Avoid rare side effect during module iteration in test setup - fixes #338, fix provided by @con-f-use | 10 July 2019, 19:25:24 UTC |
502d0ca | mrbean-bremen | 30 June 2019, 13:36:51 UTC | Fixed problem with unpacking package for release branch - in release branch, the top level dir has another name than the zip file - rename the unzipped package to be able to know it in subsequent commands - disabled test_append_mode_tell_linux_windows under Python 2 and Linux: behavior seems to have changed in latest Python and/or Ubuntu version | 30 June 2019, 17:59:34 UTC |
77b3209 | mrbean-bremen | 30 June 2019, 12:33:12 UTC | Prepare next release | 30 June 2019, 12:33:12 UTC |
059975a | mrbean-bremen | 30 June 2019, 11:56:04 UTC | Added add_real_symlink to API and usage documentation | 30 June 2019, 11:56:04 UTC |
38462c1 | mrbean-bremen | 30 June 2019, 11:11:33 UTC | Adapted workaround in test after change in pathlib2 behavior - Python2 behavior under Windows has apparently changed to always be non-strict | 30 June 2019, 11:22:05 UTC |
1ae21b3 | luto | 30 June 2019, 11:10:00 UTC | Added support for relative symlinks in add_real_directory (#490) * Added support and tests for relative and absolute symlinks in add_real_directory * Added support and tests for symlinks outside the real directory in add_real_directory * Added support for symlinks in add_real_directory with lazy_read=True * Updated changelog to include new symlink features | 30 June 2019, 11:10:00 UTC |
3fa2724 | mrbean-bremen | 21 June 2019, 14:36:48 UTC | Added user rights to troubleshooting chapter - see #489 | 21 June 2019, 14:36:48 UTC |
6589537 | mrbean-bremen | 08 June 2019, 18:13:24 UTC | Use the current pyfakefs branch in docker file - still defaults to master if docker is build without arguments | 08 June 2019, 19:19:40 UTC |
99f7a66 | mrbean-bremen | 07 June 2019, 20:40:24 UTC | Fixed incorrect argument names for some os functions - added support for src_dir_fd and dst_dir_fd arguments in os.rename, os.replace and os.link | 07 June 2019, 21:25:12 UTC |
09d693e | Louie Lu | 22 May 2019, 03:25:07 UTC | Add __next__ to FakeFileWrapper | 23 May 2019, 18:31:21 UTC |
f8d7ca6 | mrbean-bremen | 22 May 2019, 18:21:01 UTC | Added test for correctly installed Python 3 version in Travis.CI - added test for MacOS only, where Travis does not control the version - closes #487 by making sure a failed Python build will be visible | 23 May 2019, 18:29:18 UTC |
c7f463d | mrbean-bremen | 18 May 2019, 18:32:17 UTC | Make sure fake DirEntry implements os.PathLike if needed - for Python >= 3.6 and if using os.scandir (e.g. not the scandir package) - fixes #483 | 20 May 2019, 19:27:14 UTC |
b18174b | mrbean-bremen | 10 May 2019, 17:48:25 UTC | Support modules instead of module names in additional_skip_names - closes #482 | 10 May 2019, 17:48:25 UTC |
f1cc615 | mrbean-bremen | 09 May 2019, 17:05:25 UTC | Fixed incorrect argument name for os.makedirs - fixes #481 | 09 May 2019, 17:05:25 UTC |
0aaa7ea | mrbean-bremen | 06 May 2019, 17:29:40 UTC | Fixed typo and formatting issue in documentation - see #480 | 06 May 2019, 17:29:40 UTC |
f8ca987 | mrbean-bremen | 02 May 2019, 18:28:02 UTC | Added troubleshooting documentation for not patched modules | 02 May 2019, 18:28:02 UTC |
6c36fb8 | mrbean-bremen | 29 April 2019, 17:13:23 UTC | Use newest release for Python versions - updated Python versions 3.4 to 3.7 to latest release - updated Pypy and Pypy3 to version 7.0.0 | 29 April 2019, 18:04:16 UTC |
59fc6fd | dunse | 29 April 2019, 00:34:17 UTC | Use snapshot of modules to avoid RuntimeError When running code on Python 3.7.3, we get this error intermittently: RuntimeError: dictionary changed size during iteration Creating a list instead of set appears to solve this issue. | 29 April 2019, 11:10:52 UTC |
6f8c771 | Stefano Vozza | 26 April 2019, 17:31:30 UTC | Document existence of temporary directories (#477) * document existence of temporary directories | 26 April 2019, 17:31:30 UTC |
76cc518 | mrbean-bremen | 10 April 2019, 18:46:08 UTC | Make real stat time tests more permissive under Windows - the behavior depends on configuration | 10 April 2019, 18:46:08 UTC |
5e55a35 | mrbean-bremen | 10 April 2019, 18:34:01 UTC | Add possibility to always run tests as non-root user - added argument allow_root_user to Patcher and UnitTest - see #474 | 10 April 2019, 18:34:01 UTC |
2bd9ed8 | mrbean-bremen | 05 April 2019, 19:54:35 UTC | Fixed a few flake8 warnings | 05 April 2019, 19:54:35 UTC |
3091bf0 | mrbean-bremen | 05 April 2019, 19:15:32 UTC | Removed unneeded parameter "use_dynamic_patch" - remove unneeded workaround for PyCharm debugger - slightly adapted usage documentation | 05 April 2019, 19:15:32 UTC |
d20b646 | mrbean-bremen | 01 April 2019, 18:05:47 UTC | Added dummy file object to FakePipeWrapper - used if iterating open files | 01 April 2019, 18:05:47 UTC |
7186b98 | mrbean-bremen | 28 March 2019, 19:11:43 UTC | Suppress specific pytest warning under Python 2.7 - fixes #466 | 28 March 2019, 19:42:03 UTC |
78543fb | mrbean-bremen | 27 March 2019, 19:31:12 UTC | Added support for os.pipe - see #473 | 27 March 2019, 19:31:12 UTC |
67a57fa | mrbean-bremen | 13 March 2019, 14:58:02 UTC | Prepare next release | 13 March 2019, 14:58:02 UTC |
3465cc1 | Konstantin Merenkov | 13 March 2019, 10:23:00 UTC | FakeIOModule.open argument renaming: file_name to file Changed attribute name in `FakeIOModule.open` from `file_name` to `file`. It makes pyfakefs compatible with the library atomicwrites that uses `kwargs` to pass attributes to `io.open` function. See https://github.com/untitaker/python-atomicwrites/blob/890e7aed4a1fd3b3724dc64503757617996c3978/atomicwrites/__init__.py#L180 In python documentation argument is also named `file`: py3: https://docs.python.org/3/library/functions.html#open py2: https://docs.python.org/2.7/library/io.html#io.open | 13 March 2019, 10:57:35 UTC |
dca7de7 | mrbean-bremen | 19 February 2019, 21:09:15 UTC | Do not lazily read contents of real file after writing to it - fixes #470 | 19 February 2019, 21:14:24 UTC |
8959633 | mrbean-bremen | 18 February 2019, 20:02:52 UTC | Handle patching open under Python 2 separately - avoids patching __builtins__ which breaks functionality - see #469 | 18 February 2019, 20:02:52 UTC |
a0387c3 | mrbean-bremen | 17 February 2019, 20:06:18 UTC | Some consolidation of pathlib/pathlib2 import | 17 February 2019, 20:06:18 UTC |
4b4e594 | mrbean-bremen | 16 February 2019, 16:07:17 UTC | Changes to correctly run setup.py test under Python 2 - exclude pathlib tests if pathlib is not available - moved pytest tests put of tests to not be discovered - see #465 | 16 February 2019, 18:19:03 UTC |
b9b5623 | mrbean-bremen | 08 February 2019, 19:22:13 UTC | Prepare next release - adapted release notes | 08 February 2019, 19:22:13 UTC |
332ff71 | mrbean-bremen | 05 February 2019, 18:07:00 UTC | Patch both pathlib and pathlib2 if present - see #467 | 05 February 2019, 20:49:16 UTC |
3ad8ec3 | mrbean-bremen | 05 February 2019, 19:43:35 UTC | Do not run real fs tests by defaults - tests are enabled by an environment variable, set in CI tests - see #465 | 05 February 2019, 20:00:29 UTC |
4e93a2b | mrbean-bremen | 18 January 2019, 22:16:25 UTC | Added test_suite parameter to setup - ensures running tests using setup under Python 2 - see #465 | 18 January 2019, 22:16:25 UTC |