gazebo-forks / dart

Dynamic Animation and Robotics Toolkit
http://dartsim.github.io/
BSD 2-Clause "Simplified" License
6 stars 5 forks source link

Cherry-pick upstream PR 1407: Add joint velocity limit constraint support #19

Closed scpeters closed 3 years ago

scpeters commented 3 years ago

This is a cherry-pick of https://github.com/dartsim/dart/pull/1407 that will fix #17.

peci1 commented 3 years ago

Thanks for the super-fast reaction :+1:

Just looking at the diff in changelog, it seems it has picked up some unrelated changes... Other files seem fine.

scpeters commented 3 years ago

There are some test failures. I think we also need dartsim#1371? Otherwise, looks good to me.

I just cherry-picked this

scpeters commented 3 years ago

@azeey the actions fail when building tutorials. have you seen this before?

azeey commented 3 years ago

@azeey the actions fail when building tutorials. have you seen this before?

I have not. I believe the Github action was added in https://github.com/ignition-forks/dart/pull/13 and it looks like those jobs failed too, although, I can't tell if they failed for the same reason. The logs are not available anymore.

scpeters commented 3 years ago

@azeey the actions fail when building tutorials. have you seen this before?

I have not. I believe the Github action was added in #13 and it looks like those jobs failed too, although, I can't tell if they failed for the same reason. The logs are not available anymore.

should we try to fix the action or review with manual testing?

azeey commented 3 years ago

Removing dart/gui/osg/render/render.hpp and dart/gui/osg/osg.hpp from the source fixes the build for me. They were introduced in #16. It looks like there are render.hpp.in and osg.hpp.in that CMake uses to generate these files and right now, the generated files recursively include themselves. Here's an the generated render.hpp:

#include "dart/gui/osg/render/BoxShapeNode.hpp"
#include "dart/gui/osg/render/CapsuleShapeNode.hpp"
#include "dart/gui/osg/render/ConeShapeNode.hpp"
#include "dart/gui/osg/render/CylinderShapeNode.hpp"
#include "dart/gui/osg/render/EllipsoidShapeNode.hpp"
#include "dart/gui/osg/render/HeightmapShapeNode.hpp"
#include "dart/gui/osg/render/LineSegmentShapeNode.hpp"
#include "dart/gui/osg/render/MeshShapeNode.hpp"
#include "dart/gui/osg/render/MultiSphereShapeNode.hpp"
#include "dart/gui/osg/render/PlaneShapeNode.hpp"
#include "dart/gui/osg/render/PointCloudShapeNode.hpp"
#include "dart/gui/osg/render/ShapeNode.hpp"
#include "dart/gui/osg/render/SoftMeshShapeNode.hpp"
#include "dart/gui/osg/render/SphereShapeNode.hpp"
#include "dart/gui/osg/render/VoxelGridShapeNode.hpp"
#include "dart/gui/osg/render/WarningShapeNode.hpp"
#include "dart/gui/osg/render/render.hpp"

Note the last line will end up including itself.

/CC @mjcarroll

scpeters commented 3 years ago

Removing dart/gui/osg/render/render.hpp and dart/gui/osg/osg.hpp from the source fixes the build for me. They were introduced in #16. It looks like there are render.hpp.in and osg.hpp.in that CMake uses to generate these files and right now, the generated files recursively include themselves. Here's an the generated render.hpp:

#include "dart/gui/osg/render/BoxShapeNode.hpp"
#include "dart/gui/osg/render/CapsuleShapeNode.hpp"
#include "dart/gui/osg/render/ConeShapeNode.hpp"
#include "dart/gui/osg/render/CylinderShapeNode.hpp"
#include "dart/gui/osg/render/EllipsoidShapeNode.hpp"
#include "dart/gui/osg/render/HeightmapShapeNode.hpp"
#include "dart/gui/osg/render/LineSegmentShapeNode.hpp"
#include "dart/gui/osg/render/MeshShapeNode.hpp"
#include "dart/gui/osg/render/MultiSphereShapeNode.hpp"
#include "dart/gui/osg/render/PlaneShapeNode.hpp"
#include "dart/gui/osg/render/PointCloudShapeNode.hpp"
#include "dart/gui/osg/render/ShapeNode.hpp"
#include "dart/gui/osg/render/SoftMeshShapeNode.hpp"
#include "dart/gui/osg/render/SphereShapeNode.hpp"
#include "dart/gui/osg/render/VoxelGridShapeNode.hpp"
#include "dart/gui/osg/render/WarningShapeNode.hpp"
#include "dart/gui/osg/render/render.hpp"

Note the last line will end up including itself.

/CC @mjcarroll

sounds like the headers need #pragma once or header guards

scpeters commented 3 years ago

I made a clean PR to remove osg.hpp and render.hpp in https://github.com/ignition-forks/dart/pull/24, but CI is still failing, maybe related to octomap?

scpeters commented 3 years ago

I just rebased on top of release-6.10

scpeters commented 3 years ago

@azeey I think this just has the known failing test