commit:     4d975fc426f37698604a2a2b26309838417bb060
Author:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 11 15:52:22 2019 +0000
Commit:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Wed Dec 11 16:12:27 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d975fc4

dev-ros/roslaunch: remove yaml.load() usages

Package-Manager: Portage-2.3.81, Repoman-2.3.20
Signed-off-by: Alexis Ballier <aballier <AT> gentoo.org>

 dev-ros/roslaunch/files/yaml.patch                 | 44 ++++++++++++++++++++++
 ...ch-1.14.3.ebuild => roslaunch-1.14.3-r1.ebuild} |  2 +-
 dev-ros/roslaunch/roslaunch-9999.ebuild            |  2 +-
 3 files changed, 46 insertions(+), 2 deletions(-)

diff --git a/dev-ros/roslaunch/files/yaml.patch 
b/dev-ros/roslaunch/files/yaml.patch
new file mode 100644
index 00000000000..135e9927c40
--- /dev/null
+++ b/dev-ros/roslaunch/files/yaml.patch
@@ -0,0 +1,44 @@
+Index: roslaunch/src/roslaunch/loader.py
+===================================================================
+--- roslaunch.orig/src/roslaunch/loader.py
++++ roslaunch/src/roslaunch/loader.py
+@@ -98,7 +98,7 @@ def convert_value(value, type_):
+         raise ValueError("%s is not a '%s' type"%(value, type_))
+     elif type_ == 'yaml':
+         try:
+-            return yaml.load(value)
++            return yaml.safe_load(value)
+         except yaml.parser.ParserError as e:
+             raise ValueError(e)
+     else:
+@@ -409,7 +409,7 @@ class Loader(object):
+             if rosparam is None:
+                 import rosparam
+             try:
+-                data = yaml.load(text)
++                data = yaml.safe_load(text)
+                 # #3162: if there is no YAML, load() will return an
+                 # empty string.  We want an empty dictionary instead
+                 # for our representation of empty.
+Index: roslaunch/test/unit/test_roslaunch_dump_params.py
+===================================================================
+--- roslaunch.orig/test/unit/test_roslaunch_dump_params.py
++++ roslaunch/test/unit/test_roslaunch_dump_params.py
+@@ -53,7 +53,7 @@ class TestDumpParams(unittest.TestCase):
+         o, e = p.communicate()
+         self.assert_(p.returncode == 0, "Return code nonzero for param dump! 
Code: %d" % (p.returncode))
+ 
+-        self.assertEquals({'/noop': 'noop'}, yaml.load(o))
++        self.assertEquals({'/noop': 'noop'}, yaml.safe_load(o))
+ 
+         p = Popen([cmd, '--dump-params', 'roslaunch', 
'test-dump-rosparam.launch'], stdout = PIPE)
+         o, e = p.communicate()
+@@ -95,7 +95,7 @@ class TestDumpParams(unittest.TestCase):
+             '/noparam1': 'value1',
+             '/noparam2': 'value2',
+             }
+-        output_val = yaml.load(o)
++        output_val = yaml.safe_load(o)
+         if not val == output_val:
+             for k, v in val.items():
+                 if k not in output_val:

diff --git a/dev-ros/roslaunch/roslaunch-1.14.3.ebuild 
b/dev-ros/roslaunch/roslaunch-1.14.3-r1.ebuild
similarity index 95%
rename from dev-ros/roslaunch/roslaunch-1.14.3.ebuild
rename to dev-ros/roslaunch/roslaunch-1.14.3-r1.ebuild
index be129d15148..cc74b7791b5 100644
--- a/dev-ros/roslaunch/roslaunch-1.14.3.ebuild
+++ b/dev-ros/roslaunch/roslaunch-1.14.3-r1.ebuild
@@ -31,7 +31,7 @@ DEPEND="${RDEPEND}
                dev-python/nose[${PYTHON_USEDEP}]
                dev-ros/test_rosmaster
        )"
-PATCHES=( "${FILESDIR}/timeout.patch" )
+PATCHES=( "${FILESDIR}/timeout.patch" "${FILESDIR}/yaml.patch" )
 
 src_test() {
        rosdep update

diff --git a/dev-ros/roslaunch/roslaunch-9999.ebuild 
b/dev-ros/roslaunch/roslaunch-9999.ebuild
index be129d15148..cc74b7791b5 100644
--- a/dev-ros/roslaunch/roslaunch-9999.ebuild
+++ b/dev-ros/roslaunch/roslaunch-9999.ebuild
@@ -31,7 +31,7 @@ DEPEND="${RDEPEND}
                dev-python/nose[${PYTHON_USEDEP}]
                dev-ros/test_rosmaster
        )"
-PATCHES=( "${FILESDIR}/timeout.patch" )
+PATCHES=( "${FILESDIR}/timeout.patch" "${FILESDIR}/yaml.patch" )
 
 src_test() {
        rosdep update

Reply via email to