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.4.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.4-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.4-cp314-cp314-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

pybtrfs-0.6.4-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.4-cp314-cp314-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.4-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.4-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.4-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.4-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pybtrfs-0.6.4-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.4-cp313-cp313-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.4-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.4-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.4-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.4-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pybtrfs-0.6.4-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.4-cp312-cp312-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.4-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.4-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.4-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.4-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

pybtrfs-0.6.4-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.4-cp311-cp311-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.4-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.4-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.4-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.4-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

pybtrfs-0.6.4-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.4-cp310-cp310-manylinux_2_34_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

pybtrfs-0.6.4-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.4-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.4.tar.gz.

File metadata

  • Download URL: pybtrfs-0.6.4.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.4.tar.gz
Algorithm Hash digest
SHA256 7c1be23e7f7caaa01919c4dab8d0bc5c1ea13056acdbaa75212d714f47117732
MD5 e6840309b67818c958152a78816a3dff
BLAKE2b-256 26efe75e7bad8723e45befbbee423d63aa3fd851d4272e6dc63f7b38fdcb5a3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4.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.4-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0d1599a015ea8ef16ace02d1bdbbac838fbe2d30a1837c478994e343c8305593
MD5 0fc4a1207ae4f13505aa385a00a5c5cb
BLAKE2b-256 76385abc176ef7c333d936096e30e8eb2a46775a0f2c656f914203986a031d7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 796f4ad75959fb9de3fb13574782675c4449bda112669245a2ec28203d9a4fd6
MD5 ca06fa6933bd0531b1df6338bf2c84d1
BLAKE2b-256 c24d56899a9104f4dee2ef44104f4e0f8205e4d0dfd7953818a85cfb8d33c316

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 7ed7336088946cfdcf440953f95bc75a826a8a05e601f198db4a8e8525b7af8f
MD5 58cbfb4f54bc20aebafb65a311ee3dba
BLAKE2b-256 8cfa87eaf2378c2873335ba862b54383d4eff210b55ec86ce3ea3c16efba3b8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp314-cp314-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp314-cp314-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 15eec62f3bc80fb939797b04a904d48b2341de7a4ea46e01c294561f6bf7f356
MD5 22ad60eb77ed39d42f2a2112b758fbfa
BLAKE2b-256 9461c983a78e75dd8fdb942cd483da2c2c43be2ea2f412a2e2df9a4fe6457b8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2daebc2d804b0608ccd4fe92fb04de7f73aacd28f8de5c45f6646d374831c945
MD5 c61b4cf5d2b4b2a34dba986f6190e866
BLAKE2b-256 1b5f941c69ee98564ce449969873f9c489e586951df8076f3b0a7f7c4584611b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a98110ac4328605cc46cf3733741ad98b661b6537bb276261b819979bbdcb42a
MD5 a9bd3acf87d57e1b83b334807bbc3d2e
BLAKE2b-256 6611f931233fee3384dbd2e789a5fd1871fbe4b2197f4b3532c5da91daa49d30

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0f9986063c92c502b6c8280a869d5488c037224961f17ecb6fd1a765c8b8b6b3
MD5 92e75e658fba590f58b6a9220001cc48
BLAKE2b-256 85789124fc0288ee547add55f91c8f00598c3bec66e5f4dc384b1e7e0c7bd594

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 81051821932b3758342fd5b6764e7590ccdd462991caf6f996cc3870ec658c18
MD5 61963bc0a6b449973cb81afaff061adb
BLAKE2b-256 0c6754236cf00316b2b2272a07367320b7819438e76e98361cb59f9476cba2e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 0b058112d054820d627d58989896134d196872a21c44072e94b87e93365a2cb6
MD5 0c3ae3099434be18d4ce536b77f82365
BLAKE2b-256 4388b7a8d06a2a441339457d7b72f5aa3c2efa16206971324e0452e780149e4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp313-cp313-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 265d58599b193bab54428cbe1bd8e5b96fcd7deaeaa0ac10f5c4a6e199ec7cac
MD5 0ed07a736169f3a85fbaff594942143c
BLAKE2b-256 ef99f9c30ed5dadd64e2ada8aed371af0c3991ceabad4a9b72d4800c71632c92

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d1e20b289ae206e609c3527611bb1711ef13c4afec6b459d49406592fff5dfdb
MD5 9435e49664dfbb71ad8fccf65935ce24
BLAKE2b-256 b2fbf71f471758908330a90ded6be89cda250ff1669b10ebce62bd8f071eb3c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3be9e892522611025e542f6424e92be7b7227da605ae874cb36c8500fe7323b5
MD5 d3dde82f217e315a2b5a5de07d97e136
BLAKE2b-256 12249542c7edbfde50a3b52cf78dfedafde0194064deeee3895e782f7af23ea0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f7a033b91fbfc31be457341a1c85c6ee557ccee2832f9892c9514e287c395f43
MD5 9f294356eb50796895723e00db51c880
BLAKE2b-256 b9a9e1f0bf2072d9bb5d9e2f011ee09fa32e56f9c31964daf6d1615735b92761

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d6fae0402f91c37c1affac150ec7b55da22c00f0615a00056ed49578cf947e0a
MD5 fd2460398ddc75ec7bb7f0142cad7901
BLAKE2b-256 350b361b7ee6033e0daa46d50785739a6f58d28fc4f86f01116ce0d1f3678bd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f36bd701f7ebff522d7876de09b88bd2d4d27a8c9a12643346ce75a528d9116e
MD5 6e036737849e78e27a708e934257f19e
BLAKE2b-256 432c89ec604f4c8d281b48c3f981cfdee6d01fb8c52406970826cdbfa75787db

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 2a9fe1106bb40f8fd631339fbb8dcc33e340661767879ab7f6b1b29f891ac9c9
MD5 966b7161f6cb6cdbb1e9ad4fafef5c20
BLAKE2b-256 73faec3ac3b89b70a4c1312fb6e1ac844249e29d6ff7c02b5794b88d4c7762a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2f4004d92bfd5038ab6b2b1e4875970c2cdc99c2e9512f82f03d4018b2658f2a
MD5 10ac1c0f702a3bcb78bdad7818d16070
BLAKE2b-256 0e713ff82ca009e56d950a3d79987fa187733969adf597027e9a6e771a3c7940

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5a2cc0560cba343bc0d4678f399a0c59548f7b70cf0ecd42a3668eac5d7c803e
MD5 8d6fd18424ad1e60f1d838fe3d8a3e76
BLAKE2b-256 2119146bd61f6aaadac4ebdb33517e36ba67d29a90cc53ca1e7d31c83c6476cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a241a6e48e66b83496299d3cbac8c2c9dcaf56ad0d452be35a3e5ab3c42dee5f
MD5 2547a815cd5e4ec8e9cf272b0ac8377f
BLAKE2b-256 e5a2a7adaa7d734b5fbe51ca2418859bec2ab85279f88b1547b5bc03b8630045

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bdac28e8a3988544030acca2e39e1b7407b2c6c6229b48f257f7b28df88cf95d
MD5 d9894efb7582079685ff476b198878c7
BLAKE2b-256 87c39eb9e30dbb4c1e1f6cd0ab31c74179226a4735449b49737d242bbb4d0fda

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 07851af73e6530555781531e973cadb5d65e0f44f14139bf9cbb180f9662c87f
MD5 dce132f236839208f6ae220b20a44510
BLAKE2b-256 ff0984e933f76950154b4510400eb9478fb43600168d642490d272e85e7785e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 995789efd7cc7a305aee2ac8030c87231d9ea3626faf2806e5c719bcbca5388a
MD5 ee6d2896d3695b71785370537a11478c
BLAKE2b-256 f87e67c43b62cc38ba22975aef5ddc286fff7c472efbdc8dd41c9045dda9bf0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a057c6c67bc1926a4986c59965d8ab3878f2c6e18cbf2045bc847019bedde15e
MD5 470c7929b8276f9eefad357dc252420d
BLAKE2b-256 69ed4b296a9cfaef39e301ba9d29d8b2538b34f58ef257e22e8258e1ced43190

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2afa402bacb6cf32a3ec569b6a112855299bf84fba022afc32078c9e6953b8ef
MD5 281e0086ed161773e09038c72047566c
BLAKE2b-256 c15dd65a9f6e320345d64840d4708787b326314112c10d8fd889806464070e5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2130760c49ed435a2d6b0e6b320a6c0a85672888506d18f691cba19a52a2ee2c
MD5 67398bdca4b09791e4b1306c95333938
BLAKE2b-256 125fe0c8e9f4b146a93acb600284f80f20ec3d01fd7f9457b786cb2d9d62704f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d6568f13ef41d8300f37ea651b38ec739d40adf7c2325310c927249820dc918f
MD5 44e11e02b8af0f8c038c69922a5979d4
BLAKE2b-256 b9a0f0bfc275ddbd3e37e3827efac06d3ccfafea88ef1943fdc7ebf7db7ccd77

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1f06ac17e428aceebf1087621818c6d8bff1ad3d88de8a47068a4f17838c1684
MD5 673d4ba1dc9c8ee63332c5b309babc14
BLAKE2b-256 6af8ca6cc4d5f7319f1e50e2c7a8f795b16b5297f0cc39503677d0bc241265ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp310-cp310-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 9c85d5bfac2ae6ba0a9cd44c9c00cddb463edc27ae62707c5868cdbd50b2dd69
MD5 6cabb8202f3aedefdbe25b45150409f2
BLAKE2b-256 61c0eef35c824e63d595e0e68e26eff1b9e3f7507b6f82539dcbc5e0cfec26b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp310-cp310-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp310-cp310-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7d0324b9e82a1be2103082feeafece785eb73b9a2dddd7ce309635f6d66be531
MD5 64b6f9b276787ef13f01ecd817299432
BLAKE2b-256 a71297ce5f1e1e0e81c29fc7dbd1c4da44f596d8802f65e9246869bd112fb161

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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.4-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pybtrfs-0.6.4-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c2b97dfc17c5df48c3d480471a7b75375ac63045edfb58d781fbe61360afbd91
MD5 444920a562fbe3a911c67042a4d4a67c
BLAKE2b-256 203e63f67e71a0e9b53c20a8dad5c8d1f2979f82be0964955301533624544409

See more details on using hashes here.

Provenance

The following attestation bundles were made for pybtrfs-0.6.4-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