Update dependency psutil to v5.9.4
This MR contains the following updates:
| Package | Update | Change |
|---|---|---|
| psutil | minor |
==5.6.7 -> ==5.9.4
|
Release Notes
giampaolo/psutil
v5.9.4
=====
2022-11-07
Enhancements
- 2102_: use Limited API when building wheels with CPython 3.6+ on Linux, macOS and Windows. This allows to use pre-built wheels in all future versions of cPython 3. (patch by Matthieu Darbois)
Bug fixes
- 2077_, [Windows]: Use system-level values for
virtual_memory()_. (patch by Daniel Widdis) - 2156_, [Linux]: compilation may fail on very old gcc compilers due to missing
SPEED_UNKNOWNdefinition. (patch by Amir Rossert) - 2010_, [macOS]: on MacOS, arm64
IFM_1000_TXandIFM_1000_Tare the same value, causing a build failure. (patch by Lawrence D'Anna)
v5.9.3
=====
2022-10-18
Enhancements
- 2040_, [macOS]: provide wheels for arm64 architecture. (patch by Matthieu Darbois)
Bug fixes
- 2116_, [macOS], [critical]:
psutil.net_connections_ fails with RuntimeError. - 2135_, [macOS]:
Process.environ()_ may contain garbage data. Fix out-of-bounds read aroundsysctl_procargs. (patch by Bernhard Urban-Forster) - 2138_, [Linux], [critical]: can't compile psutil on Android due to
undefined
ethtool_cmd_speedsymbol. - 2142_, [POSIX]:
net_if_stats()_ 'sflagson Python 2 returned unicode instead of str. (patch by Matthieu Darbois) - 2147_, [macOS] Fix disk usage report on macOS 12+. (patch by Matthieu Darbois)
- 2150_, [Linux]
Process.threads()_ may raiseNoSuchProcess. Fix race condition. (patch by Daniel Li) - 2153_, [macOS] Fix race condition in test_posix.TestProcess.test_cmdline. (patch by Matthieu Darbois)
v5.9.2
=====
2022-09-04
Bug fixes
- 2093_, [FreeBSD], [critical]:
pids()_ may fail with ENOMEM. Dynamically increase themalloc()buffer size until it's big enough. - 2095_, [Linux]:
net_if_stats()_ returns incorrect interface speed for 100GbE network cards. - 2113_, [FreeBSD], [critical]:
virtual_memory()_ may raise ENOMEM due to missing#include <sys/param.h>directive. (patch by Peter Jeremy) - 2128_, [NetBSD]:
swap_memory()_ was miscalculated. (patch by Thomas Klausner)
v5.9.1
=====
2022-05-20
Enhancements
- 1053_: drop Python 2.6 support. (patches by Matthieu Darbois and Hugo van Kemenade)
- 2037_: Add additional flags to net_if_stats.
- 2050_, [Linux]: increase
read(2)buffer size from 1k to 32k when reading/procpseudo files line by line. This should help having more consistent results. - 2057_, [OpenBSD]: add support for
cpu_freq()_. - 2107_, [Linux]:
Process.memory_full_info()_ (reporting process USS/PSS/Swap memory) now reads/proc/pid/smaps_rollupinstead of/proc/pids/smaps, which makes it 5 times faster.
Bug fixes
- 2048_:
AttributeErroris raised ifpsutil.Errorclass is raised manually and passed throughstr. - 2049_, [Linux]:
cpu_freq()_ erroneously returnscurrvalue in GHz whileminandmaxare in MHz. - 2050_, [Linux]:
virtual_memory()_ may raiseValueErrorif running in a LCX container.
v5.9.0
=====
2021-12-29
Enhancements
- 1851_, [Linux]:
cpu_freq()_ is slow on systems with many CPUs. Read current frequency values for all CPUs from/proc/cpuinfoinstead of opening many files in/sysfs. (patch by marxin) - 1992_:
NoSuchProcess_ message now specifies if the PID has been reused. - 1992_: error classes (
NoSuchProcess*,AccessDenied*, etc.) now have a better formatted and separated__repr__and__str__implementations. - 1996_, [BSD]: add support for MidnightBSD. (patch by Saeed Rasooli)
- 1999_, [Linux]:
disk_partitions()_: convert/dev/rootdevice (an alias used on some Linux distros) to real root device path. - 2005_:
PSUTIL_DEBUGmode now prints file name and line number of the debug messages coming from C extension modules. - 2042_: rewrite HISTORY.rst to use hyperlinks pointing to psutil API doc.
Bug fixes
- 1456_, [macOS], [critical]:
cpu_freq()_minandmaxare set to 0 if can't be determined (instead of crashing). - 1512_, [macOS]: sometimes
Process.connections()_ will crash withEOPNOTSUPPfor one connection; this is now ignored. - 1598_, [Windows]:
disk_partitions()_ only returns mountpoints on drives where it first finds one. - 1874_, [SunOS]: swap output error due to incorrect range.
- 1892_, [macOS]:
cpu_freq()_ broken on Apple M1. - 1901_, [macOS]: different functions, especially
Process.open_files()_ andProcess.connections()*, could randomly raiseAccessDenied* because the internal buffer ofproc_pidinfo(MROC_PIDLISTFDS)syscall was not big enough. We now dynamically increase the buffer size until it's big enough instead of giving up and raisingAccessDenied_, which was a fallback to avoid crashing. - 1904_, [Windows]:
OpenProcessfails withERROR_SUCCESSdue toGetLastError()called aftersprintf(). (patch by alxchk) - 1913_, [Linux]:
wait_procs()_ should catchsubprocess.TimeoutExpiredexception. - 1919_, [Linux]:
sensors_battery()_ can raiseTypeErroron PureOS. - 1921_, [Windows]:
swap_memory()_ shows committed memory instead of swap. - 1940_, [Linux]: psutil does not handle
ENAMETOOLONGwhen accessing process file descriptors in procfs. (patch by Nikita Radchenko) - 1948_, [critical]:
memoize_when_activateddecorator is not thread-safe. (patch by Xuehai Pan) - 1953_, [Windows], [critical]:
disk_partitions()_ crashes due to insufficient buffer len. (patch by MaWe2019) - 1965_, [Windows], [critical]: fix "Fatal Python error: deallocating None"
when calling
users()_ multiple times. - 1980_, [Windows]: 32bit / WoW64 processes fails to read
Process.name()_ longer than 128 characters resulting inAccessDenied_. This is now fixed. (patch by PetrPospisil) - 1991_, [critical]:
process_iter()_ is not thread safe and can raiseTypeErrorif invoked from multiple threads. - 1956_, [macOS]:
Process.cpu_times()_ reports incorrect timings on M1 machines. (patch by Olivier Dormond) - 2023_, [Linux]:
cpu_freq()_ return order is wrong on systems with more than 9 CPUs.
v5.8.0
=====
2020-12-19
Enhancements
- 1863_:
disk_partitions()_ exposes 2 extra fields:maxfileandmaxpath, which are the maximum file name and path name length. - 1872_, [Windows]: added support for PyPy 2.7.
- 1879_: provide pre-compiled wheels for Linux and macOS (yey!).
- 1880_: get rid of Travis and Cirrus CI services (they are no longer free). CI testing is now done by GitHub Actions on Linux, macOS and FreeBSD (yes). AppVeyor is still being used for Windows CI.
Bug fixes
- 1708_, [Linux]: get rid of
sensors_temperatures()_ duplicates. (patch by Tim Schlueter). - 1839_, [Windows], [critical]: always raise
AccessDenied_ instead ofWindowsErrorwhen failing to query 64 processes from 32 bit ones by usingNtWoW64APIs. - 1866_, [Windows], [critical]:
Process.exe()*,Process.cmdline()*,Process.environ()_ may raise "[WinError 998] Invalid access to memory location" on Python 3.9 / VS 2019. - 1874_, [SunOS]: wrong swap output given when encrypted column is present.
- 1875_, [Windows], [critical]:
Process.username()_ may raiseERROR_NONE_MAPPEDif the SID has no corresponding account name. In this caseAccessDenied_ is now raised. - 1886_, [macOS]:
EIOerror may be raised onProcess.cmdline()_ andProcess.environ()*. Now it gets translated intoAccessDenied*. - 1887_, [Windows], [critical]:
OpenProcessmay fail with "[WinError 0] The operation completed successfully"." Turn it intoAccessDenied_ orNoSuchProcess_ depending on whether the PID is alive. - 1891_, [macOS]: get rid of deprecated
getpagesize().
v5.7.3
=====
2020-10-23
Enhancements
- 809_, [FreeBSD]: add support for
Process.rlimit()_. - 893_, [BSD]: add support for
Process.environ()_ (patch by Armin Gruner) - 1830_, [POSIX]:
net_if_stats()_isupalso checks whether the NIC is running (meaning Wi-Fi or ethernet cable is connected). (patch by Chris Burger) - 1837_, [Linux]: improved battery detection and charge
secsleftcalculation (patch by aristocratos)
Bug fixes
- 1620_, [Linux]:
cpu_count()_ withlogical=Falseresult is incorrect on systems with more than one CPU socket. (patch by Vincent A. Arcila) - 1738_, [macOS]:
Process.exe()_ may raiseFileNotFoundErrorif process is still alive but the exe file which launched it got deleted. - 1791_, [macOS]: fix missing include for
getpagesize(). - 1823_, [Windows], [critical]:
Process.open_files()_ may cause a segfault due to a NULL pointer. - 1838_, [Linux]:
sensors_battery()_: ifpercentcan be determined but not the remaining values, still return a result instead ofNone. (patch by aristocratos)
v5.7.2
=====
2020-07-15
Bug fixes
- wheels for 2.7 were inadvertently deleted.
v5.7.1
=====
2020-07-15
Enhancements
- 1729_: parallel tests on POSIX (
make test-parallel). They're twice as fast! - 1741_, [POSIX]:
make buildnow runs in parallel on Python >= 3.6 and it's about 15% faster. - 1747_:
Process.wait()_ return value is cached so that the exit code can be retrieved on then next call. - 1747_, [POSIX]:
Process.wait()_ on POSIX now returns an enum, showing the negative signal which was used to terminate the process. It returns something like<Negsignal.SIGTERM: -15>. - 1747_:
Process_ class provides more info about the process onstr()andrepr()(status and exit code). - 1757_: memory leak tests are now stable.
- 1768_, [Windows]: added support for Windows Nano Server. (contributed by Julien Lebot)
Bug fixes
- 1726_, [Linux]:
cpu_freq()_ parsing should use spaces instead of tabs on ia64. (patch by Michał Górny) - 1760_, [Linux]:
Process.rlimit()_ does not handle long long type properly. - 1766_, [macOS]:
NoSuchProcess_ may be raised instead ofZombieProcess_. - 1781_, [critical]:
getloadavg()_ can crash the Python interpreter. (patch by Ammar Askar)
v5.7.0
=====
2020-02-18
Enhancements
- 1637_, [SunOS]: add partial support for old SunOS 5.10 Update 0 to 3.
- 1648_, [Linux]:
sensors_temperatures()_ looks into an additional/sys/device/directory for additional data. (patch by Javad Karabi) - 1652_, [Windows]: dropped support for Windows XP and Windows Server 2003. Minimum supported Windows version now is Windows Vista.
- 1671_, [FreeBSD]: add CI testing/service for FreeBSD (Cirrus CI).
- 1677_, [Windows]:
Process.exe()_ will succeed for all process PIDs (instead of raisingAccessDenied_). - 1679_, [Windows]:
net_connections()_ andProcess.connections()_ are 10% faster. - 1682_, [PyPy]: added CI / test integration for PyPy via Travis.
- 1686_, [Windows]: added support for PyPy on Windows.
- 1693_, [Windows]:
boot_time()*,Process.create_time()* andusers()_'s login time now have 1 micro second precision (before the precision was of 1 second).
Bug fixes
- 1538_, [NetBSD]:
Process.cwd()_ may returnENOENTinstead ofNoSuchProcess_. - 1627_, [Linux]:
Process.memory_maps()_ can raiseKeyError. - 1642_, [SunOS]: querying basic info for PID 0 results in
FileNotFoundError. - 1646_, [FreeBSD], [critical]: many
Process_ methods may cause a segfault due to a backward incompatible change in a C type on FreeBSD 12.0. - 1656_, [Windows]:
Process.memory_full_info()_ raisesAccessDenied_ even for the current user and os.getpid(). - 1660_, [Windows]:
Process.open_files()_ complete rewrite + check of errors. - 1662_, [Windows], [critical]:
Process.exe()_ may raise "[WinError 0] The operation completed successfully". - 1665_, [Linux]:
disk_io_counters()_ does not take into account extra fields added to recent kernels. (patch by Mike Hommey) - 1672_: use the right C type when dealing with PIDs (int or long). Thus far (long) was almost always assumed, which is wrong on most platforms.
- 1673_, [OpenBSD]:
Process.connections()*,Process.num_fds()* andProcess.threads()_ returned improper exception if process is gone. - 1674_, [SunOS]:
disk_partitions()_ may raiseOSError. - 1684_, [Linux]:
disk_io_counters()_ may raiseValueErroron systems not having/proc/diskstats. - 1695_, [Linux]: could not compile on kernels <= 2.6.13 due to
PSUTIL_HAVE_IOMRIOnot being defined. (patch by Anselm Kruis)
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.