psutil v4.0.0 Release Notes

  • 2016-02-17

    โœจ 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], [macOS], [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 procsmem.py_ script.

    ๐Ÿ› Bug fixes

    • ๐Ÿง 685_, [Linux]: virtual_memory()_ provides wrong results on systems with a lot of physical memory.
    • 704_, [SunOS]: psutil does not compile on Solaris sparc.
    • 734_: on Python 3 invalid UTF-8 data is not correctly handled for Process.name(), Process.cwd(), Process.exe(), Process.cmdline() and Process.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, Process.cmdline()_ and Process.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]: Process.cmdline()_ can be wrong in case of zombie process.
    • ๐Ÿง 759_, [Linux]: Process.memory_maps()_ may return paths ending with " (deleted)".
    • ๐Ÿ 761_, [Windows]: 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.