---
title: Drake v0.25.0
date: 2020-12-15
released: 2020-12-15
---

# Announcements

* Drake no longer supports macOS Mojave 10.14 [#14352][_#14352]; it only supports
  Catalina 10.15.  Work is underway to support Big Sur 11. Note that macOS
  releases only support Python 3.8, not Python 3.9.

# Breaking changes since v0.24.0

* Implement Mesh for proximity via its convex hull.  Anyone with a mesh
  registered with a proximity role will start observing proximity query
  results where there were none before ([#14351][_#14351]).
* Remove RenderEngineOspray ([#14339][_#14339]).
* Remove pydrake.common.cpp_const and pydrake.third_party ([#14270][_#14270]).
* Remove spring_mass_system from the libdrake shared library ([#14284][_#14284]).
* Replace robotlocomotion.robot_plan_t with drake.lcmt_robot_plan ([#14377][_#14377]).
  * EncodeKeyFrames, MoveIkDemoBase, and RobotPlanInterpolator and their
    associated demos (move_iiwa_ee, move_jaco_rr, kuka_plan_runner, etc.),
    now operate on lcmt_robot_plan messages, not robot_plan_t messages.
  * EncodeKeyFrames no longer takes an "info" argument -- the message
    no longer contains the unused snopt integer.

# Changes since v0.24.0

## Dynamical Systems

{% comment %}
<relnotes for systems go here>
{% endcomment %}

New features

* Return multiple shooting constraints for AddConstraintToAllKnotPoints and
  AddEqualTimeIntervalsConstraints ([#14340][_#14340])
* Introduce AddNamedSystem sugar to DiagramBuilder ([#14404][_#14404])
* Permit constructing camera info from intrinsic matrix ([#14402][_#14402])
* Implement fan-out of diagram inputs in DiagramBuilder ([#14361][_#14361])

Fixes

* Un-deprecate FixInputPort taking an const ref ([#14454][_#14454])

## Mathematical Program

{% comment %}
<relnotes for solvers go here>
{% endcomment %}

New features

* Aggregate BoundingBoxConstraint ([#14248][_#14248])
* MosekSolver supports quadratic cost with nonlinear conic constraints ([#14237][_#14237])
* Expose new methods at symbolic_decompose ([#14353][_#14353])

Fixes

* Throw an error when getting dual solution for a QCP in Gurobi (`[#14285][_#14285])
* Only retrieve MOSEK™ dual solution when there are no integer variables ([#14338][_#14338]`)
* Retrieve linear constraint dual from MOSEK™ result ([#14348][_#14348])
* Ensure IPOPT uses MUMPS as its linear solver ([#14446][_#14446], [#14288][_#14288])

## Multibody Dynamics

{% comment %}
<relnotes for geometry,multibody go here>
{% endcomment %}

New features

* Allow force publish calls on DrakeVisualizer ([#14304][_#14304])
* Add PackageMap Remove method ([#14301][_#14301])
* Enhance documentation for bodies & frames and monogram notation for spatial velocity/acceleration ([#14397][_#14397])
* Add new geometry::DrakeVisualizer system ([#14247][_#14247])
* Add color and texture image rendering to RenderEngineGl ([#14226][_#14226], [#14256][_#14256], [#14260][_#14260], [#14289][_#14289], [#14357][_#14357], [#14396][_#14396])
* New hydroelastic contact model in progress ([#14251][_#14251], [#14378][_#14378])
* Add parameters and parsing for reflected inertia ([#14167][_#14167], [#14323][_#14323])

Fixes

* Clean up and deprecation of SceneGraphInspector/QueryObject bindings ([#14280][_#14280])
* Propagate joint default positions through scalar conversion ([#14347][_#14347])
* Throw an exception in relevant center of mass methods if composite_mass <= 0 ([#14316][_#14316])
* Remove MultibodyPlant's awareness of `SceneGraph<AutoDiff>` support ([#14324][_#14324])
* Add ValidateContext() to methods that take a context ([#14389][_#14389])
* Fix missing multibody graph accounting ([#14411][_#14411])
* Document that body spatial velocity/acceleration methods are for point Bo (not point Bcm) ([#14382][_#14382])

## Tutorials and examples

{% comment %}
<relnotes for examples,tutorials go here>
{% endcomment %}

* Minor fixes for flake8's F821 (undefined name) error ([#14293][_#14293])
* Change to use SetInitialGuess in the nlp tutorial ([#14331][_#14331])
* Allegro with reflected inertia ([#14204][_#14204])
* dualshock: Update example to use Logitech controller ([#14388][_#14388])
* Add a tutorial on quadratic program ([#14403][_#14403])
* acrobot: Add an autodiff benchmark ([#14432][_#14432])

## Miscellaneous features and fixes

{% comment %}
<relnotes for common,math,lcm,lcmtypes,manipulation,perception go here>
{% endcomment %}

* Use package instead of relative path for allegro model files ([#14252][_#14252])
* meshcat: upgrade interface to use QueryObject ([#14292][_#14292])
* systems/lcm: Add LcmScopeSystem ([#14308][_#14308])
* yaml: Correctly emit variants with templated inner types ([#14327][_#14327])
* yaml: Fix parsing bugs with zero-sized matrices ([#14360][_#14360])

## pydrake bindings

{% comment %}
<relnotes for bindings go here>
{% endcomment %}

New features

* None

Fixes

* Correct bindings for DrakeVisualizer.AddToBuilder ([#14314][_#14314])
* meshcat visualizer: remove period which causes an error outside of drake ([#14320][_#14320])
* Fix type bug in BasicVector::set_value for non-float types ([#14343][_#14343])
* Ensure manipulation_station_py.cc imports dep modules ([#14370][_#14370])
* Add keep_alive cycle to DiagramBuilder.AddSystem ([#14356][_#14356])
* Fix bindings for RenderCamera classes ([#14394][_#14394])
* Fix some argument names in SceneGraphInspector bindings ([#14259][_#14259])
* RenderEngine: disallow some APIs with deprecated CameraProperties instances  ([#14300][_#14300])

Newly bound

* pydrake.geometry.ContactSurface ([#14244][_#14244])
* pydrake.geometry.SceneGraphInspector.BelongsToSource ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.CollisionFiltered ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.FramesForSource ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.GetCollisionCandidates ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.GetFrameGroup ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.GetGeometries ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.GetOwningSourceName ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.NumFramesForSource ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.NumGeometriesForFrame ([#14259][_#14259])
* pydrake.geometry.SceneGraphInspector.NumGeometriesForFrameWithRole ([#14259][_#14259])
* pydrake.geometry.SurfaceMesh.centroid ([#14244][_#14244])
* pydrake.multibody.plant.CalcCenterOfMassPosition ([#14249][_#14249])
* pydrake.multibody.plant.ContactResults.hydroelastic_contact_info ([#14244][_#14244])
* pydrake.multibody.plant.ContactResults.num_hydroelastic_contacts ([#14244][_#14244])
* pydrake.multibody.plant..GetBodiesWeldedTo ([#14345][_#14345])
* pydrake.multibody.plant.HydroelasticContactInfo ([#14244][_#14244])
* pydrake.multibody.plant.MultibodyPlant.get_mutable_joint ([#14257][_#14257])
* pydrake.multibody.plant.MultibodyPlant.GetJointIndices ([#14257][_#14257])
* pydrake.multibody.tree.Body.CalcCenterOfMassInBodyFrame ([#14207][_#14207])
* pydrake.multibody.tree.Body.CalcSpatialInertiaInBodyFrame ([#14207][_#14207])
* pydrake.multibody.tree.Body.EvalPoseInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Body.EvalSpatialAccelerationInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Body.EvalSpatialVelocityInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Body.get_default_mass ([#14207][_#14207])
* pydrake.multibody.tree.Body.get_mass ([#14207][_#14207])
* pydrake.multibody.tree.Body.get_num_flexible_positions ([#14207][_#14207])
* pydrake.multibody.tree.Body.get_num_flexible_velocities ([#14207][_#14207])
* pydrake.multibody.tree.Body.has_quaternion_dofs ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcOffsetPoseInBody ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcOffsetRotationMatrixInBody ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcPose ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcPoseInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcRotationMatrix ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcRotationMatrixInBodyFrame ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcRotationMatrixInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcSpatialAccelerationInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcSpatialVelocity ([#14207][_#14207])
* pydrake.multibody.tree.Frame.CalcSpatialVelocityInWorld ([#14207][_#14207])
* pydrake.multibody.tree.Frame.GetFixedOffsetPoseInBody ([#14207][_#14207])
* pydrake.multibody.tree.Frame.GetFixedPoseInBodyFrame ([#14207][_#14207])
* pydrake.multibody.tree.Frame.GetFixedRotationMatrixInBody ([#14207][_#14207])
* pydrake.multibody.tree.Frame.GetFixedRotationMatrixInBodyFrame ([#14207][_#14207])
* pydrake.multibody.tree.Frame.is_world_frame ([#14207][_#14207])
* pydrake.solvers.mathematicalprogram.PyFunctionConstraint ([#14410][_#14410])
* pydrake.symbolic.DecomposeAffineExpression ([#14353][_#14353])
* pydrake.symbolic.DecomposeAffineExpressions ([#14353][_#14353])
* pydrake.symbolic.DecomposeLinearExpressions ([#14353][_#14353])
* pydrake.symbolic.DecomposeQuadraticPolynomial ([#14353][_#14353])
* pydrake.symbolic.ExtractVariablesFromExpression ([#14353][_#14353])
* pydrake.symbolic.GetVariableVector ([#14353][_#14353])
* pydrake.symbolic.MakeMatrixBinaryVariable ([#14342][_#14342])
* pydrake.symbolic.MakeMatrixBooleanVariable ([#14342][_#14342])
* pydrake.symbolic.MakeMatrixContinuousVariable ([#14342][_#14342])
* pydrake.symbolic.MakeMatrixVariable ([#14342][_#14342])
* pydrake.symbolic.MakeVectorBinaryVariable ([#14342][_#14342])
* pydrake.symbolic.MakeVectorBooleanVariable ([#14342][_#14342])
* pydrake.symbolic.MakeVectorContinuousVariable ([#14342][_#14342])
* pydrake.symbolic.MakeVectorVariable ([#14342][_#14342])
* pydrake.symbolic.Variable.get_name ([#14342][_#14342])
* pydrake.systems.framework.OutputPort.get_name ([#14438][_#14438])

## Build system and dependencies

{% comment %}
<relnotes for attic,cmake,doc,setup,third_party,tools go here>
{% endcomment %}

* Add dependency on double-conversion ([#14392][_#14392])
* Add dependency on lzma ([#14392][_#14392])
* Add dependency on six ([#14390][_#14390])
* Add dependency on sqlite3 ([#14392][_#14392])
* Upgrade dreal to latest release 4.20.12.1 ([#14443][_#14443])
* Upgrade fcl to latest commit ([#14271][_#14271])
* Upgrade fmt to latest release 7.1.3 ([#14272][_#14272], [#14413][_#14413])
* Upgrade ghc_filesystem to latest release 1.3.8 ([#14273][_#14273], [#14414][_#14414])
* Upgrade ignition_math to latest release 6.7.0 ([#14415][_#14415])
* Upgrade intel_realsense_ros to latest release 2.2.20 ([#14274][_#14274], [#14416][_#14416])
* Upgrade lcm to latest commit ([#14275][_#14275], [#14418][_#14418])
* Upgrade meshcat_python to latest commit ([#14417][_#14417])
* Upgrade ros_xacro to latest release 1.13.9 ([#14276][_#14276])
* Upgrade rules_pkg to latest release 0.3.0 ([#14277][_#14277])
* Upgrade rules_python to latest release 0.1.0 ([#14278][_#14278])
* Upgrade to rebuilt VTK binaries ([#14393][_#14393], [#14395][_#14395])
* Neither compile docs nor install documentation prereqs by default ([#14168][_#14168])
* Add kcov_merge tool to consolidate results; for performance, coverage runs no longer consolidate by default ([#14294][_#14294])
* Fix to be compatible with Bazel 4.0 release candidate ([#14439][_#14439], [#14441][_#14441], [#14442][_#14442])
* Don't install stray `__init__.py` into site-packages ([#14444][_#14444])
* Changes specific to Ubuntu:
  * Add libspdlog-dev for Ubuntu 20.04 Focal only ([#14429][_#14429])
  * Remove dependency on libtbb2 ([#14395][_#14395], [#14339][_#14339])
* Changes specific to macOS:
  * Rebuild drake-visualizer ([#14395][_#14395])
  * Fix compatibility vs Homebrew python 3.8 ([#14395][_#14395], [#14428][_#14428])
  * Remove support for Mojave 10.14 ([#14352][_#14352])
  * Remove support for building documentation ([#14350][_#14350])

## Newly-deprecated APIs

LCM messages

* lcmtypes/lcmt_body_acceleration.lcm ([#14372][_#14372])
* lcmtypes/lcmt_body_motion_data.lcm ([#14372][_#14372])
* lcmtypes/lcmt_body_wrench_data.lcm ([#14372][_#14372])
* lcmtypes/lcmt_constrained_values.lcm ([#14372][_#14372])
* lcmtypes/lcmt_contact_information.lcm ([#14372][_#14372])
* lcmtypes/lcmt_desired_body_motion.lcm ([#14372][_#14372])
* lcmtypes/lcmt_desired_centroidal_momentum_dot.lcm ([#14372][_#14372])
* lcmtypes/lcmt_desired_dof_motions.lcm ([#14372][_#14372])
* lcmtypes/lcmt_foot_flag.lcm ([#14372][_#14372])
* lcmtypes/lcmt_inverse_dynamics_debug_info.lcm ([#14372][_#14372])
* lcmtypes/lcmt_joint_pd_override.lcm ([#14372][_#14372])
* lcmtypes/lcmt_manipulator_plan_move_end_effector.lcm ([#14372][_#14372])
* lcmtypes/lcmt_piecewise_polynomial.lcm ([#14372][_#14372])
* lcmtypes/lcmt_plan_eval_debug_info.lcm ([#14372][_#14372])
* lcmtypes/lcmt_polynomial.lcm ([#14372][_#14372])
* lcmtypes/lcmt_polynomial_matrix.lcm ([#14372][_#14372])
* lcmtypes/lcmt_qp_controller_input.lcm ([#14372][_#14372])
* lcmtypes/lcmt_qp_input.lcm ([#14372][_#14372])
* lcmtypes/lcmt_quadrotor_input_t.lcm ([#14372][_#14372])
* lcmtypes/lcmt_quadrotor_output_t.lcm ([#14372][_#14372])
* lcmtypes/lcmt_resolved_contact.lcm ([#14372][_#14372])
* lcmtypes/lcmt_robot_state.lcm ([#14372][_#14372])
* lcmtypes/lcmt_scope_data.lcm ([#14372][_#14372])
* lcmtypes/lcmt_simulation_command.lcm ([#14372][_#14372])
* lcmtypes/lcmt_support_data.lcm ([#14372][_#14372])
* lcmtypes/lcmt_viewer2_comms.lcm ([#14372][_#14372])
* lcmtypes/lcmt_whole_body_data.lcm ([#14372][_#14372])
* lcmtypes/lcmt_zmp_com_observer_state.lcm ([#14372][_#14372])
* lcmtypes/lcmt_zmp_data.lcm ([#14372][_#14372])

C++

* drake::examples::manipulation_station::RegisterRgbdSensor with DepthCameraProperties ([#14375][_#14375])
* drake::geometry::ConnectDrakeVisualizer ([#14282][_#14282])
* drake::geometry::DispatchLoadMessage ([#14282][_#14282])
* drake::geometry::GeometryState::GetSourceName ([#14280][_#14280])
* drake::geometry::GeometryState::RenderColorImage with CameraProperties ([#14359][_#14359])
* drake::geometry::GeometryState::RenderDepthImage with DepthCameraProperties ([#14359][_#14359])
* drake::geometry::GeometryState::RenderLabelImage with CameraProperties ([#14359][_#14359])
* drake::geometry::GeometryState::X_PF ([#14280][_#14280])
* drake::geometry::GeometryState::X_WF ([#14280][_#14280])
* drake::geometry::GeometryState::X_WG ([#14280][_#14280])
* drake::geometry::QueryObject::RenderColorImage with CameraProperties ([#14359][_#14359])
* drake::geometry::QueryObject::RenderDepthImage with DepthCameraProperties ([#14359][_#14359])
* drake::geometry::QueryObject::RenderLabelImage with CameraProperties ([#14359][_#14359])
* drake::geometry::QueryObject::X_PF ([#14280][_#14280])
* drake::geometry::QueryObject::X_WF ([#14280][_#14280])
* drake::geometry::QueryObject::X_WG ([#14280][_#14280])
* drake::geometry::render::CameraProperties ([#14376][_#14376])
* drake::geometry::render::DepthCameraProperties ([#14376][_#14376])
* drake::geometry::render::RenderEngine::RenderColorImage with CameraProperties ([#14359][_#14359])
* drake::geometry::render::RenderEngine::RenderDepthImage with DepthCameraProperties ([#14359][_#14359])
* drake::geometry::render::RenderEngine::RenderLabelImage with CameraProperties ([#14359][_#14359])
* drake::geometry::SceneGraph(data_as_state=true) ([#14245][_#14245])
* drake::geometry::SceneGraphInspector::GetSourceName ([#14280][_#14280])
* drake::geometry::SurfaceMesh::kDim ([#14420][_#14420])
* drake::geometry::VolumeMesh::kDim ([#14420][_#14420])
* drake::systems::sensors::RgbdSensor::CameraPoses ([#14358][_#14358])
* drake::systems::sensors::RgbdSensor::RgbdSensor constructor with CameraPoses or CameraProperties ([#14358][_#14358])

## Removal of deprecated items

Build system

* bullet, freetype2 externals ([#14398][_#14398])

C++ items

* drake::math::Slerp ([#14398][_#14398])
* drake::pydrake::py_reference ([#14267][_#14267])
* drake::pydrake::py_reference_internal ([#14267][_#14267])
* drake::systems::kAutoSize ([#14398][_#14398])
* drake::systems::Simulator: time jumps warning ([#14398][_#14398])
* drake::systems::Subvector empty constructor ([#14398][_#14398])

Models

* examples/irb140/urdf ([#14267][_#14267])
* examples/kuka_iiwa_arm/models/objects/big_robot_toy.urdf ([#14267][_#14267])
* manipulation/models/wsg_50_description URDF and meshes ([#14267][_#14267])

# Notes

This release provides
[pre-compiled binaries](https://github.com/RobotLocomotion/drake/releases/tag/v0.25.0)
named ``drake-20201215-{bionic|focal|mac}.tar.gz``. See
[Stable Releases](/from_binary.html#stable-releases) for instructions on how to use them.

Drake binary releases incorporate a pre-compiled version of
[SNOPT](https://ccom.ucsd.edu/~optimizers/solvers/snopt/) as part of the
[Mathematical Program toolbox](https://drake.mit.edu/doxygen_cxx/group__solvers.html).
Thanks to Philip E. Gill and Elizabeth Wong for their kind support.

{% comment %}
<begin issue links>
{% endcomment %}

[_#14167]: https://github.com/RobotLocomotion/drake/pull/14167
[_#14168]: https://github.com/RobotLocomotion/drake/pull/14168
[_#14204]: https://github.com/RobotLocomotion/drake/pull/14204
[_#14207]: https://github.com/RobotLocomotion/drake/pull/14207
[_#14226]: https://github.com/RobotLocomotion/drake/pull/14226
[_#14237]: https://github.com/RobotLocomotion/drake/pull/14237
[_#14244]: https://github.com/RobotLocomotion/drake/pull/14244
[_#14245]: https://github.com/RobotLocomotion/drake/pull/14245
[_#14247]: https://github.com/RobotLocomotion/drake/pull/14247
[_#14248]: https://github.com/RobotLocomotion/drake/pull/14248
[_#14249]: https://github.com/RobotLocomotion/drake/pull/14249
[_#14251]: https://github.com/RobotLocomotion/drake/pull/14251
[_#14252]: https://github.com/RobotLocomotion/drake/pull/14252
[_#14256]: https://github.com/RobotLocomotion/drake/pull/14256
[_#14257]: https://github.com/RobotLocomotion/drake/pull/14257
[_#14259]: https://github.com/RobotLocomotion/drake/pull/14259
[_#14260]: https://github.com/RobotLocomotion/drake/pull/14260
[_#14267]: https://github.com/RobotLocomotion/drake/pull/14267
[_#14270]: https://github.com/RobotLocomotion/drake/pull/14270
[_#14271]: https://github.com/RobotLocomotion/drake/pull/14271
[_#14272]: https://github.com/RobotLocomotion/drake/pull/14272
[_#14273]: https://github.com/RobotLocomotion/drake/pull/14273
[_#14274]: https://github.com/RobotLocomotion/drake/pull/14274
[_#14275]: https://github.com/RobotLocomotion/drake/pull/14275
[_#14276]: https://github.com/RobotLocomotion/drake/pull/14276
[_#14277]: https://github.com/RobotLocomotion/drake/pull/14277
[_#14278]: https://github.com/RobotLocomotion/drake/pull/14278
[_#14280]: https://github.com/RobotLocomotion/drake/pull/14280
[_#14282]: https://github.com/RobotLocomotion/drake/pull/14282
[_#14284]: https://github.com/RobotLocomotion/drake/pull/14284
[_#14285]: https://github.com/RobotLocomotion/drake/pull/14285
[_#14288]: https://github.com/RobotLocomotion/drake/pull/14288
[_#14289]: https://github.com/RobotLocomotion/drake/pull/14289
[_#14292]: https://github.com/RobotLocomotion/drake/pull/14292
[_#14293]: https://github.com/RobotLocomotion/drake/pull/14293
[_#14294]: https://github.com/RobotLocomotion/drake/pull/14294
[_#14300]: https://github.com/RobotLocomotion/drake/pull/14300
[_#14301]: https://github.com/RobotLocomotion/drake/pull/14301
[_#14304]: https://github.com/RobotLocomotion/drake/pull/14304
[_#14308]: https://github.com/RobotLocomotion/drake/pull/14308
[_#14314]: https://github.com/RobotLocomotion/drake/pull/14314
[_#14316]: https://github.com/RobotLocomotion/drake/pull/14316
[_#14320]: https://github.com/RobotLocomotion/drake/pull/14320
[_#14323]: https://github.com/RobotLocomotion/drake/pull/14323
[_#14324]: https://github.com/RobotLocomotion/drake/pull/14324
[_#14327]: https://github.com/RobotLocomotion/drake/pull/14327
[_#14331]: https://github.com/RobotLocomotion/drake/pull/14331
[_#14338]: https://github.com/RobotLocomotion/drake/pull/14338
[_#14339]: https://github.com/RobotLocomotion/drake/pull/14339
[_#14340]: https://github.com/RobotLocomotion/drake/pull/14340
[_#14342]: https://github.com/RobotLocomotion/drake/pull/14342
[_#14343]: https://github.com/RobotLocomotion/drake/pull/14343
[_#14345]: https://github.com/RobotLocomotion/drake/pull/14345
[_#14347]: https://github.com/RobotLocomotion/drake/pull/14347
[_#14348]: https://github.com/RobotLocomotion/drake/pull/14348
[_#14350]: https://github.com/RobotLocomotion/drake/pull/14350
[_#14351]: https://github.com/RobotLocomotion/drake/pull/14351
[_#14352]: https://github.com/RobotLocomotion/drake/pull/14352
[_#14353]: https://github.com/RobotLocomotion/drake/pull/14353
[_#14356]: https://github.com/RobotLocomotion/drake/pull/14356
[_#14357]: https://github.com/RobotLocomotion/drake/pull/14357
[_#14358]: https://github.com/RobotLocomotion/drake/pull/14358
[_#14359]: https://github.com/RobotLocomotion/drake/pull/14359
[_#14360]: https://github.com/RobotLocomotion/drake/pull/14360
[_#14361]: https://github.com/RobotLocomotion/drake/pull/14361
[_#14370]: https://github.com/RobotLocomotion/drake/pull/14370
[_#14372]: https://github.com/RobotLocomotion/drake/pull/14372
[_#14375]: https://github.com/RobotLocomotion/drake/pull/14375
[_#14376]: https://github.com/RobotLocomotion/drake/pull/14376
[_#14377]: https://github.com/RobotLocomotion/drake/pull/14377
[_#14378]: https://github.com/RobotLocomotion/drake/pull/14378
[_#14382]: https://github.com/RobotLocomotion/drake/pull/14382
[_#14388]: https://github.com/RobotLocomotion/drake/pull/14388
[_#14389]: https://github.com/RobotLocomotion/drake/pull/14389
[_#14390]: https://github.com/RobotLocomotion/drake/pull/14390
[_#14392]: https://github.com/RobotLocomotion/drake/pull/14392
[_#14393]: https://github.com/RobotLocomotion/drake/pull/14393
[_#14394]: https://github.com/RobotLocomotion/drake/pull/14394
[_#14395]: https://github.com/RobotLocomotion/drake/pull/14395
[_#14396]: https://github.com/RobotLocomotion/drake/pull/14396
[_#14397]: https://github.com/RobotLocomotion/drake/pull/14397
[_#14398]: https://github.com/RobotLocomotion/drake/pull/14398
[_#14402]: https://github.com/RobotLocomotion/drake/pull/14402
[_#14403]: https://github.com/RobotLocomotion/drake/pull/14403
[_#14404]: https://github.com/RobotLocomotion/drake/pull/14404
[_#14410]: https://github.com/RobotLocomotion/drake/pull/14410
[_#14411]: https://github.com/RobotLocomotion/drake/pull/14411
[_#14413]: https://github.com/RobotLocomotion/drake/pull/14413
[_#14414]: https://github.com/RobotLocomotion/drake/pull/14414
[_#14415]: https://github.com/RobotLocomotion/drake/pull/14415
[_#14416]: https://github.com/RobotLocomotion/drake/pull/14416
[_#14417]: https://github.com/RobotLocomotion/drake/pull/14417
[_#14418]: https://github.com/RobotLocomotion/drake/pull/14418
[_#14420]: https://github.com/RobotLocomotion/drake/pull/14420
[_#14428]: https://github.com/RobotLocomotion/drake/pull/14428
[_#14429]: https://github.com/RobotLocomotion/drake/pull/14429
[_#14432]: https://github.com/RobotLocomotion/drake/pull/14432
[_#14438]: https://github.com/RobotLocomotion/drake/pull/14438
[_#14439]: https://github.com/RobotLocomotion/drake/pull/14439
[_#14441]: https://github.com/RobotLocomotion/drake/pull/14441
[_#14442]: https://github.com/RobotLocomotion/drake/pull/14442
[_#14443]: https://github.com/RobotLocomotion/drake/pull/14443
[_#14444]: https://github.com/RobotLocomotion/drake/pull/14444
[_#14446]: https://github.com/RobotLocomotion/drake/pull/14446
[_#14454]: https://github.com/RobotLocomotion/drake/pull/14454

{% comment %}
Current oldest_commit b0b75133ad6de545f6634e5380878c4b706e15dc (exclusive).
Current newest_commit 2862d87c99ee0fa35b331ccc25f26ec3a85ceabf (inclusive).
{% endcomment %}
