Skip to main content

Surface Chamfering for Robust Tetrahedral Meshing

CI

delmesher turns a triangulated input surface into a high-quality tetrahedral mesh of its interior, and is robust to the inputs that defeat classical meshers — in particular faces that meet at sharp/acute angles and faces with arbitrarily low-quality (even near-degenerate) triangulations.

An input polyhedral surface whose faces meet at acute angles and carry a low-quality triangulation (left); the chamfered surface with the acute angles removed (mid-left); the volume meshed into tetrahedra with all face angles above 14° (mid-right); and the final mesh, made exactly conformal to the input by allowing a few tetrahedra with smaller angles (right).

This is the reference implementation of the paper:

Surface chamfering for robust tetrahedral meshing. Lorenzo Diazzi, Jiacheng Dai, Daniele Panozzo, and Marco Attene. ACM Transactions on Graphics 45, 4 (SIGGRAPH 2026), Article 146. doi:10.1145/3811395 · paper (PDF)

Overview

Robust tetrahedral meshing usually forces a trade-off. Boundary-conforming methods reproduce the input surface exactly but tend to choke on sharp features and bad triangles; boundary-approximating methods are robust but no longer match the input. This work takes a hybrid route that keeps robustness while modifying the input only in a tightly controlled way. The pipeline has three stages:

  1. Chamfering — the input surface is locally and minimally modified to remove the acute angles between faces that are the main obstacle to robust, well-shaped meshing.
  2. Delaunay refinement — the volume bounded by the chamfered surface is tetrahedralized into well-shaped elements, with a guaranteed lower bound on the face angles (> 14°).
  3. Enriched CDT — exact conformance to the original input surface is restored, introducing a few lower-quality tetrahedra only where strictly necessary.

Every geometric decision is taken with exact predicates, so the pipeline is numerically robust regardless of how degenerate the input is.

Building

Requirements

  • CMake ≥ 3.10
  • A C++20 compiler — tested with GCC, Clang/AppleClang and MSVC 2019+
  • Network access on the first configure: dependencies are fetched automatically (SIMDe on ARM, Catch2 for the tests)

Build

git clone https://github.com/MarcoAttene/DelOptim
cd DelOptim
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release

This produces the delmesher executable (build/delmesher on Linux/macOS, build/Release/delmesher.exe on Windows).

Build in Release. A build without NDEBUG keeps the internal assertions enabled and is several times slower; use -DCMAKE_BUILD_TYPE=Release for any real run.

CMake options

Option Default Description
CMAKE_BUILD_TYPE (unset) Set to Release for production runs (see above).
DELMESHER_BUILD_TESTS ON Build the Catch2 test suite (fetches Catch2). Set OFF to build offline / skip tests.
LGPL ON Build the variant covered solely by the LGPL (default). Set OFF to enable the USE_MAROTS_METHOD code path.
DELMESHER_TEST_MAX_VERTICES 2000 Refinement cap (-m) applied to each test run; empty string for unbounded test runs.

On x86, AVX2 is enabled by default; for older CPUs flip ENABLE_AVX2 / ENABLE_SSE2 at the top of CMakeLists.txt. On ARM (e.g. Apple Silicon) those x86 SIMD intrinsics are transparently emulated on NEON through SIMDe.

Running

Run with no arguments to print the full list of options:

./build/delmesher

Process the bundled example model and write the angle-bounded tetrahedral mesh:

# chamfer -> Delaunay refinement; write the well-shaped output (out_mesh.tet)
./build/delmesher -a -z -v input_models/boeing_part.off

A full run refines until convergence and can take a few minutes; pass -m N to stop after N inserted vertices (the test suite uses -m 2000). The program prints Execution correctly COMPLETED. and returns 0 on success.

Command-line options

Flag Argument Effect
(none) run the full pipeline: chamfer → Delaunay refinement → enriched CDT
-a skip the final enriched CDT phase; the Delaunay-refined output is angle-bounded (min face angle > 14°) but its constrained faces are not conformal to the input
-c compute the minimum local feature size (LFS) of the input triangulation
-d enable sliver removal during Delaunay refinement
-e int ignore input constraints whose LFS is below 10⁻ᵉ × the bounding-box diagonal (larger e ⇒ output closer to a plain CDT of the input)
-m int stop Delaunay refinement after this many inserted vertices
-h print angle histograms
-l logging mode: append a row to delOpt_log.csv
-v verbose output

Output flags (each writes into the current directory):

Flag Needs Output file Type
-b <input>_rebuilt.off surface
-u chamfered_plc.off surface
-w DR_interface.off surface
-x DR_mesh.tet volume
-y -a constrainedFaces.off surface
-z -a out_mesh.tet volume

Python bindings

delmesher ships nanobind Python bindings that drive the exact same pipeline as the CLI, but take and return NumPy arrays instead of OFF / .tet files.

Install

pip install .            # builds the extension via scikit-build-core

The build is self-contained (CMake + a C++20 compiler; nanobind and, on ARM, SIMDe are fetched automatically). The package follows the standard scikit-build-core layout, so pip wheel . / python -m build produce wheels ready to upload to PyPI.

Quick start

import delmesher

# vertices: (n, 3) float64;  triangles: (m, 3) integer indices
vertices, triangles = delmesher.read_off("input_models/boeing_part.off")

result = delmesher.tetrahedralize(vertices, triangles, max_vertices=2000)

result.vertices    # (V, 3) float64  -- final output mesh
result.tetrahedra  # (T, 4) uint32   -- indices into result.vertices
delmesher.write_tet("out_mesh.tet", result.vertices, result.tetrahedra)

The notebook examples/delmesher_demo.ipynb walks through the whole pipeline and visualizes every output with PyVista (pip install ".[notebook]").

Options

Every keyword argument of tetrahedralize maps to a CLI flag:

Keyword Default CLI flag Effect
enriched_cdt True -a ⇒ False run the final enriched-CDT phase (exact conformance); False stops after Delaunay refinement
sliver_removal False -d enable sliver removal during refinement
lfs_exponent None -e ignore constraints with LFS below 10⁻ᵉ × bbox diagonal
max_vertices None -m stop refinement after this many inserted vertices
compute_lfs False -c compute the input's minimum LFS (see result.min_lfs)
verbose False -v print progress to stdout

The returned Result exposes every mesh the CLI can write, as NumPy arrays: vertices/tetrahedra (the primary output — enriched CDT, or the Delaunay-refined mesh when enriched_cdt=False), dr_vertices/dr_tetrahedra (-x), cdt_vertices/cdt_tetrahedra (-z), chamfered_vertices/ chamfered_faces (-u) and dr_interface_vertices/dr_interface_faces (-w), plus the scalars input_is_manifold, input_has_interior and min_lfs.

Each call runs the pipeline in an isolated child process, so results are reproducible regardless of call history and invalid input raises a Python exception instead of terminating the interpreter.

Python tests

tests/python/ mirrors the C++ suite (it sweeps every option on every model in input_models/) and additionally checks that the bindings reproduce the CLI's .tet output bit-for-bit. The helper script builds everything into a virtual environment under build/venv and runs the suite:

scripts/build_python_venv.sh

Testing

The Catch2 suite in tests/ runs delmesher on every model in input_models/, switching on each accepted command-line flag one at a time, and checks that the binary exits with code 0:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release
ctest --test-dir build -C Release --output-on-failure

Refinement is capped (DELMESHER_TEST_MAX_VERTICES, default 2000) so the suite stays fast while still exercising every phase; configure with -DDELMESHER_TEST_MAX_VERTICES="" for unbounded runs, or -DDELMESHER_BUILD_TESTS=OFF to skip the tests. Continuous integration builds and runs the suite on Linux (x86-64), macOS (Apple Silicon) and Windows (x86-64), in both Debug and Release, on every push.

Citation

If you use this code in your research, please cite:

@article{diazzi2026chamfering,
  author    = {Diazzi, Lorenzo and Dai, Jiacheng and Panozzo, Daniele and Attene, Marco},
  title     = {Surface Chamfering for Robust Tetrahedral Meshing},
  journal   = {ACM Transactions on Graphics},
  year      = {2026},
  volume    = {45},
  number    = {4},
  articleno = {146},
  month     = jul,
  publisher = {Association for Computing Machinery},
  doi       = {10.1145/3811395},
  url       = {https://doi.org/10.1145/3811395}
}

License

This program is free software, released under the GNU Lesser General Public License (LGPL), version 3 or (at your option) any later version. It is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See lgpl.txt and https://www.gnu.org/licenses/lgpl.txt for the full terms.

Copyright © 2019–2026 IMATI-GE / CNR and the authors. By default the build is covered solely by the LGPL; configure with -DLGPL=OFF to enable the USE_MAROTS_METHOD code path.

Metadata

Release files for delmesher 1.0.1

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

Source distribution (sdist)

Source distribution for delmesher 1.0.1
File Size Uploaded Provenance Actions
delmesher-1.0.1.tar.gz 9.1 MB With provenance Details for delmesher-1.0.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for delmesher 1.0.1
File Actions
delmesher-1.0.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for delmesher-1.0.1-cp313-cp313-win_amd64.whl
delmesher-1.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for delmesher-1.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
delmesher-1.0.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for delmesher-1.0.1-cp313-cp313-macosx_11_0_arm64.whl
delmesher-1.0.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for delmesher-1.0.1-cp312-cp312-win_amd64.whl
delmesher-1.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for delmesher-1.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
delmesher-1.0.1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for delmesher-1.0.1-cp312-cp312-macosx_11_0_arm64.whl
delmesher-1.0.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for delmesher-1.0.1-cp311-cp311-win_amd64.whl
delmesher-1.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for delmesher-1.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
delmesher-1.0.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for delmesher-1.0.1-cp311-cp311-macosx_11_0_arm64.whl
delmesher-1.0.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for delmesher-1.0.1-cp310-cp310-win_amd64.whl
delmesher-1.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for delmesher-1.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
delmesher-1.0.1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for delmesher-1.0.1-cp310-cp310-macosx_11_0_arm64.whl
delmesher-1.0.1-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details for delmesher-1.0.1-cp39-cp39-win_amd64.whl
delmesher-1.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for delmesher-1.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
delmesher-1.0.1-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details for delmesher-1.0.1-cp39-cp39-macosx_11_0_arm64.whl

Total release size: 15.2 MB

Release files / delmesher-1.0.1.tar.gz

Download URL delmesher-1.0.1.tar.gz
Size 9.1 MB
Tags Source
SHA-256 checksum
How to use checksums
28c6f24ae72087c7b6db6ef6860664cdadc8092db6516f69d98fe0eb1eef1eba
BLAKE2b-256 checksum
How to use checksums
4b88d381666f790cb0b9d9a00378c85089c78e24f8a0012e2ddf9555e778ac1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp313-cp313-win_amd64.whl

Download URL delmesher-1.0.1-cp313-cp313-win_amd64.whl
Size 385.2 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
586b658fcaf4e587a149c7cc6493594ecaa1aa4ad45c65ce23fe68456d815322
BLAKE2b-256 checksum
How to use checksums
cb9593d195b486907f9a6e7a172975d0256b73e1548589cd95d2a18818103ff7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL delmesher-1.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 425.5 kB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
767fe18545d112d3296bde18b2398a7717b3c88e78dac299fb1e63743f38d6f5
BLAKE2b-256 checksum
How to use checksums
560bfe2c60162847f6804f23a698acc5c68198f1f208f15b2998be3617a2f8eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL delmesher-1.0.1-cp313-cp313-macosx_11_0_arm64.whl
Size 418.7 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1c2f9d4f8e981cc397f3905ce088c4d44c89c52a71e6a5b4e37d299fa1b9540e
BLAKE2b-256 checksum
How to use checksums
aeac611df47fcb0657aea4ad6319ee7f72a1fea8053214da4ebc5e475158729f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp312-cp312-win_amd64.whl

Download URL delmesher-1.0.1-cp312-cp312-win_amd64.whl
Size 385.3 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
3c61f5e46635582bbfe6755c0a6018e665c858790a971ceeb39868d396432396
BLAKE2b-256 checksum
How to use checksums
003d34dc9ae525ab23c21fce29c83ef6e3f55693ef930ad71bf861e0e2226359
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL delmesher-1.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 425.5 kB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d219e37882ee12a181e2f8e33766482f96747958d22ae8ff70fc31068b098552
BLAKE2b-256 checksum
How to use checksums
5cd13bae2da9adf700e562c074e09c23db9e85a7f1fd1d2140f172986d954353
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp312-cp312-macosx_11_0_arm64.whl

Download URL delmesher-1.0.1-cp312-cp312-macosx_11_0_arm64.whl
Size 418.8 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f230aae22239f38bc10cdd9f24cb7711a010f8d1c7b93c7ff350bead19a1ef2a
BLAKE2b-256 checksum
How to use checksums
41d87648f16ba7a94ed8179a42d64f17a2ebd2704bb4c4ec81b91d02c16242ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp311-cp311-win_amd64.whl

Download URL delmesher-1.0.1-cp311-cp311-win_amd64.whl
Size 386.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
83c687abd31f08ec76560900bf0fa3a126e825a2b3abc8778361ac0046fc90e6
BLAKE2b-256 checksum
How to use checksums
73eb657046855a165811e003e39635a48d2ac9bcead45ba583531c6005e5d7c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL delmesher-1.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 426.5 kB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0c4f9ca6771d60bdbe863ec484598eba60bf1d4c63e33909bb6e0ffbdaef1e97
BLAKE2b-256 checksum
How to use checksums
f655228179bdb4636bb87837ba804add37b11f88b3b5355bf8a6c69ad41cc30d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL delmesher-1.0.1-cp311-cp311-macosx_11_0_arm64.whl
Size 419.8 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
aaea9cac2c2ab112ffb8f7383ef4842c7235861d4f019293e73f14138a2b3cc2
BLAKE2b-256 checksum
How to use checksums
c1884e32f7d09d4c0145dab250a8932bd0619f6553d4e67b28d6250518f5320e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp310-cp310-win_amd64.whl

Download URL delmesher-1.0.1-cp310-cp310-win_amd64.whl
Size 386.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
bda0d6cd8a0b22b6314e70093b828fe7676a95152061980dace9cf733b0e55e0
BLAKE2b-256 checksum
How to use checksums
2888f79dec8f4444f7dc0d0b0a043ceee0c405ae042068c4d6758834e2bf2f7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL delmesher-1.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 426.8 kB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c700c5c207e9044e1d264d4da8c35f10c1b16e89cd4d26bc13e3baac3718f835
BLAKE2b-256 checksum
How to use checksums
17d872faa464ae817a109fc7b65f9c1d59c7df02379fa9450e040de085be7942
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp310-cp310-macosx_11_0_arm64.whl

Download URL delmesher-1.0.1-cp310-cp310-macosx_11_0_arm64.whl
Size 419.9 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
652ce62bc582776e628654338f15fb4169516c02687313a74af3c95ad5d381f3
BLAKE2b-256 checksum
How to use checksums
7fd9eb08cf902956cec03900ea96b0bd66acb1d0bce56df04a340d60cd9bcf00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp39-cp39-win_amd64.whl

Download URL delmesher-1.0.1-cp39-cp39-win_amd64.whl
Size 386.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
f8af497e50b96979695777715db7ffed4f6e1dcffe38da61115f148df0ae3286
BLAKE2b-256 checksum
How to use checksums
f27412177e0194ccc2a38d86a88771517512b5b205e2ecf98a93a33cbe0b38c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL delmesher-1.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 427.0 kB
Tags CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e3f16b1522f0a87804c4e20c807432afa11f76f4a69b612aec516a258e70f68c
BLAKE2b-256 checksum
How to use checksums
9634f4faee2cec197ed483c1154f1600f47f98d16ce8bd4ae775ce1a3ac4b63c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Release files / delmesher-1.0.1-cp39-cp39-macosx_11_0_arm64.whl

Download URL delmesher-1.0.1-cp39-cp39-macosx_11_0_arm64.whl
Size 420.1 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ef88c047b98aa587ced958d3db3a9ca4387bd128542aadadaf137e219ba723b3
BLAKE2b-256 checksum
How to use checksums
9e93e2bb76acdbc565e0101e86841dffbdce7a2ed91011e0898aadb800334bcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

Security for delmesher 1.0.1

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.

Full provenance

All 16 files in this release have been uploaded with provenance metadata.

Select from 16 files

Attestation for delmesher-1.0.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.

Transparency log

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.

Release history Release notifications | RSS feed

This release

1.0.1 This release

16 release files Full provenance

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