All Versions
87
Latest Version
Avg Release Cycle
46 days
Latest Release
-
Changelog History
Page 2
Changelog History
Page 2
-
v5.6.7 Changes
November 26, 20192019-11-26
π Bug fixes
- π 1630_, [Windows], [critical]: can't compile source distribution due to C syntax error.
-
v5.6.6 Changes
November 25, 20192019-11-25
π Bug fixes
- π§ 1179_, [Linux]:
Process.cmdline()
_ now takes into account misbehaving processes renaming the command line and using inappropriate chars to separate args. - 1616_, [critical]: use of
Py_DECREF
instead ofPy_CLEAR
will result in doublefree()
and segfault (CVE-2019-18874 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18874>
__). (patch by Riccardo Schirone) - 1619_, [OpenBSD], [critical]: compilation fails due to C syntax error. (patch by Nathan Houghton)
- π§ 1179_, [Linux]:
-
v5.6.5 Changes
November 06, 20192019-11-06
π Bug fixes
- π 1615_: remove
pyproject.toml
as it was causing installation issues.
- π 1615_: remove
-
v5.6.4 Changes
November 04, 20192019-11-04
β¨ Enhancements
- π§ 1527_, [Linux]: added
Process.cpu_times()
_iowait
counter, which is the time spent waiting for blocking I/O to complete. - π 1565_: add PEP 517/8 build backend and requirements specification for better pip integration. (patch by BernΓ‘t GΓ‘bor)
π Bug fixes
- π 875_, [Windows], [critical]:
Process.cmdline()
,Process.environ()
orProcess.cwd()
_ may occasionally fail withERROR_PARTIAL_COPY
which now gets translated toAccessDenied
_. - π§ 1126_, [Linux], [critical]:
Process.cpu_affinity()
_ segfaults on CentOS 5 / manylinux.Process.cpu_affinity()
_ support for CentOS 5 was removed. - 1528_, [AIX], [critical]: compilation error on AIX 7.2 due to 32 vs 64 bit differences. (patch by Arnon Yaari)
- 1535_:
type
andfamily
fields returned bynet_connections()
_ are not always turned into enums. - 1536_, [NetBSD]:
Process.cmdline()
_ erroneously raiseZombieProcess
_ error if cmdline has non encodable chars. - 1546_: usage percent may be rounded to 0 on Python 2.
- π 1552_, [Windows]:
getloadavg()
_ math for calculating 5 and 15 mins values is incorrect. - π§ 1568_, [Linux]: use CC compiler env var if defined.
- π 1570_, [Windows]:
NtWow64*
syscalls fail to raise the proper error code - 1585_, [OSX]: avoid calling
close()
(in C) on possible negative integers. (patch by Athos Ribeiro) - 1606_, [SunOS], [critical]: compilation fails on SunOS 5.10. (patch by vser1)
- π§ 1527_, [Linux]: added
-
v5.6.3 Changes
June 11, 20192019-06-11
β¨ Enhancements
- π 1494_, [AIX]: added support for
Process.environ()
_. (patch by Arnon Yaari)
π Bug fixes
- 1276_, [AIX]: can't get whole
Process.cmdline()
_. (patch by Arnon Yaari) - π 1501_, [Windows]:
Process.cmdline()
_ andProcess.exe()
_ raise unhandled "WinError 1168 element not found" exceptions for "Registry" and "Memory Compression" psuedo processes on Windows 10. - 1526_, [NetBSD], [critical]:
Process.cmdline()
_ could raiseMemoryError
. (patch by Kamil Rytarowski)
- π 1494_, [AIX]: added support for
-
v5.6.2 Changes
April 26, 20192019-04-26
β¨ Enhancements
- π 604_, [Windows]: add new
getloadavg()
_, returning system load average calculation, including on Windows (emulated). (patch by Ammar Askar) - π§ 1404_, [Linux]:
cpu_count()
_ withlogical=False
uses a second method (read from/sys/devices/system/cpu/cpu[0-9]/topology/core_id
) in order to determine the number of CPU cores in case/proc/cpuinfo
does not provide this info. - β
1458_: provide coloured test output. Also show failures on
KeyboardInterrupt
. - π 1464_: various docfixes (always point to Python 3 doc, fix links, etc.).
- π 1476_, [Windows]: it is now possible to set process high I/O priority
(
Process.ionice()
_). Also, I/O priority values are now exposed as 4 new constants:IOPRIO_VERYLOW
,IOPRIO_LOW
,IOPRIO_NORMAL
,IOPRIO_HIGH
. - β 1478_: add make command to re-run tests failed on last run.
π Bug fixes
- π 1223_, [Windows]:
boot_time()
_ may return incorrect value on Windows XP. - π§ 1456_, [Linux]:
cpu_freq()
_ returnsNone
instead of 0.0 whenmin
andmax
fields can't be determined. (patch by Alex Manuskin) - π§ 1462_, [Linux]: (tests) make tests invariant to
LANG
setting (patch by Benjamin Drung) - 1463_:
cpu_distribution.py
_ script was broken. - π§ 1470_, [Linux]:
disk_partitions()
_: fix corner case when/etc/mtab
doesn't exist. (patch by Cedric Lamoriniere) - 1471_, [SunOS]:
Process.name()
_ andProcess.cmdline()
_ can returnSystemError
. (patch by Daniel Beer) - π§ 1472_, [Linux]:
cpu_freq()
_ does not return all CPUs on Rasbperry-pi 3. - β
1474_: fix formatting of
psutil.tests()
which mimicksps aux
output. - π 1475_, [Windows], [critical]:
OSError.winerror
attribute wasn't properly checked resuling inWindowsError(ERROR_ACCESS_DENIED)
being raised instead ofAccessDenied
_. - π 1477_, [Windows]: wrong or absent error handling for private
NTSTATUS
Windows APIs. Different process methods were affected by this. - π 1480_, [Windows], [critical]:
cpu_count()
_ withlogical=False
could cause a crash due to fixed read violation. (patch by Samer Masterson) - 1486_, [AIX], [SunOS]:
AttributeError
when interacting withProcess
_ methods involved intoProcess.oneshot()
_ context. - 1491_, [SunOS]:
net_if_addrs()
_: usefree()
againstifap
struct on error. (patch by Agnewee) - π§ 1493_, [Linux]:
cpu_freq()
_: handle the case where/sys/devices/system/cpu/cpufreq/
exists but it's empty.
- π 604_, [Windows]: add new
-
v5.6.1 Changes
March 11, 20192019-03-11
π Bug fixes
- 1329_, [AIX]: psutil doesn't compile on AIX 6.1. (patch by Arnon Yaari)
- π 1448_, [Windows], [critical]: crash on import due to
rtlIpv6AddressToStringA
not available on Wine. - π 1451_, [Windows], [critical]:
Process.memory_full_info()
_ segfaults.NtQueryVirtualMemory
is now used instead ofQueryWorkingSet
to calculate USS memory.
-
v5.6.0 Changes
March 05, 20192019-03-05
β¨ Enhancements
- π 1379_, [Windows]:
Process.suspend()
_ andProcess.resume()
_ now useNtSuspendProcess
andNtResumeProcess
instead of stopping/resuming all threads of a process. This is faster and more reliable (aka this is what ProcessHacker does). - π 1420_, [Windows]: in case of exception
disk_usage()
_ now also shows the path name. - π 1422_, [Windows]: Windows APIs requiring to be dynamically loaded from DLL libraries are now loaded only once on startup (instead of on per function call) significantly speeding up different functions and methods.
- π 1426_, [Windows]:
PAGESIZE
and number of processors is now calculated on startup. - 1428_: in case of error, the traceback message now shows the underlying C function called which failed.
- 1433_: new
Process.parents()
_ method. (idea by Ghislain Le Meur) - 1437_:
pids()
_ are returned in sorted order. - 0οΈβ£ 1442_: Python 3 is now the default interpreter used by Makefile.
π Bug fixes
- 1353_:
process_iter()
_ is now thread safe (it rarely raisedTypeError
). - π 1394_, [Windows], [critical]:
Process.name()
_ andProcess.exe()
_ may erroneously return "Registry" or fail with "[Error 0] The operation completed successfully".QueryFullProcessImageNameW
is now used instead ofGetProcessImageFileNameW
in order to prevent that. - 1411_, [BSD]: lack of
Py_DECREF
could cause segmentation fault on process instantiation. - π 1419_, [Windows]:
Process.environ()
_ raisesNotImplementedError
when querying a 64-bit process in 32-bit-WoW mode. Now it raisesAccessDenied
_. - 1427_, [OSX]:
Process.cmdline()
_ andProcess.environ()
_ may erroneously raiseOSError
on failedmalloc()
. - π 1429_, [Windows]:
SE DEBUG
was not properly set for current process. It is now, and it should result in lessAccessDenied
_ exceptions for low PID processes. - π 1432_, [Windows]:
Process.memory_info_ex()
_'s USS memory is miscalculated because we're not using the actual systemPAGESIZE
. - 1439_, [NetBSD]:
Process.connections()
_ may return incomplete results if usingProcess.oneshot()
_. - π» 1447_: original exception wasn't turned into
NoSuchProcess
_ /AccessDenied
_ exceptions when usingProcess.oneshot()
_ context manager.
Incompatible API changes
- 1291_, [OSX], [critical]:
Process.memory_maps()
_ was removed because inherently broken (segfault) for years.
- π 1379_, [Windows]:
-
v5.5.1 Changes
February 15, 20192019-02-15
β¨ Enhancements
- π 1348_, [Windows]: on Windows >= 8.1 if
Process.cmdline()
_ fails due toERROR_ACCESS_DENIED
attempt usingNtQueryInformationProcess
+ProcessCommandLineInformation
. (patch by EccoTheFlintstone)
π Bug fixes
- π 1394_, [Windows]:
Process.exe()
_ returns "[Error 0] The operation completed successfully" when Python process runs in "Virtual Secure Mode". - 1402_: psutil exceptions'
repr()
show the internal private module path. - 1408_, [AIX], [critical]: psutil won't compile on AIX 7.1 due to missing header. (patch by Arnon Yaari)
- π 1348_, [Windows]: on Windows >= 8.1 if
-
v5.5.0 Changes
January 23, 20192019-01-23
β¨ Enhancements
- π 1350_, [FreeBSD]: added support for
sensors_temperatures()
_. (patch by Alex Manuskin) - π 1352_, [FreeBSD]: added support for
cpu_freq()
_. (patch by Alex Manuskin)
π Bug fixes
- 1111_:
Process.oneshot()
_ is now thread safe. - π§ 1354_, [Linux]:
disk_io_counters()
_ fails on Linux kernel 4.18+. - π§ 1357_, [Linux]:
Process.memory_maps()
_ andProcess.io_counters()
_ methods are no longer exposed if not supported by the kernel. - π 1368_, [Windows]: fix
Process.ionice()
_ mismatch. (patch by EccoTheFlintstone) - π 1370_, [Windows]: improper usage of
CloseHandle()
may lead to override the original error code when raising an exception. - 1373_, [critical]: incorrect handling of cache in
Process.oneshot()
_ context causesProcess
_ instances to return incorrect results. - π 1376_, [Windows]:
OpenProcess
now usesPROCESS_QUERY_LIMITED_INFORMATION
access rights wherever possible, resulting in lessAccessDenied
_ exceptions being thrown for system processes. - π 1376_, [Windows]: check if variable is
NULL
beforefree()
ing it. (patch by EccoTheFlintstone)
- π 1350_, [FreeBSD]: added support for