This repository was archived by the owner on May 31, 2025. It is now read-only.
Changes between 1.15.9 and 1.15.11 for backporting to Melodic#2152
Merged
mjcarroll merged 13 commits intomelodic-develfrom Apr 26, 2021
Merged
Changes between 1.15.9 and 1.15.11 for backporting to Melodic#2152mjcarroll merged 13 commits intomelodic-develfrom
mjcarroll merged 13 commits intomelodic-develfrom
Conversation
… to fail in compilation when msg type mismatches occur (#2096)
There is code which uses getNumPublishers() being positive as a guarantee that a call to the remote publisher's publish() is guaranteed to send a message to the subscriber. However, because connections which have not yet received their header are counted, this is not true. One such user of getNumPublishers() is actionlib. It relies on getNumPublishers() only returning postive when a publish on the result topic would succeed. Fix this by only counting connections with received headers. If we have received the header, we know the remote publisher is tracking a connection back to us and has accepted the connection and that a call to publish() on its end will send the message. Note that this issue is only relevant for the TCP transport, as the UDP transport and intraprocess link have already setup their header by the time they are added to the publication links. Since all publisher link types update the header, including the caller ID, counting those with caller IDs set to non-empty is sufficient to solve the issue.
* fix: roscore -> AttributeError: 'ProcessMonitor' object has no attribute 'isAlive' * Fix AttributeError: 'Thread' object has no attribute 'isAlive' * Update remaining instances of isAlive to is_alive Keep mock method isAlive to keep backwards compatibility for users who happen to be using the mock object. Signed-off-by: Jacob Perron <jacob@openrobotics.org> Co-authored-by: Jacob Perron <jacob@openrobotics.org>
* Portable fix. * include <climits> * Adding missing headers. * Adding #include <vector>
Fixes #2128 Fix bug "TypeError: not enough arguments for format string" in DeserializationError Co-authored-by: 229143434@qq.com <zxcvbnm123-*@> Co-authored-by: tomoya <Tomoya.Fujita@sony.com>
* Add unit test for removing a callback that's being executed. This unit test fails until we can remove callbacks that are being executed. * Use the marked_for_removal flag if the callback is being executed. This fixes a potential deadlock when a timer is being removed that's also being executed.
All dependencies must be declared in the package.xml, and all these dependencies must be in the ROS distro. rosmsg doesn't meet either of these requirements today, by using but not depending on both rostest and std_srvs, and by using test_rosmaster, which isn't in the ROS distro at all. Update rosmsg to properly depend upon what it requires, and stop using test_rosmaster completely. In place of test_rosmaster, use diagnostic_msgs, which satisfies the same requirements of the existing tests by having both messages and services as well as standalone and recursive messages. Signed-off-by: Kyle Fazzari <kyle@canonical.com>
Addressing performance issues described in #2118 Signed-off-by: Jesse Ikawa <jikawa@amazon.com> Co-authored-by: Emerson Knapp <537409+emersonknapp@users.noreply.github.com>
Signed-off-by: Martin Pecka <peckama2@fel.cvut.cz>
This is copy&paste from https://github.com/ros/ros_comm/pull/2038/files#diff-8c5ae1a482044f103bf9b2fa9188ff9639ed617f259a8dd816075bc9e4005ef9R152 where the SIGINT handler was added to rosbag record.
mjcarroll
approved these changes
Apr 26, 2021
Contributor
This file contains hidden or 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
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
The following list of changes has been integrated into ros_comm 1.15.11 (Noetic) since the last Melodic release (1.14.10)
Backported (in this PR):
Replace message assertion with logging in order to have release modes to fail in compilation when msg type mismatches occur (Replace message assertion with logging in order to have release modes… #2096)
Fix /use_sim_time parameter typo in roswtf error (Fix /use_sim_time parameter typo in roswtf error #2102)
rosbag: start player in paused state (rosbag: start player in paused state #2086)
Add missing Boost (Add missing library depends #2108)
fix getNumPublishers() to only count fully connected (fix getNumPublishers() to only count fully connected #2107)
Fix AttributeError isAlive (Fix AttributeError isAlive #2092)
Portable fix to recent Windows build breaks (Portable fix to recent Windows build breaks. #2110)
Fix "TypeError: not enough arguments for format string" (fix bug #2128 "TypeError: not enough arguments for format string" #2127)
Fix for deadlock issue 1980 (Fix for deadlock issue 1980 #2121)
rosmsg: clean up test dependencies (rosmsg: clean up test dependencies #2103)
Fix HTTP for kernel < 4.16 (Fix HTTP for kernel < 4.16 #2132)
rosbag: recorder: Catch all exceptions in record thread. (Avoid uncatchable exception in bagthread [noetic] #2151)
handle SIGINT in rosbag play (handle SIGINT in rosbag play #2150)
Not backported:
Use Logger.warning() instead of the deprecated warn() (Use Logger.warning() instead of the deprecated warn(). #2120)
fix issue 2141: raw_input does not exist in python 3 (fix issue 2141: raw_input does not exist in python 3 #2143)