Skip to content

v0.4.2 => v0.6.1#4

Merged
IvanChernyshov merged 24 commits into
mainfrom
dev
Mar 17, 2026
Merged

v0.4.2 => v0.6.1#4
IvanChernyshov merged 24 commits into
mainfrom
dev

Conversation

@IvanChernyshov
Copy link
Copy Markdown
Member

This PR brings main from 0.4.2.post1 to 0.6.1.

This merge includes the full accumulated 0.5.x and 0.6.x line:

  • 0.5.0

    • introduced the new pyvoro2.powerfit workflow
    • added reusable pair-constraint resolution, low-level fitting, realized-boundary matching, self-consistent active-set refinement, infeasibility witnesses, and report-friendly plain-Python outputs
  • 0.5.1

    • hardened validation and numerical failure handling
    • added the wheel-overlay development workflow
    • refactored shared input/domain validation logic
  • 0.6.0

    • added the new planar 2D namespace, pyvoro2.planar
    • introduced 2D Box / RectangularCell, compute, locate, ghost_cells, diagnostics, normalization helpers, and optional plotting
    • extended powerfit to work in both 2D and 3D
    • switched pyvoro2-authored code to LGPLv3+
  • 0.6.1

    • focused on powerfit robustness and diagnostics
    • added explicit diagnostics for realized-but-unaccounted pairs
    • added candidate/active-graph connectivity diagnostics
    • improved disconnected-component gauge handling
    • added explicit weight_shift= support for weight-to-radii conversion while keeping r_min= for compatibility
    • added active-set path diagnostics so transient optimization behavior can be inspected separately from the final result

This PR also includes repository/documentation/release-workflow improvements:

  • example notebooks moved to repo-root notebooks/
  • generated notebook pages for docs
  • notebook export/check tooling
  • README/docs sync checks
  • distribution-content and publishability checks
  • pyvoro2[all] convenience extra
  • stricter CI for docs, notebooks, and release readiness

Compatibility / scope notes:

  • the 3D top-level API remains the primary public surface
  • 2D support lives under pyvoro2.planar
  • current planar scope covers Box and RectangularCell; generic planar PeriodicCell remains deferred
  • r_min= is still accepted for backward compatibility, but weight_shift= is now the preferred explicit gauge control
  • starting with 0.6.0, pyvoro2-authored code is released under LGPLv3+; vendored third-party code remains under its own licenses

This PR is intended as the release merge for 0.6.1.

@IvanChernyshov IvanChernyshov merged commit e3c4807 into main Mar 17, 2026
30 checks passed
@IvanChernyshov IvanChernyshov deleted the dev branch March 17, 2026 12:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant