---
title: Drake v0.17.0
date: 2020-04-21
released: 2020-04-21
---

# Announcements


<div class="warning" markdown="1">
On macOS, Drake now only supports Python 3.8.  Users **must** read
[#13097][_#13097] for upgrade instructions.

When paths are set incorrectly, you will see an error such as this:

```
ImportError: Python version mismatch: module was compiled for Python 3.8, but the interpreter version is incompatible: 3.7.7
```
</div>

* We've made substantial enhancements to Drake's integrators (including
  documentation, configuration, dense output, and symbolic expressions) as well
  as the trajectory family of data types.
* We've added new multibody plant primitives (ball rpy joint, bushing force
  element, door hinge force element) and added added a bit more SDF and URDF
  parsing support.
* RigidBodyPlant and all of the drake "attic" is scheduled for removal on
  2020-09-01 ([#12158][_#12158], [#13030][_#13030]).
  * Please see [#12158][_#12158] for details of the timeline, and let us know if this
    will cause a problem.
* DrakeMockLcm is now just a simple alias for the memq:// provider ([#13028][_#13028])

# Breaking Changes since v0.16.1

These are breaking changes that did not undergo a deprecation period:

* PiecewisePolynomial multiplication operator is no longer coefficient-wise
  ([#4854][_#4854], [#13072][_#13072])
* PiecewisePolynomial constant trajectory is now ∀t ∈ [-∞, ∞] not just [0, ∞] ([#13096][_#13096])
* PiecewiseTrajectory::value virtual method is now pass-by-const-reference;
  classes that override it will need rework; callers are unchanged ([#12986][_#12986])
* PiecewiseTrajectory tolerance for successive segments is now machine epsilon
  instead of 1e-10 ([#13045][_#13045])
* Integrators' dense output representation is now PiecewiseTrajectory
  ([#13008][_#13008])
* IntegratorBase::DoDenseStep is no longer virtual ([#13045][_#13045])
* lcmt_jaco_status message now has external torque fields  ([#13017][_#13017])
* WitnessFunction constructor has changed; users should not be using this
  constructor anyway ([#12894][_#12894])
* DrakeLcmInterface has a new pure virtual method; users should not be directly
  inheriting from this class anyway ([#13051][_#13051])

# Changes since v0.16.1:

## Dynamical Systems

New features

* Integrators
  * Add doxygen group for our suite of integrators ([#12900][_#12900])
  * Add simulator_flags configuration helper to select an integrator ([#13013][_#13013])
  * Add support for starting from negative times ([#13061][_#13061])
  * Add error control to Velocity-Implicit Euler Integrator ([#12528][_#12528], [#12760][_#12760])
  * Add symbolic expression support to ExplicitEulerIntegrator and RungeKutta2Integrator ([#12922][_#12922], [#12919][_#12919])
  * Replace integrators' DenseOutput with PiecewiseTrajectory ([#13008][_#13008])
  * Dense integration works with witness isolation ([#13045][_#13045])
  * Add Automatic Differentiated Jacobians to Velocity-Implicit Euler Integrator ([#12967][_#12967])
* Trajectories
  * Add symbolic::IsAffine ([#12933][_#12933])
  * Add Polynomial::SetIndeterminates ([#12902][_#12902])
  * Add Polynomial::CoefficientsAlmostEqual ([#12853][_#12853])
  * Add PiecewisePolynomial::ScaleTime and PiecewisePolynomial::ReverseTime ([#12966][_#12966])
  * Add PiecewisePolynomial::Reshape ([#13062][_#13062])
  * Add derivative-at-a-point methods to Polynomial, PiecewisePolynomial ([#12951][_#12951])
  * Support default scalars in Polynomial, PiecewiseTrajectory, PiecewisePolynomial ([#12973][_#12973], [#12986][_#12986], [#12991][_#12991], [#13076][_#13076])
  * Add Trajectory::vector_values ([#12855][_#12855])
  * Construct HermitianDenseOutput from PiecewisePolynomial ([#12952][_#12952], [#12957][_#12957], [#13006][_#13006])
  * Add BsplineBasis and BsplineTrajectory ([#11990][_#11990])
  * PiecewisePolynomial multiplication operator is no longer coefficient-wise ([#4854][_#4854], [#13072][_#13072])
  * PiecewisePolynomial constant trajectory is now ∀t ∈ [-∞, ∞] not just [0, ∞] ([#13096][_#13096])
* Controllers
  * Add utility to "balance" two quadratic forms and uses it in RegionOfAttraction ([#12875][_#12875], [#12882][_#12882])
  * Support region of attraction when Vdot is indefinite at the origin ([#12864][_#12864])
  * Add the "star" region of attraction test ([#12881][_#12881])
  * Add finite horizon linear quadratic regulator (first version -- continuous-time only, Q and R are time-invariant) ([#13078][_#13078])

Fixes

* Fix SymbolicVectorSystem autodiff when some derivatives are empty ([#13077][_#13077])

## Mathematical Program

New features

* Add MathematicalProgram::AddConstraint(Eigen::Matrix<Formula>) ([#12858][_#12858])
* Add MathematicalProgram::MakePolynomial ([#12847][_#12847])
* Add MathematicalProgram::Reparse for polynomials taken as arguments ([#12902][_#12902])
* Add dual solution to OsqpSolverDetails ([#12916][_#12916])
* Add DrakeSolverOption ([#12884][_#12884])
* Add AddLogarithmicSos1Constraint overload with num_lambda ([#13043][_#13043])

Fixes

* Add MakeSolver to mathematical program tutorial ([#12885][_#12885])
* Add default std::nullopt arguments to SolverBase::Solve ([#12866][_#12866])
* Check x_init size for all solvers ([#12995][_#12995])
* Check constraint bounds size ([#13004][_#13004])
* Mention naive branch-and-bound solver in documentation ([#13090][_#13090])

## Multibody Dynamics

New features

* Add PointToPointDistanceConstraint ([#12896][_#12896])
* InverseKinematics allows ignoring joint limits in the constructor ([#12872][_#12872])
* Add missing energy and power overrides to MultibodyPlant ([#12895][_#12895], [#12955][_#12955])
* Add CoM methods to MultibodyPlant ([#12839][_#12839])
* Parse joint effort limits from URDF ([#12863][_#12863])
* Parse revolute joint <spring_stiffness> and <spring_reference> from SDF ([#12992][_#12992])
* Add BallRpyJoint ([#13039][_#13039])
* Enable mutating a Joint's position limits ([#13039][_#13039])
* Allow a geometry to target a renderer ([#13053][_#13053])
* Preliminary steps to introduce new RenderEngine implementation based on direct OpenGl calls
  ([#12850][_#12850], [#12963][_#12963], [#12964][_#12964])
* New ForceElement implementations
  * Add bushing force element with 3D rotational (roll-pitch-yaw) and translational stiffness and damping ([#11946][_#11946], [#13001][_#13001])
  * Add a door hinge force element ([#12812][_#12812], [#12930][_#12930], [#12960][_#12960])
* New hydroelastic contact model in progress ([#12975][_#12975], [#12901][_#12901], [#12954][_#12954], [#12860][_#12860],
  [#12998][_#12998], [#12976][_#12976], [#12909][_#12909], [#12820][_#12820], [#12935][_#12935], [#12806][_#12806], [#12932][_#12932])
  * Still only experimental
  * Improve performance
  * Improve architecture

Fixes

* Fix ABI::IsPhysicallyValid() to avoid false negatives ([#12879][_#12879])
* Fix HydroelasticContactInfoAndBodySpatialForces runtime hash warning ([#12953][_#12953])
* Modify cube texture coordinate generation so textures stretch across faces ([#12972][_#12972])
* Remove *implicit* converting copy constructors from MultibodyPlant's and SceneGraph internals ([#12891][_#12891])

## Miscellaneous features and fixes

* Add hand/arm only jaco 7dof URDFs, along with sphere collision versions ([#13007][_#13007])
* Add external torque fields for the jaco status message ([#13017][_#13017])
* Add a drake-ified version of the Franka Panda arm ([#13012][_#13012])
* Add some useful functions to manipulation/util ([#13015][_#13015])
* Add pyplot to geometry_inspector ([#12918][_#12918])
* Add yaml support for merge keys ([#12924][_#12924])
* Replace custom DrakeMockLcm implementation with memq ([#13028][_#13028], [#13051][_#13051])

## pydrake bindings

* pydrake.examples.pendulum.PendulumInput.with_tau ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumParams.with_damping ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumParams.with_gravity ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumParams.with_length ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumParams.with_mass ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumPlant.get_mutable_parameters ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumPlant.get_mutable_state ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumPlant.get_parameters ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumPlant.get_state ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumState.with_theta ([#12940][_#12940])
* pydrake.examples.pendulum.PendulumState.with_thetadot ([#12940][_#12940])
* pydrake.examples.rimless_wheel.RimlessWheel.calc_alpha ([#13048][_#13048])
* pydrake.multibody.plant.MultibodyPlant.AddJointActuator ([#13092][_#13092])
* pydrake.multibody.plant.MultibodyPlant.HasJointActuatorNamed ([#13100][_#13100])
* pydrake.multibody.plant.MultibodyPlant.get_generalized_acceleration_output_port ([#12883][_#12883])
* pydrake.multibody.plant.MultibodyPlant.get_generalized_acceleration_output_port ([#12883][_#12883])
* pydrake.multibody.plant.MultibodyPlant.get_reaction_forces_output_port ([#12883][_#12883])
* pydrake.multibody.plant.MultibodyPlant.num_force_elements ([#13094][_#13094])
* pydrake.multibody.plant.MultibodyPlant.set_penetration_tolerance ([#13094][_#13094])
* pydrake.multibody.tree.Body.is_floating ([#13094][_#13094])
* pydrake.solvers.branch_and_bound.MixedIntegerBranchAndBound ([#13002][_#13002])
* pydrake.solvers.mathematicalprogram.MathematicalProgram.generic_constraints ([#13005][_#13005])
* pydrake.solvers.mathematicalprogram.MathematicalProgram.generic_costs ([#13005][_#13005])
* pydrake.solvers.mixed_integer_optimization_util.AddLogarithmicSos2Constraint ([#13029][_#13029])
* pydrake.solvers.mixed_integer_optimization_util.AddSos2Constraint ([#13029][_#13029])
* pydrake.symbolic.Expression.is_polynomial ([#12854][_#12854])
* pydrake.systems.analysis.IntegratorBase for more scalar types ([#12922][_#12922])
* pydrake.systems.analysis.IntegratorBase.StartDenseIntegration ([#13044][_#13044])
* pydrake.systems.analysis.IntegratorBase.StopDenseIntegration ([#13044][_#13044])
* pydrake.systems.analysis.IntegratorBase.get_dense_output ([#13044][_#13044])
* pydrake.systems.analysis.RungeKutta2Integrator for more scalar types ([#12922][_#12922])
* pydrake.systems.analysis.RungeKutta3Integrator for more scalar types ([#12922][_#12922])
* pydrake.systems.analysis.Simulator for more scalar types ([#12922][_#12922])
* pydrake.systems.analysis.Simulator.get_actual_realtime_rate ([#12920][_#12920])
* pydrake.systems.analysis.Simulator.get_target_realtime_rate ([#12920][_#12920])
* pydrake.systems.framework.ContinuousState.CopyToVector ([#12865][_#12865])
* pydrake.systems.lcm.LcmInterfaceSystem ([#13067][_#13067], [#13075][_#13075])

New features

* Add Python 3.8 support for macOS ([#13035][_#13035])
* Add SystemSliders Tkinter-based controller for vector input ports ([#12925][_#12925])
* Add ConnectPlanarSceneGraphVisualizer sugar ([#12961][_#12961])

Fixes

* API docs now show constructors first ([#12787][_#12787], [#12910][_#12910], [#12921][_#12921])
* Find fallback obj files in PlanarSceneGraphVisualizer ([#12917][_#12917])
* Fix meshcat name parsing ([#13018][_#13018])
* Improve args and doc for pyplot_visualizer ([#12915][_#12915])
* Plot sub-level sets in pydrake.visualization.plotting ([#12854][_#12854])
* Extend pydrake.systems.Simulator.reset_integrator's deprecation window ([#13013][_#13013])

## Build system and dependencies

* Use Python 3.8 on macOS ([#13031][_#13031])
* Upgrade recommended Bazel version to 3.0 ([#13032][_#13032])
* Add new dependency on libx11-dev on Ubuntu; no change on macOS ([#12862][_#12862])
* Add new dependency on ros_xacro ([#13022][_#13022])
* Upgrade bazel_skylib to latest release 0.9.0 ([#12978][_#12978])
* Upgrade buildifier to latest release 2.2.1 ([#12977][_#12977])
* Upgrade dreal to latest release 4.20.03.4 ([#12905][_#12905])
* Upgrade ghc_filesystem to latest release 1.3.2 ([#12979][_#12979])
* Upgrade meshcat to latest commit ([#12993][_#12993])
* Upgrade meshcat_python to latest commit ([#12993][_#12993])
* Upgrade pybind11 to latest commit ([#13027][_#13027], [#13044][_#13044])
* Upgrade rules_pkg to latest release 0.2.5 ([#12978][_#12978])
* Upgrade rules_python to latest commit ([#12978][_#12978])
* Annotate repository rules with configure=True ([#12988][_#12988])
* Fix macOS cask rename for DejaVu fonts ([#13070][_#13070], [#13098][_#13098])
* Fix drake_bazel_installed use in docker ([#13016][_#13016])
* Fix pkg-config problems on macOS ([#13019][_#13019])

## Newly-deprecated APIs

* `::Polynomial<T>` ([#12946][_#12946])
  * Use drake::Polynomial.
* ::Polynomiald ([#12946][_#12946])
  * Use drake::Polynomiald.
* `::TrigPoly<T>` ([#12946][_#12946])
  * Use drake::TrigPoly.
* ::TrigPolyd ([#12946][_#12946])
  * Use drake::TrigPolyd.
* :: VectorXPoly ([#12946][_#12946])
  * Use drake::VectorXPoly.
* ::VectorXTrigPoly ([#12946][_#12946])
  * Use drake::VectorXTrigPoly.
* drake::systems::AntiderivativeFunction::SpecifiedValues ([#12931][_#12931])
  * Use drake::systems::AntiderivativeFunction::IntegrableFunctionContext.
* drake::symbolic::Expression::ToPolynomial ([#12950][_#12950])
  * Use drake::Polynomial::FromExpression.
* drake::systems::InitialValueProblem::SpecifiedValues ([#12931][_#12931])
  * Use drake::systems::InitialValueProblem::OdeContext.
* drake::systems::InitialValueProblem::ODEFunction ([#12931][_#12931])
  * Use drake::systems::InitialValueProblem::OdeFunction.
* drake::systems::ScalarInitialValueProblem::SpecifiedValues ([#12931][_#12931])
  * Use drake::systems::InitialValueProblem::ScalarOdeContext.
* drake::systems::ScalarInitialValueProblem::ScalarODEFunction ([#12931][_#12931])
  * Use drake::systems::ScalarInitialValueProblem::ScalarOdeFunction.
* drake::trajectories::PiecewisePolynomial::Cubic ([#12939][_#12939])
  * Use drake::trajectories::PiecewisePolynomial::CubicWithContinuousSecondDerivatives or drake::trajectories::PiecewisePolynomial::CubicHermite.
* drake::trajectories::PiecewisePolynomial::Pchip ([#12939][_#12939])
  * Use drake::trajectories::PiecewisePolynomial::CubicShapePreserving.
* `drake::trajectories::PiecewisePolynomial<T>::PolynomialType` ([#12991][_#12991])
  * Use drake::trajectories::Polynomial<T>.
* drake::trajectories::PiecewiseQuaternionSlerp::get_quaternion_knots ([#12939][_#12939])
  * Use drake::trajectories::PiecewiseQuaternionSlerp::get_quaternion_samples.

## Removal of deprecated items

* drake::common::NewPythonVariable ([#12442][_#12442], [#12974][_#12974])
* pydrake.systems.pyplot_visualizer.PyPlotVisualizer.start_recording(show) ([#12974][_#12974])

# Notes

This release provides
[pre-compiled binaries](https://github.com/RobotLocomotion/drake/releases/tag/v0.17.0)
named ``drake-20200421-{bionic|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.

[_#11946]: https://github.com/RobotLocomotion/drake/pull/11946
[_#11990]: https://github.com/RobotLocomotion/drake/pull/11990
[_#12158]: https://github.com/RobotLocomotion/drake/pull/12158
[_#12442]: https://github.com/RobotLocomotion/drake/pull/12442
[_#12528]: https://github.com/RobotLocomotion/drake/pull/12528
[_#12760]: https://github.com/RobotLocomotion/drake/pull/12760
[_#12787]: https://github.com/RobotLocomotion/drake/pull/12787
[_#12806]: https://github.com/RobotLocomotion/drake/pull/12806
[_#12812]: https://github.com/RobotLocomotion/drake/pull/12812
[_#12820]: https://github.com/RobotLocomotion/drake/pull/12820
[_#12839]: https://github.com/RobotLocomotion/drake/pull/12839
[_#12847]: https://github.com/RobotLocomotion/drake/pull/12847
[_#12850]: https://github.com/RobotLocomotion/drake/pull/12850
[_#12853]: https://github.com/RobotLocomotion/drake/pull/12853
[_#12854]: https://github.com/RobotLocomotion/drake/pull/12854
[_#12855]: https://github.com/RobotLocomotion/drake/pull/12855
[_#12858]: https://github.com/RobotLocomotion/drake/pull/12858
[_#12860]: https://github.com/RobotLocomotion/drake/pull/12860
[_#12862]: https://github.com/RobotLocomotion/drake/pull/12862
[_#12863]: https://github.com/RobotLocomotion/drake/pull/12863
[_#12864]: https://github.com/RobotLocomotion/drake/pull/12864
[_#12865]: https://github.com/RobotLocomotion/drake/pull/12865
[_#12866]: https://github.com/RobotLocomotion/drake/pull/12866
[_#12872]: https://github.com/RobotLocomotion/drake/pull/12872
[_#12875]: https://github.com/RobotLocomotion/drake/pull/12875
[_#12879]: https://github.com/RobotLocomotion/drake/pull/12879
[_#12881]: https://github.com/RobotLocomotion/drake/pull/12881
[_#12882]: https://github.com/RobotLocomotion/drake/pull/12882
[_#12883]: https://github.com/RobotLocomotion/drake/pull/12883
[_#12884]: https://github.com/RobotLocomotion/drake/pull/12884
[_#12885]: https://github.com/RobotLocomotion/drake/pull/12885
[_#12891]: https://github.com/RobotLocomotion/drake/pull/12891
[_#12894]: https://github.com/RobotLocomotion/drake/pull/12894
[_#12895]: https://github.com/RobotLocomotion/drake/pull/12895
[_#12896]: https://github.com/RobotLocomotion/drake/pull/12896
[_#12900]: https://github.com/RobotLocomotion/drake/pull/12900
[_#12901]: https://github.com/RobotLocomotion/drake/pull/12901
[_#12902]: https://github.com/RobotLocomotion/drake/pull/12902
[_#12905]: https://github.com/RobotLocomotion/drake/pull/12905
[_#12909]: https://github.com/RobotLocomotion/drake/pull/12909
[_#12910]: https://github.com/RobotLocomotion/drake/pull/12910
[_#12915]: https://github.com/RobotLocomotion/drake/pull/12915
[_#12916]: https://github.com/RobotLocomotion/drake/pull/12916
[_#12917]: https://github.com/RobotLocomotion/drake/pull/12917
[_#12918]: https://github.com/RobotLocomotion/drake/pull/12918
[_#12919]: https://github.com/RobotLocomotion/drake/pull/12919
[_#12920]: https://github.com/RobotLocomotion/drake/pull/12920
[_#12921]: https://github.com/RobotLocomotion/drake/pull/12921
[_#12922]: https://github.com/RobotLocomotion/drake/pull/12922
[_#12924]: https://github.com/RobotLocomotion/drake/pull/12924
[_#12925]: https://github.com/RobotLocomotion/drake/pull/12925
[_#12930]: https://github.com/RobotLocomotion/drake/pull/12930
[_#12931]: https://github.com/RobotLocomotion/drake/pull/12931
[_#12932]: https://github.com/RobotLocomotion/drake/pull/12932
[_#12933]: https://github.com/RobotLocomotion/drake/pull/12933
[_#12935]: https://github.com/RobotLocomotion/drake/pull/12935
[_#12939]: https://github.com/RobotLocomotion/drake/pull/12939
[_#12940]: https://github.com/RobotLocomotion/drake/pull/12940
[_#12946]: https://github.com/RobotLocomotion/drake/pull/12946
[_#12950]: https://github.com/RobotLocomotion/drake/pull/12950
[_#12951]: https://github.com/RobotLocomotion/drake/pull/12951
[_#12952]: https://github.com/RobotLocomotion/drake/pull/12952
[_#12953]: https://github.com/RobotLocomotion/drake/pull/12953
[_#12954]: https://github.com/RobotLocomotion/drake/pull/12954
[_#12955]: https://github.com/RobotLocomotion/drake/pull/12955
[_#12957]: https://github.com/RobotLocomotion/drake/pull/12957
[_#12960]: https://github.com/RobotLocomotion/drake/pull/12960
[_#12961]: https://github.com/RobotLocomotion/drake/pull/12961
[_#12963]: https://github.com/RobotLocomotion/drake/pull/12963
[_#12964]: https://github.com/RobotLocomotion/drake/pull/12964
[_#12966]: https://github.com/RobotLocomotion/drake/pull/12966
[_#12967]: https://github.com/RobotLocomotion/drake/pull/12967
[_#12972]: https://github.com/RobotLocomotion/drake/pull/12972
[_#12973]: https://github.com/RobotLocomotion/drake/pull/12973
[_#12974]: https://github.com/RobotLocomotion/drake/pull/12974
[_#12975]: https://github.com/RobotLocomotion/drake/pull/12975
[_#12976]: https://github.com/RobotLocomotion/drake/pull/12976
[_#12977]: https://github.com/RobotLocomotion/drake/pull/12977
[_#12978]: https://github.com/RobotLocomotion/drake/pull/12978
[_#12979]: https://github.com/RobotLocomotion/drake/pull/12979
[_#12986]: https://github.com/RobotLocomotion/drake/pull/12986
[_#12988]: https://github.com/RobotLocomotion/drake/pull/12988
[_#12991]: https://github.com/RobotLocomotion/drake/pull/12991
[_#12992]: https://github.com/RobotLocomotion/drake/pull/12992
[_#12993]: https://github.com/RobotLocomotion/drake/pull/12993
[_#12995]: https://github.com/RobotLocomotion/drake/pull/12995
[_#12998]: https://github.com/RobotLocomotion/drake/pull/12998
[_#13001]: https://github.com/RobotLocomotion/drake/pull/13001
[_#13002]: https://github.com/RobotLocomotion/drake/pull/13002
[_#13004]: https://github.com/RobotLocomotion/drake/pull/13004
[_#13005]: https://github.com/RobotLocomotion/drake/pull/13005
[_#13006]: https://github.com/RobotLocomotion/drake/pull/13006
[_#13007]: https://github.com/RobotLocomotion/drake/pull/13007
[_#13008]: https://github.com/RobotLocomotion/drake/pull/13008
[_#13012]: https://github.com/RobotLocomotion/drake/pull/13012
[_#13013]: https://github.com/RobotLocomotion/drake/pull/13013
[_#13015]: https://github.com/RobotLocomotion/drake/pull/13015
[_#13016]: https://github.com/RobotLocomotion/drake/pull/13016
[_#13017]: https://github.com/RobotLocomotion/drake/pull/13017
[_#13018]: https://github.com/RobotLocomotion/drake/pull/13018
[_#13019]: https://github.com/RobotLocomotion/drake/pull/13019
[_#13022]: https://github.com/RobotLocomotion/drake/pull/13022
[_#13027]: https://github.com/RobotLocomotion/drake/pull/13027
[_#13028]: https://github.com/RobotLocomotion/drake/pull/13028
[_#13029]: https://github.com/RobotLocomotion/drake/pull/13029
[_#13030]: https://github.com/RobotLocomotion/drake/pull/13030
[_#13031]: https://github.com/RobotLocomotion/drake/pull/13031
[_#13032]: https://github.com/RobotLocomotion/drake/pull/13032
[_#13035]: https://github.com/RobotLocomotion/drake/pull/13035
[_#13039]: https://github.com/RobotLocomotion/drake/pull/13039
[_#13043]: https://github.com/RobotLocomotion/drake/pull/13043
[_#13044]: https://github.com/RobotLocomotion/drake/pull/13044
[_#13045]: https://github.com/RobotLocomotion/drake/pull/13045
[_#13048]: https://github.com/RobotLocomotion/drake/pull/13048
[_#13051]: https://github.com/RobotLocomotion/drake/pull/13051
[_#13053]: https://github.com/RobotLocomotion/drake/pull/13053
[_#13061]: https://github.com/RobotLocomotion/drake/pull/13061
[_#13062]: https://github.com/RobotLocomotion/drake/pull/13062
[_#13067]: https://github.com/RobotLocomotion/drake/pull/13067
[_#13070]: https://github.com/RobotLocomotion/drake/pull/13070
[_#13072]: https://github.com/RobotLocomotion/drake/pull/13072
[_#13075]: https://github.com/RobotLocomotion/drake/pull/13075
[_#13076]: https://github.com/RobotLocomotion/drake/pull/13076
[_#13077]: https://github.com/RobotLocomotion/drake/pull/13077
[_#13078]: https://github.com/RobotLocomotion/drake/pull/13078
[_#13090]: https://github.com/RobotLocomotion/drake/pull/13090
[_#13092]: https://github.com/RobotLocomotion/drake/pull/13092
[_#13094]: https://github.com/RobotLocomotion/drake/pull/13094
[_#13096]: https://github.com/RobotLocomotion/drake/pull/13096
[_#13097]: https://github.com/RobotLocomotion/drake/pull/13097
[_#13098]: https://github.com/RobotLocomotion/drake/pull/13098
[_#13100]: https://github.com/RobotLocomotion/drake/pull/13100
[_#4854]: https://github.com/RobotLocomotion/drake/pull/4854

{% comment %}
Current oldest_commit b2293bc15d192473dbe76e48e9861c860c739549 (inclusive).
Current newest_commit 4f7475f1fae564fef30ba82111f962a4e9f119b2 (inclusive).
{% endcomment %}
