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

python-fcl dependency with trimesh>=4 and numpy>=2 #2357

Closed
clemense opened this issue Feb 12, 2025 · 3 comments
Closed

python-fcl dependency with trimesh>=4 and numpy>=2 #2357

clemense opened this issue Feb 12, 2025 · 3 comments

Comments

@clemense
Copy link
Contributor

clemense commented Feb 12, 2025

Hi,
I'm upgrading some code that depends on trimesh-3.x to 4 and in the process I'm now stuck at ValueError: No FCL Available! Please install the python-fcl library. I saw in the toml file that the python-fcl dependency is commented out:

# "python-fcl", # do collision checks # TODO : broken on numpy 2

Why is that?

I manually installed python-fcl (0.7.0.4) but when trying to import it, I get:

  File "/scene_synthesizer/venv/lib/python3.10/site-packages/fcl/__init__.py", line 2, in <module>
    from .fcl import (
  File "src/fcl/fcl.pyx", line 1, in init fcl.fcl
ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject

Is the trimesh.collisions.CollisionManager generally not working anymore with numpy>=2?

(I'm working with a clean Ubuntu 22.04 docker with Python 3.10)

Thank you!

@mikedh
Copy link
Owner

mikedh commented Feb 13, 2025

Hey, yeah python-fcl is completely broken with Numpy 2 until it rebuilds. Also the BerkeleyAutomation/python-fcl repo has been locked out of PyPi from an expired token for a year or so now, although in the last few weeks a bunch of people have been poking it, and it looks like the token in the repo may have been updated last week. I just tried again for a rebuild in BerkeleyAutomation/python-fcl#85 and we'll see if that can finally release.

I have been using a personal fork, pip install fclx which populates import fcl but would like to not maintain that if at all possible 😆.

@clemense
Copy link
Contributor Author

Thanks! I'll resort to the fclx solution for now and hope that the BerkeleyAutomation version comes back to life.

@mikedh
Copy link
Owner

mikedh commented Feb 13, 2025

The build worked and token is fixed so pip install python-fcl should be getting the latest 0.7.0.8 which works on Numpy 2.

@mikedh mikedh closed this as completed Feb 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants