Our long running ROS 2 release is set to the end of its lifecycle of three years. As we prepare for our new release Iron Irwini , we are preparing to say goodbye to our long-term support (LTS) release Foxy Fitzroy.
So if you’re a package maintainer, get your packages up to date and add the latest releases to rosdistro. Similarly, if you see any major blocking issues, please file a report or preferably submit a quick fix for it.
The final patch release and sync will be in mid-June, meaning that all patches/package updates need to be completed by the first week of June.
I would try my best to get all your work in before the deadline. Feel free to directly tag me or just link the pull request/issue here as a comment to this post!
1 Like
Any chance you could get a backport of these two PRs merged before the final patch?
ros2:rolling
← StefanFabian:master
opened 03:53PM - 16 Sep 22 UTC
As discussed in ros2/rosidl_typesupport#114, this PR adds the generation of type… support getter declarations that is currently missing.
For this, I have also added package-specific visibility control analogous to `rosidl_generator_c`.
Here's an example of the generated `fibonacci__type_support.hpp` from the `action_tutorials_interfaces` package:
```cpp
// generated from rosidl_generator_cpp/resource/idl__type_support.hpp.em
// with input from action_tutorials_interfaces:action/Fibonacci.idl
// generated code does not contain a copyright notice
#ifndef ACTION_TUTORIALS_INTERFACES__ACTION__DETAIL__FIBONACCI__TYPE_SUPPORT_HPP_
#define ACTION_TUTORIALS_INTERFACES__ACTION__DETAIL__FIBONACCI__TYPE_SUPPORT_HPP_
#include "rosidl_typesupport_interface/macros.h"
#include "action_tutorials_interfaces/msg/rosidl_generator_cpp__visibility_control.hpp"
#include "rosidl_typesupport_cpp/action_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_action_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__ACTION_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci
)();
#ifdef __cplusplus
}
#endif
#include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_Goal
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_Result
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_Feedback
)();
#ifdef __cplusplus
}
#endif
#include "rosidl_typesupport_cpp/service_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_service_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__SERVICE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_SendGoal
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_SendGoal_Request
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_SendGoal_Response
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/service_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_service_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__SERVICE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_GetResult
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_GetResult_Request
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_GetResult_Response
)();
#ifdef __cplusplus
}
#endif
// already included above
// #include "rosidl_typesupport_cpp/message_type_support.hpp"
#ifdef __cplusplus
extern "C"
{
#endif
// Forward declare the get type support functions for this type.
ROSIDL_GENERATOR_CPP_PUBLIC_action_tutorials_interfaces
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(
rosidl_typesupport_cpp,
action_tutorials_interfaces,
action,
Fibonacci_FeedbackMessage
)();
#ifdef __cplusplus
}
#endif
#endif // ACTION_TUTORIALS_INTERFACES__ACTION__DETAIL__FIBONACCI__TYPE_SUPPORT_HPP_
```
ros2:rolling
← StefanFabian:rolling
opened 08:23AM - 12 May 23 UTC
Currently, only message type support contains a C interface to dynamically load … the type support from a library.
This PR adds a C interface for services and actions.
New PR since the previous fork was unfortunately deleted and could not be rebased. For discussions see #114 .
They were originally done for foxy so a backport should be possible with little effort.
If you want I can also create the PRs.
3 Likes
Thanks @StefanFabian please do create the PRs, I’ll get them in!
1 Like
Thank you @quarkytale
I’ve created backport PRs:
ros2:foxy
← StefanFabian:foxy
opened 10:11AM - 24 May 23 UTC
Backport of #703 for foxy.
ros2:foxy
← StefanFabian:foxy
opened 10:11AM - 24 May 23 UTC
Backport of #143 for foxy. See #114 for discussion.
Interfaces are declared in … ros2/rosidl#744
2 Likes
Hello,
Do you know if there is anything similar happening for Melodic End-of-Life?
Yes, I’ll be sending out an announcement today.
system
Closed
July 5, 2023, 3:06pm
7
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.