Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-psutil for openSUSE:Factory checked in at 2024-07-18 19:15:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-psutil (Old) and /work/SRC/openSUSE:Factory/.python-psutil.new.17339 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-psutil" Thu Jul 18 19:15:40 2024 rev:81 rq:1188219 version:6.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-psutil/python-psutil.changes 2024-03-26 19:26:35.859471172 +0100 +++ /work/SRC/openSUSE:Factory/.python-psutil.new.17339/python-psutil.changes 2024-07-18 19:15:55.094104538 +0200 @@ -1,0 +2,62 @@ +Wed Jul 17 12:33:03 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaub...@suse.com> + +- Update to version 6.0.0 + * 2109_: ``maxfile`` and ``maxpath`` fields were removed from the namedtuple + returned by `disk_partitions()`_. Reason: on network filesystems (NFS) this + can potentially take a very long time to complete. + * 2366_, [Windows]: log debug message when using slower process APIs. + * 2375_, [macOS]: provide arm64 wheels. (patch by Matthieu Darbois) + * 2396_: `process_iter()`_ no longer pre-emptively checks whether PIDs have + been reused. This makes `process_iter()`_ around 20x times faster. + * 2396_: a new ``psutil.process_iter.cache_clear()`` API can be used the clear + `process_iter()`_ internal cache. + * 2401_, Support building with free-threaded CPython 3.13. (patch by Sam Gross) + * 2407_: `Process.connections()`_ was renamed to `Process.net_connections()`_. + The old name is still available, but it's deprecated (triggers a + ``DeprecationWarning``) and will be removed in the future. + * 2425_: [Linux]: provide aarch64 wheels. (patch by Matthieu Darbois / Ben Raz) + * 2250_, [NetBSD]: `Process.cmdline()`_ sometimes fail with EBUSY. It usually + happens for long cmdlines with lots of arguments. In this case retry getting + the cmdline for up to 50 times, and return an empty list as last resort. + * 2254_, [Linux]: offline cpus raise NotImplementedError in cpu_freq() (patch + by Shade Gladden) + * 2272_: Add pickle support to psutil Exceptions. + * 2359_, [Windows], [CRITICAL]: `pid_exists()`_ disagrees with `Process`_ on + whether a pid exists when ERROR_ACCESS_DENIED. + * 2360_, [macOS]: can't compile on macOS < 10.13. (patch by Ryan Schmidt) + * 2362_, [macOS]: can't compile on macOS 10.11. (patch by Ryan Schmidt) + * 2365_, [macOS]: can't compile on macOS < 10.9. (patch by Ryan Schmidt) + * 2395_, [OpenBSD]: `pid_exists()`_ erroneously return True if the argument is + a thread ID (TID) instead of a PID (process ID). + * 2412_, [macOS]: can't compile on macOS 10.4 PowerPC due to missing `MNT_` + constants. + * 2109_: the namedtuple returned by `disk_partitions()`_' no longer has + ``maxfile`` and ``maxpath`` fields. + * 2396_: `process_iter()`_ no longer pre-emptively checks whether PIDs have + been reused. If you want to check for PID reusage you are supposed to use + `Process.is_running()`_ against the yielded `Process`_ instances. That will + also automatically remove reused PIDs from `process_iter()`_ internal cache. + * 2407_: `Process.connections()`_ was renamed to `Process.net_connections()`_. + The old name is still available, but it's deprecated (triggers a + ``DeprecationWarning``) and will be removed in the future. +- from version 5.9.8 + * 2343_, [FreeBSD]: filter `net_connections()`_ returned list in C instead of + Python, and avoid to retrieve unnecessary connection types unless explicitly + asked. E.g., on an IDLE system with few IPv6 connections this will run around + 4 times faster. Before all connection types (TCP, UDP, UNIX) were retrieved + internally, even if only a portion was returned. + * 2342_, [NetBSD]: same as above (#2343) but for NetBSD. + * 2349_: adopted black formatting style. + * 930_, [NetBSD], [critical]: `net_connections()`_ implementation was broken. + It could either leak memory or core dump. + * 2340_, [NetBSD]: if process is terminated, `Process.cwd()`_ will return an + empty string instead of raising `NoSuchProcess`_. + * 2345_, [Linux]: fix compilation on older compiler missing DUPLEX_UNKNOWN. + * 2222_, [macOS]: `cpu_freq()` now returns fixed values for `min` and `max` + frequencies in all Apple Silicon chips. +- Drop obsolete patch to skip tests on Python 2 + * skip_rlimit_tests_on_python2.patch +- Update patch to skip failing tests for new version + * skip_failing_tests.patch + +------------------------------------------------------------------- Old: ---- psutil-5.9.7.tar.gz skip_rlimit_tests_on_python2.patch New: ---- psutil-6.0.0.tar.gz BETA DEBUG BEGIN: Old:- Drop obsolete patch to skip tests on Python 2 * skip_rlimit_tests_on_python2.patch - Update patch to skip failing tests for new version BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-psutil.spec ++++++ --- /var/tmp/diff_new_pack.9hS9cl/_old 2024-07-18 19:15:55.754130683 +0200 +++ /var/tmp/diff_new_pack.9hS9cl/_new 2024-07-18 19:15:55.754130683 +0200 @@ -23,7 +23,7 @@ %endif %{?sle15_python_module_pythons} Name: python-psutil -Version: 5.9.7 +Version: 6.0.0 Release: 0 Summary: A process utilities module for Python License: BSD-3-Clause @@ -32,8 +32,6 @@ # PATCH-FIX-UPSTREAM skip_failing_tests.patch gh#giampaolo/psutil#1635 mc...@suse.com # skip tests failing because of incomplete emulation of the environment in osc build Patch2: skip_failing_tests.patch -# PATCH-FIX-SLE skip_rlimit_tests_on_python2.patch alarr...@suse.com -Patch3: skip_rlimit_tests_on_python2.patch # PATCH-FIX-SLE adopt change of used memory of procps Patch4: mem-used-bsc1181475.patch BuildRequires: %{python_module devel} ++++++ psutil-5.9.7.tar.gz -> psutil-6.0.0.tar.gz ++++++ ++++ 17903 lines of diff (skipped) ++++++ skip_failing_tests.patch ++++++ --- /var/tmp/diff_new_pack.9hS9cl/_old 2024-07-18 19:15:55.926137497 +0200 +++ /var/tmp/diff_new_pack.9hS9cl/_new 2024-07-18 19:15:55.930137655 +0200 @@ -1,36 +1,18 @@ -Index: psutil-5.9.5/psutil/tests/test_misc.py -=================================================================== ---- psutil-5.9.5.orig/psutil/tests/test_misc.py -+++ psutil-5.9.5/psutil/tests/test_misc.py -@@ -251,6 +251,7 @@ class TestMisc(PsutilTestCase): - - # # XXX: https://github.com/pypa/setuptools/pull/2896 - # @unittest.skipIf(APPVEYOR, "temporarily disabled due to setuptools bug") -+ # @unittest.skip("Fails in OBS") - # def test_setup_script(self): - # setup_py = os.path.join(ROOT_DIR, 'setup.py') - # if CI_TESTING and not os.path.exists(setup_py): -@@ -847,6 +848,7 @@ class TestScripts(PsutilTestCase): - src = f.read() - ast.parse(src) - -+ @unittest.skip("Fails in OBS") - def test_coverage(self): - # make sure all example scripts have a test method defined - meths = dir(self) -@@ -866,6 +868,7 @@ class TestScripts(PsutilTestCase): - if not stat.S_IXUSR & os.stat(path)[stat.ST_MODE]: - raise self.fail('%r is not executable' % path) +diff -Nru psutil-6.0.0.orig/psutil/tests/test_contracts.py psutil-6.0.0/psutil/tests/test_contracts.py +--- psutil-6.0.0.orig/psutil/tests/test_contracts.py 2024-06-18 22:36:40.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_contracts.py 2024-07-17 14:20:15.685789923 +0200 +@@ -249,6 +249,7 @@ + self.assertIsInstance(k, str) + self.assert_ntuple_of_nums(v, type_=(int, long)) + @unittest.skip("Fails in OBS") - def test_disk_usage(self): - self.assert_stdout('disk_usage.py') - -Index: psutil-5.9.5/psutil/tests/test_linux.py -=================================================================== ---- psutil-5.9.5.orig/psutil/tests/test_linux.py -+++ psutil-5.9.5/psutil/tests/test_linux.py -@@ -713,6 +713,7 @@ class TestSystemCPUCountLogical(PsutilTe + def test_disk_partitions(self): + # Duplicate of test_system.py. Keep it anyway. + for disk in psutil.disk_partitions(): +diff -Nru psutil-6.0.0.orig/psutil/tests/test_linux.py psutil-6.0.0/psutil/tests/test_linux.py +--- psutil-6.0.0.orig/psutil/tests/test_linux.py 2024-06-18 23:00:36.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_linux.py 2024-07-17 14:20:15.685789923 +0200 +@@ -756,6 +756,7 @@ self.assertEqual(psutil.cpu_count(logical=True), num) @unittest.skipIf(not which("lscpu"), "lscpu utility not available") @@ -38,31 +20,31 @@ def test_against_lscpu(self): out = sh("lscpu -p") num = len([x for x in out.split('\n') if not x.startswith('#')]) -@@ -756,6 +757,7 @@ class TestSystemCPUCountLogical(PsutilTe +@@ -801,6 +802,7 @@ + @unittest.skipIf(not LINUX, "LINUX only") class TestSystemCPUCountCores(PsutilTestCase): - @unittest.skipIf(not which("lscpu"), "lscpu utility not available") + @unittest.skip("Fails in OBS") def test_against_lscpu(self): out = sh("lscpu -p") core_ids = set() -@@ -1134,6 +1136,7 @@ class TestSystemDiskPartitions(PsutilTes - +@@ -1196,6 +1198,7 @@ + class TestSystemDiskPartitions(PsutilTestCase): @unittest.skipIf(not hasattr(os, 'statvfs'), "os.statvfs() not available") @skip_on_not_implemented() + @unittest.skip("Fails in OBS") def test_against_df(self): # test psutil.disk_usage() and psutil.disk_partitions() # against "df -a" -@@ -1308,6 +1311,7 @@ class TestSystemDiskIoCounters(PsutilTes +@@ -1374,6 +1377,7 @@ self.assertEqual(ret.read_count, 1) self.assertEqual(ret.write_count, 5) + @unittest.skip("Fails in OBS") def test_emulate_use_sysfs(self): def exists(path): - if path == '/proc/diskstats': -@@ -1351,6 +1355,7 @@ class TestRootFsDeviceFinder(PsutilTestC + return path == '/proc/diskstats' +@@ -1417,6 +1421,7 @@ finder.ask_sys_class_block() @unittest.skipIf(GITHUB_ACTIONS, "unsupported on GITHUB_ACTIONS") @@ -70,15 +52,15 @@ def test_comparisons(self): finder = RootFsDeviceFinder() self.assertIsNotNone(finder.find()) -@@ -1378,6 +1383,7 @@ class TestRootFsDeviceFinder(PsutilTestC +@@ -1445,6 +1450,7 @@ findmnt_value = sh("findmnt -o SOURCE -rn /") self.assertEqual(psutil_value, findmnt_value) + @unittest.skip("Fails in OBS") def test_disk_partitions_mocked(self): with mock.patch( - 'psutil._pslinux.cext.disk_partitions', -@@ -1676,6 +1682,8 @@ class TestSensorsBattery(PsutilTestCase) + 'psutil._pslinux.cext.disk_partitions', +@@ -1728,6 +1734,8 @@ self.assertIsNone(psutil.sensors_battery().power_plugged) assert m.called @@ -87,7 +69,7 @@ def test_emulate_energy_full_0(self): # Emulate a case where energy_full files returns 0. with mock_open_content( -@@ -1683,6 +1691,8 @@ class TestSensorsBattery(PsutilTestCase) +@@ -1736,6 +1744,8 @@ self.assertEqual(psutil.sensors_battery().percent, 0) assert m.called @@ -96,7 +78,7 @@ def test_emulate_energy_full_not_avail(self): # Emulate a case where energy_full file does not exist. # Expected fallback on /capacity. -@@ -2275,6 +2285,7 @@ class TestProcessAgainstStatus(PsutilTes +@@ -2324,6 +2334,7 @@ value = self.read_status_file("nonvoluntary_ctxt_switches:") self.assertEqual(self.proc.num_ctx_switches().involuntary, value) @@ -104,11 +86,37 @@ def test_cpu_affinity(self): value = self.read_status_file("Cpus_allowed_list:") if '-' in str(value): -Index: psutil-5.9.5/psutil/tests/test_posix.py -=================================================================== ---- psutil-5.9.5.orig/psutil/tests/test_posix.py -+++ psutil-5.9.5/psutil/tests/test_posix.py -@@ -413,6 +413,7 @@ class TestSystemAPIs(PsutilTestCase): +diff -Nru psutil-6.0.0.orig/psutil/tests/test_misc.py psutil-6.0.0/psutil/tests/test_misc.py +--- psutil-6.0.0.orig/psutil/tests/test_misc.py 2024-06-18 22:36:40.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_misc.py 2024-07-17 14:20:15.682456583 +0200 +@@ -343,6 +343,7 @@ + + # # XXX: https://github.com/pypa/setuptools/pull/2896 + # @unittest.skipIf(APPVEYOR, "temporarily disabled due to setuptools bug") ++ # @unittest.skip("Fails in OBS") + # def test_setup_script(self): + # setup_py = os.path.join(ROOT_DIR, 'setup.py') + # if CI_TESTING and not os.path.exists(setup_py): +@@ -966,6 +967,7 @@ + src = f.read() + ast.parse(src) + ++ @unittest.skip("Fails in OBS") + def test_coverage(self): + # make sure all example scripts have a test method defined + meths = dir(self) +@@ -987,6 +989,7 @@ + if not stat.S_IXUSR & os.stat(path)[stat.ST_MODE]: + raise self.fail('%r is not executable' % path) + ++ @unittest.skip("Fails in OBS") + def test_disk_usage(self): + self.assert_stdout('disk_usage.py') + +diff -Nru psutil-6.0.0.orig/psutil/tests/test_posix.py psutil-6.0.0/psutil/tests/test_posix.py +--- psutil-6.0.0.orig/psutil/tests/test_posix.py 2024-06-18 22:36:40.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_posix.py 2024-07-17 14:20:15.685789923 +0200 +@@ -443,6 +443,7 @@ # AIX can return '-' in df output instead of numbers, e.g. for /proc @unittest.skipIf(AIX, "unreliable on AIX") @retry_on_failure() @@ -116,11 +124,40 @@ def test_disk_usage(self): def df(device): try: -Index: psutil-5.9.5/psutil/tests/test_system.py -=================================================================== ---- psutil-5.9.5.orig/psutil/tests/test_system.py -+++ psutil-5.9.5/psutil/tests/test_system.py -@@ -201,6 +201,7 @@ class TestMiscAPIs(PsutilTestCase): +diff -Nru psutil-6.0.0.orig/psutil/tests/test_process_all.py psutil-6.0.0/psutil/tests/test_process_all.py +--- psutil-6.0.0.orig/psutil/tests/test_process_all.py 2024-06-18 23:00:36.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_process_all.py 2024-07-17 14:28:46.700089665 +0200 +@@ -15,6 +15,7 @@ + import stat + import time + import traceback ++import unittest + + import psutil + from psutil import AIX +@@ -130,6 +131,7 @@ + ls.append(proc_info(pid)) + return ls + ++ @unittest.skip("Fails in OBS") + def test_all(self): + failures = [] + for info in self.iter_proc_info(): +diff -Nru psutil-6.0.0.orig/psutil/tests/test_process.py psutil-6.0.0/psutil/tests/test_process.py +--- psutil-6.0.0.orig/psutil/tests/test_process.py 2024-06-18 22:36:40.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_process.py 2024-07-17 14:20:15.685789923 +0200 +@@ -360,6 +360,7 @@ + + @unittest.skipIf(not HAS_IONICE, "not supported") + @unittest.skipIf(not LINUX, "linux only") ++ @unittest.skip("Unreliable in OBS") + def test_ionice_linux(self): + def cleanup(init): + ioclass, value = init +diff -Nru psutil-6.0.0.orig/psutil/tests/test_system.py psutil-6.0.0/psutil/tests/test_system.py +--- psutil-6.0.0.orig/psutil/tests/test_system.py 2024-06-18 22:36:40.000000000 +0200 ++++ psutil-6.0.0/psutil/tests/test_system.py 2024-07-17 14:25:27.213045941 +0200 +@@ -243,6 +243,7 @@ self.assertLess(bt, time.time()) @unittest.skipIf(CI_TESTING and not psutil.users(), "unreliable on CI") @@ -128,7 +165,15 @@ def test_users(self): users = psutil.users() self.assertNotEqual(users, []) -@@ -586,6 +587,7 @@ class TestDiskAPIs(PsutilTestCase): +@@ -591,6 +592,7 @@ + MACOS and platform.machine() == 'arm64', "skipped due to #1892" + ) + @unittest.skipIf(not HAS_CPU_FREQ, "not supported") ++ @unittest.skip("Fails in OBS") + def test_cpu_freq(self): + def check_ls(ls): + for nt in ls: +@@ -662,6 +664,7 @@ def test_disk_usage_bytes(self): psutil.disk_usage(b'.') @@ -136,28 +181,4 @@ def test_disk_partitions(self): def check_ntuple(nt): self.assertIsInstance(nt.device, str) -Index: psutil-5.9.5/psutil/tests/test_contracts.py -=================================================================== ---- psutil-5.9.5.orig/psutil/tests/test_contracts.py -+++ psutil-5.9.5/psutil/tests/test_contracts.py -@@ -251,6 +251,7 @@ class TestSystemAPITypes(PsutilTestCase) - self.assertIsInstance(k, str) - self.assert_ntuple_of_nums(v, type_=(int, long)) - -+ @unittest.skip("Fails in OBS") - def test_disk_partitions(self): - # Duplicate of test_system.py. Keep it anyway. - for disk in psutil.disk_partitions(): -Index: psutil-5.9.5/psutil/tests/test_process.py -=================================================================== ---- psutil-5.9.5.orig/psutil/tests/test_process.py -+++ psutil-5.9.5/psutil/tests/test_process.py -@@ -346,6 +346,7 @@ class TestProcess(PsutilTestCase): - - @unittest.skipIf(not HAS_IONICE, "not supported") - @unittest.skipIf(not LINUX, "linux only") -+ @unittest.skip("Unreliable in OBS") - def test_ionice_linux(self): - p = psutil.Process() - if not CI_TESTING: