[core|python] More intuitive and straightforward control design.
This release aims to make it easier and more intuitive to implement custom robot controllers. It also gets rid of custom file extensions for configuration files for clarity.
New features
- [core/python] Enable direct inheritence of Python controllers from AbstractController.
Improvements
- [core] Do not throw exception when calling addCollisionBodies with empty list and no geometry model.
- [core/python] Add getters for controller's robot model and sensors data.
- [core/python] Support engine init using callback only. Using single init method with default None args.
- [python] Replace dedicated '.hdf'/'.config' extensions by '_hardware.toml'/'_options.toml' for clarity.
- [python/robot] Enable to "fix" (aka override) relative mesh paths is URDF using 'mesh_path'.
- [python/simulator] Move progress bar management at simulator level instead of controller. No controller by default.
Bug fixes
- [core] Fix initialization of engine without controller.
- [python/controller] Fix initialization throwing exception if OK.
- [python/simulator] Fix 'build' method not fully compatible with derived classes overloading 'init'.
- [python/simulator] Fix infinite recursive loop at exist if simulator constructor fails.
Miscellaneous
- [misc] Disable compilation LTO since it is not really improving anything.