{"action":"created","issue":{"url":"https://api.github.com/repos/ros-planning/moveit_core/issues/315","repository_url":"https://api.github.com/repos/ros-planning/moveit_core","labels_url":"https://api.github.com/repos/ros-planning/moveit_core/issues/315/labels{/name}","comments_url":"https://api.github.com/repos/ros-planning/moveit_core/issues/315/comments","events_url":"https://api.github.com/repos/ros-planning/moveit_core/issues/315/events","html_url":"https://github.com/ros-planning/moveit_core/issues/315","id":167360313,"number":315,"title":"MoveIt! Kinetic Modifications for FCL 0.5 and octomap 1.8","user":{"login":"de-vri-es","id":786213,"avatar_url":"https://avatars.githubusercontent.com/u/786213?v=3","gravatar_id":"","url":"https://api.github.com/users/de-vri-es","html_url":"https://github.com/de-vri-es","followers_url":"https://api.github.com/users/de-vri-es/followers","following_url":"https://api.github.com/users/de-vri-es/following{/other_user}","gists_url":"https://api.github.com/users/de-vri-es/gists{/gist_id}","starred_url":"https://api.github.com/users/de-vri-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/de-vri-es/subscriptions","organizations_url":"https://api.github.com/users/de-vri-es/orgs","repos_url":"https://api.github.com/users/de-vri-es/repos","events_url":"https://api.github.com/users/de-vri-es/events{/privacy}","received_events_url":"https://api.github.com/users/de-vri-es/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":16,"created_at":"2016-07-25T13:00:45Z","updated_at":"2016-07-26T12:37:30Z","closed_at":null,"body":"FCL 0.5 was released which supports octomap 1.8. That is good, but additionally, FCL 0.5 uses `std::shared_ptr` in their API whereas for example `geometric_shapes` and moveit use `boost::shared_ptr`.\r\n\r\nI forked both `geometric_shapes` and `moveit_core` for now and switched them to `std::shared_ptr` for octomap and fcl types. However, I'm wondering how to continue. I could put in pull requests but there is probably more work to be done besides `geometric_shapes` and `moveit_core`. In specific, the change for `geometric_shapes` includes a public interface change (from `boost` to `std::shared_ptr`).\r\n\r\nI explored another alternative to see if it is possible to mix `boost::shared_ptr` and `std::shared_ptr`. In general, it is possible to mix the `shared_ptrs` by overwriting the default deleter, but when `weak_ptr` enters to the mix issues arise [1]. I quickly checked and FCL does seem to use `std::weak_ptrs`, which can not reliable be made to work for objects originally managed by a `boost::shared_ptr`.\r\n\r\nSo, I think the only way forward really is to switch `geometric_shapes`, moveit and _everything_ depending on it to `std::shared_ptr`. The question is, how should we proceed with that? I'm willing to put in the work, but I would like to make sure that we agree on the way forward, and how to coordinate this (and possibly see what more needs to be done, and where).\r\n\r\nNote that is is not necessarily as bad as it sounds, since it only needs to affect packages directly using FCL or `geometric_shapes::OcTree`.\r\n\r\n[1] http://stackoverflow.com/a/12315035"},"comment":{"url":"https://api.github.com/repos/ros-planning/moveit_core/issues/comments/235254449","html_url":"https://github.com/ros-planning/moveit_core/issues/315#issuecomment-235254449","issue_url":"https://api.github.com/repos/ros-planning/moveit_core/issues/315","id":235254449,"user":{"login":"de-vri-es","id":786213,"avatar_url":"https://avatars.githubusercontent.com/u/786213?v=3","gravatar_id":"","url":"https://api.github.com/users/de-vri-es","html_url":"https://github.com/de-vri-es","followers_url":"https://api.github.com/users/de-vri-es/followers","following_url":"https://api.github.com/users/de-vri-es/following{/other_user}","gists_url":"https://api.github.com/users/de-vri-es/gists{/gist_id}","starred_url":"https://api.github.com/users/de-vri-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/de-vri-es/subscriptions","organizations_url":"https://api.github.com/users/de-vri-es/orgs","repos_url":"https://api.github.com/users/de-vri-es/repos","events_url":"https://api.github.com/users/de-vri-es/events{/privacy}","received_events_url":"https://api.github.com/users/de-vri-es/received_events","type":"User","site_admin":false},"created_at":"2016-07-26T12:37:30Z","updated_at":"2016-07-26T12:37:30Z","body":"`moveit_setup_assistant` also needs to be compiled with C++11 support, so we need a `kinetic_devel` branch for the PR :)"}}
{"actor":{"display_login":"de-vri-es"}}