Conversation
- Bump Abseil from 20250512.1 to 20260107.0 - Bump Catch2 from v3.8.1 to v3.12.0 - Bump Eigen from 3.4.0 to 5.0.1 - Bump JSON from v3.11.2 to v3.12.0 - Bump libigl from 89267b4a80b1904de3f6f2812a2053e5e9332b7e to v2.6.0 - Bump TBB from v2022.1.0 to v2022.3.0 - Bump Pybind11 from v2.13.1 to v3.0.1 - Bump robin-map from v1.4.0 to v1.4.1 - Bump spdlog from v1.15.3 to v1.17.0 - Update dependencies.rst with xsimd
There was a problem hiding this comment.
Pull request overview
This PR updates several third-party dependencies (Abseil, Catch2, Eigen, nlohmann/json, libigl, TBB, pybind11, robin-map, spdlog) and brings the documentation and dependency graphs in line with the current build configuration, including explicit documentation of xsimd and test/python dependencies. It also centralizes Eigen’s vectorization control into the Eigen recipe and ties it to the SIMD option, simplifying configuration.
Changes:
- Bump versions of core C++ and Python-related third-party libraries (Abseil, Catch2, Eigen, nlohmann/json, libigl, oneTBB, pybind11, robin-map, spdlog).
- Document xsimd as an optional SIMD dependency and update the dependency graph/legend to include it; add explicit sections for Python bindings and unit test dependencies.
- Move Eigen’s
EIGEN_DONT_VECTORIZEhandling intoeigen.cmakeand couple it withIPC_TOOLKIT_WITH_SIMD, removing the duplicated compile definition from the top-levelCMakeLists.txt.
Reviewed changes
Copilot reviewed 12 out of 13 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
docs/source/about/dependencies.rst |
Updates optional dependency table to include xsimd and moves pybind11-related entries into new Python bindings and unit-test dependency tables. |
docs/source/_static/graphviz/dependencies.svg |
Regenerated dependency graph SVG to reflect the current dependency set and the new xsimd node. |
docs/source/_static/graphviz/dependencies.dot |
Updates DOT source for the dependencies graph, adding an xsimd node and tuning layout spacing. |
cmake/recipes/spdlog.cmake |
Bumps spdlog CPM package from 1.15.3 to 1.17.0. |
cmake/recipes/robin_map.cmake |
Bumps robin-map CPM package from 1.4.0 to 1.4.1. |
cmake/recipes/pybind11.cmake |
Bumps pybind11 CPM package from 2.13.1 to 3.0.1. |
cmake/recipes/onetbb.cmake |
Bumps oneTBB CPM package from 2022.1.0 to 2022.3.0. |
cmake/recipes/libigl.cmake |
Switches libigl from a pinned commit hash to tagged release 2.6.0. |
cmake/recipes/json.cmake |
Bumps nlohmann/json to v3.12.0 and updates the release archive hash. |
cmake/recipes/eigen.cmake |
Bumps Eigen to 5.0.1, removes the MPL2-only option, and centralizes EIGEN_DONT_VECTORIZE handling (including when SIMD is enabled). |
cmake/recipes/catch2.cmake |
Bumps Catch2 from 3.8.1 to 3.12.0. |
cmake/recipes/abseil.cmake |
Updates Abseil from LTS 20250512.1 to the commit corresponding to LTS 20260107.0. |
CMakeLists.txt |
Removes the top-level EIGEN_DONT_VECTORIZE definition under IPC_TOOLKIT_WITH_SIMD now that it’s handled in eigen.cmake; leaves SIMD/xsimd wiring intact. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #209 +/- ##
==========================================
- Coverage 97.34% 96.97% -0.38%
==========================================
Files 161 161
Lines 24664 24748 +84
Branches 877 894 +17
==========================================
- Hits 24010 24000 -10
- Misses 654 748 +94
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Description