Skip to main content

Python bindings for parsing Apple DMG disk images, HFS+/APFS filesystems, PKG installers, and PBZX/CPIO payloads

Project description

dpp

Python bindings for the Apple DMG extraction pipeline

PyPI License: MIT Python Platform

Open macOS .dmg disk images from Python — browse HFS+/APFS filesystems, extract .pkg installers, and unpack payloads.

Native Rust speed — powered by PyO3 bindings to the dpp Rust pipeline.


Why dpp?

dpp is the only Python library that handles the entire Apple package extraction pipeline natively.

Without dpp, extracting files from a macOS .dmg in Python requires shelling out to multiple command-line tools — most of which only work on macOS.

Feature dpp hdiutil + shell dmglib (Python)
Single API ❌ (4+ tools) partial
DMG read/write read only
HFS+ support
APFS support
PKG extraction ✓ (xar)
PBZX/CPIO ✓ (cpio)
Cross-platform macOS only partial
Native speed

Features

Open DMG Parse UDIF disk images with LZFSE/XZ/Zlib/Bzip2 compression
Browse HFS+/APFS Auto-detect and navigate filesystems inside the DMG
Extract PKG Open .pkg installers found on the volume
Unpack PBZX Decompress XZ payloads and parse CPIO archives
Create DMG Build DMG files with selectable compression
Create CPIO/PBZX Build CPIO archives and PBZX payloads
Context managers All reader/writer classes support with statements
Exception hierarchy Structured errors that map to specific failure modes

Pipeline

                 ┌─────────┐
             ┌──▶│  HFS+   │──┐
┌─────────┐  │   │ (volume)│  │   ┌─────────┐    ┌─────────┐
│  UDIF   │──┤   └─────────┘  ├──▶│   XAR   │───▶│  PBZX   │
│  (DMG)  │  │   ┌─────────┐  │   │  (PKG)  │    │ (files) │
└─────────┘  └──▶│  APFS   │──┘   └─────────┘    └─────────┘
                 │ (volume)│
                 └─────────┘

Installation

pip install dpp-py

From source (development)

cd dpp-python
pip install maturin
maturin develop

Quick Start

Browse a DMG (auto-detect filesystem)

import dpp

with dpp.open("installer.dmg") as dmg:
    # List partitions
    for p in dmg.partitions:
        print(p.name, p.partition_type, p.size)

    # Open filesystem (auto-detects HFS+/APFS)
    with dmg.filesystem() as fs:
        print(fs.fs_type)       # "hfsplus" or "apfs"

        # Directory listing
        for entry in fs.list_directory("/"):
            print(entry.name, entry.kind, entry.size)

        # Read file contents
        data = fs.read_file("/some/file.txt")

        # File metadata
        stat = fs.stat("/some/file.txt")
        print(stat.size, stat.mode, stat.uid)

        # Walk entire filesystem
        for entry in fs.walk():
            print(entry.path, entry.kind)

Choose Extraction Mode

# In-memory mode: faster for small DMGs
with dpp.open("small.dmg") as dmg:
    fs = dmg.filesystem(mode="in_memory")

# Temp-file mode (default): low memory for large DMGs
with dpp.open("large.dmg") as dmg:
    fs = dmg.filesystem(mode="temp_file")

Extract a PKG Payload

with dpp.open("installer.dmg") as dmg:
    with dmg.filesystem() as fs:
        with fs.open_pkg("/path/to/package.pkg") as pkg:
            print(pkg.components)

            with pkg.payload("com.example.pkg") as payload:
                for f in payload.list():
                    print(f.path, f.size)
                data = payload.extract_file("./usr/bin/tool")

One-Call Extraction

# Find all .pkg files in a DMG
packages = dpp.find_packages("image.dmg")

# Extract a specific component payload in one call
archive = dpp.extract_pkg_payload(
    "image.dmg",
    "/path/to/installer.pkg",
    "com.apple.pkg.KDK",
)
for entry in archive.list():
    print(entry.path, entry.size)

Create DMG Files

builder = dpp.DmgBuilder()
builder.compression = "zlib"     # "raw", "zlib", "bzip2", "lzfse"
builder.compression_level = 6
builder.add_partition("disk image", partition_data)
builder.build("output.dmg")

Create CPIO/PBZX Archives

# Build CPIO content
cpio = dpp.CpioBuilder()
cpio.add_directory("./usr/bin", mode=0o755)
cpio.add_file("./usr/bin/hello", b"#!/bin/sh\necho hello\n", mode=0o755)
cpio.add_symlink("./usr/bin/hi", "./usr/bin/hello")
cpio_data = cpio.finish()

# Write PBZX archive
writer = dpp.PbzxWriter("output.pbzx", compression_level=6)
writer.write_cpio(cpio_data)
writer.finish()

Low-Level DMG Access

with dpp.DmgArchive.open("file.dmg") as archive:
    print(archive.stats)
    print(archive.compression_info)
    data = archive.extract_partition(0)
    archive.extract_partition_to(0, "/tmp/output.bin")

Standalone Filesystem Access

# Read raw partition images directly (no DMG wrapper)
with dpp.HfsVolume.open("partition.img") as vol:
    entries = vol.list_directory("/")
    data = vol.read_file("/some/file")

with dpp.ApfsVolume.open("apfs_partition.img") as vol:
    entries = vol.list_directory("/")

Documentation

API Reference Full class and method documentation
Rust Library Underlying Rust pipeline API
CLI Tool dpp-tool for interactive DMG exploration

API Reference

Top-level Functions

Function Description
dpp.open(path) Open a DMG file, returns DmgPipeline
dpp.find_packages(path) Find all .pkg files inside a DMG
dpp.extract_pkg_payload(dmg, pkg, component) Extract a PKG payload in one call

Pipeline Classes

DmgPipeline — High-level entry point. Context manager.

Property/Method Description
partitions List of PartitionInfo
filesystem(mode=None) Open filesystem, returns FilesystemHandle. Mode: "temp_file" (default) or "in_memory"

FilesystemHandle — Unified HFS+/APFS volume. Context manager.

Property/Method Description
fs_type "hfsplus" or "apfs"
volume_info VolumeInfo metadata
list_directory(path) List entries, returns list[DirEntry]
read_file(path) Read file contents, returns bytes
stat(path) File metadata, returns FileStat
walk() Walk all entries, returns list[WalkEntry]
exists(path) Check if path exists
extract_all(dest) Extract all files to directory, returns ExtractStats
extract_path(base_path, dest) Extract files under base path (prefix stripped), returns ExtractStats
open_pkg(path, streaming=False) Open a .pkg file, returns PkgReader

DMG Classes

DmgArchive — Lower-level DMG access. Context manager.

Property/Method Description
stats DmgStats
compression_info CompressionInfo
partitions List of PartitionInfo
extract_partition(id) Extract by ID, returns bytes
extract_partition_by_name(name) Extract by name, returns bytes
extract_partition_to(id, path) Extract to file
extract_main_partition() Extract main partition, returns bytes

DmgBuilder — Create DMG files.

Property/Method Description
compression "raw", "zlib", "bzip2", or "lzfse"
compression_level 0–9
add_partition(name, data) Add partition data
build(path) Write DMG to disk

PKG/XAR Classes

PkgReader — macOS package reader. Context manager.

Property/Method Description
is_product_package Whether this is a distribution package
components List of component names
distribution() Distribution XML (if product package)
package_info(component) PackageInfo XML
payload(component) Extract payload, returns Archive
payload_bytes(component) Raw payload bytes
list_files() List all XAR file paths

XarArchive — XAR archive reader. Context manager.

Property/Method Description
files List of XarFile
find(path) Find file by path
read_file(index) Read file by index, returns bytes
extract_all(dest) Extract all files to directory, returns ExtractStats
extract_path(base_path, dest) Extract files under base path (prefix stripped), returns ExtractStats

Payload Classes

Archive — PBZX/CPIO payload reader. Context manager.

Property/Method Description
list() List entries, returns list[FileEntry]
extract_file(path) Extract file, returns bytes
extract_all(dest) Extract all to directory, returns ExtractStats
extract_path(base_path, dest) Extract files under base path (prefix stripped), returns ExtractStats
decompressed_size Size of decompressed CPIO data
cpio_data() Raw CPIO bytes

CpioBuilder — Create CPIO archives.

Method Description
add_file(path, content, mode=0o644) Add a file
add_directory(path, mode=0o755) Add a directory
add_symlink(path, target, mode=0o777) Add a symlink
finish() Finalize, returns bytes

PbzxWriter — Create PBZX archives.

Method Description
write_cpio(data) Write CPIO data
total_written Bytes written so far
finish() Finalize archive

Filesystem Classes

HfsVolume / ApfsVolume — Standalone volume readers for raw partition images. Context managers.

Method Description
list_directory(path) List entries
read_file(path) Read file, returns bytes
stat(path) File metadata
walk() Walk all entries
exists(path) Check path existence

Data Types

All data types are immutable (frozen) Python objects with __repr__.

Type Fields
PartitionInfo name, id, sectors, size, compressed_size, partition_type
DirEntry name, kind, size
FileStat fs_type, id, kind, size, uid, gid, mode, create_time, modify_time, nlink, data_fork_extents, resource_fork_size
VolumeInfo fs_type, block_size, file_count, directory_count, name, symlink_count, total_blocks, free_blocks, version, is_hfsx
WalkEntry path, name, kind, size
FileEntry path, size, mode, mtime, uid, gid, is_dir, is_symlink, link_target
CompressionInfo zero_fill_blocks, raw_blocks, zlib_blocks, bzip2_blocks, lzfse_blocks, xz_blocks, adc_blocks
DmgStats version, sector_count, partition_count, total_uncompressed, total_compressed, data_fork_length, compression_ratio, space_savings
XarFile id, name, path, file_type, size, compressed_size
ChunkInfo index, offset, compressed_size, uncompressed_size, is_compressed, compression_ratio
ArchiveStats chunk_count, compressed_size, uncompressed_size, file_count, directory_count, total_file_size, compression_ratio, space_savings
ExtractStats files, dirs, symlinks_skipped, bytes

Exceptions

DppError (base)
├── IoError               # I/O errors
├── InvalidFormatError    # bad magic, corrupt data, invalid headers
├── FileNotFoundError     # file or partition not found
├── DecompressionError    # decompression failures
└── UnsupportedError      # unsupported features/formats

Example Output

>>> import dpp
>>> with dpp.open("Kernel_Debug_Kit.dmg") as dmg:
...     for p in dmg.partitions:
...         print(p)
PartitionInfo(name="MBR : 0", id=-1, size=512, type="Other")
PartitionInfo(name="Primary GPT Header : 1", id=0, size=512, type="Other")
PartitionInfo(name="Apple_HFSX : 3", id=2, size=1069593600, type="Hfsx")
>>> with dpp.open("Kernel_Debug_Kit.dmg") as dmg:
...     with dmg.filesystem() as fs:
...         print(fs.fs_type)
...         for e in fs.list_directory("/"):
...             print(e)
hfsplus
DirEntry(name="Library", kind="directory", size=0)
DirEntry(name=".DS_Store", kind="file", size=6148)
>>> builder = dpp.DmgBuilder()
>>> builder.compression = "zlib"
>>> builder.add_partition("test", b"\x00" * 4096)
>>> builder.build("/tmp/test.dmg")
>>> with dpp.DmgArchive.open("/tmp/test.dmg") as a:
...     print(a.stats)
DmgStats(partitions=1, uncompressed=4096, compressed=30, ratio=0.01)

Alternatives

Approach DMG HFS+ APFS PKG PBZX Cross-platform Language
dpp Python (Rust native)
hdiutil + subprocess macOS only Python + shell
dmglib partial Python
dpp Rust library Rust

Choose dpp if you need:

  • End-to-end DMG → files extraction from Python on any platform
  • Native speed without subprocess overhead
  • Structured API instead of shell pipelines
  • Both read and write capabilities

Next Steps

  • Type stubs.pyi stub files for full IDE autocompletion
  • Async support — async wrappers for I/O-heavy operations
  • Iterator protocol — lazy iteration for walk() and list()
  • Progress callbacks — report extraction progress
  • Wheels — pre-built wheels for common platforms

License

MIT

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

dpp_py-0.2.0.tar.gz (171.8 kB view details)

Uploaded Source

Built Distributions

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

dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp314-cp314-win_amd64.whl (785.7 kB view details)

Uploaded CPython 3.14Windows x86-64

dpp_py-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp314-cp314-macosx_11_0_arm64.whl (830.9 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dpp_py-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl (956.1 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

dpp_py-0.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp313-cp313-win_amd64.whl (783.4 kB view details)

Uploaded CPython 3.13Windows x86-64

dpp_py-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp313-cp313-macosx_11_0_arm64.whl (830.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dpp_py-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl (955.6 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

dpp_py-0.2.0-cp312-cp312-win_amd64.whl (783.8 kB view details)

Uploaded CPython 3.12Windows x86-64

dpp_py-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp312-cp312-macosx_11_0_arm64.whl (830.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dpp_py-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl (955.9 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

dpp_py-0.2.0-cp311-cp311-win_amd64.whl (782.7 kB view details)

Uploaded CPython 3.11Windows x86-64

dpp_py-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp311-cp311-macosx_11_0_arm64.whl (835.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dpp_py-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl (957.1 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

dpp_py-0.2.0-cp310-cp310-win_amd64.whl (782.6 kB view details)

Uploaded CPython 3.10Windows x86-64

dpp_py-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

dpp_py-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

dpp_py-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

File details

Details for the file dpp_py-0.2.0.tar.gz.

File metadata

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

File hashes

Hashes for dpp_py-0.2.0.tar.gz
Algorithm Hash digest
SHA256 073af8f1e77e26f18730f50467fa52353cb4a3935809603ddd80b6e7315bd341
MD5 8b767adc6d8e9abedc526a7ef7dcf982
BLAKE2b-256 a2095d3157b355f78df5e3025cd5d7b6b9cb764ebf4945db60ebb80d5c7134f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0.tar.gz:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3040b92685d1beb4205d031184e4e9e3f358ec36a3f5445222f90ed81ff1ce3d
MD5 c78789d36a9e8d84067a00b0520d4cbe
BLAKE2b-256 21dbe8e0d98717492358e1f2294e0e624ce119df3c2c60d0ef9a7a52f9fb582f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 27f534f170c5c39b6087020b4ebfebb5c1b77bcf208be075bc5e7fb008ba3d6c
MD5 c0345b6b2f7453298111dea9bc33b327
BLAKE2b-256 f779a30b5aa2a9f62aa827da844a144cd5df466b78d8532804243ad2dae74c94

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d6681ef9a1932e636fed21bc81fbd987a056101c2e774157257440de7ad785f6
MD5 9a765e8313c98cedc2fe37f4c405b3c5
BLAKE2b-256 4a0306636baa73aca80e0e46f6c1fdd024bbb901c2eb62019df13a672fa2e0a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: dpp_py-0.2.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 785.7 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dpp_py-0.2.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 235f1dda0cec4d1ed0767cf2c0545e6c722a968bc4b35eb4e407c4f267056287
MD5 9f7243af0298b2646e904811736a019b
BLAKE2b-256 deca0829ac0f1bacc0fe3d6cd0b1205d37e3da1127f5088c3504dae7120115e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp314-cp314-win_amd64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7d489355abd6845c033ee6f796ea333f55b174f2dd2a1035e86b72ee35c5a86b
MD5 35191f713c2b0e19c788f3b1fa648d36
BLAKE2b-256 59931e811fcce33446c8ee3cafb5c1213802f3a8324cbe3231efedf20aa9f4e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 252deb252f22d88835ad6932a2672ab0c1f3a809794756f4c6201f3cc79c11dd
MD5 2cce132530fcdad233c0e39995be02e3
BLAKE2b-256 eb579888e69402cffab8182d8c053210532f3f427277e28947eea1d9af9509bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5d83b16d6c8ca81d6b19fde82a7cf817a525c87672e74d976af4334aac9c27e
MD5 2e5017e9635b789daed2ed8b195d3029
BLAKE2b-256 777624b096fde8f321f9cbd650316732a4be338c161e64d33984431e42b50ca5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b01e3709260b3b7feb84e1cafd1b7c85d5ba40403a989a9c39f7712a3393088d
MD5 549eb8bac80a745789600043cd2c603e
BLAKE2b-256 fa9bf63e20666c6c40db7bb92ded2b872d8a83083a540edc5e26aa5ad6c2dfc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d800f8e123ab7fbc018f60d89515eda736a626aceab1cd33e0cf97d232c4449f
MD5 6ef6c3ee47b9e189a858a8d3646ebb07
BLAKE2b-256 ee212df9803be385652125c01aa02c10ae6eedf12a59cc9cedf08090c2ea78aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dpp_py-0.2.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 783.4 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dpp_py-0.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 268184f2057a20f84a8f0a53711d3376d6cb5006dcf32aa7b84d51fd0e339f38
MD5 4603ec2dd11771a6748b316782b79b70
BLAKE2b-256 c4f0071461f8c685a1749996c971540b7a08526bec1dda483baa3b9ce69fd419

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp313-cp313-win_amd64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8db27de7799498c61f954745ca26f5298065f8b56ea49492f0475f17fad80847
MD5 72c2bbd2cf3466ce616d99e126512443
BLAKE2b-256 1356988a7de0a6629d607650f67cf68efcb86a2a33e7aa11a28d12c12b56842e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2b2359ff782cff02cd1206f9272130c91948873c18648150f0e5631c5bf90984
MD5 4f4b27a714a990f45f52870c434816d9
BLAKE2b-256 76d8439f6d7a1f36220e0c151a9656d9ac7ba5aff86e6093cd34430252a8d1a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 08c9df484c45f6a57b85cc30cbf32dd2dc42c2e2c0524b399fe59f29501b0708
MD5 5e4bf4e7bdfcd8e210bafa48ddf734af
BLAKE2b-256 1405aa0b1a2344da6c024e3d8470ecaa0647470edbc5ad781c0af8a04c748459

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 57ee6c168accba6d50d46c4cee3c4a79626362987e243ad19f0a719e865ec9ad
MD5 7f7b17599a56526b55c6215cfa1bab8f
BLAKE2b-256 f919d50a85a1174d024c313f57e5c578e8b35ce04e48c62435334270ab513b47

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dpp_py-0.2.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 783.8 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dpp_py-0.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ba34c788a07875b86e31572f6ce471411a9a3b742bf38cc8ed7422bdcffefcbf
MD5 6fa24b9c4d6ef1c431c27a866a45588c
BLAKE2b-256 3de519dcdb0e01ddd8dbae5a7086cab93f026763f301f3f4943821e559171fe5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp312-cp312-win_amd64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5d88a7cc149ffb2647f67088966641b551257fe1f95e4c2655825b868dff3559
MD5 8bd6ede99fc3c1b5891a5e551376a748
BLAKE2b-256 102241e800bd0c1117fc5cc2d02de9ba48084ba6f46d361fde36761f88fe4feb

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 82045498dd7143810b75c38cbd152714394f9d9577b5f169662c8cb72b621362
MD5 03b1fa28ca6466a4e170a93132b2a163
BLAKE2b-256 6420bcd602b6d93cd9f3c3c1b96cb995a170ae01c84800302f2284373baddb73

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4720acb4a2c44cd3161a1760d0e2a1bbcacfd9574997eb7280353ef1a22804e8
MD5 df423b8a3d21d06d2eba6e406211be6d
BLAKE2b-256 eb0c6b8dec8430b5bc678bdee9a87bee42ab27e60f98ec1c4b4597a45e2b0089

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9774139ff1026cf1ffc404bc6db0c046393c728526bd014aafcb4e957bdcbf7f
MD5 5dcdb4788de4af0ad79389e9bd42cfd7
BLAKE2b-256 dfeff7655efcba39832385e56073be0c2dd21f67c21274673917027501b556fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dpp_py-0.2.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 782.7 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dpp_py-0.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 37b12f78ec7da7976489883882d39ff3bc3d1bf7e5bcc236188f5a5b08f01534
MD5 291758b83721811604dc166d920861e4
BLAKE2b-256 69a54431735d820e95c6d5bb1d7162e574c7d83ad7ee49942d578265a263e745

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp311-cp311-win_amd64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd6f3a09e35fe409e7cd4ec0e1ccb667fb9d74b41fdb3e1b4c0ce0734a9d2c1b
MD5 f080d54e8c46e280f1f92233cc3ec931
BLAKE2b-256 0f7deb7fe76b2000a2c9e90060cc4917d202ec1fb06c63a15c9b46f6d4083ac8

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 09af2d50c3475594f89412006ee45beb2549fac3de35f7aa167fa81d0061ac50
MD5 4eb7b1382561d6fcd7732357ad9697ed
BLAKE2b-256 a184c955695861bce20b56ec245a86d71b977cf4f9df1bb36d31cf202e405f99

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b802c6a149e4042e263931304c12dcda46aeb5ef82118f30c8c2341c8609d05d
MD5 7dc79a6f9b08892f4f374863816a3f12
BLAKE2b-256 d1c69de2431ac4814242db8186eefd8016a3451467507a4dddfd751ffe657b9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 778e8f29377c8361b1edd32602f98e4c4d8a61047f3753aedcec90e5061aa967
MD5 1111e310f95cb9f55ab9224741184cd9
BLAKE2b-256 9e3373a39b37a0975e9dda18498bca139b3d28ab71ad8e615b4217d454cd836c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: dpp_py-0.2.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 782.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dpp_py-0.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6d4b475e1918757ca89a0122dc93b36a6ad78979318febb3560918f3f274fc38
MD5 7a7df14ca52ce834b87d99c724111def
BLAKE2b-256 2cdaee57c058cd644d0977049a7537e37c71cd4e3e28ac006a8b3b8a154478a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp310-cp310-win_amd64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0ad0c9d5c9ca68611ba0ab9e1a291db42406d1e397dbb8c5d8db770777dce921
MD5 69fc5c9fdaf6ea17d8a51e5985e62ee5
BLAKE2b-256 2498d42279cf74e3a8457e4b91c796c48c7d9fd7e246299b076e5df59fd7fb79

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e046ccba008d7b8b9fb4686a23ce4076613ac23e84219df911fee4ad860b704d
MD5 eaa572d52fc72de6ef47dfb413cbdbea
BLAKE2b-256 355e9aab92590bca64ba1f382dc4df93a1776e594648c3f4d070198570aa0927

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61bda299f66baa7ec83f8cce6cf0e6cd5c751e5a4d0086feea6a60af66e9c25a
MD5 cc93c00074f97fb2834f3edf8a702644
BLAKE2b-256 3e80da73c75c08b7a160221f75a932e3bce7f2ae0a08250344a81fc34ed15159

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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

File details

Details for the file dpp_py-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dpp_py-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 17e659bb0cf601dde2ab6caaf675f44d826503ec0cdc5762925e98fe5c036a56
MD5 af6343b29fa107aaf0111c8e96812503
BLAKE2b-256 268f11f22f4bc7c89d9f24553c46fa75fe5579309de5cfb0f23f8f43e730027f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpp_py-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on Dil4rd/dpp

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