2022-03-08  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: a14256a3ff74eeee59493ac088561f1bafab85a7
	Update manual page modification date Suggested-by: mandoc -T lint 

	* iotop.8: Modified.

2022-02-01  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 4652313a4be9aac2cd90e511b76f0a1c6bb0f315
	Promote the packages of both of the Python/C iotop implementations These are easier to install and use for many people. 

	* README: Modified.

2022-02-01  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: a84a39dcdbcb1d25325d268d13c53d07423ba992
	Promote the new iotop implementation that is written in C It uses less resources (useful on embedded systems) and has more features. 

	* README: Modified.

2022-02-01  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 9c49d594a5ddea14dcb30f0f2b7dc67018767295
	Automatically hide the SWAPIN/IO columns when they are unavailable Now that the Linux kernel can enable or disable data collection for them at runtime, showing the columns when collection is disabled is even less useful, since the previous data could still be present in the Linux kernel buffers. Preserve the behaviour of the batch mode though, so that programs parsing its output aren't broken by the changes to the Linux kernel, but they may still be broken when the output changes from ?unavailable? to real data. Since the current sorting keys code makes it hard to dynamically choose which columns are shown or hidden, when the two columns are hidden, just skip over displaying them or using them as sorting keys. Rewrite the data display code to be more flexible wrt column choice though. Suggested-by: Boian Bonev <bbonev@ipacct.com> 

	* iotop/ui.py: Modified.

2022-02-01  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 2787b5d5a595c3a4679c5f22f817b24a55d485fe
	Update URLs for redirects and other location changes 

	* README: Modified.
	* iotop/ioprio.py: Modified.
	* setup.py: Modified.

2021-10-08  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 4e4fbca5618ba264bf502c2dad0ecb9cb458cd7a
	Document the new #iotop channel on the libera.chat IRC network. 

	* README: Modified.

2021-10-08  Yanichkin Alexander  <Alexander_Sergey@mail.ru>

	COMMIT: 443737ec620a699286b9b2e44dbcaac53f553812
	Workaround crashes due to non-UTF-8 characters in process command-lines Use the Python feature of replacing non-UTF-8 characters with the U+FFFD REPLACEMENT CHARACTER (�). This is only a workaround, a more useful action would be to guess the encoding using chardet or similar and coerce the bytes into Unicode. Fixes: https://bugs.launchpad.net/ubuntu/+source/iotop/+bug/1932523 Fixes: https://bugs.debian.org/737043 

	* iotop/data.py: Modified.

2021-10-02  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: ab35334d374e588bec12d201fb8869c536f0545d
	Detect the kernel.task_delayacct sysctl value If you have ever turned on the kernel.task_delayacct sysctl for the current Linux boot, then the heuristic that iotop uses to find out if swapin/io are available, gives a false negative, so the sysctl has to be checked too now. Fixes: https://github.com/Tomas-M/iotop/issues/21 Reported-by: @ManuLinares Forwarded-by: Boian Bonev <bbonev@ipacct.com> 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2021-10-01  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: dd4fcc71b1184264bed25fbc0ce7e2d758d8c396
	Document the new kernel.task_delayacct sysctl requirement in Linux 5.14 Fixes: https://github.com/Tomas-M/iotop/issues/21 Reported-by: @ManuLinares Forwarded-by: Boian Bonev <bbonev@ipacct.com> 

	* README: Modified.
	* iotop.8: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2021-09-22  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 68be5e5c83e7ce5c0f2177f78d75c54f9d6bbd86
	Handle errors setting up curses by printing the error This is more user-friendly than a traceback. $ sudo env --unset TERM iotop Traceback (most recent call last): File "/usr/sbin/iotop", line 17, in <module> main() File "/usr/lib/python3/dist-packages/iotop/ui.py", line 737, in main main_loop() File "/usr/lib/python3/dist-packages/iotop/ui.py", line 727, in <lambda> main_loop = lambda: run_iotop(options) File "/usr/lib/python3/dist-packages/iotop/ui.py", line 620, in run_iotop return curses.wrapper(run_iotop_window, options) File "/usr/lib/python3.9/curses/__init__.py", line 73, in wrapper stdscr = initscr() File "/usr/lib/python3.9/curses/__init__.py", line 29, in initscr setupterm(term=_os.environ.get("TERM", "unknown"), _curses.error: setupterm: could not find terminal Reported-by: Boian Bonev <bbonev@ipacct.com> 

	* iotop/ui.py: Modified.

2021-05-13  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 1869c0b3d8cf5a3270755f81063e0d6f9d8b690a
	Add a _ioprio C extension module for exporting SYS_ioprio_* syscall numbers The Linux kernel doesn't have a way to get the syscall numbers at runtime. Suggested-by: Adrian Bunk 

	* iotop/_ioprio.c: New file.
	* iotop/ioprio.py: Modified.
	* setup.py: Modified.

2020-01-08  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 1bfb3bc70febb1ffb95146b6dcd65257228099a3
	Fix possessive form for "process" in the manual page Suggested-by: codespell 

	* iotop.8: Modified.

2020-01-08  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 5b9a2785f57f10e5e56005451db79ce2dbdfbbcf
	Fix indefinite article to be "an x86_64 kernel" instead of "a x86_64 kernel" Suggested-by: anorack 

	* THANKS: Modified.

2018-05-25  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 7c51ce0e29bd135c216f18e18f0c4ab769af0d6f
	Actually skip invalid lines in /proc/*/status Fixes: commit 0392b205b5c3973a326721c2e9f97f0fa2eefa82 

	* iotop/data.py: Modified.

2018-05-25  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 0392b205b5c3973a326721c2e9f97f0fa2eefa82
	Ignore invalid lines in /proc/*/status files One Ubuntu Linux kernel security fix introduced a blank line. Some other Linux kernels may have invalid lines in the future. See-also: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1772671 Fixes: https://bugs.launchpad.net/ubuntu/+source/iotop/+bug/1772856 Reported-by: Paul Jaros <jaros.paul@gmail.com> Reported-in: <CAEh_nc0_DXTmfu16PxmVyrCi6QQeSrpnGGhtfNu60wJYfa_6Zw@mail.gmail.com> Traceback (most recent call last): File "/usr/sbin/iotop", line 17, in <module> main() File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 620, in main main_loop() File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 610, in <lambda> main_loop = lambda: run_iotop(options) File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 508, in run_iotop return curses.wrapper(run_iotop_window, options) File "/usr/lib/python2.7/curses/wrapper.py", line 43, in wrapper return func(stdscr, *args, **kwds) File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 501, in run_iotop_window ui.run() File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 155, in run self.process_list.duration) File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 434, in refresh_display lines = self.get_data() File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 415, in get_data return list(map(format, processes)) File "/usr/lib/python2.7/dist-packages/iotop/ui.py", line 388, in format cmdline = p.get_cmdline() File "/usr/lib/python2.7/dist-packages/iotop/data.py", line 292, in get_cmdline proc_status = parse_proc_pid_status(self.pid) File "/usr/lib/python2.7/dist-packages/iotop/data.py", line 196, in parse_proc_pid_status key, value = line.split(':\t', 1) ValueError: need more than 1 value to unpack 

	* iotop/data.py: Modified.

2018-05-24  Paul Jaros  <jaros.paul@gmail.com>

	COMMIT: 69107ad1bfa05d240dbeac52f7d377dbb4c29daf
	Fix crash due to syntax error Traceback (most recent call last): File "./iotop.py", line 9, in <module> from iotop.ui import main File "./iotop/ui.py", line 642 else: ^ SyntaxError: invalid syntax Reported-in: <CAEh_nc0_DXTmfu16PxmVyrCi6QQeSrpnGGhtfNu60wJYfa_6Zw@mail.gmail.com> 

	* iotop/ui.py: Modified.

2018-05-03  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 0881c06027b49c3e53fcfe803ba63e11b2090ef3
	Improve the message that is printed when Linux taskstats are not found Usually this means that iotop is being run in a container. The Linux kernel doesn't support taskstats outside the host net namespace. There was a patch that looks like it may fix this but it never got merged. Traceback (most recent call last): File "/usr/sbin/iotop", line 17, in <module> main() File "/usr/lib/python3/dist-packages/iotop/ui.py", line 737, in main main_loop() File "/usr/lib/python3/dist-packages/iotop/ui.py", line 727, in <lambda> main_loop = lambda: run_iotop(options) File "/usr/lib/python3/dist-packages/iotop/ui.py", line 618, in run_iotop return run_iotop_window(None, options) File "/usr/lib/python3/dist-packages/iotop/ui.py", line 609, in run_iotop_window taskstats_connection = TaskStatsNetlink(options) File "/usr/lib/python3/dist-packages/iotop/data.py", line 151, in __init__ self.family_id = controller.get_family_id('TASKSTATS') File "/usr/lib/python3/dist-packages/iotop/genetlink.py", line 76, in get_family_id m = GeNlMessage.recv(self.conn) File "/usr/lib/python3/dist-packages/iotop/genetlink.py", line 56, in recv msg = conn.recv() File "/usr/lib/python3/dist-packages/iotop/netlink.py", line 255, in recv raise err OSError: Netlink error: No such file or directory (2) See-also: https://blog.outlyer.com/using-netlink-to-calculate-load-averages See-also: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg924689.html See-also: https://bugzilla.redhat.com/show_bug.cgi?id=1290691 See-also: https://bugs.openvz.org/browse/OVZ-5655 

	* iotop/ui.py: Modified.

2018-04-29  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 5bdd01c3b3b1c415c71b00b2374538995f63597c
	Switch from python to python3 Python 2 will be EOL in 2020 so Python 3 is preferrable. See-also: https://pythonclock.org/ 

	* .install-rpm.sh: Modified.
	* iotop.py: Modified.
	* release.sh: Modified.
	* sbin/iotop: Modified.
	* setup.py: Modified.

2017-06-17  James Cowgill  <jcowgill@debian.org>

	COMMIT: 733f3f864819ff04dd210bfde785d28e00e325fa
	Add ioprio_* syscall numbers for mips Fixes: https://bugs.debian.org/864886 

	* iotop/ioprio.py: Modified.

2017-05-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 83261e97e558623d402c903af3ed30a1789d453c
	Support Python versions and platforms with no time.monotonic() function Python 2 and Python 3 earlier than 3.3 do not have this function. Use the PyPI monotonic backport module if needed and available. Fall back on non-monotonic time if neither is available. 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2017-05-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: e14ecff45ee26203dfef61f9e84fe3555837066b
	Use monotonic time to calculate durations Prevents incorrect calculations when the system time is set backwards. Reported-by: Andrei Costin <zveriu@gmail.com> Fixes: https://bugs.launchpad.net/bugs/1685512 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2017-02-26  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: c9acd2932c3b5af9f4a86eaac4b507023642ebc2
	Fix typo: alignement 

	* NEWS: Modified.

2016-08-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 877679bf74d1c84040f00eec2a42e2ace056e45e
	Add a footer listing keyboard shortcuts This makes the program more friendly to new users. Implements: https://bugs.launchpad.net/ubuntu/+source/iotop/+bug/1429645 

	* iotop.8: Modified.
	* iotop/ui.py: Modified.

2016-08-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 529a74a28be43c04840d937c87a5ee3b81133852
	Check the column title is not empty before using it Fixes crash with terminals that don't fit all titles. Traceback (most recent call last): File "./iotop.py", line 12, in <module> main() File "./iotop/ui.py", line 669, in main main_loop() File "./iotop/ui.py", line 659, in <lambda> main_loop = lambda: run_iotop(options) File "./iotop/ui.py", line 554, in run_iotop return curses.wrapper(run_iotop_window, options) File "/usr/lib/python3.5/curses/__init__.py", line 94, in wrapper return func(stdscr, *args, **kwds) File "./iotop/ui.py", line 546, in run_iotop_window ui.run() File "./iotop/ui.py", line 176, in run self.process_list.duration) File "./iotop/ui.py", line 515, in refresh_display self.win.addstr(len_summary, pos, title, attr) _curses.error: addwstr() returned ERR 

	* iotop/ui.py: Modified.

2016-08-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 16a30ece6ab4eaa9ca5d056ada94673265195e27
	Hide UI elements on smaller terminals This helps usability on smaller terminals. Hide the status bar first, then the summary and then the titles, since that is the approximate order of usefulness. 

	* iotop/ui.py: Modified.

2016-08-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 2afaaf25690cb5eb8cb527be0de030d3c796e991
	Print the titles at specific locations Prevents a crash in a 3-line terminal: Traceback (most recent call last): File "./iotop.py", line 12, in <module> main() File "./iotop/ui.py", line 652, in main main_loop() File "./iotop/ui.py", line 642, in <lambda> main_loop = lambda: run_iotop(options) File "./iotop/ui.py", line 537, in run_iotop return curses.wrapper(run_iotop_window, options) File "/usr/lib/python2.7/curses/wrapper.py", line 43, in wrapper return func(stdscr, *args, **kwds) File "./iotop/ui.py", line 529, in run_iotop_window ui.run() File "./iotop/ui.py", line 176, in run self.process_list.duration) File "./iotop/ui.py", line 492, in refresh_display self.win.addstr(title, attr) _curses.error: addstr() returned ERR 

	* iotop/ui.py: Modified.

2016-08-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: c8cc7ef97be1bd8854eb9c5c627e61cc0752674f
	Correct the location of the status message It wasn't taking into account the titles line. It was placed one line above the bottom of the screen. 

	* iotop/ui.py: Modified.

2016-08-04  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: f004d8172cdcb6c3dbc461815913f8c3cc7c8829
	Correct the alignment of the header It looks ugly without correct alignment. 

	* iotop/ui.py: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: cf78464e8267d574056b99f0a67c3e4edf93bd40
	Strip obsolete comment from the manual page 

	* iotop.8: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 6c292af470e65287ec0202b1566f1b89226b5ebc
	Add the full fingerprint for the release signing key See-also: https://evil32.com/ 

	* NEWS: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 7814f30a5ed65acd07f284bba991ca557788ee80
	Only split /proc/*/status lines on the : character. Apparently vserver kernels have some lines that don't appear to have the tab character so iotop crashes. The tab character will be stripped by the next code line. Closes: https://bugs.gentoo.org/show_bug.cgi?id=458556 

	* iotop/data.py: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: b8058ad26d91022874138c40b6b680eee3325ebd
	Use long command-line options instead of short ones This makes scripts easier to read. 

	* release.sh: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 04711c823e475928870b7f10a1314018a340ab3e
	Also ignore the dist/ directory, which is created by `setup.py sdist` 

	* .gitignore: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: c71b37723f17d9b398f5973d9fc0221fd7778aa7
	Refer to Python using the correct capitalisation Suggested-by: spellintian --picky 

	* NEWS: Modified.
	* iotop/netlink.py: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 6f58d45d78d44b753dd1560176c98e52b3c930ab
	Use ./* instead of * for globs Prevents accidentally using filenames as options Suggested-by: shellcheck 

	* release.sh: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 052e17fcfa1c640d9213e0e6d72cd26522fd5719
	Switch URLs from http to https http URLs are insecure and can be manipulated by attackers. Suggested-by: check-all-the-things 

	* .install-rpm.sh: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/ui.py: Modified.

2016-07-28  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 44b2d2cb523637346d09cad9c9353d78a38b04e6
	Convert .install-rpm.sh from a Bash script to a POSIX shell script It uses no bash-specific features so it shouldn't use bash. Suggested-by: checkbashisms 

	* .install-rpm.sh: Modified.

2014-10-18  Christophe Vu-Brugier  <cvubrugier@fastmail.fm>

	COMMIT: 99c8d7cedce81f17b851954d94bfa73787300599
	Fix build error with Python 3 caused by itervalues() in setup.py The itervalues() method is not available in Python 3. As a consequence, this patch replaces the call to itervalues() in setup.py with a call to values() which works on both Python 2 and Python 3. Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm> Signed-off-by: Paul Wise <pabs3@bonedaddy.net> 

	* setup.py: Modified.

2014-05-14  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: e34fe9b424c0a7c8c78279a6076f3a1a8597d3b8
	Fix two typos 

	* iotop/ui.py: Modified.

2014-04-20  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 76b284b1fbc4fb801e578355cc4f6dd548185da1
	Fix terminology, replace 'actual' by 'current'. Closes: https://bugs.debian.org/739642 

	* NEWS: Modified.
	* THANKS: Modified.
	* iotop.8: Modified.
	* iotop/ui.py: Modified.

2013-06-07  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: e9fb7ae0246f32efdc8dab579c84926754ccdd42
	Be specific about which exceptions are being caught. http://docs.python.org/2/howto/doanddont.html#except 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2013-05-27  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 65625d1b5cee169247e9479445cfa497c10bc006
	Make pep8 happy. 

	* iotop/data.py: Modified.
	* iotop/genetlink.py: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/netlink.py: Modified.
	* iotop/ui.py: Modified.
	* iotop/vmstat.py: Modified.
	* setup.py: Modified.

2013-05-27  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 59e2537794d91c1375d391293f8fd89ca8b794a8
	Document signature 

	* NEWS: Modified.

2013-05-27  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 1aa607249b54d2ecd08a72a6d6cdbda49dfad5e6
	GPG sign all released files 

	* release.sh: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ed250d09d00ee3d96bb600a1ea0656c157bdca5e
	Version bump. 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 8b1dc2afe5eb9b1f554ca313e3f5cf886c636566
	Clean exit also on SIGTERM otherwise the terminal is unusable. 

	* iotop/ui.py: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b3a739757b0c6246514e6ebc9bc02961bfa9ad15
	Python3 can print UTF-8 to curses, python2 can't so let's handle both. 

	* iotop/ui.py: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ae1f7caf88f9e289e0ef414ab92227d8d5cc2cde
	Cleanly exit on SIGINT otherwise python3 will leave the terminal in an unusable state. 

	* iotop/ui.py: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e2a04c1a033bdfec96aaad2eb71637bb5570a9b5
	No need to make the RPM install script move bin/ to sbin/ now that setup.py installs to sbin/. 

	* .install-rpm.sh: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 98c3e4dee8a30c247d7967def84adea5aeb8640b
	Make setup.py install the iotop script in sbin/ instead of bin/. 

	* setup.py: Modified.

2013-05-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e4f707330c7bc39afc9cd211b731eb4af2172d9c
	In some setup closing the xterm window only has the effect of deleting the pty. Then iotop would be busy looping reading on stdin. Instead we should detect the terminal deletion and exit. When this happens iotop receives (0, 25) as an event, which is (stdin, select.POLLIN|select.POLLERR|select.POLLHUP). Also, represent an empty even list as [] instead of 0, this is just cosmetic. 

	* iotop/ui.py: Modified.

2013-05-13  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: adce8cc314f3bde11badc4b02c1e3987243b1605
	Fix the FSF address embedded in a few files 

	* iotop/data.py: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/ui.py: Modified.
	* iotop/vmstat.py: Modified.

2013-05-13  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: b16d7fba7fa958fb34dbb342350eedebb81375c9
	Fix python3 compatibility for iotop when installed 

	* sbin/iotop: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 3cfafb525f6e98f5a8fb647d69cb09b343f32ccc
	Update python requirements 

	* README: Modified.
	* iotop/data.py: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: a2f3cc9f28dbb7cbd0c5b298f331d1d924af50f4
	Also advertise the move to sbin/ as it's significant 

	* NEWS: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 488c381c5301824c3755f5e5460adffaac928653
	The RPM should also install to sbin. 

	* .install-rpm.sh: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c9801a7851168c3ddf79144e4a84f11c803fb175
	Moved to sbin. 

	* bin/iotop: Move to...
	* sbin/iotop: ... here.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 3f1f3e2a7b728b09c8f5e277f61937a83663f0b7
	Finish man page renaming 

	* .install-rpm.sh: Modified.
	* MANIFEST.in: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: f8ee91d607d3c81fe22413551c34864395800948
	Version bump 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7b98b1a539db87037ff34c385d8d0deeca70f1e0
	Advertise the newly introduced differentiation between total and actual I/O. 

	* NEWS: Modified.
	* THANKS: Modified.

2013-02-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: f536a00db610843c1288f409f4a823eea5a96e8e
	80 cols 

	* iotop/ui.py: Modified.

2013-02-03  Igor Bazhitov  <ibazhitov@parallels.com>

	COMMIT: 6a8947aadeceb99a554042a086e250f260a895e8
	Add 'Actual' bandwidth stats to summary header 'Total' values in the summary header may look confusing to users. They represent actual kernel <-> disk I/O bandwidth, while individual values for processes/threads show process <-> kernel I/O bandwidth. Rename 'Total' to 'Actual' and add old 'Total' status line that sums up all individual process/thread bandwidths. Explain the difference between 'Total' and 'Actual' in the manpage. 

	* iotop.8: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2012-12-16  Igor Bazhitov  <ibazhitov@parallels.com>

	COMMIT: ace416b71fc010f51461dd164748b668e953b343
	Update manpage name in README 

	* README: Modified.

2012-12-16  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: c819a5a033bf26fa7a90a627ac69e0d1891b0c43
	Fix crash when running under python3. This reverts cd6ffb5913664844290f44a7ea48533caf8c459e Traceback (most recent call last): File "./iotop.py", line 12, in <module> main() File "./iotop/iotop/ui.py", line 597, in main main_loop() File "./iotop/iotop/ui.py", line 587, in <lambda> main_loop = lambda: run_iotop(options) File "./iotop/iotop/ui.py", line 485, in run_iotop return curses.wrapper(run_iotop_window, options) File "/usr/lib/python3.2/curses/wrapper.py", line 43, in wrapper return func(stdscr, *args, **kwds) File "./iotop/iotop/ui.py", line 478, in run_iotop_window ui.run() File "./iotop/iotop/ui.py", line 153, in run total = self.process_list.refresh_processes() File "./iotop/iotop/data.py", line 459, in refresh_processes self.processes.items() if File "./iotop/iotop/data.py", line 460, in <listcomp> process.update_stats()]) File "./iotop/iotop/data.py", line 358, in update_stats for tid, thread in self.threads.items(): RuntimeError: dictionary changed size during iteration [This is valid since 0fc4ab84c8cbba1fbe83dc71fb89100b87c54898 added the self.threads = dict(...)] 

	* iotop/data.py: Modified.

2012-09-03  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 6baee990bb7784e64aa6e3df0e46f2b876794524
	Move iotop out of the path for users 

	* iotop.1: Move to...
	* iotop.8: ... here.
	* setup.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b0583f9624e8f282fb9d2030478070019ced31b8
	Fix the setting of the I/O priority and advertise it a litle more. 

	* iotop/ui.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 14437e37710bd93db31c2c268b403cc3c28ddeec
	Here we print a string, not bytes. 

	* iotop/ui.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7f722af810b2b050b3b7b934f0a705f1fa0c20e5
	Remove stray print added during the python3 conversion. 

	* iotop/netlink.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b558a0401b792354197250cb8a3c83be5a1f447e
	Restore compatibility with python2 

	* iotop/data.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: cd6ffb5913664844290f44a7ea48533caf8c459e
	Put back code deleted in the python3 conversion 

	* iotop/data.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 26cf17b715ea3247867bf0b4b1099150c56e70fb
	Some missed python3 conversions 

	* iotop/data.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c6bb5b1f54de2080db15eca0a9377ee45e819e98
	Cosmetic fixes 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2012-09-03  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 0fc4ab84c8cbba1fbe83dc71fb89100b87c54898
	Port to Python 3 Not entirely sure about all parts of this but it works in Python 2/3 

	* iotop/data.py: Modified.
	* iotop/genetlink.py: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/netlink.py: Modified.
	* iotop/ui.py: Modified.

2012-09-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 05ebf66966c5febe05e40df44bab0accb7bc2f54
	Show custom thread names. 

	* THANKS: Modified.
	* iotop/data.py: Modified.

2012-05-13  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: b21d6fbaf0d3ceede325f3f5d4c79dfab19b6bed
	Improve the message that is printed when Linux denies access to taskstats. 

	* iotop/ui.py: Modified.

2012-03-08  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 13a625ff5b0d7583ca254ddfe96f0660528904fc
	Consistent option names 

	* README: Modified.

2012-01-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 850274be1d257f4063feec735aff89fdb7d099ea
	Restore the default SIGPIPE handler so that sudo ./iotop.py -b|head does what's expected. 

	* iotop/ui.py: Modified.

2012-01-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: bbc717e302d1ab1766f196e5e21b562de88c98ce
	Adapt the display to the maximum pid width 

	* NEWS: Modified.
	* iotop/ui.py: Modified.

2012-01-18  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 191377c5c4c19ec078b1a39d1cfcb54da42ede61
	Ignore the build directory. 

	* .gitignore: Modified.

2011-10-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0a4a1200dabb1589fcc80395ac0bb02ae5adeee5
	Actually install-rpm.sh is still needed. 

	* .install-rpm.sh: New file.
	* setup.cfg: Modified.

2011-10-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 1ebb5051cabf37ab848ab15537adf140b472d9b8
	Version bump 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2011-10-15  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 635b5838e95ed85767434207e463173fd91b6040
	Explain that iotop now requires root. https://lkml.org/lkml/2011/10/1/170 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=1a51410abe7d0ee4b1d112780f46df87d3621043 

	* iotop/ui.py: Modified.

2011-09-17  Thomas Guettler  <tguettler@tbz-pariv.de>

	COMMIT: 3aa9a6d5f30592a02681bc0f5d3074cb01ddbfd5
	Right-justify the header so that numbers stop "bouncing". 

	* iotop/ui.py: Modified.

2011-08-04  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e77fd00622208175aa40ef13d7fe3da754979421
	When printing the time, print it also in the summary 

	* iotop/ui.py: Modified.

2011-04-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 87a94676cc29baca9cd6f1456bb9501f81cef52a
	Address some pyflakes and pychecker warnings 

	* iotop/data.py: Modified.
	* iotop/genetlink.py: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/netlink.py: Modified.
	* iotop/ui.py: Modified.
	* iotop/vmstat.py: Modified.

2011-03-28  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0a0b65c221dcd6f30dde7e6022b435b51bf561c7
	Version bump 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2011-03-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c985e8d29ea40500e97ea6a9957de51410835e27
	Show stats since iotop started, not since 'a' was pressed. This is to avoid losing valuable data when 'a' is inadvertently pressed. 

	* iotop/ui.py: Modified.

2011-03-13  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c5460be175a12c57cf93e0dc22a710b27215ca14
	Force UTF-8 output even if the locale is not set to UTF-8. At worst it will output garbage, which is better than crashing in this case. 

	* iotop/ui.py: Modified.

2011-01-16  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7f1773e7e9ddbb7065b86e1d7654e5ee99c0db0d
	Fix netlink message parsing to accept alignement padding. https://lkml.org/lkml/2010/12/13/176 https://lkml.org/lkml/2010/12/29/237 

	* THANKS: Modified.
	* iotop/data.py: Modified.
	* iotop/genetlink.py: Modified.

2010-12-15  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: a7334ca32616c1301154a7e4c5d499c225fb9885
	Removing dead code 

	* iotop/data.py: Modified.

2010-12-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7a4572243e09420c148d46ec79840a4af32a06a4
	Grammar 

	* NEWS: Modified.

2010-12-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 70fde8d8206707f16ae7a78760f1f152e9fb9a3c
	Version bump 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2010-12-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 8d0fffea6834020888dcb1b9b50134d88101a19b
	Try to do without install-rpm.sh 

	* MANIFEST.in: Modified.
	* install-rpm.sh: Delete file.
	* setup.cfg: Modified.

2010-12-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ee1993d37e8e629880973256026cc2ffd496a8b1
	With addstr instead of insstr we get a harmless exception when writing on the last column. Confirmed by http://ubuntuforums.org/showthread.php?t=457689 addstr() raises an exception but the string is printed anyway 

	* iotop/ui.py: Modified.

2010-12-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 52d4e2b93b26d0676451f15e476e651ef3afa490
	Back to addstr because of: http://marc.info/?l=ncurses-bug&m=125233342917443&w=3 insstr (from ncursesw) UTF-8 issue => The cursor position was not updated for wide characters by insstr() 

	* iotop/ui.py: Modified.

2010-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: fd777609be1caa89e3a93145c9da7d40e8719a08
	Revert "Some distributions have a default distutils prefix which is not in sys.path, so installed modules cannot be imported." This reverts commit d0812c2024a1f8edb081a2996af12efacdf8c961. Actually I don't think this is needed for now. 

	* bin/iotop: Modified.

2010-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: d0812c2024a1f8edb081a2996af12efacdf8c961
	Some distributions have a default distutils prefix which is not in sys.path, so installed modules cannot be imported. To address that, explicitely add the path where the module is supposed to be installed to sys.path. 

	* bin/iotop: Modified.

2010-09-04  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c18a6968dca392b1a19b60930494184cbb159732
	Support for getting and setting IO priority on armel and hppa architectures. 

	* THANKS: Modified.
	* iotop/ioprio.py: Modified.

2010-09-04  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 08211d209ae8fc7e67ea3bebb09979ff61c70f97
	Instead of assuming the pid field is 4 bytes long, take its length from the header. This is needed for http://lkml.org/lkml/2010/2/12/167 [PATCH] delayacct: align to 8 byte boundary on 64-bit systems 

	* THANKS: Modified.
	* iotop/data.py: Modified.

2010-08-22  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 12fe7daf5ffa5f569b15284e411fb518d704a765
	Fix traceback with an invalid locale. Closes: http://bugs.debian.org/593846 

	* iotop/ui.py: Modified.

2010-06-27  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0047ff549bb55e260fa562a47dc6aa3b3b7757dd
	Bump version 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2010-06-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0e0eef5b5ceb33e4edbeb8737ad032954f82f963
	We no longer use setuptools. 

	* MANIFEST.in: Modified.

2010-06-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c6b21467dad6ea288947ded3fd54ca2468ea581d
	Document the competition 

	* iotop.1: Modified.

2010-06-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 6b68cce793f62d4d0b01e94ff741f6b2cdd33cda
	Whitespace fixes 

	* iotop/data.py: Modified.

2010-06-26  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 456fbed70e1c7ab467527e23270e600e1739bc49
	Document the requirement for CONFIG_VM_EVENT_COUNTERS and check for it on startup. Closes: http://bugs.debian.org/574346 

	* README: Modified.
	* iotop.1: Modified.
	* iotop/data.py: Modified.

2010-06-26  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: e1ebbbce59ee07b045c4b367e8cf656520cd6b43
	Do not report requirements that are available. Closes: http://bugs.debian.org/574246 

	* iotop/data.py: Modified.

2010-06-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 43f62aee34ba2ca4cb7117aa239c095039e1b4b5
	Build the source distribution using ./setup.py sdist 

	* release.sh: Modified.

2010-06-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 5815d7be4240136f4f07c7509759f51d9bfe08ca
	Make sure to bundle all files in the source distribution 

	* MANIFEST.in: Modified.

2010-06-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 6352c688e610b6c3c2fa17c1e4ba47457008d7f3
	Added GPLv2+ headers 

	* iotop.py: Modified.
	* iotop/data.py: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/ui.py: Modified.
	* iotop/vmstat.py: Modified.

2010-04-27  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 2c75577b33981762c05f5f77baaca232f3c59f37
	Johannes relicensed pynl80211 to GPL version 2 or later. 

	* iotop/genetlink.py: Modified.
	* iotop/netlink.py: Modified.

2010-04-26  Jiri Olsa  <jolsa@redhat.com>

	COMMIT: f65457538767fdfc47a2bada0a9e0564daedddfa
	This broke on ppc64. Let's make U32Attr consistent with u32(). 

	* iotop/netlink.py: Modified.

2010-01-11  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 416f4c9419a7b5ecf3f1b3dcf366217b072ae79e
	Bump the version number 

	* iotop/version.py: Modified.

2010-01-11  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 5affe3cbb03d92e885f96aa4f117a741408a4560
	Bring back the building of RPMs and integration of the ChangeLog 

	* release.sh: Modified.
	* setup.cfg: Modified.

2010-01-11  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 838b12c26d73ae5a0699271fe0e377d7beced0d2
	Stopped using setuptools in favor of straight distutils 

	* NEWS: Modified.
	* install-rpm.sh: Modified.
	* setup.cfg: Modified.
	* setup.py: Modified.
	* setuptools-0.6c9-py2.4.egg: Delete file.

2010-01-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 117e6bc4c9c00244198f62ea575f01a4e622548b
	Negative sizes shouldn't ever happen, but let's handle them gracefully anyway. 

	* iotop/ui.py: Modified.

2009-12-13  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b76e492ce5dbdecb198109e1bbc77aad909a0a67
	Added missing "flags" param to libc.send. 

	* iotop/netlink.py: Modified.

2009-12-13  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 22fca071ab11fac5b8869192e437a4394bc06d18
	Document the new python requirements 

	* README: Modified.
	* iotop/data.py: Modified.

2009-12-13  Jiri Olsa  <jolsa@redhat.com>

	COMMIT: bed5a7472b8452b667a9d5e2a51a5ada345aaccc
	Compatibility with python2.4 using the ctypes module 

	* NEWS: Modified.
	* THANKS: Modified.
	* iotop/data.py: Modified.
	* iotop/netlink.py: Modified.

2009-12-13  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: edeb96940fd07a76864bf971b24b080fec1627e6
	80 columns 

	* iotop/genetlink.py: Modified.

2009-12-13  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 977b8a4fc2f80fbd26ace7cace0525437e95b6c7
	Untabify 

	* iotop/genetlink.py: Modified.
	* iotop/netlink.py: Modified.

2009-12-13  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 71e2eee318328695afba7c1a0906877197eda542
	Don't use all() as it was introduced in python-2.5 

	* iotop/data.py: Modified.

2009-11-05  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 63c97f098daadb1fc0773bbb4210ddeadf7d8dd5
	Fix a crash were iotop could open /proc/PID/status but not read it as the process disappeared by then. 

	* THANKS: Modified.
	* iotop/data.py: Modified.

2009-09-26  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 16b28dd3c6ad6e908fa39c8967f659f7285e574a
	Default to 0 instead of None 

	* iotop/ui.py: Modified.

2009-09-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e0277ae60b0520fab315f654e48745cfda5df37f
	commit d4cab23b1c8c2f91ae7b353087bc60e7659620ef broke iotop -o 

	* iotop/data.py: Modified.

2009-09-06  Paul Wise  <pabs@debian.org>

	COMMIT: b8bf63094a8903004126c8293d1874ad0565e68a
	Implement ionice functionality (Closes: http://bugs.debian.org/535969 

	* NEWS: Modified.
	* iotop.1: Modified.
	* iotop/data.py: Modified.
	* iotop/ioprio.py: Modified.
	* iotop/ui.py: Modified.

2009-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 85dbe9f9763c02f0e505fc2a3d78bc5c131b847a
	ioprio.sort_key() expects keys starting with '?' to be at least two character long. It was not the case when different threads in the same process had different ionice values, so adjust the ionice key in this case. Bug reported by: Paul Wise <pabs@debian.org> 

	* iotop/data.py: Modified.

2009-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 74795c4864a748285c3b38b29011a705b3c7585b
	Make it even more obvious that something is wrong when CONFIG_TASK_DELAY_ACCT is missing 

	* iotop/ui.py: Modified.

2009-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 01a729d66df32955b624949cf1116f99e74574ac
	Detect python-2.5 before importing incompatible stuff 

	* iotop/data.py: Modified.

2009-08-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 4d3a22562c99eb2a672108c45bbe80681c0889fd
	Turns out returning a list is faster than iterating. 

	* iotop/data.py: Modified.

2009-08-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: d4cab23b1c8c2f91ae7b353087bc60e7659620ef
	Some more minor optimizations 

	* iotop/data.py: Modified.

2009-08-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 8722e924e33ae715cf41d185424f9619f0cfb4d5
	Optimize Stats.__init__ so that Stats.accumulate can be cleaned up 

	* iotop/data.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: d8e7211dad8a8528909e7fe3a55f671a4104325d
	Gracefully handle disappearing PIDs 

	* iotop/data.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0a4fd9f5a719779ce105240b6d2dae2e1f3ec73e
	Faster ui.human_size() 

	* iotop/ui.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 32a2919dbf95199b5225bc7c61e79d6d4b954721
	Faster ProcessList.list_dir() 

	* iotop/data.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: faa02fd2b6bdfc7c41b71ef6635314e23b19d50f
	Optimization: call getpriority() instead of reading /proc 

	* iotop/ioprio.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 9cd1a1d509d8966e454a8222d08469106ed9b9b5
	Finish the implementation of the UID cache... by actually caching the UID 

	* iotop/data.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 64315f53e1729b4664c0010fce55490fe245b5bd
	80 columns 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 608df9c3e4880c6d38b94f37e976b5f15fa69ced
	Cache the taskstats request in the thread_info as building it every time is a hotspot 

	* iotop/data.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 1d1c89c10746ba378a7f027a676c13d0a421e874
	Optimize even further the hotspot by unrolling the loop and keeping the __dict__ objects in local variables. 

	* iotop/data.py: Modified.

2009-08-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b37a69a71fece0531f922cd9fd257a50f2064fa7
	Optimize even further Stats.accumulate as it's a hotspot: don't create a new Stats object everytime on every invocation, keep updating the same object. 

	* iotop/data.py: Modified.

2009-08-23  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 96e339369f7ee071fe76ae72ad2a7df9df249f84
	Added a heuristic to detect kernels without CONFIG_TASK_DELAY_ACCT 

	* NEWS: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2009-08-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 17964bc0283179f4cae347acd8ff6d5c632dfd72
	Use .__dict__ instead of [gs]etattr as it's slightly faster. 

	* iotop/data.py: Modified.

2009-08-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 3adc104f2793fb8fdaf17995c27c2069ac9f6fab
	Use insstr instead of addstr so that we can write in the last column, but this means we have to be careful not to add trailing garbage as it would appear on the next line. 

	* iotop/ui.py: Modified.

2009-08-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: a75927328c23016e9842f3ac51508cc1e7780034
	Split long command lines in the middle instead of cutting them at the end. 

	* NEWS: Modified.
	* iotop/ui.py: Modified.

2009-08-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e3a4dd4b03229b08677c745cc102c66cae969200
	Bump version. 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2009-06-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e4a321aa5568ec7fd1f7bc6f4fcda7753aee2e06
	Stop building RPMs after my move to Ubuntu 

	* release.sh: Modified.

2009-06-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: fc400959c302d1d454dce151067e93871774b407
	Fixed column sorting with --accumulated 

	* NEWS: Modified.
	* iotop/ui.py: Modified.

2009-06-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ab82fb3689bcec835cd9ab925dbed795b2b84241
	Fixed interaction between --accumulated and --only 

	* NEWS: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2009-06-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: d9a86a8281cac24cfd2d529ebcf5bb968fdbabfc
	Version bump and start documenting new features 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2009-05-19  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: a4ff473b51503ffcc2763640e2dc573ec5b3d045
	Fixed ioprio_get syscall detection on i386 userspace/x86_64 kernel (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=529429) 

	* THANKS: Modified.
	* iotop/ioprio.py: Modified.

2009-05-05  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: e92c5dec67027a4b830004613c5c5f3aa1946caf
	Include a light README 

	* MANIFEST.in: Modified.
	* README: New file.
	* setup.cfg: Modified.

2009-05-05  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 17fd9caac1443b2a45f75c7659e804a2d76c3c02
	Escape even more minus signs in the iotop manual page 

	* iotop.1: Modified.

2009-05-05  Paul Wise  <pabs3@bonedaddy.net>

	COMMIT: 74b3ffb181d14fe049ab355270bd2e8c9b8becb6
	Escape some more minus signs in the iotop manual page 

	* iotop.1: Modified.

2009-05-04  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 812dfd00930551f9813a87d4376fe82ee61db90d
	Added --quiet 

	* NEWS: Modified.
	* THANKS: Modified.
	* iotop.1: Modified.
	* iotop/ui.py: Modified.

2009-05-03  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 80be53debd4813137e35b090b7c263e8991ae04f
	Added --time 

	* NEWS: Modified.
	* THANKS: Modified.
	* iotop.1: Modified.
	* iotop/ui.py: Modified.

2009-05-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0c09082408e5074ffda3ee1baced6940d40c77b1
	Added the -k, --kilobytes option 

	* NEWS: Modified.
	* iotop.1: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2009-05-02  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: bfeb6a966f2e2dfb40f56b20f42d19cda8096f0e
	Upgrade setuptools from 0.6c6 to 0.6c9 

	* MANIFEST.in: Modified.
	* setup.py: Modified.
	* setuptools-0.6c6-py2.4.egg: Delete file.
	* setuptools-0.6c9-py2.4.egg: New file.

2009-03-31  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 62b79a7d7806904060e0e9f9d864c63a10cec83b
	Include a ChangeLog in the release 

	* MANIFEST.in: Modified.
	* release.sh: Modified.
	* setup.cfg: Modified.

2009-03-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ddcbfdedad13ef0645eb7368c27401fd9b47b0ba
	Put kernel threads between square brackets 

	* iotop/data.py: Modified.

2009-03-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 992ae9ccc6fabe660e3c02c27ab840338b8d90c2
	Properly sanitize the value in the error report 

	* iotop/ui.py: Modified.

2009-03-30  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 6246306c293e1ab8813e5881bab2c3391f11447a
	- Added the --accumulated option to show the accumulated traffic instead of the current bandwidth (dynamically toggled with 'a') - Resist to process dying during the taskstats retrieval - Adjusted column headers 

	* NEWS: Modified.
	* iotop.1: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2009-03-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: dd304006b3ca901eb5cc55e2a8105ed76641ea6c
	Document some recent changes 

	* NEWS: Modified.

2009-03-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 077c9974ebbc0e453942a4a0ab5f56c040e0c15e
	- Manage a two level tree of processes: o with --processes: [tgids...] -> [tid...] o without: [tids...] -> [tid] => This handles nicely the case where a thread dies during a sampling period and we should drop its stats. - Don't cache the ioprio as it may change - Get the total I/O bandwidth from /proc/vmstat instead of summing it, as we can count some of it twice (ntfs-3g, nfsd...) 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.
	* iotop/vmstat.py: New file.

2009-03-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 68e288e5cddc91fe0b5f0d33d0b896ad1cdb2c30
	Added --profile 

	* iotop/ui.py: Modified.

2009-03-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 47ab7d5447594a8a8b15361861abe4d52b5b7915
	Don't crash when a thread just disappeared 

	* iotop/data.py: Modified.

2009-03-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 60b57d43037261874313f8e5a42b6f8148d1b88c
	Better UID detection: read it from stat(/proc/PID) instead of /proc/PID/status and cache it only if not running as root as the process may setuid(). Rewrite check_if_valid() to is_monitored(). Also re-read /proc/PID/status if needed when re-reading /proc/PID/cmdline. 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2009-01-31  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 5be2a70fcffefacf1a5695bd0d2d2edc51ffa2f1
	From: Ryan Lovett <ryan@stat.berkeley.edu> When running in batch mode, iotop doesn't flush its output so if you're writing to a file, you won't see anything (e.g. via 'tail -f') until iotop terminates 

	* THANKS: Modified.
	* iotop/ui.py: Modified.

2008-12-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: dbe96013c5472dcc3d33af2015373dbaf3e38ea7
	Add a meaningful __repr__() 

	* iotop/data.py: Modified.

2008-12-29  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: f13f64b771b765017cc87f14933ca94a1a23d437
	If a new pinfo() is successfully created but we cannot get its taskstats, it will not have a .ioprio field, so it must be garbage collected. So, initialize .mark to False so that incompletely built objects are garbage collected. Traceback (most recent call last): File "./iotop.py", line 11, in <module> main() File "/home/g/iotop/iotop/ui.py", line 271, in main curses.wrapper(run_iotop, options) File "/usr/lib/python2.5/curses/wrapper.py", line 44, in wrapper return func(stdscr, *args, **kwds) File "/home/g/iotop/iotop/ui.py", line 226, in run_iotop ui.run() File "/home/g/iotop/iotop/ui.py", line 97, in run self.process_list.duration) File "/home/g/iotop/iotop/ui.py", line 195, in refresh_display lines = self.get_data() File "/home/g/iotop/iotop/ui.py", line 183, in get_data return map(format, processes) File "/home/g/iotop/iotop/ui.py", line 167, in format line = '%5d %4s %-8s %11s %11s %7s %7s ' % (p.pid, p.ioprio, AttributeError: 'pinfo' object has no attribute 'ioprio' 

	* iotop/data.py: Modified.

2008-12-28  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 322ba0c1985b22723a16195e6e471edf6dbcfce1
	The I/O priority can be dynamically changed, so we must re-fetch it every time. 

	* iotop/data.py: Modified.

2008-12-28  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 6dc98747019189d8b9e880f9a31d7c6aa41a8c0c
	Added the 'p' key to dynamically toggle the --processes option 

	* iotop.1: Modified.
	* iotop/ui.py: Modified.

2008-12-25  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: f86ce2c7f7bb522d04370abf23308905044b3f8b
	The interactive control 'O' is the same as 'o'. 

	* iotop/ui.py: Modified.

2008-12-25  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 033efe8e816a5ac952a8e235fc9379bc1442d380
	Added support for showing the I/O priority 

	* iotop.1: Modified.
	* iotop/data.py: Modified.
	* iotop/ioprio.py: New file.
	* iotop/ui.py: Modified.

2008-12-23  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7915eb4181467e73b6bec5fa4c76bb6d4daf8979
	More verbose error handling for this exception: Traceback (most recent call last): File "./iotop.py", line 11, in <module> main() File "/src/iotop/iotop/iotop/ui.py", line 249, in main curses.wrapper(run_iotop, options) File "/usr/lib64/python2.5/curses/wrapper.py", line 44, in wrapper return func(stdscr, *args, **kwds) File "/src/iotop/iotop/iotop/ui.py", line 205, in run_iotop ui.run() File "/src/iotop/iotop/iotop/ui.py", line 95, in run self.process_list.duration) File "/src/iotop/iotop/iotop/ui.py", line 198, in refresh_display self.win.addstr(i + 2, 0, lines[i].encode('utf-8')) _curses.error: addstr() returned ERR 

	* iotop/ui.py: Modified.

2008-11-16  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 857752d5b00b8e84e95056fe6c983d003820169e
	Also keep only 2 decimal digits when printing bytes per second 

	* iotop/ui.py: Modified.

2008-09-07  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: cc3298f082af8e293456a8f38e61d1fd7118b5db
	Version bump and mention that -P is now fully implemented 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2008-09-07  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 0c1eae04a9ae5fa796caa820a04cea0d40cb651e
	Clarify -p help text, and cosmetically add a terminating '.'. 

	* iotop.1: Modified.
	* iotop/ui.py: Modified.

2008-09-07  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: a848c1c051d42ebc5a0cc6b963a32fa9be3d4370
	iotop is a mix of top(1) and vmstat(1) 

	* iotop.1: Modified.

2008-09-07  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 82a8182c223964040fac82e0effa14bca74f3645
	Precisely document required kernel options http://bugs.debian.org/497360 

	* iotop.1: Modified.
	* iotop/data.py: Modified.

2008-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: d710a1076868d8a95c856c75f4532d7a21926640
	Reimplement -P without using the half implemented TASKSTATS_CMD_ATTR_TGID 

	* iotop/data.py: Modified.

2008-09-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 539a70a836e699b43e7eaac7413e5113b50638bb
	Cleanup: introduce a Stats class to aggregate the useful output from taskstats insteaf of using a dict. 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2008-08-18  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b92b65f1887c016a5258da0a348285b26b435532
	It seems the Name: field can sometimes be empty. http://bugs.debian.org/492568 

	* iotop/data.py: Modified.

2008-08-18  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: bad819b58937f106a0c435a5390e14a5410c2dda
	Cosmetic 

	* iotop/data.py: Modified.

2008-07-07  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7f9b7b4d0ebfb04852027d55778ac7f15a4d0ad2
	The new features list is not that long 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2008-06-24  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: c1c5ed931d6937c03e6c905ac337f94c3e0eb26d
	Also handle invalid UTF-8 

	* iotop/data.py: Modified.

2008-06-23  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 908b18bf6e1e7672386d112f09dd12471e8234ec
	Unlike insstr, addstr is picky about lines wider than the terminal. 

	* iotop/ui.py: Modified.

2008-06-23  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b9b922a5216ca4608d84d089ee32c2e116458dbd
	Try harder at handling UTF-8 

	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2008-06-18  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: dddfb6ec90321c35416c6252e72ef007efeff797
	UTF-8 strings are now correctly handled. 

	* NEWS: Modified.
	* THANKS: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2008-06-18  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ac16150ef9abf4bd7e91b7dcefe58276f4281d27
	Bump version 

	* NEWS: Modified.
	* iotop/version.py: Modified.

2008-05-28  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7b2f5ab0f4ad500947b18c2760950a5d5840569a
	Fix for http://lintian.debian.org/reports/tags/hyphen-used-as-minus-sign.html 

	* iotop.1: Modified.

2008-05-23  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 35c19edb32e1698bb79320fbbac57ee08ce46df4
	Package the man page 

	* MANIFEST.in: Modified.
	* install-rpm.sh: New file.
	* setup.cfg: Modified.
	* setup.py: Modified.

2008-05-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 67e2c5ccf757cbf9b705425c0cfe491aabfeda46
	Reordered the option like in the man page, as it's a more sensible ordering 

	* iotop/ui.py: Modified.

2008-05-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: dc05a018107e10ef7457ee972f12f16d0424e892
	Added a man page 

	* THANKS: Modified.
	* iotop.1: New file.

2008-05-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 1e041894a125db58e58383cc1dcb177cad8cc95c
	Safer color terminal handling 

	* iotop/ui.py: Modified.

2008-05-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: dea87c55c7f84aed96e262dd07bb92ba254c146e
	Stop flickering during refresh 

	* iotop/ui.py: Modified.

2008-05-22  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: d750dc491b9dca73b893d44ac53f552e9fc3ab5e
	Added workaround for missing ac_etime in TASKSTATS_CMD_ATTR_TGID 

	* NEWS: Modified.
	* iotop/data.py: Modified.
	* iotop/ui.py: Modified.

2008-04-20  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 6464e8102191bb32e80ffe81f631aff1b655df60
	Typo 

	* NEWS: Modified.

2008-04-20  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 3b93b29696e7138f68aab795767c2fd90fd03b3e
	Document the 'o' key. 

	* iotop/ui.py: Modified.

2008-04-20  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: b19744e84a0b7aac928469259fd2566ac35d5dc9
	Consistency in the grammar 

	* iotop/ui.py: Modified.

2008-04-20  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: bad61311be00e3fe4bb00dcfbd35d9829939613a
	Filter processes to display before trimming them to avoid removing processes that would be displayed after the trimming. For example, sorting by PID could place I/O active processes at the end, but we don't want to delete them as they would be shown anyway is -o is used. 

	* iotop/ui.py: Modified.

2008-04-06  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: ae5dc4c4f7b7ed29ac1f38d32826d4f2e853b302
	Typing 'p' dynamically toggle the --only option 

	* NEWS: Modified.
	* iotop/ui.py: Modified.

2008-03-20  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 019714edc2f8512bcfb7a31fa34b9413799b2429
	Detect unsuccessful attempts at running an uninstalled iotop 

	* bin/iotop: Modified.

2008-03-14  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 24284fedefd6e6a28bbed085beea0fe88a9302b2
	Let's use the obvious filename 

	* run-iotop: Move to...
	* iotop.py: ... here.

2008-03-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 7e19c7eea2765d64d32f87ede79f0b424ca89309
	Remove blank line 

	* release.sh: Modified.

2008-03-10  Guillaume Chazarain  <guichaz@gmail.com>

	COMMIT: 9073259b8692659b1a845587f29d9115efd8f532
	Added release script 

	* release.sh: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: a19ed6e4874974637e714ba46571c8153cb3b36f
	Added packaging information 

	* MANIFEST.in: New file.
	* bin/iotop: New file.
	* setup.cfg: New file.
	* setup.py: New file.
	* setuptools-0.6c6-py2.4.egg: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: b44995bd50421bde621d8cc293fca05f868a7a97
	Extracted out version number 

	* iotop/ui.py: Modified.
	* iotop/version.py: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 361f676510dfb5ddc652e773614912cd60400a8b
	Added GPLv2 COPYING file 

	* COPYING: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: a867aeb5b59f65215db27120c0c78661509cccff
	Added THANKS file 

	* THANKS: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 10899f31268e42e8c54179912d17a4b197155e55
	Ignore byte compiled files 

	* .gitignore: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 7285cb6a19ffcf2ff60550726502834505c8a6b2
	Added NEWS file 

	* NEWS: New file.

2008-03-09  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 89b1ff115f93ad4e80da0a925ec0836069053095
	Code reorganization 

	* iotop/__init__.py: New file.
	* iotop/data.py: New file.
	* genetlink.py: Move to...
	* iotop/genetlink.py: ... here.
	* netlink.py: Move to...
	* iotop/netlink.py: ... here.
	* iotop.py: Move to...
	* iotop/ui.py: ... here.
	* run-iotop: New file.

2008-03-05  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 9d8b84ea0acc6c096efdc76dc1d12828bc8e0f86
	Instead of copy/pasting pynl80211 in iotop.py, keep it in separate files 

	* genetlink.py: New file.
	* iotop.py: Modified.
	* netlink.py: New file.

2008-03-05  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: af2fdc24f45c0d7ea87c6f472ced6a1307101e10
	Update e-mail and copyright information 

	* iotop.py: Modified.

2008-03-05  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: dac2d948248567c3c7eaac913152e1f8f0154308
	Reading the cmdline of a dead process raises an exception too. Reported by Roland Kletzing <devzero@web.de> 

	* iotop.py: Modified.

2008-03-02  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: b58b80c3234bc33e081bca58eb1284d0b400688a
	Skip the dirname only when the cmdline starts with an absolute path 

	* iotop.py: Modified.

2008-01-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 65cd5458e154b60ed77e90ba2f101d523148890d
	Fix the typo with the right correction this time 

	* iotop.py: Modified.

2008-01-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 97c17acdbd70db53d44d2516109a1303eecbeeec
	Simplify help generation 

	* iotop.py: Modified.

2008-01-18  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 20e1889a11cf3d4c92c1ba914d55cdfbb4782814
	Bump version 

	* iotop.py: Modified.

2008-01-18  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 3e1758b80e7f463927503af1501c33fd6096f4d2
	Removed embedded history comments as it is now in git. 

	* iotop.py: Modified.

2008-01-18  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 29d3a62a7d407a8c7e32414fd962793baad6db5b
	Added --only as suggested by Iain Lea <iain@bricbrac.de> 

	* iotop.py: Modified.

2008-01-18  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: bff9f74a5fa287b35f71af84f6fb240f89da5147
	Fix typo, reported by Iain Lea <iain@bricbrac.de> 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: db698ba1d0ffef8b48184be2dbd6fd5f12b418da
	Tolerate misconfigured terminals 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: fb76fd792d396173462fd3415e8008280e91fd23
	Fixed -b 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 113164fba59fc73f230f937c6b38f158d22792f5
	Document taskstats bug: http://lkml.org/lkml/2007/8/2/185 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 0208bc5f5555718a5086749e0d35dbae501838d6
	Handle terminal resizing 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 8f3c1714c6c5f9a393afb35e61fa03912944875e
	More accurate cutting of the command line 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 646054f9ddb7bc5305e1459e6bb9116a267d7f20
	handle empty process list 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: e053bec62bb507664e91245ab02d68138e3dfe3f
	Fix "-P -p NOT_A_TGID", optimize -p 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: 37867216b4734a8e81737abd5e2dfe7a3f6d8c42
	Handle short replies, and fix bandwidth calculation when delay != 1s 

	* iotop.py: Modified.

2007-12-20  Guillaume Chazarain  <guichaz@yahoo.fr>

	COMMIT: e7ea797a9ea0737303aed3f4765b60b9dfb2d914
	Added support for taskstats version > 4 in iotop.py 

	* iotop.py: Modified.

