fsspec breaking changes
Every breaking API change we have recorded in fsspec on PyPI: 38 breaking changes in 11 versions. Below are its newest 6 versions, removals and renames first, each with its source.
Newest change June 16, 2026

On this page
2026.6.0
- Signature changed
fsspec.AbstractFileSystem.expand_path
Was def expand_path(self, path, recursive=False, maxdepth=None, **kwargs); now def expand_path(self, path, recursive=False, maxdepth=None, assume_literal=False, **kwargs). pypi.org
2026.3.0
- Signature changed
fsspec.implementations.sftp.SFTPFileSystem.put
Was def put(self, lpath, rpath, callback=None, **kwargs); now def put(self, lpath, rpath, recursive=False, callback=DEFAULT_CALLBACK, maxdepth=None, **kwargs). pypi.org - Signature changed
fsspec.implementations.sftp.SFTPFileSystem.put_file
Was def put_file(self, lpath, rpath, callback=DEFAULT_CALLBACK, mode='overwrite', **kwargs); now def put_file(self, lpath, rpath, callback=None, **kwargs). pypi.org
2026.2.0
- Signature changed
fsspec.parquet.open_parquet_files
Was def open_parquet_files(path: list[str], mode: Literal['rb'] = 'rb', fs: None | fsspec.AbstractFileSystem = None, metadata=None, columns: None | list[str] = None, row_groups: None | list[int] = None, storage_options: None | dict = None... pypi.org
2026.1.0
- Removed
fsspec.compression.zstandard_file
fsspec.compression.zstandard_file was removed in fsspec 2026.1.0 pypi.org
2025.12.0
- Signature changed
fsspec.caching.KnownPartsOfAFile.__init__
Was def __init__(self, blocksize: int, fetcher: Fetcher, size: int, data: dict[tuple[int, int], bytes] | None = None, strict: bool = True, **_: Any); now def __init__(self, blocksize: int, fetcher: Fetcher, size: int, data: dict[tuple[int... pypi.org - Signature changed
fsspec.implementations.asyn_wrapper.AsyncFileSystemWrapper
Was class AsyncFileSystemWrapper(AsyncFileSystem); now class AsyncFileSystemWrapper(AsyncFileSystem, ChainedFileSystem). pypi.org - Signature changed
fsspec.implementations.data.DataFileSystem.encode
Was @staticmethod def encode(data: bytes, mime: Optional[str] = None); now @staticmethod def encode(data: bytes, mime: str | None = None). pypi.org - Signature changed
fsspec.implementations.dirfs.DirFileSystem
Was class DirFileSystem(AsyncFileSystem); now class DirFileSystem(AsyncFileSystem, ChainedFileSystem). pypi.org - Signature changed
fsspec.implementations.http_sync.HTTPFileSystem.exists
Was def exists(self, path, **kwargs); now def exists(self, path, strict=False, **kwargs). pypi.org - Signature changed
fsspec.implementations.reference.AsyncFileSystemWrapper
Was class AsyncFileSystemWrapper(AsyncFileSystem); now class AsyncFileSystemWrapper(AsyncFileSystem, ChainedFileSystem). pypi.org - Signature changed
fsspec.json.FilesystemJSONDecoder.__init__
Was def __init__(self, *, object_hook: Optional[Callable[[dict[str, Any]], Any]] = None, parse_float: Optional[Callable[[str], Any]] = None, parse_int: Optional[Callable[[str], Any]] = None, parse_constant: Optional[Callable[[str], Any]] =... pypi.org - Signature changed
fsspec.parquet.open_parquet_file
Was def open_parquet_file(path, mode='rb', fs=None, metadata=None, columns=None, row_groups=None, storage_options=None, strict=False, engine='auto', max_gap=64000, max_block=256000000, footer_sample_size=1000000, **kwargs); now def... pypi.org
2025.10.0
- Removed
fsspec.conftest.CachingFileSystem
fsspec.conftest.CachingFileSystem was removed in fsspec 2025.10.0 pypi.org - Removed
fsspec.implementations.cached.AbstractFileSystem
fsspec.implementations.cached.AbstractFileSystem was removed in fsspec 2025.10.0 pypi.org - Signature changed
fsspec.implementations.cache_metadata.CachingFileSystem
Was class CachingFileSystem(AbstractFileSystem); now class CachingFileSystem(ChainedFileSystem). pypi.org - Signature changed
fsspec.implementations.cached.CachingFileSystem
Was class CachingFileSystem(AbstractFileSystem); now class CachingFileSystem(ChainedFileSystem). pypi.org - Signature changed
fsspec.implementations.http.HTTPFileSystem.protocol
Was protocol: str | tuple[str, ...]; now protocol. pypi.org - Signature changed
fsspec.implementations.webhdfs.WebHDFS.ls
Was def ls(self, path, detail=False); now def ls(self, path, detail=False, **kwargs). pypi.org
Check your code
These are the changes. To see which of them reach your code, scan a public repository, or have your coding agent call check_code with your manifest or lockfile over MCP. The API reads every change in every version, not only the newest. On Team and up, a fix pull request opens for the changes that reach a connected repository. Nothing merges or deploys.

Put your code on continuous management.
Scan a public repository now, or give your agent one line.
See how out of date your code is.
Tell your agent what changed since it was trained.
claude mcp add --transport http since https://api.since.dev/mcp