Conversation
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
| param_arguments = cast(List[str], ros_specific_arguments['params']) | ||
| for param_file_path in self.__expanded_parameter_files: | ||
| param_arguments.append('__params:={}'.format(param_file_path)) | ||
| ros_specific_arguments['params'] = self.__expanded_parameter_files |
There was a problem hiding this comment.
IIUC, -f flag only accepts one parameter file, and ros_specific_arguments['params'] (and self.__expanded_parameter_files) is a list.
And the limitation we talked in #59 (comment) isn't true.
Thought substitutions are usually performed to Text (and they should to please the type annotations), we were using LocalSubstitutions that were performed to List[str] or anything else (e.g.: ros_specific_arguments['params']).
See https://github.com/ros2/launch/blob/79975bf453af17fbc2848412d264dbcead623792/launch/launch/substitutions/local_substitution.py#L54.
There was a problem hiding this comment.
Hmm, a LocalSubstitution can evaluate to anything, that's true -- despite the fact we've type-annotated it as Text. But that's why I think we've been performing substitutions by indexing ros_specific_arguments['params'], and why I simply removed __params:= and prepended -f above.
There was a problem hiding this comment.
Sorry, I read the patch badly. I missed that we were doing ros_specific_arguments['params'][i] in the local substitution and not ros_specific_arguments['params'].
Signed-off-by: Michel Hidalgo <michel@ekumenlabs.com>
This pull requests adapts
launch_rosto the changes introduced by ros2/rcl#495.