Announcements
- None
Breaking changes since v1.40.0
- None
Refer to our Drake Stability Guidelines for our policy on API changes.
Changes since v1.40.0
Dynamical Systems
New features
- Add
DiscreteTimeApproximationfor converting general continuous-time systems (#22652) - Support symbolic scalar type integrators in
DiscreteTimeApproximation(#22913) - Add scalar conversion for
Saturation(#22934)
Fixes
- None
Mathematical Program
New features
- Add
ProjectedGradientDescentSolver(#22947)
Fixes
IpoptSolveraccepts integers for floating-point options (#22927)
Multibody Dynamics and Geometry
New features
Fixes
GetBodiesKinematicallyAffectedByno longer throws on welds (#23004)GetScopedFrameByNameaccepts string_view (#23014)
Planning
New features
- Set sparsity pattern for
KinematicTrajectoryOptimizationeffort bounds (#22912) - Add
JointLimitsdata type (#23000) - Introduce
IrisCommonOptionsfor options shared between IRIS-ZO and IRIS-NP2 (#22982) - Add
DofMaskdata type (#23010)
Fixes
- None
Tutorials and examples
- None
Miscellaneous features and fixes
- Overload
ExtractValueandExtractGradientto allow preallocated output matrix (#22895) - Add more IiwaDriver config options (#22916)
pydrake bindings
New features
- Add bindings for
drake::geometry::QueryObject::GetConfigurationsInWorld(#23011) - Add bindings for
drake::manipulation::schunk_wsg::SchunkWsgTrajectoryGenerator(#22900) - Add bindings for
drake::solvers::ProjectedGradientDescentSolver(#22986)
Fixes
- Accept
pathlib.Pathfor paths inpydrake.multibody.parsing.{Parser.AddModels, LoadModelDirectives}(#22936) - Fix a memory hazard in
pydrake.multibody.inverse_kinematics.InverseKinematics(#22982) - Fix meldis crash on gltf embedded png (#23013)
Build system
- Support modern versions of user-provided spdlog in CMake (#22915)
- Update CMake versioning policies for Drake source and installation (#22898)
- Use our bazelversion pin in CMake builds also (#22901)
Build dependencies
- Switch to libclang-17 on Noble (#22919)
- Upgrade abseil_cpp_internal to latest commit (#22964)
- Upgrade bazel to latest release 8.2.1 (#22929)
- Upgrade bazelisk to latest release 1.26.0 (#22964)
- Upgrade buildifier to latest release 8.2.0 (#22964)
- Upgrade bzlmod eigen to 3.4.0.bcr.3 (#22918)
- Upgrade common_robotics_utilities to latest commit (#22971)
- Upgrade crate_universe to latest (#22964)
- Upgrade curl_internal to latest release 8.13.0 (#22965)
- Upgrade dm_control_internal to latest release 1.0.30 (#22964)
- Upgrade drake_models to latest commit (#22964)
- Upgrade gtest to latest release 1.17.0 (#22972)
- Upgrade libpng_internal to latest release 1.6.48 (#22964)
- Upgrade meshcat to latest commit (#22932)
- Upgrade mujoco_menagerie_internal to latest commit (#22964)
- Upgrade mypy_extensions_internal to latest release 1.1.0 (#22964)
- Upgrade nlohmann_internal to latest release 3.12.0 (#22964)
- Upgrade python venv (mac) to latest (#22984)
- Upgrade rules_java to 8.11.0 (#22929)
- Upgrade suitesparse_internal to latest release 7.10.2 (#22964)
- Upgrade sympy_py_internal to latest release 1.14.0 (#22964)
- Upgrade typing_extensions_internal to latest release 4.13.2 (#22964)
- Upgrade voxelized_geometry_tools to latest commit (#22933)
Newly-deprecated APIs
drake::manipulation::kuka_iiwa::BuildIiwaControl()8 argument overload (#22916)drake::manipulation::kuka_iiwa::BuildSimplifiedIiwaControl()7 argument overload (#22916)
Removal of deprecated items
drake::planning::graph_algorithms::MaxCliqueSolverBase::Clone(#22938)drake::solvers::CommonSolverOption::operator<<(#22938)drake::solvers::MathematicalProgram::GetSolverOptionsDouble()(#22938)drake::solvers::MathematicalProgram::GetSolverOptionsInt()(#22938)drake::solvers::MathematicalProgram::GetSolverOptionsStr()(#22938)drake::solvers::MobyLCPSolver::SetLoggingEnabled(#22938)drake::systems::analysis::SimulatorFactory(#22938)drake::systems::sensors::RgbdSensorAsync::color_camera(#22938)drake::systems::sensors::RgbdSensorAsync::depth_camera(#22938)drake::systems::sensors::RgbdSensorAsync::parent_id(#22938)drake::systems::sensors::RgbdSensorAsync::X_PB(#22938)pydrake.solvers.SolverOptions.SetOptionwith parameterssolver_optionandoption_value(#22938)- Certain yaml implicit primitive type conversions during parsing (#22940)
- LCM install with CMake install and binary packages (#22939)
- MUMPS as an IPOPT linear solver (#22937)
- Subclassing
drake::multibody::MultibodyPlant(#22938) - Support for macOS for Python 3.11 wheels (#22893)
- The @cc external (#22941)
- The @glx external (#22941)
- The @ipopt external (#22937)
- The @libblas external (#22941)
- The @liblapack external (#22941)
- The @opengl external (#22941)
Notes
This release provides pre-compiled binaries named
drake-1.41.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.