What's Changed Here
- Cherry-picked the hybrid compilation fix (missing include) by @YoshuaNava #2483
What's Changed in 4.2.1
GTSAM 4.2.1 is a patch release on top of 4.2 focused on maintenance fixes, improved Python packaging, and release workflow updates.
Highlights
- Fixed several
ISAM2issues and added a regression test to ensure marginal-factor updates do not grow the graph unexpectedly. - Improved
Pose2Python support by adding Jacobians for component extraction. - Updated package metadata so downstream users correctly pick up required dependencies.
- Backported Python wheel release automation to the
4.2maintenance line, including:- production wheel workflow
- Python
3.11through3.14build coverage - separate macOS
arm64andx86_64wheel jobs - NumPy pinned to
<2.0.0for compatibility with the vendoredpybind11stack
- Improved compatibility with modern Boost and current CMake behavior in the release build pipeline.
- Fixed a missing include in
testLinearEqualityso the fullchecktarget passes cleanly on current toolchains.
Notable Changes Since 4.2
Core library and tests:
ISAM2bugfixes- regression test for marginal-factor graph growth
Pose2component Jacobians exposed in PythonPose2accessor behavior restored to the4.2API shape
Packaging and release engineering:
- version bump to
4.2.1 - updated
package.xmldependency metadata - backported Python wheel build scripts and release workflow
- Boost detection adjusted for newer environments while keeping
Boost.Filesystemlinked - wheel bootstrap updated to build the required Boost components
- NumPy compatibility capped below
2.0.0
Compatibility Notes
- Python wheels are intended for Python
3.11to3.14. - macOS wheels are now produced per architecture rather than labeled as
universal2. - NumPy is constrained to
<2.0.0in this release line.
Full Changelog: 4.2.1...4.2.2