You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
COMPATIBILITY
Flexiv software package v3.11.3
ADD
Add DRDK_API export macro (export.hpp) to the public headers.
Add type stubs (.pyi) to the flexivdrdk Python package for code completion, signature hints, and type checking in IDEs.
Add argument names to all functions of the flexivdrdk Python package, so arguments can be passed by keyword and signatures show meaningful names instead of arg0, arg1, etc.
CHANGE
Ship DRDK as a self-contained shared library (.so) instead of a static library. All thirdparty dependencies except Flexiv RDK are statically embedded and their symbols hidden, so user applications no longer need to build coal, assimp, and Boost.
Flexiv RDK is now the only dependency built by thirdparty/build_and_install_dependencies.sh, and the only one required by find_package(flexiv_drdk).
Remove the ROS 2 Jazzy build variant, including the DRDK_SUPPORT_ROS2_JAZZY CMake option. The self-contained shared library can be used alongside any ROS 2 distribution.
Depend on Flexiv RDK v1.9.4.
The flexivdrdk Python package now installs the matching flexivrdk package (v1.9.4) as a dependency. Do not install a different version of flexivrdk into the same Python environment.
Rename the compiled module of the flexivdrdk Python package to _flexivdrdk. The package is still imported as flexivdrdk, but code accessing the module directly via flexivdrdk.flexivdrdk needs to be updated.
Rename the keyword argument root_coord of RobotPair.SetForceControlFrame() in Python to root_coords, as in the C++ API.
Remove spdlog from the examples. C++ examples now print messages through the standard output streams, and Python examples use the built-in logging module. spdlog is no longer needed to run the examples.
Document that a robot entering fault state resets its control mode to IDLE and discards all commands sent so far, so RobotPair::SwitchMode() must be called again after the fault is cleared. This also applies to plans executed with continue_exec enabled.
FIX
Fix TypeError raised by flexivdrdk Python functions that take or return flexivrdk types (Mode, RobotStates, etc.), caused by a pybind11 ABI mismatch between the two packages.