ros2-rmw — Open Items
Aggregate of ros2-rmw.en.md, generated by website/_tools/gen_open_items.py.
No new content: every entry appears there as an item with its evidence.
Service graph and names by node
Status: partial — graph checks rmw_get_service_names_and_types (ros2 service list -t) and the service servers per node (ros2 node info). Without a test: rmw_count_services, rmw_count_clients, publishers, subscribers and clients per node, no_demangle and rmw_qos_profile_check_compatible.
rmw_get_serialized_message_size
Status: partial — the walk is implemented and structurally checked. What is missing is the behavioural check “the returned value really is ≥ the length rmw_serialize writes”; that needs the rosidl introspection type supports and hence a ROS 2 host. Tracked as its own item below.
rmw_get_serialized_message_size — bound check on a ROS 2 host
Status: open — no test case holds rmw_get_serialized_message_size for a real message against the length rmw_serialize writes. That needs a ROS 2 host; the case belongs beside the existing rclcpp e2e tests in crates/rmw-zerodds-shim/rmw_c/.
RMW integration (rmw_serialization_support_init, rmw_take_dynamic_message[_with_info])
Status: partial — the interface table and the RMW wiring are implemented. dynamic_data_serialize always writes @final, little-endian, XCDR1 (PLAIN_CDR1), like the static introspection codec in rmw_zerodds.c; the interface passes no writer or QoS context. long double on 32-bit ARM and PowerPC (double-double) is missing; own item.
RMW integration — long double on 32-bit ARM and PowerPC
Status: open — crates/rmw-zerodds-shim/src/dynamic.rs bridges long double only for the x86-64 80-bit extended and the aarch64 binary128 storage form (Float128::{to,from}_x87_padded_bytes, {to,from}_le_bytes); on 32-bit ARM and for PowerPC’s double-double long double it answers RCUTILS_RET_UNSUPPORTED.
ros2-rmw — offene Punkte
Aggregat aus ros2-rmw.md, erzeugt von website/_tools/gen_open_items.py.
Kein eigener Inhalt: jedes Item steht dort mit seinem Beleg.
Service-Graph und Namen pro Node
Status: partial — graph prüft rmw_get_service_names_and_types (ros2 service list -t) und die Service-Server je Node (ros2 node info). Ohne Test: rmw_count_services, rmw_count_clients, Publisher, Subscriber und Clients je Node, no_demangle und rmw_qos_profile_check_compatible.
rmw_get_serialized_message_size
Status: partial — der Walk ist implementiert und strukturell geprüft. Was fehlt, ist die Verhaltensprüfung „der zurückgegebene Wert ist tatsächlich ≥ der Länge, die rmw_serialize schreibt”; die braucht die rosidl-Introspection-Typesupports und damit einen ROS-2-Host. Rest als eigenes Item unten geführt.
rmw_get_serialized_message_size — Schranken-Nachweis auf einem ROS-2-Host
Status: open — es gibt keinen Testfall, der für eine reale Nachricht rmw_get_serialized_message_size gegen die von rmw_serialize geschriebene Länge hält. Voraussetzung ist ein ROS-2-Host; der Fall gehört neben die vorhandenen rclcpp-e2e-Tests in crates/rmw-zerodds-shim/rmw_c/.
RMW-Integration (rmw_serialization_support_init, rmw_take_dynamic_message[_with_info])
Status: partial — Interface-Tabelle und RMW-Anbindung sind umgesetzt. dynamic_data_serialize schreibt immer @final, Little-Endian, XCDR1 (PLAIN_CDR1), wie der statische Introspection-Codec in rmw_zerodds.c; die Schnittstelle übergibt keinen Writer- oder QoS-Kontext. Es fehlt long double auf 32-Bit-ARM und PowerPC (Double-Double); eigenes Item.
RMW-Integration — long double auf 32-Bit-ARM und PowerPC
Status: open — crates/rmw-zerodds-shim/src/dynamic.rs brückt long double nur für die x86-64-80-Bit-Extended- und die aarch64-binary128-Speicherform (Float128::{to,from}_x87_padded_bytes, {to,from}_le_bytes); auf 32-Bit-ARM und für PowerPCs Double-Double-long double antwortet es mit RCUTILS_RET_UNSUPPORTED.