- Cleanup of README.md (#342)
- Parametrizing service execution timeout (#340)
- Fix cpplint error (#341)
- Update package maintainers (#335)
- Contributors: Cem Karan, Geoffrey Biggs, Jorge Perez, Marco Bassa, Tim Clephas, Tomoya Fujita
- Example for parameter_bridge (#330)
- Use rcpputils/scope_exit.hpp instead of rclcpp/scope_exit.hpp (#324)
- Use FindPython3 and make Python dependency explicit (#322)
- Bump ros-tooling/[email protected] (#323)
- Add GitHub workflow for CI (#310)
- Update includes after rcutils/get_env.h deprecation (#311)
- Contributors: Christophe Bedard, Harsh Deshpande, Loy, Shane Loretz
- Fix logging for updated rclcpp interface (#303)
- Fix typo in comments (#297)
- Contributors: Michael Carroll, Vicidel
- Update to use rosidl_parser and .idl files rather than rosidl_adapter and .msg files (#296)
- Update maintainers (#286)
- Contributors: Jacob Perron, William Woodall
- Tailor: Updating Jenkinsfile
- Tailor: Creating Jenkinsfile
- ROS1 message libraries don't need dynamic linkage
- 0.10.1
- Changelog.
- Fix logging for updated rclcpp interface (#303) * Fix logging for updated rclcpp interface * Update src/bridge.cpp Co-authored-by: Ivan Santiago Paunovic <[email protected]> * Update to pass char * * Uncrustify Co-authored-by: Ivan Santiago Paunovic <[email protected]>
- Fix typo in comments (#297) * very minor typo in comments * Fix other copy-paste typos. Co-authored-by: Steven! Ragnarök <[email protected]> Co-authored-by: tomoya <[email protected]>
- 0.10.0
- fix bug with sizeof when type of the arrays differ (#298)
- 0.9.5
- [forward port] update to use rosidl_parser and .idl files rather than rosidl_adapter and .msg files (#296) * update to use rosidl_parser and .idl files rather than rosidl_adapter and .msg files * fix quote style linting error
- Update maintainers (#286)
- Contributors: Chris Lalancette, Jacob Perron, Michael Carroll, Paul Bovbel, Vicidel, William Woodall, locus-services
- Add std_srvs to ros1_bridge build (#11)
- Add wireless_msgs to the build (#10) This will be needed for the BLE nodes as they monitor the /connection topic which is ROS1.
- Update Jenkinsfile to use the jammy docker image (#9) * Update Jenkinsfile to use the jammy docker image * Package wide linting fixes CPP, CMake, python, etc. Mostly updated using tools, some manual edits.
- Remove upstream github actions that fail (#8) We probably shouldn't be running our proprietary code on an upstream CI anyways so remove this action.
- Add nav_msgs to ros1_bridge (#7)
- Whitelist packages (#6) * Introduces package include and exclude lists * Adds cmake file that parses package include resp. exclude list * Filtering cmake dependencies based on include/exclude list ros2#284 Co-authored-by: James Prestwood <[email protected]> * Passes package incl./excl. to bridge generation * CMake passes package include/ignore lists to python scripts generating the bridge c++ code * Generation of factories and mappings restricted to packages filtered by include/ignore lists ros2#284 Co-authored-by: James Prestwood <[email protected]> * Create package whitelist from package.xml The prior mechanism to generate an ignore/include list was to use a static file at the workspace root. This doesn't play very well with our build system so instead use package.xml. Any <build_depend> package will now be included in the ros1_bridge build. This is done using a simple python script to parse package.xml which is then called by cmake (stdout of the script is the list). We then feed that list into a modified filter_packages() function that takes a list of include/ignore packages rather than using the static list. * Replace rosidl_cmake with rosidl_common The former is deprecated and the build was warning of this. --------- Co-authored-by: norro <[email protected]>
- Contributors: James Prestwood
- Correctly handle fixed length array conversion in services and actions (#4)
- RST-6618 fixes for action bridge (#2) Fixed action_bridge changes to work with newer ros2 releases and added support for skipping previously built generated factories to speed up recompiling.
- Implemented action bridge Squash of upstream PR: ros2#256 Co-authored-by: tomoya <[email protected]> Co-authored-by: Geoffrey Biggs <[email protected]>
- Contributors: Alex Bencz, Harsh Deshpande
- 0.11.0
- Update changelogs
- Improve bridge command parser (#1) * Refactor command parser to use vector of char* * Add argc argv splitter to dynamic bridge * Add argc argv splitter to paramter bridge * Update github action * Fix parameter bridge argv split * Remove static argv reading * Add command parser to parameter bridge * Fix compilation errors * Fix compilation errors * Fix parameter bidge command parser * Refactor to add command parser utils file * Add github action issue workaround * Ty to run github action inside container * Fix ROS2 args when no ROS1 args * ⏪ Revert changes on GitHub Action config * Change parameter bridge ROS init order * Rename parser functions * Add get_option_values function * Fix wrong help for the parameter bridge * Fix get_option_values parser function * Refactor bridges to use the get_option_values * Add running scetion to README * Add print pairs to parameter bridge --------- Co-authored-by: LucasHaug <[email protected]>
- Tailor: Creating Jenkinsfile
- Improved gitignore to exclude build files and similar editor-based tools (#392)
- Provide direct serialization of ROS2 messsage to ROS1 streams (#381) * Generated functions for (de)serializing ROS2 messages to ROS1 streams. * Partial set of fixes from review. * Rename functions based on discussion from review * Whitespace fix. * Name change for conversion helper fucntion. * Use explicit function overloading instead of template for stream types. * Fix factory.hpp crustify errors.
- [master] Update maintainers - 2022-11-07 (#386)
- Apply automatic mapping rules in case only package+message mapping exists (#382) * Fix message mapping by removing early return so other rules can still be applied In determine_field_mapping, there was an early return inside a loop over all mapping rules. IF there we any mapping rules but they don't specify field mappings, the early return made the function return without creating mappings automatically. For a particular message type, ROS 1's uuid_msgs/UniqueID vs ROS 2's unique_identifier_msgs/UUID, the message definition is exacly the same but type name is not. The only mapping fule defined in for unique_identifier_msgs/UUID is that it maps to uuid_msgs/UniqueID, but no field mappings are needed because the definitions are the same. But, then we hit the early return (because the for-loop is ran without any rule applying to the message at hand and thus not continue-ing in a code branch handling a rule) and return without applying the normal automatic field mapping generation rules. By removing the early return, the other rules are applied and the mapping rules for handling the exact same message defintions are applied * Account for fields mapped by rules when checking for missed fields The code after the early return mentioned in the previous commit assumed all fields would match by name, which was of course true. But not anymore, so the missing check now only fails when the missing fields are also not already accounted for via a mapping * Fix flake8 violations
- New function for converting between ROS1 and ROS2 generic message formats. (#377)
- Fix typo (services_1_or_2 -> services_1_to_2) (#379)
- Move xmlrpcpp find_package so it only searches if ROS 1 is found (#371)
- Implement Foreign Mapping Check Override (#367)
- removing unused slot
- Parametrize Quality of Service in parameter_bridge. (#331) * Extend create_bidirectional_bridge to take qos param for ROS2 publisher * Busy setting up a way to read QoS parameters from ROS1 params * Parse history qos params * Call qos_from_params when setting up topics * Configure deadline, lifespan, liveliness_lease_durations * Configure liveliness * Add some basic debug text * Print the QoS settings to stdout when setting them up * Catch XmlRpc::XmlRpcExceptions when constructing QoS from parameters * Parse liveliness as either int enum value or upper/lower case string representation of liveliness enum values * Fix formatting with uncrustify * Fix cpplint formatting In 2 cases the formatting conflicts with what uncrustify wants; // NOLINT got rid of the complaints of cpplint, favouring uncrustify * Clearer logging as suggested by code review Co-authored-by: Geoffrey Biggs <[email protected]> * Clarify keep_last vs keep_all setting for history Co-authored-by: Geoffrey Biggs <[email protected]>
- updated description
- fixed ros2 message index
- added fields_2_to_1 to print message mapping
- Clarify example 4 (#362)
- Fix array static_assertion with newer compilers (#363)
- to correct Examples 4 (#357)
- reverting authors
- updating maintainers
- Update maintainers (#360)
- Suppress warning when packages aren't available (#355) * Suppress warning when packages aren't available ROS1 packages aren't available on all platforms. In order to keep ros1_bridge in ros2.repos without warnings turning CI yellow, we need to suppress this warning.
- Make sure to use fully-qualified boost placeholders. (#351) Also make sure to declare a direct dependency on boost. While we are always getting it from ROS 1, this code directly uses it and so should also declare a dependency.
- 0.10.3
- Changelog
- Cleanup of README.md (#342) * Reformatted README.md This is an initial cleanup attempt of the README.md file. All non-code lines have been wrapped to an 80 column width, and some markdown was cleaned up. Further work is needed. * Added 'bash' info string to appropriate fenced code blocks. Numerous fenced code blocks did not have a [info string](https://github.github.com/gfm/#info-string), which meant that the enclosed code block wouldn't be rendered correctly. As it turned out, all of these were intended to be run in a bash shell, so I added that as their info strings. * WIP: Updated the scripts in the README.md file to use environment variables. The scripts weren't directly executable before, requiring manual substitution of various 'variables'. This was unfortunate as Github makes copying and pasting code blocks simple and straightforward. The changes in this commit make it possible to copy/paste each example into it's own shell, which should make it slightly easier for new users to start using the bridge. * fix: Unwrapped lines per request from @gbiggs. @gbiggs commented at ros2#342 (comment) that files in ROS2 are intentionally not wrapped to make handling diffs in PRs easier. I've copied in the relevant original lines to unwrap the lines I wrapped earlier. * Update README.md Accepted suggestion from @gbiggs Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * Update README.md Co-authored-by: Geoffrey Biggs <[email protected]> * The service name might provide more debug information than host:port details (#346) * The service name might provide more debug information than host:port details Co-authored-by: Tomoya Fujita <[email protected]> * fix: Changed 'galactic' to 'rolling' Changes due to suggestions from @gbiggs in the discussion of [PR 342](ros2#342 (comment)) Co-authored-by: Geoffrey Biggs <[email protected]> Co-authored-by: Tim Clephas <[email protected]> Co-authored-by: Tomoya Fujita <[email protected]>
- The service name might provide more debug information than host:port details (#346) * The service name might provide more debug information than host:port details Co-authored-by: Tomoya Fujita <[email protected]>
- Parametrizing service execution timeout (#340) * Parametrizing service execution timeout
- Fix cpplint error (#341) * Fix cpplint error
- Update package maintainers (#335) * Update package maintainers
- 0.10.2
- Changelog.
- Example for parameter_bridge (#330) * Add example for using the parameter_bridge
- Use rcpputils/scope_exit.hpp instead of rclcpp/scope_exit.hpp (#324)
- Use FindPython3 and make Python dependency explicit (#322)
- Bump ros-tooling/[email protected] (#323) See if that fixes the apt-update part of CI
- Add GitHub workflow for CI (#310) * init docker based CI * target rolling only * use setup-ros and action-ros-ci instead of custom scripts * quiet blind except warnings ros2#310 (comment) * remove ccache build times are not a concern and it is not significantly improved when using ros-tooling actions
- Update includes after rcutils/get_env.h deprecation (#311)
- 0.10.1
- Changelog.
- Fix logging for updated rclcpp interface (#303) * Fix logging for updated rclcpp interface * Update src/bridge.cpp Co-authored-by: Ivan Santiago Paunovic <[email protected]> * Update to pass char * * Uncrustify Co-authored-by: Ivan Santiago Paunovic <[email protected]>
- Fix typo in comments (#297) * very minor typo in comments * Fix other copy-paste typos. Co-authored-by: Steven! Ragnarök <[email protected]> Co-authored-by: tomoya <[email protected]>
- 0.10.0
- fix bug with sizeof when type of the arrays differ (#298)
- 0.9.5
- [forward port] update to use rosidl_parser and .idl files rather than rosidl_adapter and .msg files (#296) * update to use rosidl_parser and .idl files rather than rosidl_adapter and .msg files * fix quote style linting error
- Update maintainers (#286)
- Contributors: Andrej Orsula, Audrow Nash, Cem Karan, Chris Lalancette, Christophe Bedard, Derek, Dharini Dutia, Gary Servin, Geoffrey Biggs, Harsh Deshpande, Jacob Perron, Jorge Perez, Loy, Loy van Beek, Marco Bassa, Michael Carroll, Nick Sims, Paul Bovbel, Shane Loretz, Tim Clephas, Vicidel, William Woodall, locus-services, methylDragon, quarkytale, xlla
- use hardcoded QoS (keep all, transient local) for /tf_static topic in dynamic_bridge (#282)
- document explicitly passing the topic type to 'ros2 topic echo' (#279)
- Fix multiple definition if message with same name as service exists (#272)
- Contributors: Dirk Thomas
- When generating service mappings cast pair to set to avoid duplicate pairs (#268)
- Contributors: Gavin Suddrey
- Deprecate package key for service parameters, use full type instead (#263)
- Fix removing obsolete ROS 2 service bridges (#267)
- Gracefully handle invalid ROS 1 publishers (#266)
- Use reliable publisher in simple bridge (#264)
- Remove outdated information on Fast RTPS bug (#260)
- Contributors: Dirk Thomas, Thom747
- Avoid new deprecations (#255)
- Updates since changes to message_info in rclcpp (#253)
- Assert ROS 1 nodes' stdout (#247)
- Ignore actionlib_msgs deprecation warning (#245)
- Drop workaround for ros2/rmw_fastrtps#265. (#233)
- Code style only: wrap after open parenthesis if not in one line (#238)
- Contributors: Dirk Thomas, Jacob Perron, Michel Hidalgo, William Woodall
- fix building test when ROS 1 diagnostic_msgs is isolated from roscpp (#236)
- fix service with custom mapped message field (#234)
- Contributors: Dirk Thomas
- fix showing duplicate keys in --print-pairs (#225)
- fix bridging builtin_interfaces Duration and Time (#224)
- Don't use features that will be deprecated (#222)
- Contributors: Dirk Thomas, Peter Baughman
- Promote special CLI rules to flags. (#217)
- Update __log_rosout_disable workaround to use --ros-args. (#216)
- Clearer instructions for example (#211)
- add services bridging to parameter_bridge (#176)
- Contributors: Jose Luis Blanco-Claraco, Michel Hidalgo, cyrilleberger
- fix typename in static bridge (#209)
- fix cosmetic in message (#207)
- Use %zu print format for size_t (#204)
- Fix parameter bridge for topic if ros1 and ros2 type have a different name (#177)
- Contributors: Dirk Thomas, Emerson Knapp, cyrilleberger
- add note about rostopic echo (#202)
- add workspace setup documentation (#201)
- Contributors: Mabel Zhang
- Disable rosout logging for the bridge (#197)
- Handle launch_testing assertExitCodes correctly (#193)
- Support field selection (#174)
- Use interface kind names properly in ROS2 interface type names. (#194)
- Contributors: Juan Rodriguez Hortala, Michel Hidalgo, ivanpauno
- Adds interface type to ROS2 message type name. (#191)
- fix build by passing options (#192)
- changes to avoid deprecated API's (#189)
- Corrected publish calls with shared_ptr signature, leftovers (#190)
- Corrected publish calls with shared_ptr signature (#188)
- Migrate launch tests to new launch_testing features & API (#179)
- Some small fixes to the README (#186)
- Fix the generator. (#185)
- Merge pull request #183 from ros2/interface_specific_compilation_units
- remove note about memory usage from README
- split into interface specific compilation units
- duplicate template before modifying it to track history
- fix log messages (#182)
- use safe_load instead of deprecated load (#180)
- Merge pull request #178 from ros2/gonzalodepedro/fix-propagate-args-to-rcl-init
- Allows propagations of cmd args to rclcpp::init
- add section about DCO to CONTRIBUTING.md
- Add launch along with launch_testing as test dependencies. (#171)
- Switch to rclcpp logging and improve messages (#167)
- invalidate wrong cached result for diagnostic_msgs (#170)
- Drops legacy launch API usage. (#163)
- export find_ros1_package cmake (#164)
- ensure that the diagnostic_msgs package is from ROS 2 (#169)
- Allow latching for ROS1 pub, and custom qos for ROS2 components (#162)
- Allow external use of ros1_bridge library factories (#160)
- Contributors: Chris Lalancette, Dirk Thomas, Gonzalo de Pedro, Gonzo, Karsten Knese, Michel Hidalgo, Mikael Arguedas, Paul Bovbel, William Woodall, ivanpauno
- exclude ros1 nodelets (#152)
- fix is_package_mapping check (#151)
- Contributors: Dirk Thomas, Karsten Knese
- expose convert function (#146)
- support for custom field mapping for services (#147)
- handle idl files correctly (#145)
- Fix for actions subfolder introduction in ros2 message bridge (#143)
- use new error handling API from rcutils (#141)
- changed cmake message logger level (#138)
- Contributors: Alberto Soragna, Dirk Thomas, Karsten Knese, Samuel Servulo, William Woodall
- Merge pull request #136 from ros2/update_docs_135
- update doc to reflect that any mapping combination is supported
- rule can be a message mapping even if a field mapping is provided as well (#135)
- Contributors: Mikael Arguedas
- remove --build-tests which is an ament argument from colcon invocation
- print service pairs as well (#124)
- print message for all ROS 2 message pkgs (#123)
- update README to use colcon and ROS Melodic (#122)
- include module name which wasn't found in error message (#121)
- use catkin_pkg to parse packages (#119)
- migrate launch -> launch.legacy (#117)
- Duplicate messages in bidirectional_bridge fix (#113)
- Fix linter failures from includes (#110)
- Map duration and time messages (#106)
- clarify that all field must be listed explicitly (#109)
- add an error message if the mapping rules are not a list (#107)
- advise to ask questions on ROS answers
- Contributors: ArkadiuszNiemiec, Dirk Thomas, Mikael Arguedas, Tully Foote, William Woodall, dhood
- match topic name printed in console (#102)
- Update for rclcpp namespace removals (#101)
- cmake 3.10 compatibility: pass absolute path to file(GENERATE) function (#100)
- depend on rosidl_interfaces_packages group (#99)
- Fix building of ros1_bridge against newer roscpp. (#98)
- Merge pull request #97 from ros2/ament_cmake_pytest
- use ament_cmake_pytest instead of ament_cmake_nose
- Merge pull request #96 from ros2/print_type_names
- print bridged type names
- Increase timeout waiting for server for ros2 client in tests (#94)
- update style to match latest uncrustify (#93)
- Contributors: Brian Gerkey, Chris Lalancette, Dirk Thomas, Esteve Fernandez, Hunter Allen, Jackie Kay, Karsten Knese, Mikael Arguedas, Morgan Quigley, Rafal Kozik, Rafał Kozik, Steven! Ragnarök, Tully Foote, William Woodall, dhood, gerkey