./sysutils/py-psutil, Cross-platform process and system utilities module for Python

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 6.1.0, Package name: py312-psutil-6.1.0, Maintainer: pkgsrc-users

util is a module providing an interface for retrieving information,
on all running processes and system utilization (CPU, memory, disks,
network, users) in a portable way by using Python, implementing
many functionalities offered by command line tools such as ps, top,
df, netstat, who, kill, uptime, free, lsof, ifconfig, nice, ionice,
iostat, iotop, pidof, tty, taskset, or pmap.

MESSAGE.NetBSD [+/-]

Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 496.646 KB

Version history: (Expand)


CVS history: (Expand)


   2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862)
Log message:
py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
   2024-10-26 09:43:38 by Nia Alarie | Files touched by this commit (1)
Log message:
py-psutil: Add PLIST.Darwin
   2024-10-26 09:42:27 by Nia Alarie | Files touched by this commit (4)
Log message:
py-psutil: Introduce per-OS PLIST
   2024-10-22 10:14:49 by Thomas Klausner | Files touched by this commit (4) | Package updated
Log message:
py-psutil: update to 6.1.0.

6.1.0
=====

2024-10-17

**Enhancements**

- 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.

**Bug fixes**

- 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).
   2024-06-26 18:51:33 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-psutil: update to 6.0.0.

6.0.0 2024-06-18
================

**Enhancements**

- 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.
- 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)

**Bug fixes**

- 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.

**Porting notes**

Version 6.0.0 introduces some changes which affect backward compatibility:

- 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.
   2024-01-20 09:05:41 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-psutil: updated to 5.9.8

5.9.8
=====

2024-01-19

**Enhancements**

- 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 but for NetBSD.
- 2349_: adopted black formatting style.

**Bug fixes**

- 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.
   2023-12-17 17:02:35 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-psutil: updated to 5.9.7

5.9.7
=====

2023-12-17

**Enhancements**

- 2324_: enforce Ruff rule `raw-string-in-exception`, which helps providing
  clearer tracebacks when exceptions are raised by psutil.

**Bug fixes**

- 2325_, [PyPy]: psutil did not compile on PyPy due to missing
  `PyErr_SetExcFromWindowsErrWithFilenameObject` cPython API.
   2023-10-18 10:53:08 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-psutil: updated to 5.9.6

5.9.6
=====

2023-10-14

**Enhancements**

- 1703_: `cpu_percent()`_ and `cpu_times_percent()`_ are now thread safe,
  meaning they can be called from different threads and still return
  meaningful and independent results. Before, if (say) 10 threads called
  ``cpu_percent(interval=None)`` at the same time, only 1 thread out of 10
  would get the right result.
- 2266_: if `Process`_ class is passed a very high PID, raise `NoSuchProcess`_
  instead of OverflowError.  (patch by Xuehai Pan)
- 2246_: drop python 3.4 & 3.5 support.  (patch by Matthieu Darbois)
- 2290_: PID reuse is now pre-emptively checked for `Process.ppid()`_  and
  `Process.parents()`_.
- 2312_: use ``ruff`` Python linter instead of ``flake8 + isort``. It's an
  order of magnitude faster + it adds a ton of new code quality checks.

**Bug fixes**

- 2195_, [Linux]: no longer print exception at import time in case /proc/stat
  can't be read due to permission error. Redirect it to ``PSUTIL_DEBUG``
  instead.
- 2241_, [NetBSD]: can't compile On NetBSD 10.99.3/amd64.  (patch by Thomas
  Klausner)
- 2245_, [Windows]: fix var unbound error on possibly in `swap_memory()`_
  (patch by student_2333)
- 2268_: ``bytes2human()`` utility function was unable to properly represent
  negative values.
- 2252_, [Windows]: `disk_usage()`_ fails on Python 3.12+.  (patch by
  Matthieu Darbois)
- 2284_, [Linux]: `Process.memory_full_info()`_ may incorrectly raise
  `ZombieProcess`_ if it's determined via ``/proc/pid/smaps_rollup``. Instead
  we now fallback on reading ``/proc/pid/smaps``.
- 2287_, [OpenBSD], [NetBSD]: `Process.is_running()`_ erroneously return
  ``False`` for zombie processes, because creation time cannot be determined.
- 2288_, [Linux]: correctly raise `ZombieProcess`_ on `Process.exe()`_,
  `Process.cmdline()`_ and `Process.memory_maps()`_ instead of returning a
  "null" value.
- 2290_: differently from what stated in the doc, PID reuse is not
  pre-emptively checked for `Process.nice()`_ (set), `Process.ionice()`_,
  (set), `Process.cpu_affinity()`_ (set), `Process.rlimit()`_
  (set), `Process.parent()`_.
- 2308_, [OpenBSD]: `Process.threads()`_ always fail with AccessDenied (also as
  root).