roslibpy 2.0.0__tar.gz → 2.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {roslibpy-2.0.0 → roslibpy-2.0.1}/.bumpversion.cfg +1 -1
- {roslibpy-2.0.0 → roslibpy-2.0.1}/CHANGELOG.rst +19 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/LICENSE +2 -2
- {roslibpy-2.0.0 → roslibpy-2.0.1}/PKG-INFO +20 -1
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/conf.py +1 -1
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/__version__.py +1 -1
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/comm/comm_autobahn.py +10 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/PKG-INFO +20 -1
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tasks.py +1 -1
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/test_actions.py +2 -10
- {roslibpy-2.0.0 → roslibpy-2.0.1}/.editorconfig +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/AUTHORS.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/CODE_OF_CONDUCT.md +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/CONTRIBUTING.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/ISSUE_TEMPLATE.md +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/MANIFEST.in +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/README.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/authors.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/changelog.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/contributing.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/01_debug_logging.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/01_debug_logging.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/02_check_latency.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/02_check_latency.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/03_slow_consumer.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/03_slow_consumer.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/04_publish_image.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/04_publish_image.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/05_subscribe_to_images.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/05_subscribe_to_images.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples/robots.jpg +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/examples.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-action-client.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-action-server.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-hello-world-listener.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-hello-world-run-forever.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-hello-world-talker.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-hello-world.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-service-call-logger.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-service-call-set-bool.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros-service.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/files/ros2-action-client.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/index.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/readme.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/reference/index.rst +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/requirements.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/docs/spelling_wordlist.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/pyproject.toml +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/requirements-dev.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/setup.cfg +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/setup.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/__init__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/__main__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/comm/__init__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/comm/comm.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/comm/comm_cli.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/core.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/event_emitter.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/ros.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/ros1/__init__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/ros1/actionlib.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/ros2/__init__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy/tf.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/SOURCES.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/dependency_links.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/entry_points.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/not-zip-safe +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/requires.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/src/roslibpy.egg-info/top_level.txt +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ipy_test_runner.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/__init__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_actionlib.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_core.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_param.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_ros.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_rosapi.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_service.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_tf.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros1/test_topic.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/__init__.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/test_action_client.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/test_core.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/test_ros.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/test_rosapi.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/ros2/test_topic.py +0 -0
- {roslibpy-2.0.0 → roslibpy-2.0.1}/tests/test_ws_headers.py +0 -0
|
@@ -7,6 +7,25 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
The format is based on `Keep a Changelog <http://keepachangelog.com/en/1.0.0/>`_
|
|
8
8
|
and this project adheres to `Semantic Versioning <http://semver.org/spec/v2.0.0.html>`_.
|
|
9
9
|
|
|
10
|
+
2.0.1
|
|
11
|
+
----------
|
|
12
|
+
|
|
13
|
+
**Added**
|
|
14
|
+
|
|
15
|
+
**Changed**
|
|
16
|
+
|
|
17
|
+
**Fixed**
|
|
18
|
+
|
|
19
|
+
* Fixed reconnection on the Twisted transport failing after a connection had
|
|
20
|
+
been idle for more than a few seconds: ``connect`` now schedules the
|
|
21
|
+
connection through the reactor thread so an idle reactor is woken to service
|
|
22
|
+
it (previously the new connector was added from another thread and the
|
|
23
|
+
reactor, blocked in ``select()``, never noticed it).
|
|
24
|
+
|
|
25
|
+
**Deprecated**
|
|
26
|
+
|
|
27
|
+
**Removed**
|
|
28
|
+
|
|
10
29
|
2.0.0
|
|
11
30
|
----------
|
|
12
31
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2018 Gramazio Kohler Research
|
|
3
|
+
Copyright (c) 2018 ETH Zurich, Gramazio Kohler Research
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
18
18
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
19
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
20
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
21
|
+
SOFTWARE.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: roslibpy
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.1
|
|
4
4
|
Summary: Python ROS Bridge library.
|
|
5
5
|
Home-page: https://github.com/gramaziokohler/roslibpy
|
|
6
6
|
Author: Gramazio Kohler Research
|
|
@@ -182,6 +182,25 @@ All notable changes to this project will be documented in this file.
|
|
|
182
182
|
The format is based on `Keep a Changelog <http://keepachangelog.com/en/1.0.0/>`_
|
|
183
183
|
and this project adheres to `Semantic Versioning <http://semver.org/spec/v2.0.0.html>`_.
|
|
184
184
|
|
|
185
|
+
2.0.1
|
|
186
|
+
----------
|
|
187
|
+
|
|
188
|
+
**Added**
|
|
189
|
+
|
|
190
|
+
**Changed**
|
|
191
|
+
|
|
192
|
+
**Fixed**
|
|
193
|
+
|
|
194
|
+
* Fixed reconnection on the Twisted transport failing after a connection had
|
|
195
|
+
been idle for more than a few seconds: ``connect`` now schedules the
|
|
196
|
+
connection through the reactor thread so an idle reactor is woken to service
|
|
197
|
+
it (previously the new connector was added from another thread and the
|
|
198
|
+
reactor, blocked in ``select()``, never noticed it).
|
|
199
|
+
|
|
200
|
+
**Deprecated**
|
|
201
|
+
|
|
202
|
+
**Removed**
|
|
203
|
+
|
|
185
204
|
2.0.0
|
|
186
205
|
----------
|
|
187
206
|
|
|
@@ -25,7 +25,7 @@ project = "roslibpy"
|
|
|
25
25
|
year = "2019"
|
|
26
26
|
author = "Gramazio Kohler Research"
|
|
27
27
|
copyright = "{0}, {1}".format(year, author)
|
|
28
|
-
version = release = "2.0.
|
|
28
|
+
version = release = "2.0.1"
|
|
29
29
|
|
|
30
30
|
pygments_style = "trac" # Perhaps change to sphinx
|
|
31
31
|
templates_path = ["."]
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
__title__ = "roslibpy"
|
|
5
5
|
__description__ = "Python ROS Bridge library."
|
|
6
6
|
__url__ = "https://github.com/gramaziokohler/roslibpy"
|
|
7
|
-
__version__ = "2.0.
|
|
7
|
+
__version__ = "2.0.1"
|
|
8
8
|
__author__ = "Gramazio Kohler Research"
|
|
9
9
|
__author_email__ = "gramaziokohler@arch.ethz.ch"
|
|
10
10
|
__license__ = "MIT license"
|
|
@@ -71,6 +71,16 @@ class AutobahnRosBridgeClientFactory(EventEmitterMixin, ReconnectingClientFactor
|
|
|
71
71
|
|
|
72
72
|
def connect(self):
|
|
73
73
|
"""Establish WebSocket connection to the ROS server defined for this factory."""
|
|
74
|
+
# Route the connection setup through the reactor thread. Calling
|
|
75
|
+
# ``connectWS`` directly only happens to work while the reactor is busy;
|
|
76
|
+
# once it is idle (e.g. more than ``closeHandshakeTimeout`` seconds after
|
|
77
|
+
# a previous disconnect) it sits blocked in ``select()`` and never
|
|
78
|
+
# notices a connector added from another thread, so the connection times
|
|
79
|
+
# out. ``callFromThread`` wakes it, and is also safe before the reactor
|
|
80
|
+
# has started (the call is queued and runs once it does).
|
|
81
|
+
reactor.callFromThread(self._connect)
|
|
82
|
+
|
|
83
|
+
def _connect(self):
|
|
74
84
|
self.connector = connectWS(self)
|
|
75
85
|
|
|
76
86
|
@property
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: roslibpy
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.1
|
|
4
4
|
Summary: Python ROS Bridge library.
|
|
5
5
|
Home-page: https://github.com/gramaziokohler/roslibpy
|
|
6
6
|
Author: Gramazio Kohler Research
|
|
@@ -182,6 +182,25 @@ All notable changes to this project will be documented in this file.
|
|
|
182
182
|
The format is based on `Keep a Changelog <http://keepachangelog.com/en/1.0.0/>`_
|
|
183
183
|
and this project adheres to `Semantic Versioning <http://semver.org/spec/v2.0.0.html>`_.
|
|
184
184
|
|
|
185
|
+
2.0.1
|
|
186
|
+
----------
|
|
187
|
+
|
|
188
|
+
**Added**
|
|
189
|
+
|
|
190
|
+
**Changed**
|
|
191
|
+
|
|
192
|
+
**Fixed**
|
|
193
|
+
|
|
194
|
+
* Fixed reconnection on the Twisted transport failing after a connection had
|
|
195
|
+
been idle for more than a few seconds: ``connect`` now schedules the
|
|
196
|
+
connection through the reactor thread so an idle reactor is woken to service
|
|
197
|
+
it (previously the new connector was added from another thread and the
|
|
198
|
+
reactor, blocked in ``select()``, never noticed it).
|
|
199
|
+
|
|
200
|
+
**Deprecated**
|
|
201
|
+
|
|
202
|
+
**Removed**
|
|
203
|
+
|
|
185
204
|
2.0.0
|
|
186
205
|
----------
|
|
187
206
|
|
|
@@ -165,7 +165,7 @@ def release(ctx, release_type):
|
|
|
165
165
|
raise Exit('The release type parameter is invalid.\nMust be one of: major, minor, patch')
|
|
166
166
|
|
|
167
167
|
# Run checks
|
|
168
|
-
ctx.run('invoke check
|
|
168
|
+
ctx.run('invoke check')
|
|
169
169
|
|
|
170
170
|
# Bump version and git tag it
|
|
171
171
|
ctx.run('bump2version %s --verbose' % release_type)
|
|
@@ -9,11 +9,7 @@ def test_fibonacci():
|
|
|
9
9
|
ros = Ros("127.0.0.1", 9090)
|
|
10
10
|
ros.run()
|
|
11
11
|
|
|
12
|
-
action = ActionClient(
|
|
13
|
-
ros,
|
|
14
|
-
'/fibonacci',
|
|
15
|
-
'example_interfaces/action/Fibonacci'
|
|
16
|
-
)
|
|
12
|
+
action = ActionClient(ros, "/fibonacci", "example_interfaces/action/Fibonacci")
|
|
17
13
|
|
|
18
14
|
results = {}
|
|
19
15
|
|
|
@@ -42,11 +38,7 @@ def test_cancel():
|
|
|
42
38
|
ros = Ros("127.0.0.1", 9090)
|
|
43
39
|
ros.run()
|
|
44
40
|
|
|
45
|
-
action = ActionClient(
|
|
46
|
-
ros,
|
|
47
|
-
'/fibonacci',
|
|
48
|
-
'example_interfaces/action/Fibonacci'
|
|
49
|
-
)
|
|
41
|
+
action = ActionClient(ros, "/fibonacci", "example_interfaces/action/Fibonacci")
|
|
50
42
|
|
|
51
43
|
results = {}
|
|
52
44
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|