Comments (9)
boost is gone!
from urdfdom.
@wjwwood any thoughts?
from urdfdom.
We don't have a plan for migrating to C++11 types within ROS 1, but adding a typedef which doesn't already exist which points to the C++11 types is probably a good strategy. I'm not sure what the sticking points will be in the transition, but if I see a concrete proposal (pull request) I can give feedback on what might be affected based on that.
We already guarantee that ROS 1 will compile when -std=c++11
is passed to the compiler, so we only have to consider the upgrade with respect to types that have changed. We probably won't be able to drop the boost dependency anytime soon. Because we use boost::filesystem
and boost::program_options
and a few other things which have no C++11 equivalent.
Quickly looking at urdfdom
it uses boost::lexical_cast
:
Which is probably replaced by std::to_string
.
It also uses shared_ptr
in the public API:
https://github.com/ros/urdfdom_headers/blob/56471a55d85e1be27a91a5f2f72b001d92cddb15/urdf_sensor/include/urdf_sensor/sensor.h#L157
(and others)
And weak_ptr
:
from urdfdom.
my concern is that there is a lot of code that depends on these types, so I am not too inclined to change this. What do you think of forking to an urdfdom2 that uses c++11 and avoids boost?
from urdfdom.
Adding c++11 is a huge change, so I had assumed that would involve a major version bump. I had imagined that it could just live in a new branch. Do we need to fork and make a package with a new name (like urdfdom2
) for this type of change?
from urdfdom.
Bump my previous comment: can we make breaking changes in a new release branch (bumping the major version), or does it need to be in a new repository?
from urdfdom.
I'd say do it as a branch, but @isucan should make the call.
from urdfdom.
Please do this in a new branch, no need for a new repo.
from urdfdom.
I just made a pull request to urdfdom_headers to create typedefs for smart pointers. It should preserve backwards compatibility but make it easier to migrate away from boost.
from urdfdom.
Related Issues (20)
- Tests fail HOT 6
- locale issues here as well HOT 37
- urdfdom should find_package(TinyXML) in urdfdom-config.cmake HOT 1
- origin: Support degrees in `rpy` HOT 3
- Release 1.0.3 into ubuntu bionic HOT 9
- [RFC] packaging urdfdom with conda HOT 1
- Extending mimic tag for non-linear relationships HOT 12
- Integrating with OSS-Fuzz HOT 2
- Build fails with undefined reference to TiXmlElement::SetAttribute HOT 9
- inertia: Should explicitly state that no inertia == massless (inertialess) link? HOT 1
- Question: check_urdf does not take into account transmission tag, wrong behaviour ? HOT 1
- Invalid path in urdfdom_INCLUDE_DIRS on Windows installation using vcpkg
- Using wrong headers HOT 2
- Deprecation warning on urdfdom_parser with Clang HOT 2
- check_urdf: no loop detection
- Branch urdfdom for Galactic HOT 5
- Usage of `version` attribute in `robot` xml-node HOT 2
- [cmake] urdf_LIBRARIES is still wrong HOT 2
- Feature request: check_urdf should be able to read from std_in HOT 2
- parseJointLimits() does not parse acceleration limits
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from urdfdom.