-
Notifications
You must be signed in to change notification settings - Fork 65
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
Split package into three ones: rotation, translation and transform_managers. #236
Comments
Hi @szobov , Thanks for your feedback! You are right, there are too many non-optional dependencies right now. The code is written in a way that you should still be able to use most components without installing scipy or beautifulsoup4. A quick solution for the issue is to install it via pip with I'd like to avoid splitting the package into three separate packages. That would break a lot of existing code. I'd rather suggest making scipy and beautifulsoup4 optional dependencies and raise helfpful errors when an optional dependency is missing. I think the best solution would be to select an appropriate set of dependencies like this in pip:
etc. |
Here is the list of dependencies (including latest features that are under development): required
plotting
plotting of meshes
visualizer
transform_manager
graph visualization
urdf
jacobians
uncertainty
documentation
test
|
Thanks for a quick reply @AlexanderFabisch ! |
Yes, that would be very helpful! I'd suggest to update the setup.py and documentation accordingly. Also maybe it is worth to take a look at how other Python packages manage their optional dependencies. pandas has lots of those for example. I'm happy to review any pull requests. |
Release 3.0.0 is about to be released soon. Should this be part of it? |
Hi @AlexanderFabisch , |
I won't release it before next week. Get well soon! |
Hey @AlexanderFabisch |
No worries, there is no time pressure :) |
Hi there,
Thanks a lot for this amazing project. It's great!
I want to bring it to more widespread adoption and adopt it for internal projects.
But the showstopper I faced was that the project required some significant dependencies:
"scipy", "lxml", "beautifulsoup4"
, which are used only in transform_manager's related code.I think it can bring significant benefits if we split the project into three separated:
transformations
, with dependencies:numpy
and soft dependencymatplotlib
rotations
, with dependencies:numpy
and soft dependencymatplotlib
transform_managers
: with dependencies:transformations
,rotations
and all other dependencies.It will enable users to install required packages selectively if they don't need to use
transform_managers
.If we agree on it, I can implement all required code changes.
I am eager to hear your opinion on it.
Thanks in advance,
Sergei
The text was updated successfully, but these errors were encountered: