I'm trying to make a tool for examination of launch file structure and to visualize a tree of included launch files (python).
The following code, where ent is IncludeLaunchDescription object, should output a path to the included launch file, but instead it returns a string that refers to Python object pointer, e.g.<launch.substitutions.path_join_substitution.PathJoinSubstitution object at 0x74b241481780>
if isinstance(ent, IncludeLaunchDescription):
print(isinstance(ent.launch_description_source.location, str))
print(ent.launch_description_source.location)
ACTUAL output:
True
<launch.substitutions.path_join_substitution.PathJoinSubstitution object at 0x74b241481780>
EXPECTED output:
True
/home/user/ws/share/...
This should be fixed to enable error reporting for individual launch files included from other launch files. Now it is impossible to automatically determine which launch file has defined a problematic action.
I'm using PAL robotics scripts to build launch files. The function that includes a launch file is:
Also, it looks like IncludeLaunchDescription convert Substitutions into a string <launch.substitutions.path_join_substitution.PathJoinSubstitution object at ...>:
Bug report
Steps to reproduce issue
I'm trying to make a tool for examination of launch file structure and to visualize a tree of included launch files (python).
The following code, where ent is IncludeLaunchDescription object, should output a path to the included launch file, but instead it returns a string that refers to Python object pointer, e.g.
<launch.substitutions.path_join_substitution.PathJoinSubstitution object at 0x74b241481780>
ACTUAL output:
EXPECTED output:
This should be fixed to enable error reporting for individual launch files included from other launch files. Now it is impossible to automatically determine which launch file has defined a problematic action.
I'm using PAL robotics scripts to build launch files. The function that includes a launch file is:
Also, it looks like IncludeLaunchDescription convert Substitutions into a string
<launch.substitutions.path_join_substitution.PathJoinSubstitution object at ...>
:The output: