Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rospack depends on rosdep #63

Closed
mikepurvis opened this issue Jul 5, 2016 · 5 comments
Closed

rospack depends on rosdep #63

mikepurvis opened this issue Jul 5, 2016 · 5 comments
Labels

Comments

@mikepurvis
Copy link
Member

There's some discussion here: #5 (comment)

And I can't actually find any instances of rosdep being needed by this code: https://github.com/ros/rospack/search?q=rosdep&type=Code

Is the dependency completely vestigial at this point? If so, can it be removed?

Our deployed robots are not development platforms; rosdep should not be necessary as a runtime dependency of ROS; we'd like to eliminate having to install and initialize it.

@dirk-thomas
Copy link
Member

Some verbs of rospack call the rosdep Python API (https://github.com/ros/rospack/search?utf8=%E2%9C%93&q=rosdep2&type=Code). So it can not be removed as a dependency.

Btw. you might not want to trust the GitHub search. It sometimes provides you only with incomplete results. E.g. in this case it didn't return you the cases where rosdep2 was found (while you searched for rosdep it assumes you want "full-word-results only").

@mikepurvis
Copy link
Member Author

Oh blah, I thought I did check for rosdep2, but I was looking at other repos and must have gotten confused. Anyway, looks like the immediate affected methods are isSysPackage and cpp_exports, and then computeDepsInternal/computeDeps.

At a conceptual level, I can see rospack needing to be able to distinguish between catkin deps and system deps, but this still feels like a strange dependency to me, especially when it comes up at runtime— what is it that roslaunch and rosrun are doing which ultimately comes back as a complaint from rosdep about being uninitialized?

@dirk-thomas
Copy link
Member

dirk-thomas commented Jul 5, 2016

I don't know what exactly you are invoking. I don't know of anything in roslaunch which requires rosdep. E.g. I can run roslaunch roscpp_tutorials talker_listener.launch without having initialized rosdep. Please provide more information to narrow down which part of your cases uses rosdep.

@mikepurvis
Copy link
Member Author

Ah.. hmm. You're right that it isn't required for a trivial invocation. We see it on our platforms and in buildroots running unit tests. I will reopen the ticket when I get a concrete MWE for where I think there's a wrongful rosdep dependency.

@mikepurvis
Copy link
Member Author

Just to follow up here, it's an issue with plugin discovery. Similar report here:

moveit/moveit_ros#154

The underlying issue is with rospkg.get_depends_on and is being tracked in ros-infrastructure/rospkg#103.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants