-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
[BUG] Internal 68.2.0 change breaks all ROS2 python packages #4046
Comments
Thank you very much for the feedback @owend. Have you tried 68.2.1? |
About using the deprecated However this seems to be unrelated to using
Without deep inspection, it seems that serialising arbitrary objects with |
@abravalheri I can confirm 68.2.1 mitigates the issue. |
Fixed with 68.2.1, thanks! |
setuptools version
68.2.0
Python version
3.10
OS
Ubuntu
Additional environment information
No response
Description
This recent change in setuptools for 68.2.0 described as "Record normalized requirements in dist.metadata object"
a641c78
Probably breaks all downstream python packages built for ros2 using colcon.
colcon/colcon-python-setup-py#56 (comment)
This is going to cause a bunch of cascading failures in other projects. For example:
ArduPilot/ardupilot#24862 (comment)
Stack Overflow is about to get really busy because the tutorials are also broken.
https://robotics.stackexchange.com/questions/104054/building-example-library-of-ros-2
This design flaw in colcon has been "known" since 2021:
colcon/colcon-core#454
But the ROS ecosystem is very large and this will probably take a while to fix.
Unfortunately the root cause is that colcon is feeding output from setup.py into a compiler and expected compilable code but now gets a string representation which is not compilable. The extra <> characters now cause a syntax error.
Expected behavior
Builds using 68.1 do work. Since this is an internal meta-data structure change which seems to be an optimization? I would expect the easiest fix is to revert.
How to Reproduce
Try to build any ROS2 python package built with 68.2
Can add more details in a bit.
Output
The text was updated successfully, but these errors were encountered: