Skip to content

Make Eigen an optional dependency - #27

Merged
mtao merged 4 commits into
mainfrom
refactor/remove-eigen
Oct 26, 2026
Merged

mtao merged 4 commits into
mainfrom
refactor/remove-eigen

Conversation

@mtao

@mtao mtao commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

Eigen is no longer a dependency of balsa's libraries.

  • Removed the Eigen overloads from balsa::geometry (get_angle, winding_number, curves/volume, bounding_box, earclipping, simplex volume/circumcenter/point_in_circumcircle, uniformly_sample_simplex, simplicial_complex/boundaries). The zipper overloads remain; Eigen callers can use balsa::eigen::as_zipper / as_eigen from zipper_compat.hpp.
  • balsa/eigen/* headers (incl. zipper_compat.hpp) are still shipped.
  • eigen3 is looked up with required: false and only used by core/tests/eigen (incl. test_zipper_compat), which builds when Eigen is found.
  • test_winding_number ported from Eigen to zipper types.

Tested: full build + 11/11 tests pass.

mtao added 4 commits October 23, 2026 20:03
balsa::geometry is zipper-only: drop the Eigen overloads from
get_angle, winding_number, curves/volume, bounding_box, earclipping,
simplex volume/circumcenter/point_in_circumcircle,
uniformly_sample_simplex and simplicial_complex/boundaries. Eigen
callers can convert via balsa/eigen/zipper_compat.hpp.

balsa/eigen/* headers are still shipped. eigen3 is optional
(required: false) and only used by core/tests/eigen, which builds when
Eigen is found. test_winding_number ported to zipper types.
@mtao
mtao force-pushed the refactor/remove-eigen branch from 58c013f to 54655b5 Compare October 26, 2026 01:56
@mtao
mtao merged commit 54655b5 into main Oct 26, 2026
@mtao
mtao deleted the refactor/remove-eigen branch October 26, 2026 02:04

This branch was successfully deployed

1 active deployment
github-pages — 54655b5b Deployed Oct 26, 2026 by mtao via docs #20
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