NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3227 most downloaded on PyPI
Python's filesystem abstraction layer
Last release 4 years ago
no release in 18 months
Ships unpredictably
gaps range from 9 days to 1.4 years
Most releases are documented
notes for 49 of 60 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
88 releases · first in 2014
Make fs.zipfs._ZipExtFile use the seeking mechanism implemented in the Python standard library in Python version 3.7 and later ( #527 ).
fs.zipfs._ZipExtFile use the seeking mechanism implementedfs.zipfs.ReadZipFS as a case-sensitive filesystemfs.move.move_file to clean up the copy on the destination in case of errors.fs.opener.manage_fs with writeable=True will now raise a ResourceReadOnlyfs.wrap.WrapReadOnly as read-only.Support more lenient usernames and group names in FTP servers ( #507 ). Closes #506 .
One column per quarter.
MemoryFS.move and MemoryFS.movedir not updating the name of movedMemoryFS.scandir to use the old name.WrapFS.move and WrapFS.movedir use the delegate FS methods insteadfs.move functions, which was causing optimized implementation ofmovedir to be always skipped.MemoryFS.move and MemoryFS.movedir not updating the name of moved
resources, causing MemoryFS.scandir to use the old name.
(#510).
Closes #509.WrapFS.move and WrapFS.movedir use the delegate FS methods instead
of fs.move functions, which was causing optimized implementation of
movedir to be always skipped.
(#511).Added fs.copy.copy_file_if , fs.copy.copy_dir_if , and fs.copy.copy_fs_if . Closes #458 .
fs.copy.copy_file_if, fs.copy.copy_dir_if, and fs.copy.copy_fs_if. Closes #458.fs.base.FS.getmodified.fs.copy.copy_dir_if_newer. Test cases were adapted to catch those bugs in the future.fs.OSFS.setinfo.FS.getbasic is now deprecated, as it is redundant with FS.getinfo , and FS.getinfo is now explicitly expected to return the basic info namespace uncon…
PathError now supports wrapping an exception using the exc argument.writable parameter of fs.open_fs, andfs.wrap.read_only when a read-only filesystem isFS.upload explicit about the expected error when the parent directory of the destination does not exist.pytest to run tests, allowing any test runner supporting unittest-styleFSTestCases now builds the large data required for upload and download tests onlyMemoryFS.move and MemoryFS.movedir will now avoid copying data.FS.removetree("/") behaviour has been standardized in all filesystems, andFS.getbasic is now deprecated, as it is redundant with FS.getinfo,FS.getinfo is now explicitly expected to return the basic infoFTPFile, MemoryFile and RawWrapper accept array.arraywrite and writelines methods, as expected by their base class io.RawIOBase.MemoryFS docstring not rendering properly.FTPFS.upload. Closes #455.WrapReadOnly.removetree not raising a ResourceReadOnly when called. Closes #468.WrapCachedDir.isdir and WrapCachedDir.isfile raising a ResourceNotFound error on non-existing path (#470).FTPFS not listing certain entries with sticky/SUID/SGID permissions set by Linux server (#473).scandir iterator not being closed explicitly in OSFS.scandir, occasionally causing a ResourceWarningtemp_fs parameter of WriteTarFS and WriteZipFS.Missing mode attribute to _MemoryFile objects returned by MemoryFS.openbin .
mode attribute to _MemoryFile objects returned by MemoryFS.openbin.readinto method for MemoryFS and FTPFS file objects. ClosesLIST command with 24-hour times. Closes #438.conftest.py is present, fixes #364.sendfile.Mode.to_platform_bin. Closes #382.FTPFS.openbin not implicitly opening files in binary mode like expectedopenbin. Closes #406.Fixed bug in a decorator that would trigger an AttributeError when a class was created that implemented a deprecated method and had no docstring of it…
collections which would break on Python 3.8mock on Python 3requirements.txt fileerrno.ENOTSUP on PyPy. Closes #338.AttributeError when a classFixed broken WrapFS.movedir #322
Fixed potential race condition in makedirs. Fixes #310
MemFS now immediately releases all memory it holds when close() is called,FTPFS now translates EOFError into RemoteConnectionError. Closes #292geturl will return URL with user/password if needed @zmej-serow
geturl will return URL with user/password if needed @zmej-serowFlag to OSFS to disable env var expansion
Implemented geturl in FTPFS @zmej-serow
Restored deprecated setfile method with deprecation warning to change to writefile
setfile method with deprecation warning to change to writefile## [2.4.4] - 2019-02-23 ### Fixed - OSFS fail in nfs mounts
Fixed broken "case_insensitive" check
Fixed exception when Python runs with -OO
Fixed hash method missing from WrapFS
Added exclude and filter_dirs arguments to walk
exclude and filter_dirs arguments to walkAdd encoding check in OSFS.validatepath
IllegalBackReference had mangled error message
Registry.install returns its argument.
Registry.install returns its argument.The old methods are now aliases and will continue to work, but will issue a deprecation warning via the warnings module. Please update your code accor…
A few methods have been renamed for greater clarity (but functionality remains the same).
The old methods are now aliases and will continue to work, but will
issue a deprecation warning via the warnings module.
Please update your code accordingly.
getbytes -> readbytesgetfile -> downloadgettext -> readtextsetbytes -> writebytessetbinfile -> uploadsettext -> writetextcopy_file_data to 1MBchunk_size and options to FS.uploadIncomplete FTPFile.write when using workers @geoffjukes
workers @geoffjukesDeprecation warning re collections.Mapping
Use sendfile for faster copies @althonos
## [2.1.0] - 2018-08-12 ### Added - fs.glob support
Fixed ftp dir parsing (@dhirschfeld)
fs.copy and fs.move disable workers if not thread-safe
workers parameter to fs.copy, fs.move, and fs.mirror for concurrent copies
Nothing published for this version
Nothing published for this version
## [2.0.24] - 2018-06-28 ### Added timeout to FTP opener
Fix for Markdown on PyPi, no code changes
Nothing published for this version
Nothing published for this version
Handling of broken unicode on Python2.7
Nothing published for this version
Added Info.suffix, Info.suffixes, Info.stem attributes
MultiFS.listdir now correctly filters out duplicates
CreateFailed now contains the original exception in exc attribute
exc attributeModified walk to use iterators internally (for more efficient walking)
Issue with ZipFS files missing a byte
Walk now yields Step named tuples as advertised
ZipFS files are now seekable (Martin Larralde)
No changes, pushed wrong branch to PyPi.
No changes, pushed wrong branch to PyPi.
settext, appendtext, appendbytes, setbytes now raise a TypeError if the type is wrong, rather than ValueError
fs.filesizeNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
### Added - Lstat info namespace - Link info namespace - FS.islink method - Info.is_link method
Nothing published for this version
### Fixes - Fixed entry point breaking pip
### Fixes - Opener refinements
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →