From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 3F61615808C for ; Tue, 22 Feb 2022 09:38:34 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id DAEEE2BC00C; Tue, 22 Feb 2022 09:38:32 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id ABB51E0A64 for ; Tue, 22 Feb 2022 09:38:32 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 81196343262 for ; Tue, 22 Feb 2022 09:38:31 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 294D32EA for ; Tue, 22 Feb 2022 09:38:30 +0000 (UTC) From: "Michał Górny" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michał Górny" Message-ID: <1645522704.78d7db39b5de8a185ff9785513ca745e69d835fe.mgorny@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/psutil/files/, dev-python/psutil/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/psutil/Manifest dev-python/psutil/files/psutil-5.9.0-tests.patch dev-python/psutil/psutil-5.9.0.ebuild X-VCS-Directories: dev-python/psutil/ dev-python/psutil/files/ X-VCS-Committer: mgorny X-VCS-Committer-Name: Michał Górny X-VCS-Revision: 78d7db39b5de8a185ff9785513ca745e69d835fe X-VCS-Branch: master Date: Tue, 22 Feb 2022 09:38:30 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 6a54f453-b56c-49d5-898f-2ac35b930e7b X-Archives-Hash: 122a2f6657006a3389637366fdcaba0e commit: 78d7db39b5de8a185ff9785513ca745e69d835fe Author: Michał Górny gentoo org> AuthorDate: Tue Feb 22 09:26:11 2022 +0000 Commit: Michał Górny gentoo org> CommitDate: Tue Feb 22 09:38:24 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78d7db39 dev-python/psutil: Bump to 5.9.0 Signed-off-by: Michał Górny gentoo.org> dev-python/psutil/Manifest | 1 + dev-python/psutil/files/psutil-5.9.0-tests.patch | 188 +++++++++++++++++++++++ dev-python/psutil/psutil-5.9.0.ebuild | 45 ++++++ 3 files changed, 234 insertions(+) diff --git a/dev-python/psutil/Manifest b/dev-python/psutil/Manifest index 5990e841b32f..a8eb6c71de71 100644 --- a/dev-python/psutil/Manifest +++ b/dev-python/psutil/Manifest @@ -1 +1,2 @@ DIST psutil-5.7.3.tar.gz 465556 BLAKE2B 6a9f31fcba571f381c1f4c904a9ff65659d13ed64e91df478aa7df4dabb87a35c4fbd9c0491a3d10b9eaf0fdcc8f2407fcf7144e729043eda605dfe6e6f93844 SHA512 8fcff56dd4e4c1b877c09023721e6f562424f7f84ae5304d518976a1e7f21dd026772f1abfc063bdd0857a375bc869f42febde090dc0b65918d1ebf44e3ad71d +DIST psutil-5.9.0.tar.gz 478322 BLAKE2B 763c8ae14ae546bed64a360047d2ce38783e9e7e939160f751c4ccc94b8e023aaa4cdca426f584e05dae8b1326333660e216d7cb3edd820e24a931dddfa5160f SHA512 b521cfce51e90fdf87ba19bf8069877e3210aede92c17460ea0b00324a36e133168e4bff550462d07ab6d93c597c6560d68954340031ff43168d54a8e5d4c4e7 diff --git a/dev-python/psutil/files/psutil-5.9.0-tests.patch b/dev-python/psutil/files/psutil-5.9.0-tests.patch new file mode 100644 index 000000000000..56a5e1168733 --- /dev/null +++ b/dev-python/psutil/files/psutil-5.9.0-tests.patch @@ -0,0 +1,188 @@ +diff --git a/psutil/tests/__init__.py b/psutil/tests/__init__.py +index 21bb3e61..6c45c9e0 100644 +--- a/psutil/tests/__init__.py ++++ b/psutil/tests/__init__.py +@@ -88,6 +88,7 @@ __all__ = [ + "HAS_IONICE", "HAS_MEMORY_MAPS", "HAS_PROC_CPU_NUM", "HAS_RLIMIT", + "HAS_SENSORS_BATTERY", "HAS_BATTERY", "HAS_SENSORS_FANS", + "HAS_SENSORS_TEMPERATURES", "HAS_MEMORY_FULL_INFO", ++ "GENTOO_TESTING", + # subprocesses + 'pyrun', 'terminate', 'reap_children', 'spawn_testproc', 'spawn_zombie', + 'spawn_children_pair', +@@ -128,6 +129,7 @@ PYPY = '__pypy__' in sys.builtin_module_names + APPVEYOR = 'APPVEYOR' in os.environ + GITHUB_ACTIONS = 'GITHUB_ACTIONS' in os.environ or 'CIBUILDWHEEL' in os.environ + CI_TESTING = APPVEYOR or GITHUB_ACTIONS ++GENTOO_TESTING = "GENTOO_TESTING" in os.environ + # are we a 64 bit process? + IS_64BIT = sys.maxsize > 2 ** 32 + +diff --git a/psutil/tests/test_linux.py b/psutil/tests/test_linux.py +index 20e28d29..ce5d10a0 100755 +--- a/psutil/tests/test_linux.py ++++ b/psutil/tests/test_linux.py +@@ -28,6 +28,7 @@ from psutil._compat import PY3 + from psutil._compat import FileNotFoundError + from psutil._compat import basestring + from psutil._compat import u ++from psutil.tests import GENTOO_TESTING + from psutil.tests import GITHUB_ACTIONS + from psutil.tests import GLOBAL_TIMEOUT + from psutil.tests import HAS_BATTERY +@@ -929,6 +930,7 @@ class TestLoadAvg(PsutilTestCase): + @unittest.skipIf(not LINUX, "LINUX only") + class TestSystemNetIfAddrs(PsutilTestCase): + ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + def test_ips(self): + for name, addrs in psutil.net_if_addrs().items(): + for addr in addrs: +@@ -1491,6 +1493,7 @@ class TestMisc(PsutilTestCase): + psutil.PROCFS_PATH = "/proc" + + @retry_on_failure() ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + def test_issue_687(self): + # In case of thread ID: + # - pid_exists() is supposed to return False +@@ -1596,6 +1599,8 @@ class TestSensorsBattery(PsutilTestCase): + self.assertEqual(psutil.sensors_battery().power_plugged, False) + assert m.called + ++ @unittest.skipIf(GENTOO_TESTING, ++ "mocking doesn't work with non-BAT0 battery") + def test_emulate_power_undetermined(self): + # Pretend we can't know whether the AC power cable not + # connected (assert fallback to False). +@@ -1614,6 +1619,8 @@ class TestSensorsBattery(PsutilTestCase): + self.assertIsNone(psutil.sensors_battery().power_plugged) + assert m.called + ++ @unittest.skipIf(GENTOO_TESTING, ++ "mocking doesn't work with non-BAT0 battery") + def test_emulate_energy_full_0(self): + # Emulate a case where energy_full files returns 0. + with mock_open_content( +@@ -1621,6 +1628,8 @@ class TestSensorsBattery(PsutilTestCase): + self.assertEqual(psutil.sensors_battery().percent, 0) + assert m.called + ++ @unittest.skipIf(GENTOO_TESTING, ++ "mocking doesn't work with non-BAT0 battery") + def test_emulate_energy_full_not_avail(self): + # Emulate a case where energy_full file does not exist. + # Expected fallback on /capacity. +@@ -1634,6 +1643,8 @@ class TestSensorsBattery(PsutilTestCase): + "/sys/class/power_supply/BAT0/capacity", b"88"): + self.assertEqual(psutil.sensors_battery().percent, 88) + ++ @unittest.skipIf(GENTOO_TESTING, ++ "mocking doesn't work with non-BAT0 battery") + def test_emulate_no_power(self): + # Emulate a case where /AC0/online file nor /BAT0/status exist. + with mock_open_exception( +@@ -2220,6 +2231,7 @@ class TestProcessAgainstStatus(PsutilTestCase): + value = self.read_status_file("nonvoluntary_ctxt_switches:") + self.assertEqual(self.proc.num_ctx_switches().involuntary, value) + ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + def test_cpu_affinity(self): + value = self.read_status_file("Cpus_allowed_list:") + if '-' in str(value): +diff --git a/psutil/tests/test_misc.py b/psutil/tests/test_misc.py +index d946eb62..a53de565 100755 +--- a/psutil/tests/test_misc.py ++++ b/psutil/tests/test_misc.py +@@ -32,6 +32,7 @@ from psutil._compat import PY3 + from psutil._compat import redirect_stderr + from psutil.tests import APPVEYOR + from psutil.tests import CI_TESTING ++from psutil.tests import GENTOO_TESTING + from psutil.tests import HAS_BATTERY + from psutil.tests import HAS_MEMORY_MAPS + from psutil.tests import HAS_NET_IO_COUNTERS +@@ -401,6 +402,7 @@ class TestMisc(PsutilTestCase): + reload_module(psutil) + self.assertIn("version conflict", str(cm.exception).lower()) + ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + def test_debug(self): + if PY3: + from io import StringIO +diff --git a/psutil/tests/test_posix.py b/psutil/tests/test_posix.py +index 31b81926..7eb9bac5 100755 +--- a/psutil/tests/test_posix.py ++++ b/psutil/tests/test_posix.py +@@ -23,6 +23,7 @@ from psutil import OPENBSD + from psutil import POSIX + from psutil import SUNOS + from psutil.tests import CI_TESTING ++from psutil.tests import GENTOO_TESTING + from psutil.tests import HAS_NET_IO_COUNTERS + from psutil.tests import PYTHON_EXE + from psutil.tests import PsutilTestCase +@@ -326,6 +327,7 @@ class TestSystemAPIs(PsutilTestCase): + "couldn't find %s nic in 'ifconfig -a' output\n%s" % ( + nic, output)) + ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + @unittest.skipIf(CI_TESTING and not psutil.users(), "unreliable on CI") + @retry_on_failure() + def test_users(self): +diff --git a/psutil/tests/test_process.py b/psutil/tests/test_process.py +index c9059e33..0050c42a 100755 +--- a/psutil/tests/test_process.py ++++ b/psutil/tests/test_process.py +@@ -38,6 +38,7 @@ from psutil._compat import long + from psutil._compat import super + from psutil.tests import APPVEYOR + from psutil.tests import CI_TESTING ++from psutil.tests import GENTOO_TESTING + from psutil.tests import GITHUB_ACTIONS + from psutil.tests import GLOBAL_TIMEOUT + from psutil.tests import HAS_CPU_AFFINITY +@@ -292,6 +293,7 @@ class TestProcess(PsutilTestCase): + time.strftime("%Y %m %d %H:%M:%S", time.localtime(p.create_time())) + + @unittest.skipIf(not POSIX, 'POSIX only') ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + def test_terminal(self): + terminal = psutil.Process().terminal() + if terminal is not None: +@@ -341,6 +343,7 @@ class TestProcess(PsutilTestCase): + self.assertGreaterEqual(io2[i], 0) + self.assertGreaterEqual(io2[i], 0) + ++ @unittest.skipIf(GENTOO_TESTING, "fails if builder is ioniced already") + @unittest.skipIf(not HAS_IONICE, "not supported") + @unittest.skipIf(not LINUX, "linux only") + def test_ionice_linux(self): +@@ -1406,6 +1409,7 @@ class TestProcess(PsutilTestCase): + if not OSX and GITHUB_ACTIONS: + self.assertEqual(d1, d2) + ++ @unittest.skipIf(GENTOO_TESTING, "broken by Gentoo sandbox") + @unittest.skipIf(not HAS_ENVIRON, "not supported") + @unittest.skipIf(not POSIX, "POSIX only") + def test_weird_environ(self): +diff --git a/psutil/tests/test_system.py b/psutil/tests/test_system.py +index db2cb348..b1faa154 100755 +--- a/psutil/tests/test_system.py ++++ b/psutil/tests/test_system.py +@@ -33,6 +33,7 @@ from psutil._compat import long + from psutil.tests import ASCII_FS + from psutil.tests import CI_TESTING + from psutil.tests import DEVNULL ++from psutil.tests import GENTOO_TESTING + from psutil.tests import GITHUB_ACTIONS + from psutil.tests import GLOBAL_TIMEOUT + from psutil.tests import HAS_BATTERY +@@ -199,6 +200,7 @@ class TestMiscAPIs(PsutilTestCase): + self.assertGreater(bt, 0) + self.assertLess(bt, time.time()) + ++ @unittest.skipIf(GENTOO_TESTING, "broken in Gentoo test env") + @unittest.skipIf(CI_TESTING and not psutil.users(), "unreliable on CI") + def test_users(self): + users = psutil.users() diff --git a/dev-python/psutil/psutil-5.9.0.ebuild b/dev-python/psutil/psutil-5.9.0.ebuild new file mode 100644 index 000000000000..00a12bc0d760 --- /dev/null +++ b/dev-python/psutil/psutil-5.9.0.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8..10} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Retrieve information on running processes and system utilization" +HOMEPAGE="https://github.com/giampaolo/psutil https://pypi.org/project/psutil/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/psutil-5.9.0-tests.patch +) + +python_test() { + if [[ ${EPYTHON} == pypy* ]]; then + ewarn "Not running tests on ${EPYTHON} since they are broken" + return 0 + fi + + # since we are running in an environment a bit similar to CI, + # let's skip the tests that are disable for CI + local -x TRAVIS=1 + local -x APPVEYOR=1 + local -x GITHUB_ACTIONS=1 + local -x GENTOO_TESTING=1 + "${EPYTHON}" psutil/tests/runner.py || + die "tests failed with ${EPYTHON}" +} + +python_compile() { + # force -j1 to avoid .o linking race conditions + local MAKEOPTS=-j1 + distutils-r1_python_compile +}