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.2.1.tar.gz (38.5 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.2.1-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.2.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.2.1-cp313-cp313-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.12+ x86-64

pyrofile-0.2.1-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.2.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.2.1-cp312-cp312-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.12+ x86-64

pyrofile-0.2.1-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.2.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.2.1-cp311-cp311-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.12+ x86-64

pyrofile-0.2.1-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.2.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.2.1-cp310-cp310-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyrofile-0.2.1-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.2.1.tar.gz.

File metadata

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

File hashes

Hashes for pyrofile-0.2.1.tar.gz
Algorithm Hash digest
SHA256 63f1fc84b22c04209a1dd6c8692ae14fd1fb5d9335bd52d5b8f28f3c98ab9b96
MD5 208f636719b81dde7327af9828a6db50
BLAKE2b-256 63fd80f7a39167f070b118191d28ee1dd6fba46517537c90f8ee0224103134bc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f02a1032012ad52aa81422ebdf44b3a72eb91132ec0787a2aa061afc420849f2
MD5 c4f5136f6d7ccda58b1e8b7c823240d7
BLAKE2b-256 ec7cb9e9878e08b9a966a7a29f1c93dcb5d2a2110a37a801103e20e198870844

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 83deae29e1c587db06e234e8e4436f57c3144ac036a2721e99ae28c895f7d076
MD5 e95bebb05a1db74fd137f4ebef1f5ac9
BLAKE2b-256 7ffc149e5e5c37ff07e8792c0bbf7c8fcc3fae25d719b99bd095d617f8b283f2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6dc923fc8f1bd6e480ea2a06079dd30124fbeea2e9dfacf21dc6dc9f3b315dff
MD5 cb683682aca42e8c26962816a5cdc091
BLAKE2b-256 42ea43ead6dccd9e1d410ebaed40a2a05f17c11876437f873f637a9577ea345b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8602465680aa596349ad3728b62b4c3e41e8045b23e20a6f3c76e9d3f6cc2660
MD5 9d3982014dccc72ab00f213d78bb2eb3
BLAKE2b-256 c6d45b19698f38ff0fda7bb238624054c354df374f8c8684604b48e3ba279482

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71f61868f7538dce0a4c7f304dc27560f2fbd1fb25f6e8297f4493b87d4e1329
MD5 eb586e2cd5d1cd94344aef6546396b7f
BLAKE2b-256 c04f170731497dcd6009b2f3951ccf143e4d9cedbb25e8a77212fee09aee8e3e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e8ccfe323d186565ff7f877f20f4055ae2803e716586bdb74d74210ec129f39d
MD5 f19b370e0a6f917d7851fe55f963580c
BLAKE2b-256 8ede72aa04dd7ead69caba80f74c627fe0b78da982d04828d13b2c6a15e75cf0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ba83eb0da18eb1ace3755cbd3ba01cc6dddd371386f7b06707b18727710d478e
MD5 cf5d382c7f525145e859430ac9a7cd38
BLAKE2b-256 1fbcaa5257c46d310eec9ccf24e4e77cb3d5a22aae96c621cc5036c498f9b1c6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c182f777c57b8c064882ab2d1c12aee882d09c53feb8ccae203437057f70aacf
MD5 bacdbedeba8c1266a6dd1aec01b533c1
BLAKE2b-256 7123f542126d78093f3a19e9b614b8242ab73bebeb23b902a9f668191c27161e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c42c6c80218af0b04fb0b7693b4509f856ed5329ca753cbfec11ed80016fb312
MD5 035e57d740e2a13e107c4c983246577b
BLAKE2b-256 46453a04b7cac18fd14a145337a06d79a5073a9835898e80133efde79869f7f2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ce997f33dba6491206ccbe4a2a70e10b2fc6fd7d83833fe7f142909285237338
MD5 078edbcc613764ed934ea8266e4554ff
BLAKE2b-256 fcca9195d98e6b58b126d5e692f9229f489ca3825f1984e19306011791420ac3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 32f5cbc03db1a6106fa203589194717001d1ed6b116d7cc68f80e573d8b9d924
MD5 2a52e103ffcf171b9bd92472de7a9f43
BLAKE2b-256 05eb03a009db7d3e5599c3b8c51f42643ed2b3dbdd936dd2f47aeecae36d1f7f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d09d450b3a9fff4ab3bb8ff1f4758743a454375f1e127604e87e56b449da0e63
MD5 abf60c5fb85041d56bdbe4eea125e650
BLAKE2b-256 bf5a81f9cee046ac1230184244a07bbe32510b7b4ee2f0a5adbfdc771d2a2b9b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b73f200edd57c8018e091429730b7959c766b7389e4d950b83a4c08a71e82cf
MD5 0e424d59dccb08267ab1588fe837263b
BLAKE2b-256 bb492099af1bbb5579b67d6122a6bc72e6d15cd2d20f6c396bfe7806438e2fc5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 89866018a36fff69e55c481a311976e92bb89f5b5033a578d652a5f38fcaba02
MD5 9c87695561507dcab98d7659163d2198
BLAKE2b-256 dbe24a014e9efb47b48c34c1cb2684fbec1dfea495220822b916131566ac1ec1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 94e7dbff2357195b081256a5a46c8c4f0a8b809938cb2079b11dd0e1de5100f5
MD5 1cfe57e7fbab29e5bda4c6faa91eb38b
BLAKE2b-256 6e0ee2168e21b712e8f78dc13838daf04e52f63bc5648fb74941418df4cb152d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrofile-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 04b6fa97b622b6d48c8982686732dbc7b1cf810bdfb8cf172832de36a0c1ee6f
MD5 c496f8ce92f2491466d515c47be1ed83
BLAKE2b-256 e368ef7fb7488c89bd61f5eecac28f269eeb52890e93434e4e60ea81e04cd0d1

See more details on using hashes here.

Provenance

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