Skip to content
This repository has been archived by the owner on Aug 3, 2020. It is now read-only.

Update KDL SegmentMap interface to use shared pointers #43

Merged
merged 1 commit into from
Jul 21, 2014
Merged

Update KDL SegmentMap interface to use shared pointers #43

merged 1 commit into from
Jul 21, 2014

Conversation

jensenb
Copy link
Contributor

@jensenb jensenb commented Nov 19, 2013

This is a dependent change for the orocos KDL API modification discussed in: orocos/orocos_kinematics_dynamics#4

To summarize the KDL API used incomplete type definitions in STL containers, which is undefined behaviour according the c++ standard. As it was, GCC / libstc++ handles this behaviour with problems; however, on systems with clang/libc++ using incomplete type definitions in STL containers results in compilation errors. Instead a solution involving shared pointers has been proposed. More rational the change is discussed in the upstream pull request.

The upstream pull request is necessary for this change to be merged.

@wjwwood
Copy link
Member

wjwwood commented Nov 20, 2013

Just like discussed in ros/robot_state_publisher#5 we need to figure out when and where this change will need to be deployed to line up with the new release of orocos_kdl unless we make this change backwards compatible.

@jensenb
Copy link
Contributor Author

jensenb commented Mar 5, 2014

Updated this PR to reflect the newest changes in the upstream pull request.

It seems I accidentally rebased on indigo-devel, is this a big problem?

@isucan
Copy link
Contributor

isucan commented Mar 5, 2014

Not at all. All these changes should actually be rebased for indigo, and sent for the indigo-devel branches.

The KDL Tree API optionally uses shared pointers on platforms where
the STL containers don't support incomplete types.
@jensenb
Copy link
Contributor Author

jensenb commented Mar 7, 2014

Now that the change has been merged upstream I properly rebased on hydro-devel.

@jensenb
Copy link
Contributor Author

jensenb commented May 28, 2014

I completely forgot to check up on the PR, is there anything holding this back currently from being merged into hydo-devel and indigo-devel?

@NikolausDemmel
Copy link

bump

EDIT: The bump is about getting these changes released into hydro/indigo in a coordinatd fashion: #43, ros/robot_state_publisher#5, #4, #19

@NikolausDemmel
Copy link

Now that orocos_kdl has been re-released (https://github.com/smits/orocos-kdl-release) including the patch that this PR depends on, can we merge this and #60 and then possibly some time get a hydro and an indigo release?

@wjwwood
Copy link
Member

wjwwood commented Jul 21, 2014

@NikolausDemmel do these need to be #ifdef guarded based on the KDL behavior? Or will this new API usage always be available?

@NikolausDemmel
Copy link

No #ifdef needed for the open PRs AFACT. The GetTreeElementChildren accessor was introduced by the released patches as a compatibility layer and should work with both API variants.

@jensenb: Am I right?

@wjwwood
Copy link
Member

wjwwood commented Jul 21, 2014

Ok, I see now, I think you are right @NikolausDemmel.

@wjwwood
Copy link
Member

wjwwood commented Jul 21, 2014

@isucan with your permission I would merge and release this at least into Indigo, but probably also Hydro. Otherwise you can do it, but I know you are busy.

@jensenb
Copy link
Contributor Author

jensenb commented Jul 21, 2014

@NikolausDemmel That is how it was intended. That is the best way i could come up with to mask the underlying API.

isucan added a commit that referenced this pull request Jul 21, 2014
Update KDL SegmentMap interface to use shared pointers
@isucan isucan merged commit 7a7da4c into ros:hydro-devel Jul 21, 2014
@isucan
Copy link
Contributor

isucan commented Jul 21, 2014

Releasing would be great! Thanks!

@wjwwood
Copy link
Member

wjwwood commented Jul 24, 2014

Sorry I just realized you wanted me to release, doing it now.

@wjwwood
Copy link
Member

wjwwood commented Jul 24, 2014

@isucan is hydro ok for release? (also your accidental version bump to 1.11.0 in hydro-devel some how resulted in no 1.10.19 tag, so I fixed that) I'm a little weary about releasing hydro given the set of changes.

@wjwwood
Copy link
Member

wjwwood commented Jul 24, 2014

These are the changes: 1.10.19...hydro-devel

@NikolausDemmel
Copy link

These are the changes that were already on hydro-devel even before this patch? Or were these pulled in due to merging the patch that was prepared for indigo-devel into hdyro-devel? If the latter is the case, it would maybe be better to roll back and cherry pick just this patch onto the last hydro release.

@wjwwood
Copy link
Member

wjwwood commented Jul 30, 2014

@NikolausDemmel I'm not sure, this pull request was only one commit, but it is possible something got messed up and the indigo changes ended up on the hydro branch by accident. That's why I am going to wait on @isucan to give the green light on the pending changes for hydro first.

@isucan
Copy link
Contributor

isucan commented Jul 31, 2014

@NikolausDemmel I am not sure which changes you are referring to. Are they from a different commit? If something got accidentally merged from indigo, I agree we should remove it. If it's something that does not break ABI though, it should be fine.

@NikolausDemmel
Copy link

Sorry for the confusion.

@isucan: I'm talking about the changes in 1.10.19...hydro-devel, i.e. all changes on hydro-devel since the last hydro commit. All these would be released into hydro if a release were done now. Only the last two commits and the one from March 7 are relevant to this patch. Ignore my comment about them possibly being merged inadvertedly from indigo-devel; I just looked at the commit graph again; that doesn't seem to be the case.

So the remaining question from @wjwwood to you, @isucan, is to confirm that robot_model should indeed be released into hydro, given that this would not only release the patches relevant to this KDL issue, but also all the other patches shown in 1.10.19...hydro-devel. If you give your ok, William will do the release.

@wjwwood
Copy link
Member

wjwwood commented Jul 31, 2014

@isucan Yeah, @NikolausDemmel has it right, I'm looking for a 👍/👎 from you.

@isucan
Copy link
Contributor

isucan commented Aug 1, 2014

You guys are awesome! Thanks for making it so easy for me. +1 @wjwwood

@wjwwood
Copy link
Member

wjwwood commented Aug 1, 2014

Ok, pulling the trigger.

@wjwwood
Copy link
Member

wjwwood commented Aug 1, 2014

ros/rosdistro#5191

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

Successfully merging this pull request may close these issues.

4 participants