Skip to main content

phimaker

Persitent homology of images and (co)kernels.

Overview

Phimaker is a Rust library implementing the algorithm introduced in [1] for computing persistent homology for kernels, images and cokernels. Python bindings are provided via PyO3. The Python package requires Python 3.12 or newer.

See CHANGELOG.md for changes since the last release and API migration notes.

Install via

pip install phimaker

Development environment and source builds

Install Rust through rustup, uv, and Lefthook. A native C linker is also required (for example, the build tools for your operating system).

This checkout currently resolves LoPhat 0.14.0 from ../lophat. Clone LoPhat alongside Phimaker and check out v0.14.0 or a compatible newer revision before building. See the local dependency notes.

Run the following commands from the repository root:

rustup toolchain install stable
rustup toolchain install nightly --component rustfmt
uv python pin 3.12
uv sync --locked --group test
lefthook install

uv creates .venv, installs the development and test tools, and builds the Python extension from source. Python 3.12 or newer is required; pin another supported version if desired. The Git pre-commit hooks run nightly rustfmt, Tombi, and Ruff, and stage their formatting changes. You can also run them manually with lefthook run pre-commit.

Rebuild the extension and its generated type stubs after Rust or docstring changes, then run the Python tests:

uv run --no-sync maturin develop --locked --generate-stubs
uv run --no-sync python -m pytest

Build a distributable wheel into dist/ with:

uv run --no-sync maturin build --locked --release --generate-stubs --out dist

For the Rust library without Python bindings, use:

cargo build --locked --release --no-default-features
cargo test --locked --no-default-features

Persistence diagrams

DiagramEnsemble exposes the diagrams as domain, codomain, image, kernel, cokernel, and relative in both Rust and Python.

Each diagram is a mapping from a generator's birth index to its death index. In Rust, the shared lophat::utils::PersistenceDiagram wraps a HashMap<usize, ExtendedUsize>, with ExtendedUsize::Finite(index) for finite deaths and ExtendedUsize::Infinity for essential classes. Both types are re-exported from phimaker::diagrams. Birth and death indices refer to filtration columns.

In Python, diagrams are dictionaries with integer keys and integer or None values. For example, diagrams.codomain == {0: None, 1: 2} describes an essential class born at index 0 and a class born at index 1 that dies at index 2. Use diagram[birth] to look up a death and diagram.items() to iterate over intervals. The former .paired and .unpaired attributes have been removed.

domain_representatives, codomain_representatives, image_representatives, kernel_representatives, cokernel_representatives, and relative_representatives are optional. Python's sixpack_from_inclusion and sixpack default to get_representatives=False, which leaves all six attributes as None and skips representative extraction and map solving. Pass get_representatives=True to obtain maps from each birth index to the generator indices whose sum over F2 gives a cycle. Keys and supports use the diagram coordinates. Domain, codomain, image, cokernel, and relative cycles have maximum support index equal to the feature's birth. Kernel cycles contain only domain generators with indices strictly less than their kernel birth; these cycles are boundaries in the codomain throughout their kernel intervals. Cokernel representatives are codomain cycles interpreted modulo codomain boundaries and domain cycles. A finite representative becomes zero in that quotient at its death, without necessarily becoming a codomain boundary. Relative representatives contain only generators outside the domain. Their codomain boundary lies in the domain, so they are cycles in the quotient even when they are not codomain cycles. Their classes are interpreted modulo codomain boundaries and domain chains. For example, when the domain consists of both vertices of an edge, the edge alone represents an essential relative H1 class:

from phimaker import sixpack_from_inclusion

diagrams = sixpack_from_inclusion(
	[[], [], [0, 1]],
	[0, 0, 1],
	[0, 1],
	get_representatives=True,
)
assert diagrams.relative == {2: None}
assert diagrams.relative_representatives == {2: [2]}

Rust stores these as Option<HashMap<usize, Vec<usize>>>; Python exposes dictionaries of lists or None. Each requested map has exactly its diagram's birth keys. A requested empty diagram has Some of an empty map in Rust and {} in Python; when extraction is skipped it still has None.

Rust callers supply get_representatives immediately after the input matrices and map or domain indices in sixpack and sixpack_from_inclusion, or as the argument to all_diagrams. Pass false for diagrams only or true for cycles and maps. Nonempty domain, codomain, image, and relative decompositions must retain V only when requesting representatives; the computation entry points retain these matrices automatically. This flag skips representative extraction, map solving, and their allocations; it does not change which matrices the reductions retain.

For example, an external edge creates a kernel class at index 4, and a domain edge kills it at index 5. Its representative is a domain cycle that bounds in the codomain:

from phimaker import sixpack_from_inclusion

diagrams = sixpack_from_inclusion(
	[[], [], [], [0, 1], [0, 2], [1, 2]],
	[0, 0, 0, 1, 1, 1],
	[1, 2, 5],
	get_representatives=True,
)
assert diagrams.kernel == {4: 5}
assert diagrams.kernel_representatives == {4: [1, 2]}

For a cokernel example, let two parallel edges join the same vertices, with only the second edge in the domain. The codomain loop represents an essential cokernel feature:

diagrams = sixpack_from_inclusion(
	[[], [], [0, 1], [0, 1]],
	[0, 0, 1, 1],
	[0, 1, 3],
	get_representatives=True,
)
assert diagrams.cokernel == {3: None}
assert diagrams.cokernel_representatives == {3: [2, 3]}

Persistence maps

Setting get_representatives=True also computes five maps in the stored cycle bases: kernel_to_domain, domain_to_image, image_to_codomain, domain_to_codomain, and codomain_to_cokernel. Each is Option<HashMap<usize, Vec<usize>>> in Rust and a dictionary or None in Python. All five are None when extraction is skipped.

Each dictionary has exactly its source diagram's birth keys. The value is a sorted list of target births with coefficient one over F2; an empty list denotes zero. A requested map with an empty source is an empty dictionary. For example, a younger vertex included in an edge maps to two codomain features, while both codomain features project to the same cokernel feature:

diagrams = sixpack_from_inclusion(
	[[], [], [0, 1]],
	[0, 0, 1],
	[1],
	get_representatives=True,
)
assert diagrams.kernel_to_domain == {}
assert diagrams.domain_to_image == {1: [1]}
assert diagrams.image_to_codomain == {1: [0, 1]}
assert diagrams.domain_to_codomain == {1: [0, 1]}
assert diagrams.codomain_to_cokernel == {0: [0], 1: [0]}

Coefficients use the stored representative bases and the same indices as the diagrams. Every nonzero coefficient satisfies target_birth <= source_birth < target_death <= source_death, with infinite deaths allowed. At an index, evaluate a map using only source and target intervals alive there. Compose these evaluated maps; ordinary multiplication of complete coefficient tables can retain entries between disjoint intervals. For sixpack, use metadata.times to evaluate at actual filtration times; equal-time cylinder intervals are retained in the returned data.

Maps are computed from the complete diagrams, including intervals of zero duration in actual filtration time. Downstream filtering can restrict the resulting rows and columns. Neither diagrams nor representative dictionaries need to be supplied separately to a map-computation function.

References

[1] Cohen-Steiner, D., Edelsbrunner, H., Harer, J. and Morozov, D., 2009, January. Persistent homology for kernels, images, and cokernels. In Proceedings of the twentieth annual ACM-SIAM symposium on Discrete algorithms (pp. 1011-1020). Society for Industrial and Applied Mathematics.

API documentation

Install the Python documentation dependencies into the project environment, rebuild the extension, and generate the HTML reference:

uv sync --locked --group test --group docs
uv run --no-sync maturin develop --locked --generate-stubs
uv run --no-sync python docs/build.py

Open docs/_build/html/index.html in a browser. Sphinx reads the installed extension's docstrings, so rebuild the extension after changing them. The build script treats warnings as errors. The equivalent Sphinx command is:

uv run --no-sync python -m sphinx -W --keep-going -b html docs docs/_build/html

Run cargo doc --locked --no-default-features --no-deps --open to build and open the Rust API reference at target/doc/phimaker/index.html. The public functions document input assumptions and index coordinates, with runnable Rust examples. Inline /// comments supply Rust documentation, while separate feature-gated #[doc = python_doc!(...)] attributes supply Python docstrings. Shared classes retain Rust comments for rustdoc and rust-analyzer; Python builds strip those comments so only Python usage documentation appears in help(). Use help(phimaker.sixpack_from_inclusion) or help(phimaker.sixpack) after building/installing the extension for Python examples.

The inclusion API takes boundary columns, degrees, and domain column indices. It uses filtration indices only. The general-map API sixpack takes timed complexes and returns mapping-cylinder metadata alongside its diagrams; use that metadata to interpret the returned indices. Inclusion entry points validate index ranges, degree-list length, triangularity, degree lowering, and domain closure, and normalize row supports and domain indices. The boundary must square to zero; that algebraic condition remains a caller precondition.

Rust sixpack_from_inclusion and sixpack borrow their inputs and return Result<_, InclusionError>. The decomposition entry points return the same structured errors. Python exports retain the names sixpack_from_inclusion and sixpack; their wrappers release the GIL during computation and convert structural errors to ValueError. Upstream reduction and serialization panics are not converted to these validation errors.

Boundary supports and domain indices can be in any order, and repeated indices are treated as repeated listings of the same element, not summed modulo two. The Rust library is built as an rlib alongside the Python extension.

For reduced matrices, use all_decompositions or all_decompositions_slow. Their codomain result d_cod retains both R and V in original input generator coordinates. For a finite codomain feature (birth, death), R column death gives its representative cycle; for an essential feature, use V column birth. Both diagram extraction modes read codomain pairs directly in these coordinates. The relative result d_rel retains R and V in local quotient coordinates. Translate local index i to original codomain indices with metadata.dom_first_permutation.inverse_map(i + metadata.sz_domain). Relative finite features use R death columns and essential features use V birth columns. Both reductions preserve the generator order without anti-transposition. Retaining V adds memory use and increases the slow-mode file sizes. Python convenience functions expose representative maps on the returned DiagramEnsemble when called with get_representatives=True.

Tests

Run cargo test --locked for the pure Rust suite. For Python, build the current extension and run pytest as described in tests/README.md. That document records each fixture's intent, including slow-mode serialization regressions and executable documentation examples.

The Cargo dependency uses LoPhat version 0.14.0. Building with python-module also enables lophat/python-module, providing conversion of diagrams to dictionaries and infinite deaths to None.

CI and releases

Every push, pull request, and manual workflow dispatch runs the Rust tests and builds and tests Python wheels on native Linux and Windows x64/ARM64 runners and macOS ARM64. The matrix selects stable CPython versions allowed by requires-python, including supported free-threaded variants where available. Each wheel includes generated type stubs and is installed before pytest runs. DiagramEnsemble and CylinderMetadata are importable from phimaker for typed results.

Publishing a GitHub release runs these checks again and publishes the tested wheels to PyPI and the crate to crates.io. See docs/releasing.md for credentials, platform coverage, and the release procedure.

Metadata

Release files for phimaker 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for phimaker 0.4.0
File Actions
phimaker-0.4.0-cp315-cp315t-win_arm64.whl CPython 3.15 CPython 3.15 free-threading Windows ARM64 Details for phimaker-0.4.0-cp315-cp315t-win_arm64.whl
phimaker-0.4.0-cp315-cp315t-win_amd64.whl CPython 3.15 CPython 3.15 free-threading Windows x86-64 Details for phimaker-0.4.0-cp315-cp315t-win_amd64.whl
phimaker-0.4.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 Details for phimaker-0.4.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
phimaker-0.4.0-cp315-cp315t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ ARM64 Details for phimaker-0.4.0-cp315-cp315t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
phimaker-0.4.0-cp315-cp315t-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64 Details for phimaker-0.4.0-cp315-cp315t-macosx_11_0_arm64.whl
phimaker-0.4.0-cp315-cp315-win_arm64.whl CPython 3.15 CPython 3.15 Windows ARM64 Details for phimaker-0.4.0-cp315-cp315-win_arm64.whl
phimaker-0.4.0-cp315-cp315-win_amd64.whl CPython 3.15 CPython 3.15 Windows x86-64 Details for phimaker-0.4.0-cp315-cp315-win_amd64.whl
phimaker-0.4.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.15 CPython 3.15 Linux glibc 2.17+ x86-64 Details for phimaker-0.4.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
phimaker-0.4.0-cp315-cp315-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.15 CPython 3.15 Linux glibc 2.17+ ARM64 Details for phimaker-0.4.0-cp315-cp315-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
phimaker-0.4.0-cp315-cp315-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 macOS 11.0+ ARM64 Details for phimaker-0.4.0-cp315-cp315-macosx_11_0_arm64.whl
phimaker-0.4.0-cp314-cp314t-win_arm64.whl CPython 3.14 CPython 3.14 free-threading Windows ARM64 Details for phimaker-0.4.0-cp314-cp314t-win_arm64.whl
phimaker-0.4.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details for phimaker-0.4.0-cp314-cp314t-win_amd64.whl
phimaker-0.4.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Details for phimaker-0.4.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
phimaker-0.4.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Details for phimaker-0.4.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
phimaker-0.4.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details for phimaker-0.4.0-cp314-cp314t-macosx_11_0_arm64.whl
phimaker-0.4.0-cp314-cp314-win_arm64.whl CPython 3.14 CPython 3.14 Windows ARM64 Details for phimaker-0.4.0-cp314-cp314-win_arm64.whl
phimaker-0.4.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for phimaker-0.4.0-cp314-cp314-win_amd64.whl
phimaker-0.4.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details for phimaker-0.4.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
phimaker-0.4.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64 Details for phimaker-0.4.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
phimaker-0.4.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for phimaker-0.4.0-cp314-cp314-macosx_11_0_arm64.whl
phimaker-0.4.0-cp313-cp313-win_arm64.whl CPython 3.13 CPython 3.13 Windows ARM64 Details for phimaker-0.4.0-cp313-cp313-win_arm64.whl
phimaker-0.4.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for phimaker-0.4.0-cp313-cp313-win_amd64.whl
phimaker-0.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details for phimaker-0.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
phimaker-0.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details for phimaker-0.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
phimaker-0.4.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for phimaker-0.4.0-cp313-cp313-macosx_11_0_arm64.whl
phimaker-0.4.0-cp312-cp312-win_arm64.whl CPython 3.12 CPython 3.12 Windows ARM64 Details for phimaker-0.4.0-cp312-cp312-win_arm64.whl
phimaker-0.4.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for phimaker-0.4.0-cp312-cp312-win_amd64.whl
phimaker-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details for phimaker-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
phimaker-0.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details for phimaker-0.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
phimaker-0.4.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for phimaker-0.4.0-cp312-cp312-macosx_11_0_arm64.whl

Total release size: 14.6 MB

Release files / phimaker-0.4.0-cp315-cp315t-win_arm64.whl

Download URL phimaker-0.4.0-cp315-cp315t-win_arm64.whl
Size 372.2 kB
Tags CPython 3.15 CPython 3.15 free-threading Windows ARM64
SHA-256 checksum
How to use checksums
1d064b64b1a14a25e30819f1ff9a6b4c0c1fe4562fda6992521429a7f85ae818
BLAKE2b-256 checksum
How to use checksums
76588bfddebb7c429d091392433fa9c3ac72706e43147149cf8b39f76b977c39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315t-win_amd64.whl

Download URL phimaker-0.4.0-cp315-cp315t-win_amd64.whl
Size 387.6 kB
Tags CPython 3.15 CPython 3.15 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
82f3562af2907cf46b42f7c468359a461a48dac89dd05f34bf56c3091c249d99
BLAKE2b-256 checksum
How to use checksums
f6454966195dddf607432b9a83a0877f16c8b158ab4ee3118586ee3c65f88ec3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL phimaker-0.4.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 579.4 kB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
711d072e9adc05e88b03153b1d985aef352dcd2e1e7d988ee75c9af5871d271b
BLAKE2b-256 checksum
How to use checksums
1295a5dd063009e22b38daaea0d981efeb4aaa5d02da0f11f083a2b12906e866
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL phimaker-0.4.0-cp315-cp315t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 569.1 kB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
064cbfed5d805a68781af458306e54f399d2e72ee613607789fbd00795b9b1f1
BLAKE2b-256 checksum
How to use checksums
d00fa0308be80f4f241d446c3abf5bc4373843e2b8b91722f0d01f407f86e2a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315t-macosx_11_0_arm64.whl

Download URL phimaker-0.4.0-cp315-cp315t-macosx_11_0_arm64.whl
Size 518.7 kB
Tags CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7ced1bf06476885f9f7033c993761e61cb21d8dee5bced22358cc5dd65b3e895
BLAKE2b-256 checksum
How to use checksums
6c6939baad95901ac01045f69b9c857c03806204ee07cd81a9dfe59870cad47f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315-win_arm64.whl

Download URL phimaker-0.4.0-cp315-cp315-win_arm64.whl
Size 374.1 kB
Tags CPython 3.15 Windows ARM64
SHA-256 checksum
How to use checksums
d937f90abbb8a302513e4fa99ed5e06f752d7efa1cb09f916e15587f5e46d080
BLAKE2b-256 checksum
How to use checksums
2880fca8af214101206aa6a81da11efae171c1ad382ed632fb4fdb92010c152e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315-win_amd64.whl

Download URL phimaker-0.4.0-cp315-cp315-win_amd64.whl
Size 388.4 kB
Tags CPython 3.15 Windows x86-64
SHA-256 checksum
How to use checksums
51b5aabceaa9a78d2f73b4b3eab986cd8dd198c26716c0c13f8048a392b9f978
BLAKE2b-256 checksum
How to use checksums
429666aed335b8cc9a779b43f1e5491e9d21a39356f88b6c4179f029559c84a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL phimaker-0.4.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 580.1 kB
Tags CPython 3.15 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c5de73f0b2786cb63e9165feb383f143c4fa376c9ef35f88612e8c8113708971
BLAKE2b-256 checksum
How to use checksums
ae02e2d38ea30d0ac6fcd343de4cf6de3f71213a945a69ea780e165889ca01d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL phimaker-0.4.0-cp315-cp315-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 574.4 kB
Tags CPython 3.15 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
b952646ccd19185e4080a6fd4b92ec84d3b5fce6df52bd42efb5fa8a8e66e81d
BLAKE2b-256 checksum
How to use checksums
44e0c2416868db5deea9caa8a9a1dc6285435a19ace4956a06edf9704478975e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp315-cp315-macosx_11_0_arm64.whl

Download URL phimaker-0.4.0-cp315-cp315-macosx_11_0_arm64.whl
Size 522.7 kB
Tags CPython 3.15 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
67055afb0d54d2e9d9ba1cf23755456e7e402d61a389ab643cff01c5c31fd1be
BLAKE2b-256 checksum
How to use checksums
6c488c63eb3d06119c512cf5893faf432d4129ec06347bce892e1154a3483f6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314t-win_arm64.whl

Download URL phimaker-0.4.0-cp314-cp314t-win_arm64.whl
Size 371.7 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows ARM64
SHA-256 checksum
How to use checksums
8f9f7e002d3924d75d10e67fa565d04bf8632a03a79e165907f97beea0a12efa
BLAKE2b-256 checksum
How to use checksums
2c78285f7dd77c5166e903d949619e8fc28491447dd76d3c235716a75d837dd3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314t-win_amd64.whl

Download URL phimaker-0.4.0-cp314-cp314t-win_amd64.whl
Size 386.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
b3b99109d0b7ff1b09be44a3f47201d16939475c9f26e6bfd6eb5f6c12b4fc68
BLAKE2b-256 checksum
How to use checksums
d12a1e2b792c658d760d5a1c443284591a1bfc8ecd092ceba5cc0626949dc7b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL phimaker-0.4.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 578.6 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a84a26d434eb747afbe3ff15f632394a38052ac61c63b5a72e0c8564ab7caebc
BLAKE2b-256 checksum
How to use checksums
dd23577acb63b244395acfeb3a8c0d67a78608eafea85167ea5cfffc34d6998d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL phimaker-0.4.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 570.5 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
337e1c852ca1fb6e11329e62c6ef398fe6be0823f4b8f090ae263ff3d20707c7
BLAKE2b-256 checksum
How to use checksums
7a0c84dcefd1e817572dcaecec24023c1fa0086f6cdddaa4bb9d9ab54281833a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL phimaker-0.4.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 519.5 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
22eebfcfd4ad4e1bc8585368a9a60dbf50fd6eca26760498260fb800c15011a2
BLAKE2b-256 checksum
How to use checksums
6dfe8f560e5a5453d8efdfc100c18d680055fbf731e924b75b1ce4ce9cdfd334
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314-win_arm64.whl

Download URL phimaker-0.4.0-cp314-cp314-win_arm64.whl
Size 373.0 kB
Tags CPython 3.14 Windows ARM64
SHA-256 checksum
How to use checksums
f118d56113b454acb33e92cb1c464704f40c06772f78e9173663482f74a5914a
BLAKE2b-256 checksum
How to use checksums
ba26e90259c80593a06f45aa6b21d763c3977e121b0184b5138c9c4e34834dbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314-win_amd64.whl

Download URL phimaker-0.4.0-cp314-cp314-win_amd64.whl
Size 388.3 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
3fb00a6138164eb26e6da61bc8111b47494ed0ba7c8681fb673d7bae7cee10fa
BLAKE2b-256 checksum
How to use checksums
a6ce08f3e0780b39c127491e82de8b1e3136be954624d877095c15042c77b99d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL phimaker-0.4.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 579.6 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c1d22cceddcbf1764a60a025066a7fee8b6f8e93afd7062b008dd8c559b050df
BLAKE2b-256 checksum
How to use checksums
b2d501db2cd93a16a5815d70d43fa526d053c9d7b567f5ccba2e18401df3704c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL phimaker-0.4.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 575.4 kB
Tags CPython 3.14 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
1a87e29a0e8abb9eb7ec087b29f122a88f13becca6528122234562851de0b488
BLAKE2b-256 checksum
How to use checksums
51eee684c6b2ca7293b180a4b03143d6ad5e85758b8250069d6563287219fd03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL phimaker-0.4.0-cp314-cp314-macosx_11_0_arm64.whl
Size 522.3 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2e4b4e93f48e1dbb389639386788908c19de503bd160ae3a165d8a7ef742f870
BLAKE2b-256 checksum
How to use checksums
9f80915b4131b222a45f4f7dabb2c365d5c1c5c0dd8d7b567ba578d794393c8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp313-cp313-win_arm64.whl

Download URL phimaker-0.4.0-cp313-cp313-win_arm64.whl
Size 373.2 kB
Tags CPython 3.13 Windows ARM64
SHA-256 checksum
How to use checksums
07000086437cd3d34fe0469b7e824f12585d54586a082b6e60b9536cd0fd3416
BLAKE2b-256 checksum
How to use checksums
50804fcf1e3dcd7a54c2ab368ab28e6aa22f85cb8a90bf7b25d4546562e07764
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp313-cp313-win_amd64.whl

Download URL phimaker-0.4.0-cp313-cp313-win_amd64.whl
Size 387.3 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e00a0436124ff5c8fc2aeccf960bb17e2a249c0c01ae488b1be952335b619998
BLAKE2b-256 checksum
How to use checksums
eac4222cb89810ae6517c4e67ee2f0bea19fcbf37b26b1077ea2e1b28e8469c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL phimaker-0.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 580.5 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
e0d561826be6d769f14ddae93e306c909031df4fab5e6fb4baaf9300b0c9d3d1
BLAKE2b-256 checksum
How to use checksums
5707cbd6b15148a44dfa97752a09b036b967c4ceb875cc300cb848693f76f2ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL phimaker-0.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 571.0 kB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
c3a0f3741534d79789ab7b1d8399d3f2c55445f58937820441e9de662153629c
BLAKE2b-256 checksum
How to use checksums
6b820abca093da2b8718d99177b7fe2c2708d2b553b24d5cc8b07769ac511468
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL phimaker-0.4.0-cp313-cp313-macosx_11_0_arm64.whl
Size 520.9 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5c902f1fd4a1cbb56987ea28ea8f5f852c2caf5d3fddf0aab4b194bab124aff8
BLAKE2b-256 checksum
How to use checksums
5de99097279b8480fd91d2b2576a0ed94581ecb7dc0696ba1a69a38aeb82715e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp312-cp312-win_arm64.whl

Download URL phimaker-0.4.0-cp312-cp312-win_arm64.whl
Size 373.9 kB
Tags CPython 3.12 Windows ARM64
SHA-256 checksum
How to use checksums
fbbd120769fa6073a77db9c5690e221802f6d54c72cd3ab11d9755b3ee7e55d2
BLAKE2b-256 checksum
How to use checksums
863e40a4892ffefa34e8e1ba4244224c7da0a2aeb4fc946cebf823b3e917e0b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp312-cp312-win_amd64.whl

Download URL phimaker-0.4.0-cp312-cp312-win_amd64.whl
Size 388.5 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
98a694ad99d14e85510363ccd067c4a72ae1e429f769946af4404791987b0751
BLAKE2b-256 checksum
How to use checksums
49f944e540d0660f5ca92c4ed3ba3faa99edf3760ea9f3b49a4808ffbe21fe88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL phimaker-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 580.0 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
2e458dc2aff42ee64d12a01c99beca07b0c772b2454b8fa72848332741dae983
BLAKE2b-256 checksum
How to use checksums
db5d7e113c43668e0c89861b9f303125838620fc556f557d66fd9d96ec8569b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL phimaker-0.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 572.9 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
d47562d0dee8a0b40819027925d5ffa5dc630ef85e658fe3c3c887c696868cdb
BLAKE2b-256 checksum
How to use checksums
5fdfc75cbe66dff01e6b5af205162692cb904481477662cd4f3181f24e1af7d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / phimaker-0.4.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL phimaker-0.4.0-cp312-cp312-macosx_11_0_arm64.whl
Size 521.2 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ca3200373238ab9ea0f47abf6f98b4c59936ee7008e4a6465dd492360a852f7a
BLAKE2b-256 checksum
How to use checksums
064556b76718155e3745370f9a84c9499d426921d19e3eeb0078d705f6745e7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for phimaker 0.4.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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