-
Notifications
You must be signed in to change notification settings - Fork 197
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
Deprecate C Headers #720
base: rolling
Are you sure you want to change the base?
Deprecate C Headers #720
Conversation
Signed-off-by: CursedRock17 <[email protected]>
Signed-off-by: CursedRock17 <[email protected]>
Signed-off-by: CursedRock17 <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
include/tf2/LinearMath/Scalar.h | ||
include/tf2/LinearMath/Transform.h | ||
include/tf2/LinearMath/Vector3.h | ||
include/tf2/LinearMath/Matrix3x3.hpp |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you should keep here both the h
and the hpp
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you should keep here both the
h
and thehpp
Agreed.
Besides some of @ahcorde 's inline comments, we will also need to have PRs to the rest of the ROS 2 core to use the |
Signed-off-by: CursedRock17 <[email protected]>
Yeah I figured we would have to extend PRs to various libraries, I have one linked from |
Would it make sense to provide This would mean all projects that do not have a branch per release can use this syntax already. Preventing ugly statements like this everywhere: https://github.com/autowarefoundation/autoware.universe/blob/9bd0f77c255edcff129ff08d190a5fdd8c45b6dc/localization/yabloc/yabloc_common/src/pub_sub.cpp#L18 For rolling we can keep the deprecation flag, not for older distros. |
Yeah I don't see much of a compile downside, just a weirder file structure for older distributions. I assume we would just never phase out the Also there already seems to be some consensus in the other core repositories:
|
The following pull requests are the "backports" that will prevent gross include macros with the formulating of |
Iron I guess? |
Signed-off-by: CursedRock17 <[email protected]> Iron Backport of ros2#720 Signed-off-by: CursedRock17 <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is one major change I'd like to see in this PR, and that is to not make the linting updates to the tf2/include/tf2/LinearMath headers. While I think we may eventually want to do this, for now I think it will be easier to track provenance without doing that.
Once that is fixed, and we run CI on this and the downstream PRs, I think we can get this in.
Signed-off-by: CursedRock17 <[email protected]>
Changes have been implemented, that being said was it not just easier to do this now opposed to later, especially when naming conventions are going to be mixed? |
No, sorry, that's not what I meant. I meant leave the |
Ohhh, I was quite confused lol, I will be reverting the changes in addition to the whitespace changes. |
This reverts commit 62879df.
Can you do humble if it's not too much work? |
Signed-off-by: Lucas Wendland <[email protected]> Linter Matrix3x3.hpp Signed-off-by: Lucas Wendland <[email protected]> Linter MinMax.h Signed-off-by: Lucas Wendland <[email protected]> Linter MinMax.hpp Signed-off-by: Lucas Wendland <[email protected]> Linter QuadWord.h Signed-off-by: Lucas Wendland <[email protected]> Linter QuadWord.hpp Signed-off-by: Lucas Wendland <[email protected]> Linter Quaternion.h Signed-off-by: Lucas Wendland <[email protected]> Linter Quaternion.hpp Signed-off-by: Lucas Wendland <[email protected]> Linter Scalar.h Signed-off-by: Lucas Wendland <[email protected]> Linter Scalar.hpp Signed-off-by: Lucas Wendland <[email protected]> Linter Transform.h Signed-off-by: Lucas Wendland <[email protected]> Linter Transform.hpp Signed-off-by: Lucas Wendland <[email protected]> Linter Vector3.h Signed-off-by: Lucas Wendland <[email protected]> Linter Vector3.hpp Signed-off-by: Lucas Wendland <[email protected]>
030c916
to
3a21ba2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All right, one more relatively small thing to fix, then I think this will be ready for CI.
tf2/include/tf2/visibility_control.h
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This particular file is actually C code, and mostly internal, so I think we do not need to rename this. That is, keep just this file as visibility_control.h
.
5937a81
to
7193c0a
Compare
Signed-off-by: CursedRock17 <[email protected]> Visibility Controls utils.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls convert.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls Quaternion.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls Vector3.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls QuadWord.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls Transform.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls exceptions.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls time_cache.hpp Signed-off-by: Lucas Wendland <[email protected]> Visibility Controls transform_storage.hpp Signed-off-by: Lucas Wendland <[email protected]> Update time.hpp Signed-off-by: Lucas Wendland <[email protected]> Update buffer_core.hpp Signed-off-by: Lucas Wendland <[email protected]> Update buffer_core_interface.hpp Signed-off-by: Lucas Wendland <[email protected]>
564ff99
to
f390cce
Compare
When I get back to my workstation later today, I can roll these improvements (whitespacing & visibility_control) onto the other branches I adjusted for the backport. |
Pulls: #720, ros2/rviz#1289, ros-perception/laser_geometry#98 |
So there are at least two problems here:
|
This pull request is an attempt to help #259, specifically the first task
Since it's now post-Foxy I did something similar to this
message_filters
pull request, which was to simply deprecate a.h
file with a warning, include the.hpp
file, and just copy paste the logic from the.h
file into the.hpp
file. There were some slight formatting changes that had to be made to makecpplint
anduncrustify
happy. There is currently a copyrighting problem within theLinearMath
files since they seem to be from thebullet
library. I would like to know where we should move from this point when it comes to those files.