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.