Skip to content

v1.2.4

Latest

Choose a tag to compare

@pzhu-flexiv pzhu-flexiv released this 08 Oct 04:01
98c982b

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.