Skip to content

Conversation

@liuXinGangChina
Copy link
Contributor

Description

Fixes compilation errors in system packages for ROS 2 Jazzy. Updates deprecated APIs, adds missing headers, and resolves library compatibility issues.

Changes

1. autoware_default_adapi_universe

  • Issue: Deprecated rmw_qos_profile_services_default API usage
  • Fix: Replaced with AUTOWARE_DEFAULT_SERVICES_QOS_PROFILE() macro from autoware_qos_utils package
  • Files Modified:
    • src/diagnostics.cpp: Added #include <autoware/qos_utils/qos_compatibility.hpp> and updated service client creation
    • package.xml: Added autoware_qos_utils dependency

2. autoware_mrm_handler

  • Status: Deprecated rmw_qos_profile_services_default API usage
  • Fix: Replaced with AUTOWARE_DEFAULT_SERVICES_QOS_PROFILE() macro from autoware_qos_utils package
  • Files Modified:
    • src/mrm_handler/mrm_handler_core.cpp: Added #include <autoware/qos_utils/qos_compatibility.hpp> and updated service client creation
    • package.xml: Added autoware_qos_utils dependency

3. autoware_pipeline_latency_monitor

  • Issue: Lambda callback signature incompatible with ROS 2 Jazzy's create_generic_subscription
  • Fix: Changed callback signature from const std::shared_ptr<rclcpp::SerializedMessage> & to std::shared_ptr<const rclcpp::SerializedMessage>
  • Files Modified:
    • src/pipeline_latency_monitor_node.cpp: Updated lambda callback parameter type

4. autoware_system_monitor

  • Issue: Missing rclcpp/rclcpp.hpp header includes in monitor classes

  • Fix: Added explicit #include <rclcpp/rclcpp.hpp> to all monitor class headers

  • Files Modified:

    • include/system_monitor/hdd_monitor/hdd_monitor.hpp
    • include/system_monitor/mem_monitor/mem_monitor.hpp
    • include/system_monitor/gpu_monitor/gpu_monitor_base.hpp
    • include/system_monitor/voltage_monitor/voltage_monitor.hpp
    • include/system_monitor/ntp_monitor/ntp_monitor.hpp
    • include/system_monitor/net_monitor/net_monitor.hpp
  • Issue: Missing <fstream> header includes

  • Fix: Added #include <fstream> where std::ifstream and std::ofstream are used

  • Files Modified:

    • reader/traffic_reader/traffic_reader_service.cpp
    • test/src/process_monitor/test_process_monitor.cpp

5. autoware_velodyne_monitor

  • Issue: fmt v9 compatibility issue with std::byte causing compilation errors
  • Fix: Removed fmt dependency and replaced fmt::format() with standard string concatenation
  • Files Modified:
    • src/velodyne_monitor.cpp: Removed fmt includes and replaced fmt::format() with std::to_string() + string concatenation
    • CMakeLists.txt: Removed fmt from target_link_libraries

Related links

Parent Issue:

How was this PR tested?

  1. test with docker file produce by pr in autoware --
    ci: add jazzy docker build process in current ci pipeline autoware#6453
  2. use rosdep install dependency packages automatically
    build command
    `colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --symlink-install --packages-select <all-packages-in-autoware_universe/system>

Notes for reviewers

None.

Interface changes

None.

Effects on system behavior

None.

@github-actions
Copy link

github-actions bot commented Nov 12, 2025

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

@liuXinGangChina liuXinGangChina self-assigned this Nov 12, 2025
@liuXinGangChina liuXinGangChina added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Nov 12, 2025
@liuXinGangChina liuXinGangChina moved this from To Triage to In Progress in Software Working Group Nov 12, 2025
@codecov
Copy link

codecov bot commented Nov 13, 2025

Codecov Report

❌ Patch coverage is 0% with 7 lines in your changes missing coverage. Please review.
✅ Project coverage is 18.10%. Comparing base (cdea4c1) to head (2652bf2).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
...e_mrm_handler/src/mrm_handler/mrm_handler_core.cpp 0.00% 3 Missing ⚠️
...ency_monitor/src/pipeline_latency_monitor_node.cpp 0.00% 2 Missing ⚠️
...utoware_default_adapi_universe/src/diagnostics.cpp 0.00% 1 Missing ⚠️
...autoware_velodyne_monitor/src/velodyne_monitor.cpp 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #11626      +/-   ##
==========================================
+ Coverage   17.80%   18.10%   +0.30%     
==========================================
  Files        1746     1757      +11     
  Lines      122013   122384     +371     
  Branches    42794    43279     +485     
==========================================
+ Hits        21723    22158     +435     
- Misses      82076    82444     +368     
+ Partials    18214    17782     -432     
Flag Coverage Δ *Carryforward flag
daily 19.90% <ø> (+<0.01%) ⬆️ Carriedforward from cdea4c1
daily-cuda 17.79% <ø> (+<0.01%) ⬆️ Carriedforward from cdea4c1
differential 10.67% <0.00%> (?)
total-cuda 17.80% <ø> (+<0.01%) ⬆️ Carriedforward from cdea4c1

*This pull request uses carry forward flags. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component:system System design and integration. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant