Skip to main content

fsspec-compatible backends with Rust accleration

Project description

fsspec-rs

fsspec-compatible filesystem backends with Rust acceleration.

Build Status codecov License PyPI

Overview

fsspec-rs provides Python filesystem classes that inherit from fsspec.spec.AbstractFileSystem while delegating core operations to Rust. They can be used anywhere fsspec filesystems are accepted, including pandas, dask, xarray, and direct fsspec.open() calls.

The package currently includes:

Backend Protocol Python class Replaces
Local filesystem file-rs, local-rs fsspec_rs.LocalFileSystem fsspec.implementations.local.LocalFileSystem
Amazon S3 s3-rs fsspec_rs.S3FileSystem s3fs.S3FileSystem

Install

pip install fsspec-rs

Quick start

import fsspec
from fsspec_rs import LocalFileSystem
from fsspec_rs import S3FileSystem

fs = LocalFileSystem()
fs.pipe_file("/tmp/example.txt", b"hello")
print(fs.cat_file("/tmp/example.txt"))

s3 = S3FileSystem(bucket="my-bucket", region="us-east-1")
s3.pipe_file("path/to/output.txt", b"hello")

with fsspec.open("file-rs:///tmp/example.txt", "rb") as f:
    print(f.read())

Documentation

  • Filesystems: local and S3 usage, configuration, caching, and path conventions.
  • API reference: Python API generated with yardang/Sphinx.
  • Rust traits: Rust FileSystem, AsyncFileSystem, FsFile, and cache traits.

Build docs locally with:

yardang build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fsspec_rs-0.1.2.tar.gz (102.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

fsspec_rs-0.1.2-cp310-abi3-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.10+Windows x86-64

fsspec_rs-0.1.2-cp310-abi3-manylinux_2_28_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64

fsspec_rs-0.1.2-cp310-abi3-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

File details

Details for the file fsspec_rs-0.1.2.tar.gz.

File metadata

  • Download URL: fsspec_rs-0.1.2.tar.gz
  • Upload date:
  • Size: 102.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for fsspec_rs-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3e21d3d9d52f9f59c485f22938845ecb0503eee51b92e1c2d3274b80adcda3c6
MD5 b1ed4aa2280aef4c5e417f00d5521615
BLAKE2b-256 5640896d672579d552c2e9c2dc5dbff00749d21d52b32c853dc2e5a1a6702d2f

See more details on using hashes here.

File details

Details for the file fsspec_rs-0.1.2-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: fsspec_rs-0.1.2-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for fsspec_rs-0.1.2-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 794705b3936dc8723e291cfb22239f42880012761f1df96ac0e3791550af4a0a
MD5 50d210fe07a443ad6a072c540e0da089
BLAKE2b-256 c9c38680e158ec893caaba083fc09fe7fd76846d9d6a223b751fb04a32b55268

See more details on using hashes here.

File details

Details for the file fsspec_rs-0.1.2-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fsspec_rs-0.1.2-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ace8f0a0ac441ad7983bbb3ff7ab881325abaa2c55e0b4a2185d07d532fb3907
MD5 b4636440f2af66df8ecebf31020df09a
BLAKE2b-256 3a552d2ec2600d5a4d503409740916113ee4d9cee194959cdce4956ae6a9a8a3

See more details on using hashes here.

File details

Details for the file fsspec_rs-0.1.2-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fsspec_rs-0.1.2-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 03d0985e0daf422eb2f12c017012d72aee89688e5d807ca753971a3a94467511
MD5 7233f984060132f1ad4a51803ed06863
BLAKE2b-256 a64f95c3b8ebf617b4153ec6bca1c8786bac7cfe1b4b4b86be03d896c8ee05db

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page