Skip to main content

File-like object for accessing local and cloud storage

Project description

pyrofile

File-like object for accessing local and cloud storage. Built in Rust with growing support for major cloud storage platforms.

Install

pip install pyrofile

Usage

from pyrofile import PyroFile

# Local filesystem
with PyroFile("/tmp/model.pt", "w") as f:
    f.write(data)

with PyroFile("/tmp/model.pt", "r") as f:
    data = f.read()

# Azure Blob Storage
with PyroFile("az://account/container/model.pt", "w") as f:
    f.write(data)

Works with torch.save and torch.load:

import torch
from pyrofile import PyroFile

with PyroFile("az://account/container/checkpoint.pt", "w") as f:
    torch.save(model.state_dict(), f)

with PyroFile("az://account/container/checkpoint.pt", "r") as f:
    state = torch.load(f, weights_only=True)

Backends

Backend URI scheme Status
Local filesystem /path/to/file Stable
Azure Blob Storage az://account/container/blob Preview
Amazon S3 s3://bucket/key Planned
Google Cloud Storage gs://bucket/object Planned

Development

python -m venv .venv && source .venv/bin/activate
python -m pip install maturin pytest
maturin develop --release --features azure
cargo test --lib
python -m pytest tests/python/test_local.py
python -m pytest tests/python/test_azure_integration.py

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

pyrofile-0.3.0.tar.gz (39.9 kB view details)

Uploaded Source

Built Distributions

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

pyrofile-0.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pyrofile-0.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

pyrofile-0.3.0-cp313-cp313-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyrofile-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pyrofile-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyrofile-0.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

pyrofile-0.3.0-cp312-cp312-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyrofile-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pyrofile-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyrofile-0.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

pyrofile-0.3.0-cp311-cp311-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyrofile-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyrofile-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyrofile-0.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

pyrofile-0.3.0-cp310-cp310-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyrofile-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file pyrofile-0.3.0.tar.gz.

File metadata

  • Download URL: pyrofile-0.3.0.tar.gz
  • Upload date:
  • Size: 39.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyrofile-0.3.0.tar.gz
Algorithm Hash digest
SHA256 9336bb1f069dfdd4132d90c613722f4a3e13a76539da0e7e970802264eaac4bb
MD5 5271b04c90d21596ec4699d21986a55b
BLAKE2b-256 9065592e3b6144bf225c518f1d3ca9fffb1266af53e61b17cdd4e5636c86bf6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0.tar.gz:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f4980aea83dc281798085fd9befdb411c6cb44e35a3fefd52b452422a6e35aff
MD5 54703753c4a5e8ee1c7d4c3d4bedfcde
BLAKE2b-256 b5b18fbca09981ef5efb695a81e3f67c2c38d6d00b27e3316fbda7fc6964eefd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 59ae33aa9015bfe14522fbb357d2589d7f805adca9c75135a854d3d2f390ca07
MD5 1b99b1f4398a494501137a4ea9531371
BLAKE2b-256 80003b2c3127cefa710b1ab2ca25f2ef1b8e430030a07ef15fcdbae27c061261

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 692724ac1266f72dd739e78c4885586c4e1ca838934c12ed0d83bd4c4969270c
MD5 5cf266254d426cecf8b3125599db9a1b
BLAKE2b-256 0927a3267c78ded9f9e70d1cd191db95d7e053c0a55bfbac617921b07e9b10de

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6c507f14cd01d29446ef0511a336c4fbd0597f2785408b88118b5191a87e1ec2
MD5 cb78be3a907fb5fb06e8b320133254fd
BLAKE2b-256 9bc89cb35855f45b802895e6e612e8005c30481896ff992659a381a711d76450

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 31bd1ff3d3307f93f3841fa724e64e44160ff42c555e09363c34674de2051c61
MD5 9251f859727333bfbd0dcb4e8ae2f8c8
BLAKE2b-256 26235e46740914e19ab832cf05ae1c71061ec938410c6ea3f1c0864babc92b2c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 09f204d9245bcd099e59423c406962324a68e277d5b59b22062e253a584298ae
MD5 ec90844beabed16108523e208887fe5b
BLAKE2b-256 ae5453906434d2da160f959c928e45fb73f62a73845a4c52f35e23fe943b8620

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9f6eb1243e60fe048c69b7c78080074997f54634517269eee258d39bc8de502f
MD5 0023fd68b9d0798dcc30b2694de998c8
BLAKE2b-256 867d6e7fdc3cc21c3e1b0768bf72a0a46d7f264075fdff6aeb36adfc057cd449

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e6638d773ce9b8db28adb68fb8eeffa35179924ee039c156f0612b04802f9edd
MD5 5f6a16448960b16180f42f23bb7c6bd6
BLAKE2b-256 ec42962f9008d61a7841d1f98d5f41fc3c0e22fedb678c130cf63c4ba1815306

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fe3c1663b580aa1fc611258468211498be868632cb5803f993c16a4b195771ad
MD5 9ca5c909242f4cfc6472da8cc01fde75
BLAKE2b-256 9a07746d9019a9cda18c3856fec9101836d7d214fd4bc98f7f120d74680a006e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d9af78849bebd4ff3739b1cc9bdc9844a06c85fe6c054e09a9fbc28c9436d65c
MD5 56589871738e1f74397703f8c28b607c
BLAKE2b-256 b21da2df875c8e4e3e5436cab49cf52cfb3710c0fa0acde36ff4ac22a9e0cc64

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d3264ed1f7d2db931679842e7c09793a352871aea1b6c693c58cc7c8e79505b7
MD5 40e95622e97c78ba680740412af0b596
BLAKE2b-256 a511ccdd3402284ef6a0007420ee6828a5958c7a44cf2f49d7d8f9105a05dd06

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4d25d8c052dcc9393f9c23deb488a994d9661cbd6c7002d1727570d363291cb6
MD5 8a9024d348aa672d95e0c5d8b71ecc2b
BLAKE2b-256 68501adfde99c488b3f98e5f3bebe0a59257cc885bda7f249f76151fb2cd4f0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1cddc08c7df6c16777a8729d2c983de6fa7e003e60fe3ac0c0b6b7a5eb040ded
MD5 aa1a890d23514a09e39f94e79dc097ee
BLAKE2b-256 865f068d64e7c858d63dd09861aebb1dd3106973809e1b8e28e7e3e8b25c1917

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f3e579d518432c1e32bffdfb2c9977d67a388c217de5b2f3d80f83f8b89fe97d
MD5 6d1d5956e8b00083bf59eabd6a115fcd
BLAKE2b-256 e4c2c4bdaa974ead6d833ce181ece81efa9a0f23a82f7e1821f866f3b50e91eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1b0cf0bfc5bcf6620bfbb0d69e43bb6cd26e5efc116dcb974ac6dcf643f1fbcf
MD5 7f3f98076295dfbcac4b4717383ccc62
BLAKE2b-256 a589da318be98758a4acbe49382d358101dc23c0cc139990c382e278181f0fe1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrofile-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bd87b09f45bb809d0cb0b5ac51fc345708736dd77de39d629e77d2d675752ec3
MD5 40c8aa515d0e73a0e9cd595cd9e5ba52
BLAKE2b-256 36e791f6eb295c80f31525068e4887bc13f4762a8b77d0a5cb95c97a7bf1e9e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: release.yml on nateprewitt/pyrofile

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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