
/*  @(#)CHANGES 1.11 91/11/25
 *
 *  Copyright (c) Rich Burridge - Sun Microsystems Australia.
 *                                All rights reserved.
 *
 *  Permission is given to distribute these sources, as long as the
 *  copyright messages are not removed, and no monies are exchanged.
 *
 *  No responsibility is taken for any errors on inaccuracies inherent
 *  either to the comments or the code of this program, but if reported
 *  to me, then an attempt will be made to fix them.
 */

Faces change history.
=====================

v1.6 - patchlevel 1 - 25th November 1991.

       - Various minor fixups because of the rehash of the face icon lookup
         scheme introduced in v1.6.0:

         * The misc. directory under facedir (in the source distribution)
           needs to be renamed to MISC. Fixups in MANIFEST and FILES.

         * Adjust the manual pages to use MISC instead of misc. in the FACE
           FORMATS section.

         * Small tweaks to deepen, faces, facesall and mailqto.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         The nothing.xbm file has some bits set.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         The news faces database has "MISC/unknown/face.xbm", a default blank
         icon for newsgroups without icons.  It also has,
         "misc/unknown/face.xbm", a special default icon for newsgroups in the
         misc.* heirarchy.  But MISC/unknown showed up with the misc/unknown
         icon when viewed with facesall, ie via a faces -e script with output
         containing a line with domain = MISC and user = unknown.


v1.6 - patchlevel 0 - 19th November 1991.

       - From Rex Monty Di Bona <rex@cs.su.oz.au>
         When we looked at the faces program, we decided that the directory
         searching was bogus. We already had a complete hierarchy from those
         good old V8 days that was addressed as
         domain/domain/domain/domain/user/48x48x1. We also changed the lookup
         search to be user then community then facepath,
         ie...
 
         for (iu = 0; iuser[iu] != NULL; iu++)
             for (ic = 0; icomm[ic] != NULL; ic++)
               for (id = 0; facepath[id] != NULL; id++)
               {
 
         which is what we believe is a closer reflection of how a 'normal
         person' would look things up. This reduces the directory search at
         each level, as we now have smaller directories.

         It also, we believe, makes it easier to add new users/domains, and
         to have links (oz is a link to au/oz for historical reasons :-)

         We also search 'backwards' in the hierarchy, so the more exact match
         is found first.

         For those concerned with efficiency, the directories that are used
         most often, ie, the local machine, would be kept in 'cache' by the
         machine.  Since the directories are now smaller, the directory search
         should be performed faster too.

         [Beware!! Rex has changed the "misc." directory to "MISC" - Rich.]

         Note that faces no longer chdir's to the top of each facepath element
         before it does it's searching. Note also that the face image (because
         of the indetermanent number of directories making up the machine name)
         can no longer be in an ordinary file. It's now always one of the four
         formats in the user name directory.

         Manual pages have been updated to reflect these changes.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         The face_update script and various scripts in the scripts directory
         has been adjusted for this new format. The various faces databases
         have been adjusted to.

       - From Rex Monty Di Bona <rex@cs.su.oz.au>
         Changes to get the X11 version of faces running on a MIPS machine.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Various small changes to the files in the filters and scripts
         directories.

         Four new files:

         nothing.xbm           - a 64x64 XBM file with nothing in it.
         scripts/deepen        - convert faces database from old to new format.
         scripts/mailqto       - summarize hosts for which there is
                                 deferred mail.
         scripts/mailqto.faces - faces script to monitor the hosts for
                                 which there is deferred mail.

       - From Harald Vogt <harald@cs.ruu.nl>
         Changes in do_key() to get buttonclear1 to work properly with 
         faces -a mode on our m68 SYSV based HP9000/{34}00 workstations.


v1.5 - patchlevel 7 - 24th October 1991.

       - Adjustments needed to get the X11 and XView versions working under
         Suns' SVR4 O/S. For future reference, the following definitions
         had to be uncommented (and set appropriately) in the Makefile, to
         get the X11 version of faces working:

         HASPOLL, NOGETHOSTNAME, NOINDEX, NOSELECT, SVR4LIBS, SYSV,
         X11INCDIR and X11LIBDIR.

       - From Jim R. Oldroyd <jr@sequoia.com>
         Various changes to get faces working on two SysV machines:

         * Added in a new Makefile definition TOPIX, which should be
           uncommented if compiling faces on Sequoia's fault-tolerant,
           multi-processor operating system.

         * Definition of which compiler and compiler flags not being
           passed to makes in subdirectories.

         * MAXPATHLEN used, but not defined.  (This is in none of the headers
           in our /usr/include/*.h /usr/include/sys/*.h

       - From Jim R. Oldroyd <jr@sequoia.com>
         From Stephen Martin <mauxci!lsican!smartin@apple.com>
         We noticed that if you had mail, and read it and deleted it
         all with ELM, the faces would not revert to "No mail".

         It turns out that this is due to the fact that ELM doesn't
         delete the spool file - it leaves it empty.  But, ELM also
         resets the mail spool file's utime when it exits.  You were
         testing the st_mtime and doing nothing if there was no change.

         Our quick fix was to change the test to whether or not the
         size has changed.  (I know, you could delete mail, and get new,
         and the size doesn't change, but this is unlikely). A better fix
         would be neater...

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Patch for faces/filters/fs2ikon.  "pbmpaste" was eliminated in the
         latest release of the pbmplus filters.  This new version should be
         backwards compatible.


v1.5 - patchlevel 6 - 11th September 1991.

       - Added a new subdirectory to the faces distribution called xface.
         There are three files in this directory (xface.c, xface.h and
         xface_data.h). These files should be all you need to get X-Face:
         support added to a graphical mailtool. There are two hooks into
         the mailtool; one to create the glyph for the X-Face: the other to
         check the current mail message an either uncompress the X-Face: and
         display the image, or clear the glyph area. The hooks are for one
         specific case of mailtool integration; from the comments it should
         be possible to determine what is needed in each individual case.

         Note that the copyright message for these three files is different
         to the copyright message for the rest of the faces distribution. It
         should allow easy inclusion into commercial packages.

         The MANIFEST, FILES, TODO and Makefile.dist files have been updated.

 v1.5 - patchlevel 5 - 5th September 1991.

       - Performance improvement. If the host/user file found, is a regular
         file, then a check is made on that file for all valid supported
         formats (not just the old Blit ikon format). If the whole faces
         database[s] are arranged in this format, then there is a small
         increase in performance.

       - From Dan Nydick <nydick@pookie.psc.edu>
         When you've configured faces to pop its window to the top of
         the stack when mail arrives, I'd like it to pop itself to the
         bottom when all the mail is gone (ie: when the "no mail" icon
         is displayed).

         [Added in via another X resource: "faces.lower", which if set to
          true will do the requested lowering of the faces window. Also
          check for "set lower" in the users' ~/.facerc file. Updated the
          manual pages to reflect these changes.]

       - From Kate Morris <morris@carcoar.Stanford.EDU>
         Included a set of diffs to get faces running on an IBM RT PC
         running AOS4.3 (yet another 4.3 clone).

v1.5 - patchlevel 4 - 11th July 1991.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Removed the "ftp" clause from faces/filters/Makefile

       - From Michael Urban <urban%hercules@rand.org>
         The call to h_to_c() in do_users() in mon.c, should have a first
         argument of rhostname rather than "" (the local host).

       - From Michael Urban <urban%hercules@rand.org>
         In xview.c, changed hostname to rhostname, for selecting the host
         to monitor.

       - From Mike Khaw <khaw@parcplace.com>
         From Ken Wood <kwood@adl.austek.oz.au>
         Both the man page and the usage message say "-M", but the code 
         actually still wants "-MH".

       - From Ken Wood <kwood@adl.austek.oz.au>
         The face directory option parsing can't cope with a trailing null
         directory. i.e. when faces is run as follows, it correctly
         substitutes the compiled-in directory for the null directory

           xfaces -f :
           xfaces -f :$HOME/lib/faces
 
         but this doesn't work
 
           xfaces -f $HOME/lib/faces:

       - Added in another definition to the Makefile.dist file:

         HASPOLL       = -DHASPOLL

         which should be uncommented if you have the poll(2) system call
         (rather than select(2)). You will also need to uncomment the
         NOSELECT definition.

         This definition is needed for SVR4, and some variations of
         System V Release 3, which don't have TCP/IP support.

       - From Mark Shand <shand@prl.dec.com>
         Faces is ignoring the -d argument completely--a bug.
         In fact, looking at the source (x11.c:init_graphics), faces opens
         the display _BEFORE_ it processes its command line arguments (which
         happens in x11.c:make_frame).

       - From Brent Browning <Brent.Browning@Eng.Sun.COM>
         With the XView version of faces, if the icon is covered, thereby
         damaging it, the icons is never repainted.

       - The following TODO item has been removed, because this has been
         working in faces, since the inclusion of is822header() and
         associated routines in v1.4.13 by Mark Shand.

           *   From John Mackin <john@syd.dit.csiro.au>
               You test if the beginning of the line is identically equal to
               "X-Face:" or "From:". This is contrary to RFC822, which
               specifies

               (1) that headers should be recognised in either case (so
                   "X-Face:" and "X-FACE:" and "x-FaCe:" are all equivalent).
               (2) that there may be linear white space (spaces or tabs)
                   between the field-name and the colon (so "FRoM  : Foo Bar
                   <foo@bar>" should work).

       - From Amir J. Katz <uunet!sn4idc8!amirk@munnari.oz.au>
         I think that it should be mentioned in the faces man page that every
         xterm started under X will show on 'xfaces -h localhost' as a new
         user, unless you start xterm with the '-ut' option. I know it's an
         RTFM issue but xterm man page is so looooong, so I am sure most
         people fall asleep long before they reach the '-ut' option...

       - The width and height of the SunView faces frame were incorrect.

       - The five "standard" icons used with faces (NOFACE, NOMAIL, NOPAPER,
         NOPRINT, NOUSERS) were not being correctly displayed with the
         SunView version.

       - When the -w and/or -h options were used with the SunView version,
         the size of the icon created is incorrect.

       - If faces if monitoring a printer (using lpq), and the printer is
         unknown, faces will now exit with an error message, rather than
         just display the "no jobs" icon.

       - The XView version of faces now correctly saves the user supplied
         command line options, when the user does a "Save workspace".

       - The following entry has been removed from the TODO file because
         this is already implemented, albeit, the multiple faces
         hierarchies are specified by a colon separated list with the -f
         option.

           *   From Pat Lashley <patl@Sun.COM>
               From Lindsay F. Marshall <Lindsay.Marshall@newcastle.ac.uk>
           Multiple face directory hierarchies. I.e:
         `-f $HOME/facedir -f /import/group/facedir -f /import/global/facedir'
           The order of specification would indicate the search order.

       - From John Mackin <john@syd.dit.csiro.au>
         It should be made more explicit in the manual page that in the
         previous version of faces, a -f option _added_ the directory to
         the face search path, so that if you did -f you got those faces
         in addition to the system default faces, whereas now -f
         _supersedes_ the system faces and you must include a trailing
         colon to have them searched.

       - The following entry has been removed from the TODO file. This
         functionality was included in with the previous patch:

         *   From Lindsay F. Marshall <Lindsay.Marshall@newcastle.ac.uk>
         Would it be possible to have a define (or option) that allowed us to
         set the X title/name attributes. I want the program to be called
         "Faces" in my twm iconManager and it is currently called "faces".
         I haven't found any way of changing it other than by hacking the code.

       - From Ken Wood <kwood@adl.austek.oz.au>
         Various small changes to get faces working on an Encore Multimax;
         includes a new definition to the Makefile.dist file:

         USE_GETWD      = -DUSE_GETWD

         which should be uncommented if your system doesn't have the
         getcwd() library call.

v1.5 - patchlevel 3 - 19th June 1991.

       - Added in ANSI C function prototypes for each faces routine, and
         compiled with Sun's ANSI C compiler, fixing up inconsistencies.

       - From Alan Skea <skea@vast.eecs.unsw.oz.au>
         We are running SunOS 4.0.3c on most of our machines and while we
         have the utime() library call, we do not have a <utime.h>.  If I
         compile with NOUTIME defined then the utime structure that is
         declared in faces.h fails because type time_t is not declared.
         Needs an inclusion of <sys/types.h> in faces.h

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Had to comment out the external declaration for memset() in faces.h,
         to get it to compile on Ultrix 4.1.

       - From Tim Chown <T.J.Chown@ecs.southampton.ac.uk>
         If the mail spool shrinks (ie. the user deletes mail) then the
         window should adjust;  the -MH option doesn't seem to work for
         me in this respect.  Using -MH is a little misleading as I use
         Elm and that can shrink the mail spool file too, so perhaps
         the man page (and option name) should reflect this.

         [Command line option has been changed from -MH to -M, and the
          manual pages adjusted to reflect this - Rich.]

       - From Paolo Petta <ai-vie!oefai!paolo@relay.EU.net>
         Elm is our mailer of choice: At least on our system it has the
         peculiarity of not erasing the system mailbox file
         (/usr/spool/mail/...) but simply truncating the file to zero length.
         Faces is not correctly recognising this.

       - From Tim Chown <T.J.Chown@ecs.southampton.ac.uk>
         The remote host monitoring wouldn't work either.   This needed a
         different variable rhostname to be used with -H rather than hostname
         which was getting overwritten (so that localhost was always seen!).

         From Dirk Craeynest <dirk@cs.kuleuven.ac.be>
         `faces -H hostname' always gives information about users on the
         local host.

       - From Tim Chown <T.J.Chown@ecs.southampton.ac.uk>
         The addition of the option -l window_label is desirable;  the default
         label is "faces" which is a bit nondescript.

       - From Tim Chown <T.J.Chown@ecs.southampton.ac.uk>
         Don't take sounds for mail when first reading in the mail spool
         file. Just play them for new mail.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         The following TODO entry (#1) is already implemented. I've adjusted
         my faces front-end script to correctly handle arguments with white
         space.

             As it is now, there's no way to specify arguments for "-e"
             application scripts. If we ever want to abstract things like
             the -H function out of faces itself and into a script, we'll
             want something like this. I can think of two possible solutions
             to the problem, both extending the faces command line syntax:

             1) % faces -e "who.faces iuvax"

             2) % faces -e who.faces iuvax \;              ala find -exec

         [scripts/README.kinzler, and scripts/newscheck.faces also updated.]

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Hostnames that begin with "misc." (eg, "misc.religion.talk"
         in the news faces database) will end up with the misc./unknown icon
         instead of the proper icon.

         There may be other instances in the code of a similar bug (ie, where
         strcmp should be used instead of strncmp/EQUAL).

       - From Dave Cohrs <dave@cs.wisc.edu>
         If you specify your beeps and flashes in a resource database, the
         .mailrc reader shouldn't zero them out.

v1.5 - patchlevel 2 - 6th May 1991.

       - From Dick Keene <rkeene@sunrock.East.Sun.COM>

         * I had to comment out line 170 in faces.h to compile for xview.
           It complained of a re-declaration of endpwent().

         * New filter program called filters/vpxtoicon.c. It converts 8 bit
           snapshots from the Sun video pix board to Sun icons. It does a
           scale, and a histogram equalization.  Then you can convert the
           icon to face format with icon2ikon and compface.

           [I've added this to the filters directory, but have not added it
            to the "all" definition in the Makefile as it requires Sun specific
            include files and libraries to compile. If you are on a Sun, and
            you want to build it, then you should do a "make vpxtoicon"].

       - From John Mackin <john@syd.dit.csiro.au>
         New portable and correct version of the faces.sendmail script, which
         only uses one invocation of sed.

       - From Sjoerd Mullender <sjoerd@cwi.nl>
         I have compiled faces 1.5.1 on some of our systems and I came across
         a few problems.

         * Added #include "faces.h" to address.y so that realloc() would be
           declared.

         * Removed the declaration of sprintf() from faces.h, because that
           is alreade done in stdio.h, and because the definitions clashed on
           one of our systems.

         * In mon.c, changed the declarations of two chars to ints.  One of
           them is essential, because it is compared to EOF.

         * I changed the declaration of reply in do_prog() in mon.c to char *,
           because it is assigned the result of fgets.

         * Apart from this, I also had to add -Umips and -lsun -lc_s in order
           to compile faces successfully on a Silicon Graphics system.  These
           extra cpp flags and libraries could be put in extra variables in
           the Makefile.dist.

       - From Mark Shand <shand@prl.dec.com>
         Adjustments to the TODO file.

         * add bullet-proofing of uncompface().

         * remove TODO for RFC822 parsing (included recently by John Mackin).

       - From Ignatios Souvatzis <u502sou@mpirbn.mpifr-bonn.mpg.de>
         Various small changes needed for Convex 8.1.

         * Added a BZERO definition to the Makefile.dist file, for people
           without memset().

         * Changed strchr in main.c and rec.c to index (this should be handled
           by the NOINDEX definition in Makefile.dist)

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>

         * When compiling on a DECStation under Ultrix 4.0, I needed to add an
           "#include <ctype.h>" line to mon.c and x11.c (and xview.c probably,
           if I'd used it).

         * A small bug in compface/Makefile.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>

         * I found a couple of bugs in faces v1.5.1's display when it's
           running a -e script and the window is iconified.

         * I've revised faces/scripts to make use of the new ability to
           specify iconified window displays for -e scripts. There are two
           new faces scripts:

           - newscheck.faces
           - newsfrom.faces

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Implemented John's suggestion:

         > From John Mackin <john@syd.dit.csiro.au>
         > Another performance improvement:
         > Another kludge which could cut down the namei overhead substantially
         > is to chdir() to the top of each facepath element and do the
         > searching of that part of the tree with relative pathnames from
         > there, rather than using absolute pathnames all the way from the
         > root each time.  chdir()'ing is often very bad practice, but in an
         > application that can't possibly become interactive we don't have to
         > be concerned.

         The chdir() is only temporary -- in effect during the search
         subroutine, so relative pathnames for -e script locations and
         facepath elements and such still work as before.  I noted a 25%
         performance increase on a test here.  Your mileage may vary --
         we've got a convoluted path of symlinks to get to /usr/local/faces
         on our system.

       - From Victor A. Riley <var@iris.brown.edu>
         Saves the first encounter of a misc./unknown face, then continues
         looking for another face match.  This is useful when you have
         several face databases.  For this to work properly, you should have
         the misc. faces in the sample facedir installed in the same location
         as your local face database, for instance in /usr/local/faces.  If
         you have the logos face database, just move the logos/misc. directory
         up one level in the hierarchy.

         As a future bug fix we can modify the Makefile.dist file so that it
         does this when you do a 'make tables'.

v1.5 - patchlevel 1 - 18th April 1991.

       - From Cameron Simpson <cameron@spectrum.cs.unsw.oz.au>
         Part15 contains a duplicate of addr.h. It's identical to the
         addr.h extracted by part4.

       - From Cameron Simpson <cameron@spectrum.cs.unsw.oz.au>
         Added a NOUTIME definition to the Makefile.dist, for those systems
         that don't have a utime() call. Adjusted mon.c and faces.h
         accordingly.

       - From Mike Khaw <khaw@parcplace.com>
         There were 2 uses of do_audio in xview.c that weren't wrapped in
         #ifdef AUDIO_SUPPORT which caused 'make xview' to abort on my Sun3.

       - From Glenn Satchell <glenn@sybil.Aus.Sun.COM>
         Modified the faces.sendmail script to use two invocations of sed,
         which is much more portable than the echo -n version.

       - Between v1.4.14 and v1.5.0, certain character declarations that were
         previously defined as:

         char variable[MAXLINE] ;

         were changed to

         char *variable ;

         Fixed up two occurances where the declaraction and an extern for the
         declaration didn't match.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         From Mark Shand <shand@prl.dec.com>
         In get_options, char *next is not initialized prior to calling
           read_str(&next, ...

       - From Victor A. Riley <var@iris.brown.edu>
         From Michael Urban <urban%hercules@rand.org>
         From John Mackin <john@syd.dit.csiro.au>
         The uncompface() routine can scribble all over RAM in certain
         circumstances(). This is at about line 72 in compface/gen.c:
         Illegal array index 2304 into variable F. Maximum array index is 2303.

         [Problem fixed by James Ashton:
          The array indices incorrectly range from 1 to WIDTH instead of
          from 0 to WIDTH-1 and the same for HEIGHT].

       - From Ignatios Souvatzis <u502sou@mpirbn.mpifr-bonn.mpg.de>
         Faces crashes when using the -e option with a wrong parameter
         (nonexistent script etc.)

         [I've put a bandaid on this for now, checking for EOF and a reply of
          zero, on the first record returned from the popen() pipe. This needs
          to be improved when I have more time - Rich].

v1.5 - patchlevel 0 - 15th April 1991.

       - From David Purdue <davidp@kau1.kodak.com>
         From Mike Khaw <khaw@parcplace.com>
         The window and icon positioning broke with patch #14 for the
         XView version.

       - From Ignatios Souvatzis <u502sou@mpirbn.mpifr-bonn.mpg.de>
         From Mark Shand <shand@prl.dec.com>
         raise() is already declared on some systems. All occurances of
         raise() in faces have been replaced with raisewindow().

       - From Lindsay F. Marshall <Lindsay.Marshall%newcastle.ac.uk@munnari.oz>
         My faces window beeps and raises itself for no apparent reason.

         show_display() was being called in one place in do_mail() even though
         there wasn't any new mail. This was causing the window to be raised
         and the bell sounded. show_display() now takes a parameter which
         indicates whether the display should just be drawn, or whether the
         window should raise and beep.

       - Added in audio capabilities see the README and manual pages for more
         details.

       - Added Saber entry to Makefile.dist and ran the X11 (Xlib) version of
         faces through Saber.

       - From John Mackin <john@syd.dit.csiro.au>
         The "-b icon_file" option doesn't work. It still comes up with the
         default background.

       - From Philip Gladstone <philip@bigben.dle.dg.com>
         In the top level Makefile, you allow specification of FMONTYPE.
         The code in main.c checks for FBMONTYPE. Also the definition of
         FMONTYPE=0 and =1 are reversed.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Added all the new filters and scripts from Steve to the faces
         distribution. Created a new scripts directory, and moved mailq,
         lpqall and lpqall.sh across to it. See the README.kinzler files
         in the scripts and filters sub-directories for more details.

       - From John Mackin <john@syd.dit.csiro.au>
         If the X11R3 definition is uncommented in the Makefile, then there
         would be a syntax error for the font definition in x11.c.

       - Added Xlib and XView error handlers to the XView version, to try
         to track down random cases of:

         X Error of failed request:
         BadAlloc (insufficient resources for operation)
         Major opcode of failed request:  53 (X_CreatePixmap)
         Serial number of failed request:  4518
         Current serial number in output stream:  4530

       - From Alan Skea <skea@prl.dec.com>
         From Mark Shand <shand@prl.dec.com>
         If you are running faces with the -a option, and mail arrived from
         x@y with an X-Face: line then another article arrives from x@y with
         a different X-Face: line, then the second face is not shown; just
         the count of the first face get's incremented.

       - Adjust MANIFEST, FILES and Makefile.dist for new v1.5 distribution.
         Adjusted shar file distribution into fifteen parts, each less than
         55Kbytes.

       - Started to remove all reference to REVORDER, and replace routines
         that depend upon byte order with byte independent code. Changed the
         five no*.icon files to XBM format. These now use a routine called
         load_data() to run them into the correct image format (depending upon
         graphics version. Updated MANIFEST, FILES and Makefile.dist

       - Included mention of Steve Kinzlers' anon ftp service for faces,
         available on iuvax.cs.indiana.edu, in the README file.

       - Created a new file called Faces.ad which gives all the X resource
         application defaults for faces.

       - From Jim Rees <rees@citi.umich.edu>
         It would be nice if the compression and uncompression routines were
         separated into different source files, so that if I want to include
         just the uncompression in my mailer, I don't have to include the
         compression stuff too.

         I took the easy way out here; cmain.c and uncmain.c can mostly be
         combined. Perhaps at a later date.

       - From Eric Negaard <negaard@aerospace.aero.org>
         I have been working on a user program for use with faces (to display
         mail in a POP mailbox) and I noticed what I think is a bug.  The code
         in do_prog does not update the icon image, so the faces icon always
         displays the NOMAIL icon.

         My fix was to change the

           add_face(DISP_BOTH, ...)

         to

           add_face(DISP_ALL, ...).

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         It'd be nice if there were a way to specify the icon and information
         displayed when a "faces -e" window is in icon form. As it is now, it
         always gives the NOMAIL icon.

         A simple extension to the format would allow an optional
         specification line before the "Cols=X Rows=X" line that would be for
         the icon window.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         Allow variable width columns instead of fixed width columns in the
         faces -e format, using a separator character such as ascii 036
         (record separator), or perhaps something more readable like TAB
         (preferred). Domain names can easily get over 20 characters -- user
         names sometimes too.

       - From John Mackin <john@syd.dit.csiro.au>
         Fixed up init_font() in x11.c and xview.c to correctly work with the
         -fn command line option.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         From John Mackin <john@syd.dit.csiro.au>
         The IconPositionHint in make_frame() in x11.c should only be set if
         an icon geometry or -WP command line option has been given.

       - From Philippe-Andre Prindeville <philipp@inf.enst.fr>
         Adjusted faces.sendmail so that it will add in the X-Face: rather
         than have it in the user's ~/.face file. This means the same ~/.face
         can be correctly used by the Elm mailer without any changes.

       - From John Mackin <john@syd.dit.csiro.au>
         Added in routines to correctly parse RFC822 mail headers. There are
         two new files (addr.h and address.y). Makefile.dist, MANIFEST, FILES
         and README have been updated.

       - From Steve Kinzler <kinzler@iuvax.cs.indiana.edu>
         New versions of some of the faces-e scripts in the scripts
         sub-directory, to work with the new TAB field separator. New script
         called addxface. Various script name changes to avoid confusion.
         MANIFEST, FILES and Makefile.dist updated.

       - From John Mackin <john@syd.dit.csiro.au>
         Compface and uncompface did not correctly handle input from standard
         input and output to standard output.
