python-psutil/python-psutil.changes

1039 lines
44 KiB
Plaintext

-------------------------------------------------------------------
Thu Nov 1 22:42:43 UTC 2018 - Arun Persaud <arun@gmx.de>
- update to version 5.4.8:
* Enhancements
+ 1197: [Linux] cpu_freq() is now implemented by parsing
/proc/cpuinfo in case /sys/devices/system/cpu/* filesystem is
not available.
+ 1310: [Linux] psutil.sensors_temperatures() now parses
/sys/class/thermal in case /sys/class/hwmon fs is not available
(e.g. Raspberry Pi). (patch by Alex Manuskin)
+ 1320: [Posix] better compilation support when using g++ instead
of gcc. (patch by Jaime Fullaondo)
* Bug fixes
+ 715: do not print exception on import time in case cpu_times()
fails.
+ 1004: [Linux] Process.io_counters() may raise ValueError.
+ 1277: [OSX] available and used memory (psutil.virtual_memory())
metrics are not accurate.
+ 1294: [Windows] psutil.Process().connections() may sometimes
fail with intermittent 0xC0000001. (patch by Sylvain Duchesne)
+ 1307: [Linux] disk_partitions() does not honour PROCFS_PATH.
+ 1320: [AIX] system CPU times (psutil.cpu_times()) were being
reported with ticks unit as opposed to seconds. (patch by Jaime
Fullaondo)
+ 1332: [OSX] psutil debug messages are erroneously printed all
the time. (patch by Ilya Yanok)
+ 1346: [SunOS] net_connections() returns an empty list. (patch by
Oleksii Shevchuk)
-------------------------------------------------------------------
Sat Aug 18 17:02:59 UTC 2018 - arun@gmx.de
- update to version 5.4.7:
* Enhancements
+ 1286: [macOS] psutil.OSX constant is now deprecated in favor of
new psutil.MACOS.
+ 1309: [Linux] added psutil.STATUS_PARKED constant for
Process.status().
+ 1321: [Linux] add disk_io_counters() dual implementation relying
on /sys/block filesystem in case /proc/diskstats is not
available. (patch by Lawrence Ye)
* Bug fixes
+ 1209: [macOS] Process.memory_maps() may fail with EINVAL due to
poor task_for_pid() syscall. AccessDenied is now raised instead.
+ 1278: [macOS] Process.threads() incorrectly return microseconds
instead of seconds. (patch by Nikhil Marathe)
+ 1279: [Linux, macOS, BSD] net_if_stats() may return ENODEV.
+ 1294: [Windows] psutil.Process().connections() may sometime fail
with MemoryError. (patch by sylvainduchesne)
+ 1305: [Linux] disk_io_stats() may report inflated r/w bytes
values.
+ 1309: [Linux] Process.status() is unable to recognize "idle" and
"parked" statuses (returns '?').
+ 1313: [Linux] disk_io_counters() can report inflated IO counters
due to erroneously counting base disk device and its
partition(s) twice.
+ 1323: [Linux] sensors_temperatures() may fail with ValueError.
-------------------------------------------------------------------
Wed Jun 13 18:12:32 UTC 2018 - toddrme2178@gmail.com
- Update to 5.4.6
* 1258_: [Windows] Process.username() may cause a segfault (Python interpreter
crash). (patch by Jean-Luc Migot)
* 1273_: net_if_addr() namedtuple's name has been renamed from "snic" to
"snicaddr".
* 1274_: [Linux] there was a small chance Process.children() may swallow
AccessDenied exceptions.
-------------------------------------------------------------------
Sat Apr 14 17:18:54 UTC 2018 - arun@gmx.de
- update to version 5.4.5:
* Bug fixes
+ 1268: setup.py's extra_require parameter requires latest
setuptools version, breaking quite a lot of installations.
- changes from version 5.4.4:
* Enhancements
+ 1239: [Linux] expose kernel "slab" memory for
psutil.virtual_memory(). (patch by Maxime Mouial)
* Bug fixes
+ 694: [SunOS] cmdline() could be truncated at the 15th character
when reading it from /proc. An extra effort is made by reading
it from process address space first. (patch by Georg Sauthoff)
+ 771: [Windows] cpu_count() (both logical and physical) return a
wrong (smaller) number on systems using process groups (> 64
cores).
+ 771: [Windows] cpu_times(percpu=True) return fewer CPUs on
systems using process groups (> 64 cores).
+ 771: [Windows] cpu_stats() and cpu_freq() may return incorrect
results on systems using process groups (> 64 cores).
+ 1193: [SunOS] Return uid/gid from /proc/pid/psinfo if there
aren't enough permissions for /proc/pid/cred. (patch by Georg
Sauthoff)
+ 1194: [SunOS] Return nice value from psinfo as getpriority()
doesn't support real-time processes. (patch by Georg Sauthoff)
+ 1194: [SunOS] Fix double free in psutil_proc_cpu_num(). (patch
by Georg Sauthoff)
+ 1194: [SunOS] Fix undefined behavior related to strict-aliasing
rules and warnings. (patch by Georg Sauthoff)
+ 1210: [Linux] cpu_percent() steal time may remain stuck at 100%
due to Linux erroneously reporting a decreased steal time
between calls. (patch by Arnon Yaari)
+ 1216: fix compatibility with python 2.6 on Windows (patch by Dan
Vinakovsky)
+ 1222: [Linux] Process.memory_full_info() was erroneously summing
"Swap:" and "SwapPss:". Same for "Pss:" and "SwapPss". Not
anymore.
+ 1224: [Windows] Process.wait() may erroneously raise
TimeoutExpired.
+ 1238: [Linux] sensors_battery() may return None in case battery
is not listed as "BAT0" under /sys/class/power_supply.
+ 1240: [Windows] cpu_times() float loses accuracy in a long
running system. (patch by stswandering)
+ 1245: [Linux] sensors_temperatures() may fail with IOError "no
such file".
+ 1255: [FreeBSD] swap_memory() stats were erroneously represented
in KB. (patch by Denis Krienbühl)
* Backward compatibility
+ 771: [Windows] cpu_count(logical=False) on Windows XP and Vista
is no longer supported and returns None.
-------------------------------------------------------------------
Wed Jan 3 22:40:21 UTC 2018 - arun@gmx.de
- specfile:
* update copyright year
- update to version 5.4.3:
* Enhancements
+ 775: disk_partitions() on Windows return mount points.
* Bug fixes
+ 1193: pids() may return False on OSX.
-------------------------------------------------------------------
Thu Dec 21 14:40:27 UTC 2017 - mihai.dinca@suse.com
- build python3 subpackage (FATE#324435, bsc#1073879)
-------------------------------------------------------------------
Thu Dec 7 16:47:30 UTC 2017 - arun@gmx.de
- update to version 5.4.2:
* Enhancements
+ 1173: introduced PSUTIL_DEBUG environment variable which can be
set in order to print useful debug messages on stderr (useful in
case of nasty errors).
+ 1177: added support for sensors_battery() on OSX. (patch by
Arnon Yaari)
+ 1183: Process.children() is 2x faster on UNIX and 2.4x faster on
Linux.
+ 1188: deprecated method Process.memory_info_ex() now warns by
using FutureWarning instead of DeprecationWarning.
* Bug fixes
+ 1152: [Windows] disk_io_counters() may return an empty dict.
+ 1169: [Linux] users() "hostname" returns username
instead. (patch by janderbrain)
+ 1172: [Windows] make test does not work.
+ 1179: [Linux] Process.cmdline() is now able to splits cmdline
args for misbehaving processes which overwrite /proc/pid/cmdline
and use spaces instead of null bytes as args separator.
+ 1181: [OSX] Process.memory_maps() may raise ENOENT.
+ 1187: [OSX] pids() does not return PID 0 on recent OSX versions.
-------------------------------------------------------------------
Fri Nov 10 22:54:03 UTC 2017 - arun@gmx.de
- update to version 5.4.1:
* Enhancements
+ 1164: [AIX] add support for Process.num_ctx_switches(). (patch
by Arnon Yaari)
+ 1053: abandon Python 3.3 support (psutil still works but it's no
longer tested).
* Bug fixes
+ 1150: [Windows] when a process is terminate()d now the exit code
is set to SIGTERM instead of 0. (patch by Akos Kiss)
+ 1151: python -m psutil.tests fail
+ 1154: [AIX] psutil won't compile on AIX 6.1.0. (patch by Arnon
Yaari)
+ 1167: [Windows] net_io_counter() packets count now include also
non-unicast packets. (patch by Matthew Long)
-------------------------------------------------------------------
Sun Oct 22 17:07:53 UTC 2017 - arun@gmx.de
- update to version 5.4.0:
* Enhancements
+ 1123: [AIX] added support for AIX platform. (patch by Arnon
Yaari)
* Bug fixes
+ 1009: [Linux] sensors_temperatures() may crash with IOError.
+ 1012: [Windows] disk_io_counters()'s read_time and write_time
were expressed in tens of micro seconds instead of milliseconds.
+ 1127: [OSX] invalid reference counting in Process.open_files()
may lead to segfault. (patch by Jakub Bacic)
+ 1129: [Linux] sensors_fans() may crash with IOError. (patch by
Sebastian Saip)
+ 1131: [SunOS] fix compilation warnings. (patch by Arnon Yaari)
+ 1133: [Windows] can't compile on newer versions of Visual Studio
2017 15.4. (patch by Max Bélanger)
+ 1138: [Linux] can't compile on CentOS 5.0 and RedHat 5.0. (patch
by Prodesire)
-------------------------------------------------------------------
Mon Sep 25 09:17:26 UTC 2017 - michael@stroeder.com
- update to version 5.3.1
**Enhancements**
- 1124_: documentation moved to http://psutil.readthedocs.io
**Big fixes**
- 1105_: [FreeBSD] psutil does not compile on FreeBSD 12.
- 1125_: [BSD] net_connections() raises TypeError.
**Compatibility notes**
- 1120_: .exe files for Windows are no longer uploaded on PYPI as per PEP-527;
only wheels are provided.
-------------------------------------------------------------------
Fri Sep 8 19:17:33 UTC 2017 - michael@stroeder.com
- update to version 5.3.0
**Enhancements**
- 802_: disk_io_counters() and net_io_counters() numbers no longer wrap
(restart from 0). Introduced a new "nowrap" argument.
- 928_: psutil.net_connections() and psutil.Process.connections() "laddr" and
"raddr" are now named tuples.
- 1015_: swap_memory() now relies on /proc/meminfo instead of sysinfo() syscall
so that it can be used in conjunction with PROCFS_PATH in order to retrieve
memory info about Linux containers such as Docker and Heroku.
- 1022_: psutil.users() provides a new "pid" field.
- 1025_: process_iter() accepts two new parameters in order to invoke
Process.as_dict(): "attrs" and "ad_value". With this you can iterate over all
processes in one shot without needing to catch NoSuchProcess and do list/dict
comprehensions.
- 1040_: implemented full unicode support.
- 1051_: disk_usage() on Python 3 is now able to accept bytes.
- 1058_: test suite now enables all warnings by default.
- 1060_: source distribution is dynamically generated so that it only includes
relevant files.
- 1079_: [FreeBSD] net_connections()'s fd number is now being set for real
(instead of -1). (patch by Gleb Smirnoff)
- 1091_: [SunOS] implemented Process.environ(). (patch by Oleksii Shevchuk)
**Bug fixes**
- 989_: [Windows] boot_time() may return a negative value.
- 1007_: [Windows] boot_time() can have a 1 sec fluctuation between calls; the
value of the first call is now cached so that boot_time() always returns the
same value if fluctuation is <= 1 second.
- 1013_: [FreeBSD] psutil.net_connections() may return incorrect PID. (patch
by Gleb Smirnoff)
- 1014_: [Linux] Process class can mask legitimate ENOENT exceptions as
NoSuchProcess.
- 1016_: disk_io_counters() raises RuntimeError on a system with no disks.
- 1017_: net_io_counters() raises RuntimeError on a system with no network
cards installed.
- 1021_: [Linux] open_files() may erroneously raise NoSuchProcess instead of
skipping a file which gets deleted while open files are retrieved.
- 1029_: [OSX, FreeBSD] Process.connections('unix') on Python 3 doesn't
properly handle unicode paths and may raise UnicodeDecodeError.
- 1033_: [OSX, FreeBSD] memory leak for net_connections() and
Process.connections() when retrieving UNIX sockets (kind='unix').
- 1040_: fixed many unicode related issues such as UnicodeDecodeError on
Python 3 + UNIX and invalid encoded data on Windows.
- 1042_: [FreeBSD] psutil won't compile on FreeBSD 12.
- 1044_: [OSX] different Process methods incorrectly raise AccessDenied for
zombie processes.
- 1046_: [Windows] disk_partitions() on Windows overrides user's SetErrorMode.
- 1047_: [Windows] Process username(): memory leak in case exception is thrown.
- 1048_: [Windows] users()'s host field report an invalid IP address.
- 1050_: [Windows] Process.memory_maps memory() leaks memory.
- 1055_: cpu_count() is no longer cached; this is useful on systems such as
Linux where CPUs can be disabled at runtime. This also reflects on
Process.cpu_percent() which no longer uses the cache.
- 1058_: fixed Python warnings.
- 1062_: disk_io_counters() and net_io_counters() raise TypeError if no disks
or NICs are installed on the system.
- 1063_: [NetBSD] net_connections() may list incorrect sockets.
- 1064_: [NetBSD] swap_memory() may segfault in case of error.
- 1065_: [OpenBSD] Process.cmdline() may raise SystemError.
- 1067_: [NetBSD] Process.cmdline() leaks memory if process has terminated.
- 1069_: [FreeBSD] Process.cpu_num() may return 255 for certain kernel
processes.
- 1071_: [Linux] cpu_freq() may raise IOError on old RedHat distros.
- 1074_: [FreeBSD] sensors_battery() raises OSError in case of no battery.
- 1075_: [Windows] net_if_addrs(): inet_ntop() return value is not checked.
- 1077_: [SunOS] net_if_addrs() shows garbage addresses on SunOS 5.10.
(patch by Oleksii Shevchuk)
- 1077_: [SunOS] net_connections() does not work on SunOS 5.10. (patch by
Oleksii Shevchuk)
- 1079_: [FreeBSD] net_connections() didn't list locally connected sockets.
(patch by Gleb Smirnoff)
- 1085_: cpu_count() return value is now checked and forced to None if <= 1.
- 1087_: Process.cpu_percent() guard against cpu_count() returning None and
assumes 1 instead.
- 1093_: [SunOS] memory_maps() shows wrong 64 bit addresses.
- 1094_: [Windows] psutil.pid_exists() may lie. Also, all process APIs relying
on OpenProcess Windows API now check whether the PID is actually running.
- 1098_: [Windows] Process.wait() may erroneously return sooner, when the PID
is still alive.
- 1099_: [Windows] Process.terminate() may raise AccessDenied even if the
process already died.
- 1101_: [Linux] sensors_temperatures() may raise ENODEV.
**Porting notes**
- 1039_: returned types consolidation:
- Windows / Process.cpu_times(): fields #3 and #4 were int instead of float
- Linux / FreeBSD: connections('unix'): raddr is now set to "" instead of
None
- OpenBSD: connections('unix'): laddr and raddr are now set to "" instead of
None
- 1040_: all strings are encoded by using OS fs encoding.
- 1040_: the following Windows APIs on Python 2 now return a string instead of
unicode:
- Process.memory_maps().path
- WindowsService.bin_path()
- WindowsService.description()
- WindowsService.display_name()
- WindowsService.username()
-------------------------------------------------------------------
Tue Jul 11 14:24:34 UTC 2017 - toddrme2178@gmail.com
- Fix various rpmlint warnings and errors
-------------------------------------------------------------------
Sat Apr 29 16:13:29 UTC 2017 - michael@stroeder.com
- update to version 5.2.2
**Bug fixes**
- 1000_: fixed some setup.py warnings.
- 1002_: [SunOS] remove C macro which will not be available on new Solaris
versions. (patch by Danek Duvall)
- 1004_: [Linux] Process.io_counters() may raise ValueError.
- 1006_: [Linux] cpu_freq() may return None on some Linux versions does not
support the function; now the function is not declared instead.
- 1009_: [Linux] sensors_temperatures() may raise OSError.
- 1010_: [Linux] virtual_memory() may raise ValueError on Ubuntu 14.04.
- 981_: [Linux] cpu_freq() may return an empty list.
- 993_: [Windows] Process.memory_maps() on Python 3 may raise
UnicodeDecodeError.
- 996_: [Linux] sensors_temperatures() may not show all temperatures.
- 997_: [FreeBSD] virtual_memory() may fail due to missing sysctl parameter on
FreeBSD 12.
-------------------------------------------------------------------
Thu Mar 16 14:56:27 UTC 2017 - jmatejek@suse.com
- update for singlespec
-------------------------------------------------------------------
Wed Mar 15 13:52:27 UTC 2017 - michael@stroeder.com
- update to version 5.2.0
**Enhancements**
- 971_: [Linux] Add psutil.sensors_fans() function. (patch by Nicolas Hennion)
- 976_: [Windows] Process.io_counters() has 2 new fields: *other_count* and
*other_bytes*.
- 976_: [Linux] Process.io_counters() has 2 new fields: *read_chars* and
*write_chars*.
**Bug fixes**
- 872_: [Linux] can now compile on Linux by using MUSL C library.
- 985_: [Windows] Fix a crash in `Process.open_files` when the worker thread for `NtQueryObject` times out.
- 986_: [Linux] Process.cwd() may raise NoSuchProcess instead of ZombieProcess.
-------------------------------------------------------------------
Wed Feb 8 14:40:55 UTC 2017 - michael@stroeder.com
- update to version 5.1.3
5.1.3
=====
**Bug fixes**
- 971_: [Linux] sensors_temperatures() didn't work on CentOS 7.
- 973_: cpu_percent() may raise ZeroDivisionError.
5.1.2
=====
*2017-02-03*
**Bug fixes**
- 966_: [Linux] sensors_battery().power_plugged may erroneously return None on
Python 3.
- 968_: [Linux] disk_io_counters() raises TypeError on python 3.
- 970_: [Linux] sensors_battery()'s name and label fields on Python 3 are bytes
instead of str.
5.1.1
=====
*2017-02-03*
**Enhancements**
- 966_: [Linux] sensors_battery().percent is a float and is more precise.
**Bug fixes**
- 964_: [Windows] Process.username() and psutil.users() may return badly
decoding character on Python 3.
- 965_: [Linux] disk_io_counters() may miscalculate sector size and report the
wrong number of bytes read and written.
- 966_: [Linux] sensors_battery() may fail with "no such file error".
- 966_: [Linux] sensors_battery().power_plugged may lie.
5.1.0
=====
**Enhancements**
- 357_: added psutil.Process.cpu_num() (what CPU a process is on).
- 371_: added psutil.sensors_temperatures() (Linux only).
- 941_: added psutil.cpu_freq() (CPU frequency).
- 955_: added psutil.sensors_battery() (Linux, Windows, only).
- 956_: cpu_affinity([]) can now be used as an alias to set affinity against
all eligible CPUs.
**Bug fixes**
- 687_: [Linux] pid_exists() no longer returns True if passed a process thread
ID.
- 948_: cannot install psutil with PYTHONOPTIMIZE=2.
- 950_: [Windows] Process.cpu_percent() was calculated incorrectly and showed
higher number than real usage.
- 951_: [Windows] the uploaded wheels for Python 3.6 64 bit didn't work.
- 959_: psutil exception objects could not be pickled.
- 960_: Popen.wait() did not return the correct negative exit status if process
is ``kill()``ed by a signal.
- 961_: [Windows] WindowsService.description() may fail with
ERROR_MUI_FILE_NOT_FOUND.
5.0.1
=====
**Enhancements**
- 939_: tar.gz distribution went from 1.8M to 258K.
- 811_: [Windows] provide a more meaningful error message if trying to use
psutil on unsupported Windows XP.
**Bug fixes**
- 609_: [SunOS] psutil does not compile on Solaris 10.
- 936_: [Windows] fix compilation error on VS 2013 (patch by Max Bélanger).
- 940_: [Linux] cpu_percent() and cpu_times_percent() was calculated
incorrectly as "iowait", "guest" and "guest_nice" times were not properly
taken into account.
- 944_: [OpenBSD] psutil.pids() was omitting PID 0.
-------------------------------------------------------------------
Tue Nov 8 21:15:33 UTC 2016 - toddrme2178@gmail.com
- update to version 5.0.0:
* Enhncements
+ 799: new Process.oneshot() context manager making Process
methods around +2x faster in general and from +2x to +6x faster
on Windows.
+ 943: better error message in case of version conflict on import.
* Bug fixes
+ 932: [NetBSD] net_connections() and Process.connections() may
fail without raising an exception.
+ 933: [Windows] memory leak in cpu_stats() and
WindowsService.description().
-------------------------------------------------------------------
Sat Nov 5 16:22:59 UTC 2016 - michael@stroeder.com
- Update to version 4.4.2:
* 931: psutil no longer compiles on Solaris.
-------------------------------------------------------------------
Tue Oct 25 18:13:08 UTC 2016 - michael@stroeder.com
- Update to version 4.4.1:
* 927: Popen.__del__() may cause maximum recursion depth error.
- Update to version 4.4.0:
Enhancements
* 887: [Linux] virtual_memory()'s 'available' and 'used'
values are more precise and match "free" cmdline utility.
"available" also takes into account LCX containers
preventing "available" to overflow "total".
* 891: procinfo.py script has been updated and provides a
lot more info.
Bug fixes
* 825: [Linux] cpu_affinity; fix possible double close and
use of unopened socket.
* 885: ValueError is raised if a negative integer is passed
to cpu_percent() functions.
* 892: [Linux] Process.cpu_affinity([-1]) raise SystemError
with no error set; now ValueError is raised.
-------------------------------------------------------------------
Sat Sep 24 12:36:35 UTC 2016 - michael@stroeder.com
- update to version 4.3.1:
* #881: "make install" now works also when using a virtual env.
* #854: Process.as_dict() raises ValueError if passed an erroneous attrs name.
* #857: [SunOS] Process cpu_times(), cpu_percent(), threads() amd
memory_maps() may raise RuntimeError if attempting to query a 64bit
process with a 32bit python. "Null" values are returned as a fallback.
* #858: Process.as_dict() should not return memory_info_ex() because it's
deprecated.
* #863: [Windows] memory_map truncates addresses above 32 bits
* #866: [Windows] win_service_iter() and services in general are not able
to handle unicode service names / descriptions.
* #869: [Windows] Process.wait() may raise TimeoutExpired with wrong
timeout unit (ms instead of sec).
* #870: [Windows] Handle leak inside psutil_get_process_data.
-------------------------------------------------------------------
Fri Jul 8 08:51:43 UTC 2016 - dmueller@suse.com
- fix source url
-------------------------------------------------------------------
Mon Jun 20 07:39:11 UTC 2016 - michael@stroeder.com
- update to version 4.3.0:
* #819: [Linux] different speedup improvements:
Process.ppid() is 20% faster
Process.status() is 28% faster
Process.name() is 25% faster
Process.num_threads is 20% faster on Python 3
* #810: [Windows] Windows wheels are incompatible with pip 7.1.2.
* #812: [NetBSD] fix compilation on NetBSD-5.x.
* #823: [NetBSD] virtual_memory() raises TypeError on Python 3.
* #829: [UNIX] psutil.disk_usage() percent field takes root reserved space
into account.
* #816: [Windows] fixed net_io_counter() values wrapping after 4.3GB in
Windows Vista (NT 6.0) and above using 64bit values from newer win APIs.
-------------------------------------------------------------------
Mon May 30 07:28:01 UTC 2016 - tbechtold@suse.com
- Update Source url
-------------------------------------------------------------------
Sat May 28 11:34:45 UTC 2016 - michael@stroeder.com
- update to version 4.2.0:
* Enhancements
+ #795: [Windows] new APIs to deal with Windows services:
win_service_iter() and win_service_get().
+ #800: [Linux] psutil.virtual_memory() returns a new "shared"
memory field.
+ #819: [Linux] speedup /proc parsing: - Process.ppid() is 20%
faster - Process.status() is 28% faster - Process.name() is 25%
faster - Process.num_threads is 20% faster on Python 3
* Bug fixes
+ #797: [Linux] net_if_stats() may raise OSError for certain NIC
cards.
+ #813: Process.as_dict() should ignore extraneous attribute names
which gets attached to the Process instance.
-------------------------------------------------------------------
Sun Mar 13 15:05:56 UTC 2016 - michael@stroeder.com
- removed TODO from %doc, not in upstream tar-ball anymore
- update to version 4.1.0:
* Enhancements
+ #777: [Linux] Process.open_files() on Linux return 3 new fields:
position, mode and flags.
+ #779: Process.cpu_times() returns two new fields,
'children_user' and 'children_system' (always set to 0 on OSX
and Windows).
+ #789: [Windows] psutil.cpu_times() return two new fields:
"interrupt" and "dpc". Same for psutil.cpu_times_percent().
+ #792: new psutil.cpu_stats() function returning number of CPU
ctx switches interrupts, soft interrupts and syscalls.
* Bug fixes
+ #774: [FreeBSD] net_io_counters() dropout is no longer set to 0
if the kernel provides it.
+ #776: [Linux] Process.cpu_affinity() may erroneously raise
NoSuchProcess. (patch by wxwright)
+ #780: [OSX] psutil does not compile with some gcc versions.
+ #786: net_if_addrs() may report incomplete MAC addresses.
+ #788: [NetBSD] virtual_memory()'s buffers and shared values were
set to 0.
+ #790: [OSX] psutil won't compile on OSX 10.4.
-------------------------------------------------------------------
Wed Feb 17 19:18:13 UTC 2016 - michael@stroeder.com
- update to version 4.0.0
**Enhancements**
- #523: [Linux, FreeBSD] disk_io_counters() return a new "busy_time" field.
- #660: [Windows] make.bat is smarter in finding alternative VS install
locations. (patch by mpderbec)
- #732: Process.environ(). (patch by Frank Benkstein)
- #753: [Linux, OSX, Windows] Process USS and PSS (Linux) "real" memory stats.
(patch by Eric Rahm)
- #755: Process.memory_percent() "memtype" parameter.
- #758: tests now live in psutil namespace.
- #760: expose OS constants (psutil.LINUX, psutil.OSX, etc.)
- #756: [Linux] disk_io_counters() return 2 new fields: read_merged_count and
write_merged_count.
- #762: new scripts/procsmem.py script.
**Bug fixes**
- #704: [Solaris] psutil does not compile on Solaris sparc.
- #734: on Python 3 invalid UTF-8 data is not correctly handled for process
name(), cwd(), exe(), cmdline() and open_files() methods resulting in
UnicodeDecodeError exceptions. 'surrogateescape' error handler is now
used as a workaround for replacing the corrupted data.
- #737: [Windows] when the bitness of psutil and the target process was
different cmdline() and cwd() could return a wrong result or incorrectly
report an AccessDenied error.
- #741: [OpenBSD] psutil does not compile on mips64.
- #751: [Linux] fixed call to Py_DECREF on possible Null object.
- #754: [Linux] cmdline() can be wrong in case of zombie process.
- #759: [Linux] Process.memory_maps() may return paths ending with " (deleted)"
- #761: [Windows] psutil.boot_time() wraps to 0 after 49 days.
- #764: [NetBSD] fix compilation on NetBSD-6.x.
- #766: [Linux] net_connections() can't handle malformed /proc/net/unix file.
- #767: [Linux] disk_io_counters() may raise ValueError on 2.6 kernels and it's
broken on 2.4 kernels.
- #770: [NetBSD] disk_io_counters() metrics didn't update.
-------------------------------------------------------------------
Thu Jan 21 09:01:36 UTC 2016 - michael@stroeder.com
- update to version 3.4.2 (fixes for non-Linux platforms)
-------------------------------------------------------------------
Fri Jan 15 19:39:31 UTC 2016 - michael@stroeder.com
- update to version 3.4.1
**Enhancements**
- #557: [NetBSD] added NetBSD support. (contributed by Ryo Onodera and
Thomas Klausner)
- #708: [Linux] psutil.net_connections() and Process.connections() on Python 2
can be up to 3x faster in case of many connections.
Also psutil.Process.memory_maps() is slightly faster.
- #718: process_iter() is now thread safe.
**Bug fixes**
- #714: [OpenBSD] virtual_memory().cached value was always set to 0.
- #715: don't crash at import time if cpu_times() fail for some reason.
- #717: [Linux] Process.open_files fails if deleted files still visible.
- #722: [Linux] swap_memory() no longer crashes if sin/sout can't be determined
due to missing /proc/vmstat.
- #724: [FreeBSD] virtual_memory().total is slightly incorrect.
-------------------------------------------------------------------
Fri Nov 27 10:57:57 UTC 2015 - michael@stroeder.com
- update to version 3.3.0
**Enhancements**
- #558: [Linux] exposed psutil.PROCFS_PATH constant to change the default
location of /proc filesystem.
- #615: [OpenBSD] added OpenBSD support. (contributed by Landry Breuil)
**Bug fixes**
- #692: [UNIX] Process.name() is no longer cached as it may change.
-------------------------------------------------------------------
Mon Oct 26 21:09:10 UTC 2015 - michael@stroeder.com
- update to version 3.2.2
**Bug fixes**
- #623: [Linux] process or system connections raises ValueError if IPv6 is not
supported by the system.
- #678: [Linux] can't install psutil due to bug in setup.py.
-------------------------------------------------------------------
Wed Sep 16 19:33:14 UTC 2015 - michael@stroeder.com
- update to version 3.2.1
* #677: [Linux] can't install psutil due to bug in setup.py.
-------------------------------------------------------------------
Thu Sep 3 07:39:22 UTC 2015 - michael@stroeder.com
- update to version 3.2.0
**Enhancements**
- #644: [Windows] added support for CTRL_C_EVENT and CTRL_BREAK_EVENT signals
to use with Process.send_signal().
- #648: CI test integration for OSX. (patch by Jeff Tang)
- #663: [UNIX] net_if_addrs() now returns point-to-point (VPNs) addresses.
- #655: [Windows] different issues regarding unicode handling were fixed. On
Python 2 all APIs returning a string will now return an encoded version of it
by using sys.getfilesystemencoding() codec. The APIs involved are:
- psutil.net_if_addrs()
- psutil.net_if_stats()
- psutil.net_io_counters()
- psutil.Process.cmdline()
- psutil.Process.name()
- psutil.Process.username()
- psutil.users()
**Bug fixes**
- #513: [Linux] fixed integer overflow for RLIM_INFINITY.
- #641: [Windows] fixed many compilation warnings. (patch by Jeff Tang)
- #652: [Windows] net_if_addrs() UnicodeDecodeError in case of non-ASCII NIC
names.
- #655: [Windows] net_if_stats() UnicodeDecodeError in case of non-ASCII NIC
names.
- #659: [Linux] compilation error on Suse 10. (patch by maozguttman)
- #664: [Linux] compilation error on Alpine Linux. (patch by Bart van Kleef)
- #670: [Windows] segfgault of net_if_addrs() in case of non-ASCII NIC names.
(patch by sk6249)
- #672: [Windows] compilation fails if using Windows SDK v8.0. (patch by
Steven Winfield)
- #675: [Linux] net_connections(); UnicodeDecodeError may occur when listing
UNIX sockets.
-------------------------------------------------------------------
Wed Jul 15 12:55:51 UTC 2015 - michael@stroeder.com
- update to version 3.1.1:
New fatures
=========
- [Linux] disk_partitions() added support for ZFS filesystems.
- continuous tests integration for Windows
- continuous code quality test integration
Main bugfixes
===========
- [Windows] Process.open_files() no longer hangs. Instead it uses a
thred which times out and skips the file handle in case it's taking too
long
to be retrieved. (patch by Jeff Tang)
- [Windows] Process.name() no longer raises AccessDenied for pids owned
by another user.
- [Windows] Process.memory_info() no longer raises AccessDenied for pids
owned by another user.
- [Linux] Process.cmdline() can be truncated.
- [Windows] add inet_ntop function for Windows XP to support IPv6.
-------------------------------------------------------------------
Mon Jun 29 11:08:33 UTC 2015 - toddrme2178@gmail.com
- update to version 3.0.1:
* #632: [Linux] better error message if cannot parse process UNIX
connections.
* #634: [Linux] Proces.cmdline() does not include empty string
arguments.
* #635: [UNIX] crash on module import if 'enum' package is installed
on python < 3.4.
- update to version 3.0.0:
* Enhancements
+ #250: new psutil.net_if_stats() returning NIC statistics (isup,
duplex, speed, MTU).
+ #376: new psutil.net_if_addrs() returning all NIC addresses a-la
ifconfig.
+ #469: on Python >= 3.4 IOPRIO_CLASS_* and *_PRIORITY_CLASS
constants returned by psutil.Process' ionice() and nice()
methods are enums instead of plain integers.
+ #581: add .gitignore. (patch by Gabi Davar)
+ #582: connection constants returned by psutil.net_connections()
and psutil.Process.connections() were turned from int to enums
on Python > 3.4.
+ #587: Move native extension into the package.
+ #589: Process.cpu_affinity() accepts any kind of iterable (set,
tuple, ...), not only lists.
+ #594: all deprecated APIs were removed.
+ #599: [Windows] process name() can now be determined for all
processes even when running as a limited user.
+ #602: pre-commit GIT hook.
+ #629: enhanced support for py.test and nose test discovery and
tests run.
+ #616: [Windows] Add inet_ntop function for Windows XP.
* Bug fixes
+ #428: [all UNIXes except Linux] correct handling of zombie
processes; introduced new ZombieProcess exception class.
+ #512: [BSD] fix segfault in net_connections().
+ #555: [Linux] psutil.users() correctly handles ":0" as an alias
for "localhost"
+ #579: [Windows] Fixed open_files() for PID>64K.
+ #579: [Windows] fixed many compiler warnings.
+ #585: [FreeBSD] net_connections() may raise KeyError.
+ #586: [FreeBSD] cpu_affinity() segfaults on set in case an
invalid CPU number is provided.
+ #593: [FreeBSD] Process().memory_maps() segfaults.
+ #606: Process.parent() may swallow NoSuchProcess exceptions.
+ #611: [SunOS] net_io_counters has send and received swapped
+ #614: [Linux]: cpu_count(logical=False) return the number of
physical CPUs instead of physical cores.
+ #618: [SunOS] swap tests fail on Solaris when run as normal user
+ #628: [Linux] Process.name() truncates process name in case it
contains spaces or parentheses.
- specfile:
* location of .so files changes to subdir psutil
-------------------------------------------------------------------
Mon Feb 2 22:16:07 UTC 2015 - michael@stroeder.com
- Update to 2.2.1:
- Fixed #572
ValueError: ambiguos inode with multiple PIDs references
-------------------------------------------------------------------
Tue Jan 6 23:46:40 UTC 2015 - michael@stroeder.com
- Update to 2.2.0:
- FreeBSD has now support for process CPU affinity
- new pstree.py and pidof.py example scripts
- C extension version mismatch in case the user messed up with psutil
installation or with sys.path is now detected at import time
- [Linux] a lot of file descriptors were left open
- [Windows] use proper encoding for psutil.Process.username() and
psutil.users().
- [Solaris] fixed a high-priority bug which crashed psutil on import.
-------------------------------------------------------------------
Tue Nov 18 13:55:21 UTC 2014 - toddrme2178@gmail.com
- Update to 2.1.3
* fix "undefined symbol: CPU_ALLOC" compilation error.
-------------------------------------------------------------------
Tue Sep 30 10:32:34 UTC 2014 - toddrme2178@gmail.com
- Update documentation files
- Spec file cleanups
- Update shebang fix
- Disable broken unit tests: tests don't work without root permissions
- Update dependencies. We should actually guarantee psutil and so
on are installed.
- Update urls
- Update to version 2.1.2
* Enhancements
* #407: project moved from Google Code to Github; code moved from Mercurial
to Git.
* #492: use tox to run tests on multiple python versions. (patch by msabramo)
* #505: [Windows] distribution as wheel packages.
* #511: new examples/ps.py sample code.
* Bug fixes
* #340: [Windows] Process.get_open_files() no longer hangs. (patch by
Jeff Tang)
* #501: [Windows] disk_io_counters() may return negative values.
* #503: [Linux] in rare conditions Process exe(), open_files() and
connections() methods can raise OSError(ESRCH) instead of NoSuchProcess.
* #504: [Linux] can't build RPM packages via setup.py
* #506: [Linux] python 2.4 support was broken.
* #522: [Linux] Process.cpu_affinity() might return EINVAL. (patch by David
Daeschler)
* #529: [Windows] Process.exe() may raise unhandled WindowsError exception
for PIDs 0 and 4. (patch by Jeff Tang)
* #530: [Linux] psutil.disk_io_counters() may crash on old Linux distros
(< 2.6.5) (patch by Yaolong Huang)
* #533: [Linux] Process.memory_maps() may raise TypeError on old Linux distros.
- Update to version 2.1.1
* Bug fixes
* #446: [Windows] fix encoding error when using net_io_counters() on Python 3.
(patch by Szigeti Gabor Niif)
* #460: [Windows] net_io_counters() wraps after 4G.
* #491: [Linux] psutil.net_connections() exceptions. (patch by Alexander Grothe)
- Update to version 2.1.0
* Enhancements
* #387: system-wide open connections a-la netstat.
* Bug fixes
* #421: [Solaris] psutil does not compile on SunOS 5.10 (patch by Naveed
Roudsari)
* #489: [Linux] psutil.disk_partitions() return an empty list.
- Update to version 2.0.0
* Enhancements
* #424: [Windows] installer for Python 3.X 64 bit.
* #427: number of logical and physical CPUs (psutil.cpu_count()).
* #447: psutil.wait_procs() timeout parameter is now optional.
* #452: make Process instances hashable and usable with set()s.
* #453: tests on Python < 2.7 require unittest2 module.
* #459: add a make file for running tests and other repetitive tasks (also
on Windows).
* #463: make timeout parameter of cpu_percent* functions default to 0.0 'cause
it's a common trap to introduce slowdowns.
* #468: move documentation to readthedocs.com.
* #477: process cpu_percent() is about 30% faster. (suggested by crusaderky)
* #478: [Linux] almost all APIs are about 30% faster on Python 3.X.
* #479: long deprecated psutil.error module is gone; exception classes now
live in "psutil" namespace only.
* Bug fixes
* #193: psutil.Popen constructor can throw an exception if the spawned process
terminates quickly.
* #340: [Windows] process get_open_files() no longer hangs. (patch by
jtang@vahna.net)
* #443: [Linux] fix a potential overflow issue for Process.set_cpu_affinity()
on systems with more than 64 CPUs.
* #448: [Windows] get_children() and ppid() memory leak (patch by Ulrich
Klank).
* #457: [POSIX] pid_exists() always returns True for PID 0.
* #461: namedtuples are not pickle-able.
* #466: [Linux] process exe improper null bytes handling. (patch by
Gautam Singh)
* #470: wait_procs() might not wait. (patch by crusaderky)
* #471: [Windows] process exe improper unicode handling. (patch by
alex@mroja.net)
* #473: psutil.Popen.wait() does not set returncode attribute.
* #474: [Windows] Process.cpu_percent() is no longer capped at 100%.
* #476: [Linux] encoding error for process name and cmdline.
* API changes
For the sake of consistency a lot of psutil APIs have been renamed.
In most cases accessing the old names will work but it will cause a
DeprecationWarning.
* psutil.* module level constants have being replaced by functions
* Renamed psutil.* functions
* All psutil.Process ``get_*`` methods lost the ``get_`` prefix.
get_ext_memory_info() renamed to memory_info_ex().
Assuming "p = psutil.Process()"
* All psutil.Process ``set_*`` methods lost the ``set_`` prefix.
Assuming "p = psutil.Process()"
* Except for 'pid' all psutil.Process class properties have been turned into
methods. This is the only case which there are no aliases.
Assuming "p = psutil.Process()"
* timeout parameter of cpu_percent* functions defaults to 0.0 instead of 0.1.
* long deprecated psutil.error module is gone; exception classes now live in
"psutil" namespace only.
* Process instances' "retcode" attribute returned by psutil.wait_procs() has
been renamed to "returncode" for consistency with subprocess.Popen.
-------------------------------------------------------------------
Wed Sep 3 01:41:38 CEST 2014 - ro@suse.de
- sanitize release line in specfile
-------------------------------------------------------------------
Wed Nov 27 21:26:26 UTC 2013 - p.drouand@gmail.com
- Update to version 1.2.1
* #348: [Windows XP] fixed "ImportError: DLL load failed" occurring
on module import.
* #425: [Solaris] crash on import due to failure at determining BOOT_TIME.
* #443: [Linux] can't set CPU affinity with systems with more than 64 cores.
- Changes from version 1.2.0
* #439: assume os.getpid() if no argument is passed to psutil.Process
constructor.
* #440: new psutil.wait_procs() utility function which waits for multiple
processes to terminate.
* #348: [Windows XP/Vista] fixed "ImportError: DLL load failed" occurring on
module import.
- Changes from version 1.1.3
* #442: [Linux] psutil won't compile on certain version of Linux because of
missing prlimit(2) syscall.
- Changes from version 1.1.2
* #442: [Linux] psutil won't compile on Debian 6.0 because of missing
prlimit(2) syscall.
-------------------------------------------------------------------
Mon Oct 21 12:19:35 UTC 2013 - dmueller@suse.com
- update to 1.1.1:
* #410: tar.gz and windows binary files are now hosted on PYPI.
* #412: [Linux] get/set process resource limits.
* #415: [Windows] Process.get_children() is an order of magnitude faster.
* #426: [Windows] Process.name is an order of magnitude faster.
* #431: [UNIX] Process.name is slightly faster because it unnecessarily
retrieved also process cmdline.
-------------------------------------------------------------------
Fri Jul 19 10:52:59 UTC 2013 - dmueller@suse.com
- update to 1.0.1:
* network_io_counters(pernic=True) no longer works as intended in 1.0.0.
-------------------------------------------------------------------
Thu Jul 11 14:27:00 UTC 2013 - dmueller@suse.com
- update to 1.0.0:
* Process.get_connections() 'status' strings are now constants.
* test suite exits with non-zero on failure. (patch by floppymaster)
* extensively use unittest2 module in unit tests and provide
workarounds if this is not installed on python < 2.7.
* Process.get_memory_maps() may raise ValueError.
* Process.get_connections() 'status' field is no longer a string but a constant
object (psutil.CONN_*).
* Process.get_connections() 'local_address' and 'remote_address' fields renamed
to 'laddr' and 'raddr'.
* psutil.network_io_counters() renamed to psutil.net_io_counters().
-------------------------------------------------------------------
Tue May 7 08:31:57 UTC 2013 - michael@stroeder.com
- Update to upstream release 0.7.1:
Many bug fixes, some new features and API changes
-------------------------------------------------------------------
Wed Jan 2 19:44:41 UTC 2013 - toddrme2178@gmail.com
- Fix building on SLES
-------------------------------------------------------------------
Sat Oct 6 23:01:56 UTC 2012 - os-dev@jacraig.com
- Update to 0.6.1:
* process cmdline property now makes a better job at guessing the process
executable from the cmdline.
* process exe was resolved in case it was a symlink.
* python 2.4 compatibility was broken.
* process exe can now return an empty string instead of raising AccessDenied.
* process exe is no longer resolved in case it's a symlink.
- Tons of changes from previous versions, please see HISTORY.
- Remove references to docs directory in spec file, as it no longer exists.
- Remove unnecessary shebangs from python scripts to quiet rpmlint.
-------------------------------------------------------------------
Fri May 25 04:29:28 UTC 2012 - highwaystar.ru@gmail.com
- python3 package added
- minor spec improvement
-------------------------------------------------------------------
Tue Apr 24 07:44:19 UTC 2012 - saschpe@suse.de
- It's not a noarch package
-------------------------------------------------------------------
Fri Mar 23 09:44:42 UTC 2012 - saschpe@suse.de
- Spec file cleanup:
* No need for setuptools here, distribute replaces it completely
* Macro simplifcation
-------------------------------------------------------------------
Mon Mar 19 22:00:43 UTC 2012 - cfarrell@suse.com
- First import