-
Notifications
You must be signed in to change notification settings - Fork 582
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
Boolean unit tests fail if manifold3d is not installed #2306
Comments
Does #2298 help at all? PR's welcome! One thing that might help breaking this in the future is if we added a test that tried the debian build, which I have no idea how to do but am open to PR's on 😄. |
#2298 Is almost exactly what I patched to make the unit test no longer fail on the Debian build. 😅 I don't think there should be a Debian-specific test, but rather some better logic to select and test different engines. The unit tests should also run all tests against all engines and fail when an engine isn't available. In the Debian scripts, we can then simply add a small patch that removes manifold3d from the engine list in the test. I'll try to come up with a PR based on the idea of selecting an engine globally on module load, with the option of changing the detected default later or passing it to each operation (as it's implemented now). |
It looked like trimesh wasn't testing with blender at all (good catch!) so I was trying to add it to our docker images which use a Debian |
Yes, it's unfortunate, but it got kicked out automatically because some dependencies fail to build with other updated dependencies. It's a real mess lately... not least thanks to lots of changes/deprecations in Python 3.12 and 3.13. You can see the status here: https://tracker.debian.org/pkg/blender I recommend pulling the latest version from sid instead, that's what I usually do in these situations. |
No worries, I installed from a blender tarball. Let me know if #2312 needs some follow-ups on this issue. |
Some of the unit tests have been set up so they execute with all available boolean mesh operation engines, but some of them require the default manifold3d engine.
The Debian build system requires that all dependencies must be available in the Debian ecosystem, but we haven't packaged manifold3d yet and need to run all unit tests against the blender engine for now.
Example error:
Aside from test_multiple_difference, these tests would also need modifications: test_boolean_manifold, test_boolean_manifold, test_reduce_cascade
Maybe it would be a better idea to use a test fixture instead, so all unit tests are always run with all engines?
Or perhaps there should be a way to set the engine globally and autodetect available engines on module load.
The text was updated successfully, but these errors were encountered: