Skip to content

Conversation

@mikedh
Copy link
Owner

@mikedh mikedh commented Nov 7, 2025

  • edit the somewhat outdated feature list
  • shorten the README with links to the website rather than a wall of text
  • move the format discussion to its own markdown document on the website including a table describing pros and cons of various formats, and slightly tame the OBJ negativity.
  • remove openctm references reflecting the deprecation
  • move helper code generation and docker files to helpers rather than being sprinkled around in the source directory.
  • add a trimesh.typed.Self helper and change the relevant type hints.
  • apply the March 2024 deprecation removing Trimesh.remove_degenerate_faces and Trimesh.remove_duplicate_faces.

Checking the upstream packages in `[easy]` to see if they have Python
3.14 builds. Mostly we just have to bump the version of `cibuildwheel`
and re-build. Ones that are done:
-
[python-fcl](BerkeleyAutomation/python-fcl@b41eca7)
-
[embreex](trimesh/embreex@0952598)
- [cascadio](trimesh/cascadio#20)

Ones that require a build toolchain (`apt install build-essential git`):
- [mapbox-earcut](https://github.com/skogler/mapbox_earcut_python)
- [xatlas](https://github.com/mworchel/xatlas-python)
- [manifold3d](https://github.com/elalish/manifold)
- [scikit-image](https://github.com/scikit-image/scikit-image)

Had to pin two `test_more` dependencies (only used to get the test
coverage up) to <3.14
- [pymeshlab](https://pypi.org/project/pymeshlab/#history)
- [triangle](https://github.com/drufat/triangle/)
@mikedh mikedh mentioned this pull request Nov 12, 2025
@mikedh mikedh merged commit 1863569 into release/collision Nov 24, 2025
11 checks passed
@mikedh mikedh deleted the feat/docs branch November 24, 2025 06:07
mikedh added a commit that referenced this pull request Nov 24, 2025
- release #2475 
- release #2474 
- release #2483 
- release #2481 
- release #2486 
- release #2480
- this applies the March 2024 deprecation removing
`Trimesh.remove_degenerate_faces` and `Trimesh.remove_duplicate_faces`.
- moves the `SceneViewer` control instructions from the README to print
on the `h` keypress, and make the default window caption include `h for
help`
- remove `psutil` from dependencies. It was only used to check if a
`scipy.spatial.cdist` call was going to use more than 50% of free system
memory before falling back to a more memory-efficient but slower loop.
This now falls back to a looping method if the `cdist` call is going to
use more than a fixed `4 GB` of memory,
- add check that primitives (i.e. `Cylinder`) mostly override `area` and
`volume` by checking that their primitive area/volume is not exactly
floating point equal to their meshed volume. This caught that `Capsule`
didn't return analytical volume/area which was also fixed. We could
probably make Primitive a multiple inheritance ABC that requires certain
properties but since Primitive already inherits from Trimesh that seems
unnecessary and confusing.
- clean up references to OpenCTM, which [was
deprecated](trimesh/openctm#5) for low use,
being unmaintained, and inflicting a burden on upstream package
management.
- docker images now build with 3.14
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

Successfully merging this pull request may close these issues.

2 participants