summaryrefslogtreecommitdiff
path: root/dev-python/vcstools
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/vcstools')
-rw-r--r--dev-python/vcstools/Manifest1
-rw-r--r--dev-python/vcstools/files/yaml.patch25
-rw-r--r--dev-python/vcstools/metadata.xml12
-rw-r--r--dev-python/vcstools/vcstools-0.1.42.ebuild60
4 files changed, 98 insertions, 0 deletions
diff --git a/dev-python/vcstools/Manifest b/dev-python/vcstools/Manifest
new file mode 100644
index 000000000000..07dd6f6cfdcf
--- /dev/null
+++ b/dev-python/vcstools/Manifest
@@ -0,0 +1 @@
+DIST vcstools-0.1.42.tar.gz 65979 BLAKE2B 2deb29116e891bc93410e4a8f58938009140d01baaa834cccfdba2be3243d98bb11507fd134284bc1dbeca1434ea0eeaf2ed332dcb579bbacf1bc92815f8623d SHA512 1b54270c878684862eb607c2e445fe24d8edfdd8ea2cc75e899044d9e8e89a882fd2dd6fb7825553f83003ae7af08850c18fdeaabaa107a6bfdb2759b32e8fa6
diff --git a/dev-python/vcstools/files/yaml.patch b/dev-python/vcstools/files/yaml.patch
new file mode 100644
index 000000000000..727131bc5618
--- /dev/null
+++ b/dev-python/vcstools/files/yaml.patch
@@ -0,0 +1,25 @@
+https://github.com/vcstools/vcstools/issues/158
+https://bugs.gentoo.org/698668
+
+Index: vcstools-0.1.42/src/vcstools/tar.py
+===================================================================
+--- vcstools-0.1.42.orig/src/vcstools/tar.py
++++ vcstools-0.1.42/src/vcstools/tar.py
+@@ -77,7 +77,7 @@ class TarClient(VcsClientBase):
+ """
+ if self.detect_presence():
+ with open(self.metadata_path, 'r') as metadata_file:
+- metadata = yaml.load(metadata_file.read())
++ metadata = yaml.full_load(metadata_file.read())
+ if 'url' in metadata:
+ return metadata['url']
+ return None
+@@ -165,7 +165,7 @@ class TarClient(VcsClientBase):
+
+ if self.detect_presence():
+ with open(self.metadata_path, 'r') as metadata_file:
+- metadata = yaml.load(metadata_file.read())
++ metadata = yaml.full_load(metadata_file.read())
+ if 'version' in metadata:
+ return metadata['version']
+ return None
diff --git a/dev-python/vcstools/metadata.xml b/dev-python/vcstools/metadata.xml
new file mode 100644
index 000000000000..fa7499163c42
--- /dev/null
+++ b/dev-python/vcstools/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">vcstools/vcstools</remote-id>
+ </upstream>
+ <origin>gentoo-staging</origin>
+</pkgmetadata>
diff --git a/dev-python/vcstools/vcstools-0.1.42.ebuild b/dev-python/vcstools/vcstools-0.1.42.ebuild
new file mode 100644
index 000000000000..733f8a2e48e5
--- /dev/null
+++ b/dev-python/vcstools/vcstools-0.1.42.ebuild
@@ -0,0 +1,60 @@
+# 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/vcstools/vcstools"
+fi
+
+inherit ${SCM} distutils-r1
+
+DESCRIPTION="Python library for interacting with various VCS systems"
+HOMEPAGE="http://wiki.ros.org/vcstools"
+if [ "${PV#9999}" != "${PV}" ] ; then
+ SRC_URI=""
+ KEYWORDS=""
+else
+ SRC_URI="http://download.ros.org/downloads/${PN}/${P}.tar.gz
+ https://github.com/vcstools/vcstools/archive/${PV}.tar.gz -> ${P}.tar.gz
+ "
+ KEYWORDS="~amd64 ~arm"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-vcs/git
+ dev-vcs/bzr
+ dev-vcs/mercurial
+ dev-vcs/subversion
+ )
+"
+PATCHES=( "${FILESDIR}/yaml.patch" )
+
+python_test() {
+ # From travis.yml
+ # Set git config to silence some stuff in the tests
+ git config --global user.email "foo@example.com"
+ git config --global user.name "Foo Bar"
+ # Set the hg user
+ echo -e "[ui]\nusername = Your Name <your@mail.com>" >> ~/.hgrc
+ # Set the bzr user
+ bzr whoami "Your Name <name@example.com>"
+ #git config --global user.email "you@example.com"
+ #git config --global user.name "Your Name"
+
+ nosetests --with-coverage --cover-package vcstools || die
+}