-
Notifications
You must be signed in to change notification settings - Fork 48
Open
Description
If a python package is installed in an underlay workspace, rosmon will find its nodes before considering source paths in overlay workspaces.
This is caused by this logic:
rosmon/rosmon_core/src/package_registry.cpp
Lines 99 to 116 in cd4611e
| // Try catkin libexec & catkin share first | |
| for(const auto& workspace : g_catkin_workspaces) | |
| { | |
| fs::path workspacePath(workspace); | |
| fs::path execPath = workspacePath / "lib" / package / name; | |
| if(fs::exists(execPath) && access(execPath.c_str(), X_OK) == 0) | |
| return execPath.string(); | |
| std::string sharePath = getExecutableInPath(workspacePath / "share" / package, name); | |
| if(!sharePath.empty()) | |
| return sharePath; | |
| } | |
| // Crawl package directory for an appropriate executable | |
| std::string packageDir = PackageRegistry::getPath(package); | |
| if(!packageDir.empty()) | |
| return getExecutableInPath(packageDir, name); |
roslaunch will correctly find the source path in the overlay workspace - so we will need to adapt the logic to however roslaunch is doing it.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels