[comp.mail.mush] Attention MushView Beta-Testers: 6.5.6.15 available

schaefer@ogccse.ogc.edu (Barton E. Schaefer) (08/29/89)

A revised version of the mushview beta release has just been placed on
ucbvax.berkeley.edu for anonymous ftp.  Beta-testers should pick up a
new copy of the file pub/mushview.tar.Z from there.  The new version is
6.5.6.15, dated 8/28/89.

Fixes from 6.5.6.13 include:

    The !path!user form of "alternates" address now works correctly.

    An obscure bug in the setting of "r"eplied-to flags on messages piped
    to the reply command has been fixed.

    Opening mushtool from an icon to a window will cause an automatic
    new mail check.

    The headers display with the Next and Prev panel buttons in mushtool
    has finally been fixed -- no more "ungettable" headers.

    Generation of a "TO: " description in the header summaries when the
    message is from the current user has been modified to be correct a
    little more often.  It now uses the "alternates" list to confirm that
    the sender is indeed the current user.

    When $metoo is not set, mush does a bit better job of removing the
    current user (and his alternates) from the addresses generated by
    "replyall".

    The help files and man pages have a bunch of typos corrected.  Thanks
    to Larry Virden for proofing.

and others mentioned below, plus some I'm sure I've forgotten.

Bug reports should continue to go to	rburridge@sun.com (Rich Burridge)

We still need -DSYSV lint output if anyone feels volunteerish.

For those who missed it, the original announcement of the beta release
follows.  It has been updated to summarize the state of 6.5.6.15.

---------------------------------------------------------------------------

The long-awaited but slow-to-appear SunView port of mush 6.5.6 is now
available for beta-test.  Anyone with a Sun (or without, though you won't
be quite as helpful :-) and with ftp access to ucbvax.berkeley.edu is
encouraged to pick up file pub/mushview.tar.Z and go bug-hunting.

This is for the most part a very straightforward conversion of the old
SunWindows code in 6.5.6 to use the newer SunView library.  XView and
other Xs are not supported.  The tool code has been tested on 3/50, 3/60,
386i, and assorted other Sun workstations running SunOS 3.5, 4.0.1, and
4.0.3; it appears to work, but we make no guarantees at this point.  The
line/curses mode code has been tested on some of the Suns and a Sequent
Symmetry (DYNIX 3.0.12, BSD universe only).  The tool code needs heavier
use, and the rest could stand testing on some SysV/Xenix systems, so
this is definitely a beta release and should not yet be considered
"official".

Thanks to Rich Burridge of Sun Australia for doing most of the drudgework
involved in the conversion.  Rich has also given the code a very thorough
linting; it is cleaner now than it has been since the "passed lint the
last time it was checked" remark got put in the README several versions
ago.  :-)  A SysV linting would also be appreciated if anyone volunteers.

Bug reports for the SunView interface should be sent to Rich at

		rburridge@sun.com

In addition to the conversion, there have been a number of enhancements
and bug fixes to 6.5.6 included in this version.  The following is an
excerpt from the lastest README file:

---------------------------------------------------------------------------

mush -I file
mush -I! file
    The new -I (-init) option allows the user to specify an init file that
    is read before any of the other init files.  -I! causes the specified
    file to replace the system Mushrc file; otherwise, the given file and
    the system Mushrc are both read.  -I has no effect on reading of the
    user's own $HOME/.mushrc file (except that the indicated file could
    "setenv MAILRC", thus changing the location of the user's file).

mush -n
mush -n!
    The first form of this option now works like the ucbMail -n option,
    that is, it prevents sourcing of the system Mushrc but the user's own
    $HOME/.mushrc is still read.  The new -n! variation prevents either
    file from being sourced, which was the old behavior of -n.  Using -n
    does not change the effect of -I, so the following are equivalent:
	    mush -n -I file			mush -I! file

cd
    The cdpath variable now works correctly when specified with either
    colons or spaces separating the list of directories.

help
    The help facility has been expanded; there is now a help file entry
    consisting of a usage line and short explanation for every documented
    line-mode command except "debug" and "version", all accessible via
    "? command" or "command -?".  In addition, there are three options:
	help -1 file	Give new location for cmd_help file
	help -2 file	Give new location for tool_help file
	help -0		Restore original help file locations
    Use of "help -0" (that's a zero) will NOT override the -1 and -2
    startup options, i.e. the cmd_help and/or tool_help specified on the
    mush command line will be the "originals" used.

my_hdr From: address
    This is now allowed (it is allowed but neither documented nor correctly
    used in 6.5.6, and was not allowed previously).  The user's From: header
    is verified as best mush can, and used if it appears valid.  It is up
    to the MTA to assure authenticity and/or add a Sender: header.  Mush
    provides a From: if the user does not or if it cannot verify the one
    given.

pipe -p pattern unix-command
    The pipe command has been modified to allow its use as a shell script
    extractor.  See the man page and "pipe -?" for details.  KNOWN BUG:
    given a list of messages, all are sent to the same unix process.
    This can cause havok e.g. when each of the messages is a shell script
    intended to be run by a virgin shell.  Changes are being discussed.

Pipe
    See the comments under "write" below.

pwd
    This now prints the actual current working directory rather than
    simply echoing the value of $cwd.

reply
    Assorted repairs have been made to to take_me_off() (implements the
    inverse of $metoo) and reply_to().  These include doing a better
    (though still not perfect) job of getting the name and address to
    match when replying to forwarded mail.

sort
    The current message now moves with the sort, that is, the same actual
    message (not necessarily the same message *number*) will be the
    current message after the sort as was current before the sort.

save/copy
    The 'p' (printed) and 'f' (forwarded) Status flags are now properly
    saved when messages are saved/copied, and restored when the folders
    are read.  Also, a "-f" (force) flag has been added, which has the
    same meaning as the old "!" flag, that is, overwrite the file rather
    than appending to it.  "save !" is still supported.

undigest -p pattern
    The specified pattern is used as the article separator for unpacking
    digests.  The default is "--------".  A literal match (no regexps or
    wildcards) is done at beginning-of-line.

write
    The write command (and other commands such as Pipe that omit message
    headers) no longer outputs the blank line that separates the message
    body from the headers, and also does not output the trailing blank
    line that separates messages from one another.  (This applies only
    when MSG_SEPARATOR is not defined during compilation.)  This makes
    the command more useful for saving multi-part uuencoded files, etc.

$$
$name:l
$name:u
    Three new variable forms.  The first returns the PID of the running
    mush; the second converts all alphabetics in the value of $name to
    lower case; the third converts all alphabetics in the value of $name
    to uppercase.  All useful for generating file names or other variable
    names, in conjunction with the "eval" command.  These are not yet
    documented in the man page.

$domain_route
    This variable allows the user to specify that domain short-circuiting
    should be done in conjunction with auto_route.  Addresses that are
    already in RFC822 domain form (user@domain) are not normally changed.
    UUCP paths that contain fully-qualified domains are short-circuited
    to the rightmost such domain.  Optionally, domain_route may be set
    to a string, in which case all addresses are rewritten to UUCP form,
    short-circuited, and the given string is then prepended as the first
    host in the path.  This variable is intended for use at RFC976 Class 3
    UUCP hosts, or UUCP sites with a connection to a Class 3 host.
____________

MMDF Changes and File Locking Improvements
------------------------------------------

The MMDF support code has been modified to use the MMDF library calls for
file locking.  The files makefile.* were modified to make the need to link
in the MMDF library more obvious, and the comments in config.h-dist now
reflect the current (simpler) installation instructions for MMDF sites.

In the course of making these changes, a number of errors were discovered
and repaired:

    All mailboxes are locked for reading when they are first loaded or
    when new mail comes in, whenever possible (DOT_LOCK and old Xenix
    installations cannot read-lock).  If the MTA also uses a compatible
    locking scheme (as one would hope), this should prevent "truncation"
    of new messages without unduly restricting the reading of folders.

Additional changes were made to the locking functions between the 13th and
15th beta versions.  These apply to installations where SYSV is defined
during compilation:

    Because lockf() requires a file open for writing, the locking code
    has been rewritten to call fcntl(F_SETLK) directly.  Read and write
    locks are used as appropriate.

    This locking code has been only minimally tested, because none of the
    authors has direct access to a true SysV machine.  Bug reports with
    suggestions for improvement are requested.

---------------------------------------------------------------------------

As usual, the BUGS section of the man page covers some known problems; these
include:
    Function keys clash with window operations
    Pixrect allocation restricts the size of pageable messages

And of course I'm sure you hungry beta-testers will find others.

As usual, Dan and I can be reached at:

		Dan Heller	island!argv@sun.com
				dheller@cory.berkeley.edu
				argv@sun.com (temporarily)
		
		Bart Schaefer	schaefer@cse.ogc.edu

and don't forget:

		Rich Burridge	rburridge@sun.com
				sunaus!richb@sun.com

Miscellaneous comments can be posted to comp.mail.mush for discussion, or
sent to mush-users@garp.mit.edu, which gateways to the newsgroup.

One note:  Both Dan and I are very busy at the moment, which is one reason
bug reports are directed to Rich.  Response times to mail may vary.