commit:     78d7db39b5de8a185ff9785513ca745e69d835fe
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 22 09:26:11 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> 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 <mgorny <AT> 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
+}

Reply via email to