* 2471_: use Vulture CLI tool to detect dead code.
* 2418_, [Linux]: fix race condition in case /proc/PID/stat does not exist, but
/proc/PID does, resulting in FileNotFoundError.
* 2470_, [Linux]: `users()`_ may return "localhost" instead of the actual IP
address of the user logged in.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-psutil?expand=0&rev=177
- update to 6.1.0:
* 2366_, [Windows]: drastically speedup `process_iter()`_. We
now determine process unique identity by using process "fast"
create time method. This will considerably speedup those apps
which use `process_iter()`_ only once, e.g. to look for a
process with a certain name.
* 2446_: use pytest instead of unittest.
* 2448_: add make install-sysdeps target to install the
necessary system dependencies (python-dev, gcc, etc.) on all
supported UNIX flavors.
* 2449_: add make install-pydeps-test and make install-pydeps-
dev targets. They can be used to install dependencies meant
for running tests and for local development. They can also be
installed via pip install .[test] and pip install .[dev].
* 2456_: allow to run tests via python3 -m psutil.tests even if
pytest module is not installed. This is useful for production
environments that don't have pytest installed, but still want
to be able to test psutil installation.
* 2427_: psutil (segfault) on import in the free-threaded (no
GIL) version of Python 3.13. (patch by Sam Gross)
* 2455_, [Linux]: IndexError may occur when reading
/proc/pid/stat and field 40 (blkio_ticks) is missing.
* 2457_, [AIX]: significantly improve the speed of
`Process.open_files()`_ for some edge cases.
* 2460_, [OpenBSD]: `Process.num_fds()`_ and
`Process.open_files()`_ may fail with `NoSuchProcess`_ for
PID 0. Instead, we now return "null" values (0 and []
respectively).
- drop skip_failing_tests.patch: obsolete
OBS-URL: https://build.opensuse.org/request/show/1225342
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-psutil?expand=0&rev=82
* 2366_, [Windows]: drastically speedup `process_iter()`_. We
now determine process unique identity by using process "fast"
create time method. This will considerably speedup those apps
which use `process_iter()`_ only once, e.g. to look for a
process with a certain name.
* 2446_: use pytest instead of unittest.
* 2448_: add make install-sysdeps target to install the
necessary system dependencies (python-dev, gcc, etc.) on all
supported UNIX flavors.
* 2449_: add make install-pydeps-test and make install-pydeps-
dev targets. They can be used to install dependencies meant
for running tests and for local development. They can also be
installed via pip install .[test] and pip install .[dev].
* 2456_: allow to run tests via python3 -m psutil.tests even if
pytest module is not installed. This is useful for production
environments that don't have pytest installed, but still want
to be able to test psutil installation.
* 2427_: psutil (segfault) on import in the free-threaded (no
GIL) version of Python 3.13. (patch by Sam Gross)
* 2455_, [Linux]: IndexError may occur when reading
/proc/pid/stat and field 40 (blkio_ticks) is missing.
* 2457_, [AIX]: significantly improve the speed of
`Process.open_files()`_ for some edge cases.
* 2460_, [OpenBSD]: `Process.num_fds()`_ and
`Process.open_files()`_ may fail with `NoSuchProcess`_ for
PID 0. Instead, we now return "null" values (0 and []
respectively).
- drop skip_failing_tests.patch: obsolete
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-psutil?expand=0&rev=175
* 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.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-psutil?expand=0&rev=173
- update to 5.9.7:
* 2324_: enforce Ruff rule `raw-string-in-exception`, which
helps providing clearer tracebacks when exceptions are
raised by psutil.
* 2325_, [PyPy]: psutil did not compile on PyPy due to missing
`PyErr_SetExcFromWindowsErrWithFilenameObject` cPython API.
- drop logind_y2038.patch (upstream)
we returned either ``None`` or an empty string.
* 887: [Linux] virtual_memory()'s 'available' and 'used'
values are more precise and match "free" cmdline utility.
"available" also takes into account LCX containers
* 891: procinfo.py script has been updated and provides a
* 825: [Linux] cpu_affinity; fix possible double close and
* 885: ValueError is raised if a negative integer is passed
* 892: [Linux] Process.cpu_affinity([-1]) raise SystemError
* #857: [SunOS] Process cpu_times(), cpu_percent(), threads() amd
memory_maps() may raise RuntimeError if attempting to query a 64bit
* #858: Process.as_dict() should not return memory_info_ex() because it's
* #866: [Windows] win_service_iter() and services in general are not able
* #869: [Windows] Process.wait() may raise TimeoutExpired with wrong
ValueError: ambiguos inode with multiple PIDs references
- minor spec improvement
- First import
OBS-URL: https://build.opensuse.org/request/show/1135317
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-psutil?expand=0&rev=79
* 2324_: enforce Ruff rule `raw-string-in-exception`, which
helps providing clearer tracebacks when exceptions are
raised by psutil.
* 2325_, [PyPy]: psutil did not compile on PyPy due to missing
`PyErr_SetExcFromWindowsErrWithFilenameObject` cPython API.
we returned either ``None`` or an empty string.
* 887: [Linux] virtual_memory()'s 'available' and 'used'
values are more precise and match "free" cmdline utility.
"available" also takes into account LCX containers
* 891: procinfo.py script has been updated and provides a
* 825: [Linux] cpu_affinity; fix possible double close and
* 885: ValueError is raised if a negative integer is passed
* 892: [Linux] Process.cpu_affinity([-1]) raise SystemError
* #857: [SunOS] Process cpu_times(), cpu_percent(), threads() amd
memory_maps() may raise RuntimeError if attempting to query a 64bit
* #858: Process.as_dict() should not return memory_info_ex() because it's
* #866: [Windows] win_service_iter() and services in general are not able
* #869: [Windows] Process.wait() may raise TimeoutExpired with wrong
ValueError: ambiguos inode with multiple PIDs references
- minor spec improvement
- First import
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-psutil?expand=0&rev=168
- update to 5.9.5:
* in case of exception, display a cleaner error
traceback by hiding the `KeyError` bit deriving from a
missed cache hit.
* print the full traceback when a `DeprecationWarning`
or `UserWarning` is raised.
* there are cases where `Process.cwd()`_ cannot be
determined (e.g. directory no longer exists), in which case
we returned either ``None`` or an empty string.
This was consolidated and we now return ``""`` on all
platforms.
* [UNIX]: if process is a zombie, and we can only
determine part of the its truncated `Process.name()`_
(15 chars), don't fail with `ZombieProcess`_ when we try
to guess the full name from the `Process.cmdline()`_. Just
return the truncated name.
* on certain kernels, ``"MemAvailable"`` field
from ``/proc/meminfo`` returns ``0`` (possibly a kernel bug), in
which case we calculate an approximation for ``available``
memory which matches "free" CLI utility.
* `disk_partitions()`_: do not unnecessarily
read /proc/filesystems and raise `AccessDenied`_ unless user
specified `all=False` argument.
* `users()`_ loses precision for ``started``
attribute (off by 1 minute).
* if cwd no longer exists. Return an empty string instead.
OBS-URL: https://build.opensuse.org/request/show/1084220
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-psutil?expand=0&rev=73
* in case of exception, display a cleaner error
traceback by hiding the `KeyError` bit deriving from a
missed cache hit.
* print the full traceback when a `DeprecationWarning`
or `UserWarning` is raised.
* there are cases where `Process.cwd()`_ cannot be
determined (e.g. directory no longer exists), in which case
we returned either ``None`` or an empty string.
This was consolidated and we now return ``""`` on all
platforms.
* [UNIX]: if process is a zombie, and we can only
determine part of the its truncated `Process.name()`_
(15 chars), don't fail with `ZombieProcess`_ when we try
to guess the full name from the `Process.cmdline()`_. Just
return the truncated name.
* on certain kernels, ``"MemAvailable"`` field
from ``/proc/meminfo`` returns ``0`` (possibly a kernel bug), in
which case we calculate an approximation for ``available``
memory which matches "free" CLI utility.
* `disk_partitions()`_: do not unnecessarily
read /proc/filesystems and raise `AccessDenied`_ unless user
specified `all=False` argument.
* `users()`_ loses precision for ``started``
attribute (off by 1 minute).
* if cwd no longer exists. Return an empty string instead.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-psutil?expand=0&rev=156
- update to 5.9.0:
* [Linux]: `cpu_freq()`_ is slow on systems with many CPUs. Read current
frequency values for all CPUs from ``/proc/cpuinfo`` instead of opening many
files in ``/sys`` fs. (patch by marxin)
* `NoSuchProcess`_ message now specifies if the PID has been reused.
* error classes (`NoSuchProcess`_, `AccessDenied`_, etc.) now have a better
formatted and separated ``__repr__`` and ``__str__`` implementations.
* [Linux]: `disk_partitions()`_: convert ``/dev/root`` device (an alias
used on some Linux distros) to real root device path.
* ``PSUTIL_DEBUG`` mode now prints file name and line number of the debug
messages coming from C extension modules.
* rewrite HISTORY.rst to use hyperlinks pointing to psutil API doc.
* [Linux]: `wait_procs()`_ should catch ``subprocess.TimeoutExpired``
exception.
* [Linux]: `sensors_battery()`_ can raise ``TypeError`` on PureOS.
* [Linux]: psutil does not handle ``ENAMETOOLONG`` when accessing process
file descriptors in procfs. (patch by Nikita Radchenko)
* **[critical]**: ``memoize_when_activated`` decorator is not thread-safe.
* **[critical]**: `process_iter()`_ is not thread safe and can raise
``TypeError`` if invoked from multiple threads.
* [Linux]: `cpu_freq()`_ return order is wrong on systems with more than
9 CPUs.
OBS-URL: https://build.opensuse.org/request/show/945437
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-psutil?expand=0&rev=63
* [Linux]: `cpu_freq()`_ is slow on systems with many CPUs. Read current
frequency values for all CPUs from ``/proc/cpuinfo`` instead of opening many
files in ``/sys`` fs. (patch by marxin)
* `NoSuchProcess`_ message now specifies if the PID has been reused.
* error classes (`NoSuchProcess`_, `AccessDenied`_, etc.) now have a better
formatted and separated ``__repr__`` and ``__str__`` implementations.
* [Linux]: `disk_partitions()`_: convert ``/dev/root`` device (an alias
used on some Linux distros) to real root device path.
* ``PSUTIL_DEBUG`` mode now prints file name and line number of the debug
messages coming from C extension modules.
* rewrite HISTORY.rst to use hyperlinks pointing to psutil API doc.
* [Linux]: `wait_procs()`_ should catch ``subprocess.TimeoutExpired``
exception.
* [Linux]: `sensors_battery()`_ can raise ``TypeError`` on PureOS.
* [Linux]: psutil does not handle ``ENAMETOOLONG`` when accessing process
file descriptors in procfs. (patch by Nikita Radchenko)
* **[critical]**: ``memoize_when_activated`` decorator is not thread-safe.
* **[critical]**: `process_iter()`_ is not thread safe and can raise
``TypeError`` if invoked from multiple threads.
* [Linux]: `cpu_freq()`_ return order is wrong on systems with more than
9 CPUs.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-psutil?expand=0&rev=136