The ROS PMC meeting for this week was on Tuesday. The notes from the meeting are available at ROS PMC weekly meeting agenda
ROS PMC Business
- Project Leader Elections
Regular Business
Buildfarm update
The buildfarm update is a weekly check-in on the status of the ROS 2 buildfarm. We track new issues and regressions to ensure the stability of the project.
Issues
rmw_connextddssecure tests failing: failed to create DDS participant — connext team is already investigating; triggered by the newly enabled ARM jobs causing a license issue.- Compiler warning in
test_buffer.cpp: potential buffer overflow /stringop-overflownote during vector resize — appeared after a recentrosidlupdate. [@nvcyc] will take a look.
Priorities
- PTAL Buildfarm Issues Triage Sheet (15 open issues)
- The Buildfarmer Dashboard (beta) is nearly complete — [@miguelgonrod] is requesting UX feedback. Leave comments in the Zulip thread.
Waffle note-taker
Waffle is a weekly meeting where maintainers triage incoming issues and pull requests that haven’t been otherwise acted upon. One person per week is assigned to be the “waffle note-taker” to both take notes in the meeting to keep the meeting as efficient as possible.
- Jul 2, 2026 - [@andrew_symington]
- Jul 9, 2026 - [@andrew_symington]
- Jul 16, 2026 - [@andrew_symington]
[@mjcarroll] will share the waffle generator script with [@andrew_symington] after the meeting so it is available ahead of Thursday’s waffle session.
Rosdistro assignments
Rosdistro is a weekly assignment to monitor incoming issues and pull requests in GitHub - ros/rosdistro: This repo maintains a lists of repositories for each ROS distribution. Two people per week are assigned to be the rosdistro maintainers.
- Jun 30, 2026 – Jul 7, 2026 - [@christophebedard] + [@mjcarroll]
- Outgoing rosdistro items pending
- Jul 7, 2026 – Jul 14, 2026 - [@wjwwood] + [@ahcorde]
- Jul 14, 2026 – Jul 21, 2026 - [@skye.galaxy] + [@sloretz]
Release Management
Release Management tracks the status of upcoming releases, patches, and syncs across the active ROS distributions.
- [@christophebedard] (Humble)
- No updates
- [@yadunund] (Rolling)
- [@mjcarroll] to post about the rolling strategy on Discourse before a formal PMC vote
- [@marcogg] (Jazzy)
- [@cottsay] (Kilted)
- Last Sync: New packages for Kilted Kaiju 2026-06-17
- [@sloretz] (Lyrical)
- Working through regressions: a new
behavior_tree_cpprelease appears to break packages due to a CMake macros issue (notbehavior_tree_cpp’s fault). Sync is on hold while the root cause is resolved; a revert is a fallback option.
- Working through regressions: a new
Working Group Updates
- Client Library Working Group ([@alsora])
- Last Meeting: Jul 10, 2026
- Next Meeting: Jul 24, 2026
- [@jmachowinski] raised two PRs in
rosidl_typesupport_fastrtpsthat trade longer compile time for better runtime serialization performance (via inlining). Impact is limited to packages with deeply nested messages. Consensus: likely acceptable, pending benchmarks. - [@skye.galaxy] has a PR open to fix a double-remove on component manager destruction and is following up on deprecating the experimental events executor.
- Accelerated Memory Transport Working Group ([@ahcorde])
- Last Meeting: Jul 8, 2026
- Next Meeting: Jul 22, 2026
- [@ahcorde] will reschedule the next meeting via Zulip.
- ROSGraph Working Group ([@emersonknapp])
- Last Meeting: Jul 7, 2026
- Next Meeting: Jul 21, 2026
- Lyrical Release Working Group ([@sloretz])
- Retrospective finished. [@sloretz] will present high-level recommendations to the PMC next week (Jul 21). Working Group Notes
Agenda
-
[@mjcarroll] Project Leader Elections & Role Restructuring
- No nominations were received for ROS Project Leader by the July 13 deadline. [@mjcarroll] opened a broader discussion on restructuring the role:
- Context: The project lead role was historically a full-time paid position. Since [@clalancette]'s departure that is no longer the case. The current shape of the role needs to evolve.
- Key challenges identified:
- The “technical backstop” function (unscoped, high-pressure firefighting) is the most time-consuming and intimidating aspect.
- Being forbidden from Waffle note-taking and Rosdistro duties was suggested ([@sloretz]) as a near-term load-reduction measure.
- The role is effectively variable in effort - it can easily expand to 40%+ of working time.
- Proposed direction: Break the role into tightly-scoped, titled sub-roles, e.g.:
- Secretary / Parliamentarian - agenda management, minutes, tracking formal decisions (suggested by [@Katherine_Scott]).
- Triage Lead - owning and improving the Waffle / buildfarm triage process.
- Rosdistro Lead - process improvement for distribution management.
- Security Officer (recursive acronym: ROS Officer of Security) - focal point for security-impacting PRs.
- Incentive discussion: Non-monetary incentives (e.g., OSR membership for the lead’s employer, ROSCon travel, a
ros-project-lead@osrGmail account and Claude subscription) were discussed as ways to make the role more appealing. - Next steps: [@mjcarroll] will complete a Project Leader handbook/guide by Friday and share it with the PMC and OSR leadership.
-
[@sloretz] Revisiting “OMG IDL” as the Canonical ROS Message Representation
- Background: During the Crystal era, the canonical representation of ROS messages was changed from ROS IDL to OMG IDL. In practice the community has continued to use ROS IDL exclusively for authoring messages. The change surfaces as a user-visible issue:
get_fields_and_field_types()on generated Python classes returns OMG IDL syntax, not ROS IDL syntax. - Options considered:
- Easy: Add a new method returning ROS IDL names/types; leave existing API alone. Backportable.
- Medium: Change
get_fields_and_field_types()to return ROS IDL; fixrqt_topic. Not backportable. - Gigantic: Flip
rosidl_adapterto use ROS IDL as the canonical representation throughout. Huge effort, not backportable.
- Outcome: [@sloretz] recommends the Easy option. The contributor on ros2/rosidl_python#262 has already updated the PR to expose both representations via an optional parameter. [@sloretz] will approve this PR if there are no objections.
- Broader discussion: [@MiguelCompany] noted that certain features (annotations: Keys, Optional; field size boundaries) can only be expressed in OMG IDL, making a full reversal costly. [@andrew_symington] raised the idea of using Protobuf or FlatBuffers as upstream language-binding providers to reduce long-term maintenance burden. [@jmachowinski] noted that Protobuf is not DDS-aware. See also the existing RMW REP from the Accelerated Memory Transport WG for related serialization design work.
- Background: During the Crystal era, the canonical representation of ROS messages was changed from ROS IDL to OMG IDL. In practice the community has continued to use ROS IDL exclusively for authoring messages. The change surfaces as a user-visible issue:
-
[@sloretz] ROS PMC Scripts Repository
- [@sloretz] proposed creating a dedicated
ros2/pmc-scriptsrepository (Apache-licensed) to house PMC tooling such as the waffle generator script, buildfarm threshold scripts, etc. — currently scattered across personal repos androsdistro. - Consensus: General agreement. Rosdistro-specific scripts should stay in
rosdistro. - Next steps: This requires a formal PMC vote. [@sloretz] will send a vote request for next week. [@mjcarroll] will create the repository under the assumption it will pass.
- [@sloretz] proposed creating a dedicated
-
[@andrew_symington] Bazel Build for ROS (Update)
- [@andrew_symington] shared that
ros2/ros_up_to_perception(the Bazel build for ROS up to the perception stack) is close to going green:- Mac builds are failing only due to an idiosyncratic interaction between the Bazel Darwin sandbox and
mimick’s monkey-patching of C functions (indefinite hang). A potential fix viadylib’sINTERPOSEmechanism is under investigation.
- Mac builds are failing only due to an idiosyncratic interaction between the Bazel Darwin sandbox and
- With a warmed cache: ~12–15 min build times on single-core workers.
- Milestone: ROS nodes can now be statically compiled to 4.7 MB portable binaries (hermetic build with type supports and middleware linked in).
- Targeting Lyrical June 8 release. A Bazel Working Group will be set up once the initial green build is achieved; [@andrew_symington] intends to present at ROSCon and BazelCon.
- [@nvcyc] (NVIDIA) expressed interest in the working group.
- [@andrew_symington] shared that