Skip to main content

Static Python bindings for btrfs ioctl operations

Project description

pybtrfs

Native Python bindings for btrfs — create filesystems, manage subvolumes and snapshots, mount and unmount. No shell commands, no subprocess, no runtime dependencies beyond libc.

Built as C extensions directly from vendored btrfs-progs source. Pre-built binary wheels are available on PyPI — no compiler needed.

Why not the existing btrfs package?

The btrfs package on PyPI requires libbtrfsutil installed as a system library. That means distro packages, broken virtualenvs, and pain on minimal containers or custom builds.

pybtrfs statically compiles everything from vendored source — the only build-time requirement is a C compiler and Python headers. The resulting .so files link only to libc.

All blocking operations (ioctl calls, sync, mkfs, mount/umount) release the GIL, so they can safely run in parallel from multiple threads without blocking the interpreter.

Requirements

  • Linux with btrfs support
  • Python 3.10+

Installation

Pre-built wheels for x86_64 and aarch64 (manylinux_2_28):

pip install pybtrfs

Releases with wheels are also available on GitHub.

To build from source (requires GCC and Python headers):

pip install .

Or with make:

make build      # compile extensions
make install    # pip install .

Usage

Subvolumes and snapshots

import pybtrfs

# Create a subvolume
pybtrfs.create_subvolume("/mnt/data/project")

# Snapshot before a risky operation
pybtrfs.create_snapshot("/mnt/data/project", "/mnt/data/project-snap",
                        read_only=True)

# Check snapshot relationship
src = pybtrfs.subvolume_info("/mnt/data/project")
snap = pybtrfs.subvolume_info("/mnt/data/project-snap")
assert snap.parent_uuid == src.uuid

# Clean up
pybtrfs.delete_subvolume("/mnt/data/project-snap")

List all subvolumes

with pybtrfs.SubvolumeIterator("/mnt/data", info=True) as it:
    for path, info in it:
        print(f"{path} (id={info.id}, gen={info.generation})")

Create a filesystem

from pybtrfs import mkfs, CsumType, RaidProfile

# Single device
result = mkfs("/dev/sdb", label="data", force=True)
print(result["uuid"])

# RAID1 mirror with xxhash checksums
result = mkfs("/dev/sdb", "/dev/sdc",
              data_profile=RaidProfile.RAID1,
              metadata_profile=RaidProfile.RAID1,
              csum_type=CsumType.XXHASH,
              force=True)

Mount and unmount

from pybtrfs import mount, umount, mount_data, MountFlags

mount("/dev/sdb", "/mnt/data",
      data=mount_data(compress="zstd", space_cache="v2"))

mount("/dev/sdb", "/mnt/readonly", flags=MountFlags.RDONLY)

umount("/mnt/data")

Quota management

import pybtrfs

# Enable quotas (required before any qgroup operations)
pybtrfs.quota_enable("/mnt/data")

# Or enable simple quotas (squota) — faster, less overhead
pybtrfs.quota_enable_simple("/mnt/data")

# Rescan to ensure accounting is up to date
pybtrfs.quota_rescan("/mnt/data")
pybtrfs.quota_rescan_wait("/mnt/data")

# Check rescan status
status = pybtrfs.quota_rescan_status("/mnt/data")
print(status)  # {"flags": 0, "progress": ...}

# List all qgroups with usage
for qg in pybtrfs.qgroup_info("/mnt/data"):
    print(f"qgroup {qg['qgroupid']}: "
          f"rfer={qg['rfer']}, excl={qg['excl']}, "
          f"max_rfer={qg['max_rfer']}, max_excl={qg['max_excl']}")

# Set a 10 GiB referenced limit on the root qgroup
pybtrfs.qgroup_limit("/mnt/data", qgroupid=5,
                      max_rfer=10 * 1024**3)

# Disable quotas
pybtrfs.quota_disable("/mnt/data")

Hierarchical qgroups

import pybtrfs

pybtrfs.quota_enable("/mnt/data")

# Create a level-1 parent qgroup (1/1)
parent = (1 << 48) | 1
pybtrfs.qgroup_create("/mnt/data", parent)

# Create subvolumes and assign them to the parent group
pybtrfs.create_subvolume("/mnt/data/project_a")
pybtrfs.create_subvolume("/mnt/data/project_b")
child_a = pybtrfs.subvolume_id("/mnt/data/project_a")
child_b = pybtrfs.subvolume_id("/mnt/data/project_b")

pybtrfs.qgroup_assign("/mnt/data", child_a, parent)
pybtrfs.qgroup_assign("/mnt/data", child_b, parent)

# Set a shared 50 GiB limit across both subvolumes
pybtrfs.qgroup_limit("/mnt/data", parent, max_rfer=50 * 1024**3)

# Remove assignment and destroy the group when no longer needed
pybtrfs.qgroup_remove("/mnt/data", child_a, parent)
pybtrfs.qgroup_remove("/mnt/data", child_b, parent)
pybtrfs.qgroup_destroy("/mnt/data", parent)

Error handling

import pybtrfs

try:
    pybtrfs.sync("/not/btrfs")
except pybtrfs.BtrfsUtilError as e:
    print(e.btrfsutil_errno)  # e.g. BtrfsUtilErrno.NOT_BTRFS
    print(e.errno)            # OS errno

API reference

The package ships with .pyi stubs — full signatures and docstrings are available via help(pybtrfs), help(pybtrfs.mkfs), help(pybtrfs.mount), help(pybtrfs.quota), and your IDE's autocomplete.

Testing

Tests require root and a mounted btrfs filesystem:

truncate -s 1G /tmp/btrfs.img
mkfs.btrfs /tmp/btrfs.img
mkdir -p ~/btrfs
mount /tmp/btrfs.img ~/btrfs

sudo BTRFS=~/btrfs PYTHONPATH=. pytest -v

License

GPL-2.0 — see LICENSE.

This project statically compiles code from btrfs-progs (GPL-2.0), including libbtrfsutil (LGPL-2.1) and substantial portions of the core btrfs-progs codebase (kernel-shared, mkfs, crypto, etc.) which are GPL-2.0. Since the resulting binaries are derivative works of GPL-2.0 code, this project is licensed under GPL-2.0 to comply with the upstream license terms.

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

pybtrfs-0.6.3.tar.gz (5.5 MB view details)

Uploaded Source

Built Distributions

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

pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (1.7 MB view details)

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

pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

File details

Details for the file pybtrfs-0.6.3.tar.gz.

File metadata

  • Download URL: pybtrfs-0.6.3.tar.gz
  • Upload date:
  • Size: 5.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pybtrfs-0.6.3.tar.gz
Algorithm Hash digest
SHA256 544c781e70b79c4d0630de06ce19ad9c0c2023273f5f4b97305be9ca18003445
MD5 4c99bedfafbdd84ce41fb1e84f35e942
BLAKE2b-256 a1ecd83477a615a2fec2ce893344a2b44b32bb05ed28dc2e6eba2f4118a90cd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3.tar.gz:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 db8fbd80059fc6e3ed6b4ef592ab02d8ba98a87d4a80d0dca3603a920382027e
MD5 8828e614e7cb402695a3c4bff3b726f0
BLAKE2b-256 e3fca279ae980b154ecef71ea5fceb13dd34239675bc774e62d13af683d4ed5d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 05d3b0e3c38d08fb1fb4260cb523b69855981b92139cf8c5ca8d5199f9ed35ac
MD5 5185b776431f5dc1b2002403e9060ffb
BLAKE2b-256 943e04b93c20309c1b9e5de4e0580c394c97a11dbf7d5239505c3553ccae5399

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 377c5c1dc25116438d3a7afdd9806260ca99fa7971f397b1429c9019e2c84f30
MD5 cba522e7e18d9fd14c229fce53f8c309
BLAKE2b-256 a41067116ce380fd054aab80866e2ba35537c00ff54f6b5cd5209ccdc42d7913

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 3a0d483b577202465837eaa7f929001962037b79e7ff498f57dfd3e65a61672b
MD5 86641235fb49dd8a7c73ca7a794627af
BLAKE2b-256 1fdb737baf4ad88a3d9b502c8472b756af07a38828ebf66118033172bbd6640b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp314-cp314-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a43471ddf003fb0fb49d468712f7a398380526cf3fa3e06b2296cd7656cf4e34
MD5 9127d6c8f6ae2588fa69a35458e019c6
BLAKE2b-256 1f8f9da44c1cd35e70a091bfdcc0a8b89c035b2beb469c30b320db66f8a46408

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4511ffa603a2e38ec50bfc9069f71c657147e419ef03fb979f1909c3af4ae0a3
MD5 959015b882be5ce5e2927e9d7ee62cd5
BLAKE2b-256 a2159b05612df3166152158f294bf622a1626411f310ac581a40fda5356c2b11

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4bdbacf0e5600375d5b972e5ad81a34b600fb6de2f418416a143d74283f53173
MD5 2c617a32ea1bbe7314c9f5388cf35d8e
BLAKE2b-256 0d8f31d60b12f5a958516b99f0a47a4a790160529be09e9bafd9d27a38ef734a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 83c40bc53c29e1b61d9556482bb7a3a87a22c888a0f330879d5aab02dc752545
MD5 a5a2da3db4f56d59040c0169eb01ca29
BLAKE2b-256 2e527da0434221314fa9df8ff8627d67ba12a7e8d768a3644d567bfad5a39c17

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 83498021b688729e7d2f457b80f9aae16b698d60940c264a867a271d81fb434d
MD5 15b1cd644d4b5a8af6437c0c10575e03
BLAKE2b-256 98032092010384be7a74e4dc3e5839379d1138b01fd178d56eec2bdb2a03b46c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 d686d70a3c8afd96493aaad6e26b746e70daeb51159ebd4b7622837b3cd785aa
MD5 87ee0e1f6a52d6576b6dc3dd2f50a86d
BLAKE2b-256 feb6004dde4b76be3f12fb97a63a5d321b872ee6704adbd345a5167e417f4041

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp313-cp313-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8cc543888a73a3879a44791084d427b9530316fbe5c36cc53f29bcf9c4eb588f
MD5 c187910755b73fd6654f0c9e0cdfb9b6
BLAKE2b-256 25db0e5b944613d24f1a21b3e9e794f0180278269fefaab2dda820320479e8fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f8d1230f674bf1cf17469915c513a53a76a70bda964b628b65cd3542df62924d
MD5 07b065ac719e719e0c8240a1ef7514d5
BLAKE2b-256 39403fc368757cbcc77832800ca983d96db0b6e69b657506ed6dc958db85dad4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ade2f4ddbf7fed9110189593769446e73363c03ce3c1241ae2aaecb01446a1ea
MD5 60d2d6e50833ee5bc8e6ed14fbf47bb8
BLAKE2b-256 52ff86afcddd1c97428367ac2fd61aa7f85173d8094b1b8449f641bb6f290d69

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a496b3cf0a627cd4fae3dae34c1e20f3bd546f933b76e78855f132ba280eca9e
MD5 5ade546b6809335e41206d3c0ccb62d7
BLAKE2b-256 840781b60b6e1eabdd5c30f06f0bfd19cb623b6602a6d3faa00d85c675863ef0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 92076535dd00adf96dde35a33a2127d63cf0a35008944efb85b10e5c6771fb7d
MD5 98a2c2c964a7774e331b44060c9afaa7
BLAKE2b-256 198c9aae1d292830db6192469bd15aa8cd5bfdc29838c982d54f8a9619feed35

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 816c4c4a9bae80bac3750305828a227c1628068b0259861e2eb3e6f26eb34034
MD5 fb0b6673e1e3c0456bbbb7a5048b3090
BLAKE2b-256 2b3b5c0d32aa9b6103fa257b623e2cb50c05fd0e28e418a6aaacb6663a53f26f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp312-cp312-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7201a58dac10923c93d4cd93badabc7bb85cbef1fa7d5bd6e4472fb5eb83e668
MD5 d148670920d22219d31ff239b8d25138
BLAKE2b-256 d12a62e2530731cde90938f791576cbc12e9ebb335795959c5cdcbb621150fc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 04767efea8afa2e4ed0dc7d9ba566e70fa933eb02e73b33ab5f1e05d81286297
MD5 7cd24a5102f7d38d6021e54a7e649e7a
BLAKE2b-256 de3459e3ac5a0783749230f6b78477669f37252c8a9db366259c5c869de4e727

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e402a009790c5874589e64f8b27bdb0bb264d434b7cd4ba94b87c3792a754b28
MD5 2a332433d9c28fb7f8e32d223502c2e0
BLAKE2b-256 f740be47e2c35f41ce98e0eb96aa96761d322ed3a3cca4017cccb3f0607e0bad

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 23e6ee327b36de4f13bf4d6aaf07c4d6ae8ffbfdf41356fa98c87e847fc1ca65
MD5 6433a1f353f7aad93d0f7f3225fb0f83
BLAKE2b-256 f2df7c5b3be3ebd532f7e7ec87ad9e18547f0e402bec87dc2a805a3811b7baf9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 127ea81ecce5864acc8e1db168a84311507f87042327be8c44bf74d4605333e5
MD5 a8417f7b63b66524a96a6321d6234114
BLAKE2b-256 990fd1489716ab965b865e6927aeea5df7e810d4c2ba25113394ffb7413bc3cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 1112f186eb1c0208ee36184d20b4e82adc19cf1d9b0351970bad26dfe9d4d5f6
MD5 47e3483b7cb7ce2a496269610f751431
BLAKE2b-256 93cf69ca690b1154c37df6f81afeffb3a3ab396878ce7735a7faa10303e2be74

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp311-cp311-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7c7f3862223181e9f16e2e4d60b036d9d1ed1617fa063cbf508db3cfff054bc7
MD5 2ec841e50ccd3901fc40046bacd58259
BLAKE2b-256 5dc768ec92f7b9d0d37144f17d2c5b5c1b8c5c1e84228d489961bf74b6c247c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c14054b9985e1ec0463fd933f5e1feb00f4f58f676c15480a267c55a2ec7b69c
MD5 05c0bbf7dcdd9f1fa75b46047264deef
BLAKE2b-256 c385162e94e0526c411625826c82c42e2ec746ba6ad48022d54087e5f305b112

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 69a75c093b7068f8c0dcbac1dd9d502de9251d1e1c1ceade7fd17f94ad9390b8
MD5 9d8bd031ba4cb2fa5d5fd8977b3ce0e0
BLAKE2b-256 6e283c658cabbf7675f6ccfe2c4d3838bb0254718ffe733ecd7223f9ab799f6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d991e4083334dd6239a31a79043dee04b17a9d59b8913612d3867052196ec3f6
MD5 5b9445d564cbbe58f15036721a5203f2
BLAKE2b-256 2566ffa42a8b4847f350b51ea5898aa8a2f3dd0ab1edced6cfe27d9aadb0f4e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 ab702e9389dbe64e491b5d0cc5dcdac5c18b7396b00d6034d51392036cc01e74
MD5 4933e4f783b39e0527fc8be4161480df
BLAKE2b-256 4ecccf6b560d9a57b62f449b3dd65056943a66f1acf223b638ad4c76c3c4e0f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 d5d95cef1b2fe30ba26e101914e6ba9eb271a90da075870a447733aa48dafeaf
MD5 40d47ac7eb79f18a7cdf8e5d6b8da9a9
BLAKE2b-256 9c2400aeb558c0da303a97cc0d2563c87f671b43ad98b1e24e2e936947f8bcb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp310-cp310-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ba6665288188d15bbca421438f5ad70c342b4283bfe5fab03077d892b024e210
MD5 212e70291602ceee788b6da3bfaca5f4
BLAKE2b-256 460c299f1751ed74896c5650556dde8a6276b1b4ad1c506628fa524262d12811

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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

File details

Details for the file pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 450bca0cc14f94cd2b68c60d7fe29335fd3dc02fe80188232d3e099e14c5be82
MD5 c0b95b142970046abd3aa88ec05d868c
BLAKE2b-256 639d0882addf7e804f8c65b451417fbe2b3493ee48a454264d4de5e655071c46

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on mosquito/pybtrfs

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