Announcements
- Drake now offers build flags to opt-out of compiling render engines
(#23574).
- For CMake, the new flags are
WITH_RENDER_GL,WITH_RENDER_GLTF_CLIENT, andWITH_RENDER_VTK. - For Bazel, the new flags are
--@drake//tools/flags:with_render_gl,--@drake//tools/flags:with_render_gltf_client, and--@drake//tools/flags:with_render_vtk.
- For CMake, the new flags are
- Drake’s macOS binary packages (
*.tar.gz) now use Python 3.14 (#23655). - Drake no longer provides macOS 3.12 wheels (#23729).
- Update gurobi to 12.0.3. This may require users to update their Gurobi installation.
Breaking changes since v1.46.0
- None
Refer to our Drake Stability Guidelines for our policy on API changes.
Changes since v1.46.0
Dynamical Systems
New features
- None
Fixes
- None
Mathematical Program
New features
- None
Fixes
- Fix segmentation fault in ComputePairwiseIntersections (#23715)
- Fix segmentation faults in HPolyhedron caused by sets with no hyperplanes (#23665)
- Fix an undefined behavior in the callback at optimality in the Gurobi wrapper (#23502)
- Remove MobyLCPSolver autodiff support (#23775)
Multibody Dynamics and Geometry
New features
Fixes
- Fix bug in mesh/convex scale verification (#23662)
- Meshcat serves meshcat.js from the content-addressable cache to avoid staleness bugs (#23695)
- Meshcat uses stats.js built into meshcat.js instead of a separate copy (#23730)
- DifferentialInverseKinematicsSystem avoids implicit context checker parallelism (#23726)
- Render engines now dlopen X11 lazily (#23604)
Planning
New features
- None
Fixes
- IrisNp2: fix hyperplanes not being counted during inner iterations (#23593)
Tutorials and examples
- None
Miscellaneous features and fixes
- Fold drake_throw.h into drake_assert.h (#23639)
- Add support for Eigen::Array for YAML (#23648)
- Extend DRAKE_THROW_UNLESS with value arguments (#19229, #23679)
- Adds LCM franka panda command publishers and receivers (#23595)
pydrake bindings
New features
- None
Fixes
- Fix cpp_param for Python 3.14’s typing.Union (#23675)
- Avoid deprecated Jupyter kernel method (#23676)
Build system
- Switch macOS to use Python 3.14 (#23655)
- Drop macOS 3.12 wheels (#23729)
- Add Python 3.14 wheels for both Linux and macOS (#23612, #23729)
- Use mold linker on Linux Noble debug builds (#23258)
- Add render engine opt-out flags (#23574)
Build dependencies
- Load X11 lazily (#23604)
- Fix Eigen 3.4.1 compatibility issues (#23669)
- Prepare for rules_python 1.7 (#23788)
- Drop unnecessary quadmath dependency on Noble (#23631)
- Update apple_support to 1.24.4 (#23685, #23736)
- Update bazel_features to 1.38.0 (#23680)
- Update buildifier_prebuilt to 8.2.1 (#23698)
- Update drake_models to latest commit (#23673)
- Update eigen to 5.0.1 (#23756)
- Update fcl_internal to latest commit (#23673)
- Update fmt to 12.1.0 (#23694)
- Update gflags to 2.2.2.bcr.1 (#23700)
- Update glib to 2.82.2.bcr.6 (#23711)
- Update googletest to 1.17.0.bcr.2 (#23688, #23701)
- Update gurobi to 12.0.3 (#23502)
- Update lcm_internal to 1.5.2 (#23478)
- Update libx11 to 1.8.12.bcr.4 (#23707)
- Update meshcat to latest commit (#23730)
- Update patchelf to 0.18.0.bcr.1 (#23710)
- Update Python env to latest (#23636)
- Update rules_cc to 0.2.14 (#23687, #23712)
- Update rules_java to 9 (#23737)
- Update rules_jvm_external to 6.9 (#23739)
- Update rules_rust to 0.67.0 (#23689)
- Update ruff_prebuilt to 0.14.1.3 (#23650)
- Update scs_internal to 3.2.9 (#23673)
- Update spdlog to v1.16.0.bcr.1 (#23690, #23699)
- Update tomli_internal to 2.3.0 (#23673)
- Update vtk_internal to latest commit (#23642, #23674)
Newly-deprecated APIs
drake::fmt_floating_pointwith template parameters other thanfloatanddouble(#23638)drake::solvers::MobyLCPSolver(#23776)- The class was renamed to
MobyLcpSolver(lowercase), without a template argument.
- The class was renamed to
- The
@lcmexternal (#23478)- Instead, use the
lcmmodule from the Bazel Central Registry.
- Instead, use the
- The
@x11external (#23641)- Instead, use the
x11module from the Bazel Central Registry; or copy-paste the@pkgconfig_x11code into your own project.
- Instead, use the
Removal of deprecated items
drake::symbolic::ExtractAndAppendVariablesFromExpression(#23632)
Notes
This release provides pre-compiled binaries named
drake-1.47.0-{jammy|noble|mac-arm64}.tar.gz. See Stable Releases for instructions on how to use them.
Drake binary releases incorporate a pre-compiled version of SNOPT as part of the Mathematical Program toolbox. Thanks to Philip E. Gill and Elizabeth Wong for their kind support.