-
-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
Add yarp recipe #18234
Add yarp recipe #18234
Conversation
Hi! This is the friendly automated conda-forge-linting service. I wanted to let you know that I linted all conda-recipes in your PR ( Here's what I've got... For recipes/yarp:
|
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
Linux/macOS builds are failing with:
even if both portaudio and |
The PR is ready for review @conda-forge/help-c-cpp @conda-forge/help-python-c . |
Build fails with:
|
This will be fixed by conda-forge/soxr-feedstock#1 . |
@conda-forge/help-c-cpp please review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please split the Python API for this package into a separate output or convert the python run requirement into a run constraint. The python requirement as it is presently will cause downstream CXX packages to inherit a python run requirement even if they do not use python.
Since when this was a conda-forge constraint? I mantain several mixed C++/Python packages that have a single output (mainly for reduce recipe complexity, and also because I never fully understood how run_exports works with multiple output recipe to be completly honest) and this was never a problem until now, and I do not see anything in official conda-forge CFEP or documentation (see for example https://github.com/conda-forge/pinocchio-feedstock/blob/5405f41b064b223e64d2594ec694cfdc37f61723/recipe/meta.yaml#L43). Alternatively, do you have a good example of a C++/Python package with C++ and Python parts on multiple outputs that handles correctly run_exports or of a C++/Python package that has a Python run_constraint? Thanks! |
By the way, I am afraid that without a pin on python version also the current version with |
Given https://github.com/conda-forge/python-feedstock/blob/237b7631fb414e543d36b744ed2120661be3673e/recipe/meta.yaml#L135 I guess if the correct fix (unless we separate the recipe in multiple outputs) is to just drop python from the run dependencies? |
Hi! This is the friendly automated conda-forge-linting service. I wanted to let you know that I linted all conda-recipes in your PR ( Here's what I've got... For recipes/yarp:
|
I did that in 12e09ac, but I just realized why I added it in the first place: due to the linter error in #18234 (comment) . |
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
I restored python as run dependency in e44a1c1 to fix the linter error. |
While working on #19049 (and inspired by https://github.com/conda-forge/bullet-feedstock) I understood that a nice way to have a recipe with split output between C++ library and Python bindings is to have Python bindings that can be build on their own that find via |
Linux/macOS build are successful. Windows builds are failing with:
Not sure what the problem is. As the qt --> qt-main transiction is imminenent, I will try to switch to qt-main to see if the situation improves. |
As libopencv still depends on qt and is not available for qt-main, this does not work. |
Oh, great, I did not know that the |
Thanks, I addressed or replied to all the observations. The PR is ready for another round of review/reply to comments. @conda-forge/help-c-cpp |
@carterbox Thanks for the suggested modifications, I added them. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming the builds succeed, I approve this feedstock. I'll check back in a few hours.
YARP (Yet Another Robot Platform, https://en.wikipedia.org/wiki/YARP) is a C++ library with Python bindings used in robotics. It contains functionality related to inter-process communication (so-called YARP ports) and abstraction of hardware devices (so-called YARP devices). It was initially developed in early 2000s as a collaboration between University of Genoa and MIT, and is extensively used in the software architecture of the iCub Humanoid robot (see https://www.frontiersin.org/articles/10.3389/frobt.2016.00024/full for more details).
Checklist
url
) rather than a repo (e.g.git_url
) is used in your recipe (see here for more details).