diff options
Diffstat (limited to 'dev-python/rosdistro')
| -rw-r--r-- | dev-python/rosdistro/Manifest | 2 | ||||
| -rw-r--r-- | dev-python/rosdistro/files/yaml.patch | 252 | ||||
| -rw-r--r-- | dev-python/rosdistro/metadata.xml | 12 | ||||
| -rw-r--r-- | dev-python/rosdistro/rosdistro-0.8.0.ebuild | 54 | ||||
| -rw-r--r-- | dev-python/rosdistro/rosdistro-0.8.1.ebuild | 54 | ||||
| -rw-r--r-- | dev-python/rosdistro/rosdistro-9999.ebuild | 54 |
6 files changed, 428 insertions, 0 deletions
diff --git a/dev-python/rosdistro/Manifest b/dev-python/rosdistro/Manifest new file mode 100644 index 000000000000..cc49f4a4757e --- /dev/null +++ b/dev-python/rosdistro/Manifest @@ -0,0 +1,2 @@ +DIST rosdistro-0.8.0.tar.gz 60527 BLAKE2B 9404452dc62c9f7d1482de3c13df0093ac26a60554c97fa097cb14548cdb814fbdc96a26db2d24aa1f2eb99de86f27807ecdc50e0e00a8fa727af8803ab5d644 SHA512 1f4620454f78bd03f75a8b1b8535588a8d6e50aeef17dbf346e8d0443a6fbc5ec83646767bf86521fb65508e205fc3edb8f0c97a81aec8d6b72088d9d78a14f0 +DIST rosdistro-0.8.1.tar.gz 61268 BLAKE2B 16de2f747eab59f0d2eb880cfa5cde8b62f8f6b71773f1c72665c5b58bf9f63f8e593b2dd0924b104488ce5e7e5bdf930a52db677180542806a899970ede5b37 SHA512 3d49aaf460904e2cce635443cb95ca54bdd429549016a614da7038703752187a00b98916e2826193897048753a2b2727eb153296d30abe66c56bd54d68648b08 diff --git a/dev-python/rosdistro/files/yaml.patch b/dev-python/rosdistro/files/yaml.patch new file mode 100644 index 000000000000..2f81a0218b89 --- /dev/null +++ b/dev-python/rosdistro/files/yaml.patch @@ -0,0 +1,252 @@ +Index: rosdistro-0.8.0/scripts/rosdistro_convert +=================================================================== +--- rosdistro-0.8.0.orig/scripts/rosdistro_convert ++++ rosdistro-0.8.0/scripts/rosdistro_convert +@@ -58,7 +58,7 @@ def get_targets(): + url = BASE_SRC_URL + '/releases/targets.yaml' + print('Load "%s"' % url) + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + targets = {} + for d in data: + targets[d.keys()[0]] = d.values()[0] +@@ -69,13 +69,13 @@ def convert_release(dist_name, targets): + url = BASE_SRC_URL + '/releases/%s.yaml' % dist_name + print('Load "%s"' % url) + yaml_str = load_url(url) +- input_ = yaml.load(yaml_str) ++ input_ = yaml.safe_load(yaml_str) + + # improve conversion performance by reusing results from last run + last_dist = None + if os.path.exists(dist_name + '/release.yaml'): + with open(dist_name + '/release.yaml', 'r') as f: +- last_data = yaml.load(f.read()) ++ last_data = yaml.safe_load(f.read()) + last_dist = ReleaseFile(dist_name, last_data) + + output = {} +@@ -162,7 +162,7 @@ def convert_source(dist_name): + url = BASE_SRC_URL + '/releases/%s-devel.yaml' % dist_name + print('Load "%s"' % url) + yaml_str = load_url(url) +- input_ = yaml.load(yaml_str) ++ input_ = yaml.safe_load(yaml_str) + + output = {} + output['type'] = 'source' +@@ -207,7 +207,7 @@ def convert_doc(dist_name): + if filename.endswith('.rosinstall'): + name = os.path.splitext(os.path.basename(filename))[0] + with open(os.path.join(doc_base, filename)) as f: +- data = yaml.load(f) ++ data = yaml.safe_load(f) + if name.endswith('_depends'): + rosinstall_depends[name] = data + else: +Index: rosdistro-0.8.0/scripts/rosdistro_migrate_to_rep_141 +=================================================================== +--- rosdistro-0.8.0.orig/scripts/rosdistro_migrate_to_rep_141 ++++ rosdistro-0.8.0/scripts/rosdistro_migrate_to_rep_141 +@@ -18,7 +18,7 @@ import yaml + + + def migrate(index_yaml): +- data = yaml.load(open(index_yaml, 'r')) ++ data = yaml.safe_load(open(index_yaml, 'r')) + assert data['type'] == 'index' + assert data['version'] == 1 + data['version'] = 2 +@@ -75,7 +75,7 @@ def generate_repos_url(repos_url, doc_ur + data['repositories'] = {} + + # migrate release stuff +- release_data = yaml.load(open(release_url, 'r')) ++ release_data = yaml.safe_load(open(release_url, 'r')) + assert release_data['type'] == 'release' + assert release_data['version'] == 1 + +@@ -100,7 +100,7 @@ def generate_repos_url(repos_url, doc_ur + data['repositories'][repo_name] = repo_data + + # migrate doc stuff +- doc_data = yaml.load(open(doc_url, 'r')) ++ doc_data = yaml.safe_load(open(doc_url, 'r')) + assert doc_data['type'] == 'doc' + assert doc_data['version'] == 1 + +@@ -111,7 +111,7 @@ def generate_repos_url(repos_url, doc_ur + data['repositories'][repo_name]['doc'] = get_dict_parts(doc_repo_data, ['type', 'url', 'version']) + + # migrate source stuff +- source_data = yaml.load(open(source_url, 'r')) ++ source_data = yaml.safe_load(open(source_url, 'r')) + assert source_data['type'] == 'source' + assert source_data['version'] == 1 + +@@ -137,10 +137,10 @@ def update_cache(index_yaml, distro_name + if not isinstance(yaml_str, str): + yaml_str = yaml_str.decode('utf-8') + f.close() +- cache_data = yaml.load(yaml_str) ++ cache_data = yaml.safe_load(yaml_str) + + del cache_data['release_file'] +- distribution_data = yaml.load(open(os.path.join(base, distribution_file), 'r')) ++ distribution_data = yaml.safe_load(open(os.path.join(base, distribution_file), 'r')) + cache_data['distribution_file'] = distribution_data + + cache_data['release_package_xmls'] = cache_data['package_xmls'] +Index: rosdistro-0.8.0/scripts/rosdistro_migrate_to_rep_143 +=================================================================== +--- rosdistro-0.8.0.orig/scripts/rosdistro_migrate_to_rep_143 ++++ rosdistro-0.8.0/scripts/rosdistro_migrate_to_rep_143 +@@ -10,7 +10,7 @@ import yaml + + + def migrate(index_yaml): +- data = yaml.load(open(index_yaml, 'r')) ++ data = yaml.safe_load(open(index_yaml, 'r')) + assert data['type'] == 'index' + assert data['version'] == 2 + data['version'] = 3 +Index: rosdistro-0.8.0/src/rosdistro/develdistro.py +=================================================================== +--- rosdistro-0.8.0.orig/src/rosdistro/develdistro.py ++++ rosdistro-0.8.0/src/rosdistro/develdistro.py +@@ -8,7 +8,7 @@ import yaml + class DevelDistro: + def __init__(self, name): + url = urlopen('https://raw.github.com/ros/rosdistro/master/releases/{0}-devel.yaml'.format(name)) +- distro = yaml.load(url.read())['repositories'] ++ distro = yaml.safe_load(url.read())['repositories'] + self.repositories = {} + for name, data in distro.iteritems(): + repo = DevelDistroRepo(name, data) +Index: rosdistro-0.8.0/src/rosdistro/legacy.py +=================================================================== +--- rosdistro-0.8.0.orig/src/rosdistro/legacy.py ++++ rosdistro-0.8.0/src/rosdistro/legacy.py +@@ -122,7 +122,7 @@ def get_release_cache(index, dist_name): + f.close() + else: + raise NotImplementedError('The url of the cache must end with either ".yaml" or ".yaml.gz"') +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + return ReleaseCache(dist_name, data) + + +Index: rosdistro-0.8.0/src/rosdistro/rosdistro.py +=================================================================== +--- rosdistro-0.8.0.orig/src/rosdistro/rosdistro.py ++++ rosdistro-0.8.0/src/rosdistro/rosdistro.py +@@ -161,7 +161,7 @@ class RosDistroFile: + + # parse ros distro file + distro_url = urlopen('https://raw.github.com/ros/rosdistro/master/releases/%s.yaml' % name) +- distro = yaml.load(distro_url.read())['repositories'] ++ distro = yaml.safe_load(distro_url.read())['repositories'] + + # loop over all repo's + for repo_name, data in distro.iteritems(): +@@ -338,7 +338,7 @@ class RosDependencies: + + tar = tarfile.open(fh.name, 'r') + data = tar.extractfile(self.file_name) +- deps = yaml.load(data.read()) ++ deps = yaml.safe_load(data.read()) + if not deps \ + or 'cache_version' not in deps \ + or deps['cache_version'] != CACHE_VERSION \ +Index: rosdistro-0.8.0/test/test_distribution.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_distribution.py ++++ rosdistro-0.8.0/test/test_distribution.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_distribution_file(): + url = 'file://' + FILES_DIR + '/foo/distribution.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + dist_file = DistributionFile('foo', data) + _validate_dist_file(dist_file) + +Index: rosdistro-0.8.0/test/test_doc.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_doc.py ++++ rosdistro-0.8.0/test/test_doc.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_doc_file(): + url = 'file://' + FILES_DIR + '/foo/distribution.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + doc_file = DocFile('foo', data) + _validate_doc_file(doc_file) + +Index: rosdistro-0.8.0/test/test_doc_build.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_doc_build.py ++++ rosdistro-0.8.0/test/test_doc_build.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_doc_build_file(): + url = 'file://' + FILES_DIR + '/foo/doc-build.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + DocBuildFile('foo', data) + + +Index: rosdistro-0.8.0/test/test_release.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_release.py ++++ rosdistro-0.8.0/test/test_release.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_release_file(): + url = 'file://' + FILES_DIR + '/foo/distribution.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + rel_file = ReleaseFile('foo', data) + _validate_rel_file(rel_file) + +Index: rosdistro-0.8.0/test/test_release_build.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_release_build.py ++++ rosdistro-0.8.0/test/test_release_build.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_release_build_file(): + url = 'file://' + FILES_DIR + '/foo/release-build.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + ReleaseBuildFile('foo', data) + + +Index: rosdistro-0.8.0/test/test_source.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_source.py ++++ rosdistro-0.8.0/test/test_source.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_source_file(): + url = 'file://' + FILES_DIR + '/foo/distribution.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + src_file = SourceFile('foo', data) + _validate_src_file(src_file) + +Index: rosdistro-0.8.0/test/test_source_build.py +=================================================================== +--- rosdistro-0.8.0.orig/test/test_source_build.py ++++ rosdistro-0.8.0/test/test_source_build.py +@@ -12,7 +12,7 @@ FILES_DIR = os.path.normpath(os.path.joi + def test_source_build_file(): + url = 'file://' + FILES_DIR + '/foo/source-build.yaml' + yaml_str = load_url(url) +- data = yaml.load(yaml_str) ++ data = yaml.safe_load(yaml_str) + SourceBuildFile('foo', data) + + diff --git a/dev-python/rosdistro/metadata.xml b/dev-python/rosdistro/metadata.xml new file mode 100644 index 000000000000..31206d60d5d4 --- /dev/null +++ b/dev-python/rosdistro/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>ros@gentoo.org</email> + <name>Gentoo ROS Project</name> + </maintainer> + <upstream> + <remote-id type="github">ros-infrastructure/rosdistro</remote-id> + </upstream> + <origin>gentoo-staging</origin> +</pkgmetadata> diff --git a/dev-python/rosdistro/rosdistro-0.8.0.ebuild b/dev-python/rosdistro/rosdistro-0.8.0.ebuild new file mode 100644 index 000000000000..7455f6d0af0c --- /dev/null +++ b/dev-python/rosdistro/rosdistro-0.8.0.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python{3_6,3_7} pypy3 ) + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-r3" + EGIT_REPO_URI="https://github.com/ros-infrastructure/rosdistro" +fi + +inherit ${SCM} distutils-r1 + +DESCRIPTION="Tools to work with catkinized rosdistro files" +HOMEPAGE="http://wiki.ros.org/rosdistro" +if [ "${PV#9999}" != "${PV}" ] ; then + SRC_URI="" + KEYWORDS="" +else + SRC_URI="https://github.com/ros-infrastructure/rosdistro/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-python/catkin_pkg[${PYTHON_USEDEP}] + dev-python/rospkg[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}]" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/nose[${PYTHON_USEDEP}] ) +" +DEPEND="${RDEPEND} + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ) +" +PATCHES=( "${FILESDIR}/yaml.patch" ) + +src_prepare() { + # Requires network access + rm -f test/test_manifest_providers.py + default +} + +python_test() { + nosetests --with-xunit test || die +} diff --git a/dev-python/rosdistro/rosdistro-0.8.1.ebuild b/dev-python/rosdistro/rosdistro-0.8.1.ebuild new file mode 100644 index 000000000000..d2cbf7643d5c --- /dev/null +++ b/dev-python/rosdistro/rosdistro-0.8.1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python{3_6,3_7} ) + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-r3" + EGIT_REPO_URI="https://github.com/ros-infrastructure/rosdistro" +fi + +inherit ${SCM} distutils-r1 + +DESCRIPTION="Tools to work with catkinized rosdistro files" +HOMEPAGE="http://wiki.ros.org/rosdistro" +if [ "${PV#9999}" != "${PV}" ] ; then + SRC_URI="" + KEYWORDS="" +else + SRC_URI="https://github.com/ros-infrastructure/rosdistro/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-python/catkin_pkg[${PYTHON_USEDEP}] + dev-python/rospkg[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}]" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/nose[${PYTHON_USEDEP}] ) +" +DEPEND="${RDEPEND} + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ) +" +PATCHES=( "${FILESDIR}/yaml.patch" ) + +src_prepare() { + # Requires network access + rm -f test/test_manifest_providers.py + default +} + +python_test() { + nosetests --with-xunit test || die +} diff --git a/dev-python/rosdistro/rosdistro-9999.ebuild b/dev-python/rosdistro/rosdistro-9999.ebuild new file mode 100644 index 000000000000..d2cbf7643d5c --- /dev/null +++ b/dev-python/rosdistro/rosdistro-9999.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python{3_6,3_7} ) + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-r3" + EGIT_REPO_URI="https://github.com/ros-infrastructure/rosdistro" +fi + +inherit ${SCM} distutils-r1 + +DESCRIPTION="Tools to work with catkinized rosdistro files" +HOMEPAGE="http://wiki.ros.org/rosdistro" +if [ "${PV#9999}" != "${PV}" ] ; then + SRC_URI="" + KEYWORDS="" +else + SRC_URI="https://github.com/ros-infrastructure/rosdistro/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-python/catkin_pkg[${PYTHON_USEDEP}] + dev-python/rospkg[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}]" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/nose[${PYTHON_USEDEP}] ) +" +DEPEND="${RDEPEND} + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ) +" +PATCHES=( "${FILESDIR}/yaml.patch" ) + +src_prepare() { + # Requires network access + rm -f test/test_manifest_providers.py + default +} + +python_test() { + nosetests --with-xunit test || die +} |
