summaryrefslogtreecommitdiff
path: root/dev-ros/test_rosparam/files/yaml.patch
blob: 48f2c1d5bb191b63190d7c16f28df59898a3d0f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
From 29053c4832229efa7160fb944c05e3bc82e11540 Mon Sep 17 00:00:00 2001
From: Martijn Buijs <Martijn.buijs@gmail.com>
Date: Tue, 23 Apr 2019 18:20:12 +0200
Subject: [PATCH] Switch to yaml.safe_load(_all) to prevent YAMLLoadWarning
 (#1688)

* Switch to yaml.safe_load(_all) to prevent YAMLLoadWarning

* Change all usages of yaml.load to yaml.safe_load

* Extend PyYAML's SafeLoader and use it with `yaml.load`

Also added convenience functions for using this loader for reuse in
`roslaunch`

* fix typo in rosparam.yaml_load_all

* Modify Loader and SafeLoader in yaml module directly

* Revert whitespace change

* Revert unrelated change to import through global variable construction
---
 clients/rospy/src/rospy/client.py             |  2 +-
 .../test/test_roslib_message.py               |  2 +-
 .../client_verification/test_slave_api.py     |  2 +-
 test/test_rosparam/test/check_rosparam.py     |  8 ++---
 .../check_rosparam_command_line_online.py     |  2 +-
 .../check_rosservice_command_line_online.py   |  4 +--
 test/test_rostopic/test/test_rostopic_unit.py | 30 +++++++++----------
 tools/rosbag/src/rosbag/bag.py                |  2 +-
 tools/rosgraph/src/rosgraph/roslogging.py     |  2 +-
 tools/roslaunch/src/roslaunch/loader.py       |  4 +--
 .../test/unit/test_roslaunch_dump_params.py   |  4 +--
 tools/rosparam/src/rosparam/__init__.py       |  7 ++++-
 tools/rosservice/src/rosservice/__init__.py   |  4 +--
 tools/rostopic/src/rostopic/__init__.py       |  6 ++--
 tools/topic_tools/scripts/relay_field         |  2 +-
 15 files changed, 43 insertions(+), 38 deletions(-)

diff --git a/test/test_rosparam/test/check_rosparam.py b/test/test_rosparam/test/check_rosparam.py
index 52ed976b5..fe8c03fb4 100755
--- a/test/test_rosparam/test/check_rosparam.py
+++ b/test/test_rosparam/test/check_rosparam.py
@@ -227,7 +227,7 @@ def test_rosparam_get(self):
         with fakestdout() as b:
             rosparam.yamlmain([cmd, 'get', "g1"])
             import yaml
-            d = yaml.load(b.getvalue())
+            d = yaml.safe_load(b.getvalue())
             self.assertEquals(d['float'], 10.0)
             self.assertEquals(d['int'], 10.0)
             self.assertEquals(d['string'], "g1-foo-value")
@@ -346,18 +346,18 @@ def test_rosparam_dump(self):
         import yaml
         with open(f_out) as b:
             with open(f) as b2:
-                self.assertEquals(yaml.load(b.read()), yaml.load(b2.read()))
+                self.assertEquals(yaml.safe_load(b.read()), yaml.safe_load(b2.read()))
 
         rosparam.yamlmain([cmd, 'dump', '-v', f_out, 'rosparam_dump'])                
         with open(f_out) as b:
             with open(f) as b2:
-                self.assertEquals(yaml.load(b.read()), yaml.load(b2.read()))
+                self.assertEquals(yaml.safe_load(b.read()), yaml.safe_load(b2.read()))
 
         # yaml file and std_out should be the same
         with fakestdout() as b:
             rosparam.yamlmain([cmd, 'dump'])
             with open(f) as b2:
-                self.assertEquals(yaml.load(b.getvalue())['rosparam_dump'], yaml.load(b2.read()))
+                self.assertEquals(yaml.safe_load(b.getvalue())['rosparam_dump'], yaml.safe_load(b2.read()))
 
     def test_fullusage(self):
         import rosparam