Skip to main content

psdparse

Pure C++17 PSD (Photoshop) reader/writer library, with pybind11-based Python bindings.

  • Lazy I/O: PSD pixel data is not copied into memory at parse time. Only the structural metadata (a few hundred KB even for large files) is read upfront; layer pixels are paged in on demand via mmap or stream callbacks.
  • Round-trip save: load(p) -> save(q) produces a byte-identical PSD file.
  • Edit & save: add / delete / reorder / duplicate layers (folder-aware moves), copy layers between files, replace layer & mask pixels, edit parameters / names / masks / fill opacity, edit layer-effect (lfx2) values, and edit text layers (body text, per-run style, rich-text run/paragraph rebuild, placement & text box, kept in step with the document-wide Txt2 block so the edit actually reaches Photoshop), or build a PSD from scratch — all with byte-exact re-serialization of the parts you touch (unedited layers stay byte-identical).
  • Python wrapper: import psdparsePSDFile.load(path) / layer_image(i) / merged_image() / save(path) plus the editing API.

The library was extracted from the psdfile kirikiri plugin in 2026. psdfile now consumes this library as a submodule.

Architecture (quick read)

See docs/ARCHITECTURE.md for full details.

IteratorBase (psdbase.h, pure virtual — parser only sees this)
├── MemoryReader   (psdparse.h)  ... mmap / contiguous buffer
└── StreamReader   (psdparse.h)  ... arbitrary seekable stream
    └── Source (pure virtual; subclass per backend)
        ├── IStreamSource              ... std::istream
        └── (your custom Source)       ... e.g. a host app's stream class

WriterBase (psdwrite.h, pure virtual — symmetric to IteratorBase)
└── FileWriter (FILE*)

psd::PSDFile::load(const char *path) mmaps a local file. loadFromStream(std::istream&) / loadFromReader(IteratorBase&) accept arbitrary I/O. save(const char *path) writes the loaded data back as PSD.

All public path arguments are UTF-8 (char *). On Win32, conversion to UTF-16 happens internally via psd::utf8ToWide (inline in psdbase.h).

Install (Python)

pip install psdparse          # once published to PyPI

Build from source — needs only a C++17 compiler + CMake 3.16+, no vcpkg:

pip install .                 # or:  pip wheel . -w dist

zlib is taken from the system if present, otherwise fetched from source by CMake (FetchContent), so no package manager is required. Packaging uses scikit-build-core; cross-platform wheels are built in CI (.github/workflows/wheels.yml, cibuildwheel).

Build (C++ library / CLI)

Requires CMake 3.16+ and a C++17 compiler. vcpkg is no longer needed.

# C++ library + CLI (static CRT)
cmake --preset x64-windows
cmake --build --preset x64-windows --config Release

# C++ library + Python module (dynamic CRT, matches CPython)
cmake --preset x64-windows-python
cmake --build --preset x64-windows-python --config Release

Makefile is a thin wrapper:

make PRESET=x64-windows prebuild build
make PRESET=x64-windows-python prebuild build

Build artifacts:

  • build/x64-windows/psdparse/Release/psdparse_cli.exe
  • build/x64-windows-python/python/Release/psdparse.cp312-win_amd64.pyd

Only dependency: zlib (system, or auto-fetched from source).

Python API

import psdparse

p = psdparse.PSDFile()
p.load(r"path/to/file.psd")   # mmap-backed

print(p.header.width, p.header.height, len(p.layers))
for layer in p.layers:
    print(layer.name_unicode, layer.blend_mode.name, layer.opacity)

bgra = p.merged_image()                # bytes, BGRA, 4*W*H
layer_bgra = p.layer_image(0, "masked") # bytes, BGRA, 4*w*h

p.save(r"out.psd")              # byte-identical round-trip

Editing (8-bit RGB), re-serialized on save — unedited layers stay byte-identical:

p.layers[0].opacity = 128                       # parameters
p.layers[0].name_unicode = "背景"               # rename
p.delete_layer(3); p.move_layer(1, 4)           # structure
p.set_layer_pixels(0, bgra_bytes, w, h)         # replace pixels
p.set_layer_mask_pixels(0, gray, 0, 0, w, h)    # mask pixels + geometry
p.set_effects(0, {"masterFXSwitch": False})     # layer-effect values
p.set_text(2, "新しいテキスト")                 # text content
p.save(r"edited.psd")

q = psdparse.PSDFile()                           # or build one from scratch
q.create_blank(1024, 768)
q.add_layer("bg", 0, 0, bgra_bytes, 1024, 768)
q.add_layer("line", 0, 0, bgra_bytes, 1024, 768)
q.add_folder("group", 1, 1)                      # wrap layers[1:2] in a group
q.save(r"new.psd")

Full API reference: docs/PYTHON_API.md.

Rich text, folder-aware moves and text placement are bound too:

p.set_rich_text(2, "赤\r青", [{"length": 2, "color": (1, 0, 0)},
                             {"length": 2, "color": (0, 0, 1), "font": "Arial"}])
p.set_justification(2, 2)              # center every paragraph
p.set_run_style(2, 0, font="Times New Roman")
p.move_text_layer(2, 40, -15)          # transform + layer/mask rect
p.set_text_bounds(2, 0, 0, 300, 200)   # flow box (paragraph text)

p.move_layer_sibling(i, up=True)       # whole folders move as one block
start, count = p.group_span(i)

PSD feature coverage

What psdparse can and cannot read and edit, at a glance: docs/SUPPORT.md (対応状況マトリクス).

Tests

Tests live under tests/ and use pytest. The small synthesized fixtures are committed under tests/data/ (masktest.psd, maskparams.psd, labsample.psd, graysample.psd, duosample.psd, textboxsample.psd, textmask.psd — force-added past the *.psd ignore rule). The larger real-world samples (fontsample.psd, config.psd, artwork PSDs, Adobe's Layer Comps.psd) are not committed; drop them into tests/data/ or the repo root and the tests that need them stop skipping.

# after building the Python module (pip install . / preset x64-windows-python):
python -m pytest -v

Examples (composite / variations / sprite extraction)

psdparse gives you the pieces (per-layer pixels, position, opacity, masks) but does not composite or re-render — the Python imaging ecosystem does that better. examples/ shows the recipes:

  • composite.py — composite layers with Pillow (position + opacity + mask, normal blend), and optionally write the result back as the PSD's stored preview via set_merged_image.
  • variations.py — enumerate tachie/expression combinations by treating layer folders as mutually-exclusive option slots.
  • extract_layers.py — export per-layer PNGs + a manifest, with alpha edge extension (bleed) so sprites stay clean under rotation/scaling.

See examples/README.md. On the sample tachie PSDs (all normal blend) composite.py matches Photoshop's stored composite to ~0.1 mean level difference.

tools/psd_export.py

python tools/psd_export.py input.psd [--out-dir DIR] [--mode masked|image|mask]

Outputs layers.json (full layer metadata), merged.png (composite), and per-layer PNGs.

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psdparse-0.12.0.tar.gz (179.3 kB view details)

Uploaded Source

Built Distributions

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

psdparse-0.12.0-cp314-cp314t-win_amd64.whl (344.1 kB view details)

Uploaded CPython 3.14tWindows x86-64

psdparse-0.12.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (396.5 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

psdparse-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl (319.6 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

psdparse-0.12.0-cp314-cp314t-macosx_10_15_x86_64.whl (353.0 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

psdparse-0.12.0-cp314-cp314-win_amd64.whl (336.7 kB view details)

Uploaded CPython 3.14Windows x86-64

psdparse-0.12.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (395.0 kB view details)

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

psdparse-0.12.0-cp314-cp314-macosx_11_0_arm64.whl (303.7 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

psdparse-0.12.0-cp314-cp314-macosx_10_15_x86_64.whl (342.4 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

psdparse-0.12.0-cp313-cp313t-win_amd64.whl (334.7 kB view details)

Uploaded CPython 3.13tWindows x86-64

psdparse-0.12.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (396.8 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

psdparse-0.12.0-cp313-cp313t-macosx_11_0_arm64.whl (319.5 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

psdparse-0.12.0-cp313-cp313t-macosx_10_13_x86_64.whl (353.0 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

psdparse-0.12.0-cp313-cp313-win_amd64.whl (326.6 kB view details)

Uploaded CPython 3.13Windows x86-64

psdparse-0.12.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (394.6 kB view details)

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

psdparse-0.12.0-cp313-cp313-macosx_11_0_arm64.whl (303.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

psdparse-0.12.0-cp313-cp313-macosx_10_13_x86_64.whl (342.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

psdparse-0.12.0-cp312-cp312-win_amd64.whl (326.6 kB view details)

Uploaded CPython 3.12Windows x86-64

psdparse-0.12.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (394.6 kB view details)

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

psdparse-0.12.0-cp312-cp312-macosx_11_0_arm64.whl (302.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

psdparse-0.12.0-cp312-cp312-macosx_10_13_x86_64.whl (342.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

psdparse-0.12.0-cp311-cp311-win_amd64.whl (323.8 kB view details)

Uploaded CPython 3.11Windows x86-64

psdparse-0.12.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (389.7 kB view details)

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

psdparse-0.12.0-cp311-cp311-macosx_11_0_arm64.whl (301.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

psdparse-0.12.0-cp311-cp311-macosx_10_13_x86_64.whl (336.5 kB view details)

Uploaded CPython 3.11macOS 10.13+ x86-64

psdparse-0.12.0-cp310-cp310-win_amd64.whl (322.8 kB view details)

Uploaded CPython 3.10Windows x86-64

psdparse-0.12.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (387.9 kB view details)

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

psdparse-0.12.0-cp310-cp310-macosx_11_0_arm64.whl (300.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

psdparse-0.12.0-cp310-cp310-macosx_10_13_x86_64.whl (335.1 kB view details)

Uploaded CPython 3.10macOS 10.13+ x86-64

psdparse-0.12.0-cp39-cp39-win_amd64.whl (322.7 kB view details)

Uploaded CPython 3.9Windows x86-64

psdparse-0.12.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (388.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

psdparse-0.12.0-cp39-cp39-macosx_11_0_arm64.whl (300.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

psdparse-0.12.0-cp39-cp39-macosx_10_13_x86_64.whl (335.2 kB view details)

Uploaded CPython 3.9macOS 10.13+ x86-64

File details

Details for the file psdparse-0.12.0.tar.gz.

File metadata

  • Download URL: psdparse-0.12.0.tar.gz
  • Upload date:
  • Size: 179.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0.tar.gz
Algorithm Hash digest
SHA256 bc0783b47fa88d1ee76fa2dfffccf8d5610daf4594fc4e168a670c8d0e42a44d
MD5 0f8837c5fa0d8757d14488379584bcd6
BLAKE2b-256 9b8bd6553b2534f8d36b347f856e9fd04022a3b2d57e71e93028f875b6cb86ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0.tar.gz:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 344.1 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 252a5cb22100f8f8bd67f333120b5daef65c9efa90504be21b106da1712d8d98
MD5 95e9e703cdb972d31d3d00729ed62766
BLAKE2b-256 29f1d8c3bbae75cc5d541dfbadcf6d36c3ac5c88a99bf9dbda8510d98a8b37b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314t-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 00ed1d1417e53dba9a2702abfe563ea1b0e60b247a6ed1c3a3af07e47e276310
MD5 6fe603bca01da0ed34e2945f519267ef
BLAKE2b-256 0955a93974ea928005cb2df80ffd9cf8074bf95f35ab61fdbeef88e648dd73e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab3bf81caf407a4e8b6b39ecd108bc5bdf880501780b23ee3700f9ebd9e4f377
MD5 d434ba37497cc2526003d8a16fba1c09
BLAKE2b-256 130ce0915bc8bd0c60abc8c4609cd917fa211379fd7c9cfe02f9b259bef57640

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 580faa9732a24670a6ed78fa321f52569e0c18e10daa48fd4457f0bb2cd28a3b
MD5 e17ef8b10d70c1dd13d195918691b69e
BLAKE2b-256 c0029b48a29bb27a5cf2d2dc74377f286e4324e0a75367fffd9972969f71a57c

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 336.7 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 c79445511220164a7007d6381fc173e8b58045e35e44e92058cf15be55d27985
MD5 eb393933681360c85ce53a4fe8fd5359
BLAKE2b-256 777ba94bd1ed56030b492b0f481ccf7dd41f45f354737741f2cf4a03a29a7a6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6aae12957c4721b7ba525ed6f9a4a50d86b0ee8f071d4d7700c5cad37c59306e
MD5 6b89633a4091eb3cca2bfa2ce64b47a2
BLAKE2b-256 4f4517acf7e5dac171cfd0fe704e8e6450d20e458c0c750a88a079396e426fd0

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73405db4a6dec819de7c6af11bb21fc1f2fa69951600c405e9559ccedbdd9ea3
MD5 42f2457cd1e7491d75a0f11f1768cced
BLAKE2b-256 0402576aba04a5000b26020a77fcd476559f9af59b2e2d3d11ad3a3a21179c74

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 a4869e54e070e04dab2dddc06ac673dcd0c7e2383b4b33047c19b44492b06c4f
MD5 aa87523d9988d0b8359a7ac2e3aa46c7
BLAKE2b-256 b7b640e8602244c827fd7cd58393b88ea045c49bd7cd39c405a414c15a5be8ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 334.7 kB
  • Tags: CPython 3.13t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 5b7509714723c369667c71136a3ca0d6ccb33ad2fadd7ce7fb9c336ccc0a038b
MD5 f9a987b74271df28c94cf8de3d269638
BLAKE2b-256 9cf792a0f4e8ffedddb64b4105f5cfc5bec72977dfda76a29cd3ae2414aabf5d

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313t-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ebe322a2ffad9ab5f3fa88749239b08f5136b8128a69f6d0cf26df1c12898950
MD5 03eb7c4014e1e1c6478786797437e037
BLAKE2b-256 71fffd41dd5bd409422752ca902313983fc4c241e38e49d77d4724b76499002c

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5d59d69843b7d7fa02524d452c98a38ccf3f901a40ecdfdfb098f89f9704de2f
MD5 91fd72dcedc7037918606ea267e2d490
BLAKE2b-256 b9e281d4b99344274115b53ec5265779f75c3380a364cf2b86a88b8650ff7210

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313t-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 66fe901d4f9fd9dea30ffa4cae1cbc3a252e9d2c64783f29de1f56ee7e7b5cfe
MD5 668de57fa64b5f18f311238e49475896
BLAKE2b-256 f80a7cf5f9faa407ce2cdc631f81b2767c5f0c8eb430677e2c94e271742bb319

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313t-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 326.6 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3da79209d1a67980ede4e75ac5379c4e254d8c2062860c052b552813e4b1896d
MD5 ffa6cf873c63dbba9055794b6329fb71
BLAKE2b-256 dde526a17a355c35e70f12834329379ec792f7ae41fd15cb1cd956dbf49fa464

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 756d9e0f822bdacfd93fb97c8db76030b853ff20bea30ec47eb274fad904a5ca
MD5 6c46ddbe2721769a2046b46e0081fd24
BLAKE2b-256 d38d8cb546ff581640d2b5f4d9cde787258b80e2500156bbfad09ed688ae0350

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 65203d5c74156863d3ede8e0ce145c94dab2ad8e4f8aa2d4b56fe2870f177537
MD5 08149d64b7f824c76f38e37da24650b5
BLAKE2b-256 f794d61b460da6ad7dabd9ea879c3f77ae58e00fc78babb32d4a98f28c66d471

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0d0f3ffe2ba936f098d5d4e1003d48cf2eced9a0367ba00f7fccbea3bf47de98
MD5 eeb61e9ed5cab0ab94a7f103fc6626e6
BLAKE2b-256 4df9cf1e57c4b4c8b8eecf349dd4f4bdd4c1030df2614911a4b58b3d340d8cf7

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 326.6 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2948f5ad038e432e78366f093055d10cdce860d24c1a7a75b43de2be0777de75
MD5 47f0b071aea20cb9de945e5622ac0eb2
BLAKE2b-256 da9bb0f2ea18815e54092b1d94fbf2adcea2bf844f818e1c69d641cbc0b90f77

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 faafa57c300b07537299c733cda218dd2af3c45c57f783fb9795878383612473
MD5 856462d31f3afd317c88ea2c78ebf756
BLAKE2b-256 fd2ad6419baad0583369bb2507fa310ab1aa62ebf914c49b6af7a06574f78a3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1e1b52f2fcb5e120478afd6b377b62159ccaf572e9f2e15d7a70624e6668a2fa
MD5 e021dd30dacf1c77135a269d06998f5c
BLAKE2b-256 bbe8284af62e0b380ffda93d1dc058e2b56f3e739a2d24949eeb65bc7b3ef31c

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8c77c7d0bf52069a83dc3a4457c2326f6cd8d29c1e694018dc26aa0cf5b4ad27
MD5 eb9007576d5d6f25e8a6c5289f047a4c
BLAKE2b-256 60ec066c907387d926724522d32c1864b3e57169bac17bfd033fca3cfd526bd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 323.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7adc2e93bfd52d448ae431e0263e31f6fbcc29248ee6079d57c8b40e8573deed
MD5 8634687e6870ee4b416b95502d30efa2
BLAKE2b-256 58451ec66a2ab59ec43acbbaa640084ad560a60173a61f975ee4d3885bdc3153

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e2cb65085b1f4fca6a02a312b4af13f7bee42216549ecad3d91a445d7a4881ae
MD5 38d6b3140f28338262bcc90b279ec1ad
BLAKE2b-256 4cdfda556a1718556c85f82fd3682c3330af34cad04a3f4e5cd07b2f6192a860

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ce1f339819a0720c7339e47ce000fef3e143cdfe0c27d2f1acb37fdbf73ebf11
MD5 91117694bba05727f9eb266dcf521b0a
BLAKE2b-256 8d57db8bc35d298934627bdf85e6efdb65690d24158130265b68f3717082e721

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp311-cp311-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp311-cp311-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4671cc8e6093677c2fd45582cad76f1855613a4e96d34582ffd41356c583f757
MD5 5f29f0f854d4b50b1296b2122f650242
BLAKE2b-256 40050e3ff7080663e79d4a1dc59fd53525e60d994dcb8a3956b592959ac2faeb

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp311-cp311-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 322.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ae0f5c5fb62d0721620e771489c189e9185cf8d8d736a195b20d3c1f74226f31
MD5 22fa185821d9ea10b9ac3ad1f265fe76
BLAKE2b-256 12a8b1df41026ff54225c468c6ac593d4dd42364de13d28a7af3d1646aa1685e

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2524c56eb65f9d30a5bd4e69bb21c9a4eca7b6a86a44e36880e66f9b4cc82c2b
MD5 05b845a9e9caea72417932e75f5d3cd6
BLAKE2b-256 4f3fd1420316219ee726f0ec8ed847328f2d8a77443dfefb2c5260d21ba28cb8

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b725e9f6621492f8bcf2d120d2e8da5551403e0f5c49ead28d04a84e136c9102
MD5 034ce14bb559d6e7ec869555d260c500
BLAKE2b-256 07109c4ee94de98d3a43639723971a29d7a3b443292b235f414d81beb8d7d591

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp310-cp310-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp310-cp310-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f18cd4c924806cb6d2c470e847a6ff3a2fde703607d477ebcd23ab3e4a74ff5a
MD5 bc77080e6446cf62e57b1a988a610e44
BLAKE2b-256 e2092feaf6fb2a831c7f5c9b0b6e6d3c6bdffa3b5c6c014fe289af6767887bed

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp310-cp310-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: psdparse-0.12.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 322.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for psdparse-0.12.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f68b3fd6948a720e394630a2b5ee520f51921927d828613340dc21aaa7926536
MD5 1ac54830befecc5a7bb49c7005f36842
BLAKE2b-256 84b1b91c754842fc283db65086a80801a6b31f74ce87a7ffa14c2bf4d7a07e93

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp39-cp39-win_amd64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 498c277b1cbfe1b66da57ce8e3fc47e95e7bd30c15c43419ed1a501b8b700bc2
MD5 9f469d93345bec175c4d5af6ca1cd289
BLAKE2b-256 b6dca920b6e264cd495e661cbe84698b8db7f9b75bd5a41b921d51505af8665f

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aba292847379fca0b0dc784647421246bc58799fb5817779376ba8b6523ac038
MD5 33776b573d27e53ace2c6b44ce9d90cf
BLAKE2b-256 2a0d37930e088e9c5d064d790d895dd7e5064afc2e4fba694aea3260edcbb8ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

File details

Details for the file psdparse-0.12.0-cp39-cp39-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for psdparse-0.12.0-cp39-cp39-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 857b73f44ca59effe5e2e9e865ff09313f007675d7148e1749623d0b9881a503
MD5 e0c7bf160afb8b781538deca2fbfd316
BLAKE2b-256 0305df2f0e25e17952ef04c4e366a743a14f187a18348a16a2dcbbf89b9e2f01

See more details on using hashes here.

Provenance

The following attestation bundles were made for psdparse-0.12.0-cp39-cp39-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on wamsoft/psdparse

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

Release history Release notifications | RSS feed

This release

0.12.0 This release

33 files

0.11.0

33 files

0.10.0

33 files

0.9.0

33 files

0.8.1

33 files

0.8.0

33 files

0.7.0

33 files

0.6.0

33 files

0.5.0

33 files

0.4.0

33 files

0.3.0

33 files

0.2.2

33 files

0.2.1

33 files

0.2.0

33 files

0.1.1

33 files

0.1.0

21 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page