item Changelog

Who entereth herein, a conqueror hath bin;
Who slayeth the dragon, the shield he shall win;

-- Edgar Allan Poe, The Fall of the House of Usher


$Id: CHANGELOG,v 1.37 2002/04/28 19:33:21 bergo Exp $

CHANGELOG for gPS
as of version 1.1.0

Contributors:
 bergo - Felipe Bergo
 spiff - Beat Christen

1.1.0 (Apr 28 2002)

 * new Watch Process feature in the Action menu, useful
   for debugging.

 * bug fix on rgpsp connection source acceptation policy
   (it was allowing any host to connect even when the
    /etc/rgpsp.conf file told otherwise)
   It is working now, but on any real ("production")
   network I suggest you use IP filtering to enforce
   the policy (like ipchains or iptables)

1.0.0 (Mar 10 2002)
 * Several possibilities of buffer overflows have been
   fixed. Thanks to Stanislav Ievlev from ALT-Linux for
   pointing a lot of them.

0.10.3 (Apr 17 2001)
 * Applied patches from Moritz Barnick to
   compile better on Solaris.
 * Minor GUI fixes (better button placement
   on all dialogs)

0.10.2 (Mar 26 2001)
 * fixed handling of window closing when running
   with -qb and -r options.
 * fixed misformatting of command line parameters in
   rgpsp protocol (command lines with newlines would
   break the protocol)
 * fixed buffer overflow bug that caused rgpsp
   to SIGSEGV when stating processes with large
   command lines (>128 chars) [Linux only]

0.10.1 (Mar 22 2001)
 * added quickbar mode (-qb command line switch, see man page)
 * fixed again the autoconf script for FreeBSD.

0.9.5 (Mar 16 2001)
 * fixed value parsing bug, now memory and swap sizes
   greater than 2 GB (on 32-bit machines) will
   show up correctly (and probably this fixes
   the problem with 64-bit boxes with
   memory or swap sizes greater than (2^63)-1
   bytes too) 
 * minor fix to autoconf script to work with the
   GTK+ 1.2 port on FreeBSD.

0.9.4 (Feb 22 2001)
 * Added accelerators to menus (a selected process can be
   paused and unpaused with Ctrl-S (SIGSTOP) and Ctrl-C
   (SIGCONT), for example.
 * titlebar text changed to include "gPS"

0.9.3 (Oct 6 2000)
 * The CPU/Memory usage dialog now shows SMP load of each CPU
   (Linux only, up to 64 cpus or what your screen resolution
   allows you to :-).
   SMP information is not gathered by rgpsp (the network polling
   daemon). Not tested with 2.3/2.4 kernels. (bergo)
 * Added group information to the "User CPU and Memory Demand"
   pane. (bergo)
 * Added "hand" cursor for user links in the "User CPU and Memory
   Demand" pane. (bergo)
 * Now compiles on FreeBSD 4.X (tested with 4.0). FreeBSD support
   now lies in the "don't send me requests, send patches" dept.
   (bergo)
 * Minor change to install man page in the location set by the
   user in the configure command-line. (bergo)

0.9.2 (Aug 8 2000)
 * Fixed FreeBSD multi-threading code [which prevented gPS from
   compiling correctly]. (bergo)
 * Added the capability to configure the refresh interval (bergo)
 * Fixed buffer overflow when polling processes with
   huge command lines over network (> 512 chars). (bergo)
 * Optimized (little) Linux /proc fs polling. (bergo)
 * Added the -gl switch for low color depth systems. (bergo)
 * Few corrections to man page. (bergo)

0.9.1 (Jul 31 2000)
 + I've been busy in the last few months, sorry for the gap.
 * Added the EKM (Extended Kill Mode) (for documentation
   read the man page!) (bergo)
 * Changes to RPM-building process, contributed by Tim Powers
   (timp at redhat.com)

0.8.1 (Apr 17 2000)
 * Changed network spinner from wheel to Mozilla-like, added
   the user abort button (for network request). (bergo)
 * Small changes to connection code, provides more feedback
   in the status bar (bergo)
 * Changed rgpsp daemon code to set umask to 0, chdir to / and
   setsid as good daemons do. (bergo)

0.7.2 (Mar 14 2000)
 * Complete FreeBSD/i386 support, including rgpsp. (bergo)
 * Heavy modifications in rgpsp code, it now operates by
   default in "daemon" mode. Messages are written to the
   syslog facility. Reading the rgpsp man page is good advice.
   Reading the README.NetWatch file too. (bergo)
 * discontinued Tcl/Tk install (bergo)

0.7.1 (Feb 27 2000)
 * Fixed more high load hangs on the Linux poller. It survives
   a glibc 2.1 compilation, so it should survive anything. (bergo)
 * Added --disable-netwatch compile option to configure,
   it will prevent the Network menu from appearing. Some
   distributions may prefer packaging a non-networked
   gPS. (bergo)
 * Added gradient gauges (-gb command line option) to
   the CPU usage/history dialog (bergo)
 * Changed man page generation scheme so that the documented
   flags refer to your system. (bergo)
 * Removed some OS-specific code in the renice'ing code. (and put
   generic code in its place, obviously) (bergo)

 * Added FreeBSD/i386 support (still lacks CPU/Memory usage
   dialog). Works with FreeBSD 3.4, please report whether it works
   or not with other versions) (bergo)

 * Fixed an uninitialized variable which would cause a crash in
   startup if g/libc didn't initialize pointers to NULL (as non-Linux
   libc's do). (bergo)
 * Now the main window can be reduced from its initial size and
   will start up centered in the screen. (bergo)
 * Cleaned up time parsing code in all application, changed the
   filter dialog to accept strings like "1 hour ago" for
   the start time. Added seconds to the Start time field in
   the process list. (bergo)
 * Some clean-up on modal dialogs' code, they will stay on top
   of their parents (bergo)
 * Good code clean-up on message box code (bergo)
 * Changed autoconf script a little to allow better OS check. (bergo)

0.6.1 (Feb 3 2000)
 * Added the tree view box [no auto refresh yet]. (bergo)
 * A bug in 0.5.2 made the "FLAGS" field of the details
   dialog disappear. Solved. (bergo)
 * Fixed a memory leak in the per-user CPU/demand box (bergo)

0.5.2 (Jan 28 2000)
 * Added feature: the user may double click the PGID/PPID/SID/TPGID
   fields in the Details dialog to open the details about the given
   process. (bergo)
 * Internal fixes in Linux /proc fs poller to avoid bad
   data on invalid PIDs (bergo)
 * Added Hostname field to details dialog (bergo)
 * Added user information pop-box [opened when the user
   double-clicks the owner field in the Details dialog
   or when the user clicks the "links" in the new "per-user
   resource demand diagram"] (bergo)
 * Fixed small libc5/6 gizmo on accept() that caused
   compilation trouble in libc5 [but the accept(2) man
   page is wrong anyway, that should be a socklen_t *, not
   an int *] (bergo)
 * Added process list field visibility control (you can choose
   which columns you want shown/hidden) (bergo)
 * Added CPU/memory per-user demand diagram (bergo)
 * Fixed minor bug on GUI that caused a GTK warning to be printed
   on stderr (due to a misplaced gtk_widget_set_events). This
   bug was reported by Frederic Meunier. (bergo)

0.5.1 (Dec 17 1999)
 * Added good-looking graphic install (bergo)
 * Wrote the "Linux /proc fs"-specific rgpsp (bergo)
 * Wrote rgpsp basic code for remote polling (spiff,bergo) [experimental]
 * Added Netwatch (remote polling) feature (bergo,spiff)   [experimental]
 * Added top polling, now non-Linux OSs should be able to
   run gPS (although it'll provide less details) (bergo,spiff)
 * Moved Linux /proc polling to an OOly-correct way of coding (bergo)
 * Prepared the OO structure for extending gPS to other 
   platforms (bergo)
 * Added start time to the details dialog. (bergo)
 * Improved the Set Filter dialog (bergo)
 * Fixed string filtering (bergo)
 * Added status bar to process list (bergo)
 * Fixed menu separators. Now they are real separators, not
   cheap selectable imitations. (bergo)
 * gPS would hang on some highly-loaded systems, found the bug,
   exterminated it (bergo)

0.4.1 (Oct 14 1999)
 * Added CPU and memory history window [the reason for the 0.3->0.4
   transition]. (bergo)
 * Fixed process polling confusion that occurred when the process name
   contained spaces, tabs, newlines or parenthesis. (bergo)
 * Fixed (small) memory leak in process sorting routine. (bergo)
 * The process list would not update correctly when the result of
   filtering was a clear list. Fixed. (bergo)

0.3.6 (Oct 7 1999)
 * Changed code on all dialogs (Details, About, Message Boxes) 
   for sizing compatibility, thanks to Bill Wilson for sending the code.
   (bergo)
 * Changed "Signals" label in Details dialog to meet the other labels.
   (bergo)
 * Changed "Close" code so that it no longer waits for the next refresh
   to kill gPS. (bergo)

0.3.5 (Oct 4 1999)
 * Changed Details dialog so that some data is inside of a list. In 0.3.4
   very long items like X command lines made awful dialogs, now that is
   fixed. (bergo)
 * First RPM binary release. (bergo)

0.3.4 (Sep 6 1999)
 * List widget now has no twists (no more bogus sort clicks) (bergo)
 * Long names now include all command-line arguments. (bergo)
 * Fixed RSS field in Details dialog (it was showing pages instead
   of bytes). (bergo)
 * More Fixes on RSS: nobody sent mail telling me about non-i386
   platforms yet, but RSS size was wrong on many (sparc,alpha?),
   because I was assuming a 4K page size (i386 and PPC were fine).
   Now I'm getting the right page size in compile time. (bergo)
 * TTY information in Details dialog is now correct. always. (bergo)
 * Added hostname to window title (bergo)
 * Added POSIX Signal-sending commands to the Action menu and had
   some fun SIGSTOPing and SIGCONTing my processes. (bergo)
 * Made menu separators normal (unselectable) (bergo)

0.3.3 (Sep 2 1999)
 * Added command-line options to set sorting column and direction (bergo)
 * Bound the Enter key to open the Details Dialog. (bergo)
 * Changed process polling method. gPS is faster and won't be slow
   on machines with great PID gaps (e.g. 1,2,3,27000,27002...) (bergo)
 * The "incompatibility" with gtk 1.2.4 was actually a bug in an old
   version of Window Maker (window manager). Removed the quick-fix, burned
   that version (0.20) of WMaker out of my box.
   (Yes, it runs fine with gtk+ 1.2.4) (bergo)
 * Added POSIX signal information in Details Dialog. (bergo)

0.3.2 (Aug 28 1999)
 * Quick-fixed CList widget incompatibility with gtk+ 1.2.4
   (which was released on Aug 27) (bergo)

0.3.1 (Aug 26 1999)
 * Added Process Details dialog. (bergo)
 * Minor esthethic changes on button sizes and in Renice...
   dialog (bergo)
 * Pulverized monolithic source file gps.cc to other
   *.cc files. (bergo)
 * Changed update policy so that the continuous refresh mode
   doesn't flicker so much. (bergo)
 * Changed the internal scrollbar scheme. Now scrollbars do work
   correctly. This included undoing some 0.2.2 code. (bergo)
 * Cleaned up message box source code to reduce binary
   size (bergo)
 * Changed message_box icons to more cute (cuter??) ones. (bergo)

0.2.2 (Aug 7 1999)
 * Put column labels out of the scrolling area, so the titles
   don't vanish with scrolling. This bettered column-resizing
   too. (bergo)
 * Proof-readed documentation, doc paths were misdocumented and
   some other minor mistakes found. (bergo)

0.2.1 (Aug 3 1999)
 * Added Action menu (bergo)
 * Added "Renice..." command (bergo)

0.1.1 (Jul 30 1999)
 * Initial release (bergo)