Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to drake v0.27.0 #33

Closed
agalbachicar opened this issue Mar 2, 2021 · 7 comments
Closed

Update to drake v0.27.0 #33

agalbachicar opened this issue Mar 2, 2021 · 7 comments
Assignees

Comments

@agalbachicar
Copy link
Collaborator

Just what the title states.

@agalbachicar agalbachicar self-assigned this Mar 2, 2021
@agalbachicar
Copy link
Collaborator Author

There is no problem with all mali* packages but delphyne should be able to migrate only up to v0.22.0 due to this PR: RobotLocomotion/drake#13889 where the attic is removed and with it several APIs.

In drake v.0.19.0 (just one ahead of the current state), several RigidBody APIs are moved to the attic.

@agalbachicar
Copy link
Collaborator Author

Deprecated APIs used in delphyne:

  • drake/multibody/joints/floating_base_types.h
  • drake/multibody/parsers/urdf_parser.h
  • drake/multibody/rigid_body_plant/create_load_robot_message.h
  • drake/multibody/shapes/visual_element.h
  • drake/systems/rendering/drake_visualizer_client.h

Which affects files in:

  • backend
  • systems
  • visualization

@scpeters
Copy link
Collaborator

scpeters commented Mar 6, 2021

I think maliput/delphyne#758 took care of most of the deprecated APIs, except for one more instance of drake/systems/rendering/drake_visualizer_client.h in src/visualization/box_car_vis.cc. The only API in that file is MakeGeometryData() that returns lcmt_viewer_geometry_data.

There is a tantalizing bit of code in geometry/geometry_visualization.cc, which is another function named MakeGeometryData that returns lcmt_viewer_geometry_data. It uses a helper class called ShapeToLcm. Sadly, both ShapeToLcm and MakeGeometryData from that file are not part of a public API. 😢

@scpeters
Copy link
Collaborator

scpeters commented Mar 6, 2021

I think ToyotaResearchInstitute/delphyne#758 took care of most of the deprecated APIs, except for one more instance of drake/systems/rendering/drake_visualizer_client.h in src/visualization/box_car_vis.cc. The only API in that file is MakeGeometryData() that returns lcmt_viewer_geometry_data.

There is a tantalizing bit of code in geometry/geometry_visualization.cc, which is another function named MakeGeometryData that returns lcmt_viewer_geometry_data. It uses a helper class called ShapeToLcm. Sadly, both ShapeToLcm and MakeGeometryData from that file are not part of a public API. 😢

I'm not sure that we are using the BoxCarVis class anywhere aside from some tests, so one option is to disable that code if it is too difficult to port it.

@agalbachicar
Copy link
Collaborator Author

Thanks @scpeters for the report. I've considered different options and I think the best path forward is to copy the MakeGeometryData() function for boxes as it is proposed in maliput/delphyne#765

I've also created a ticket in delphyne to move BoxCarVis to test utilities --> maliput/delphyne#766

@agalbachicar
Copy link
Collaborator Author

agalbachicar commented Mar 16, 2021

More changes are required:

@scpeters
Copy link
Collaborator

While reviewing maliput/delphyne#767, I noticed some additional deprecation warnings for passing unique pointers into DeclareAbstractState (also from RobotLocomotion/drake#14453):

src/systems/mobil_planner.cc:54:5: warning: ‘drake::systems::AbstractStateIndex drake::systems::LeafSystem<T>::DeclareAbstractState(std::unique_ptr<drake::AbstractValue>) [with T = double; drake::systems::AbstractStateIndex = drake::TypeSafeIndex<drake::systems::AbstractStateTag>]’ is deprecated: 
DRAKE DEPRECATED: Pass the abstract_state by value, not by-unique-ptr
The deprecated code will be removed from Drake on or after 2021-04-01. [-Wdeprecated-declarations]
     this->DeclareAbstractState(drake::AbstractValue::Make<RoadPosition>(RoadPosition()));
     ^~~~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants