python/psutil/TODO

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 TODO
     2 ====
     4 A collection of ideas and notes about stuff to implement in future versions.
     5 "#NNN" occurrences refer to bug tracker issues at:
     6 https://code.google.com/p/psutil/issues/list
     9 HIGHER PRIORITY
    10 ===============
    12  * #387: system-wide connections (netstat).
    13  * OpenBSD support.
    15  * #371: CPU temperature (apparently OSX and Linux only; on Linux it requires
    16    lm-sensors lib).
    18  * #250: net ifaces speed.
    20  * (Linux) resource limit get/set - see man prlimit.
    22  * Process.name on Windows is slow:
    23    http://stackoverflow.com/questions/6587036/
    25  * Windows binary for Python 3.3 64-bit.
    27  * #269: expose network ifaces RX/TW queues.
    30 LOWER PRIORITY
    31 ==============
    33  * #355: Android support.
    35  * #276: GNU/Hurd support.
    37  * NetBSD support?
    39  * DranflyBSD support?
    41  * AIX support?
    43  * examples/pidof.py (same as 'pidof' cli tool)
    45  * examples/pstree.py (same as 'pstree' cli tool)
    46     * get_threads() should also return thread names in order to implement it
    48  * examples/taskmgr-gui.py (using tk).
    50  * system-wide # open file descriptors:
    51     * https://jira.hyperic.com/browse/SIGAR-30
    52     * http://www.netadmintools.com/part295.html
    54  * Number of system threads.
    55     * Windows: http://msdn.microsoft.com/en-us/library/windows/desktop/ms684824(v=vs.85).aspx
    57  * #357: what CPU a process is on.
    59  * thread names:
    60     * https://code.google.com/p/plcrashreporter/issues/detail?id=65
    63 DEBATABLE
    64 =========
    66  * [Linux]: process cgroups (http://en.wikipedia.org/wiki/Cgroups). They look
    67    similar to prlimit() in terms of functionality but uglier (they should allow
    68    limiting per-process network IO resources though, which is great). Needs
    69    further reading.
    71  * cpu_percent(): current default interval is 0.1 so that by default it will
    72    produce a meaningful value. It represents a trap in case the user iterates
    73    over multiple processes though, as it introduces a big slowdown.
    74    Should it default to 0.0?
    76  * Rename connection ntuple's fields 'local_address', 'remote_address' to
    77    'laddr', 'raddr'  (note in accordance with http://bugs.python.org/issue17675)
    79  * Process per-cpus percent (XXX Windows only?), see:
    80    https://groups.google.com/forum/?fromgroups#!topic/psutil/ErrKTxAbu50
    82  * Should we expose OS constants (psutil.WINDOWS, psutil.OSX etc.)?
    84  * Python 3.3. exposed different sched.h functions:
    85    http://docs.python.org/dev/whatsnew/3.3.html#os
    86    http://bugs.python.org/issue12655
    87    http://docs.python.org/dev/library/os.html#interface-to-the-scheduler
    88    It might be worth to take a look and figure out whether we can include some
    89    of those in psutil.
    90    Also, we can probably reimplement wait_pid() on POSIX which is currently
    91    implemented as a busy-loop.
    93  * Certain systems (XXX figure out which ones exactly) provide CPU times about
    94    process children. On those systems Process.get_cpu_times() might return
    95    a (user, system, user_children, system_children) ntuple.

mercurial