Repository navigation
v0.6.1 - Feature-complete pre-1.0 release
This release brings pyvoro2 to a feature-complete pre-1.0 stage: the main functionality originally planned for the project is now in place, with further work focused on testing, refinement, and stabilization ahead of 1.0.
Public powerfit workflow
pyvoro2.powerfit now provides a full public workflow, including reusable pair-constraint resolution, low-level fitting, realized-boundary matching, self-consistent active-set refinement, infeasibility witnesses, and report-friendly outputs for downstream analysis.
Planar 2D support
pyvoro2 now includes a pyvoro2.planar namespace for 2D workflows, with Box / RectangularCell, compute, locate, ghost_cells, tessellation diagnostics, normalization helpers, and optional matplotlib plotting. Powerfit is now available in both 2D and 3D.
Robustness and diagnostics
This release also strengthens robustness and observability with:
- explicit diagnostics for realized-but-unaccounted pairs
- structured candidate/active-graph connectivity diagnostics
- improved disconnected-component gauge handling
- explicit
weight_shift=support for weight-to-radii conversion - active-set path diagnostics, making it easier to distinguish transient optimization behavior from final results
Documentation and release tooling
Documentation and project tooling have also been improved. Example notebooks now live in notebooks/, docs consume generated notebook pages, and the repository includes tooling for notebook export/checking, README sync, distribution-content checks, and local publishability validation via tools/release_check.py.
A convenience extra, pyvoro2[all], is available for contributors who want the full optional stack.
Notes
- The top-level API remains the 3D public surface; planar 2D support lives under
pyvoro2.planar. - Current planar scope covers
BoxandRectangularCell; generic planarPeriodicCellremains intentionally deferred. - Existing
r_min=usage is still supported, butweight_shift=is now the preferred explicit gauge control for weight-to-radii conversion. pyvoro2remains beta / pre-1.0 for now; this release is intended as a feature-complete milestone prior to a stable1.0.pyvoro2-authored code is released under LGPLv3+. Vendored third-party code remains under its own licenses.
See the changelog for the full detailed history.