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.1.tar.gz (42.6 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.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pyrofile-0.3.1-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.1-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyrofile-0.3.1-cp313-cp313-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pyrofile-0.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyrofile-0.3.1-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.1-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyrofile-0.3.1-cp312-cp312-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pyrofile-0.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyrofile-0.3.1-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.1-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyrofile-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyrofile-0.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyrofile-0.3.1-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.1-cp310-cp310-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyrofile-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: pyrofile-0.3.1.tar.gz
  • Upload date:
  • Size: 42.6 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.1.tar.gz
Algorithm Hash digest
SHA256 c4e31a9040ded01181c00a5b5be754fd56f318fbeeb1fb1fdcc619a89f6d3178
MD5 4f1a112e4ae3e5decbe0c64490d23ecb
BLAKE2b-256 fe0058e578e1239eab84f0ef51020adb8f418128707281a1f7b4964f6b20e749

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1.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.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6b5d4a632dea571d183f36e8d889d6f889ddd69f25087749e2b839886f6607d0
MD5 5172d0bcda1979d90bd0745c79f10f17
BLAKE2b-256 f81af2a9310c919bbe8313eef03af5cf97f8401559eb2b6765a8050ab198bc83

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6009115bae5446d1c411738f67f469e7b6e142132dbfa296f8a37903f450458a
MD5 1397936351584ff231769cde46b8b274
BLAKE2b-256 670365e6aa44045ba59475553a8f5037e79f2a41e7efe4af91ec812e8951c9b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3581f637c38e8700ee9f2c594624928c0c4a844463e06c594477bfef5f2fec76
MD5 3b28ed7fd8d75600914a918e7a2ebf2f
BLAKE2b-256 aa9bc23377f34fa778446530cc7c214cf52a8e18acee55c81210f01455659cde

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 48543561a1355bfb3ceeb96e83a6c3f496667ee3ffb6f8dd5c16cf8e94650357
MD5 454cef5d8a9f7cdb04686293094d2096
BLAKE2b-256 f456837c63a3ecb61cfd3f6f96ede50a5e8729a116f6902ae452dad33733a031

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 84c1257862e37b7a2703e28cb052c1269da463b60d06af0c989f157df71852dd
MD5 445fe993596c732adbca6d111e9a0608
BLAKE2b-256 6bcf92308812616baeb9c9ed171ff9ff2ac44343cea60ed25095c6940c0778d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bbbe3cc968f0e4955016b40da65347162347462ca83d335b3b27ace2b5315a16
MD5 4694c5d7755a0fc59ab8849c57035941
BLAKE2b-256 d1c5cb4af7a261e8dae6bbe2ca4fbd4eee46ecbb7e0a6441c107b4e39404fa20

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82941f4e1f420a6063fbb8505b16a72f8f94c52c6848881e895d2326fdda70ae
MD5 121b8b08fa8531db9b489df1ad5344e0
BLAKE2b-256 27876df284a4bebc67b8d7039a11377198ce38d7182d3ed6e4946ce32d3c7c55

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2c89deab58913bbf99ac97df4191d0772d673f5409808390982553adc6632616
MD5 947e8b8e31b044094ffcc7a29889325e
BLAKE2b-256 e3d2e306e6cce74894c6b80996d6350c293dc212d5f63f4de06196bca240aa01

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e8ddcb30874b60108a594b5985ea786d8c9f6e82938a2359e4ea402b1ea0d401
MD5 0e4c9bc5e985b72c32c5d5563fec0608
BLAKE2b-256 f21d9ca202d8107df7b8c92281d2344e798b99c9faf3ddf2539a6ba4ae435c35

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7093ff10afe3d779e086349616c9f611243ca0479ce792bc288ce5d8d6396ae0
MD5 3c52c3e039c2df71c77cd55cf894beec
BLAKE2b-256 503470df90589ab9ea9f098e709b1eb90b2146ba31ed02798542343039cae465

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fa7f5d71ac6269fee3093f20a35d576b4e7ab46651ccab601c2c0ee0df95c230
MD5 7e819e82ccf6c80026189875cbd8723e
BLAKE2b-256 1836f87941f79fd20dc9d0c5300183fadd93461937a99b8ffb1d15c9fa6cf7d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ac68bd3b92d9fcf1a4f264d6b035ad71b949f49b646462b89487a201b58713c1
MD5 3f3a130abcc7f542043fb2b69e2eba1b
BLAKE2b-256 438649ce542299a71864d72a5426a8a6ec095d7991830ed63c809487d5e9ecdd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 15a81e1cb75f219d57a92e6b80e7404ccaa4ea498288d1832ab02aa1828079c2
MD5 1ed05f209474c15ff93f01ff0eab348d
BLAKE2b-256 5053999df97a59b59b8783dc715aa9d9e6355ff0b0e5314b76534f1c0996f2da

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ad9064f68e0ff671eb69e7e146add9df5756c51c9699c2797bfe6b150a0e7b6d
MD5 eb2e8cd4eb3c324d7652be4b70096484
BLAKE2b-256 bb51ba3ec94c6ee619a75981afe904249945fa6ad5daff606a6e89ef5255cc1f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b99b1b2276423fb8f1b958ad27977336a8440727811446b6e7cc52cd1197f756
MD5 2837b80aabe4ce14f564d817edf9b421
BLAKE2b-256 8e226e36cd0dadbdfeacdee5789d08a6a47420572fcfa84920b2168fa6fc3a96

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrofile-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1c151a18d90a4116f45a589911c99a607e994a01bee39f28893877bee25a8644
MD5 d890b0a802871a5edf1a56e5465aa219
BLAKE2b-256 bf67a5d26adb4628fffe87eeec7ac42e22cb4ff26946695557ec02e1ce250ac1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrofile-0.3.1-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