Support passing keyword arguments to rosidl CLI extensions#597
Conversation
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
|
@clalancette @sloretz friendly ping |
clalancette
left a comment
There was a problem hiding this comment.
I don't think I have enough context to review this. Two questions that might help clarify things a bit:
- How is this intended to be used in the end? That is, what is a realistic example of something that might get passed through here?
- Do we really have to define our own new string format for the SPECS_PATTERN? Can't we use straight YAML (or XML, or JSON, or....)?
|
@clalancette fair questions.
It really depends on each generator implementation. A realistic example, the one that pushed me to do this, is narrowing down the pool of typesupport implementations to be used when generating CPython extensions and C/C++ typesupport trampolines. Simply looking up the
It is mostly YAML. We could go from |
|
@clalancette @sloretz friendly ping |
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
|
Alright, thanks for the reviews! I'll get this in and release so we can have the Rolling PR job passing for downstream PRs. |
|
@cottsay how do you feel about backporting this (along with ros2/rosidl_typesupport#112 and ros2/rosidl_python#133) to Galactic? It is a feature and it does change the expected extension API but it is hardly likely anyone has used it outside of the core. |
This patch builds on top of #567, adding support for passing keyword arguments for CLI extensions along with their spec. This allow for extension specific configuration.
CI up
rosidl_cli,rosidl_typesupport_c,rosidl_typesupport_cpp, androsidl_generator_py: