-
Notifications
You must be signed in to change notification settings - Fork 228
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
Pytest Incompatibility with ROS2 Humble Release on Robostack #1529
Comments
This [project]
name = "proj"
channels = ["conda-forge", "robostack-staging"]
platforms = ["linux-64", "osx-arm64"]
[dependencies]
python = "3.11"
ros-humble-ros-base = "*"
[pypi-dependencies]
pytest = "*" Seems to be using this conda
|
My apologies. Yes, this still occurs when I add the missing
|
@alberthli - do you mean we need to update the |
I'm not 100% sure, but it might be a good start, since it seems like this exact bug was resolved about 1 month ago on the ROS2 side. If the package hasn't been updated on RoboStack since then, it's probably at least a necessary condition. |
Package should be online in a few minutes (max 30 minutes). Then, can you run |
The other workaround would be to downgrade |
Thanks, I'll give it a shot (is there any way for me to verify on my end whether the new package has gone online yet?). I would downgrade
upon running |
In that case you probably can also remove |
actually, what i did didn't work. let me see about that. |
In my case it seems to get pytest from conda, the pypi-dependencies does not seem to have an effect on osx-arm64 at least, probably included by the ROS base? |
Interestingly, for me, whether or not I include
The |
Yeah the pypi dependencies for pytest don't do anything because the base includes: https://prefix.dev/channels/robostack-staging/packages/ros-humble-ament-cmake-pytest And that pulls in the conda pytest. During the pypi resolve we use the conda version so the pypi version is never installed. |
OK, that makes sense. Any clue why this bug seems to affect My current workaround is to define some |
@alberthli I am quite sure that you can just define Try this: [project]
name = "proj"
channels = ["conda-forge", "robostack-staging"]
platforms = ["linux-64"]
[dependencies]
python = ">=3.10"
ros-humble-ros-base = "*"
pytest = "8.0.*" # or whatever older version works! |
Ah, thank you for the obvious solution - I completely forgot to try specifying its version as a non-pypi dependency. |
Do you think we could close this as this is a ros-humble issue :)? |
I would be OK closing it as long as I had another issue/PR that I could track - does another one exist? If not, I could open it and reference this issue in it. |
I think this should have been fixed by the latest full rebuild of ros-humble packages in RoboStack/ros-humble#229 . If you are interested in this, can you check if this happens after a refresh of packages? |
Thanks for the ping @traversaro This example does indeed work now 👍. Closing the issue |
Checks
I have checked that this issue has not already been reported.
I have confirmed this bug exists on the latest version of pixi, using
pixi --version
.Reproducible example
The issue can be reproduced with the following
pixi.toml
.Issue description
With the above
pixi.toml
, runningpytest
in thepixi
shell raises the errorThis seems to have been patched and backported to Humble here: ros2/launch#777. However, it's not clear whether the binary from RoboStack includes the patch. Running
pytest
outside of apixi
environment where I have ROS2 installed locally doesn't raise any errors.Expected behavior
I should be able to run
pytest
without issue in apixi
shell.The text was updated successfully, but these errors were encountered: