RobotLocomotion / drake

Model-based design and verification for robotics.
https://drake.mit.edu
Other
3.19k stars 1.24k forks source link

[tools] Remove vector_gen #21439

Closed jwnimmer-tri closed 1 month ago

jwnimmer-tri commented 1 month ago

We don't think using BasicVector subclassing is a good idea anymore, so we'll commit the generated code as it stands today and remove the tool, so no new uses creep in. The tool is not Stable API, so we can remove it without deprecation. Users who still wish to use it are invited to fork (copy) it to their own projects.

Another reason we're dropping this tool is to remove the build-time dependency on pyyaml. We occasionally get reports of people unable to install Drake (e.g., via CMake) because thier python interpreter's native modules aren't working vs install_prereqs. In that light, this should generally improve our cross-platform portability story.

Some of the generated code was Stable API. The old include paths that used the "gen" subdir are now deprecated; users should remove "gen" from their include paths. Even though the examples are not stable, we still deprecate (for public headers) since we needed to do that for some other generated code already.


This change is Reviewable

SeanCurtis-TRI commented 1 month ago

+@SeanCurtis-TRI