Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[20596] Feature: topic keys with non breaking ABI (humble backport) #23

Merged
merged 2 commits into from
Mar 8, 2024

Conversation

Mario-DL
Copy link
Member

@Mario-DL Mario-DL commented Mar 7, 2024

This PR brings the work from #22 into vulcanexus-humble.

It gave two little conflicts that were addressed with no further problems

  • rmw_fastrtps_cpp/subscription.cpp:
  • rmw_fastrtps_dynamic_cpp/subscription.cpp:

In addition, I include another commit fixing the getKey() method in rmw_fastrtps_shared_cpp since the SerializedData struct seems to have a different structure in humble. But nothing remarkable.

Important
If we port to ROS 2 humble at any time, this PR relies on Fast DDS v2.6.8 because it needs eProsima/Fast-DDS#4308 and eProsima/Fast-DDS#4353

Mario-DL and others added 2 commits March 7, 2024 10:46
* Refs #20164: rmw_fastrtps_shared: prepare api for keys support

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_shared: getKey() implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps* interface methods update for keys support

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_cpp empty implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_dynamic_cpp Message & Service Typesupport construction updates

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_dynamic_cpp type_support_proxy updates implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_dynamic_cpp type_support implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: Move typesupport key vars to rmw_fastrtps_shared_cpp

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: Initialize Typesupport key members in rmw_fastrtps_cpp

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_shared_cpp: add abi_version enum and type support member

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_cpp: adopt abi version v2

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_dynamic_cpp: adopt abi version v2

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_shared_cpp: apply_qos_resource_limits_for_keys() free function

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_cpp: apply qos for keys

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_dynamic_cpp: apply qos for keys

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Review suggestions

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: fix: include checking for the v2 identifier when trying to register the typesupport_introspection. This is useful when builtin types are also built with v2 abi and rmw_fastrtps_cpp is used

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_cpp review 2 suggestion

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Updates according latest message_type_support structure (no initial alignment)

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Compile for Fast CDR 1 only

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Comment typo

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

---------

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
…humble

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
@MiguelCompany
Copy link
Member

the SerializedData struct seems to have a different structure in humble

Yes. This is because of the DynamicTypeSupport feature, which was introduced in Iron

@MiguelCompany MiguelCompany merged commit acd66fd into vulcanexus-humble Mar 8, 2024
1 check passed
@MiguelCompany MiguelCompany deleted the feature/humble/no-abi-break-keys branch March 8, 2024 11:44
Mario-DL added a commit that referenced this pull request Jun 21, 2024
* Refs #20596: Cherry pick Keys Feature from iron

* Refs #20164: rmw_fastrtps_shared: prepare api for keys support

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_shared: getKey() implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps* interface methods update for keys support

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_cpp empty implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_dynamic_cpp Message & Service Typesupport construction updates

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_dynamic_cpp type_support_proxy updates implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: rmw_fastrtps_dynamic_cpp type_support implementation

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: Move typesupport key vars to rmw_fastrtps_shared_cpp

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20164: Initialize Typesupport key members in rmw_fastrtps_cpp

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_shared_cpp: add abi_version enum and type support member

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_cpp: adopt abi version v2

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_dynamic_cpp: adopt abi version v2

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_shared_cpp: apply_qos_resource_limits_for_keys() free function

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_cpp: apply qos for keys

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_dynamic_cpp: apply qos for keys

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Review suggestions

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: fix: include checking for the v2 identifier when trying to register the typesupport_introspection. This is useful when builtin types are also built with v2 abi and rmw_fastrtps_cpp is used

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: rmw_fastrtps_cpp review 2 suggestion

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Updates according latest message_type_support structure (no initial alignment)

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Compile for Fast CDR 1 only

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20310: Comment typo

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

---------

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

* Refs #20596: Adapt rmw_fastrtps_shared_cpp: adapt getKey() method to humble

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>

---------

Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
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.

2 participants