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

catkin_pip_requirements improvements #142

Open
asmodehn opened this issue Aug 5, 2017 · 1 comment
Open

catkin_pip_requirements improvements #142

asmodehn opened this issue Aug 5, 2017 · 1 comment

Comments

@asmodehn
Copy link
Member

asmodehn commented Aug 5, 2017

Currently catkin_pip requirements does a pip install -r requirements.txt like so : https://github.com/pyros-dev/catkin_pip/blob/devel/cmake/catkin-pip-requirements.cmake.in#L32

However this can be a bad match for CMake since, pip install actually takes care of the equivalent of :

  • creating a workspace (wstool)
  • checking out all your source dependencies at the correct revision (vcstools/git/svn/...)
  • retrieve all binary dependencies at the correct version (> rosdep/deb/rpm/...)
    which is not traditionally related with CMake ( if we except the more recent ExternalProject feature )

This can lead to confusions, like "why do we need to modify the source tree? Everything should be in the build tree to be able to clean up."

Maybe this feature will be better integrated with another ROS tool ?

@asmodehn
Copy link
Member Author

Note we need to be extra careful with this, since any downloaded source needs to be importable from the original project.

Having it in src is an easy way to ensure that. Putting it somewhere else, we need to be careful to :

  • make sure it is importable when sourcing devel, not importable otherwise (especially not from install)
  • not add more into PYTHONPATH
  • not mix it with site-packages since these should be the (maybe editable) package installs
  • be erased when doing a make clean
  • maybe more...

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

No branches or pull requests

1 participant