forked from RobotLocomotion/drake
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[doc] Add release notes v1.23.0 (RobotLocomotion#20540)
- Loading branch information
1 parent
6955a46
commit 48608ec
Showing
2 changed files
with
304 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,298 @@ | ||
--- | ||
title: Drake v1.23.0 | ||
date: 2023-11-17 | ||
released: 2023-11-17 | ||
--- | ||
|
||
# Announcements | ||
|
||
* Drake now offers experimental support for the | ||
[Clarabel](https://github.com/oxfordcontrol/Clarabel.cpp) | ||
solver ([#20375][_#20375], [#20536][_#20536], [#20475][_#20475]). | ||
* Our | ||
[ClarabelSolver](https://drake.mit.edu/doxygen_cxx/classdrake_1_1solvers_1_1_clarabel_solver.html) | ||
wrapper supports quadratic/linear costs and | ||
linear/second-order/exponential-cone/positive-semidefinite constraints. | ||
* This feature is not available in our pre-compiled binary releases. To try it, | ||
you must build from source using Bazel with `--define=WITH_CLARABEL=ON`. | ||
* ChooseBestSolver doesn't select ClarabelSolver. To try it, you must invoke | ||
the solver directly. | ||
* Per our support policy schedule, macOS Monterey on arm64 is no longer | ||
supported ([#20511][_#20511]). | ||
|
||
# Breaking changes since v1.22.0 | ||
|
||
* None | ||
|
||
Refer to our [Drake Stability Guidelines](/stable.html) for our policy | ||
on API changes. | ||
|
||
# Changes since v1.22.0 | ||
|
||
## Dynamical Systems | ||
|
||
New features | ||
|
||
* Provide image-processing systems in C++ ([#20488][_#20488]) | ||
* Update ImageWriter to add forced publish event ([#20460][_#20460]) | ||
|
||
Fixes | ||
|
||
* None | ||
|
||
## Mathematical Program | ||
|
||
<!-- <relnotes for solvers go here> --> | ||
|
||
New features | ||
|
||
* Add ClarabelSolver ([#20375][_#20375], [#20536][_#20536], [#20475][_#20475]) | ||
* Add AffineBall as subclass of ConvexSet to represent bounded ellipsoidal convex sets that may not be full-dimensional ([#20038][_#20038]) | ||
* Allow linear constraints to be sparse ([#20361][_#20361]) | ||
* Allow conversion between Hyperellipsoid and AffineBall ([#20040][_#20040]) | ||
* Add ability to tighten and relax positive semi-definite (PSD) constraints as diagonally dominant constraints (DD), scaled diagonally dominant (SDD) constraints, and their dual ([#20398][_#20398]) | ||
* Add log(det(X)) >= lower to MathematicalProgram ([#20411][_#20411]) | ||
* Add AffineBall::MinimumVolumeCircumscribedEllipsoid (#20399) ([#20399][_#20399]) | ||
* Add bounding_region to IrisOptions ([#20417][_#20417]) | ||
* Add MonomialBasis for a map from Variables to its degree ([#20523][_#20523]) | ||
|
||
Fixes | ||
|
||
* None | ||
|
||
## Multibody Dynamics and Geometry | ||
|
||
<!-- <relnotes for geometry,multibody go here> --> | ||
|
||
New features | ||
|
||
* Add per model instance net actuation output port ([#20549][_#20549]) | ||
* Support .vtk meshes in CalcSpatialInertia() ([#20539][_#20539]) | ||
* Allow some uses of surface mesh or convex hull for VTK volume mesh files ([#20278][_#20278]) | ||
* Add support for using SDFormat merge-includes with custom parsed models ([#16727][_#16727]) | ||
* Use environment maps in RenderEngineVtk ([#20385][_#20385]) | ||
* Implement net actuation output port for MultibodyPlant ([#20421][_#20421]) | ||
* Add parsing of JointActuator PD controller gains ([#20497][_#20497]) | ||
* Add parsing of custom drake:mimic tag for SDFormat ([#20503][_#20503], [#20551][_#20551]) | ||
|
||
Fixes | ||
|
||
* Fix MuJoCo parser joint kinematics ([#20414][_#20414]) | ||
* Fix actuation input ordering to be ordered by joint actuator index ([#20212][_#20212]) | ||
* Support drake:joint involving links in nested models ([#20381][_#20381]) | ||
* Make coordinate numbering for Weld mobilizers consistent with other mobilizers ([#20428][_#20428]) | ||
* Upgrade meshcat to latest commit ([#20442][_#20442]) | ||
* Fix point contact results store incorrect geometry data ([#20378][_#20378]) | ||
* RenderEngineVtk throws on errors ([#20461][_#20461]) | ||
* Apply upstream VTK changes for a textured capsule ([#20492][_#20492]) | ||
* Correct, test, and document FlattenModelDirectives ([#20438][_#20438]) | ||
* Make weld constraint use active status ([#20530][_#20530]) | ||
* Bugfix model directives ModelInstanceInfo offsets ([#20513][_#20513]) | ||
|
||
## Planning | ||
|
||
<!-- <relnotes for planning go here> --> | ||
|
||
New features | ||
|
||
* Add max clique solver interface and MIP (mixed integer programming)-based max clique solver ([#20401][_#20401]) | ||
* Add continuity constraints to GcsTrajectoryOptimization ([#20441][_#20441]) | ||
* Switch CollisionChecker and VisibilityGraph to use CRU parallel-for API to support non-OpenMP parallel operations ([#20528][_#20528]) | ||
|
||
Fixes | ||
|
||
* None | ||
|
||
## Tutorials and examples | ||
|
||
<!-- <relnotes for examples,tutorials go here> --> | ||
* Adjust tutorial launcher to accommodate Jupyter 6 and 7 ([#20408][_#20408]) | ||
|
||
## Miscellaneous features and fixes | ||
|
||
<!-- <relnotes for common,math,lcm,lcmtypes,manipulation,perception,visualization go here> --> | ||
|
||
* Improve PointCloud::VoxelizedDownSample speed ([#20476][_#20476]) | ||
* Retain default YAML values when parsing a variant ([#20391][_#20391]) | ||
* Fix autodiff gradient in RotationMatrix::NormalizeOrThrow() ([#20406][_#20406]) | ||
* Add rotor inertias to iiwa7 model, fix rotation of inertias for link 2 and link 4 ([#20420][_#20420]) | ||
* Ensure MakeArmControllerModel uses same gravity as incoming plant ([#20513][_#20513]) | ||
|
||
## pydrake bindings | ||
|
||
<!-- <relnotes for bindings go here> --> | ||
|
||
New features | ||
|
||
* Add basic conversion to/from SymPy ([#20117][_#20117], [#20415][_#20415]) | ||
* Bind all image types, ImageFileFormat, and PixelScalar ([#20502][_#20502], [#20508][_#20508]) | ||
|
||
Fixes | ||
|
||
* Fix CompositeTrajectory binding to correctly derive from PiecewiseTrajectory ([#20407][_#20407]) | ||
* Only ship `*.pyi` typestubs for native code, not pure code ([#20403][_#20403]) | ||
* Avoid stubgen timeouts when building from source ([#20403][_#20403]) | ||
* Consolidate modules to decrease download size by about 5% ([#20465][_#20465]) | ||
|
||
## Build system | ||
|
||
<!-- <relnotes for cmake,doc,setup,third_party,tools go here> --> | ||
|
||
* Identify mismatched clang-format-{on,off} comments via linting tools ([#20396][_#20396]) | ||
* Remove macOS Monterey arm64 support ([#20511][_#20511]) | ||
* Precompiled binaries for stable releases now provide the version number instead of the date ([#20532][_#20532]) | ||
|
||
## Build dependencies | ||
|
||
<!-- <relnotes for workspace go here> --> | ||
|
||
* Build libjpeg_turbo_internal from source ([#20343][_#20343]) | ||
* Upgrade abseil_cpp_internal to latest commit ([#20469][_#20469]) | ||
* Upgrade bazel to latest release 6.4.0 ([#20410][_#20410]) | ||
* Upgrade build_bazel_apple_support to latest release 1.11.1 ([#20469][_#20469]) | ||
* Upgrade buildifier to latest release 6.4.0 ([#20543][_#20543]) | ||
* Upgrade clp_internal to latest release 1.17.9 ([#20469][_#20469]) | ||
* Upgrade coinutils_internal to latest release 2.11.10 ([#20469][_#20469]) | ||
* Upgrade common_robotics_utilities to latest commit ([#20374][_#20374], [#20387][_#20387], [#20528][_#20528]) | ||
* Upgrade crate_universe to latest releases ([#20474][_#20474]) | ||
* Upgrade crate__num-traits to 0.2.17 | ||
* Upgrade crate__proc-macro2 to 1.0.69 | ||
* Upgrade crate__syn to 2.0.38 | ||
* Upgrade crate__thiserror to 1.0.50 | ||
* Upgrade crate__thiserror-impl to 1.0.50 | ||
* Upgrade curl_internal to latest release 8.4.0 ([#20472][_#20472]) | ||
* Upgrade dm_control_internal to latest release 1.0.15 ([#20469][_#20469]) | ||
* Upgrade ipopt_internal_fromsource to latest release 3.14.13 ([#20525][_#20525]) | ||
* Upgrade mypy_internal to latest release 1.6.1 ([#20469][_#20469]) | ||
* Upgrade platforms to latest release 0.0.8 ([#20469][_#20469]) | ||
* Upgrade pybind11 fork to latest commit, merging with upstream 2.11.1 ([#20362][_#20362], [#20524][_#20524]) | ||
* Upgrade pycodestyle to latest release 2.11.1 ([#20469][_#20469]) | ||
* Upgrade python_rules to latest release 0.26.0 ([#20473][_#20473]) | ||
* Upgrade rules_rust to latest release 0.30.0 ([#20471][_#20471]) | ||
* Upgrade suitesparse_internal to latest release 7.3.0 ([#20469][_#20469]) | ||
* Upgrade voxelized_geometry_tools to latest commit ([#20374][_#20374], [#20387][_#20387], [#20528][_#20528]) | ||
|
||
## Newly-deprecated APIs | ||
|
||
* ``drake::multibody::MultibodyPlant::GetMutablePositions`` ([#20424][_#20424]) | ||
* Use ``GetPositions`` and ``SetPositions`` instead | ||
* ``drake::multibody::MultibodyPlant::GetMutablePositionsAndVelocities`` ([#20424][_#20424]) | ||
* Use ``GetPositionsAndVelocities`` and ``SetPositionsAndVelocities`` instead | ||
* ``drake::multibody::MultibodyPlant::GetMutableVelocities`` ([#20424][_#20424]) | ||
* Use ``GetVelocities`` and ``SetVelocities`` instead | ||
* ``drake::multibody::Body::floating_velocities_start`` ([#20454][_#20454]) | ||
* Use ``floating_velocities_start_in_v`` instead | ||
* ``@libjpeg`` external ([#20343][_#20343]) | ||
* Please vendor your own dependency. | ||
|
||
## Removal of deprecated items | ||
|
||
* ``@conex`` ([#20463][_#20463]) | ||
* ``@csdp`` ([#20463][_#20463]) | ||
* ``@optitrack_driver`` ([#20463][_#20463]) | ||
* ``@petsc`` ([#20463][_#20463]) | ||
* ``@picosha2`` ([#20463][_#20463]) | ||
* ``@rules_pkg`` ([#20463][_#20463]) | ||
* ``@tinyobjloader`` ([#20463][_#20463]) | ||
* ``@usockets`` ([#20463][_#20463]) | ||
* ``@uwebsockets`` ([#20463][_#20463]) | ||
* ``drake::geometry::optimization::GraphOfConvexSets::AddEdge`` (VertexId overload only) ([#20463][_#20463]) | ||
* ``drake::geometry::optimization::GraphOfConvexSets::RemoveEdge`` (EdgeId overload only) ([#20463][_#20463]) | ||
* ``drake::geometry::optimization::GraphOfConvexSets::RemoveVertex`` (VertexId overload only) ([#20463][_#20463]) | ||
* ``drake::geometry::optimization::GraphOfConvexSets::SolveShortestPath`` (VertexId overload only) ([#20463][_#20463]) | ||
* ``drake::multibody::Body::get_num_flexible_positions`` ([#20427][_#20427]) | ||
* ``drake::multibody::Body::get_num_flexible_velocities`` ([#20427][_#20427]) | ||
* ``drake::multibody::MinimumDistanceConstraint::minimum_distance`` ([#20463][_#20463]) | ||
* ``drake::solvers::FindNonconvexQuadraticCost`` ([#20463][_#20463]) | ||
* ``drake::solvers::MinimumValueConstraint::minimum_value`` ([#20463][_#20463]) | ||
* ``drake::systems::sensors::OptitrackReceiver`` ([#20463][_#20463]) | ||
* ``drake::systems::sensors::OptitrackSender`` ([#20463][_#20463]) | ||
* ``pydrake.manipulation.kuka_iiwa`` ([#20463][_#20463]) | ||
* ``pydrake.manipulation.schunk_wsg`` ([#20463][_#20463]) | ||
* ``pydrake.manipulation.util`` ([#20463][_#20463]) | ||
|
||
# Notes | ||
|
||
|
||
This release provides [pre-compiled binaries](https://github.com/RobotLocomotion/drake/releases/tag/v1.23.0) named | ||
``drake-1.23.0-{focal|jammy|mac|mac-arm64}.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. | ||
|
||
<!-- <begin issue links> --> | ||
[_#16727]: https://github.com/RobotLocomotion/drake/pull/16727 | ||
[_#20038]: https://github.com/RobotLocomotion/drake/pull/20038 | ||
[_#20040]: https://github.com/RobotLocomotion/drake/pull/20040 | ||
[_#20117]: https://github.com/RobotLocomotion/drake/pull/20117 | ||
[_#20212]: https://github.com/RobotLocomotion/drake/pull/20212 | ||
[_#20278]: https://github.com/RobotLocomotion/drake/pull/20278 | ||
[_#20343]: https://github.com/RobotLocomotion/drake/pull/20343 | ||
[_#20361]: https://github.com/RobotLocomotion/drake/pull/20361 | ||
[_#20362]: https://github.com/RobotLocomotion/drake/pull/20362 | ||
[_#20374]: https://github.com/RobotLocomotion/drake/pull/20374 | ||
[_#20375]: https://github.com/RobotLocomotion/drake/pull/20375 | ||
[_#20378]: https://github.com/RobotLocomotion/drake/pull/20378 | ||
[_#20381]: https://github.com/RobotLocomotion/drake/pull/20381 | ||
[_#20385]: https://github.com/RobotLocomotion/drake/pull/20385 | ||
[_#20387]: https://github.com/RobotLocomotion/drake/pull/20387 | ||
[_#20391]: https://github.com/RobotLocomotion/drake/pull/20391 | ||
[_#20396]: https://github.com/RobotLocomotion/drake/pull/20396 | ||
[_#20398]: https://github.com/RobotLocomotion/drake/pull/20398 | ||
[_#20399]: https://github.com/RobotLocomotion/drake/pull/20399 | ||
[_#20401]: https://github.com/RobotLocomotion/drake/pull/20401 | ||
[_#20403]: https://github.com/RobotLocomotion/drake/pull/20403 | ||
[_#20406]: https://github.com/RobotLocomotion/drake/pull/20406 | ||
[_#20407]: https://github.com/RobotLocomotion/drake/pull/20407 | ||
[_#20408]: https://github.com/RobotLocomotion/drake/pull/20408 | ||
[_#20410]: https://github.com/RobotLocomotion/drake/pull/20410 | ||
[_#20411]: https://github.com/RobotLocomotion/drake/pull/20411 | ||
[_#20414]: https://github.com/RobotLocomotion/drake/pull/20414 | ||
[_#20415]: https://github.com/RobotLocomotion/drake/pull/20415 | ||
[_#20417]: https://github.com/RobotLocomotion/drake/pull/20417 | ||
[_#20420]: https://github.com/RobotLocomotion/drake/pull/20420 | ||
[_#20421]: https://github.com/RobotLocomotion/drake/pull/20421 | ||
[_#20424]: https://github.com/RobotLocomotion/drake/pull/20424 | ||
[_#20427]: https://github.com/RobotLocomotion/drake/pull/20427 | ||
[_#20428]: https://github.com/RobotLocomotion/drake/pull/20428 | ||
[_#20438]: https://github.com/RobotLocomotion/drake/pull/20438 | ||
[_#20441]: https://github.com/RobotLocomotion/drake/pull/20441 | ||
[_#20442]: https://github.com/RobotLocomotion/drake/pull/20442 | ||
[_#20454]: https://github.com/RobotLocomotion/drake/pull/20454 | ||
[_#20460]: https://github.com/RobotLocomotion/drake/pull/20460 | ||
[_#20461]: https://github.com/RobotLocomotion/drake/pull/20461 | ||
[_#20463]: https://github.com/RobotLocomotion/drake/pull/20463 | ||
[_#20465]: https://github.com/RobotLocomotion/drake/pull/20465 | ||
[_#20469]: https://github.com/RobotLocomotion/drake/pull/20469 | ||
[_#20471]: https://github.com/RobotLocomotion/drake/pull/20471 | ||
[_#20472]: https://github.com/RobotLocomotion/drake/pull/20472 | ||
[_#20473]: https://github.com/RobotLocomotion/drake/pull/20473 | ||
[_#20474]: https://github.com/RobotLocomotion/drake/pull/20474 | ||
[_#20475]: https://github.com/RobotLocomotion/drake/pull/20475 | ||
[_#20476]: https://github.com/RobotLocomotion/drake/pull/20476 | ||
[_#20488]: https://github.com/RobotLocomotion/drake/pull/20488 | ||
[_#20492]: https://github.com/RobotLocomotion/drake/pull/20492 | ||
[_#20497]: https://github.com/RobotLocomotion/drake/pull/20497 | ||
[_#20502]: https://github.com/RobotLocomotion/drake/pull/20502 | ||
[_#20503]: https://github.com/RobotLocomotion/drake/pull/20503 | ||
[_#20508]: https://github.com/RobotLocomotion/drake/pull/20508 | ||
[_#20511]: https://github.com/RobotLocomotion/drake/pull/20511 | ||
[_#20513]: https://github.com/RobotLocomotion/drake/pull/20513 | ||
[_#20523]: https://github.com/RobotLocomotion/drake/pull/20523 | ||
[_#20524]: https://github.com/RobotLocomotion/drake/pull/20524 | ||
[_#20525]: https://github.com/RobotLocomotion/drake/pull/20525 | ||
[_#20528]: https://github.com/RobotLocomotion/drake/pull/20528 | ||
[_#20530]: https://github.com/RobotLocomotion/drake/pull/20530 | ||
[_#20532]: https://github.com/RobotLocomotion/drake/pull/20532 | ||
[_#20536]: https://github.com/RobotLocomotion/drake/pull/20536 | ||
[_#20539]: https://github.com/RobotLocomotion/drake/pull/20539 | ||
[_#20543]: https://github.com/RobotLocomotion/drake/pull/20543 | ||
[_#20549]: https://github.com/RobotLocomotion/drake/pull/20549 | ||
[_#20551]: https://github.com/RobotLocomotion/drake/pull/20551 | ||
<!-- <end issue links> --> | ||
|
||
<!-- | ||
Current oldest_commit da969f5c8f97e661c6ca9450d0cff0b52a240619 (exclusive). | ||
Current newest_commit 6955a4668b84b133e1c827560083685cd6d39849 (inclusive). | ||
--> |