public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Brian Dolbec" <dolsen@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/autobahn/
Date: Fri, 16 Jun 2017 21:50:19 +0000 (UTC)	[thread overview]
Message-ID: <1497649811.676133f56ce8a8d0a2d1c9af97936b4cb5b9ee57.dolsen@gentoo> (raw)

commit:     676133f56ce8a8d0a2d1c9af97936b4cb5b9ee57
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 16 19:38:36 2017 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Fri Jun 16 21:50:11 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=676133f5

dev-python/autobahn: Update ebuilds for twisted plugin cashe updates

With TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE now set in make.defaults to
prevent access violations.  All pkgs installing plugins need to run
/usr/bin/twisted-regen-cache in pkg_postinst() for twisted releases.
For older split twisted installs, the cache has to be done using a copy
of the twisted-r1 eclasses cahche update functions.

Package-Manager: Portage-2.3.6_p2, Repoman-2.3.2_p70

 dev-python/autobahn/Manifest                  |   1 -
 dev-python/autobahn/autobahn-0.12.1.ebuild    |  46 ----------
 dev-python/autobahn/autobahn-0.16.0-r1.ebuild | 127 ++++++++++++++++++++++++++
 dev-python/autobahn/autobahn-0.16.0.ebuild    |  62 -------------
 dev-python/autobahn/autobahn-0.9.4.2.ebuild   |  72 ++++++++++++++-
 dev-python/autobahn/autobahn-17.5.1-r1.ebuild | 124 +++++++++++++++++++++++++
 dev-python/autobahn/autobahn-17.5.1.ebuild    |  62 -------------
 7 files changed, 322 insertions(+), 172 deletions(-)

diff --git a/dev-python/autobahn/Manifest b/dev-python/autobahn/Manifest
index 35955819613..3af3f99fc66 100644
--- a/dev-python/autobahn/Manifest
+++ b/dev-python/autobahn/Manifest
@@ -1,4 +1,3 @@
-DIST autobahn-0.12.1.tar.gz 163311 SHA256 664223879e159c88221f42d8d1ac6b8c4268d8b9316d8ab69a02761c5744cd79 SHA512 2d944ce6849017f75542b5f33cd2c4a7321c5a70ce01b24480fb17aa34c3a7dec826073261af1133e1611233dbe958e5c7d2a10b1586f6b7e5b32ce4f4e7db06 WHIRLPOOL 2d1d78ae0f468e80a7ffe44dc8f1891082adb97319d3cedad575f74ebafa3318a1b0ed1f9cd4187dc097d9a8c2cf2b0ca761c39511a6bbd490e8d30bcbb7d933
 DIST autobahn-0.16.0.tar.gz 185053 SHA256 a1dcb4315a0914da56ec484659816de72dfad229be4ac19fa61bbc0111ada884 SHA512 8873202a33c7b68577e89cc91503b8002aa19638836ff39ef99022e3b0ddcfb613154ddf0c373bf315eeb8b6c36f31afc20eb0164c47caa087b2a1b28449d3a8 WHIRLPOOL b5f5f80c1d88b3b031fab0837f0d191d4d71e21798aeec6ae1ee718bad0e21cb403a1b2ecb199615b4c8351522be8d4882781fd02de95e422203cee14f1c01ef
 DIST autobahn-0.9.4-2.zip 175894 SHA256 5bb64191cfdd1cbdd90d8e359b389ef62c0acdffd2f68d16ec01fa0a287262f0 SHA512 7e0d4246b8b1c552b25c2ae36f1923ed9931e3d3ca684039a422773fecd92ca04734a0b24394a9bbc787f245c72b5552522351a7c1c8e500128e7c46c740a3d5 WHIRLPOOL aa0f06b82acbebb97ca2e3c424429ada7169dca5b39237ce082a17440ec9701a307e9fc7f162f957023cfc4c067f8e8b82b9923cb056ffcab7b3e64a61a4aae8
 DIST autobahn-17.5.1.tar.gz 205144 SHA256 2a32fa76a11f8aa8de482e99ad2b7a8acc8f6c0d430c48aebd4666f080e85d5c SHA512 904f8f4c527a6c1c7840ea8634d0c0a47141458500c6d29f4aa1f05ff51f91c65a451b7c447201cbdf5e255c4c2d07509efa106790217b09398e7d50c1d85382 WHIRLPOOL 28b9608110ecfd058b9bfc3a3c587e7d33c7538f62b4ada1969efc2d434dcbcd9b1d3b1711448a09b425016c2622d2135ce789ae1edeaf7f0a1dc96fcdfb7acd

diff --git a/dev-python/autobahn/autobahn-0.12.1.ebuild b/dev-python/autobahn/autobahn-0.12.1.ebuild
deleted file mode 100644
index 728d2db2e9d..00000000000
--- a/dev-python/autobahn/autobahn-0.12.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 python3_4 )
-
-RESTRICT="test"
-
-inherit distutils-r1 versionator
-
-MY_P="${PN}-$(replace_version_separator 3 -)"
-
-DESCRIPTION="WebSocket and WAMP for Twisted and Asyncio"
-HOMEPAGE="https://pypi.python.org/pypi/autobahn http://autobahn.ws/python/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
-
-SLOT="0"
-LICENSE="MIT"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-
-RDEPEND="
-	virtual/python-futures[${PYTHON_USEDEP}]
-	>=dev-python/lz4-0.2.1[${PYTHON_USEDEP}]
-	>=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
-	>=dev-python/six-1.6.1[${PYTHON_USEDEP}]
-	>=dev-python/snappy-0.5[${PYTHON_USEDEP}]
-	>=dev-python/trollius-0.1.2[${PYTHON_USEDEP}]
-	>=dev-python/twisted-core-11.1[$(python_gen_usedep 'python2*')]
-	>=dev-python/txaio-2.2.0[${PYTHON_USEDEP}]
-	>=dev-python/ujson-1.33[${PYTHON_USEDEP}]
-	>=dev-python/wsaccel-0.6.2[${PYTHON_USEDEP}]
-	>=dev-python/zope-interface-3.6[${PYTHON_USEDEP}]
-	"
-DEPEND="${RDEPEND}
-	test? (
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-	)"
-
-S="${WORKDIR}"/${MY_P}
-
-python_test() {
-	esetup.py test
-}

diff --git a/dev-python/autobahn/autobahn-0.16.0-r1.ebuild b/dev-python/autobahn/autobahn-0.16.0-r1.ebuild
new file mode 100644
index 00000000000..e550e5d7464
--- /dev/null
+++ b/dev-python/autobahn/autobahn-0.16.0-r1.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit distutils-r1 versionator
+
+MY_P="${PN}-$(replace_version_separator 3 -)"
+
+DESCRIPTION="WebSocket and WAMP for Twisted and Asyncio"
+HOMEPAGE="https://pypi.python.org/pypi/autobahn http://autobahn.ws/python/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+IUSE="crypt test"
+
+RDEPEND="
+	$(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' 'python2_7')
+	$(python_gen_cond_dep '>=dev-python/futures-3.0.4[${PYTHON_USEDEP}]' 'python2_7')
+	$(python_gen_cond_dep '>=dev-python/asyncio-3.4.3[${PYTHON_USEDEP}]' 'python3_3')
+	>=dev-python/cbor-1.0.0[${PYTHON_USEDEP}]
+	>=dev-python/lz4-0.7.0[${PYTHON_USEDEP}]
+	crypt? (
+		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
+		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
+		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
+	)
+	>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/snappy-0.5[${PYTHON_USEDEP}]
+	|| (
+		>=dev-python/twisted-16.0.0[${PYTHON_USEDEP}]
+		>=dev-python/twisted-core-12.1[$(python_gen_usedep 'python2*')]
+	)
+	>=dev-python/txaio-2.5.1[${PYTHON_USEDEP}]
+	>=dev-python/u-msgpack-2.1[${PYTHON_USEDEP}]
+	>=dev-python/py-ubjson-0.8.4[${PYTHON_USEDEP}]
+	>=dev-python/wsaccel-0.6.2[${PYTHON_USEDEP}]
+	>=dev-python/zope-interface-3.6[${PYTHON_USEDEP}]
+	"
+DEPEND="${RDEPEND}
+	test? (
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/pytest[${PYTHON_USEDEP}]
+		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
+		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
+		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
+	)"
+
+S="${WORKDIR}"/${MY_P}
+
+python_test() {
+	esetup.py test
+}
+
+# TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE is now
+# set in make.defaults. so update the plugin cache
+
+# copy of the twisted-r1 eclass cache update functions
+# for the older split twisted releases
+
+# @ECLASS-VARIABLE: TWISTED_PLUGINS
+# @DESCRIPTION:
+# An array of Twisted plugins, whose cache is regenerated
+# in pkg_postinst() and pkg_postrm() phases.
+#
+# If no plugins are installed, set to empty array.
+declare -p TWISTED_PLUGINS &>/dev/null || TWISTED_PLUGINS=( twisted.plugins )
+
+# @FUNCTION: _twisted-r1_create_caches
+# @USAGE: <packages>...
+# @DESCRIPTION:
+# Create dropin.cache for plugins in specified packages. The packages
+# are to be listed in standard dotted Python syntax.
+_twisted-r1_create_caches() {
+	# http://twistedmatrix.com/documents/current/core/howto/plugin.html
+	"${PYTHON}" -c \
+"import sys
+sys.path.insert(0, '${ROOT}$(python_get_sitedir)')
+
+fail = False
+
+try:
+	from twisted.plugin import getPlugins, IPlugin
+except ImportError as e:
+	if '${EBUILD_PHASE}' == 'postinst':
+		raise
+else:
+	for module in sys.argv[1:]:
+		try:
+			__import__(module, globals())
+		except ImportError as e:
+			if '${EBUILD_PHASE}' == 'postinst':
+				raise
+		else:
+			list(getPlugins(IPlugin, sys.modules[module]))
+" \
+		"${@}" || die "twisted plugin cache update failed"
+}
+
+# @FUNCTION: twisted-r1_update_plugin_cache
+# @DESCRIPTION:
+# Update and clean up plugin caches for packages listed
+# in TWISTED_PLUGINS.
+twisted-r1_update_plugin_cache() {
+	[[ ${TWISTED_PLUGINS[@]} ]] || return
+
+	local subdirs=( "${TWISTED_PLUGINS[@]//.//}" )
+	local paths=( "${subdirs[@]/#/${ROOT}$(python_get_sitedir)/}" )
+	local caches=( "${paths[@]/%//dropin.cache}" )
+
+	# First, delete existing (possibly stray) caches.
+	rm -f "${caches[@]}" || die
+
+	# Now, let's see which ones we can regenerate.
+	_twisted-r1_create_caches "${TWISTED_PLUGINS[@]}"
+
+	# Finally, drop empty parent directories.
+	rmdir -p "${paths[@]}" 2>/dev/null
+}
+
+pkg_postinst() {
+	_distutils-r1_run_foreach_impl twisted-r1_update_plugin_cache
+}

diff --git a/dev-python/autobahn/autobahn-0.16.0.ebuild b/dev-python/autobahn/autobahn-0.16.0.ebuild
deleted file mode 100644
index 9cc6b9581ca..00000000000
--- a/dev-python/autobahn/autobahn-0.16.0.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 python3_4 )
-
-inherit distutils-r1 versionator
-
-MY_P="${PN}-$(replace_version_separator 3 -)"
-
-DESCRIPTION="WebSocket and WAMP for Twisted and Asyncio"
-HOMEPAGE="https://pypi.python.org/pypi/autobahn http://autobahn.ws/python/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
-
-SLOT="0"
-LICENSE="MIT"
-KEYWORDS="~amd64"
-IUSE="crypt test"
-
-RDEPEND="
-	$(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' 'python2_7')
-	$(python_gen_cond_dep '>=dev-python/futures-3.0.4[${PYTHON_USEDEP}]' 'python2_7')
-	$(python_gen_cond_dep '>=dev-python/asyncio-3.4.3[${PYTHON_USEDEP}]' 'python3_3')
-	>=dev-python/cbor-1.0.0[${PYTHON_USEDEP}]
-	>=dev-python/lz4-0.7.0[${PYTHON_USEDEP}]
-	crypt? (
-		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
-		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
-		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
-	)
-	>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-	>=dev-python/snappy-0.5[${PYTHON_USEDEP}]
-	|| (
-		>=dev-python/twisted-16.0.0[${PYTHON_USEDEP}]
-		>=dev-python/twisted-core-12.1[$(python_gen_usedep 'python2*')]
-	)
-	>=dev-python/txaio-2.5.1[${PYTHON_USEDEP}]
-	>=dev-python/u-msgpack-2.1[${PYTHON_USEDEP}]
-	>=dev-python/py-ubjson-0.8.4[${PYTHON_USEDEP}]
-	>=dev-python/wsaccel-0.6.2[${PYTHON_USEDEP}]
-	>=dev-python/zope-interface-3.6[${PYTHON_USEDEP}]
-	"
-DEPEND="${RDEPEND}
-	test? (
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
-		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
-		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
-	)"
-
-S="${WORKDIR}"/${MY_P}
-
-python_test() {
-	esetup.py test
-}
-
-python_compile() {
-	addpredict "$(python_get_sitedir)"
-	distutils-r1_python_compile
-}

diff --git a/dev-python/autobahn/autobahn-0.9.4.2.ebuild b/dev-python/autobahn/autobahn-0.9.4.2.ebuild
index d3dc6230583..fcefdc6b5a6 100644
--- a/dev-python/autobahn/autobahn-0.9.4.2.ebuild
+++ b/dev-python/autobahn/autobahn-0.9.4.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -30,3 +30,73 @@ RDEPEND="
 DEPEND="${RDEPEND}"
 
 S="${WORKDIR}"/${MY_P}
+
+# TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE is now
+# set in make.defaults. so update the plugin cache
+
+# copy of the twisted-r1 eclass cache update functions
+# for the older split twisted releases
+
+# @ECLASS-VARIABLE: TWISTED_PLUGINS
+# @DESCRIPTION:
+# An array of Twisted plugins, whose cache is regenerated
+# in pkg_postinst() and pkg_postrm() phases.
+#
+# If no plugins are installed, set to empty array.
+declare -p TWISTED_PLUGINS &>/dev/null || TWISTED_PLUGINS=( twisted.plugins )
+
+# @FUNCTION: _twisted-r1_create_caches
+# @USAGE: <packages>...
+# @DESCRIPTION:
+# Create dropin.cache for plugins in specified packages. The packages
+# are to be listed in standard dotted Python syntax.
+_twisted-r1_create_caches() {
+	# http://twistedmatrix.com/documents/current/core/howto/plugin.html
+	"${PYTHON}" -c \
+"import sys
+sys.path.insert(0, '${ROOT}$(python_get_sitedir)')
+
+fail = False
+
+try:
+	from twisted.plugin import getPlugins, IPlugin
+except ImportError as e:
+	if '${EBUILD_PHASE}' == 'postinst':
+		raise
+else:
+	for module in sys.argv[1:]:
+		try:
+			__import__(module, globals())
+		except ImportError as e:
+			if '${EBUILD_PHASE}' == 'postinst':
+				raise
+		else:
+			list(getPlugins(IPlugin, sys.modules[module]))
+" \
+		"${@}" || die "twisted plugin cache update failed"
+}
+
+# @FUNCTION: twisted-r1_update_plugin_cache
+# @DESCRIPTION:
+# Update and clean up plugin caches for packages listed
+# in TWISTED_PLUGINS.
+twisted-r1_update_plugin_cache() {
+	[[ ${TWISTED_PLUGINS[@]} ]] || return
+
+	local subdirs=( "${TWISTED_PLUGINS[@]//.//}" )
+	local paths=( "${subdirs[@]/#/${ROOT}$(python_get_sitedir)/}" )
+	local caches=( "${paths[@]/%//dropin.cache}" )
+
+	# First, delete existing (possibly stray) caches.
+	rm -f "${caches[@]}" || die
+
+	# Now, let's see which ones we can regenerate.
+	_twisted-r1_create_caches "${TWISTED_PLUGINS[@]}"
+
+	# Finally, drop empty parent directories.
+	rmdir -p "${paths[@]}" 2>/dev/null
+}
+
+pkg_postinst() {
+	_distutils-r1_run_foreach_impl twisted-r1_update_plugin_cache
+}

diff --git a/dev-python/autobahn/autobahn-17.5.1-r1.ebuild b/dev-python/autobahn/autobahn-17.5.1-r1.ebuild
new file mode 100644
index 00000000000..2d249642864
--- /dev/null
+++ b/dev-python/autobahn/autobahn-17.5.1-r1.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1 versionator
+
+MY_P="${PN}-$(replace_version_separator 3 -)"
+
+DESCRIPTION="WebSocket and WAMP for Twisted and Asyncio"
+HOMEPAGE="https://pypi.python.org/pypi/autobahn http://autobahn.ws/python/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+IUSE="crypt test"
+
+RDEPEND="
+	$(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' 'python2_7')
+	$(python_gen_cond_dep '>=dev-python/futures-3.0.4[${PYTHON_USEDEP}]' 'python2_7')
+	>=dev-python/cbor-1.0.0[${PYTHON_USEDEP}]
+	>=dev-python/lz4-0.7.0[${PYTHON_USEDEP}]
+	crypt? (
+		>=dev-python/pyopenssl-16.2.0[${PYTHON_USEDEP}]
+		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
+		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
+		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
+		>=dev-python/service_identity-16.0.0
+	)
+	>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/snappy-0.5[${PYTHON_USEDEP}]
+	>=dev-python/twisted-16.0.0[${PYTHON_USEDEP}]
+	>=dev-python/txaio-2.6.1[${PYTHON_USEDEP}]
+	>=dev-python/u-msgpack-2.1[${PYTHON_USEDEP}]
+	>=dev-python/py-ubjson-0.8.4[${PYTHON_USEDEP}]
+	>=dev-python/wsaccel-0.6.2[${PYTHON_USEDEP}]
+	>=dev-python/zope-interface-3.6[${PYTHON_USEDEP}]
+	"
+DEPEND="${RDEPEND}
+	test? (
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/pytest[${PYTHON_USEDEP}]
+		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
+		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
+		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
+	)"
+
+S="${WORKDIR}"/${MY_P}
+
+python_test() {
+	#esetup.py test
+	cd "${BUILD_DIR}"/lib || die
+	py.test -v || die
+}
+
+# temp copy from twisted-r1 eclass
+# to be replaced by a twisted-r2 eclass
+
+# @ECLASS-VARIABLE: TWISTED_PLUGINS
+# @DESCRIPTION:
+# An array of Twisted plugins, whose cache is regenerated
+# in pkg_postinst() and pkg_postrm() phases.
+#
+# If no plugins are installed, set to empty array.
+declare -p TWISTED_PLUGINS &>/dev/null || TWISTED_PLUGINS=( twisted.plugins )
+
+# @FUNCTION: _twisted-r1_create_caches
+# @USAGE: <packages>...
+# @DESCRIPTION:
+# Create dropin.cache for plugins in specified packages. The packages
+# are to be listed in standard dotted Python syntax.
+_twisted-r1_create_caches() {
+	# http://twistedmatrix.com/documents/current/core/howto/plugin.html
+	"${PYTHON}" -c \
+"import sys
+sys.path.insert(0, '${ROOT}$(python_get_sitedir)')
+
+fail = False
+
+try:
+	from twisted.plugin import getPlugins, IPlugin
+except ImportError as e:
+	if '${EBUILD_PHASE}' == 'postinst':
+		raise
+else:
+	for module in sys.argv[1:]:
+		try:
+			__import__(module, globals())
+		except ImportError as e:
+			if '${EBUILD_PHASE}' == 'postinst':
+				raise
+		else:
+			list(getPlugins(IPlugin, sys.modules[module]))
+" \
+		"${@}" || die "twisted plugin cache update failed"
+}
+
+# @FUNCTION: twisted-r1_update_plugin_cache
+# @DESCRIPTION:
+# Update and clean up plugin caches for packages listed
+# in TWISTED_PLUGINS.
+twisted-r1_update_plugin_cache() {
+	[[ ${TWISTED_PLUGINS[@]} ]] || return
+
+	local subdirs=( "${TWISTED_PLUGINS[@]//.//}" )
+	local paths=( "${subdirs[@]/#/${ROOT}$(python_get_sitedir)/}" )
+	local caches=( "${paths[@]/%//dropin.cache}" )
+
+	# First, delete existing (possibly stray) caches.
+	rm -f "${caches[@]}" || die
+
+	# Now, let's see which ones we can regenerate.
+	_twisted-r1_create_caches "${TWISTED_PLUGINS[@]}"
+
+	# Finally, drop empty parent directories.
+	rmdir -p "${paths[@]}" 2>/dev/null
+}
+
+pkg_postinst() {
+	_distutils-r1_run_foreach_impl twisted-r1_update_plugin_cache
+}

diff --git a/dev-python/autobahn/autobahn-17.5.1.ebuild b/dev-python/autobahn/autobahn-17.5.1.ebuild
deleted file mode 100644
index bd3ca434ee9..00000000000
--- a/dev-python/autobahn/autobahn-17.5.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-
-inherit distutils-r1 versionator
-
-MY_P="${PN}-$(replace_version_separator 3 -)"
-
-DESCRIPTION="WebSocket and WAMP for Twisted and Asyncio"
-HOMEPAGE="https://pypi.python.org/pypi/autobahn http://autobahn.ws/python/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
-
-SLOT="0"
-LICENSE="MIT"
-KEYWORDS="~amd64"
-IUSE="crypt test"
-
-RDEPEND="
-	$(python_gen_cond_dep '>=dev-python/trollius-2.0[${PYTHON_USEDEP}]' 'python2_7')
-	$(python_gen_cond_dep '>=dev-python/futures-3.0.4[${PYTHON_USEDEP}]' 'python2_7')
-	>=dev-python/cbor-1.0.0[${PYTHON_USEDEP}]
-	>=dev-python/lz4-0.7.0[${PYTHON_USEDEP}]
-	crypt? (
-		>=dev-python/pyopenssl-16.2.0[${PYTHON_USEDEP}]
-		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
-		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
-		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
-		>=dev-python/service_identity-16.0.0
-	)
-	>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-	>=dev-python/snappy-0.5[${PYTHON_USEDEP}]
-	>=dev-python/twisted-16.0.0[${PYTHON_USEDEP}]
-	>=dev-python/txaio-2.6.1[${PYTHON_USEDEP}]
-	>=dev-python/u-msgpack-2.1[${PYTHON_USEDEP}]
-	>=dev-python/py-ubjson-0.8.4[${PYTHON_USEDEP}]
-	>=dev-python/wsaccel-0.6.2[${PYTHON_USEDEP}]
-	>=dev-python/zope-interface-3.6[${PYTHON_USEDEP}]
-	"
-DEPEND="${RDEPEND}
-	test? (
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		>=dev-python/pynacl-1.0.1[${PYTHON_USEDEP}]
-		>=dev-python/pytrie-0.2[${PYTHON_USEDEP}]
-		>=dev-python/pyqrcode-1.1.0[${PYTHON_USEDEP}]
-	)"
-
-S="${WORKDIR}"/${MY_P}
-
-python_test() {
-	#esetup.py test
-	cd "${BUILD_DIR}"/lib || die
-	py.test -v || die
-}
-
-python_compile() {
-	addpredict "$(python_get_sitedir)"
-	distutils-r1_python_compile
-}


             reply	other threads:[~2017-06-16 21:50 UTC|newest]

Thread overview: 135+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-16 21:50 Brian Dolbec [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-21  4:35 [gentoo-commits] repo/gentoo:master commit in: dev-python/autobahn/ Michał Górny
2024-08-17  8:33 Jakov Smolić
2024-08-17  8:33 Jakov Smolić
2024-08-17  7:58 Michał Górny
2024-08-17  7:58 Michał Górny
2024-08-03  5:03 Michał Górny
2024-04-18 15:45 Michał Górny
2024-04-18 15:45 Michał Górny
2024-01-26 21:21 Arthur Zamarin
2023-07-24 14:23 Michał Górny
2023-07-24 12:07 Jakov Smolić
2023-07-24  9:25 Jakov Smolić
2023-06-14 16:11 Michał Górny
2023-06-05  5:07 Michał Górny
2023-05-04 16:11 Michał Górny
2023-03-04  6:37 Arthur Zamarin
2023-02-17  6:21 Michał Górny
2023-02-16 22:57 Sam James
2023-02-16 20:58 Arthur Zamarin
2023-02-08  6:27 Michał Górny
2023-01-16  6:11 Michał Górny
2022-12-19  6:46 Michał Górny
2022-09-07  5:16 Michał Górny
2022-09-06 21:38 Sam James
2022-09-06 21:25 Sam James
2022-09-06 21:15 Sam James
2022-09-06 19:31 Arthur Zamarin
2022-08-12 14:09 Michał Górny
2022-08-12 10:49 Agostino Sarubbo
2022-08-09  7:43 Agostino Sarubbo
2022-08-08 19:59 Arthur Zamarin
2022-08-08 19:47 Arthur Zamarin
2022-08-03 17:30 Arthur Zamarin
2022-07-09  8:41 Michał Górny
2022-07-05  8:47 Michał Górny
2022-07-05  7:28 Agostino Sarubbo
2022-07-04 10:34 Agostino Sarubbo
2022-07-04  6:55 Agostino Sarubbo
2022-07-04  6:51 Agostino Sarubbo
2022-06-22 12:04 Michał Górny
2022-06-22 11:57 Jakov Smolić
2022-06-22  5:50 Agostino Sarubbo
2022-06-22  5:45 Agostino Sarubbo
2022-06-21 19:26 Arthur Zamarin
2022-06-11  6:34 Michał Górny
2022-06-03 11:37 Michał Górny
2022-06-03  5:37 Michał Górny
2022-05-19 15:23 Michał Górny
2022-05-05  7:12 Arthur Zamarin
2022-04-27  7:07 Michał Górny
2022-04-27  4:34 Arthur Zamarin
2022-04-26 22:05 Sam James
2022-04-26 21:49 Sam James
2022-04-26 17:18 Arthur Zamarin
2022-03-28 10:14 Michał Górny
2022-03-27  9:31 Michał Górny
2022-03-18  8:44 Michał Górny
2022-03-18  8:42 Arthur Zamarin
2022-03-15 12:33 Jakov Smolić
2022-03-15 10:37 Jakov Smolić
2022-03-15 10:37 Jakov Smolić
2022-03-14 10:32 Yixun Lan
2022-02-24  7:35 Michał Górny
2022-02-23 21:30 Michał Górny
2022-01-28 23:08 Michał Górny
2022-01-28 23:01 Michał Górny
2021-12-23  0:12 Michał Górny
2021-12-22 22:40 Sam James
2021-12-22 19:42 Jakov Smolić
2021-12-22 19:38 Arthur Zamarin
2021-12-22 19:29 Arthur Zamarin
2021-11-22 17:31 Arthur Zamarin
2021-10-06 17:48 Arthur Zamarin
2021-05-16 15:09 Michał Górny
2021-05-16 12:45 Sam James
2021-05-16  0:07 Sam James
2021-04-29 10:09 Michał Górny
2021-03-28 10:02 Agostino Sarubbo
2021-03-15 16:18 Agostino Sarubbo
2021-03-03  8:07 Michał Górny
2021-02-26  9:52 Michał Górny
2021-02-26  8:30 Michał Górny
2021-02-14 19:15 Brian Dolbec
2021-02-13 20:48 Brian Dolbec
2021-02-06  8:59 Michał Górny
2021-01-21  7:40 Agostino Sarubbo
2021-01-17 18:51 Brian Dolbec
2020-12-16 11:30 Michał Górny
2020-12-16 11:12 Sam James
2020-12-14 23:20 Michał Górny
2020-12-14  8:21 Michał Górny
2020-12-14  8:21 Michał Górny
2020-12-06 23:25 Sam James
2020-12-06 19:38 Sam James
2020-07-20 17:19 Brian Dolbec
2020-07-20 11:45 Sam James
2020-07-20  2:32 Sam James
2020-07-18  1:58 Brian Dolbec
2020-06-02 22:21 Mart Raudsepp
2020-05-10  8:20 Brian Dolbec
2020-05-09  0:51 Brian Dolbec
2020-04-24  6:27 Michał Górny
2020-04-17  6:07 Agostino Sarubbo
2020-04-16 13:28 Michał Górny
2020-03-27 14:48 Michał Górny
2020-03-26 14:15 Agostino Sarubbo
2020-03-26 11:48 Michał Górny
2020-03-17  7:23 Michał Górny
2020-02-04 13:10 Michał Górny
2019-06-25  9:05 Michael Haubenwallner
2019-05-21 16:22 Stephen Klimaszewski
2018-03-18 19:19 Michał Górny
2018-03-09 17:59 Matt Thode
2018-01-19 22:55 Brian Dolbec
2018-01-02 22:14 Michał Górny
2017-09-28 13:42 Michael Palimaka
2017-09-28 13:42 Michael Palimaka
2017-09-20 20:11 Brian Dolbec
2017-09-20 20:11 Brian Dolbec
2017-09-08 20:53 Markus Meier
2017-08-01 22:18 Manuel Rüger
2017-08-01 18:52 Brian Dolbec
2017-07-31  9:33 Tobias Klausmann
2017-06-17 17:00 Brian Dolbec
2017-06-17 17:00 Brian Dolbec
2017-06-16  0:43 Brian Dolbec
2017-05-16  2:10 Brian Dolbec
2017-01-26 22:35 Michał Górny
2016-10-12 22:07 Brian Dolbec
2016-08-31  1:18 Brian Dolbec
2016-02-18 10:22 Patrick Lauer
2016-01-03 16:08 Patrick Lauer
2015-12-13  9:54 Justin Lecher
2015-11-10 10:54 Justin Lecher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1497649811.676133f56ce8a8d0a2d1c9af97936b4cb5b9ee57.dolsen@gentoo \
    --to=dolsen@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox