bb441434f4
- Update to 5.6.0 * added preliminary support for Python 3.13 (tested with beta2) (see #1017) * added apply_umask argument to FakeFilesystem.create_dir to allow ignoring the umask (see #1038) * use real open calls for remaining pathlib functions so that it works nice with skippedmodules (see #1012) - from version 5.5.0 * The usage of the pathlib2 and scandir modules in pyfakefs is now deprecated. They will now cause deprecation warnings if still used. Support for patching these modules will be removed in pyfakefs 6.0. * PureWindowsPath and PurePosixPath now use filesystem-independent path separators, and their path-parsing behaviors are now consistent regardless of runtime platform and/or faked filesystem customization (see #1006) * fixed handling of Windows pathlib paths under POSIX and vice verse (see #1006) * correctly use real open calls in pathlib for skipped modules (see #1012)
devel
Markéta Machová2024-07-26 13:29:40 +00:00
6de3fe28c1
Accepting request 1169537 from devel:languages:python
Ana Guerrero2024-04-23 16:55:01 +00:00
1607220516
- update to 5.4.1: * fixed a regression from version 5.4.0 that incorrectly handled files opened twice via file descriptor - update to 5.4.0 * Improves permission handling. * added support for O_NOFOLLOW and O_DIRECTORY flags in os.open * added support for fake os.dup, os.dup2 and os.lseek * fixed a specific problem on reloading a pandas-related module * added possibility for unload hooks for specific modules use this also to reload django views (see #932) * fixed EncodingWarning for Python >= 3.11 (see #957) consider directory ownership while adding or removing directory entries * fixed handling of directory enumeration and search permissions under Posix systems * fixed creation of the temp directory in the fake file system after a filesystem reset * fixed handling of dirfd in os.symlink (see #968) * add missing follow_symlink argument to os.link (see #973) * fixed handling of missing attribute in os.getxattr (see * fixed permission problem with shutil.rmtree if emulating Windows under POSIX * fixed handling of errors on opening files via file descriptor * fixed handling of umask - it is now applied by default * fixed behavior of os.makedirs (see #987)
Dirk Mueller2024-04-21 08:46:24 +00:00
169695ab18
Accepting request 1143996 from devel:languages:python
Ana Guerrero2024-02-06 15:32:27 +00:00
7bd5d1796b
- update to 5.3.5: * Fixes a regression due to the changed behavior of the dynamic patcher cleanup (see #939). * The change is now by default only made if the django module is loaded, and the behavior can * be changed using the new argument module_cleanup_mode.
Dirk Mueller2024-02-04 12:24:20 +00:00
6851ff315b
Accepting request 1141813 from devel:languages:python
Ana Guerrero2024-01-29 21:25:57 +00:00
dff2c9aca1
- update to 5.3.4: * fixes handling of unhashable modules which cannot be cached (see #923) * reload modules loaded by the dynamic patcher instead of removing them - sometimes they may * not be reloaded automatically (see #932) * add back argument use_dynamic_patch as a fallback for similar problems * fixed a problem with patching _io under Python 3.12 (see #910) * fixed a problem with accessing the temp path if emulating Linux under Windows * (see #912) * fixed result of os.walk with a path-like top directory * (see #915) * properly fixed the problem that filesystem patching was still active in the pytest * logreport phase (see #904), the previous fix was incomplete * changed behavior of add_real_directory to be able to map a real directory * Restores compatibility with PyTorch 2.0 and above, as well as with other classes that have custom __setattr__ methods (see #905). * Adds official support for Python 3.12. * removed a leftover debug print statement (see #869) * make sure tests work without HOME environment set (see #870) * automount drive or UNC path under Windows if needed for pathlib.Path.mkdir() * (see #890) * adapt patching io.open and io.open_code to work with
Dirk Mueller2024-01-26 21:22:34 +00:00
00420f56e2
Accepting request 1109529 from devel:languages:python
Ana Guerrero2023-09-08 19:15:06 +00:00
5875baf218
- update to 5.2.4: * Fixes a rare problem on pytest shutdown. * Adds compatibility with PyPy 3.10 and Python 3.12. fake_path.FakePathModule, fake_io.FakeIoModule and - Update to version 5.0.0 - Update to version 4.7.0 - Update to version 3.5.2 - Added support for path-like objects as arguments in create_file(), - readline() did not work correctly in binary mode - several functions did not behave correctly for paths ending with a - Initial packaging of version 3.4.1
Dirk Mueller2023-09-07 11:35:42 +00:00
89a75aac61
- update to 5.2.2: * Made the user and group IDs accessible via dedicated `get_uid and get_gid functions (for symmetry to set_uid / set_gid) * The test fixture is now included in the source distribution and installed with the package. * Some public constants in fake_filesystem that had been moved to helpers are made accessible from there again * Add missing fake implementations for os.getuid and os.getgid (Posix only) * Make sure a /tmp path exists under linux (TMPDIR may point elsewhere) * Support for latest Python 3.12 version. * Properties defining the capabilities of some os functions like os.supports_follow_symlinks are now properly faked to contain the fake functions if the real functions are faked * Supports current Python 3.12 version (alpha 6). We plan to make patch releases in case of breaking changes in alpha or beta versions. * Fake module classes previously defined in fake_filesystem have now moved to their own modules: fake_os.FakeOsModule, fake_path.FakePathModule, fake_io.FakeIoModule and fake_open.FakeFileOpen. * Patching of parsers for pandas >= 1.2 is removed since pandas now uses Python fs functions internally even when the engine selected is "c". * added possibility to set a path inaccessible under Windows by using chown() with the force_unix_mode flag (see #720) * added class level setup method setUpClassPyfakefs` for unittest and class-scoped
Dirk Mueller2023-05-10 07:08:54 +00:00
e804cd0f77
- Update to 4.5.3: * New Features + added support for some Python 3.10 features: + new method pathlib.Path.hardlink_to + new newline argument in pathlib.Path.write_text + new follow_symlinks argument in pathlib.Path.stat and pathlib.Path.chmod + new 'strict' argument in os.path.realpath + added support for pathlib.Path.link_to (new in Python 3.8) (see #580) + added support for pathlib.Path.readlink (new in Python 3.9) (see #584) + added FakeFilesystem.create_link convenience method which creates intermittent directories (see #580) * Changes + Python 3.5 has reached its end of life in September 2020 and is no longer supported + pathlib2 is still supported, but considered to have the same functionality as pathlib and is no longer tested separately; the previous behavior broke newer pathlib features if pathlib2 was installed (see #592) + Added caching of patched modules to avoid lookup overhead + Added use_cache option and clear_cache method to be able to deal with unwanted side effects of the newly introduced caching + The patchfs decorator now expects a positional argument instead of the keyword arguments fs. This avoids confusion with the pytest fs fixture and conforms to the behavior of mock.patch. You may have to adapt the argument order if you use the patchfs and mock.patch decorators together (see #566) + Default arguments that are file system functions are now not patched by default to avoid a large performance impact. An additional parameter patch_default_args has been added that switches this behavior on (see #567). * Fixes + added handling of path-like where missing + improved handling of str/bytes paths + suppress all warnings while inspecting loaded modules (see #614) + do not import pandas and related modules if it is not patched (see #627) + handle pathlib.Path.owner() and pathlib.Path.group by returning the current user/group name (see #629) + fixed handling of use_known_patches=False (could cause an exception) + correctly handle byte paths in os.path.exists (see #595) + Update fake_pathlib to support changes coming in Python 3.10 (see + correctly handle UNC paths in os.path.split and in directory path evaluation (see #606) + fixed handling of pipe descriptors in the fake filesystem (see #581) + added non-functional argument effective_ids to os.access (see #585) + correctly handle os.file for unreadable files (see #588)
Steve Kowalik2021-12-14 04:42:16 +00:00
4b5d7eb2f7
- Update 3.6.1: * fix borked tests from 3.6
Tomáš Chvátal
2019-10-07 18:04:20 +00:00
1613009ca8
- Update to 3.6: * fixed incorrect argument names for some os functions * fake DirEntry now implements os.PathLike in Python >= 3.6 (see #483) * fixed incorrect argument name for os.makedirs (see #481) * avoid pytest warning under Python 2.7 (see #466) * add next to FakeFileWrapper (see #485)
Tomáš Chvátal
2019-10-07 08:56:22 +00:00