Skip to content

Fix: Silence tl_expected and rmw_qos_profile_t deprecation warnings - #862

Open
fdavulcu wants to merge 1 commit into
v10.0from
fix/tl-expected-and-qos-warnings
Open

Fix: Silence tl_expected and rmw_qos_profile_t deprecation warnings#862
fdavulcu wants to merge 1 commit into
v10.0from
fix/tl-expected-and-qos-warnings

Conversation

@fdavulcu

@fdavulcu fdavulcu commented Aug 19, 2026

Copy link
Copy Markdown

[written by AI]

A fresh moveit_pro build prints deprecation warnings from two sources in this workspace:

  • example_behaviors includes the deprecated tl_expected/expected.hpp wrapper, which ROS Jazzy's tl_expected 1.3.1 flags with a #pragma message on every include. Switched to <tl/expected.hpp> from libexpected-dev, the replacement the deprecation notice recommends. The header ships in the MoveIt Pro runtime image, so this builds against current releases. The package declares the dependency it now consumes directly: <depend>libexpected-dev</depend>, find_package(tl-expected REQUIRED), an explicit tl::expected link, and the ament_export_dependencies entry (the system config exports only the imported target, so ament_target_dependencies cannot carry it).
  • moveit_studio_kinova_pstop_manager uses the rmw_qos_profile_t overloads of create_service/create_client, deprecated in favor of rclcpp::QoS. Switched to rclcpp::ServicesQoS(), which wraps the same profile.

Release notes

None

@coderabbitai

coderabbitai Bot commented Aug 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 44531d99-0069-46f4-a264-a517897f5fbc

📥 Commits

Reviewing files that changed from the base of the PR and between b413cac and e3d9ad7.

📒 Files selected for processing (2)
  • src/example_behaviors/CMakeLists.txt
  • src/example_behaviors/package.xml

Included review availability: 9 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 10 reviews per hour.


📝 Walkthrough

Summary by CodeRabbit

  • Bug Fixes
    • Improved compatibility and build reliability for example behaviors by updating expected-value support.
    • Improved service communication reliability for controller switching and fault-reset operations through standardized quality-of-service settings.
    • Added the required support package so affected examples can be configured and built consistently across supported environments.

Walkthrough

The pull request updates four expected-library include paths, adds the required package dependencies, and replaces the default ROS 2 service QoS profile with rclcpp::ServicesQoS() in the protective-stop manager.

Changes

Expected header updates

Layer / File(s) Summary
Update expected-library includes
src/example_behaviors/include/..., src/example_behaviors/src/..., src/example_behaviors/CMakeLists.txt, src/example_behaviors/package.xml
The example behavior files use tl/expected.hpp. The package discovers, links, exports, and declares the expected-library dependency.

Protective-stop service QoS

Layer / File(s) Summary
Update protective-stop service QoS
src/moveit_pro_kinova_configs/moveit_studio_kinova_pstop_manager/src/protective_stop_manager_node.cpp
The recovery service, controller-switch client, callback-group wiring, and fault-reset client use rclcpp::ServicesQoS().

Suggested reviewers: jwhitleywork

Merge Risk: ⚪ Minimal · up to e3d9a

This PR only updates deprecated API usage and declares the corresponding dependency, with no actionable merge-blocking risk remaining beyond normal checks.

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Description check ✅ Passed The description directly explains the include, dependency, and QoS changes in the pull request.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Human Review Check ✅ Passed The 7-file diff only updates expected headers/dependencies and service QoS wrappers; it adds no auth, CI/infra, launch, public API, or core behavior changes.

Comment @coderabbitai help to get the list of available commands.

coderabbitai[bot]
coderabbitai Bot previously approved these changes Aug 19, 2026
@github-actions

Copy link
Copy Markdown

MoveIt Pro Example WS - Objectives Integration Test Report

Declare libexpected-dev in example_behaviors so the tl/expected.hpp include resolves through find_package(tl-expected) rather than the compiler's default include path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

MoveIt Pro Example WS - Objectives Integration Test Report

@fdavulcu
fdavulcu marked this pull request as ready for review August 19, 2026 15:40
@fdavulcu
fdavulcu requested a review from a team August 19, 2026 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant