Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
Unreleased¶
0.34.1.6 - 2026-04-27 — PyPI README refresh¶
Same wheels as 0.34.1.5; recut so the published wheel's README metadata includes the Windows build badge alongside Linux and macOS on PyPI's project page.
Changed¶
- README badge row includes a Windows build badge (6656815).
0.34.1.5 - 2026-04-27 — Windows x64 wheels debut + Python profile bindings¶
First complete cross-platform PyPI release: Linux, macOS, and Windows wheels for Python 3.9–3.12. Closes the long-running #40 Windows wheels initiative (#58). Also ships a batch of profile-binding contributions from @Joelkang that had been queued in Unreleased.
Added¶
- Windows x64 wheels published to PyPI via the new
wheels-windows.ymlworkflow. Mirrorswheels-{linux,macos}.yml; sources C++ deps from conda-forge via pixi; bundles plugin DLLs viadelvewheel repair --analyze-existing(f9c122d, 3e3a2e4). __init__.pyprepends the package dir andtesseract_robotics_nanobind.libs/toPATHon Windows — required becauseboost::dll's plainLoadLibraryignoresos.add_dll_directory(006ce38).- Cereal polymorphic types re-registered in the
tesseract_serializationbinding TU — MSVC instantiates the cereal registry per-DLL, so upstream's registrations don't reach the consumer.pydwithout re-registration (af88515). - New developer doc
docs/developer/windows-wheels.mdcapturing four Windows wheel packaging gotchas surfaced during the gh-40 diagnosis (fe5ad75). CompositeInstruction.push_backnow accepts aCompositeInstructionin addition to a plainInstruction, enabling nested composites (e.g. raster programs) to be built from Python the same way they are in C++ (#51, 6d17314).- contributed by @Joelkang
- SimplePlanner profiles configurable from Python —
SimplePlannerCompositeProfileplus seven concrete move profiles (FixedSize,FixedSizeAssign,FixedSizeAssignNoIK,LVS,LVSNoIK,LVSAssign,LVSAssignNoIK), withProfileDictionary_addSimplePlannerMoveProfile/…CompositeProfilehelpers for registration (#54, e2bf837). - contributed by @Joelkang
- task_composer planning-node profiles exposed through a new
tesseract_task_composer_planningmodule:ContactCheckProfile,FixStateBoundsProfile,FixStateCollisionProfile,KinematicLimitsCheckProfile,MinLengthProfile,ProfileSwitchProfile, andUpsampleTrajectoryProfile. Heavy TrajOpt-typed members onFixStateCollisionProfile(OSQP settings, SQP params, coeff data) are intentionally skipped — configure those via YAML or C++ (#56, 62cd2cd). - contributed by @Joelkang
ConstantTCPSpeedParameterization(KDL-based, constant TCP-speed time parameterization) bound alongside itsConstantTCPSpeedCompositeProfile(#55, f4f981d).- contributed by @Joelkang
Removed¶
- vcpkg-based
wheels-windows.ymlvariant (workflow_dispatch-only, never green) replaced by the conda-forge / pixi pipeline of the same name (3e3a2e4).
0.34.1.4 - 2026-04-27 [YANKED] — partial cross-platform release¶
Yanked. Linux and macOS wheels published successfully; Windows wheels built and tested but the publish job hit a PyPI Trusted Publisher configuration mismatch and didn't upload. Superseded by 0.34.1.5.
0.34.1.2 - 2026-04-23 — macOS arm64 stability¶
Follow-up to the macOS arm64 debut in 0.34.1.1, resolving a garbage-collection crash that surfaced in fresh virtual environments during motion planning.
Fixed¶
- Dedupe versioned dylibs in the wheel — the actual root cause of the macOS GC crash (#48, 7f53185).
- Pin plugin dylibs on macOS to prevent a garbage-collection crash during motion planning (#48, 590343f).
Changed¶
0.34.1.1 - 2026-04-23 — macOS arm64 wheels debut¶
First PyPI-published macOS arm64 wheels, shipping via a dedicated wheels-macos.yml workflow parallel to the existing Linux x86_64 pipeline. Also introduces a Python trampoline for ConstraintSet, Python 3.9 compatibility for example modules, and installable example scripts.
Added¶
- macOS arm64 wheels published to PyPI via a split, per-platform workflow (d80e689).
- Python trampoline for
ifopt.ConstraintSetso users can subclass it from Python for custom SQP constraints (361c60e). - Examples installable as console scripts (e.g.
tesseract_basic_cartesian_example) via[project.scripts](2c62952). - contributed by @marip8
pixi run build-wheeltask for local wheel builds (e26df2a).
Changed¶
- Non-benchmark tests fail loud instead of being silently skipped (a1d7607).
Fixed¶
- Python 3.9 compatibility for example modules via
from __future__ import annotations(87ce68e).