Skip to content

Conversation

@ijnek
Copy link
Contributor

@ijnek ijnek commented Jun 17, 2025

Description

ros_remaps and ros_namespace are currently stored as launch configurations, but they don't behave like typical launch configurations — they're not declared using DeclareLaunchArgument, and their purpose is more aligned with contextual scoping.

They are better suited to be stored in the local stack (locals()) of the LaunchContext, rather than in the global launch configurations. This distinction aligns better with their use as scoped contextual variables rather than user-defined launch arguments.

This change is related to the discussion in ros2/launch#801 (comment), where a workaround was proposed to distinguish between launch configurations that should be scoped versus those that should propagate globally.

This PR is marked as a draft because I haven't found definitive guidance in launch_ros or ros2/design regarding the intended semantics of the locals and globals stacks within LaunchContext. Based on my understanding, this usage seems appropriate, but I welcome feedback if this assumption is incorrect.

Did you use Generative AI?

No

@SuperJappie08
Copy link
Contributor

SuperJappie08 commented Jun 17, 2025

As mentioned in ros2/launch#801 (Comment), this does (currently) not work with normal group scoping.

@SuperJappie08
Copy link
Contributor

This should probably also effect SetParameter and SetParametersFromFile.

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