ChangeLog 17.9 KB
Newer Older
1

Hisham's avatar
Hisham committed
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
What's new in version 2.0.1

* OpenBSD: Various fixes and improvements
  (thanks to Michael McConville and Juan Francisco Cantero Hurtado)
* FreeBSD: fix CPU and memory readings
  (thanks to Tim Creech, Hung-Yi Chen, Bernard Spil, Greg V)
* FreeBSD: add battery support
  (thanks to Greg V)
* Linux: Retain last-obtained name of a zombie process
* Mac OS X: Improve portability for OS X versions
  (thanks to Michael Klein)
* Mac OS X: Fix reading command-line arguments and basename
* Mac OS X: Fix process state information
* Mac OS X: Fix tree view collapsing/expanding
* Mac OS X: Fix tree organization
* Mac OS X: Fix memory accounting
* Fix crash when emptying a column of meters
* Make Esc key more responsive

Hisham's avatar
Hisham committed
21
What's new in version 2.0.0
Hisham Muhammad's avatar
Hisham Muhammad committed
22

23
* Platform abstraction layer
Hisham Muhammad's avatar
Hisham Muhammad committed
24
* Initial FreeBSD support
25
26
* Initial Mac OS X support
  (thanks to David Hunt)
Hisham Muhammad's avatar
Hisham Muhammad committed
27
28
29
30
31
32
* Swap meter for Mac OSX
  (thanks to Ștefan Rusu)
* OpenBSD port
  (thanks to Michael McConville)
* FreeBSD support improvements
  (thanks to Martin Misuth)
33
34
* Support for NCurses 6 ABI, including mouse wheel support
* Much improved mouse responsiveness
Hisham's avatar
Hisham committed
35
36
* Process environment variables screen
  (thanks to Michael Klein)
37
38
39
40
* Higher-resolution UTF-8 based Graph mode
  (Thanks to James Hall from vtop for the idea!)
* Show program path settings
  (thanks to Tobias Geerinckx-Rice)
Hisham Muhammad's avatar
Hisham Muhammad committed
41
* BUGFIX: Fix crash when scrolling an empty filtered list.
42
43
* Use dynamic units for text display, and several fixes
  (thanks to Christian Hesse)
Hisham Muhammad's avatar
Hisham Muhammad committed
44
45
* BUGFIX: fix error caused by overflow in usertime calculation.
  (thanks to Patrick Marlier)
Hisham's avatar
Hisham committed
46
47
* Catch all memory allocation errors
  (thanks to Michael McConville for the push)
48
49
* Several tweaks and bugfixes
  (See the Git log for details and contributors!)
Hisham Muhammad's avatar
Hisham Muhammad committed
50

Hisham Muhammad's avatar
Hisham Muhammad committed
51
52
What's new in version 1.0.3

53
* Tag all children ('c' key)
54
55
* Fixes in accounting of guest time when using virtualization
  (thanks to Patrick Marlier)
Hisham Muhammad's avatar
Hisham Muhammad committed
56
57
* Performance improvements
  (thanks to Jann Horn)
58
59
* Further performance improvements due to conditional parsing
  of IO data depending on selected fields.
Hisham Muhammad's avatar
Hisham Muhammad committed
60
61
* Better consistency in coloring.
* Increase limit of buffer when tracing a deep nested process tree.
62
* Display pagefault stats.
63
64
* BUGFIX: Fix crash when adding meters and toggling detailed CPU time.
  (thanks to Dawid Gajownik)
Hisham Muhammad's avatar
Hisham Muhammad committed
65
66
* Add column to track the OOM-killer score of processes
  (thanks to Leigh Simpson)
Hisham Muhammad's avatar
Hisham Muhammad committed
67

68
69
What's new in version 1.0.2

70
* Add IO priority support ('i' key)
71
* Avoid deleting .htoprc if it is a symlink
72
73
* Fail gracefully when /proc is not mounted
  (thanks to Philipp Hagemeister)
74
75
* Option to update process names on every refresh
  (thanks to Rob Hoelz)
76
77
* BUGFIX: Fix crashes when process list is empty

78
79
What's new in version 1.0.1

Hisham Muhammad's avatar
Hisham Muhammad committed
80
81
82
* Move .htoprc to XDG-compliant path ~/.config/htop/htoprc,
  respecting $XDG_CONFIG_HOME 
  (thanks to Hadzhimurad Ustarkhan for the suggestion.)
83
* Safer behavior on the kill screen, to make it harder to kill the wrong process.
84
85
* Fix for building in FreeBSD 8.2
  (thanks to Trond Endrestol)
86
87
* BUGFIX: behavior of 'F' (follow) key was broken, also affecting the
  persistence of mouse selections.
88
89
90
* BUGFIX: keep main panel up-to-date when running the screen manager,
  to fix crash when processes die while on the F9/Kill screen.

91
What's new in version 1.0
92

93
94
95
* Performance improvements
* Support for splitting CPU meters into two or four columns
  (thanks to Wim Heirman)
Hisham Muhammad's avatar
Hisham Muhammad committed
96
* Switch from PLPA, which is now deprecated, to HWLOC.
97
98
* Bring back support for native Linux sched_setaffinity,
  so we don't have to use HWLOC where we don't need to.
Hisham Muhammad's avatar
Hisham Muhammad committed
99
* Support for typing in user names and column fields in selection panels.
100
101
* Support for UTF-8 tree drawing
  (thanks to Bin Guo)
102
103
104
* Option for counting CPUs from zero
  (thanks to Sean Noonan)
* Meters update in every screen (no longer halting while on Setup, etc.)
105
106
* Stricter checks for command-line options
  (thanks to Sebastian Pipping)
Hisham Muhammad's avatar
Hisham Muhammad committed
107
108
* Incremental filtering
  (thanks to Seth Heeren for the idea and initial implementation)
109
110
* Try harder to find the ncurses header
  (thanks to Moritz Barsnick)
Hisham Muhammad's avatar
Hisham Muhammad committed
111
112
* Man page updates
  (thanks to Vincent Launchbury)
113
114
* BUGFIX: Support larger numbers for process times.
  (thanks to Tristan Nakagawa for the report.)
115
116
* BUGFIX: Segfault in BarMeterMode_draw() for small terminal widths
  (patch by Sebastian Pipping)
117

118
What's new in version 0.9
Hisham Muhammad's avatar
Hisham Muhammad committed
119

Hisham Muhammad's avatar
Hisham Muhammad committed
120
121
* Add support for "steal"/guest CPU time measurement
  in virtualization environments
122
* Expand and collapse subtrees using '+' and '-' when in tree-view
123
124
* Support for cgroups
  (thanks to Guillaume Zitta and Daniel Lezcano)
Hisham Muhammad's avatar
Hisham Muhammad committed
125
126
* Show custom thread names
  (thanks to Anders Torger)
Hisham Muhammad's avatar
Hisham Muhammad committed
127
128
* Add support for STARTTIME field
* Upgrade PLPA to version 1.3.2
Hisham Muhammad's avatar
Hisham Muhammad committed
129
130
* Fix license terms with regard to PLPA
  (thanks to Tom Callaway)
131
132
* getopt-based long options and --no-color
  (thanks to Vincent Launchbury)
133
134
* BUGFIX: Fix display of nan% in CPU meters
  (thanks to Steven Hampson)
135
136
137
138
* BUGFIX: Fix memory leak
  (thanks to Pavol Rusnak)
* Add Bash/emacs style navigation keys
  (thanks to Daniel Schuler)
139
140
* Improve battery meter support
  (thanks to Richard W.)
141
142
143
144
145
* BUGFIX: Fix IO-wait color in "Black on White" scheme
* BUGFIX: Fix search by process name when list is filtered by user.
  (thanks to Sergej Pupykin for the report.)
* BUGFIX: Fix alignment for display of memory values above 100G (sign of the times!)
  (thanks to Jan van Haarst for the report.)
Hisham Muhammad's avatar
Hisham Muhammad committed
146

147
What's new in version 0.8.3
148

149
150
* BUGFIX: Fix crash on F6 key
  (thanks to Rainer Suhm)
151
152
* BUGFIX: Fix a minor bug which affected the build process.

153
154
What's new in version 0.8.2

Hisham Muhammad's avatar
Hisham Muhammad committed
155
156
157
* Integrated lsof (press 'l')
* Fix display of gigabyte-sized values
  (thanks to Andika Triwidada)
158
* Option to display hostname in the meters area
159
160
* Rename VEID to CTID in OpenVZ systems
  (thanks to Thorsten Schifferdecker)
161
162
* Corrections to the desktop entry file
  (thanks by Samuli Suominen)
Hisham Muhammad's avatar
Hisham Muhammad committed
163
164
165
166
* BUGFIX: Correct page size calculation for FreeBSD systems
  (thanks to Andrew Paulsen)
* Allow compilation without PLPA on systems that don't support it
  (thanks to Timothy Redaelli)
167
168
* BUGFIX: Fix missing tree view when userland threads are hidden
  (thanks to Josh Stone)
169
170
171
* BUGFIX: Fix for VPID on OpenVZ systems
  (thanks to Wolfgang Frisch)

Hisham Muhammad's avatar
Hisham Muhammad committed
172
173
174
What's new in version 0.8.1

* Linux-VServer support
Hisham Muhammad's avatar
Hisham Muhammad committed
175
176
177
178
179
  (thanks to Jonathan Sambrook and Benedikt Bohm)
* Battery meter
  (thanks to Ian Page Hands)
* BUGFIX: Fix collection of IO stats in multithreaded processes
  (thanks to Gerhard Heift)
180
181
* Remove assertion that fails on hardened kernels
  (thanks to Wolfram Schlich for the report)
Hisham Muhammad's avatar
Hisham Muhammad committed
182

Hisham Muhammad's avatar
Hisham Muhammad committed
183
What's new in version 0.8
184

185
186
* Ability to change sort column with the mouse by
  clicking column titles (click again to invert order)
187
188
189
190
* Add support for Linux per-process IO statistics,
  enabled with the --enable-taskstats flag, which
  requires a kernel compiled with taskstats support.
  (thanks to Tobias Oetiker)
191
192
193
* Add Unicode support, enabled with the --enable-unicode
  flag, which requires libncursesw.
  (thanks to Sergej Pupykin)
194
195
196
197
198
199
* BUGFIX: Fix display of CPU count for threaded processes.
  When user threads are hidden, process now shows the
  sum of processor usage for all processors. When user
  threads are displayed, each thread shows its own
  processor usage, including the root thread.
  (thanks to Bert Wesarg for the report)
200
201
202
* BUGFIX: avoid crashing when using many meters
  (thanks to David Cho for the report)

203
204
205
206
207
What's new in version 0.7

* CPU affinity configuration ('a' key)
* Improve display of tree view, properly nesting
  threads of the same app based on TGID.
208
209
210
211
* IO-wait time now counts as idle time, which is a more
  accurate description. It is still available in
  split time, now called detailed CPU time.
  (thanks to Samuel Thibault for the report)
212
213
* BUGFIX: Correct display of TPGID field
* Add TGID field
Hisham Muhammad's avatar
Hisham Muhammad committed
214
215
216
217
* BUGFIX: Don't crash with invalid command-line flags
  (thanks to Nico Golde for the report)
* Fix GCC 4.3 compilation issues
  (thanks to Martin Michlmayr for the report)
218
219
220
221
* OpenVZ support, enabled at compile-time with
  the --enable-openvz flag.
  (thanks to Sergey Lychko)

222
223
What's new in version 0.6.6

224
225
* Add support of NLWP field
  (thanks to Bert Wesarg)
Hisham Muhammad's avatar
Hisham Muhammad committed
226
227
* BUGFIX: Fix use of configurable /proc location
  (thanks to Florent Thoumie)
Hisham Muhammad's avatar
Hisham Muhammad committed
228
229
* Fix memory percentage calculation and make it saner
  (thanks to Olev Kartau for the report)
230
231
232
233
234
235
* Added display of DRS, DT, LRS and TRS
  (thanks to Matthias Lederhofer)
* BUGFIX: LRS and DRS memory values were flipped
  (thanks to Matthias Lederhofer)
* BUGFIX: Don't crash on very high UIDs
  (thanks to Egmont Koblinger)
Hisham Muhammad's avatar
Hisham Muhammad committed
236

237
238
239
240
241
242
243
244
245
246
247
248
What's new in version 0.6.5

* Add hardened-debug flags for debugging with Hardened GCC
* BUGFIX: Handle error condition when a directory vanishes
  from /proc
* BUGFIX: Fix leak of process command line
* BUGFIX: Collect orphaned items when arranging the tree view.
  (thanks to Wolfram Schlich for assistance with debugging)
* Separate proc and memory debugging into separate #defines.
* BUGFIX: Fix message when configure fails due to
  missing libraries
  (thanks to Jon)
249
250
251
* BUGFIX: Don't truncate value when displaying a very large
  process
  (thanks to Bo Liu)
252

253
254
What's new in version 0.6.4

255
256
257
* Add an option to split the display of kernel time
  in the CPU meter into system, IO-wait, IRQ and soft-IRQ.
  (thanks to Philipp Richter)
258
259
260
* --sort-key flag in the command-line, overriding the
  saved setting in .htoprc for the session.
  (thanks to Rodolfo Borges)
261
262
* BUGFIX: Fixed string overflow on uptime display.
  (thanks to Marc Cahalan)
263

Hisham Muhammad's avatar
Hisham Muhammad committed
264
265
What's new in version 0.6.3

266
* Performance improvements: uses much less CPU than the
267
  previous release with the default setup.
268
269
* Use 64-bit values when storing processor times to
  avoid overflow.
270
271
* Memory consumption improvements, compensating storage
  of 64-bit values.
Hisham Muhammad's avatar
Hisham Muhammad committed
272
273
* Internal change: rename TypedVector to Vector and
  ListBox (and related classes) to Panel.
274
275
* Have configure actually fail when needed libraries or
  headers are not found.
276
277
* Horizontally scroll in larger increments when on the
  Linux console because of slow update of unaccelerated fb
278
279
280
281
* No longer untag processes after sending a signal
  (useful for when SIGTERM fails and one wants to try again
  with SIGKILL). All processes can be untagged at once with 'U'.
  (thanks to A. Costa for the suggestion)
Hisham Muhammad's avatar
Hisham Muhammad committed
282

Hisham Muhammad's avatar
Hisham Muhammad committed
283
284
285
286
287
288
289
290
What's new in version 0.6.2

* BUGFIX: Fixed crash when using some .htoprc files from 0.6
  (thanks to Wolfram Schlich and John Thomas for the reports)
* BUGFIX: Ensure changes to color scheme are saved
* BUGFIX: Make configure behave correctly with --with-proc
* Minor addition to .desktop file.

Hisham Muhammad's avatar
Hisham Muhammad committed
291
292
What's new in version 0.6.1

Hisham Muhammad's avatar
Hisham Muhammad committed
293
294
295
296
* New meter type: "All CPUs", which dynamically adjusts
  to the number of CPUs present in the machine. Note that
  because of this, older versions of htop may crash when
  using an .htoprc file modified my the newer version.
297
298
299
* Accept --with-proc=<dir> in configure, to specify
  alternative procfs locations (making htop friendlier
  to the Linux compatibility layer in FreeBSD)
Hisham Muhammad's avatar
Hisham Muhammad committed
300
301
302
303
304
305
306
* Included icon .desktop and desktop entry
  (thanks to Peter Hyman)
* Added a check to make sure that a root-user htop closes
  when its parent non-root terminal is closed.
  (thanks to Ilya Evseev for the report)
* BUGFIX: does not crash anymore when $HOME is not set
  (thanks to Henning Schild for the report)
Hisham Muhammad's avatar
Hisham Muhammad committed
307
308
309
310
* Wait for strace child process to die properly.
  (thanks to Marcus Fritzsch)
* Support $HTOPRC
  (thanks to Luis Limon)
Hisham Muhammad's avatar
Hisham Muhammad committed
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420

What's new in version 0.6

* Configuration of columns merged into the Setup screen
* Integrated strace (press 's')
  (thanks to Marinho Barcellos for the help)
* BUGFIX: some fixes, aided by Valgrind
  (thanks to Wolfram Schlich for the report)
* BUGFIX: fixed bug when switching meter modes
  (thanks to Eduardo Righes for the report)
* Show processes of a single user
* "SortBy" function now menu-based
* Improved mouse handling
* ...and on top of that reduced memory consumption!

What's new in version 0.5.4

* Color schemes
* -d flag, to configure delay between updates.
  Note that the delay value is saved in ~/.htoprc.
* BUGFIX: Update of meters was halting after help screen.
  (thanks to Matt Moore)
* BUGFIX: No longer display incorrect information
  in first frame.
* BUGFIX: Fix auto-detection of /proc/stat,
  correcting CPU usage information on multiprocessor
  systems.

What's new in version 0.5.3

* Read new field "steal" on newer /proc/stat files
* Auto-detects format of /proc/stat, to cope
  with patched 2.4 kernels which display 2.6-style
  information (most notably those on RHEL 3)
  (thanks to Fernando Dotta for the report)
* Support $HOME_ETC initiative
  (see http://www.pld-linux.org/Docs/home-etc)
  (thanks to Roman Barczynski for the tip)
* The configure script now tests for /proc, so
  that it fails early on unsupported platforms
  instead of during compilation/execution.
* Made presentation of the function keys in the
  status bar consistent across views
  (thanks to David Mathog for the report)
* Minor changes to make the codebase more friendly
  to possible future ports
  (thanks to Jari Aalto and David Mathog for the reports)

What's new in version 0.5.2

* BUGFIX: Correct display of user field
  (thanks to Marcin Miroslaw for the report)
* Keyboard support improvements
  (thanks to Aury Fink Filho for the report)

What's new in version 0.5.1

* BUGFIX: Correctly displays NPTL threads from
  /proc/<pid>/task subdirectories
  (thanks to Mike Pot for the report)
* BUGFIX: Fixes key handling on Signals listbox
  (thanks to Ondrej Vlach)
* Renicing no longer displays temporary illegal values
  (thanks to Ondrej Vlach)
* 'Hide userland threads' feature for NPTL threads

What's new in version 0.5

* Tree view
* New column, TIME (user + system time,
  like in top, 'T' switches to "sort by time")
* Major reorganization of the underlying code of the
  setup screen, to manage setup pages
* New setup page: Display options
* Hide kernel threads ('K' key)
* Colorized memory numbers
* Vastly improved support for monochromatic terminals
* Shadow processes that do not belong to user ('U' key)
* Header margin configuration accessible via setup screen
* Visual feedback on failing incremental search
* BUGFIX: fixed keyboard input issues on 64-bit machines
* BUGFIX: hopefully fixed the incorrect values
  that show on status bars in some systems
* BUGFIX: doesn't mess with fields list anymore when
  canceling after changing the number of items
* Uptime meter no longer says "1 days" ;)

What's new in version 0.4.1

* BUGFIX: compiles on 64-bit architectures again
  (thanks to Bartosz Fenski for the report)
* BUGFIX: multi-processor support fixed on kernels 2.6
  (thanks to Wolfram Schlich for the report)

What's new in version 0.4

* Support for multiple processors!
* Basic mouse support
* Modular header based on configurable meters;
  supports 4 view modes: bar, text, LED, graph
* Uptime, load average meters
  (thanks to Marc Calahan)
* Meters setup screen; should eventually evolve into a
  general setup screen, with column setup, keybindings, etc.
* Thread hiding toggleable
  (press 'T' to hide the nonstandard dotfiles in /proc)
* BUGFIX: Do not flicker screen on column configuration screen
* Clock and load average meters
  (thanks to Marc Calahan)
* BUGFIX: numeric swap indicator was printing bogus value
421
* BUGFIX: internal fixes on Panel widget
Hisham Muhammad's avatar
Hisham Muhammad committed
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
* Clear the bottom line when exiting
* Press "F3" during search to walk through the results
* Improved navigation on column configuration screen
* BUGFIX: fix segfault on kernels with restricted /proc
  enabled
* BUGFIX: a few last-minute bugfixes in the setup UI
  (thanks to Gaspare Bruno for the reports)


What's new in version 0.3.3

* Saves column and sorting configuration in ~/.htoprc
* Displays "hidden" threads on RedHat 9
  (Thanks to Leonardo Godinho)
* BUGFIX: supports process names with spaces
  (Thanks to Marc Calahan)
* BUGFIX: ...and parentheses :)
* BUGFIX: long process names overflowed RichString
  (Thanks to Marc Calahan)

What's new in version 0.3.2

* Performance and memory usage improvements, aided by gprof
* BUGFIX: quite a few fixes, aided by Valgrind
* Header preview on column configuration screen
  (Thanks to Marc Calahan)

What's new in version 0.3.1

* BUGFIX: crash fixes related to process list handling
  (thanks to Marc Calahan)
* Man page
  (thanks to Bartosz Fenski)
* Tag processes with the space bar
* Kill multiple process based on tag
* BUGFIX: corrected processing order of updates in list
* Screen refresh function on Ctrl-L
* Large numbers are shown in MB/GB notation in order to fit screen
  (thanks to Marc Calahan)
* Realtime priority is correctly displayed
  (thanks to Marc Calahan)
* Preliminary support for configurable columns, with 'C'
  (thanks to Marc Calahan)
  -- not all columns display properly yet

What's new in version 0.3

* BUGFIX: no dirt left on screen on horizontal scrolling 
* Signal selection on "kill" command
* Color-coding for users, nice and process status
* "Follow" function
* Fully selectable sort order
* Function bar on last line
* Build system now uses autotools

What's new in version 0.2.1

* Sorting by process or memory usage ('P' and 'M', like top)
* Quicker default update (1.5 second, not yet configurable)
* Now the order of the elements in the process list stay
  'locked' for a while after you move the cursor to ease
  selecting a process
* Corrected the installation instructions in README
  (Thanks to Jeremy Eglen)
* Should now compile cleanly on Conectiva 9 and similar systems
  (Thanks to Adriano Frare for the report)
* Friendlier Makefile
* Help screen ('h')

What's new in version 0.2

* Memory indicators in header now show used and total, in MB
* Preliminary support for sorting (CPU% only)
* Memory percentage field (resident memory / used memory)
* BUGFIX: identified source of spurious crashes
* Can search names containing numbers
  (Thanks to Rafael Jeffman)
* Correctly calculates memory page size
  (Thanks to Rafael Jeffman)

What's new in version 0.13

* Handles terminal resize
* Display all user names (not only those in /etc/passwd)
  (Thanks to Julio Biason)

What's new in version 0.12

* Support for 2.6 kernels
* Uses terminal default colors as a background

What's new in version 0.11

* BUGFIX: does not crash when UID is not in /etc/passwd

What's new in version 0.1

* Everything!