Skip to content
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

[noetic] deprecate h for hpp #34

Merged
merged 5 commits into from
Apr 7, 2020

Conversation

sloretz
Copy link

@sloretz sloretz commented Apr 4, 2020

This is another PR created with the goal of shrinking the diff in #32. It deprecates .h files in favor of .hpp in the same way it was done for class_loader. I git mv'd the .h files to .hpp in one commit, added new .h files with the deprecation warning in another, and fixed all the deprecation warnings in this package in the last commit.

Deprecation warnings prior to fixing; proof the header warnings work
In file included from /home/sloretz/ws/filters/src/filters/src/mean.cpp:30:0:
/home/sloretz/ws/filters/src/filters/include/filters/mean.h:40:2: warning: #warning Including header <filters/mean.h> is deprecated, include <filters/mean.hpp> instead. [-Wcpp]
 #warning Including header <filters/mean.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/src/transfer_function.cpp:30:0:
/home/sloretz/ws/filters/src/filters/include/filters/transfer_function.h:40:2: warning: #warning Including header <filters/transfer_function.h> is deprecated, include <filters/transfer_function.hpp> instead. [-Wcpp]
 #warning Including header <filters/transfer_function.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/src/test_params.cpp:31:0:
/home/sloretz/ws/filters/src/filters/include/filters/param_test.h:40:2: warning: #warning Including header <filters/param_test.h> is deprecated, include <filters/param_test.hpp> instead. [-Wcpp]
 #warning Including header <filters/param_test.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/src/median.cpp:31:0:
/home/sloretz/ws/filters/src/filters/include/filters/median.h:40:2: warning: #warning Including header <filters/median.h> is deprecated, include <filters/median.hpp> instead. [-Wcpp]
 #warning Including header <filters/median.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/src/increment.cpp:30:0:
/home/sloretz/ws/filters/src/filters/include/filters/increment.h:40:2: warning: #warning Including header <filters/increment.h> is deprecated, include <filters/increment.hpp> instead. [-Wcpp]
 #warning Including header <filters/increment.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./param_test.hpp:37:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/param_test.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/test_params.cpp:31:
/home/sloretz/ws/filters/src/filters/include/filters/filter_base.h:40:2: warning: #warning Including header <filters/filter_base.h> is deprecated, include <filters/filter_base.hpp> instead. [-Wcpp]
 #warning Including header <filters/filter_base.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./increment.hpp:37:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/increment.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/increment.cpp:30:
/home/sloretz/ws/filters/src/filters/include/filters/filter_base.h:40:2: warning: #warning Including header <filters/filter_base.h> is deprecated, include <filters/filter_base.hpp> instead. [-Wcpp]
 #warning Including header <filters/filter_base.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./mean.hpp:39:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/mean.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/mean.cpp:30:
/home/sloretz/ws/filters/src/filters/include/filters/filter_base.h:40:2: warning: #warning Including header <filters/filter_base.h> is deprecated, include <filters/filter_base.hpp> instead. [-Wcpp]
 #warning Including header <filters/filter_base.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./transfer_function.hpp:41:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/transfer_function.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/transfer_function.cpp:30:
/home/sloretz/ws/filters/src/filters/include/filters/filter_base.h:40:2: warning: #warning Including header <filters/filter_base.h> is deprecated, include <filters/filter_base.hpp> instead. [-Wcpp]
 #warning Including header <filters/filter_base.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./median.hpp:39:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/median.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/median.cpp:31:
/home/sloretz/ws/filters/src/filters/include/filters/filter_base.h:40:2: warning: #warning Including header <filters/filter_base.h> is deprecated, include <filters/filter_base.hpp> instead. [-Wcpp]
 #warning Including header <filters/filter_base.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./mean.hpp:42:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/mean.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/mean.cpp:30:
/home/sloretz/ws/filters/src/filters/include/filters/realtime_circular_buffer.h:40:2: warning: #warning Including header <filters/realtime_circular_buffer.h> is deprecated, include <filters/realtime_circular_buffer.hpp> instead. [-Wcpp]
 #warning Including header <filters/realtime_circular_buffer.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./median.hpp:41:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/median.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/median.cpp:31:
/home/sloretz/ws/filters/src/filters/include/filters/realtime_circular_buffer.h:40:2: warning: #warning Including header <filters/realtime_circular_buffer.h> is deprecated, include <filters/realtime_circular_buffer.hpp> instead. [-Wcpp]
 #warning Including header <filters/realtime_circular_buffer.h> is deprecated, \
  ^~~~~~~
In file included from /home/sloretz/ws/filters/src/filters/include/filters/./transfer_function.hpp:42:0,
                 from /home/sloretz/ws/filters/src/filters/include/filters/transfer_function.h:44,
                 from /home/sloretz/ws/filters/src/filters/src/transfer_function.cpp:30:
/home/sloretz/ws/filters/src/filters/include/filters/realtime_circular_buffer.h:40:2: warning: #warning Including header <filters/realtime_circular_buffer.h> is deprecated, include <filters/realtime_circular_buffer.hpp> instead. [-Wcpp]
 #warning Including header <filters/realtime_circular_buffer.h> is deprecated, \
  ^~~~~~~
grep to make sure all includes use .hpp and not .h
$ grep . -R -e "include.*filters/.*h"
./src/median.cpp:#include "filters/median.hpp"
./src/test_params.cpp:#include "filters/param_test.hpp"
./src/mean.cpp:#include "filters/mean.hpp"
./src/increment.cpp:#include "filters/increment.hpp"
./src/transfer_function.cpp:#include "filters/transfer_function.hpp"
Binary file ./.git/index matches
./test/test_chain.cpp:#include "filters/filter_chain.hpp"
./test/test_mean.cpp:#include "filters/mean.hpp"
./test/test_params.cpp:#include "filters/param_test.hpp"
./test/test_transfer_function.cpp:#include "filters/transfer_function.hpp"
./test/test_realtime_circular_buffer.cpp:#include "filters/realtime_circular_buffer.hpp"
./test/test_median.cpp:#include "filters/median.hpp"
Binary file ./include/filters/.swp matches
./include/filters/param_test.hpp:#include "filters/filter_base.hpp"
./include/filters/increment.hpp:#include "filters/filter_base.hpp"
Binary file ./include/filters/.param_test.h.swp matches
Binary file ./include/filters/.increment.h.swp matches
Binary file ./include/filters/.mean.h.swp matches
./include/filters/mean.h:#pragma message("include <filters/mean.hpp> instead.")
./include/filters/mean.h:include <filters/mean.hpp> instead.
./include/filters/transfer_function.h:#pragma message("include <filters/transfer_function.hpp> instead.")
./include/filters/transfer_function.h:include <filters/transfer_function.hpp> instead.
./include/filters/filter_chain.hpp:#include "filters/filter_base.hpp"
./include/filters/transfer_function.hpp:#include "filters/filter_base.hpp"
./include/filters/transfer_function.hpp:#include "filters/realtime_circular_buffer.hpp"
./include/filters/median.h:#pragma message("include <filters/median.hpp> instead.")
./include/filters/median.h:include <filters/median.hpp> instead.
./include/filters/filter_base.h:#pragma message("include <filters/filter_base.hpp> instead.")
./include/filters/filter_base.h:include <filters/filter_base.hpp> instead.
./include/filters/filter_chain.h:#pragma message("include <filters/filter_chain.hpp> instead.")
./include/filters/filter_chain.h:include <filters/filter_chain.hpp> instead.
Binary file ./include/filters/.realtime_circular_buffer.h.swp matches
Binary file ./include/filters/.transfer_function.h.swp matches
./include/filters/median.hpp:#include "filters/filter_base.hpp"
./include/filters/median.hpp:#include "filters/realtime_circular_buffer.hpp"
./include/filters/mean.hpp:#include "filters/filter_base.hpp"
./include/filters/mean.hpp:#include "filters/realtime_circular_buffer.hpp"
Binary file ./include/filters/.filter_chain.h.swp matches
./include/filters/increment.h:#pragma message("include <filters/increment.hpp> instead.")
./include/filters/increment.h:include <filters/increment.hpp> instead.
Binary file ./include/filters/.filter_base.h.swp matches
Binary file ./include/filters/.median.h.swp matches
./include/filters/param_test.h:#pragma message("include <filters/param_test.hpp> instead.")
./include/filters/param_test.h:include <filters/param_test.hpp> instead.
./include/filters/realtime_circular_buffer.h:#pragma message("include <filters/realtime_circular_buffer.hpp> instead.")
./include/filters/realtime_circular_buffer.h:include <filters/realtime_circular_buffer.hpp> instead.

@sloretz sloretz self-assigned this Apr 4, 2020
Copy link

@clalancette clalancette left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did a diff of the .h and .hpp before and after this commit, respectively. The only differences between them are the name of the includes. However, I also think the include header guards should be changed as well to match the new .hpp extension. Otherwise this looks good to me.

Comment on lines 30 to 31
#ifndef FILTERS_FILTER_BASE_H_
#define FILTERS_FILTER_BASE_H_

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The include guard should be:

Suggested change
#ifndef FILTERS_FILTER_BASE_H_
#define FILTERS_FILTER_BASE_H_
#ifndef FILTERS_FILTER_BASE_HPP_
#define FILTERS_FILTER_BASE_HPP_

The same goes for all of the other header files below.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated include guards in 552f6b3

Signed-off-by: Shane Loretz <sloretz@osrfoundation.org>
Signed-off-by: Shane Loretz <sloretz@osrfoundation.org>
Signed-off-by: Shane Loretz <sloretz@osrfoundation.org>
Signed-off-by: Shane Loretz <sloretz@osrfoundation.org>
@sloretz sloretz force-pushed the sloretz/deprecate_h_for_hpp branch from c06c92c to 552f6b3 Compare April 6, 2020 21:11
Copy link
Member

@tfoote tfoote left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to merge with one small typo unrelated, but we might as well fix it.

include/filters/transfer_function.hpp Outdated Show resolved Hide resolved
Co-Authored-By: Tully Foote <tfoote@osrfoundation.org>
@sloretz sloretz merged commit 76bf3d3 into ros:noetic-devel Apr 7, 2020
@mikaelarguedas
Copy link
Member

Could the new headers be back-ported to melodic ? currently it is inconvenient to get a melodic/noetic compatible code that compiles without warnings

@peci1
Copy link
Contributor

peci1 commented May 20, 2021

I use

#if ROS_VERSION_MINIMUM(1, 15, 0)
#include <filters/filter_chain.hpp>
#else
#include <filters/filter_chain.h>
#endif

to get melodic/noetic compatible code.

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

Successfully merging this pull request may close these issues.

None yet

5 participants