summaryrefslogtreecommitdiff
path: root/dev-python/python-memcached
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/python-memcached')
-rw-r--r--dev-python/python-memcached/Manifest1
-rw-r--r--dev-python/python-memcached/metadata.xml8
-rw-r--r--dev-python/python-memcached/python-memcached-1.59-r1.ebuild44
3 files changed, 50 insertions, 3 deletions
diff --git a/dev-python/python-memcached/Manifest b/dev-python/python-memcached/Manifest
index 9a85bb369453..00b745958fa7 100644
--- a/dev-python/python-memcached/Manifest
+++ b/dev-python/python-memcached/Manifest
@@ -1 +1,2 @@
+DIST python-memcached-1.59-gh.tar.gz 32334 BLAKE2B de8d18ba887b03e4737b554cc4b0074a4f16745e26a8b3631a747c45019e1da83612677dc3e98f97d76e851320c61baafbd0a29231a826c14b7d3bf3e477f29e SHA512 d7ff45a329f2a9bf97fdc7c0268c2c67046c3501270fcf03578b955c2da35904d7bdecd4239924d390797ddff8f4cc69fc5743f4d4f663cdb9f2f8c7e8159512
DIST python-memcached-1.59.tar.gz 22210 BLAKE2B 50387821d50cf974ada738346e016eb736043078721bf905782f41df1f27574244d03b6b94ac9e5ccab7aeecfa8ca4c5a78cec2c41d15fda8756c7cb3bce9aa1 SHA512 a25cbb9efb3babe85e1523bdabfe4644b93b3a6a7268787a3928f724f833ce0eea7d2ef676d1b7f894cdfe293129975b35cb46ec553c92810dbc18013bfabece
diff --git a/dev-python/python-memcached/metadata.xml b/dev-python/python-memcached/metadata.xml
index aa649aa94072..a0af02562af2 100644
--- a/dev-python/python-memcached/metadata.xml
+++ b/dev-python/python-memcached/metadata.xml
@@ -10,11 +10,13 @@
<name>Python</name>
</maintainer>
<longdescription lang="en">
-This is a Python based API (implemented in 100% python) for communicating with
-the memcached distributed memory object cache daemon.
-</longdescription>
+ This is a Python based API (implemented in 100% python) for communicating with
+ the memcached distributed memory object cache daemon.
+ </longdescription>
<upstream>
<remote-id type="pypi">python-memcached</remote-id>
+ <remote-id type="github">linsomniac/python-memcached</remote-id>
+ <bugs-to>https://github.com/linsomniac/python-memcached/issues</bugs-to>
</upstream>
<origin>gentoo-staging</origin>
</pkgmetadata>
diff --git a/dev-python/python-memcached/python-memcached-1.59-r1.ebuild b/dev-python/python-memcached/python-memcached-1.59-r1.ebuild
new file mode 100644
index 000000000000..1b6d1a10f807
--- /dev/null
+++ b/dev-python/python-memcached/python-memcached-1.59-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7,8,9} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Pure python memcached client"
+HOMEPAGE="
+ https://www.tummy.com/Community/software/python-memcached/
+ https://pypi.org/project/python-memcached/
+"
+# PyPI tarballs don't contain tests
+SRC_URI="https://github.com/linsomniac/python-memcached/archive/${PV}.tar.gz -> ${P}-gh.tar.gz"
+
+LICENSE="OSL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+BDEPEND="test? ( net-misc/memcached )"
+
+distutils_enable_tests nose
+
+python_test() {
+ local pidfile="${TMPDIR}/memcached.pid"
+
+ memcached -d -P "$pidfile" || die "failed to start memcached"
+
+ nosetests -v || die "Tests fail with ${EPYTHON}"
+
+ kill "$(<"$pidfile")" || die "failed to kill memcached"
+ local elapsed=0
+ while [[ -f "$pidfile" ]]; do
+ if [[ $elapsed -ge 30 ]]; then
+ kill -KILL "$(<"$pidfile")" || die "failed to kill -KILL memcached"
+ die "memcached failed to stop after 30 seconds"
+ fi
+ sleep 1
+ let elapsed++
+ done
+}