summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2021-03-29 08:52:27 +0200
committerMichał Górny <mgorny@gentoo.org>2021-03-29 09:28:15 +0200
commit57b678c1afd96922ad2db5d1ffb63d1a65386584 (patch)
treeb77abce417a70018dfcae3bed41c63572ecda1e3 /sys-apps/pkgcore
parentmedia-sound/ardour: removed obsolete 6.5-r2 (diff)
downloadgentoo-57b678c1afd96922ad2db5d1ffb63d1a65386584.tar.gz
gentoo-57b678c1afd96922ad2db5d1ffb63d1a65386584.tar.bz2
gentoo-57b678c1afd96922ad2db5d1ffb63d1a65386584.zip
sys-apps/pkgcore: Backport signal handler pytest problem fix
Closes: https://bugs.gentoo.org/779013 Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-apps/pkgcore')
-rw-r--r--sys-apps/pkgcore/files/pkgcore-0.10.18-sighdlr.patch47
-rw-r--r--sys-apps/pkgcore/pkgcore-0.11.4-r3.ebuild (renamed from sys-apps/pkgcore/pkgcore-0.11.4-r2.ebuild)1
-rw-r--r--sys-apps/pkgcore/pkgcore-0.11.5-r3.ebuild (renamed from sys-apps/pkgcore/pkgcore-0.11.5-r2.ebuild)1
-rw-r--r--sys-apps/pkgcore/pkgcore-0.11.6-r1.ebuild (renamed from sys-apps/pkgcore/pkgcore-0.11.6.ebuild)4
-rw-r--r--sys-apps/pkgcore/pkgcore-0.11.8-r1.ebuild (renamed from sys-apps/pkgcore/pkgcore-0.11.8.ebuild)4
5 files changed, 57 insertions, 0 deletions
diff --git a/sys-apps/pkgcore/files/pkgcore-0.10.18-sighdlr.patch b/sys-apps/pkgcore/files/pkgcore-0.10.18-sighdlr.patch
new file mode 100644
index 000000000000..30cec9114f56
--- /dev/null
+++ b/sys-apps/pkgcore/files/pkgcore-0.10.18-sighdlr.patch
@@ -0,0 +1,47 @@
+From 533f1edd70054a5479ee85719d3cbef0d15627fd Mon Sep 17 00:00:00 2001
+From: Tim Harder <radhermit@gmail.com>
+Date: Sun, 28 Mar 2021 17:18:16 -0600
+Subject: [PATCH] ebuild.processor: register SIGINT and SIGTERM signal handlers
+ on ebd init
+
+Rather than at a global, module level to avoid issues with inadvertent
+issues during 3rd party imports, e.g. the pkgcore pytest plugin getting
+autoloaded by some other project's testsuite.
+---
+ src/pkgcore/ebuild/processor.py | 9 +++------
+ 1 file changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/src/pkgcore/ebuild/processor.py b/src/pkgcore/ebuild/processor.py
+index e8c3c2cd4..65437efcf 100644
+--- a/src/pkgcore/ebuild/processor.py
++++ b/src/pkgcore/ebuild/processor.py
+@@ -275,9 +275,6 @@ def chuck_KeyboardInterrupt(*args):
+ raise KeyboardInterrupt("ctrl+c encountered")
+
+
+-signal.signal(signal.SIGINT, chuck_KeyboardInterrupt)
+-
+-
+ def chuck_TermInterrupt(ebp, *args):
+ """Event handler for SIGTERM."""
+ if ebp is None:
+@@ -292,9 +289,6 @@ def chuck_TermInterrupt(ebp, *args):
+ ebp.shutdown_processor()
+
+
+-signal.signal(signal.SIGTERM, partial(chuck_TermInterrupt, None))
+-
+-
+ def chuck_UnhandledCommand(ebp, line):
+ """Event handler for unhandled commands."""
+ raise UnhandledCommand(line)
+@@ -332,6 +326,9 @@ def __init__(self, userpriv, sandbox, fd_pipes=None):
+ self._outstanding_expects = []
+ self._metadata_paths = None
+
++ signal.signal(signal.SIGTERM, partial(chuck_TermInterrupt, None))
++ signal.signal(signal.SIGINT, chuck_KeyboardInterrupt)
++
+ if userpriv:
+ self.__userpriv = True
+ spawn_opts.update({
diff --git a/sys-apps/pkgcore/pkgcore-0.11.4-r2.ebuild b/sys-apps/pkgcore/pkgcore-0.11.4-r3.ebuild
index 2b806114e425..7aca2d4c654c 100644
--- a/sys-apps/pkgcore/pkgcore-0.11.4-r2.ebuild
+++ b/sys-apps/pkgcore/pkgcore-0.11.4-r3.ebuild
@@ -37,6 +37,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}/pkgcore-0.10.13-metadata-xsd-2.patch"
+ "${FILESDIR}/pkgcore-0.10.18-sighdlr.patch"
)
distutils_enable_tests setup.py
diff --git a/sys-apps/pkgcore/pkgcore-0.11.5-r2.ebuild b/sys-apps/pkgcore/pkgcore-0.11.5-r3.ebuild
index 2b806114e425..7aca2d4c654c 100644
--- a/sys-apps/pkgcore/pkgcore-0.11.5-r2.ebuild
+++ b/sys-apps/pkgcore/pkgcore-0.11.5-r3.ebuild
@@ -37,6 +37,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}/pkgcore-0.10.13-metadata-xsd-2.patch"
+ "${FILESDIR}/pkgcore-0.10.18-sighdlr.patch"
)
distutils_enable_tests setup.py
diff --git a/sys-apps/pkgcore/pkgcore-0.11.6.ebuild b/sys-apps/pkgcore/pkgcore-0.11.6-r1.ebuild
index d98868c1bf84..274ef900e792 100644
--- a/sys-apps/pkgcore/pkgcore-0.11.6.ebuild
+++ b/sys-apps/pkgcore/pkgcore-0.11.6-r1.ebuild
@@ -33,6 +33,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/pkgcore-0.10.18-sighdlr.patch"
+)
+
distutils_enable_tests setup.py
src_test() {
diff --git a/sys-apps/pkgcore/pkgcore-0.11.8.ebuild b/sys-apps/pkgcore/pkgcore-0.11.8-r1.ebuild
index 9500e0ab3d3e..ccaf1c6d4391 100644
--- a/sys-apps/pkgcore/pkgcore-0.11.8.ebuild
+++ b/sys-apps/pkgcore/pkgcore-0.11.8-r1.ebuild
@@ -33,6 +33,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/pkgcore-0.10.18-sighdlr.patch"
+)
+
distutils_enable_tests setup.py
src_test() {