* [gentoo-commits] repo/gentoo:master commit in: app-admin/abrt/, app-admin/abrt/files/
@ 2021-11-06 8:05 Pacho Ramos
0 siblings, 0 replies; 2+ messages in thread
From: Pacho Ramos @ 2021-11-06 8:05 UTC (permalink / raw
To: gentoo-commits
commit: e4f951e4f7f7e2e158ef2b3617a64a60b06fadbf
Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 6 08:05:02 2021 +0000
Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sat Nov 6 08:05:02 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e4f951e4
app-admin/abrt: Fix running with glib-2.70
Also do lazy python imports to avoid performance issues
Closes: https://bugs.gentoo.org/821199
Thanks-to: Leho Kraav (:macmaN @lkraav)
Thanks-to: Sam James
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>
app-admin/abrt/abrt-2.14.6-r1.ebuild | 134 +++++++++++++++++++++
app-admin/abrt/files/abrt-2.14.6-glib270.patch | 32 +++++
.../abrt/files/abrt-2.14.6-lazy-imports.patch | 57 +++++++++
3 files changed, 223 insertions(+)
diff --git a/app-admin/abrt/abrt-2.14.6-r1.ebuild b/app-admin/abrt/abrt-2.14.6-r1.ebuild
new file mode 100644
index 00000000000..c5c616459b4
--- /dev/null
+++ b/app-admin/abrt/abrt-2.14.6-r1.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{8..9} )
+
+inherit autotools python-single-r1 tmpfiles xdg
+
+DESCRIPTION="Automatic bug detection and reporting tool"
+HOMEPAGE="https://github.com/abrt/abrt/wiki/ABRT-Project https://github.com/abrt/abrt"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="selinux test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="!test? ( test )"
+
+DEPEND="${PYTHON_DEPS}
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libreport-2.13.0:=[gtk,python]
+ dev-libs/libxml2:2
+ >=gnome-base/gsettings-desktop-schemas-3.15.1
+ net-libs/libsoup:2.4
+ sys-apps/dbus
+ sys-apps/systemd:0=
+ sys-auth/polkit
+ sys-libs/libcap
+ sys-fs/inotify-tools
+ x11-libs/gtk+:3
+"
+RDEPEND="${DEPEND}
+ acct-user/abrt
+ acct-group/abrt
+ app-arch/cpio
+ app-arch/rpm[python,${PYTHON_SINGLE_USEDEP}]
+ dev-libs/elfutils
+ dev-libs/json-c:0=
+ sys-apps/util-linux
+ >=sys-devel/gdb-7
+ $(python_gen_cond_dep '
+ dev-libs/satyr[${PYTHON_USEDEP}]
+ dev-python/argcomplete[${PYTHON_USEDEP}]
+ dev-python/argh[${PYTHON_USEDEP}]
+ dev-python/humanize[${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ $(python_gen_cond_dep 'dev-python/python-systemd[${PYTHON_USEDEP}]')
+ test? (
+ $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+ )
+ app-text/asciidoc
+ app-text/xmlto
+ >=dev-util/intltool-0.35.0
+ virtual/pkgconfig
+ >=sys-devel/gettext-0.17
+"
+
+PATCHES=(
+ # https://github.com/abrt/abrt/commit/a6297858575780b9ed3d14cc42983348924d6048
+ "${FILESDIR}/${P}-glib270.patch"
+
+ # https://github.com/abrt/abrt/pull/1580
+ "${FILESDIR}/${P}-lazy-imports.patch"
+)
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ python_fix_shebang .
+ default
+
+ # Install under proper directory
+ sed -i -e 's:dbusabrtdocdir = ${datadir}/doc/abrt-dbus-${VERSION}/html:dbusabrtdocdir = ${datadir}/doc/${PF}/html:' doc/problems-service/Makefile.am || die
+
+ # Ensure this works for systems with and without /usr merge
+ sed -i -e "s:/usr/bin/bash:$(which bash):" init-scripts/abrtd.service || die
+
+ # Fix hardcoded "pytest-3"
+ sed -i -e "s:pytest-3:pytest:" \
+ configure.ac src/python-problem/tests/Makefile.am src/cli/test || die
+
+ # pyhook test is sensitive to the format of python's error messages, and
+ # fails with certain python versions
+ sed -e '/pyhook.at/ d' \
+ -i tests/Makefile.* tests/testsuite.at || die "sed remove pyhook tests failed"
+ ./gen-version || die # Needed to be run before autoreconf
+ eautoreconf
+}
+
+src_configure() {
+ myeconfargs=(
+ --libdir="${EPREFIX}/usr/$(get_libdir)"
+ --localstatedir="${EPREFIX}/var"
+ --without-bodhi
+ # package breaks due to not finding libreport-web with bodhi plugin enabled
+ --without-rpm
+ $(usex selinux "" "--without-selinux")
+ --with-python3
+ --without-pythondoc
+ # package breaks due to no sphinx-build-3
+ $(use_with test pythontests)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ python_optimize
+
+ # /var/spool/abrt is created by dev-libs/libreport
+ diropts -m 700 -o abrt -g abrt
+ keepdir /var/spool/abrt-upload
+
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}/${PN}-2.0.12-r1-init" abrt
+ newconfd "${FILESDIR}/${PN}-2.0.12-r1-conf" abrt
+
+ # Drop empy dirs, handled by tmpfiles
+ rm -r "${ED}"/var/run/ || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ tmpfiles_process abrt.conf
+}
diff --git a/app-admin/abrt/files/abrt-2.14.6-glib270.patch b/app-admin/abrt/files/abrt-2.14.6-glib270.patch
new file mode 100644
index 00000000000..673a31e0a21
--- /dev/null
+++ b/app-admin/abrt/files/abrt-2.14.6-glib270.patch
@@ -0,0 +1,32 @@
+From a6297858575780b9ed3d14cc42983348924d6048 Mon Sep 17 00:00:00 2001
+From: Michal Srb <michal@redhat.com>
+Date: Tue, 5 Oct 2021 15:53:48 +0200
+Subject: [PATCH] abrt-dbus: do not try to free session data twice
+
+We free session data in on_g_signal() function, which is also
+invoked when client disappears. Therefore, we don't need to register the
+same free function in g_bus_watch_name_on_connection().
+
+glib2 2.69.2 changed (fixed?) how/when g_bus_watch_name_on_connection()
+calls the provided free function and it uncovered this problem in abrt-dbus.
+
+See rhbz#1997315 for more details.
+
+Signed-off-by: Michal Srb <michal@redhat.com>
+---
+ src/dbus/abrt_problems2_service.c | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/dbus/abrt_problems2_service.c b/src/dbus/abrt_problems2_service.c
+index 8d543f443..004c7aeb2 100644
+--- a/src/dbus/abrt_problems2_service.c
++++ b/src/dbus/abrt_problems2_service.c
+@@ -571,7 +571,7 @@ static AbrtP2Object *session_object_register(AbrtP2Service *service,
+ obj->owner_watcher_id = g_bus_watch_name_on_connection(connection, caller,
+ G_BUS_NAME_WATCHER_FLAGS_NONE,
+ NULL, abrt_p2_service_on_session_owner_vanished,
+- obj, (GDestroyNotify)abrt_p2_object_destroy);
++ obj, NULL);
+
+ return obj;
+ }
diff --git a/app-admin/abrt/files/abrt-2.14.6-lazy-imports.patch b/app-admin/abrt/files/abrt-2.14.6-lazy-imports.patch
new file mode 100644
index 00000000000..5c892a8ecab
--- /dev/null
+++ b/app-admin/abrt/files/abrt-2.14.6-lazy-imports.patch
@@ -0,0 +1,57 @@
+From 4755f2171aa50a72d8ec03260c8cbc602263a6c0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
+Date: Fri, 24 Sep 2021 17:48:07 +0200
+Subject: [PATCH] Use lazy imports in abrt_exception_handler3
+
+The abrt_exception_handler3 module is always imported when Python starts,
+but all the modules imported from it (except sys) are only used during crashes.
+
+Especially the systemd.journal import is really expensive.
+
+Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2007664
+---
+ src/hooks/abrt_exception_handler3.py.in | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/src/hooks/abrt_exception_handler3.py.in b/src/hooks/abrt_exception_handler3.py.in
+index 89e2474b..0bc548e0 100644
+--- a/src/hooks/abrt_exception_handler3.py.in
++++ b/src/hooks/abrt_exception_handler3.py.in
+@@ -20,13 +20,15 @@
+ Module for the ABRT exception handling hook
+ """
+
++# Avoid importing anything but sys here, use lazy imports.
++# This file is imported on every Python startup,
++# all unused imports only increase the startup time and memory usage.
+ import sys
+-import os
+
+-from systemd import journal
+
+ def syslog(msg):
+ """Log message to system logger (journal)"""
++ from systemd import journal
+
+ journal.send(msg)
+
+@@ -68,6 +70,8 @@ def send(data):
+
+
+ def write_dump(tb_text, tb):
++ import os
++
+ if sys.argv[0][0] == "/":
+ executable = os.path.abspath(sys.argv[0])
+ else:
+@@ -118,6 +122,7 @@ def handle_exception(etype, value, tb):
+ sys.excepthook = sys.__excepthook__ # pylint: disable-msg=E1101
+
+ import errno
++ import os
+
+ # Ignore Ctrl-C
+ # SystemExit rhbz#636913 -> this exception is not an error
+--
+2.31.1
+
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-admin/abrt/, app-admin/abrt/files/
@ 2022-03-13 18:36 Pacho Ramos
0 siblings, 0 replies; 2+ messages in thread
From: Pacho Ramos @ 2022-03-13 18:36 UTC (permalink / raw
To: gentoo-commits
commit: 23a19421974b3696160dd47fe2cbd1268e1ea4e4
Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 13 17:54:16 2022 +0000
Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun Mar 13 18:36:35 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23a19421
app-admin/abrt: Drop old
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>
app-admin/abrt/Manifest | 1 -
app-admin/abrt/abrt-2.14.6-r1.ebuild | 134 ---------------------
app-admin/abrt/files/abrt-2.14.6-glib270.patch | 32 -----
.../abrt/files/abrt-2.14.6-lazy-imports.patch | 57 ---------
4 files changed, 224 deletions(-)
diff --git a/app-admin/abrt/Manifest b/app-admin/abrt/Manifest
index 2e8861aaf461..ad62600d11c8 100644
--- a/app-admin/abrt/Manifest
+++ b/app-admin/abrt/Manifest
@@ -1,3 +1,2 @@
-DIST abrt-2.14.6.tar.gz 6057661 BLAKE2B 2ef74203181c89818f283a801c4a1a0f22a01c92ca2415d245dc180ee721b3e29cb75c95e45d738f88b6bbf339fe8bef4e499ab6fecad33399dc8a5af8f98d4c SHA512 eb1ba2f624d51eeccd203bb23060493347f5a9142fad7d0570d46134071d870a9c66b4fbfb8210e7d6f87c0c039f31eb486d18a36b10fba318e2180aa09df9fe
DIST abrt-2.15.0.tar.gz 6122114 BLAKE2B ac075a15d4621596bbe3009bf2e4725040139d78077f85bd4daebbe86504f9aa0a12dcedcf3b5b65404bc2851e93e6b1113dcc37923832c826d572ab9810ef94 SHA512 2d6c1287c1f01990aeb30f956f465c7a6399a6e53dc667602e263c136f94bc4090b58876acba678b29671c0db89ae8e7dd6994cf8d0d2d9fbc375f54ae6cd935
DIST abrt-2.15.1.tar.gz 6122174 BLAKE2B e3b767929cc2303dcf90a935e0c9ba30641638666925d4707fb0dbed135d8635cd0a58c712f2965969218c64856a5fa3bd20a79410c0e6a5f176a7e82059dda0 SHA512 745c513969b78ee7c76c310a8c2fc0bafd1e50375130fa773ad950bf123ee50cfa237da9b331f2c0af2851b35b162cbc908f2e00d59283867ed8ffd72236d0ea
diff --git a/app-admin/abrt/abrt-2.14.6-r1.ebuild b/app-admin/abrt/abrt-2.14.6-r1.ebuild
deleted file mode 100644
index c5c616459b44..000000000000
--- a/app-admin/abrt/abrt-2.14.6-r1.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit autotools python-single-r1 tmpfiles xdg
-
-DESCRIPTION="Automatic bug detection and reporting tool"
-HOMEPAGE="https://github.com/abrt/abrt/wiki/ABRT-Project https://github.com/abrt/abrt"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="selinux test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RESTRICT="!test? ( test )"
-
-DEPEND="${PYTHON_DEPS}
- >=dev-libs/glib-2.56:2
- >=dev-libs/libreport-2.13.0:=[gtk,python]
- dev-libs/libxml2:2
- >=gnome-base/gsettings-desktop-schemas-3.15.1
- net-libs/libsoup:2.4
- sys-apps/dbus
- sys-apps/systemd:0=
- sys-auth/polkit
- sys-libs/libcap
- sys-fs/inotify-tools
- x11-libs/gtk+:3
-"
-RDEPEND="${DEPEND}
- acct-user/abrt
- acct-group/abrt
- app-arch/cpio
- app-arch/rpm[python,${PYTHON_SINGLE_USEDEP}]
- dev-libs/elfutils
- dev-libs/json-c:0=
- sys-apps/util-linux
- >=sys-devel/gdb-7
- $(python_gen_cond_dep '
- dev-libs/satyr[${PYTHON_USEDEP}]
- dev-python/argcomplete[${PYTHON_USEDEP}]
- dev-python/argh[${PYTHON_USEDEP}]
- dev-python/humanize[${PYTHON_USEDEP}]
- ')
-"
-BDEPEND="
- $(python_gen_cond_dep 'dev-python/python-systemd[${PYTHON_USEDEP}]')
- test? (
- $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
- )
- app-text/asciidoc
- app-text/xmlto
- >=dev-util/intltool-0.35.0
- virtual/pkgconfig
- >=sys-devel/gettext-0.17
-"
-
-PATCHES=(
- # https://github.com/abrt/abrt/commit/a6297858575780b9ed3d14cc42983348924d6048
- "${FILESDIR}/${P}-glib270.patch"
-
- # https://github.com/abrt/abrt/pull/1580
- "${FILESDIR}/${P}-lazy-imports.patch"
-)
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- python_fix_shebang .
- default
-
- # Install under proper directory
- sed -i -e 's:dbusabrtdocdir = ${datadir}/doc/abrt-dbus-${VERSION}/html:dbusabrtdocdir = ${datadir}/doc/${PF}/html:' doc/problems-service/Makefile.am || die
-
- # Ensure this works for systems with and without /usr merge
- sed -i -e "s:/usr/bin/bash:$(which bash):" init-scripts/abrtd.service || die
-
- # Fix hardcoded "pytest-3"
- sed -i -e "s:pytest-3:pytest:" \
- configure.ac src/python-problem/tests/Makefile.am src/cli/test || die
-
- # pyhook test is sensitive to the format of python's error messages, and
- # fails with certain python versions
- sed -e '/pyhook.at/ d' \
- -i tests/Makefile.* tests/testsuite.at || die "sed remove pyhook tests failed"
- ./gen-version || die # Needed to be run before autoreconf
- eautoreconf
-}
-
-src_configure() {
- myeconfargs=(
- --libdir="${EPREFIX}/usr/$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-bodhi
- # package breaks due to not finding libreport-web with bodhi plugin enabled
- --without-rpm
- $(usex selinux "" "--without-selinux")
- --with-python3
- --without-pythondoc
- # package breaks due to no sphinx-build-3
- $(use_with test pythontests)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- python_optimize
-
- # /var/spool/abrt is created by dev-libs/libreport
- diropts -m 700 -o abrt -g abrt
- keepdir /var/spool/abrt-upload
-
- find "${D}" -name '*.la' -delete || die
-
- newinitd "${FILESDIR}/${PN}-2.0.12-r1-init" abrt
- newconfd "${FILESDIR}/${PN}-2.0.12-r1-conf" abrt
-
- # Drop empy dirs, handled by tmpfiles
- rm -r "${ED}"/var/run/ || die
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- tmpfiles_process abrt.conf
-}
diff --git a/app-admin/abrt/files/abrt-2.14.6-glib270.patch b/app-admin/abrt/files/abrt-2.14.6-glib270.patch
deleted file mode 100644
index 673a31e0a212..000000000000
--- a/app-admin/abrt/files/abrt-2.14.6-glib270.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From a6297858575780b9ed3d14cc42983348924d6048 Mon Sep 17 00:00:00 2001
-From: Michal Srb <michal@redhat.com>
-Date: Tue, 5 Oct 2021 15:53:48 +0200
-Subject: [PATCH] abrt-dbus: do not try to free session data twice
-
-We free session data in on_g_signal() function, which is also
-invoked when client disappears. Therefore, we don't need to register the
-same free function in g_bus_watch_name_on_connection().
-
-glib2 2.69.2 changed (fixed?) how/when g_bus_watch_name_on_connection()
-calls the provided free function and it uncovered this problem in abrt-dbus.
-
-See rhbz#1997315 for more details.
-
-Signed-off-by: Michal Srb <michal@redhat.com>
----
- src/dbus/abrt_problems2_service.c | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/dbus/abrt_problems2_service.c b/src/dbus/abrt_problems2_service.c
-index 8d543f443..004c7aeb2 100644
---- a/src/dbus/abrt_problems2_service.c
-+++ b/src/dbus/abrt_problems2_service.c
-@@ -571,7 +571,7 @@ static AbrtP2Object *session_object_register(AbrtP2Service *service,
- obj->owner_watcher_id = g_bus_watch_name_on_connection(connection, caller,
- G_BUS_NAME_WATCHER_FLAGS_NONE,
- NULL, abrt_p2_service_on_session_owner_vanished,
-- obj, (GDestroyNotify)abrt_p2_object_destroy);
-+ obj, NULL);
-
- return obj;
- }
diff --git a/app-admin/abrt/files/abrt-2.14.6-lazy-imports.patch b/app-admin/abrt/files/abrt-2.14.6-lazy-imports.patch
deleted file mode 100644
index 5c892a8ecab8..000000000000
--- a/app-admin/abrt/files/abrt-2.14.6-lazy-imports.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 4755f2171aa50a72d8ec03260c8cbc602263a6c0 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
-Date: Fri, 24 Sep 2021 17:48:07 +0200
-Subject: [PATCH] Use lazy imports in abrt_exception_handler3
-
-The abrt_exception_handler3 module is always imported when Python starts,
-but all the modules imported from it (except sys) are only used during crashes.
-
-Especially the systemd.journal import is really expensive.
-
-Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2007664
----
- src/hooks/abrt_exception_handler3.py.in | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/src/hooks/abrt_exception_handler3.py.in b/src/hooks/abrt_exception_handler3.py.in
-index 89e2474b..0bc548e0 100644
---- a/src/hooks/abrt_exception_handler3.py.in
-+++ b/src/hooks/abrt_exception_handler3.py.in
-@@ -20,13 +20,15 @@
- Module for the ABRT exception handling hook
- """
-
-+# Avoid importing anything but sys here, use lazy imports.
-+# This file is imported on every Python startup,
-+# all unused imports only increase the startup time and memory usage.
- import sys
--import os
-
--from systemd import journal
-
- def syslog(msg):
- """Log message to system logger (journal)"""
-+ from systemd import journal
-
- journal.send(msg)
-
-@@ -68,6 +70,8 @@ def send(data):
-
-
- def write_dump(tb_text, tb):
-+ import os
-+
- if sys.argv[0][0] == "/":
- executable = os.path.abspath(sys.argv[0])
- else:
-@@ -118,6 +122,7 @@ def handle_exception(etype, value, tb):
- sys.excepthook = sys.__excepthook__ # pylint: disable-msg=E1101
-
- import errno
-+ import os
-
- # Ignore Ctrl-C
- # SystemExit rhbz#636913 -> this exception is not an error
---
-2.31.1
-
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-03-13 18:36 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-06 8:05 [gentoo-commits] repo/gentoo:master commit in: app-admin/abrt/, app-admin/abrt/files/ Pacho Ramos
-- strict thread matches above, loose matches on Subject: below --
2022-03-13 18:36 Pacho Ramos
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox