Up to [cvs.NetBSD.org] / pkgsrc / devel / py-fakefs
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Fix PLIST after py-setuptools update; bump depends and revision
py-fakefs: updated to 5.8.0 Version 5.8.0 Adds preliminary support for Python 3.14. Changes * added some preliminary support for Python 3.14 * change behavior of `FakeFilesystem.get_object()` to ignore permissions as it has been before version 5.4.0 Fixes * fixed a problem with flushing if writing over the buffer end * fixed a regression that could break tests under Posix in Python 3.12 * fixed behavior for `os.access` for symlinks under Windows * fixed permission problem on querying file properties * fixed patching in pytest setup phase for module and session-scoped fs fixtures
py-fakefs: updated to 5.7.4 Version 5.7.4 Minor bugfix release. Fixes * fixed a problem with module and session scoped fixtures in Python 3.13 * fixed handling of `cwd` if set to a `pathlib.Path` * fixed documentation for cleanup handlers, added convenience handler `reload_cleanup_handler`
py-fakefs: updated to 5.7.3 Version 5.7.3 Fixes a regression in version 5.7.3. Fixes * fixed a regression in version 5.7.2 that `tempfile` was not patched after pause/resume (POSIX only, see [#1098](../../issues/1098)) * added workaround for a recursion occurring if using pytest under Windows and Python >= 3.12 (see [#1096](../../issues/1096)) Infrastructure * run pytest-specific tests for all supported Python versions * pytest is only supported for versions >= 6.2.5, earlier version do not work in Python >= 3.10 due to a pytest issue - adapted tests and documentation
py-fakefs: updated to 5.7.2 5.7.2 Fixes some problems with patching. Fixes * added some support for loading fake modules in `AUTO` patch mode using `importlib.import_module` * added some support to avoid patching debugger related modules Performance * avoid reloading `tempfile` in Posix systems Infrastructure * use trusted publisher for release (see https://docs.pypi.org/trusted-publishers/)
py-*: remove unused tool dependency py-setuptools includes the py-wheel functionality nowadays
py-fakefs: updated to 5.7.1 Version 5.7.1 Fixes a regression in version 5.7.0 that broke patching fcntl. Fixes * fixes a regression that caused unfaked `fcntl` calls to fail
py-fakefs: updated to 5.7.0 Version 5.7.0 Adds official Python 3.13 support, improves OS emulation behavior. Changes * officially support Python 3.13 Enhancements * the `additional_skip_names` parameter now works with more modules * added support for `os.fchmod`, allow file descriptor argument for `os.chmod` only for POSIX for Python < 3.13 * avoid reloading `glob` in Python 3.13 (did affect test performance) Fixes * removing files while iterating over `scandir` results is now possible * fake `pathlib.PosixPath` and `pathlib.WindowsPath` now behave more like in the real filesystem * `PurePosixPath` reported Windows reserved names as reserved in Python >= 3.12 * `PurePosixPath.joinpath()` incorrectly handled paths with drives under Windows in Python >= 3.12
py-fakefs: updated to 5.6.0 Version 5.6.0 Adds preliminary Python 3.13 support. Enhancements * added preliminary support for Python 3.13 (tested with beta2) * added `apply_umask` argument to `FakeFilesystem.create_dir` to allow ignoring the umask Fixes * use real open calls for remaining `pathlib` functions so that it works nice with skippedmodules Infrastructure * Add pyupgrade as a pre-commit hook.
py-fakefs: updated to 5.5.0 Version 5.5.0 Deprecates the usage of `pathlib2` and `scandir`. Changes * 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. Fixes * fixed handling of Windows `pathlib` paths under POSIX and vice verse * correctly use real open calls in pathlib for skipped modules
py-fakefs: updated to 5.4.1 Version 5.4.1 Fixes a regression. Fixes * fixed a regression from version 5.4.0 that incorrectly handled files opened twice via file descriptor Version 5.4.0 Improves permission handling. Changes * the handling of file permissions under Posix should now mostly match the behavior of the real filesystem, which may change the behavior of some tests * removed the argument `module_cleanup_mode`, that was introduced as a temporary workaround in the previous version - related problems shall be handled using a cleanup handler Enhancements * added support for `O_NOFOLLOW` and `O_DIRECTORY` flags in `os.open` * added support for fake `os.dup`, `os.dup2` and `os.lseek` Fixes * 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 * fixed `EncodingWarning` for Python >= 3.11 * 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` * add missing `follow_symlink` argument to `os.link` * fixed handling of missing attribute in `os.getxattr` * 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` Infrastructure * replace `undefined` by own minimal implementation to avoid importing it
py-fakefs: updated to 5.3.5 Version 5.3.5 Fixes a regression. Fixes * Fixes a regression due to the changed behavior of the dynamic patcher cleanup 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`. Packaging * include `tox.ini` and a few more files into the source distribution
py-fakefs: updated to 5.3.4 Version 5.3.4 Bugfix release. Fixes * fixes handling of unhashable modules which cannot be cached * reload modules loaded by the dynamic patcher instead of removing them - sometimes they may not be reloaded automatically * add back argument `use_dynamic_patch` as a fallback for similar problems
py-fakefs: updated to 5.3.2 Version 5.3.2 Bugfix release. Fixes * fixed a problem with patching `_io` under Python 3.12 * fixed a problem with accessing the temp path if emulating Linux under Windows * fixed result of `os.walk` with a path-like top directory * properly fixed the problem that filesystem patching was still active in the pytest logreport phase, the previous fix was incomplete Version 5.3.1 Mostly a bugfix release. Changes * changed behavior of `add_real_directory` to be able to map a real directory to an existing directory in the fake filesystem Fixes * fixes the problem that filesystem patching was still active in the pytest logreport phase * Restores compatibility with PyTorch 2.0 and above, as well as with other classes that have custom __setattr__ methods Version 5.3.0 Adds official support for Python 3.12. Changes * add official support for Python 3.12 Fixes * removed a leftover debug print statement * make sure tests work without HOME environment set * automount drive or UNC path under Windows if needed for `pathlib.Path.mkdir()` * adapt patching `io.open` and `io.open_code` to work with Python 3.12
py-fakefs: updated to 4.5.6 Version 4.5.6 Changes * minimum supported pytest version is now 3.0 (older versions do not work properly with current Python versions) Fixes * only skip `_pytest.pathlib` in pytest versions where it is actually present Infrastructure * add tests with different pytest versions, starting with 3.0 Version 4.5.5 Fixes * correctly handle file system space for files opened in write mode * correctly handle reading/writing pipes via file * disallow `encoding` argument on binary `open()` * fixed compatibility issue with pytest 7.0.0
*: bump PKGREVISION for egg.mk users They now have a tool dependency on py-setuptools instead of a DEPENDS
py-fakefs: updated to 3.7.2 Version 3.7.2 This version backports some fixes from master. Fixes * Fixed handling of relative paths in `lresolve` / `os.lstat` * Fixed `os.walk` if path ends with path separator * Fixed handling of empty path in `os.makedirs` * Fixed handling of `os.TMPFILE` flag under Linux * Fixed behavior of `os.makedirs` in write-protected directory
py-fakefs: updated to 3.7.1 Version 3.7.1: This version adds support for Python 3.7.6 and 3.8.1. Fixes * Adapted fake `pathlib` to changes in Python 3.7.6/3.8.1 Version 3.7: Fixes This version adds support for Python 3.8. _Note:_ This is the last pyfakefs version that will support Python 2.7 and Python 3.4 (possible bug fix releases notwithstanding). * added support for Python 3.8 * added preliminary support for Windows-specific `os.stat_result` attributes `tst_file_attributes` and `st_reparse_tag` * added support for fake `os.sendfile` (Posix only, Python 3 only) Fixes * support `devnull` in Windows under Python 3.8 * fixed side effect of calling `DirEntry.stat()` under Windows (changed st_nlink) * fixed problem of fake modules still referenced after a test in modules loaded during the test * correctly handle missing read permission for parent directory * raise for `os.scandir` with non-existing directory Infrastructure * fixed CI tests scripts to always propagate errors
py-fakefs: updated to 3.6.1 Version 3.6.1 Fixes * avoid rare side effect during module iteration in test setup * make sure real OS tests are not executed by default
py-fakefs: updated to 3.6 Version 3.6: Changes * removed unneeded parameter use_dynamic_patch New Features * support for src_dir_fd and dst_dir_fd arguments in os.rename, os.replace and os.link * added possibility to use modules instead of module names for the additional_skip_names argument * added argument allow_root_user to Patcher and UnitTest to allow forcing non-root access * added basic support for os.pipe * added support for symlinks in add_real_directory * added new public method add_real_symlink Infrastructure * added check for correctly installed Python 3 version in Travis.CI Fixes * fixed incorrect argument names for some os functions * fake DirEntry now implements os.PathLike in Python >= 3.6 * fixed incorrect argument name for os.makedirs * avoid pytest warning under Python 2.7 * add __next__ to FakeFileWrapper
py-fakefs: updated to 3.5.8 Version 3.5.8 Another bug-fix release that mainly fixes a regression wih Python 2 that has been introduced in version 3.5.3. Fixes regression: patching build-in open under Python 2 broke unit tests fixed writing to file added with add_real_file fixed argument name of FakeIOModule.open Infrastructure more changes to run tests using python setup.py test under Python 2 regardless of pathlib2 presence
py-fakefs: updated to 3.5.7 Version 3.5.7: This is a mostly a bug-fix release. Fixes * Regression: pathlib did not get patched in the presence of pathlib2 * fixed errors if running the PyCharm debugger under Python 2 Infrastructure * do not run real file system tests by default * make tests run if running python setup.py test under Python 2 Version 3.5.6: Changes * import external pathlib2 and scandir packages first if present Version 3.5.5: Fixes * removed shebang from test files to avoid packaging warnings Version 3.5.4: New Features * added context manager class Pause for pause/resume Fixes * fixed AttributeError shown while displaying fs in a failing pytest in Python 2 * fixed permission handling for root user * avoid AttributeError triggered by modules without __module__ attribute Version 3.5.3: This is a minor release to have a version with passing tests for OpenSUSE packaging. New Features * automatically patch file system methods imported as another name like from os.path import exists as my_exists, including builtin open and io.open Fixes * make tests for access time less strict to account for file systems that do not change it immediately Version 3.5.2: This is mostly a bug-fix release. New Features * added support for pause/resume of patching the file system modules * allow to set current group ID, set current user ID and group ID as st_uid and st_gid in new files Fixes * fixed using modules_to_patch * fixed recursion error on unpickling the fake file system * allow trailing path in add_real_directory Version 3.5: Changes * This version of pyfakefs does not support Python 3.3. Python 3.3 users must keep using pyfakefs 3.4.3, or upgrade to a newer Python version. * The deprecation warnings for the old API are now switched on by default. To switch them off for legacy code, use: python from pyfakefs.deprecator import Deprecator Deprecator.show_warnings = False New Features * Improved automatic patching: * automatically patch methods of a patched file system module imported like from os.path import exists * a module imported as another name (import os as _os) is now correctly patched without the need of additional parameters * automatically patch Path if imported like from pathlib import Path * parameter patch_path has been removed from UnitTest and Patcher, the correct patching of path imports is now done automatically * UnitTest /Patcher arguments can now also be set in setUpPyfakefs() * added possibility to set user ID * added side_effect option to fake files * added some support for extended filesystem attributes under Linux * handle contents=None in create_file() as empty contents if size not set * added pathlib2 support * added support for null device * improved error message for "Bad file descriptor in fake filesystem"
New package, py-fakefs-3.4.1. pyfakefs implements a fake file system that mocks the Python file system modules. Using pyfakefs, your tests operate on a fake file system in memory without touching the real disk. The software under test requires no modification to work with pyfakefs. Part of PR pkg/52941.