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
[humble] Expose py Reader metadata, improve rosbag2_py.BagMetadata
usability (backport #1082)
#1404
Open
mergify
wants to merge
1
commit into
humble
Choose a base branch
from
mergify/bp/humble/pr-1082
base: humble
Could not load branches
Branch not found: {{ refName }}
Could not load tags
Nothing to show
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…#1082) * expose metadata for reader, fix metadata fields to yield rclpy.Time and rclpy.Duration values instead of datetime * Provide default constructor arguments for rosbag2_py.BagMetadata * Add tests for rosbag2_py Storage struct constructors, fixing found issues * Expose all StorageFilter fields in py Signed-off-by: Emerson Knapp <emerson.b.knapp@gmail.com> (cherry picked from commit c58d73c)
mergify
bot
requested review from
gbiggs and
emersonknapp
and removed request for
a team
June 24, 2023 02:11
MichaelOrlov
changed the title
expose py Reader metadata, improve
[humble] Expose py Reader metadata, improve Jun 26, 2023
rosbag2_py.BagMetadata
usability (backport #1082)rosbag2_py.BagMetadata
usability (backport #1082)
MichaelOrlov
approved these changes
Jun 26, 2023
@ros-pull-request-builder retest this please |
MichaelOrlov
requested changes
Dec 27, 2023
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.
HPR job failed with a compilation errors which needs to be addressed.
Errors from log. Click to roll down.
[ 23%] Building CXX object CMakeFiles/_storage.dir/src/rosbag2_py/_storage.cpp.o
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp: In function ‘void pybind11_init__storage(pybind11::module_&)’:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:119:67: error: ‘topics_regex’ is not a member of ‘rosbag2_storage::StorageFilter’
119 | .def_readwrite("topics_regex", &rosbag2_storage::StorageFilter::topics_regex)
| ^~~~~~~~~~~~
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:122:38: error: ‘topics_regex_to_exclude’ is not a member of ‘rosbag2_storage::StorageFilter’
122 | &rosbag2_storage::StorageFilter::topics_regex_to_exclude);
| ^~~~~~~~~~~~~~~~~~~~~~~
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp: In lambda function:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:220:9: error: too many initializers for ‘rosbag2_storage::BagMetadata’
220 | };
| ^
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp: In function ‘void pybind11_init__storage(pybind11::module_&)’:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:192:19: error: no matching function for call to ‘init(pybind11_init__storage(pybind11::module_&)::<lambda(int, uint64_t, std::string, std::vector<std::__cxx11::basic_string<char> >, std::vector<rosbag2_storage::FileInformation>, pybind11::object, pybind11::object, uint64_t, std::vector<rosbag2_storage::TopicInformation>, std::string, std::string, std::unordered_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >)>)’
192 | pybind11::init(
| ~~~~~~~~~~~~~~^
193 | [](
| ~~~
194 | int version,
| ~~~~~~~~~~~~
195 | uint64_t bag_size,
| ~~~~~~~~~~~~~~~~~~
196 | std::string storage_identifier,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 | std::vector<std::string> relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 | std::vector<rosbag2_storage::FileInformation> files,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | pybind11::object duration,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | pybind11::object starting_time,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | uint64_t message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~
202 | std::vector<rosbag2_storage::TopicInformation> topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 | std::string compression_format,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
204 | std::string compression_mode,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205 | std::unordered_map<std::string, std::string> custom_data)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 | {
| ~
207 | return rosbag2_storage::BagMetadata{
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | version,
| ~~~~~~~~
209 | bag_size,
| ~~~~~~~~~
210 | storage_identifier,
| ~~~~~~~~~~~~~~~~~~~
211 | relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~
212 | files,
| ~~~~~~
213 | from_rclpy_duration(duration),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214 | from_rclpy_time(starting_time),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215 | message_count,
| ~~~~~~~~~~~~~~
216 | topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
217 | compression_format,
| ~~~~~~~~~~~~~~~~~~~
218 | compression_mode,
| ~~~~~~~~~~~~~~~~~
219 | custom_data
| ~~~~~~~~~~~
220 | };
| ~~
221 | }),
| ~~
In file included from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/./pybind11.hpp:24,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:26:
/usr/include/pybind11/pybind11.h:1690:68: note: candidate: ‘template<class ... Args> pybind11::detail::initimpl::constructor<Args ...> pybind11::init()’
1690 | template <typename... Args> detail::initimpl::constructor<Args...> init() { return {}; }
| ^~~~
/usr/include/pybind11/pybind11.h:1690:68: note: template argument deduction/substitution failed:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:192:19: note: candidate expects 0 arguments, 1 provided
192 | pybind11::init(
| ~~~~~~~~~~~~~~^
193 | [](
| ~~~
194 | int version,
| ~~~~~~~~~~~~
195 | uint64_t bag_size,
| ~~~~~~~~~~~~~~~~~~
196 | std::string storage_identifier,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 | std::vector<std::string> relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 | std::vector<rosbag2_storage::FileInformation> files,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | pybind11::object duration,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | pybind11::object starting_time,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | uint64_t message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~
202 | std::vector<rosbag2_storage::TopicInformation> topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 | std::string compression_format,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
204 | std::string compression_mode,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205 | std::unordered_map<std::string, std::string> custom_data)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 | {
| ~
207 | return rosbag2_storage::BagMetadata{
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | version,
| ~~~~~~~~
209 | bag_size,
| ~~~~~~~~~
210 | storage_identifier,
| ~~~~~~~~~~~~~~~~~~~
211 | relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~
212 | files,
| ~~~~~~
213 | from_rclpy_duration(duration),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214 | from_rclpy_time(starting_time),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215 | message_count,
| ~~~~~~~~~~~~~~
216 | topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
217 | compression_format,
| ~~~~~~~~~~~~~~~~~~~
218 | compression_mode,
| ~~~~~~~~~~~~~~~~~
219 | custom_data
| ~~~~~~~~~~~
220 | };
| ~~
221 | }),
| ~~
In file included from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/./pybind11.hpp:24,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:26:
/usr/include/pybind11/pybind11.h:1697:5: note: candidate: ‘template<class Func, class Ret> Ret pybind11::init(Func&&)’
1697 | Ret init(Func &&f) { return {std::forward<Func>(f)}; }
| ^~~~
/usr/include/pybind11/pybind11.h:1697:5: note: template argument deduction/substitution failed:
/usr/include/pybind11/pybind11.h:1702:5: note: candidate: ‘template<class CFunc, class AFunc, class Ret> Ret pybind11::init(CFunc&&, AFunc&&)’
1702 | Ret init(CFunc &&c, AFunc &&a) {
| ^~~~
/usr/include/pybind11/pybind11.h:1702:5: note: template argument deduction/substitution failed:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:192:19: note: candidate expects 2 arguments, 1 provided
192 | pybind11::init(
| ~~~~~~~~~~~~~~^
193 | [](
| ~~~
194 | int version,
| ~~~~~~~~~~~~
195 | uint64_t bag_size,
| ~~~~~~~~~~~~~~~~~~
196 | std::string storage_identifier,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 | std::vector<std::string> relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 | std::vector<rosbag2_storage::FileInformation> files,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | pybind11::object duration,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | pybind11::object starting_time,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | uint64_t message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~
202 | std::vector<rosbag2_storage::TopicInformation> topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 | std::string compression_format,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
204 | std::string compression_mode,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205 | std::unordered_map<std::string, std::string> custom_data)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 | {
| ~
207 | return rosbag2_storage::BagMetadata{
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | version,
| ~~~~~~~~
209 | bag_size,
| ~~~~~~~~~
210 | storage_identifier,
| ~~~~~~~~~~~~~~~~~~~
211 | relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~
212 | files,
| ~~~~~~
213 | from_rclpy_duration(duration),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214 | from_rclpy_time(starting_time),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215 | message_count,
| ~~~~~~~~~~~~~~
216 | topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
217 | compression_format,
| ~~~~~~~~~~~~~~~~~~~
218 | compression_mode,
| ~~~~~~~~~~~~~~~~~
219 | custom_data
| ~~~~~~~~~~~
220 | };
| ~~
221 | }),
| ~~
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:262:64: error: ‘custom_data’ is not a member of ‘rosbag2_storage::BagMetadata’
262 | .def_readwrite("custom_data", &rosbag2_storage::BagMetadata::custom_data)
| ^~~~~~~~~~~
In file included from /usr/include/pybind11/pybind11.h:17,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/./pybind11.hpp:24,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:26:
/usr/include/pybind11/detail/init.h: In instantiation of ‘Class* pybind11::detail::initimpl::construct_or_initialize(Args&& ...) [with Class = rosbag2_storage::StorageFilter; Args = {std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}; typename std::enable_if<(! std::is_constructible<_Tp, _Args>::value), int>::type <anonymous> = 0]’:
/usr/include/pybind11/detail/init.h:178:66: required from ‘static void pybind11::detail::initimpl::constructor<Args>::execute(Class&, const Extra& ...) [with Class = pybind11::class_<rosbag2_storage::StorageFilter>; Extra = {pybind11::arg_v, pybind11::arg_v, pybind11::arg_v}; typename std::enable_if<(! Class::has_alias), int>::type <anonymous> = 0; Args = {std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}]’
/usr/include/pybind11/pybind11.h:1448:21: required from ‘pybind11::class_<type_, options>& pybind11::class_<type_, options>::def(const pybind11::detail::initimpl::constructor<Args ...>&, const Extra& ...) [with Args = {std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}; Extra = {pybind11::arg_v, pybind11::arg_v, pybind11::arg_v}; type_ = rosbag2_storage::StorageFilter; options = {}]’
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:113:7: required from here
/usr/include/pybind11/detail/init.h:63:64: error: too many initializers for ‘rosbag2_storage::StorageFilter’
63 | inline Class *construct_or_initialize(Args &&...args) { return new Class{std::forward<Args>(args)...}; }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [CMakeFiles/_storage.dir/build.make:76: CMakeFiles/_storage.dir/src/rosbag2_py/_storage.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:228: CMakeFiles/_storage.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
--- stderr: rosbag2_py
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp: In function ‘void pybind11_init__storage(pybind11::module_&)’:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:119:67: error: ‘topics_regex’ is not a member of ‘rosbag2_storage::StorageFilter’
119 | .def_readwrite("topics_regex", &rosbag2_storage::StorageFilter::topics_regex)
| ^~~~~~~~~~~~
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:122:38: error: ‘topics_regex_to_exclude’ is not a member of ‘rosbag2_storage::StorageFilter’
122 | &rosbag2_storage::StorageFilter::topics_regex_to_exclude);
| ^~~~~~~~~~~~~~~~~~~~~~~
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp: In lambda function:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:220:9: error: too many initializers for ‘rosbag2_storage::BagMetadata’
220 | };
| ^
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp: In function ‘void pybind11_init__storage(pybind11::module_&)’:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:192:19: error: no matching function for call to ‘init(pybind11_init__storage(pybind11::module_&)::<lambda(int, uint64_t, std::string, std::vector<std::__cxx11::basic_string<char> >, std::vector<rosbag2_storage::FileInformation>, pybind11::object, pybind11::object, uint64_t, std::vector<rosbag2_storage::TopicInformation>, std::string, std::string, std::unordered_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >)>)’
192 | pybind11::init(
| ~~~~~~~~~~~~~~^
193 | [](
| ~~~
194 | int version,
| ~~~~~~~~~~~~
195 | uint64_t bag_size,
| ~~~~~~~~~~~~~~~~~~
196 | std::string storage_identifier,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 | std::vector<std::string> relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 | std::vector<rosbag2_storage::FileInformation> files,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | pybind11::object duration,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | pybind11::object starting_time,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | uint64_t message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~
202 | std::vector<rosbag2_storage::TopicInformation> topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 | std::string compression_format,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
204 | std::string compression_mode,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205 | std::unordered_map<std::string, std::string> custom_data)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 | {
| ~
207 | return rosbag2_storage::BagMetadata{
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | version,
| ~~~~~~~~
209 | bag_size,
| ~~~~~~~~~
210 | storage_identifier,
| ~~~~~~~~~~~~~~~~~~~
211 | relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~
212 | files,
| ~~~~~~
213 | from_rclpy_duration(duration),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214 | from_rclpy_time(starting_time),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215 | message_count,
| ~~~~~~~~~~~~~~
216 | topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
217 | compression_format,
| ~~~~~~~~~~~~~~~~~~~
218 | compression_mode,
| ~~~~~~~~~~~~~~~~~
219 | custom_data
| ~~~~~~~~~~~
220 | };
| ~~
221 | }),
| ~~
In file included from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/./pybind11.hpp:24,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:26:
/usr/include/pybind11/pybind11.h:1690:68: note: candidate: ‘template<class ... Args> pybind11::detail::initimpl::constructor<Args ...> pybind11::init()’
1690 | template <typename... Args> detail::initimpl::constructor<Args...> init() { return {}; }
| ^~~~
/usr/include/pybind11/pybind11.h:1690:68: note: template argument deduction/substitution failed:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:192:19: note: candidate expects 0 arguments, 1 provided
192 | pybind11::init(
| ~~~~~~~~~~~~~~^
193 | [](
| ~~~
194 | int version,
| ~~~~~~~~~~~~
195 | uint64_t bag_size,
| ~~~~~~~~~~~~~~~~~~
196 | std::string storage_identifier,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 | std::vector<std::string> relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 | std::vector<rosbag2_storage::FileInformation> files,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | pybind11::object duration,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | pybind11::object starting_time,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | uint64_t message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~
202 | std::vector<rosbag2_storage::TopicInformation> topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 | std::string compression_format,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
204 | std::string compression_mode,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205 | std::unordered_map<std::string, std::string> custom_data)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 | {
| ~
207 | return rosbag2_storage::BagMetadata{
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | version,
| ~~~~~~~~
209 | bag_size,
| ~~~~~~~~~
210 | storage_identifier,
| ~~~~~~~~~~~~~~~~~~~
211 | relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~
212 | files,
| ~~~~~~
213 | from_rclpy_duration(duration),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214 | from_rclpy_time(starting_time),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215 | message_count,
| ~~~~~~~~~~~~~~
216 | topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
217 | compression_format,
| ~~~~~~~~~~~~~~~~~~~
218 | compression_mode,
| ~~~~~~~~~~~~~~~~~
219 | custom_data
| ~~~~~~~~~~~
220 | };
| ~~
221 | }),
| ~~
In file included from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/./pybind11.hpp:24,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:26:
/usr/include/pybind11/pybind11.h:1697:5: note: candidate: ‘template<class Func, class Ret> Ret pybind11::init(Func&&)’
1697 | Ret init(Func &&f) { return {std::forward<Func>(f)}; }
| ^~~~
/usr/include/pybind11/pybind11.h:1697:5: note: template argument deduction/substitution failed:
/usr/include/pybind11/pybind11.h:1702:5: note: candidate: ‘template<class CFunc, class AFunc, class Ret> Ret pybind11::init(CFunc&&, AFunc&&)’
1702 | Ret init(CFunc &&c, AFunc &&a) {
| ^~~~
/usr/include/pybind11/pybind11.h:1702:5: note: template argument deduction/substitution failed:
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:192:19: note: candidate expects 2 arguments, 1 provided
192 | pybind11::init(
| ~~~~~~~~~~~~~~^
193 | [](
| ~~~
194 | int version,
| ~~~~~~~~~~~~
195 | uint64_t bag_size,
| ~~~~~~~~~~~~~~~~~~
196 | std::string storage_identifier,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 | std::vector<std::string> relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 | std::vector<rosbag2_storage::FileInformation> files,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | pybind11::object duration,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | pybind11::object starting_time,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | uint64_t message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~
202 | std::vector<rosbag2_storage::TopicInformation> topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 | std::string compression_format,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
204 | std::string compression_mode,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205 | std::unordered_map<std::string, std::string> custom_data)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 | {
| ~
207 | return rosbag2_storage::BagMetadata{
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | version,
| ~~~~~~~~
209 | bag_size,
| ~~~~~~~~~
210 | storage_identifier,
| ~~~~~~~~~~~~~~~~~~~
211 | relative_file_paths,
| ~~~~~~~~~~~~~~~~~~~~
212 | files,
| ~~~~~~
213 | from_rclpy_duration(duration),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214 | from_rclpy_time(starting_time),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215 | message_count,
| ~~~~~~~~~~~~~~
216 | topics_with_message_count,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~
217 | compression_format,
| ~~~~~~~~~~~~~~~~~~~
218 | compression_mode,
| ~~~~~~~~~~~~~~~~~
219 | custom_data
| ~~~~~~~~~~~
220 | };
| ~~
221 | }),
| ~~
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:262:64: error: ‘custom_data’ is not a member of ‘rosbag2_storage::BagMetadata’
262 | .def_readwrite("custom_data", &rosbag2_storage::BagMetadata::custom_data)
| ^~~~~~~~~~~
In file included from /usr/include/pybind11/pybind11.h:17,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/./pybind11.hpp:24,
from /tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:26:
/usr/include/pybind11/detail/init.h: In instantiation of ‘Class* pybind11::detail::initimpl::construct_or_initialize(Args&& ...) [with Class = rosbag2_storage::StorageFilter; Args = {std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}; typename std::enable_if<(! std::is_constructible<_Tp, _Args>::value), int>::type <anonymous> = 0]’:
/usr/include/pybind11/detail/init.h:178:66: required from ‘static void pybind11::detail::initimpl::constructor<Args>::execute(Class&, const Extra& ...) [with Class = pybind11::class_<rosbag2_storage::StorageFilter>; Extra = {pybind11::arg_v, pybind11::arg_v, pybind11::arg_v}; typename std::enable_if<(! Class::has_alias), int>::type <anonymous> = 0; Args = {std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}]’
/usr/include/pybind11/pybind11.h:1448:21: required from ‘pybind11::class_<type_, options>& pybind11::class_<type_, options>::def(const pybind11::detail::initimpl::constructor<Args ...>&, const Extra& ...) [with Args = {std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}; Extra = {pybind11::arg_v, pybind11::arg_v, pybind11::arg_v}; type_ = rosbag2_storage::StorageFilter; options = {}]’
/tmp/ws/src/rosbag2/rosbag2_py/src/rosbag2_py/_storage.cpp:113:7: required from here
/usr/include/pybind11/detail/init.h:63:64: error: too many initializers for ‘rosbag2_storage::StorageFilter’
63 | inline Class *construct_or_initialize(Args &&...args) { return new Class{std::forward<Args>(args)...}; }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [CMakeFiles/_storage.dir/build.make:76: CMakeFiles/_storage.dir/src/rosbag2_py/_storage.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:228: CMakeFiles/_storage.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
@r7vme Could you please try to triage/fix CI failures in this PR? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an automatic backport of pull request #1082 done by Mergify.
Mergify commands and options
More conditions and actions can be found in the documentation.
You can also trigger Mergify actions by commenting on this pull request:
@Mergifyio refresh
will re-evaluate the rules@Mergifyio rebase
will rebase this PR on its base branch@Mergifyio update
will merge the base branch into this PR@Mergifyio backport <destination>
will backport this PR on<destination>
branchAdditionally, on Mergify dashboard you can:
Finally, you can contact us on https://mergify.com