    
1. HISTORY FILE (reverse chronology) 
====================================

NOTE:  RMB is Right Mouse Button.

Changes included in v2.00
-------------------------

Lots of last minute bug fixes, doc cleanup and key revisions.
Checking for proper upgrade and first-time operation.


Changes included in v1.77
-------------------------
Many more bug fixes and readme-type changes in preparing for the 
pending release of v2.0.  Copyright's updated.

o   Mailto.exe revised.  There are now two new send-to-lists modes.
    The old @users.lst mode is still supported.  However, if you 
    specify "@@users.lst", Mail to will send to each user in the
    list INDIVIDUALLY, modifying the "To:" line of each message
    to match the recipient.  NOTE THAT THIS IS MUCH, MUCH slower
    than the normal "batch" mode.  If you specify "@!users.lst",
    the message goes out with the TO line untouched, but
    each message gets an "X-To:" line prepended to the header.
    Also very slow.
    
    I did the second mode first, as I wanted to be able to easily
    extract email addresses of bounces when I announce v2.0.  I
    the realized that I could add in the @@ mode with almost the
    same code and add some general-use functionality.

o   From this version on, when a user with a v1.X config file tries
    an x2.0 version (or beta), mail.cfg is copied to mail.cfg-bak
    before the newer options are saved to it.
    
o   New v2.0 keys would sometimes go unrecognized.  Fixed.

o   I made a change at a lower lever that *should* fix all EA issues
    that have been dependent on FixPak levels and video chips.
    bsebcmr2.dll and opmbcmr2 dated 11/15/99.
    

Changes included in v1.76
-------------------------

o   Remove from server now has an "after X days" option.  Only 
    available in UIDL mode.
    
o   Multiple work-in-progress messages will now all recover after
    a system failure.
    
o   News filters occuring after an external utility has modified the 
    text will now store the MODIFIED text into target folders.  
    Previously, original text was sent to folder.

o   Maillist.zip file addon updated with some MIME handling fixes
    and an updated mailto.exe.  Thanks to Julian Thomas <jt@epix.net>
    for the improvements.

o   For a short time, MR/2 will again create v1.0 keys if valid
    v1.0 registration data is entered.
    
o   News logging bug that would cause a crash if news header data came
    in containing a "%".  Only when using the /L switch.
    
o   Misc bugs fixed.


Changes included in v1.70
-------------------------
New KEY logic that will differentiate between a v1.0 and v2.0 key
(this is officially a v2.0 beta) is included.  I have a way to
generate v2.0 keys.  I've included a file "upreg.doc" that 
should provide me with enough info for upgrading v1.0 users to 2.0.

MR/2 Released from v1.65 on until v2.0 GA are considered beta and
contain code to expire on 3/1/2000.  Warnings of the pending expiration
will start on 2/1/2000.

Until v2.0 registrations have been distributed, v1.X keys will work fine.
This will not continue to be the case for long!  THIS VERSION CAN NOT
BE USED to enter v1.X key info!  It just won't work.

o   New Configurable Options:  Options->Advanced now has a "purge
    trash after X days" option.  Network settings has a "Use UIDL
    mode" option, which is very beta, but working here for me.
    It appears my attempt to make switching back/forth OK are
    working.  There is NO auto-purge mechanism yet, you mys manually
    purge.  You might avoid running in UIDL mode unless a) you already
    understand it or b) my discussions on the mailing list to 
    follow make it clear you want this feature or c) you're just
    a rebel.

o   Work on I/O code to reduce fragmentantion.  More speed up of 
    general file I/O.
    
o   Reading from PACKED FOLDERS should be quicker after the first
    message is accessed.  The zip directory is cached for the
    last-accessed archive.
    
o   More speed enhancements to the GUI lists.  Searching for 
    index text, for example, is MUCH quicker.  Overall speed
    improved via a list caching technique.  For example, 
    selecting of related messages (select->all, same author ...).

o   Selected counts at the bottom of each message index.

o   MIME handling changes.  First off, MR/2 no longer wraps file names 
    inside quoted pairs (e.g., "filename", where the quotes were added) 
    before passing the name to a viewer).  This interfered with user- 
    programability of the viewer specification.  The simplest example?  
    Netscapes need to see attached HTML files as file:///filename.html.  
    You could configure a viewer to be "netscape file:///%s", but it 
    would expand to:  netscape file:///"filename.html", which of course 
    fails.  Now, user configuration should wrap %s in quotes so that 
    file names with embedded spaces are passed to the viewer(s) 
    correctly (e.g., netscape "file:///%s" ).

o   MIME associations for "viewing" changed.  Previously, if the
    content-type for the part to be viewed was not defined, or a
    viewer for that part was not defined, the file was passed to the
    WPS for viewing.  Now, in this case, MR/2 searches all internally
    defined MIME associations for a matching file extension.  If a
    match is found that contains a viewer specification, that becomes
    the default viewer for the attachment.  Example:
    
    Incoming messages has 0035.jpg defined as "application/uuencoded".
    
    Previously:  MR/2 would look for an application/uuencoded MIME
    type.  If found and a viewer was defined, it would launch that
    viewer (probably not correct, seeing the general nature of this
    "content type").  If not found, or found but no viewer was
    defined, the file would be passed to the WPS, and that horrible
    WARP viewer would open it.
    
    Now:  If the application/uuencoded definition is not found, or its
    viewer is not defined, MR/2 searches ALL its MIME definitions for 
    one where a JPG suffix is defined (suffix lists may be space OR
    comma separated, do not include the ".", eg: jpg,bmp,gif) AND
    a viewer is associated with that type.  In the default case, 
    image/* is found.  If a viewer has been defined, that is called.
    
    It is and will always be that case that, if MR/2 cannot identify
    a viewer to invoke, the file will be passed to the WPS to handle.
    So, if your WPS is setup perfectly <grin>, MR/2's settings can 
    be left minimal.  They are always there to override unwanted
    behaviour (like the Warp image viewer being called!)
    
o   The trash folder uses a new naming scheme.  The suffix of each 
    file now encode the date the message was "deleted", all without
    losing any original "natural sort" data.   It also prevents any
    performance penalties for this feature - by simply "touching" the
    datestamp of each trash file, deletes were 50% slower.  This 
    techniques eliminates this problem.  File names are reverted
    back to their originals if moved/copied to a folder.
    
    This to support an trash-purge by age function.

o   News bugs: copy/moving message to folder would mark item as read. 
    Filtering on fetch would lose bodies (since v1.65 or so).  Fixed.
    
o   Fixed the crash when canceling the font selection form when 
    in a message.


Changes included in v1.69
-------------------------

o   Bug fixes mostly.  Crash when clicking on the status icon,
    crash when opening a "clean" install of a totally empty folder.
    
o   Minor mods to cellbox code again.  This makes even the old style
    of adding an item much more efficient (for all those spots where
    a change to one-call inserts aren't warranted).  Minor speed ups
    will result, probably not that noticable.


Changes included in v1.68
-------------------------

o   Reworked the ObjectPM CellBox for speed.  Added a single message
    handler that would both set a ROW and its HANDLE in one call.
    This cut the load time of any folder (and MR/2 startup time in
    general) dramatically.  Between this and the previous file system
    fix, large folders are actually usable.  Example:  A folder of 
    11,000 entries took between 50 and 99 seconds to open with
    v1.65 (works system vs home system, a lowly P100).  Now, the
    work system opens in under 3 seconds.  Waiting to time the 
    home system, but preliminary tests showed 18-22 seconds.
    
o   Fixed Column Width Edit Form.
    

Changes included in v1.67
-------------------------

o   I've been working on some rather large performance improvements. One 
    of them is in here as a beta.  Seems very stable; it was a simple 
    improvement that has made some dramatic results.  I have a couple 
    more to add, but I'm planning on making a liberal jump to what I'm 
    going to call v2.0 very soon.
    
o   File reading "by line" improved.  There was some really bad code
    here.  The improvement in speed is incredible.  I'm embarrassed 
    that I didn't find this earlier.  All file-based operations should
    be MUCH quicker providing a new overall snappiness.  Specifically,
    open your largest folder and tell be what you find :).

    While large folders may provide the easiest way to measure speed
    improvements, MR/2 will load much faster, as all 3/4 (optional
    news) starting tabs/pages are based on text-line files.
    
o   Sort routines for new newsgroups would blow a gasket (break) when
    chr(127) was encountered.  In addition, any hi-end ASCII would
    cause trouble.  Fixed, although chr(255) still is an issue.
    
o   I removed the pop3 call to get UIDL's awhile back.  This broke 
    prefetch filters that collected headers only.  Well, it didn't
    break the filters themselves, but you could never go back and 
    get the body for any header-only message.  in addition, pop3
    "manual mode" was completely broken.  All is well now.


Changes included in v1.66
-------------------------

o   Fixed column bugs.  Enhanced to include (optional) "spacer" fields
    and to allow user to control the scoring/lines and data justification.

Changes included in v1.65
-------------------------

o   The UIDL logic, the code that would query the pop3 server for a 
    list of all existing emails and their Unique ID's, had a Big Bug
    in it.  The maximum size of a list could not exceed 96K or a crash
    would result.  Mind you, 96K is huge, but a user was away for awhile
    and his 10,000 message backlog crashed things.  List collection
    buffers are now self-expanding.
    
o   In fact, since UIDL's aren't used yet (I *do* plan on supporting 
    fetching using these to track!), I've removed this call completely.
    Minor speed improvements; I'll reinstate if I ever get to doing
    anything with the resulting list.
    
o   Configurable Columns.  This has been a long time in coming.  Long 
    ago I had a very simple idea for these.  It quickly grew into a
    Monster Plan.  What we have is a happy medium ... a little bit more
    that I meant to do this pass, but I like how it works.
    
    BETA CODE!
    
    This is all an experiment, but has proven to be stable for me.  
    NOTE that, if any serious bugs are found, I may change the name of
    the same strings and you would lose all column settings.  So, don't
    spend TOO MUCH TIME getting overly creative.  You may have to do
    it all again!
    
    The LIST menu now contains entries for "Columns..." which can be 
    used to maintain the column info for the currently open message
    index.  Columns can be enabled/disable, size changed, or reordered.
    NOTE that, even though you can move the status icon and permentant
    flag, I didn't test these for aesthetics.  I don't really care too,
    so complain if you want, but I'm not sure if I see these anywhere
    but in front.
    
    Separate settings are maintain for all message index files.  If
    you modify column info and press SAVE, it is stored as an EA
    attached to the index file.  If you press "Defaults", the EA is
    deleted and the default columns set.
    
    Default settings are maintained for FOLDERS and NEWS as a separate
    function.  Since the inbox and outbox are unique, and you can set
    those columns for each, the idea of a "default" is wasted.  However,
    you can maintain one set of column settings and save these as the
    defaults for ALL folders.  You can also save a (different) column
    setup for ALL news.  Simply open a folder/newsgroup, choose the
    settings you desire and test them by pressing APPLY (SAVING has
    actions beyond what you may want).  Once you have the desired layout,
    use List->Save as global defaults.  Again, FOLDERS and NEWS are
    treated as separate defaults settings.  You must be in a folder to
    affect the global settings for folders, and you must be in an open
    newsgroup to save NEWS global settings.
    
    NOTE that there is also a List->Remove global settings.  It is
    also used when inside either a folder or newsgroup.
    
    Any column settings saved (by pressing SAVE after maintaining them)
    for a specific folder/newsgroup will overridethe global default.
    
    I've tried to keep the default column layouts matching the old
    version, but there may be minor differences.
    
    Let me know what you think.  I'll be watching to see if this is
    enough doc to get everyone started :).



Changes included in v1.62
-------------------------

o   Another Save-and-don't-send bug addressed.  When opening and then 
    trying to send a "saved" NEWS message (usually w/email address cc),
    subsequent send would have two index entries pointing to the same
    file.  Delete one, message is gone!  Fixed.

Changes included in v1.61
-------------------------

o   Save-and-don't-send bug addressed.  When opening and then trying to
    send a "saved" message, a crash resulted.  Fixed.
    
o   Issues with other emailers sending bogus messages addressed.  One of
    MS's silly mailers liked to embed NULL in messages.  For POP3 fetches,
    nulls are now converted to spaces.  Needs to be applied to other
    protocols.
    
o   Newsreader would seemingly lock up, on occassion, reading long lists
    of "new" newsgroups.  Weird.  It was actually exacuting, but very, 
    very slowly.  I tightened up the loop and tinkered with priority 
    changes.  Seems to be all cleared up now.
    
o   Many minor bug fixes and code reworks to facilitate the port to 
    Windows.  It actually works now and doesn't look *too* bad.  Will 
    post a beta very soon.


Changes included in v1.60
-------------------------

o   Bug fix.  Previous TCP/IP changes coould cause infinite loop
    (lockup or CPU hogging) on socket errors.  This usually happened
    only on occassion, and not on all systems.  Fixed.
    
o   Y2K compliant.  There were a few spots, one of them key, that
    caused MR/2 to have problems with years past 1999.  Fixed.  Message
    index files are "self-fixing".
    
o   REGEX pattern matching in filters.  This is beta code.  It works
    in all of my tests but one.  Required syntax is a little cryptic
    but it works (freeform filters)
    
        #"regex-pattern-here"
        
    The "#" symbol, when at the start of an expression, denotes a
    regex match is requested.  If you must seach for the "#" character
    at the start of a string, enclose it INSIDE quotes.
    
    Some simple examples:
    
        {S}#"^MR/2*"    Find all subjects that start with "MR/2"
        {S}#"^[0-9]*"   Match subjects that start with any digit
        #"*XXX$"        Match any line ending in "XXX"

    I'll have to prepare a more comprehensive set of rules/examples
    to appear in the next release.  That, and a little more debugging,
    and this will be another powerful filtering tool. 
    
o      Some other misc/minor bug fixes are included.     


Changes included in v1.52
-------------------------

o   Added a mechanism for marking messages as PERMANENT (non-deletable)
    and then to reverse this, DELETABLE.  Messages can be moved but
    not deleted if marked as PERMANENT.  To indicate a message is
    permanent, a small "+" sign will appear in the index list next to 
    the message's icon.  Beta code - should work in the Inbox, Outbox,
    folders and newsgroups (header-only entries cannot be marked 
    permanent).
    
o   Netscape launcher would often fail if a previously loaded Netscape
    was closed.  This was caused by "ghost" entries in the PM task list.
    I was able to determine which ones were bogus, so not the mechanism
    will not longer assume Netscape is running, unless it really is.

o   Detach to path (and detaching in general) now detects the file system
    used on the TARGET drive and detached accordingly.  Previously, the
    FAT test was made on the default path, and detach file names were
    made for that system, regardless of the actual target drive.
    

Changes included in v1.51
-------------------------
It's been quite awhile since I've been able to do any OS/2 coding.  The 
last couple of days I've been allowed to play more, tho.  There have 
been changes along the way that I'll never remember, but should result 
in some level of improvement.

o   TCP/IP improvements - I've been playing with a cross platform web 
    spider, and its development has helped to iron out some minor issues 
    in my TCP/IP routines.
    
o   Address book sort is now preserved as an extended attribute.

o   Code started to automate the rebuilding of the folders.ndx
    file, if/when corrupted.
    
    The file REMFLDRS.CMD should be run ONCE from the MR/2 root
    directory for each account:
    
        remfldrs mail
        
    NOTE that if you don't specify the account, "mail" is assumed.
    What this does is reads each line of folders.ndx for the specified
    account, and saves that line as an EA attached to the folders
    message index.  ALSO NOTE that this information is maintained
    automatically by MR/2 *now*, but it requires you to edit the folder
    information.  This is a batch "remember" to retrofit the EA's to
    existing folders.  It is a one-time "fix" script.
    
    The file MKFINDEX.CMD will create a replacement folders.ndx file
    for an account:
    
        mkfindex mail
        
    This creates the new file "account\folders.ndx-NEW", using the EA's 
    from each folder to recreate the index.  If the EA's are 
    unavailable, the script still does a fair job of trying to determine 
    a name for the folder, and if all else fails, derives a name and tab 
    name from the source directory.  These can be corrected manually, 
    but access to ALL folders will be provided. 
    
    At this time, renaming of the -NEW file must be done manually.
    
o   Modifications to the /Q mechanism to better handle sending long 
    command lines to a running instance via PIPE.  Previous system
    broke if command grew to over 130-some characters.
    
o   The attaching of small files (less that 100-200 bytes) would 
    sometimes fail.  Fixed.

o   The TRASH FOLDER mechanism would fail to work correctly when
    switching to a secondary account.  This has been corrected.
    However, it brings up an interesting functionality question:
    
    When switching to another account, should the trash from the
    current account be emptied if the "empty trash on exit" flag
    has been selected?  Otherwise, only trash for the active account
    WHEN EXITING will get purged automatically.
    

Changes included in v1.50
-------------------------

NEWS FLASH!!!!  MR/2 ICE was voted best OS/2 sharware of 1997 in the 
latest SharwareJunkies.com awards.  See http://nick.secant.com/mr2ice.htm
for more details and a link to this excellent source for all sharware.
A big thanks to everyone who voted!

ANOTHER NEWS FLASH!!!!  MR/2 ICE was voted best OS/2 email client 
AND NEWSREADER <grin> of 1997 in the latest OS/2 eZine Readers' Choice
See http://www.os2ezine.com/v3n01 for more details and soem great OS/2
reading in general.  Another big "thanks" to everyone that voted!

o   This email-specific release is the culmination of changes added 
    while bringing the newsreader beta from v1.40 to 1.48+.  I 
    haven't added any significant changes to the newsreader since, 
    however, the features added for the email-only user is 
    significant.  In summary, the EMAIL-usable changes made since 
    v1.40 (yes, these are duplicated in the individual sections 
    below):
    
Changes included in version 1.5 (since v1.4)

o   Multiple selections now available when attaching a file.  Click
    on as many file names (from the same directory) as you wish
    and attach them all with a single action

o   URL Editor allows user "fixing" of URL's before accessing them.

o   Options->Settings->Advanced now allows editing of ATTACHED
    directory default.  No checking for validity is performed (yet).
    
o   "Detach to path" is now a menu item on both the message viewer's 
    MESSAGE menu and on the RMB menu for attachments.  Resulting
    form is much more simple than I originally intended.  Perhaps more
    to come later.  Up to 8 previously selected paths are remembered
    and the "default" button specifies and uses the default path.
    BETA.
    
o   Most pick lists are now font-drop sensitive and this information 
    is saved and restored.  In addition, many pick lists now support 
    KEY jumping.  Press "P" and the first entry starting with P is 
    selected and displayed.  Press "PE" and anything starting with 
    PE is selected. Press SPACEBAR to clear the key-pick buffer.
    
o   New reply-time variable: @RUN:command@.  This lets you run an 
    external utility inline, as the reply file is being built.
    For example, comsider the following lines in a template:
   
       @Run:swapsig@
       $File:rotsig.txt
        
    When the @run@ command is "expanded", the command line is loaded 
    to run "swapsig", which should be a rexx command.  In this 
    example, I have assumed that swapsig.cmd REWRITES the file 
    rotsig.txt every time it is invoked.  

    I tested this this morning by having my rexx script write the 
    date/time to a file, then dumping the contents of my environment 
    ("set >filename") to the file.  The next line inserted this file 
    into the reply.

    YOU DO NOT HAVE ACCESS TO THE SOURCE MESSAGE at this time, but I 
    probably should fix this for consistency.  You do have almost 
    all of the predefined environment variables set from source 
    message.  Items like MR2I.FROM and MR2I.TO and MR2I.NEWSGROUPS 
    are all set for easier parsing.

    Parameters can be passed after the command but before the 
    closing @.

    Open for expansion of this idea.  Just a quicky, as it was about 
    20 minutes of code.

o   Enhanced RMB menus for the inbox, outbox and folder indices.  
    The new SELECT sub menu has some functions inherited from News 
    with some slight tweaks.  By request.
    
o   All RMB Select menus now have an "Invert selections" option.
    By request.

o   A new MIME viewer specifier has been added.  Placing a "#" 
    (without the "'s) as the viewer for a MIME associations will 
    produce a "can't view directly" message if anyone tries to 
    RMB->View attachments of this type.  By request.
    
o   Message OPTIONS menu now has a "Show MIME parts" sub menu that 
    allows you to collapse a MIME message to show only parts 
    (text/plain is even shown as a detachable part), show ALL parts 
    as text (possible that some intesting displays will result!) or 
    to use the "default" mode as defined by user-configurable MIME 
    associations.  By indirect request.
    
    This mode is persistent PER SESSION but is not saved to INI. I'm 
    still debating whether or not to reset this for each message.  
    The current setup will work while this is debated.

o   The NAVIGATE menu has some additions.  It is now possible to 
    move forwards and backwards to the "next" message with the same 
    subject. These functions have also been mapped to the normal 
    keyboard keys F for forward, B for backwards (active in the 
    viewer only, the editor considers these typing keys :).
    
o   The functions Next and Previous Index Search Match (see the 
    Navigate menu) have been assigned single key accelerators.  You 
    may use I to move forwards, J to move backwards.
   
o   MR/2 now times-out more reliable.  Default is 90 seconds.

o   SMTP continuation line processing improved.

o   A new command line parameter (perhaps temporary) can control the 
    tcp/ip READ timout.  Since the last version made MR/2 very 
    sensitive to timeouts, users have reported that the default 90 
    seconds is sometimes (rarely) not enough.  Use /Kseconds to 
    override this.  For example:
    
        MR2I /K120
        
    Starts MR/2 with a 120 second (2 minute) timeout.  /K0 will 
    turn timeout checking OFF and will cause MR/2 to work the "old"
    way.
    
o   {Z} Freeform filter specifier enhanced.  Previously, this was 
    only good for testing the SIZE of the current message/article.  
    You may now add a header tag specifier.  Example:
    
        {Z:X-Spam-Factor}100
        
    equates to TRUE if the current header has a tag "X-Spam-Filter", 
    and then if the data that immediately follows this tag can be 
    evaluated as a number greater than or equal to 100.  By request.
    
o   Ooops.  Found another way that folder sort specifications could
    be lost.  Fixed.  Trash folder sort is now saved correctly.
    
o   Resending previously sent mail multiple times now works 
    correctly.

o   Issues with initial focus and pre-selected items in list being
    in view have been addressed.
    
o   Beep is generated when text search is done and nothing is found.

o   Minor filtering inconsistencies fixed.  Obscure bug, low impact.

o   Mailto.exe now accepts an optional fourth parameter: return path:

        mailto filename toaddress smtpserver returnpath
    
    Where toaddress can be simply an "." which tells mailto to send 
    to the TO address in the message.

    Same with the smtp serverparameter; if a "." is specified, the 
    default is used (from the environment variable SMTP_HOST).

o   Memory leak fixed when linking to REXX.  A rather significant 
    (3-6k) block of memory was allocated and never free'd each time 
    REXX was called as a filter test, filter action or CTRL-Fkey 
    invocation. Fixed.
    
o   "Mailto:" tags are removed from email addresses when tabbing out 
    of fields.
    
o   Using +/- keys and all derivations now prevent recursion.  This 
    was causing a crash when paging through packed folders.  The 
    system will beep at you when a key is ignored, signifying it is 
    "busy".
    
o   Formatted printing DATE in footer is now printed correctly.

o   Threw in a new @VARIABLE@ for replies and other templates.  
    Similar to @Headerinfo:Tag@, you may now use @DomainInfo:Tag@.  
    The header information matching TAG is extracted, and then the 
    DOMAIN for that data is located and pulled out.  If no tag 
    exists, an empty string results.  If no "@" is in the raw header 
    data, the entire string results.  So, using one of my messages 
    as a source when replying, the template variable 
    @DomainInfo:From@ will result in "secant.com".



Changes included in v1.47a
--------------------------

o   At least one news server was creating invalid XOVER entries (article
    header records) that would confuse/crash MR/2.  These records contained
    CR/LF's between reference ID's, and this delimiter is supposed to be
    reserved for "end of header / next header" locations.  I now skip past
    bogus start-of-xover areas denoted by these invalid markers.
    
o   /D detach altered once again.  Batch detach will now process 7bit and
    quoted-printable attachments labeled other than "text".  Previously,
    these parts were skipped.


Changes included in v1.47
-------------------------

o   Reworked the logic that handles the pressing of "Send" from a folder 
    reply.  In particular, news postings saved to folders were 
    misbehaving when using one as the source for a reply.  Works much 
    better, however, this was commonly used "base" code so it needs to 
    be shaken out.  Also effects OUTBOX resends from open messages.
    
o   Added a 2 millisecond delay after releasing the send thread to
    process queued items.  There seemed to be cases where the semaphore
    was locked again too quickly, and the send cycle was missed.
    
o   Lockups when retrieving new email messages.  Thanks to a couple
    small examples sent to me, I've found AT LEAST ONE cause of the
    downloading email lockup.  If the mail message happened to contain
    a NULL (hex 0) character, the C++ routines used to check for
    end-of-message would fail to see it and keep asking for more until
    a timeout occured.
    
    Why was this so hard to reproduce?  As it turns out, Secant's POP3
    server removes NULLS from email, so nomatter how hard I tried (or
    how many of these questionable messages were forwarded to me), I
    would never see the same results :).  Finally, I got a small zipped
    example and examined it on the binary level.
    
o   Timeout for tcp/ip socket calls eased a minor bit.

o   Experimental code added to the /D command line argument processing.
    Requesting to DETACH attached files from the command line will now
    traverse INTO 7bit multipart/* parts and detach all non-"apple"
    parts within.  Will consider this same logic for plain real-time
    "detach" code.


Changes included in v1.46b
--------------------------
All minor, but needs some testing.

o   Default socket timeout changed from 60 seconds to 90.  Can still
    be overridded using /Kseconds, where /K0 suppresses all programmed
    timeouts.
    
o   SMTP continuation line processing.  Code was there to handle this
    properly, but new timeout code waited for new data EVEN IF 
    continuation line(s) were already received, being held in a 
    buffer for "next" processing.  Fixed.
    
o   Many little subtle internal changes to support portable code.
    Shouldn't make any difference, but mentioned in case a problem 
    arrises where it "used to work".


Changes included in v1.46a
--------------------------

o   Multiple selections now available when attaching a file.  Click
    on as many file names (from the same directory) as you wish
    and attach them all with a single action

o   A new command line parameter (perhaps temporary) can control the
    tcp/ip READ timout.  Since the last version made MR/2 very
    sensitive to timeouts, users have reported that the default 60
    seconds is often not enough.  Use /Kseconds to override this.
    For example:
    
        MR2I /K120
        
    Starts MR/2 with a 120 second (2 minute) timeout.  /K0 will 
    turn timeout checking OFF and will cause MR/2 to work the "old"
    way.
    
o   Yesterday's release would fail with POP3 Servers that did not
    support the UIDL command.  The processing of this command was
    returning false timeouts when the server reported the command
    as invalid.  Fixed.


Changes included in v1.46
-------------------------
I'm preparing for a full email-only release, but I added one iffy
item in this release, so I'll let this get tested on a smaller scale.
All works well here.

Again, I chain-fixed a dozen or so smaller items in a short period, and
I can't tell you what they all were.  What I remember is itemized.

o   Socket "stalls" are detected better.  Timeouts occur within a 
    much more reasonable length of time, and handle better.  This 
    involved a couple of simple changes to a core low-level routine.
    Works well here, you tell me how it works for you.  Users should
    notice NOTHING different except better recovery where previosuly
    stuck "Checking for new mail...".
    
o   Detach to path form misbehaviours fixed.

o   URL editor now properly calls FTP spec for ftp's.

o   MANUAL ADD of newsgroups now works.  Depends on the user
    typing a correct name, but you can now "subscribe" to newsgroups
    without having to pick from the ALL list.
    
o   Options->View MIME as collapsed parts will now detach usually 
    "displayable" parts.  Previously, parts would show as parts but
    would not properly detach.
    
o   NEWS RMB menu contains options to Check for new groups NOW, and 
    also one for obtaining a new complete ALL groups on demand.
    
o   News Settings can now control whether or not new groups are
    checked automatically.
    
o   News Settings has a watch/kill default days to expire.  When
    creating a watch/kill, the expiration date will be calculated
    from the current date and this day count.  It may be overridden.
    A default day count of ZERO will create non-expiring entries.
    
o   Ooops.  Found another way that folder sort specifications could
    be lost.  Fixed.  Trash folder sort is now saved correctly.
    
o   Resending previously sent mail multiple times now works correctly.

o   RMB->Mark as UNREAD now does just that on previously READ 
    news articles.  Before, database was not updated and article read
    status was not reset.
    
o   Issues with initial focus and pre-selected items in list being
    in view have been addressed.
    
o   Beep is generated when text search is done and nothing is found.

From last release and not listed:

o   URL Editor allows user "fixing" of URL's before accessing them.

o   Detach to Path - allows specifying a path to which to store
    detached attachments.  Last 8 paths are remembered, and the 
    "default" is selectable via pushbutton.

o   I'm sure there were other fixes.  There will no doubt be more :)
    

Changes included in v1.45
-------------------------

o   Minor filtering inconsistencies fixed.  Obscure bug, low impact.

o   Options->Mime menu addition that collapsed message to parts was
    OK, but you still couldn't detach these parts.  Fixed.
    
o   Beta:  Options->Settings->Advanced now allows editing of ATTACHED
    directory default.  No checking for validity is performed (yet).
    
o   "Detach to path" is now a menu item on both the message viewer's 
    MESSAGE menu and on the RMB menu for attachments.  Resulting
    form is much more simple than I originally intended.  Perhaps more
    to come later.  Up to 8 previously selected paths are remembered
    and the "default" button specifies and uses the default path.
    BETA.
    
o   News Status window minor cleanups.

o   News index Select->Invert selections actually inverted twice,
    making it look like nothing was done.  Fixed.
    
o   Mailto.exe now accepts an optional fourth parameter: return path:

        mailto filename toaddress smtpserver returnpath
    
    Where toaddress can be simply an "." which tells mailto to send 
    to the TO address in the message.

    Same with the smtp serverparameter; if a "." is specified, the 
    default is used (from the environment variable SMTP_HOST).

o   New reply-time variable: @RUN:command@.  This lets you run an 
    external utility inline, as the reply file is being built.
    For example, comsider the following lines in a template:
   
       @Run:swapsig@
       $File:rotsig.txt
        
    When the @run@ command is "expanded", the command line is loaded to 
    run "swapsig", which should be a rexx command.  In this example, I 
    have assumed that swapsig.cmd REWRITES the file rotsig.txt every 
    time it is invoked.  

    I tested this this morning by having my rexx script write the 
    date/time to a file, then dumping the contents of my environment 
    ("set >filename") to the file.  The next line inserted this file 
    into the reply.

    YOU DO NOT HAVE ACCESS TO THE SOURCE MESSAGE at this time, but I 
    probably should fix this for consistency.  You do have almost all of 
    the predefined environment variables set from source message.  Items 
    like MR2I.FROM and MR2I.TO and MR2I.NEWSGROUPS are all set for 
    easier parsing.

    Parameters can be passed after the command but before the closing @.

    Open for expansion of this idea.  Just a quicky, as it was about 20 
    minutes of code.



Changes included in v1.44
-------------------------
Most enhancements "by request" :)

Note that I tried to solve some problems with changing accounts while news
is active.  My first-pass changes made matters worse, so these have been
backed out for this release.

o   {Z} Freeform filter specifier enhanced.  Previously, this was only
    good for testing the SIZE of the current message/article.  You may now
    add a header tag specifier.  Example:
    
        {Z:X-Spam-Factor}100
        
    equates to TRUE if the current header has a tag "X-Spam-Filter", and
    then if the data that immediately follows this tag can be evaluated
    as a number greater than or equal to 100.  By request.
    
o   Enhanced RMB menus for the inbox, outbox and folder indices.  The new
    SELECT sub menu has some functions inherited from News with some slight
    tweaks.  By request.
    
o   All RMB Select menus now have an "Invert selections" option.
    By request.

o   A new MIME viewer specifier has been added.  Placing a "#" (without
    the "'s) as the viewer for a MIME associations will produce a
    "can't view directly" message if anyone tries to RMB->View 
    attachments of this type.  By request.
    
o   Message OPTIONS menu now has a "Show MIME parts" sub menu that allows
    you to collapse a MIME message to show only parts (text/plain is even
    shown as a detachable part), show ALL parts as text (possible that
    some intesting displays will result!) or to use the "default" mode
    as defined by user-configurable MIME associations.  By indirect
    request.
    
    This mode is persistent PER SESSION but is not saved to INI. I'm
    still debating whether or not to reset this for each message.  The
    current setup will work while this is debated.

o   The NAVIGATE menu has some additions.  It is now possible to move 
    forwards and backwards to the "next" message with the same subject.
    These functions have also been mapped to the normal keyboard keys
    F for forward, B for backwards (active in the viewer only, the 
    editor considers these typing keys :).
    
o   The functions Next and Previous Index Search Match (see the 
    Navigate menu) have been assigned single key accelerators.  You
    may use I to move forwards, J to move backwards.

    

Changes included in v1.41->v1.43
--------------------------------
From memory, probably not a complete list of fixes:
                                                                  
o   Memory leak fixed when linking to REXX.  A rather significant (3-6k)
    block of memory was allocated and never free'd each time REXX was 
    called as a filter test, filter action or CTRL-Fkey invocation.
    Fixed.
    
o   "Mailto:" tags are removed from email addresses when tabbing out of
    fields.
    
o   Using +/- keys and all derivations now prevent recursion.  This was
    causing a crash when paging through packed folders.  The system will
    beep at you when a key is ignored, signifying it is "busy".
    
o   +/- through unfetched news is now better threaded.  The PM message
    queue is no longer locked and the message window displays a 
    "please wait" message.
    
o   Most pick lists are now font-drop sensitive and this information is
    saved and restored.  In addition, many pick lists now support 
    KEY jumping.  Press "P" and the first entry starting with P is selected
    and displayed.  Press "PE" and anything starting with PE is selected.
    Press SPACEBAR to clear the key-pick buffer.
    
o   Formatted printing DATE in footer is now printed correctly.

o   Excessively long newsgroup names should finally be completely tamed.

o   RMB on the news index includes an option to reset last-read counters.

o   Threw in a new @VARIABLE@ for replies and other templates.  Similar
    to @Headerinfo:Tag@, you may now use @DomainInfo:Tag@.  The header
    information matching TAG is extracted, and then the DOMAIN for that
    data is located and pulled out.  If no tag exists, an empty string
    results.  If no "@" is in the raw header data, the entire string
    results.  So, using one of my messages as a source when replying,
    the template variable @DomainInfo:From@ will result in "secant.com".


Changes included in v1.40
-------------------------
Many bugs fixes, some odd and obscure.  Changes since the release of
v1.36 and later were more to solve chronic problems and add stability
to this release.  I think it's worked.

o   New BSEBCMR2 and OPMBCMR2 DLL's in this release.  They fix two
    serious bugs:
    
o   Memory leak when manipulating the various message index lists.
    There was a known but previously unlocated bug that appeared
    ONLY in Warp 4.0 releases (it may have also been present in Warp 3.0
    levels FP17 or greater).
    
    The issue was with a previous bug fix in the cellbox control MR/2 
    uses.  This fix worked wonderfully in solving the problem where, in
    early versions, MR/2 would lock up when slide off the screen (say, so
    only 1/4 visible).  Apparently, More recent versions of OS/2 changed
    the code attached to the calls made with this fix.  For each repaint
    of the cellbox window (a scroll, an insert or delete) memory would
    leak and tended never to come back.  Much better now, and the original
    lockup problem remains in check.
    
o   DBCS input into ObjectPM-managed edit fields (almost all are).  Entry
    of the DBCS escape sequence would crash MR/2.  Thanks to David Wei's
    persistence and helpful testing, I think we've fixed this now.
    
o   Fixed issue with move-to trash folder failing on name collisions, 
    which would leave the original file in place.    
    

Changes included in v1.37
-------------------------
Quick Fixes

o   Close Select from news works again.

o   Watch maintenance form lists newsgroup.

o   PACK FOLDER should now work.

o   NEW news file is properly maintained.

o   CTRL-UP and DOWN will now correctly move news articles.

o   More?  Will see and itemize online.


Changes included in v1.36
-------------------------

o   Message->Close All does what it's supposed to for news / folders,
    instead of crashing.
    
o   Emptying trash now closes the trash tab and resets the ndx file to 0.

o   printer.tf (formatted printer template) now chops TO data in the 
    repeating header to 80 characters via new LENGTH specifier for 
    @variables ("@HeaderInfo:To:80@").

o   It was pointed out that news database file fragmentation was a serious
    issue.  I confirmed this.  Changes.
    
    Default initial files sizes remain the same.  However, every time a
    file is expanded (an extent is created), the expansion size is
    increased by 25%.  This cuts fragmentation greatly.  I'll call this 
    "accelerated expansion" :)
    
    Optional Data Size models may be specified.  The default is SMALL.  A
    command line parameter is used for now; it may end up being a new
    settings page:
    
        /ZS     Small model:   80k  initial, 122k first expansion
        /ZM     Medium model: 256k  initial, 348k first expansion
        /ZL     Large model:  756k  initial, 756k first expansion
        /ZH     Huge model:    2MB  initial,  2MB first expansion

    These are sizes per DAT file.  Index files are expanded by 64K,
    which is a surprising and disappointing limitation of the database
    library I am using.  I'll have to come up with an internal
    defrag mechanism for these.

    Deleting the IDX files forces a data pack and index rebuild AND    
    will mark the new files with any new model information.

o   The NEW NEWSGROUPS process now sorts only the NEW groups, then merges
    them with the existing new and master group file.  This should 
    result in a far less resource hungry startup process (when new
    groups exist).
    
o   Removed an occassional crash when polling for mail and the connection
    would fail.


Changes included in v1.35
-------------------------
I want to release this as an email-only release after I confirm that side
is stable.

o   Finally was able to recreate and squash an rare/obscure bug that, 
    if not noticed, would skip unread messages.  If the pop3 connection
    was closed (under certain circumstances, not always) in the middle
    of a poll for mail, MR/2 reports "Connection closed while fetching #"
    and notes that it will try again later.  However, sometimes the count
    would get set so that all subsequent messages were skipped.  Reported
    before but wasn't able to recreate until now.  Fixed.
    
o   Stuck-open folder issues (after changing accounts) fixed.

o   Options->Settings->Advanced now has an option to dump trash on exit
    (no prompting is done).  Utilities->Empty Trash is also available.
    
o   News database/index rebuild tamed so as not to drain entire system
    resources.
    
o   Still was an issue with ISP names > 8 characters on FAT drives.  Fixed
    and test (I don't have a FAT drive, so I ran off of a floppy).

o   News: Alt-' selects all READ items.  There is a corresponding RMB menu
    entry.
    
o   I know other things were fixed.
    

Changes included in v1.34 / b34
-------------------------------
Many bugs fixed and not documented.  Go figure.

NOTE!!  IMPORTANT!!  News users with WATCHES/KILLS in your default
"mail" account:  You *must* manually copy mr2i.wat to mail\news.  
Otherwise, your watch/kill list will be empty.

o   The grp*.$$$ temporary work file is now kept in the news file
    directory.
    
o   /Npath may be used to specify a PATH for news files.  I have not
    tested this outside of the default MR/2 dir hierarchy.  This is
    to allow accounts to share NEWS setups, or to have some control
    over which news setup is loaded.  Downside:  generalk news settings
    are still store with mail account.
    
    For example:
    
        mr2i /MAdvantis.cfg /Nmail\news
        
    will load MR/2 ICE with a MAIL account of "advantis" while still
    access the default news data in mail\news.
    
    WATCHES/KILL file location had to change because of this.  See 
    IMPORTANT NOTE at the top of this section.
    
    IF a base news path is specified, changing accounts will not
    effect it.  IOW, specifying a news path keeps that news path
    for the entire session, nomatter how many times you login to
    a new account/profile.
    
o   Max Open Window count spinner limit upped.

o   /SN now respects account switches.

o   Excessive adding of News Reply templates squelched.

o   Outbound NEWS can now me manipulated with the Mark As menu.

o   /PN# can be used to specify a non-standard NNTP port for news.
    For example /PN1001 tells MR/2 to access the newsserver using
    port 1001.
    
o   Expired news.  Any article headers marked for fetching that are
    found to be expired or canceled from the server (server returns
    a "No such article for this group" or a "no such article anywhere")
    will be marked with a new expired status.  A new blue X icon will
    be displayed.  I will have optional actions for these, later.
    
o   New FILTER (and WATCH) search-area command.  You can now create
    free-form filters that reference the SIZE of the message/article:
    
        {Z}30000
        !{Z}30000
        
    The first example will return TRUE if the size of the article/message
    if greater than or equal to 30000 bytes.  The second example is TRUE
    when the article/message is LESS THAN 30000 bytes.  Great for
    killing too-small entries in binary groups and/or auto-fetching 
    larger ones.
    
o   Some work with REXX news filters and watches.  Still some loose ends
    when trying to REMOVE an article from the news index.

o   Mods to the internal FILTER layout to protect user-supplied values
    that contain backslashes (paths, etc.,.)
    

Changes included in v1.33 / b33
-------------------------------
Many bugs fixed and not documented.

o   Further tweeked and tamed some of the news threads.

o   Newsserver posting errors are reported via popup message box.

o   Multiple accounts now function with their own unique copy of 
    the news files.  There is still a problem with changing accounts
    while news functions are active (sometimes), but it seems to work.

o   New PEGASUS to MR/2 email conversion routine thanks to 
    Julian Thomas <jt@epix.net>.  He did the basic message comversion 
    engine, I wrapped it in the standard REXX menus and added the
    automatic per-folder processing.  Does messages and the address book.
    Available via the ICE home page.
    
o   NewsBeta will be even more public this release.  See:

        http://nick.secant.com/newsbeta.htm
    
o   Many, many tiny things.


Changes included in v1.32 / b32
-------------------------------
Once again, I fixed bugs and didn't really document which ones were fixed.

As announced via various channels, the news beta web page is available at:

    http://nick.secant.com/newsbeta.htm
    
I expect to be adding much text to this in the next day or two.

Fixes, from memory:

o   If "Delete all references" is checked, unfetched headers are deleted.
    Previously only worked if article was fetched.
    
o   Move/Copy to folder pick list is now alpha-sorted, regardless of 
    sort selected for index display.
    
o   /Eaddress displays an email header form even when on news pages.

o   When moving an open article to a folder, total group count would
    not get adjusted.  Fixed.
    
o   If a watch/filters kills a header, it is no longer added into the
    total/new count.
    
o   Editing a previously sent message now correctly translates hi-end
    ASCII characters.
    
o   Some priority adjustments made to news threads.  Still some more 
    tweeking needed.
    
o   IMPORTNN.CMD is now available.  This will import a current Netsuite
    News setup into MR/2 ICE.  For use as an initial install utility only.
    
o   Random filter crash if article was NOT to be kept in index has been 
    resolved. This STILL does not work correctly yet; having trouble 
    actually removing article from the index.
    
o   If demand-fetching (double clicking) an article, and the article is
    not available, a message box will tell you so.  I want to add 
    selectable options here.
    
o   Better NR/2 importing.  You now get to select how many headers to
    collect.
    
o   When requesting to get only headers NEW from current point in time,
    previous versions returned one header.  Counts now correctly return
    nothing on initial pass.

o   I did some work to try and save the absolutely LAST message that was
    deleted, if not using the trash folder.  In fact, the file 
    "mail\trashed.lst" holds the last deleted message.  However, I have
    no integrated recover procedure yet.

o   Reference.COM has begun archiving the general MR/2 ICE mailing list
    as of Aug. 5, 1997.

    Searchable archives for the lists are available at:
    
    http://www.reference.com/cgi-bin/pn/listarch?list=mr2ice@secant.com


Changes included in v1.31a
--------------------------
Lots of fast changes, from what I remember:

o   Newsserver banner longer that 120 chars caused trouble.  Fixed.

o   Disconnect while fetching caused continuous loop.  Fixed, I think.

o   /SN dsiabled news totally, causing crashes on access attempts.  Now
    simply turns news engine to manual mode.
    
o   Problems with server short names > 8 chars on FAT drives (mostly
    when importing from NR/2).  Fixed.
    
o   On Emails created from the news side, the SPAM-LESS address was used
    for the email.  Changed.
    
o   In Spam-free news posts, Reply-to was still being inserted, if 
    specified.
    
o   News and Email combos using MIME charsets would malfunction sending
    Email double-translated.  Fixed.  General header cleanups for 
    differences in mail and news.
    
o   HELP web links now respect existing Netscape use switches.

o   The List->Sort screen now has a provision to specify the direction
    pressing SPACEBAR moves when at the end of a document.
    
o   When adding a watch, each watch is displayed for editing before being
    added.  This is discussable, but I like it better this way.

o   Address book maintenance list now has a column specifying which book
    the entry resides.  A U denotes user, M for main.


Changes included in v1.31
-------------------------
We'll call this a beta release, since it's only getting out to match the
news beta I want to release today.  I've fiddled with some productive
e-mail-type stuff, tho.

o   In case you haven't noticed, I've included the news beta DLL's in
    this release.  News is enabled by default.  To disable, simply 
    exit MR/2 and copy nonews.dll to news.dll.  Doing this also 
    renders mr2idb.dll unnecessary.
    
    If you request not to be reprompted when the prompt asks if you
    want to configure news, a file is created.  This file is called
    "asknews.no".  This prevents the auto-prompt from showing again.
    However, if you wish to configure news later, simply use 
    Options->Newsreader settings to manually get started.
    
-   The NEWSREADER is a work in progress.  This is usually the case with 
    my software <grin>, but it is particularly true with this option. 
    With a little time and your help, I'll make it do everything it 
    needs to do.  It is not, however, "finished", nor perfect, at this 
    time.  See the web page at http://nick.secant.com/newsbeta.htm for 
    the latest info.

o   Trash Folder.  It works, but there's no auto-purge yet.  The 
    ADVANCED settings page has a checkbox, and the WINDOWS menu then has 
    a "trash folder" option.  Works just like a folder, except on open, 
    the index is completely rebuilt.  This is probably the way it will 
    stay (potentially slow on open, but faster this way during normal 
    operations).  No, you still can't copy back to the inbox or outbox.
    
    No provision to handle trash filename collision.  To be handled,
    but this isn't all that big of a problem.

o   Option to suppress Clipboard History Manager.  /SC on the command 
    line turns it off (/SC = Suppress Clipboard).
    
o   Default Domain can now be blanked out and it is saved this way.

o   I made some internal changes to the address book; won't be visible 
    for a release or two.
    
o   Working on a sysutil.cmd interface to allow REXX during certain 
    system events.  Open for suggestions on what events to cover.  For
    example, my current test setup fires on the arrival of new mail,
    passing the count.  I see startup and exit in the plans, as well
    as logging into a new account.  I have a short list.  Email me
    with your ideas/needs.
    

Changes included in v1.30
-------------------------

o   New ADVANCED settings: default outgoing domain and Index Tracking
    line number.  If specified, the default domain value will be appended
    to all addresses that do NOT have an "@" in them.
    
    Track Index Line denotes how the index tracks when navigating 
    through messages.  For example, when using +/- with a tracking index
    of 10 (the default), the index is scrolled so that the current message
    is always the 10th line of the index (or at least visible, when at
    the start of the list).  A value of zero suppresses this tracking.
    
    A Color button is now included.  This maintains only one color at
    this time.  You can change the color used to denote NEW items with
    this form.  You may have to exit and reenter to notice the change in
    colors.

o   MR/2 ICE now recognizes a "MAIN" and a "LOCAL" or account-specific
    address book and address group collection.  This will effect users
    with secondary accounts a bit.

    What happens now is that MR/2 ICE loads an address book from your 
    account directory.  It then checks the base MR/2 directory for a 
    "main" address book and adds these into the online collection.  You 
    can maintain which book an address is written to on save (checkbox 
    on address maintenance form).

    Without change, most users will not notice a differences.  Those 
    signing onto secondary accounts SHOULD MOVE mr2i.adr from the base 
    MR/2 directory into the MAIL sub directory.  Otherwise, they'll get 
    both address books loaded (possible duplicates).

    This allows a shared central book, in addition to a account-specific 
    book.  Address GROUPS follow the same system.

o   CTRL-FKey crashed on new messages fixed.  May have been a 
    news-only bug.

o   KOI8-R translation of headers fixed.

o   New (small) EXE includes:  mr2iu.exe.  This is a utility that will
    talk to running copies of MR/2 ICE.  It's actually identical to
    mr2i.exe, except it's text-mode and will simply exit if a running
    copy is not found.  This lets REXX scripts and other utilities 
    control running MR/2 ICE copies without the overhead of loading a
    PM app, and without the associated screen flash.  Example:
    
        mr2iu /X
        
    will cause the running MR/2 ICE to poll for mail.
    
        mr2iu /Enick@secant.com
        
    will start a new email to me, using a running copy.

o   Incorrect Pirate key notification corrected.  Using /X of any type
    would call you a pirate.  Sorry!

o   +/- keys and some others will scroll the message index with message. 
    Default is to set current message as line #10.  Configurable
    via Settings->Advanced; set to zero to suppress.

o   Newsgroup and folder names are now stores as EA's on their 
    respective NDX files.  This will help potential crash recovery tools 
    in the future.

o   Added the command line parameter /Vfilename.  /V was previously used 
    for an obscure and worthless option, so it was recycled.  Will 
    display the named file as a message (in "ready to reply" mode).

o   Fixed a clipboard issue with Lotus 123 (thanks, Ken).  MR/2 will 
    also behave when run on a system with ManyClip.exe.

o   N, P and R are now active within the viewer to NEXT, PREVIOUS and 
    REPLY.  I can/will add other keys as time goes by.

o   Outbound filters fixed - should move message from outbox, when asked.

o   Fixes some issues with MIME headers (mail)

o   Changes the CTRL-Fkeys to (hopefully) eliminate the
    occassional failure.  I *did* find something coded incorrectly.
    

Changes included in v1.29
-------------------------

If you have registered MR/2 ICE and are not receiving my release 
announcements, please write and report you e-mail address, name and
serial number.  You may have changed email addresses.  If you registered
with BMT or OS/2 Shareware BBS in the "early days", your address may have
been lost or never reported (the BBS never asked for it until recently).

If you are receiving announcements at a Compuserve address and which to
switch to another address, just write.

My email address is nick@secant.com

Registrations are taking no more than a week to turn around.  If you don't
get your key within this timeframe, please (you guessed it :) write.  I 
often have keys bounce, and the address I entered matches that provided 
on the forms.  I have no recourse until you write me!

Finally, the NEWSREADER addon to MR/2 ICE is progressing nicely.  I plan
at least one more expansion, where I add beta testers.  Maybe more  When
I add a group, we are testing the setup and initial user reaction.  At
this time, I am only accepting REGISTERED USERS as potential testers.
If interested please write nick@secant.com with a subject of 
NEWSREADER BETA EXPANSION.  Use this subject, please.

o   Keyboard fixups and changes relating to the SOURCE and REPLY window
    hotkeys.  Was interfering with the use of ALT-4 and ALT-6 to enter
    hi-end ASCII.
    
o   Removed the case where too many charset translations were performed 
    when replying to messages with hi-end ASCII in subject.  Previously,
    the reply subject would lose the characters.
    
o   Spacebar will now "page through" the current folder's messages, one
    screen at a time, switching to the NEXT message when at the end of
    the current.  I'll add a configuration for "direction".  Still may 
    need an adjustment so as to minimize wastfull end-of-message
    displays of a single non-text line.
    
o   You may now sort messages lists by SIZE.

o   FILTER->Special should finally work as claimed in the last release :)

o   Some menu mnemonics changed to avoid collision.

o   Environment variables are set with message-context information for
    ALL external Rexx invocations.  Msgutil.org has examples of how to
    get to pre-parsed pieces of message data.
    
o   Header alignment (when not displaying header) should be much more 
    accurate.  No more parts of header showing because long header lines
    are wrapping.
    
o   The internal message viewer (designated by a viewer of "*" in 
    MIME association settings) now opens the message in SOURCE mode, so
    it may be replied-to.
    
o   Appledouble attachment viewing now formats the part to display 
    correctly.
    
o   Mailto.exe has now switched to another large SMTP server for its
    default.  IBM Advantis placed security on their server so that
    non ibm.net users cannot use it.
    
o   Minor security issues added.  Very few will ever see evidence of 
    these.
    
o   As usual, I know there are more, probably minor issues, but I don't
    have a record of them.
    

Changes included in v1.28
-------------------------
I consider this a hopefully-final "pre-1.3" release.  Enough changed
that I'll watch for new issues before calling it v1.3.

o   Clipboard History / Manager.  The PASTE menus now contain up to
    5 of the previous copy/cuts since MR/2 ICE was started.  While
    running, MR/2 ICE can record cut/copy from ANY application.  
    However, the history is private to within MR/2 ICE and is reset
    on each restart.
                    
o   NETSCAPE interfacing.  Options->Settings->Advanced now offers
    the chance to control a running instance of Netscape, if this
    is your browser of choice.  You may load a selected URL into
    Netscape's main window, or request a secondary window (still 
    within the same instance) to be opened.
                    
o   Copy to folder bug.  If the same message is somehow sent
    to the same folder twice, the original copy's index entry would
    incorrectly record the folder's collision-adjusted file name.
    In other words, two copies would end up in the folder, the second
    copy with a newly generated unique name.  That name would also
    get recorded in the inbox (for example), where the file was
    NOT renamed.  This would result in:
                            
    -   The message reporting a "MR/2 ICE file system error"
        when opened.
                    
    -   Deletions would remove the index entry but fail to find the
        matching message file (not reported to the user). A later
        reindex would show the original message.  This would appear
        as if the message was "lost" and never seen.  Not so.
                            
    While not actually a loss of data, this bug was confusing and 
    confidence-shaking.  The algorithm has been changed and the 
    original message file name preserved.
                
o   %Z variable in templates will now equate correctly to the header
    date's timezone.  This variable is always replaced by a numeric
    (signed) value, and the attempts to offer text literal values
    (e.g., "EST") have been ceased.
                
o   Filter - Special.  Did I list this before?  The list of special
    criteria is now represented as CHECKBOXES instead of radio
    buttons.  IOW, you can check for multiple special circustances
    in a single filter.
                
    Disposition screen now has longer textual descriptions of choices.


Changes included in v1.27
-------------------------
This is the worst I've been at documenting bug fixes.  All of the
below from memory; the big ones are easy to recall.  There may be
more smaller fixes included, but forgotten.

o   Mr2i.exe has been radically reworked and a new DLL, mr2i.dll, 
    contains most of the working code.  This allows other DLL's to 
    access the MR/2 ICE base code.  It also has the side benefit of 
    allowing secondary copies of MR/2 ICE to load more quickly.
    
    MR2I.EXE is around 10k in this release.
    
o   Phrases. A phrase subsystem has been added.  You can save 
    frequently needed snippets of text as a "phrase" and insert it 
    into any future message quickly.  Inserting a phrase can be 
    performed via the dynamic message INSERT menu or via a short 
    series of keystrokes that identify the phrases "tag".

    Utilities->Phrase Maintenace for general maintenance
    
    Edit->Add to phrases (adds marked block) 
    
    Insert->Phrase to call up a phrase via dialog box OR traverse
        the cascading sub menu to access a subset via menu 
    
    Insert->Phrase by tag (CTRL-I) to access a phrase by tag.
    
    So, for example, I want to insert a 3 paragraph blurb about a 
    recent price increase; something I do often.  I use to open a 
    folder used specifically for snippets of frquently used text, 
    find the message, open it, mark/copy, close, go back to the 
    original message, paste.  Now, all is required (once the phrase 
    is saved) in my case is to type: CTRL-I "price" ENTER.

o   RMB->Pack is available on the folder menu.  This simply spawns a
    REXX script (provided) called "pack.cmd" passing the specifics of
    each highlighted folder.  This script depends on the existence of
    ZIP.EXE in your path (modify the script to suit).
    
    MR/2 ICE can now officially archive folder contents into zip files,
    but still extract these for viewing on demand.  NOTE that there are
    many restrictions to what can be done with a packed folder (for 
    example, you can't reindex it).  Archiving is for non-volitale,
    mostly-read-only folders.  It *can* save a ton of disk space.
    
    All messages are zipped into a file called messages.dat, and the
    folder.ndx file remains visible.  MR/2 ICE handles the extraction
    of each message as needed.
    
    NOTE: please do not start too many folder packers at one time. While
    it is possible to spawn dozens at the same time, system performance
    will suffer.  Please try one or two at a time.
    

o   Command Line: /O was refined and improved.  It now accepts up to 
    three parameters:
    
        mr2i /Obad.msg "This is the reason" "Bad Message!"
        
    The above example loads the file "bad.msg" into an active 
    message editor window.  It then pops up a message box with the 
    text specified as parameter 2 and the title of parameter 3.  If 
    parameter 3 is not specified, the title "NOTE!!" is used.  If 
    parameter 2 is not specified, no message box is displayed.

o   Command Line: /Q was refined and improved.  It is now much more 
    sensitive to collisions (files being queued from more than once 
    session at the same time).    

o   Accelerators and Keyboard.  The keyboard and accelerator 
    interface has been vastly improved.  A few stray problems 
    remain, but a big improvement overall.

o   Filter Notebook.  Filter maintenance has been reworked to show 
    all filters in a notebook layout for maintenance.  This will 
    allow more room for addition of more "actions" (coming soon).

o   Menu. "Edit message externally" and "Edit file" have switched 
    parent menus.  This may cause some short-term inconvenience, but 
    is more intuitive in the long run.
                                   
o   Issues with changing accounts.  Tabs and window sizes would 
    often get confused when switching accounts.  Fixed.
    
    Also, the first settings page was made to reuse an obsolete 
    field. You can now control the text displayed when the "Display 
    account name in titlebar" (Settings->Preferences) is specified.

o   Memory leaks.  While debugging the upcoming newsreader module, I 
    found quite a few memory leaks.  While all were relatively 
    minor, they could have become significant during prolonged use.  
    Still looking!

o   RMB->ReplyTo.  You can now use RMB->Reply to in order to reply 
    to the current message, using the address under the cursor as 
    the recipient.

o   GroupMtc form - changes in video modes or cards should no longer 
    interfere with the look of this form.

o   Address Book Maintenance keystrokes.  Experimental.  If you type 
    a series of keyboard characters while viewing the AB pick list 
    (Utilities->Address Book Maintenance), the system will try to 
    match the string to a value.  The data to test depends on the 
    current sort order; the sort column is matched.  For example, 
    sorting on Real Name, typing in "J", "O", "H" then "N" will 
    select the FIRST Real Name starting with "John".  The SPACEBAR 
    resets the test string to empty.
    
    I played around with various ideas.  At first, I matched ANY 
    text that you typed, but this was too generic.  Let me kniw what 
    you think.

o   Queued messages not all being sent.  A bug in outbound filters 
    would often interfere the the sending queue.  The bug was 
    non-destructive, but did result in message having to be manually 
    requeued for sending.

o   Insert email address.  The INSERT menu now has an entry for 
    inserting an email address from the address book.

o   Reply-to-all now makes an attempt to exclude the current user
    as a recipient.
    

Changes included in v1.25 and v1.26
-----------------------------------
More bug fixes and enhancements including but not limited to:

o   Command line: /H flag can be specified.  This causes MR/2 to
    change its path to where mr2i.exe is found.  This happens
    immediately after program load.

o   Command line: /Ofilename can be used now to specify an existing
    message file (properly formed as per RFC-822) to be automatically
    opened on program load

o   Forwarding of multiple messages now prompts ONCE for only a single
    address, then uses the default Forward template to forward each
    selected message.
 
o   Filters: Forward Message is now functional

o   ICON change for replied messages.  Several icons donated by 
    Keith Dombrowski <kdombrowski@mhv.net>, and I liked this one the
    best.  Thanks Keith!

o   Detach on FAT drive fix.  Name mangler was removing all dots and 
    turning them to "-"'s.  Forward slashes were also not converted
    properly.

o   Several changes to the way the command line /Q option worked.  
    this includes a synchronization between a runnning copy and a 
    second invocation, where the second copy will not return until
    the running copy has queued the message safely.

o   New utility test case: wrap.exe.  Provided to aid in on-demand 
    PGP use.
    
o   Mailto.exe included in distribution zip.

o   Upgrade.txt now also included.

o   Miscellaneous changes to help with continuing newsreader 
    development.


Changes included in v1.23 and v1.24
-----------------------------------
NOTE: v1.23 was a short-term stability beta.  v1.24 fixes some 
additional bugs, plus addresses several minor issues introduced in the 
v1.23 release.

I fixed many, many bugs as they were reported, and only in the last day 
or two started to try to remember them so as to document these.  Outside 
of changes related to the upcoming news client addition, the following 
items are what I remember fixing:

o   /X on the command line will now tell a RUNNING copy to poll for mail.
    
o   Changing accounts will handle pop3 password changes/prompts better.

o   Multiple account FILTERS (those NOT using multiple accounts see no 
    change). Filter files are now based on the account name. The default 
    filter file for the MAIL account in in the MR/2 ICE "root".  
    Secondary accounts now access an MR2I.FLT file in their base 
    subdirectories.  More changes like this to follow to improve 
    secondary account autonomy.

o   Cursor position after header edit AND/OR detach message is restored.

o   Open Attached directory now gives correct error messages.

o   Filters using REXX criteria checks are now passed a proper source
    file name for foldered messages (when invoked "on demand").

o   Careful!  I changed the "find in index" search logic a bit, and it
    took me a couple of days to get used to it.  When you do an index
    "find", it now highlights ALL matches at one time, and scrolls to 
    the first.  With this, it's an easy matter to find all messages
    from "gates@microsoft.com" and RMB->DELETE them (or move, copy,
    bounce, whatever).
    
    The danger lies in the fact that HUNDREDS of messages might be 
    highlighted, but maybe only one is showing on current the page.
    RMB->Delete gets all of them.  If you want the single messages,
    always click on it once first, to select only it.
    
    I see the need for a marked-message count somewhere.

o   "Re:" is inserted in front of subjects (when replying) in a 
    different part of the code and will be more consistent.
    
o   Progression meter will now display more reliably

o   If the "send now" checkbox is unchecked, the message will be marked
    as "save now but don't send".
    
o   Pertainent index RMB menus now have Mark as->On hold (same as save
    but don't send).
    
o   Quoted Printable display bug fixed for lines > 74 chars and "soft"
    linefeeds.

o   Template $File lines are filtered for embedded variables before
    being processed.
    
o   New template variable @UserPath@ will expand to the current account 
    (which is also the default mail path).  This allows secondary 
    profiles to include @UserPath@ in their templates to include unique 
    sigs per account.  Templates making use of this should be sure to 
    copy referenced file into the MAIL directory for the default user 
    profile.
    
    Example template use, default reply template:
    
        $file:@userpath@\mr2i.sig
        
    Would include "mail\mr2i.sig" for the default user, "noone\mri2.sig"
    for a profile labeled "noone", etc.,.
    
    More separation of account files coming ...
    
o   Attachment file names are converted to a FAT-compatible file name if 
    found to be working on a FAT-only drive.  Hard for me to test, so 
    let me know if any problems arrise.
    
o   Fixed yet-another bug when extracting BinHex file names.
    
o   Previously, in/out filters would end up tallying outgoing copies 
    into a folder as a "new" message.  Fixed.
    
o   Quoting of previously quoted material will be much cleaner.  I broke 
    this awhile back in the name of "efficiency", but now it's back to
    the way it should work.
    
o   Some menu shortcut keystroke clashes have been fixed.

o   An example of a MIME Content-Type header > 512 bytes was provided 
    (yikes!).  This would *previously* crash MR/2 ICE.  Fixed.
    
o   When a PreFetch filter that fetches headers-only exists and is 
    enabled, REMOVE FROM SERVER AFTER FETCHED is totally ignored for 
    safety.  Purging becomes a manual process, use Message->Purge from 
    server.
    
o   On-demand REXX (CTRL-Fkey) is now called with many environment 
    variables set with ready-to-use data.  The following information is 
    passed this way:

    Subject      ReplyTo     To          From        MessageID
    InReplyTo    Editor      Line        Column      SerialNumber
    Browser      FTPClient   Account     Version     References
    CurrentWord              CurrentBlock
    Newsgroups   FirstReference          LastReference

    See msgutil.org for access examples.
    


Changes included in v1.22
-------------------------

o   Mostly a cleanup pass for items introduced in v1.21.


Changes included in v1.21
-------------------------

o   Address book can now be sorted via a RMB popup menu.  This menu
    also contains selections to add, delete and edit entries.  More
    items will be added ...
    
o   Prefetch filters would fetch headers, but there was usually trouble
    getting the corresponding bodies.  Fixed.  Sorry!
    
o   Alt-W, write to file's file selection box works correctly now.

o   A move-to-folder now sets the archive bit of the file object.

o   Menu items are better enabled when a prefetch filter exists.

o   Timezone logic still did not correctly account for DST setting.
    Should be fixed now!
    
o   MIME associations are now referenced when attaching files.  The
    attachment will now acquire the Content-Type of a matching suffix,
    if one is defined (e.g., a GIF will be marked as "image/gif").
    Otherwise, when a filename suffix match is not defined, 
    "application/octet-stream" is defaulted.
    
o   MIME configuration page has a new checkbox.  "Consider undefined 
    MIME types as displayable text".  Defaults to OFF.
    
o   MIME mutipart attachments (like those dredded appledouble subtypes)
    handling modified.  MR/2 ICE now explains your options when you try
    to Message->Detach with one of these types.  It also will 
    automatically invoke the internal viewer on these parts if
    "detached" individually (same effect as "viewing").  This will
    save a ton of support questions.
    
o   When detaching a part of an unknown encoding and unknown file name,
    the system generated file name is correctly displayed.  Previously,
    an empty list would display.
    
o   The advanced option to send a file as an attachment from the command
    line was slanted towards the FAX interface.  The command line syntax
    for this remains unchanged.  However, the following commands will
    send a file as an attachment preserving the source file's name:
    
        mr2i /q:whatever.zip user@wherever.com "File for you!"
        mr2i /q:*whatever.zip user@wherever.com "File for you!"
        
    The second form of the command sends the file uuencoded, while the
    first form is the default of MIME/base64 encoding.
    
o   Rot13 is available from within the viewer (menu item is active).

o   If text is marked when replying, that text is quoted into the reply
    regardless of the state of the "quote source message" global setting.
    This allows for you to "usually NOT quote", but haveing a selection
    quoted when you need.
    
o   Reediting a "save but don't send" message now send the correct,
    modified version.  I'm embarassed and sorry for trouble caused by
    this goof.  Also, this flag was not always persistent across loads.
    IOW, if you'd exit and reload MR/2, the system would sometimes see
    the message simply as an "unsent".  Fixed.
    
o   Redirected messages work better with "folded" TO lines ... 
    addresses spanning multiple lines.  I also noted some formatting issues
    where Resent-to and the other lines were not "folded" to look nicer.
    Fixed.
    
o   Folder list may now be sorted by folder PATH.

o   The system COMPSEC setting is now used when launching external 
    utilities.  Hopefully this won't break anything ...
    
o   The ATTACHED directory may now be opened as a WPS folder via the
    Main notebook UTILITIES menu and also under the message 
    viewer/editor MESSAGE menu.  More options and ideas yet to come ...
    
o   Notebook tab control.  Options->Tab attributes is now on the main
    notebook menu.  You can control the height, width and font for the
    main notebook.  In addition, a toggle controls where the tabs are
    located; either on the bottom as you're used to, or on the right
    side.  Tabs logic was reworked to remove major/minor tabs ... NEWS
    will be "just another" minor tab on the main notebook, with groups
    opening similarly to folders.
    
o   Load time page selection.  You may now load MR/2 ICE and have it
    turn to one of the main notebook tabs when loaded.   Simply
    invoke with /1 for the inbox (defaults there anyway), /2 for the
    outbox and /3 for the FOLDERS index.
    
o   Shift-f10 is now available in the message editor/viewer to invoke
    the context menu from the keyboard.  It also works from the 
    header editing screen.  Still working on the index lists, but these
    are strange beasts :).
    
o   Filter maintenance list screen now shows checkmarks for enabled
    filters, empty boxes for those disabled.  Click on a checkbox in
    the list to toggle this flag on/off.  No need to "edit" individual
    entries if you simply wish to enable/disable.
    
o   A couple of new "dummy" DLL's are included.  The real ones represent 
    work-in-progress, but these fill the void without adding the
    bugs.


Changes included in v1.2
------------------------

Mostly cleanup and solidification of previously added features and bug
fixes.  Many new and exciting features have been added since v1.1.
I'm not done yet.  I still have many items that have been on my todo
list too long.  I will attempt to handle these in the next couple of 
releases.  In addition, I have a couple of really great ideas that 
will show up quickly.  Don't forget the integrated news reader.  This
will be thr primary thrust for awhile.

o   Improvements to the single click/keystroke PASTE w/QUOTE feature
    including extra linefeeds and focus changes.
    
o   MANUAL FETCH MODE:  To retrieve header-only entries in full, the
    procedure it now that you highlight one/more entries and press
    the FETCH toolbar icon (third from end) or Message->Poll for mail.
    All marked "previewed" messages, if any, will be fetched before
    a normal poll-for-new is performed.

    I stopped short of making manual mode selectable from the main menu.
    I want to test the case of switching it on and off while polling
    very thoroughly before depending on this.  Manual mode must be toggled
    on/off from the Settings notebook at this time.
    
-   "Real-time" Help file improvements got pushed off, too.  I'm more 
    excited about the web-based manual, although a bit slower right now.
    I will end up incorporating this manual directly into the app, but
    the job is bigger than I had guessed (matching ID's) and I have to
    release to make a CD ROM release.


NOTES ON THE WORKINGS OF PREVIEW MODE (HEADER-ONLY INDEX ENTRIES)
=================================================================

When you turn on MANUAL / PREVIEW mode with your POP3 server, the system
automatically fetches only headers for all new messages.  You can open
these entries as if they were normal messages, and this might be handy
if you need to examine the headers.  However, the more-common use of 
header-only index entries is to allow selective fetching.

Header-only index entries will be marked with a round "dot" icon.

To fetch one or more full messages from a group of header-only entries, 
simply MARK the desired items and invoke a pop3 poll (F2, 
Message->Check for mail or third toolbar icon from the end).  All marked
headers will be fetched first, then a normal poll for new headers will
be performed.

Remove from Server mode is ignored when Manual Mode is selected.  To
support this feature with POP3 servers that do NOT support the UIDL
command, message counts are used, and deleting messages from the server
would be risky.  Hence, in manual/preview mode, manual purges must be 
performed periodically (Message->Purge from server).

The MANUAL/Preview Mode flag is set by going to Options->Settings.  
On the first "network" page, in the POP3 groupbox is the "Manual mode"
checkbox.


PREFETCH FILTERS
================

Prefetch filters can be used in both Manual mode and "normal" mode to
automatically and selectively control the fetching of messages in
FULL or HEADER-ONLY mode.  The disposition of a prefetch-filtered message
will stay true regardless of the POP3 read mode.  For instance, if a
certain set of criteria defines a message to be fetched as "header only",
only the header will result in either mode.  Alternatively, if a "full
message fetch" filter is created, messages matching this criteria will
always be retreived in full-body mode, regardless of the overall POP3
fetch mode.

I use PreFetch filters on my system at home, where I have a dial-up
connection.  The filter tells MR/2 ICE to only fetch headers when the
message size is greater that 120,000 bytes.  This allows me to see all
of my mail more quickly and easily identifies mail that is probably
including attachments.  I then request to fetch these messages manually,
but I am free to read and respond to all other messages in the meantime.
Very handy.  And "mostly automatic".


Changes included in v1.19
-------------------------

o   Preview/Manual mode fixed up for POP3 servers that do not
    support the UIDL command.  Bugs fixed with purge-from-server mode.
    
o   Sig editor now allows only one copy to be loaded.

o   Bubble hints now have borders (Warp v4.0 made them bleed into 
    listboxes).

o   New (simple) test code to set DBCS style bits for EntryFields when
    the system settings support DBCS.  I need feedback!  Does this 
    help with DBCS subjects?? 

o   First-time printer setup crash fixed.  Again.

o   Filter maintenance screen now allows for the creation of a new
    folder, on-the-fly, while defining the filter.
    
o   A new convertor is available: PMMail v1.5 to MR/2 ICE.  It will be
    available via web page at http://nick.secant.com/mr2ice.htm.
    

Changes included in v1.18
-------------------------
I consider this release a beta, too.  I'm targeting 11/1 as a 
release date for v1.2, but I'll happily push it back a couple of days
if needed.

o   POP3 manual mode can be specified.  In this mode, headers are 
    fetched from the POP3 server but no bodies.  Index entries are 
    inserted with a new icon.  The user can then pick and choose which 
    full messages are fetched and when.
    
-   NOTE that this mode works ONLY with pop3 servers that support the
    TOP command.  If the TOP command is not supported, MR/2 will fail
    when fetching the first message.  No mail is fetched, but no mail
    is lost, either, as turning off MANUAL mode will correct the 
    problem.

-   BIGGER NOTE!  For those of you that have setup  MR/2 ICE so that
    if fetches from multiple providers into a single MAIL directory
    (by manually editing the INI file :), please DO NOT USE THIS FEATURE.
    The uniqueness of message ID's is required, and mixing mail from
    two ISP's and/or POP3 accounts will surely confuse things.
                
o   PreFetch filters.  Filters that control the automated fetching of 
    messages from the POP3 server.  Criteria can be defined based on a 
    message's header and/or size.  If the criteria is matches, the user 
    can specify to have fetch the full message, just the header, or to 
    skip the message entirely.
                      
    There are two modes available.  When used in normal "non manual" 
    mode, PreFetch filters can be used to specify message for which only 
    the HEADERS are desired.  For example, messages from a certain user 
    or over a specified size can be fetched in header-only mode, letting 
    the user decide if/when to get the entire message.

o   In-Progress messages that *are not* ready to be sent can not be
    saved into the outbox with assurance that it will not be sent.
    Use Message->Save (but don't send).  The icon for these messages
    will show as a paper and quill/pen.  A message can be "saved" any
    number of times ... once you click on the SEND button, it gets
    saved and sent.
                        
o   MR/2 ICE Ask-The-Experts(tm) Web Page!  Yet another way to get 
    user-based help for what's already the best-supported OS/2 email 
    available!  Simple web interface accepts and email address and 
    question(s) from the user.  This is then emailed to a panel of MR/2 
    ICE veteran users that have volunteered to share their knowledge.
                    
o   UUPC/UUCP drivers for MR/2 ICE are available.  This is a set of 
    third-party Rexx scripts and a small EXE that, when used in 
    conjunction with MR/2 ICE's new "custom mail driver" feature, allows 
    the native reading and sending of UUCP-style email.  See the ICE web 
    page for details and to ftp the latest version.
    
    Thanks goes out to Michael Taylor <miket@pcug.org.au> for providing
    this wonderful tool!
    
o   Split-screen editor:  ghost split-slider removed when zooming a
    message back to single window mode.  Also, splitter position 
    is saved to the mr2ic.ini file as a percentage and used each
    time.

o   More editor enhancements, particularly useful in split-window mode.  
    ALT-Q and the menu entry and icon for PASTE w/quote now will 
    function in the message "view only" window to immediately and 
    directly paste information to the reply window. In additon, the 
    CTRL-1 and CTRL-2 keys were enabled in split screen mode to allow 
    quick and precise selection of the editor window.  Finally, 
    Edit->Undo will function correctly after pasting w/quote.  NOTE that 
    has a side effect, the clipboard afterwards holds an already-quoted 
    copy of the original text.
    
    NOTE that Paste w/quote will also work in full-screen mode, with a
    reply active and while viewing the message portion.  The effects are
    not immediately visible, though, until you switch back to the reply
    window.    
    
o   MR/2 HELP menus now have links to various MR/2 web pages, including 
    the home page, the FAQ and the Ask-The-Experts(tm) page.  An online 
    web-based manual with SEARCH capabilites should be available soon.
    This will no doubt be a long-term work-in-progress.
           
o   MR/2 HELP Entry for "Send this message to MR/2 ICE Support".  Allows 
    a user to quickly and effortlessly mail the currently displayed 
    message to me as an attachment.  This method preserves all original
    message formatting and markings.

o   Reindexing duplication bug (cosmetic) squashed.

o   I have a PM Mail v1.5 to MR/2 ICE convertor script started and 
    looking faily good.  Watch the web page for more details.

o   I removed the problems I caused in previous versions by defining a 
    MIME association of "multipart/*".  For the message-level header, I
    ignore the association and treat it as a multipart :)
    

Changes included in v1.17
-------------------------
I consider this a BETA release of what will be v1.2.  Seems stable to 
me, but TONS of low level code has been teaked and prodded.  Could
be some instability in there, somewhere.  Be warned!

o   Folder-to-folder copying and moving performance improved. A move
    is now a TRUE file system level move, with far less overhead
    that the previous method of copying, then deleting.  Both copy
    and move now steamline the updating of the target index file,
    providing another large performance boast.  Still not perfect,
    but loads better!
    
-   Also cleaned up some window painting issues that should help 
    speed up things even more.

o   Added a "Use MIME by default flag" flag to the MIME page.  If 
    checked, all dropped files will be MIME'd, and the default
    Message-Attach file mode will be MIME.  Otherwise, the default 
    for both is UUEncoding.

o   Better handling of progression indicator when the pop3 server
    does NOT return a message's file size up front.  Previously,
    large messages would appear to start downloading quickly, then
    "frieze" (often at 85% or so).  In fact, they were working, but
    the 85% was based on 3000 bytes (a made-up default), and the 
    progression metter would never update > 100% of 3000.  Now the
    progress metter may STILL not indicate actual percentages, but
    it will "bounce around" and continually update.  (Specifically
    apparent with ISP's using PowerWeb pop server - e.g. os2bbs.com).
    
o   SENDS now connect with the SMTP/POP3 host once, send all messages,
    *then* disconnect.  Previous, each message would cause a 
    connect, send, disconnect.  No real problem for quick connections
    to fast receiving hosts, but very time consuming to slower 
    connections with mail hosts that do not "connect" quickly.
    
o   Custom "user programmable" Mail Drivers.

    New mail FETCH and SEND options in settings notebook ... CUSTOM.
    This allows for user defined REXX procedures to be called to 
    create the collection of incoming mail and to send each outgoing
    message.  I can see this working for UUCP and even MHS formatted
    message, and perhaps a whole lot more.  Here's how it works.
    
    Read mail via CUSTOM.  At the beginning of each poll for new mail, a 
    rexx script called "getmail.cmd" is called from the base mail 
    directory for the account.  For example, the initial/default account 
    would call "mail\getmail.cmd".  After that, the system checks the 
    defined SMTP delivery directory (change this path as desired) for 
    new files, and these are recognized as new mail.  If an error 
    occurs, a one-line message describing it should be stored in a file 
    called "getmail.err" in the base mail directory.  This message is 
    displayed to the user.  The absense of this file indicates a 
    successful custom fetch.
    
    Send mail via CUSTOM.  For each message queued for sending, a rexx 
    script called "postmail.cmd" is called from the base mail directory 
    for the account.  For example, the initial/default account would 
    call "mail\postmail.cmd".  The name of a temporary file housing the 
    ready-to-send message is passed.  If an error occurs, a one-line 
    message describing it should be stored in a file called 
    "postmail.err" in the base mail directory.  This message is 
    displayed to the user.  The absense of this file indicates a 
    successful custom send.
    
    Custom Mail Drivers (CMD's? :) should start by deleting their 
    respective error files, as these are preloaded by MR/2 ICE before
    invocation with "REXX script not found" messages.

o   Long email addresses when saved to Address Book would sometimes
    get chopped and corrupted.  We're talking *really long* addresses,
    but even these work now.

o   Marking a URL for Web Browsing/FTP now uses only the marked portion.
    Previously, marked section was ignored and the entire word/string
    would be used as happens when nothing is marked.

o   New "Redirect" option on RMB Message Index menus.  Allows you to
    quickly "bounce" messages to some other email address.  Message(s)
    remain mostly unaltered ... some header lines are appended to 
    allow for POP3 sending and to preserve original information.

o   The default FORWARD template has been changed.  The new template 
    will actually preceed each header line with a ">" to prevent strange
    routing problems.
    
o   New Options->Settings parameter to control the HEADER created for 
    FORWARDED messages.  You can now specify whether, by default, your 
    address goes into the Reply-To header, or the address of the 
    original sender.

o   Missing first char bug.  Often on resends and/or when working with
    previously sent messages, the first character of the message
    would get chopped.  Fixed.

o   WarpUtil.DLL is now used to link in WPS features.  Since this causes
    problems for OS/2 v2.xx users, an alternate DLL is provided.  For 
    v2.xx users, you MUST copy "nowarp.dll" to "warputil.dll".

o   Internal index changes.  Size is recorded in bytes.  An "o" is
    placed after the size to differentiate it from the previous
    method of counting and recording lines.  Also, for messages that
    are "current" on the POP3 server, the server's UID for this
    message is recorded as a new field (very end of entry).

o   Message size are now shown in the message index, at the very end.
    Sizes ending in an "L" are old-style LINE COUNTS.
    

Changes included in v1.16
-------------------------

o   MIME settings page changes were not being saved.  Fixed.

o   More detail on Filter Maintenance list screen.

o   NOOP command removed from SMTP conversation due to buggy NT server
    used by at least one ISP.
    
o   Efficiency of the unique file name generator improved.

o   Handling of single-type MIME messages improved.  Previously, types
    other than text and multipart would get confused.
    
o   MIME attachments that included paths in the file name would error
    on detach.  Fixed.
    
o   RMB->View for attachments now takes a "last step" if no MIME 
    association is found for the type (OS/2 v3.0 or later only).
    
    Now, if no MIME viewer is defined, the attachment is opened as
    a desktop object.  In other words, as if you opened it from the
    file manager.  This allows all of your WPS associations and
    already-defined viewers to be used.  This provides automatic
    access, for example, to all of the fancy ObjectDesktop viewers
    simply by accessing objects via the WPS.
    
    This may warrant actually REMOVING MIME association definitions.
    This will be a user's option; I will continue to try and improve
    the default association file assuming external viewers.
    
o   I changed the default "delete" flag for autoreplies to be OFF.
    This means that autoreplies WILL NOT be automatically deleted 
    after being sent.  This was somehow confusing the autoresponder
    and some autoreplies were being lost.  This does not happen
    in save-after-sent mode.  I may switch it back later, but until
    I can find out what's happening and fix it, it will stay this way.


Changes included in v1.15
-------------------------
Nothing really "new" ... wanted to put out a stablized release before
I added anything new or fixed larger bugs.

o   Bug with new Login submenu where logins did not always line up
    with a menu option.  Also removed "MAIL" from the menu list.
    
o   30 second freeze on new installs fixed.

o   Header-based filter bug resolved.

o   Some improvements to MIME-attached file parsing.

o   The new message count displayed in the title bar and task list is
    no longer linked to the "periodic beep" flag.  New message counts
    will now show even if beeping is turned off.

-   Also removed a call to WinFlashWindow() when the message count is
    updated.  I'm still looking for what steals the focus from Windows
    apps when polling.  

o   Fixed the text on the initial-install "font test" to be consistent.

o   New Settings page ... nothing new, just spreading existing options
    out to make room for new items.
    
o   I added some code to the MIME association area, but it isn't 
    accessible to the user yet (needs a pick-list form).

o   Mailto.exe (maillist.zip) now returns identifiable error codes on
    send failures.

    
Changes included in v1.14
-------------------------
First, I'd like to acknowledge the foru generous and ambitious guys that
helped put together the documention updates from last release.  They are:

    rayfaulk@HK.Super.NET (R. J. Faulkner)
    os2@tir.com (Jason M. Gottschalk - http://www.tir.com/~os2)
    Jerry Koret <jkoret@ibm.net>
    os_support@theriver.com (James McKenzie)
    
Thanks guys!  NOTE: these guys can be reached via email as a group using
the email address <mr2ice.doc@secant.com>.

Darn!  I was better at documenting this releases changes, but I left 
the paper listing them at home.  Go figure.

o   Modified slightly the POP3 high count warning message to avoid
    false calls.
    
o   Notebook statusline counts when deleting messages kept more 
    up-to-date.
    
o   Save-to-file now supresses divider line if first write (file
    didn't exist previously)
    
o   Filters and "on demand" functions that modified messages would
    sometimes NOT update the index.  I was looking for changes in the
    file-modified time, but if the changes were quick (same second),
    I wouldn;t detect the change.  File size is now also used, I'll
    think this out a little further.  Works much better, anyway!
    
o   Login menu is now a conditional cascade and will list ALL AVAILABLE
    profiles, and  a "default" that signs on as mail/mail.  If the
    profile has no password set, you are instantly logged in.  If it 
    does have a password, the login form comes up with the name
    pre-filled.
    
o   Reindexing of folders code was extremely inefficient, particularly
    when the folder contained larger messages.  Rewrote this and it is
    MUCH quicker.
    
o   Modified the message saving and moving code to identify and wait 
    for locked index files.  In my testing, I could not get MR/2 to 
    drop an incoming messages nomatter how fast I moved through existing 
    messages.  I believe I've knocked this one off, but I'll wait for
    those having problems to confirm it.
    
o   I still had a problem with MIME character translations that came up
    during the last 2 releases.  All seems to me back in order now.
    Text decoded from Base64 was never checked for needed conversions,
    now it is.
    
o   Wrapping of quoted text using the ALT-1-for-a-space mechanism now
    works as it should.
    
o   Sorting of index lists has been fixed.  Again.  Ah, the joys of
    multithreaded programming!  One inbox function/thread would switch
    the sort order while messages were inserted into another index. 
    I seem to have fixed this up ... another fix waiting for the test
    of time.

o   Demand filters are now functional, as is the RMB->Filters->Select
    menu item.
    
o   Better reply-to and from address matching.  MR/2 now "normalizes"
    each header address before checking to see if they are the same.
    This avoid the "which one" prompt when both are found and they
    are logically the same but not textually.  The longest address
    is automatically chosen in this case, in an attempt to preserve
    real names.  A thought just popped into my mind ... does this
    effect Mailing List setups?
    
o   Reindexing OUTBOX would often show ghost index entries.  I believe
    I've fixed this ...
    
o   More tiny ones; this was all from memory.  I'll try to itemized 
    anything else with the next release.


Changes included in v1.13
-------------------------
Quick bug fixes.  This will be replaced very quickly with a newer
version ... matter of days.

o   Using CTRL-Fkey and/or ALT-X on an EXISTING message would result
    in the original message file being deleted.  Fixed.
    
o   Long FROM lines would crash the forwarding process.

o   Forwarding and Replying to a message with long "unwrapped" lines
    would often crash.  Fixed.
    
o   Simple filters with OR'd and/or AND'd parts would often 
    malfunction, as the selected fields-to-check were ignored except
    for the first piece of the search criteria.
    
o   POP servers that send back lower case status words are now 
    supported.


Changes included in v1.12
-------------------------
There now exists a productive group of 4 people working on documentation
for MR/2 ICE ... you'll notice some new doc files resulting driectly from
them.  I will certainly acknowledge each individual, after I've checked
to make sure this is ok (don't know why it wouldn't be, but I'll play it
safe :).  Comments and/or suggestions are welcome.  See install.txt,
readme.1st and keys.txt.

o   Install zip now includes some new doc:  install.txt, keys.txt and
    readme.1st.  See readme.1st to find out what ALL TEXT FILES included
    with MR/2 ICE explain!
    
o   Fax-by-email support!!  MR/2 ICE now supports the transport of
    faxes and other PMFax-related documents via email, with the
    potential to save fortunes in long distance phone calls!  This
    feature will cooperate with the imminent release of PMFax v3.0.
    To support this feature, MR/2 ICE adds two new command-line
    capabilities ...
    
o   Command line parameter /D can be used as in this example:

        mr2i /Dmessagefile logfile
         
    and will load MR/2 ICE, detach all attachments found in the
    named message file.  A list of all detached files will be 
    found in the named logfile.  If no logfile is specified,
    the log is written to stdout.
    
    This is used in the faxrcv.cmd file included with MR/2 ICE
    for use with a link-to-Rexx filter.
    
o   Command line parameter /Q has been modified so that, if a space
    follows the /Q, a specific mode is invoked.  In this case, 3 parameters
    are expected:
    
        mr2i /Q filename address subject
        
    MR/2 ICE will create a new message to "address" (must be a valid 
    internet address, wrapped in quotes if it contains spaces) and with
    the given sibject (again, ""'s if spaces are included).  It then
    MIME encodes "filename" as an attachment and adds it into the
    outbox for sending.  If a copy MR/2 ICE is already running, that 
    copy will take over and send the message.  If no other copy is
    running, and MR/2 ICE is invoked as above, it will load the message
    into the outbox and exit.  To create the message, send and exit,
    without an existing running copy use:
        
        mr2i /XS /Q filename address subject
        
    Finally, if uuencoding is preferred over MIME encoding, you can 
    add a "*" in front of the file name:
        
        mr2i /Q *filename address subject

    While this works nicely for the purposes of interfacing with PMFax,
    it has potential with any other third party tools and/or user 
    scripts that need to send encoded files around.

--  To set up PMFax to work with MR/2 ICE, simply go to 
    Utilities->Settings->Program and insert the following text into
    the "EMAIL" field:
    
        d:\mr2i\mr2i /Q %FILE% %ADDRESS% %SUBJECT% /XS
        
    Where d:\mr2i\mr2i is replaced with YOUR location for the MR/2
    ICE executable.
    
--  To set up MR/2 ICE to pass incoming email faxes to PMFax v3.0 or
    later, simply set up a new filter:
    
        Utilities->Filter Maintenance ... New
        
        Description: Fax
        Tag: Fax
        Search type: Simple
        Areas to search:  Subject
        Text to search for: "EMAIL FAX" & !"RE:"  (include the ""'s)
        Filter type: Inbound
        Link to Rexx (mark this as checked):  faxrcv.cmd
        
    Then press OK.  You might opt to create a FAX FOLDER and copy these
    message there and/or removing them from the inbox, but this is not
    necessary for this to work correctly.
    
o   Install now includes the file faxrcv.cmd for use with the filter
    and features documented above.  NOTE THAT fxrcv.exe, as supplied
    with PMFax, is expected to be somewhere in your PATH.  If not, the
    script may be edited to point directly to the EXE, or this EXE
    can be copied somewhere in your PATH.
    
o   Double translations of MIME/QP text bug fixed.

o   New Settings->Prompts variable ... POP3 count threshold.  This is 
    a count that can be set or disabled.  Once your POP3 count grows
    past this threshold, MR/2 informs you of the situation on program
    load.  This to try and counter the problem with the default being
    to KEEP messages on the server, new users not knowing to purge,
    and mailboxes becoming full.
    
o   New warning that is issued when you attach a file via uuencoding
    and where that attachment's last line starts with a "." length
    character.  This has proven to cause trouble with various 
    combinations of POP3 servers and email clients, so MR/2 ICE suggests
    using MIME in these cases.  Note that the odds of this happening
    are something like 1:72, so it does happen!

o   Sorting of inbox and outbox is consistent when new messages are added.

o   Creation of a new folder now inserts the new item in the proper sorted
    spot.
    
o   Crash:  when a new outgoing message was created, then deleted from
    the outbox before sent, MR/2 would still try to send and crash at
    that time.  Fixed.
    
o   Crash: Some mailer liked to send BinHex with the entire section left
    padded with spaces.  I fixed both the code that crashed, then made
    it so the attachment is detachable.
    
o   Base64 text/plain is now decoded before display.

o   I spent an enormous amount of time reworking the way Tools->External
    Editing *and* the way CTRL-FKeys save and reload the 
    work-in-progress message.  External tools can now expect to get 
    full header and text messages, including MIME encoding and other
    attachments when invoked.  (This does NOT effect use of an external
    editor ... just when a message is modified in a "special" way).
    MIME markings (in particular, boundary strings) are preserved and
    reused on subsequent saves.

    This should help in the effort to support the combination of
    MIME and PGP.
    
o   Deleting the last MIME association no longer crashes MR/2 ICE.

o   Sometime recently MR/2 started creating messages with extra CR's 
    in the header section.  Fixed.

o   First-time users now see INSTALL.TXT automatically loaded into
    the E editor when they run MR/2 ICE.

o   The packed DLL's and EXE released as a test last time caused some
    minor trouble, mostly with v2.xx users.  While these instances were
    "rare", I'm not going to make this the default release mode.  I will 
    come up with a scheme where users can compress these files or ftp 
    compressed versions, but I don't want to cause more problems for any
    first-time users. 

o   There were more minor bugs crushed, but I didn't track all of the 
    little ones.

    
Changes included in v1.11
-------------------------
Mostly small bug fixes.

o   Several crashes located and fixed.  I don't remember all of them,
    but the Printer Setup crash on new installs was fixed.  There
    were a handful of others.  I didn't document them (sorry).
    
o   UUEncoded attachment bug fixed where UUencoding started on the
    very first line of a message (continuous loop condition).
    
o   Some minor additions to the HELP text, mostly covering areas
    where a new user might get confused (confirmation boxes).
    
o   Started support for nested MIME mutipart messages.  If you define 
    the viewer for a content type (e.g., "multipart/*") to be "*", and 
    you go to view a part of this type (RMB->View) it will open up a 
    SECOND message window with that part as the message.  It stull needs
    some work, but it should allow access to some of these appledouble
    message now.
    
o   Oh!  Almost forgot.  I am distributing DLL's in this release as a
    test.  Please note the following size differences between the
    normal versions of these files and the new versions:
    
        module                     orig                   packed

        mr2i.exe (v1.10)        598,539                 361,227
        c2151mt.dll             208,782                 137,996
        cp1bcmr2.dll            168,523                 107,021
        bsebcmr2.dll            178,033                  86,863
        opbbcmr2.dll            371,104                 248,095
                                -------                 -------
        total                 1,524,981                 981,202

    
    NOTE that v1.11's EXE size should be reduced to the same degree.
    This is simply the use of a freeware utility called lxlite on
    these files ... they still take the same overall memory to load
    and operate, we've just cut down on the storage size.  Zip file
    sizes will not decrease ... these files are simple "pre zipped".
    
    PLEASE let me know it you have any problems with these (mostly
    I'm concerned with any OS/2 v2.xx users out there).
    
    


Changes included in v1.1
------------------------
This release marks the completion of "basic MIME" support.  As usual,
there are issues left outstanding, but MIME does work nicely.
For example, items still needing attention include:

o   No Support for Multiple Message mime attachments (attachments
    "split" across multiple messages), either incoming or outgoing.
    
o   No automatic viewer launching, yet.

o   No outgoing BinHex.  Easily added, if there is a demand.

o   Directing attachments to different target directories is still
    in the works.  I meant to have this done, but failed, and since 
    it is not actually part of "MIME", I left it for last. This will
    appear very soon.
    
o   Nested multiparts are not supported at this time.

Ok, now for what IS there:

o   I improved all attachment code in general, handling user-supplied
    variations and adding them to my collection.
    
    BinHex attachments are now recognized even if NOT wrapped in MIME
    boundaries.
    
    Boundary spec in multipart header now handled for cases not wrapped
    in double quotes.
    
    Missing "end" boundaries are handled as a complete part.
    
    Multipart messages with no parts are now displayed (to accomodate a
    big PRM v2.0 bug that makes invalid MIME messages).
    
    MIME attachment files were never closed until ICE exited.  Fixed.
    
o   Viewer now attempts to launch from the RMB->Viewer item.  Error
    detection is minimal.  I will have to expand on this.

o   Spelling checker and thesaurus improvements.  Handling of contractions
    and words surrounded by punctuations is massively improved.  Spell
    checking of marked blocks no longer flips words around <!!>.
    
o   Printing of unwrapped, long-lined messages improved, but not a total
    fix.
    
o   Modifying a message via CTRL-Fkey and REXX, and/or with an editor 
    would often lose the read/replied/sent status.  Fixed.
    
o   Many, many tiny little nits cleaned up.  Of course, I still have many
    more to go.


[Note that v1.1 was the next release after v1.07]


Changes included in v1.07
-------------------------
This was mostly a bug-fix pass; much work was done on the MIME 
attachment engine (as well as with other attachments) and making 
existing things work and/or work better.  Another case where I wasn't
careful at all about documenting all of the bug fixes included (hence,
I can't list them)

o   Mime Associations can now be defined via a pushbutton on the 
    Settings->Advanced form.  This form makes use of a different style
    of list-item maintenance ... looking to see who likes this style
    better than the normal "pick list", then edit style.
    
o   I enabled the RMB->View attachment menu item, and it worked in my
    limited testing, but I expect to do much more with this.
    
o   Various fixes and changes to accomodate William Geiger's PGP
    interface.  This is looking very nice.
    
o   Again, more, but I didn't write everything down.  E.g., templates
    can now be moved around (with the up/down arrows) and when you save
    they stay where ypu put them.
    

Changes included in v1.06
-------------------------

o   Now supports KOI8-R and ISO-8859-10 character sets.

o   New MIME options in settings allow very low-level control of 
    character set conversions.
    
o   X-Sun-Charset header tag recognized and used.

o   New character translation tables ... I've reworked this logic and
    database to be less complex internally, allowing me to add
    new code pages and character sets as the demand occurs.
    
o   Outbox filter - testing, not meant for prime-time yet.

o   Attachment sizes are adjusted to better represent decoded sizes;
    File names now appear in uuencoded markers,

o   Better MIME handling for mixed case tags.  Previously, upper case
    tages were not treated properly.

o   "Special" filters that detect attachments now check message 
    parts, too.

o   Last byte(s) of MIME files sometimes encoded wrong.  This could 
    cause decoding problems on occassion.


Changes included in v1.05
-------------------------
WARNING: I have totally reworked the attachment subsystem.  Not only
does this improve overall performance significantly, but it also
provides seamless MIME and BinHex (Binhex is detach only at this time).
HOWEVER, with any new code, there can be problems.  I am considering 
the attachment subsystem "in beta" ... just this mechanism.

I expect to release v1.1 on 08/01/96 with MIME support that includes
user-definable viewers, an improved CP translation table with added 
support for ISO-Latin-10 and KOI8-R (Russian) character sets.  In 
addition, a user will be able to select a specific Code Page 
translation for any message.

BIG NOTE:  The // command parameter, used in testing, should NOT be
used.  In fact, the program now warns you if it is used.  AND, in fact,
the // flag's function has been reversed.  Using //, at least for now,
will cause MR/2 ICE to revert (mostly) to the old "attachment text 
viewable in the message" mode.  Just as a precaution.

o   Progress with attachments.  Support for the basic MIME mechanism
    has been added.  MR/2 will now recognize and parse MIME message,
    displaying text sections and replacing "attachments" with markers
    that represent the attachment.  The Message->Detach function will
    now detach uuencode, MIME and BinHex attachments transparently.
    
    Attaching files also supports MIME messages.  The Message->Attach
    menu now is a conditional cascade with UUEncoding still being the
    default (plans to user-configure).  The sub menu lists other options,
    including MIME/base64.  BinHex outgoing is not yet supported.
    
    The Text option is an experiment, but I believe it will be useful.

o   Drag file into reply window - becomes MIME attach.  Beginnings of 
    drag/drop support, just to say it exists, somewhere :)

o   RMB menu over an attachment is different.  Not yet functional, tho.

o   Detaching from a message index (RMB menu) now handles MIME parts, too.
    Previously only detached uuencoded attachments.

o   /X and /XS fixed.  I had to rework this quite a bit to get the timing
    right for ALL cases.

o   Fixed a possible heap corruption bug.  Extremely long TO lines 
    (>1K), when filtered, would (sometimes) overwrite one byte past
    the allocated buffer.
    
o   I've fixed it so that the deleting of MOST files is done 
    "permanently".  In other words, those using the DELDIR option in
    config.sys were having ALL deleted files "backed up".  This has
    been changed, by default, to NOT backup deleted files to your DELDIR.
    Some specific cases have been left untouched.
    
    For those of you that want to remain cautious at the expense of 
    speed,  I have added the command line option "/W" which will use
    the old delete method, in most cases.    

o   New command line switch /Qfilename.  Will add the names file to the
    MR/2 ICE outbox and exit.  File is assumed to be a properly formed
    message file.  You can force MR/2 to attempt to send the message via
    use of the /XS flag.

o   New command line switch /Euser@domain.com.  Starts MR/2 ICE and 
    immediately invokes a new message to the address specified.  For use
    by a third-party address book program still in the works, but it 
    surely has other applications.

o   Command-line control of a running copy of MR/2 ICE.  The commands 
    above will actually cause an existing instance of MR/2, if found,
    to do the desired work.  I went the extra step of support this for
    multiple accounts, so specifying an account should talk to the right
    copy of MR/2 ICE.  So, using the /Q option to queue a file actually
    puts it in the outbox of a running copy, and proceeds to send it.
    Using the /E option causes a New Message header screen to pop to the 
    desktop from a running copy of ICE.  Also:
    
        /Qfile  - as described above
        
        /Euser@domain - as described above        

        /+  will restore and bring focus to a minimized/burried 
            copy of MR/2 ICE.
            
        /-  will minimize an existing, running copy of MR/2 ICE.
        
    Other commands can be added as the need arises.  I'm open for
    good suggestions!
    
    NOTE that if a running copy of ICE is not found, a new copy is
    started and the work is done.  In the case of the /Q option,
    MR/2 ICE will exit after queuing.  /XS can be used to force it to
    send, too.  The /E option will start a new copy of MR/2 if one is
    not running, and the application remains active.    

o   POP3 server interface ... when an invalid password is given, will
    prompt you *only if* the config password is blank.  Otherwise,
    it just reports the error in the status window.  This prevents the
    prompting from interfering with auto-fetch scripts and procedures
    where the ISP might time out.

o   Using /S could end up racing the send thread with nothing for it to
    do, under certain conditions.  Fixed.
    
o   Closing Editor would "close" the app completely.  This was actually a 
    crash condition in v1.04a.  Fixed.
    
o   Pop3 logon errors now show message returned from the server.

o   Long free-form search strings (over 500 chars) could overwrite the
    stack of the incoming mail thread (crashing).  Fixed.
    

Changes included in v1.04
-------------------------
Didn't get to the massive bug-fix pass I had intended over the weekend;
real-work duty called.  Here's what I have to-date.

o   Text color in folder select when hilighted is now white on grey.

o   "Sending ..." message when /S param is used has been suppressed.

o   Save to file selection dialog changed back to enable file list.
    Title was changed to say "Save to File".

o   Minor cosmetic fix to Folder RMB button.

o   Changes to menu ID's to aid in accomodating HELP engine revisions.

o   Fixed the polling thread lockup when a Rexx filter failed due to 
    error.
    
o   Added a new filter type:  "Pre-Send" to the filter mechanism.  Not
    yet GUI selectable.
    
o   Rexx filters can now be forced to the foreground by simply adding 
    a "*" to the beginning of the command sequence.  For example:
    
        *maillist icemail.lst
        
    would run the MR/2 ICE mailing list in the foreground.  This allows
    REXX to prompt and accept input.
    
o   MIME coding started.  This also includes recognition of UUEncoded
    files and the treatment of them as "non-displayed text".  This is 
    not auto-enabled in this release, but will be shortly.

o   Kludge.  You can now add a char(1) to the end of the quote string,
    and this character will force a SPACE into the string.  Press ALT
    and then the numeric pad 1 ... you will see a smiley face character
    (CP850/437).

o   PreSend filters.  You can define a set of filter match criteria. Each
    message to be sent (queued messages) pass through this filter, and if
    found to match, can be passed through a REXX script.  Most other 
    options do nothing in this case, or have extremely minimal use.  
    After the filter(s) is/are executed, the message is sent.
    
    This was implemented specifically for PGP signing and encrypting. 
    It has other applications.
    
o   You may now specify a single filter to be BOTH an inbound and outbound
    filter.
    
o   Added support for internal MIME base64 decoding.  It even works :)
    Again, this is not automatically enabled at this time; I still have
    some work to do on ATTACHING files with this new system.  Detaches 
    work very well, tho!

o   Editor temporary names are now forced to be compatible with FAT 8.3
    naming conventions.    


Changes included in v1.03
-------------------------

o   Problem with temp file names that are not FAT compatible when printing
    marked text.  Fixed.
    
o   Indexing problem with filtered message to open folders fixed (apparent
    dupes, reindexing needed to match index with message).  Fixed.
    
o   Stealing of addresses via both the Message->Save address and RMB address
    functions improved and corrected.

o   Titles changes on a couple of file open dialogs to better match the
    real function ("Save as" or "Append to" instead of "Open").
    
o   Ctrl-+ plus works again, and Ctrl-= still works as an equivelent.

o   Bug in saving routine for Address Book, Group list, Filters and
    Templates fixed.  If you attempted to exit with unsaved changes MR/2
    warned you and appeared to give you a chance to save.  It actually
    would throw out yoru changes anyway.  Fixed.

o   Moving messages from one folder into the same folder ignores you.
    Previously, the messages would get deleted.  This seems to have 
    happened to enough people that figured I should "fix" it.

o   New way to register - via Compuserve's SWREG service.  MR/2 ICE is 
    SWREG #11797.  From a Compserve command prompt: GO SWREG.
    

Changes included in v1.02
-------------------------

o   Date header timezone is now corrected for daylight savings time.

o   Filters that start REXX commands do so minimized now.  If a REXX
    process is called fro my a filter, it is performed FIRST, before
    any copying to folders or other actions are performed.
    
    ALSO, if the Rexx process modifies the file at all, the index entry
    for that message is rebuilt.  This allows for REXX to massage the
    incoming message and the index will reflect any of these changes.

o   Tools->Edit Externally now checks to see if the file is modified,
    and will rebuild the index entry, of needed.  For example, you can 
    change the subject of the message and the index entry for the message 
    will immediately reflect the new subject.
    
o   MsgUtil.cmd is invoked via CTRL+Fkey.  The same "has message been
    modified" checks are performed on return from this process, and the
    message index entry is updated, if needed.
    
o   Oops.  Ctrl-Fkey would load msgutil against a message from the viewer.
    Initiate it against a reply and you'd get the original.  Fixed.
    Initiate it against a new message and you'd crash.  Fixed.
    
-   the four previous items took tons of code and should be considered
    new "beta" features.  I'm sure there are some bugs to shake out before
    depending on this to be flawless.  But, if you don't use them for
    these "advanced" functionality, you won't care :)
    
o   Fixed that pesky garbage-in-quote problem.  Again.

o   Index-to-Messages mismatch diagnostic beep now checks FROM in
    addition to SUBJECT for a match.
    
o   Text Editor now honors configured FTP and WWW commands from RMB.

o   Session Manager thread (the one added in v1.01 to monitor external 
    session threads) now starts up immediately (no delay).  Previosuly, 
    a delay was invoked which could caused any rexx-action filter to 
    fail until after delay (termination queue did not exist until then).

o   Problem with attachments - sometimes got truncated (bug I put in
    v1.01 only).  Fixed.


Changes included in v1.01
-------------------------

o   Outbound filters now function.  These are applied to each message
    *after* it is successfully sent.

o   Formatting printing now correctly prints backslashes and {} curly
    brackets.
    
o   The /X parameter has always started MR/2 ICE in "poll for new mail
    and exit" mode.  You can now add a modifier to this parameter to
    get it to poll for mail, send all queued mail, then exit.  Use /XS
    
o   Better handing of filename collisions for messages being filtered.
    Files were never overwritten, but occassionally the index entry
    would get recorded incorrectly.  Reindexing would be necessary.

o   Made the message index RMB popup menu's PRINT submenu a conditional
    cascase (menu with boxed-arrow).  This now honors the Printer
    Setting's page RMB option box.  Clicking on "Print" will take the
    default action defined on this page.

o   Outbox's Save Address menu now works correctly.  It was bringing up
    the rebuild index confirmation dialog.
    
o   Added READ, UNREAD and REPLIED to the outbox/folder index RMB menu's
    "Mark As" sub menu.  NOTE that these operations will only work on
    INCOMING messages, and SENT, UNSENT will only work on Outgoing messages.
    For example, Marking an Incoming message as sent will be ignored.  
    However, a folder can contain either type of message, or both.

o   Freeform filters now will strip any hard linefeeds the user has 
    entered before saving the filter to disk.  This created problems
    in the previous version.

o   Minor revision to the QP conversion in outgoing message headers.  
    Spaces were sometimes misplaced as defined in the RFC for QP in
    headers.

o   Message viewer/editor, Edit->Write to file option now works as it
    was supposed to.
    
o   Login/Logout now locks the POP3 service thread while transitioning.
    "Leaking" of messages while switching accounts was reported.
    
o   Message Editor: Pressing the Delete icon when in a reply-in-progress
    would result in the original message being deleted, too.  Now it
    only deletes the reply.
    
o   Pressing CLOSE while in a reply-in-progress now honors the "stay on
    same message after reply" configurable parameter.  This might take 
    a little getting used to for long-time users.
    
o   External Editing now does a better job of creating file names unique 
    for the current window.  There's still a bug with the OS/2 IPC Queue
    mechanism that I can't get right (messes up when doing multiple,
    simultaneous external edits)

o   Ok, I figured out the "bug" with OS/2's DosStartSession and Queues.
    I now have a new "session manager" thread that does nothing but 
    manages external sessions.  Multiple editor sessions work nicely
    now, as will any other external viewer window when needed.
    
o   Display of Group addresses chopped strings at 32 chars.  Fixed.

o   Printer Setup selection dialog selected the wrong "current" printer
    sometimes.  It matched the "current" printer by LPT port, which
    could have picked the wrong printer when two printers shared the same
    port.  Changed the headings on this form to reflect the *real* data
    displayed.


Changes included in v1.00
---------------------------
I fixed so many things, so fast, without writing them down, that my 
change list is not worth listing.
  
Official Release v1.0.  

Trying to remember the changes:

o   Added user preferences:  DEL key active in viewer, Show account
    in title.
    
o   Printing in text editor, both draft and formatted.  Printing
    now can use real Courier font, and accomodates backslashes.

o   Pick Address now includes group entries.

o   Welcome message now pops into inbox on first load.

o   Pop3 "wrong password" will prompt you again until you get it right :)

o   Detach files now preserves message window state (position in 
    particular).
    
o   Inbox and Outbox RMB popup menus filled in.  Still no demand filtering,
    but marking as read/unread, detaching files, and saving addresses to
    address book/group/file now works.
    
o   New "pick group" form used in saving address prompts.  Includes "new"
    button.
    
o   Closing a folder now protects against lost data.

o   Group maintenance:  group pick button removed as pick address book now
    includes groups.  Also, European names in tags work correctly.
    
o   Extra garbage in quote-paste cleaned up.

o   Updated help file (still work-in-progress)

o   Hid some buttons/switches that weren't being used but causing 
    some confusion.

o   Other items fixed as they were reported:  Filter problems come to
    mind (boolean algebra and unquoted phrases).


BETA Program change log:

Changes included in v0.99z1
---------------------------

o   HELP!  No, HELP TEXT!  This is still work-in-progress, but there is 
    much more real text than there was!

o   Font option from main notebook can be used to change message list
    font.  A few problems setting initial font ... 
    
o   Web/Speller RMB invocations will now work when cursor is at the
    END of a word.
    
o   Mr2files.txt is now included (was missing).  These are instructions
    on how to get the speller and thesaurus addons.  If either of these
    is invoked and the files aren't there, the instructiosn pop up.
    
o   All RMB speller options should be active.

o   Template maintenance and managner object massively rewritten.  It is
    now possible to add a new template and *should be* safe to edit 
    existing templates <grin>.
    
o   Many utility maintenance lists now have up/down arrows for moving an 
    items position in the list.  These function only in filters and
    templates.  The others will probably have these buttons hidden.
    
o   To, Cc and Bcc form fields now can hold a max of 2048 chars, as can
    the address book field for address(es).  Hardly usable this long for 
    normal address maintenance, but it will accomodate larger REPLY-TO-ALL
    lists this way.
    
o   Add a host of new options to the config object, all of which are
    waiting to me implemented.
    
o   Parsing issues with addresses containing commas inside quotes resolved.
    Also, "address (real name)" parsing left some space.  This has been
    removed (SMTP sends failing for some servers).

o   Header searches for fields were semi-case sensitive.  Still.  Fixed.

o   Icon changed.  I'll be playing with all of the contributions.  The
    one I build was made different for each resolution.  Thanks everybody!
    


Changes included in v0.99z
--------------------------
NOTE:  Secant's POP3 Server was released 4/28/96.  If you are 
interested, see http://www.secant.com.

o   In the previous release but not documented:  Reply to all is now
    an option when using the RMB within the TO and/or CC fields.  This
    function MAY choose to use both fields (To and CC) to distribute
    the addresses, depending on the size of the list.

o   HUGE speedups in tcpip operations.  In particular, receiving and
    sending mail.  I was using silly-size tiny buffers.  Not any more!
    More noticable on large messages and/or faster connection speeds,
    but faster overall regardless.

-   NOTE that as an "advanced option", I added a /B command line 
    parameter to allow control of the buffer size used.  The default
    is now 20K (512 bytes previously :).  Specifying /B32000 gets you
    a larger buffer and /B512 gets you the old "tiny buffers".  Value
    is forced between 512 and 32K.
    
o   Speedups on loading.  I spent WAY more time than I wanted to (how
    typical :) and the benefit was, well, relatively minor.  I shaved
    tenths of a second off of here and there.  I may have saved
    4-5-6 seconds of load time on my loaded-with-messages 486DX33.  

o   Context Menus reworked.  Some parts may not yet be functional.
    I disabled most non or partially working items.  Reply and Forward
    work but need some input.  How should these work?  I may add a 
    "quick reply" and a "quick forward" that jumps right into the
    reply w/out hesitation.  Hmmm.  Wonder what edit-header-before
    turned off would do ...
    
o   I removed the message header from draft printing and left the summary
    header.  Also, time now should print on both types of messages 
    using the OS/2 settings for time.
    
o   MR/2 will no longer hog the CPU (and effectively lock up) when it
    is dragged partially off the screen.
    
o   Color dialog has a pushbutton for "default" which will set the
    original EDITBOX colors for the viewer and editor.
    
o   External Editor specification will now allow for exact placement 
    of the file-to-edit, allowing parameters AFTER the file name.  Use 
    a "%s" to designate where in the command string to insert the file 
    name.  If %s is not found, the file name is simply appended to the 
    end of the command line (as it did in previous versions).
    
o   Address parsing now handles nested parenthesis.

o   Modifying the header of messages with long addressed would crash.
    Fixed.
    
o   Filters and real-time text searches: Phrases containing spaces no
    longer have to be enclosed in double quotes to be handled correctly.

o   Printer Settings has a default for new RMB print menu parent item.
    AND, the printer setup button is functional on this form, as well
    as in the RMB popup menus.
    
o   Not that help exists ... yet <grin>, but the help engine now will
    bring up help panels when in the SETTINGS notebook window.
    
o   Modified the printing DLL slightly to try and eliminate the extra
    EOJ formfeed with some drivers.  Seems it didn't work, but I'll
    keep the change.
    
o   Minor change that prevented resending of INCOMING messages that 
    have been moved to folders (sounds weird, but I do it often :).

o   MailTo.exe had a problem with message bodies > 32K (as I tried to
    the body as one packet, and tcpip limits packet size to 32K.  Fixed.
    
o   Improvements to broken connections on receiving from POP3.  I have
    a little more to do, but I do understand what's going on now.
    A broken connection will result in the poll for mail to stop.
    The polling will attempt to start at the SAME message next time.
    

Changes included in v0.99y
--------------------------
Short list this week.  I have more code to show than this <grin> but 
none of it ready for prime-time.

o   Quoting messages is MUCH faster.  More notable on long messages,
    but faster overall.
    
o   I made the = key mean the same thing as a + in the viewer (next
    message), as I saw someone pointing out that a PLUS is a shifted
    key on keyboards with no numeric keypad.
    
o   Printing DLL upgrades for real this time :).  Better paper size
    matching to printer driver sizes.  Fixes 107 errors.
    
o   Reply-to garbage in header on new messages (affected only those with
    no reply-to set).
    
o   I added dozens of small optimizations.  None of them seems to have
    amounted to much, but they're there.  Perhaps enough of these and
    we'll slowly see a difference.
    
o   You can now force a particular code page for translations to/from
    your machine.  I'm not sure if this is really what's needed, but 
    it was very easy to do and *might* help in the cases where a 
    keyboard/video translator is installed.  To force MR/2 ICE to 
    *think* you are using CP866, for example:
    
        mr2i /C866


Changes included in v0.99x
--------------------------
Release date for MR/2 ICE v1.0 will be May 8, 1996.

Mailing List add-on package will be available later today, 4/17.  We'll
call it an "early beta", even though it's working for me.

o   Enhanced msgutil.cmd, mostly by using all the code supplied by
    Jason Gottschalk <os2@tir.com> :).  I took his whole code structure
    and added in his "unpack AND view" code.  I did pull out many of
    the hard-coded executable names and moved them to the front where
    they can be more easily reconfigured.
    
    CTRL-F1 will now create an attached directory if one does not
    exist.  It will attempt to run munpack AND xbin against the 
    current message.  These will either need to be in your path OR
    in the attached subdirectory of MR/2 ICE (get them from my web page).
    THEN, in its default form, the script will attempt to run a viewer
    against the resulting file IF it matches a predefined set of file
    extensions.  It's Rexx, so it's easily extended!
    
    Thanks, Jason.

o   Additionally, msgutil.ccc has been renamed to msgutil.org and if
    you do not have a copy of msgutil.cmd in use, msgutil.org will be
    copied to msgutil.cmd.  You will need to copy the file over by hand
    if you want the new copy and hae been using this feature.
    
o   Modified printer.tf for "variable margins".  Should print better on
    A4 tray systems.
    
o   Printer DLL updated (equivelent to cpdll.zip patch released earlier
    in the week).  This should fix MANY of the recently created printer
    problems.

o   Message lines starting with the period character are now sent and
    received properly.
    
o   Folder sort order is now preserved when reindexed.

o   Attribution line does not appear in reply if "no quoting" is selected.

o   The crash caused by use of the /X comand line argument has been fixed.

o   Fixes to the MIME headers when using BCC's.  Also, MIME headers were
    being produced with the incorrect CTE types of 7-bit and 8-bit.  Now
    correctly uses 7bit and 8bit.

o   More code to deal with improper blank lines in the message header that
    previously would result in blank or incomplete index listings.
    
o   Duplicate header problem with external editor AND edit headers option
    resolved.
    
o   When forwarding, the subsequently re-editing the header, the 
    reply-to line would be removed.  Fixed.
    
o   One more SMTP open step added.  If all else fails, a low level 
    connection is forced with port 25 (bypassing services file).  This
    solved at least one strange problem :)
    
o   Opening of large messages is now faster by a dramatic margin.  
    I may still have a little more I can do, but this was a big leap.
    
o   Saving of large messages is also now massively faster.

o   Ha!  I found the problem where To/cc/bcc lines would get truncated
    at 160 or so characters.  You could add up to 512 chars when first
    editing the header, BUT, if you reedited the header, it would get
    chopped.  This was deep inside the ObjectPM core, and I removed the
    limitation.  In fact, I also discovered that 512 bytes IS NOT 
    the limitation of the OS/2 Edit field as I had thought.

    MR/2 ICE now supports address collections of up to 1024 characters
    per field.  That's roughly 30 well-formed (full, with real names)
    addresses.  By using the To and CC fields, 60 addresses can easily
    be handled; double that if real name comments are not important.
    This is the way it will remain for now, with the option of using a 
    distribution list available for longer lists (but the distribution 
    list is not displayed in the message).
    
    There may be more room to play here, but I still want to spend more
    time with this issue.  The situation is at least "much better" until
    that happens.
    
    I also adjusted the address book's address field to allow 1024 bytes
    to accomodate a maximum address list.
    
o   Changing accounts now corrects status line message counts.

o   When an external edit session is started, a ".Type" attribute is
    of "Plain Text" automatically assigned to the message file.  This 
    will save a step or two when using the E editor :).
    


Changes included in v0.99w
--------------------------
A big THANK YOU to all of those mentioning MR/2 ICE in newsgroups and
BBS conferences.  The ICE Mailing list is up to 250 users, volume is
still high, but not as bad as the first couple of days.  I'd say 60-100
messages a day? <grin>.

I'll make the mailing list code available next week.  I should also have 
some enhanced REXX stuff.  More donations, but not in time to include
with this release :)

o   Filters enhanced.  I've opened up the REXX and Special options.
    Minimal testing, but they SEEM to work.  
    
    The example file testmail.ccc is provided as a simple example of a 
    rexx test.  I'm still researching the rexx interface, but for now, 
    I'm using a kludge to return the results from rexx (Rexx is being 
    called from a cmd.exe session). If the file "mr2_rexx.$$$" is 
    created by the named script, the message is assumed to match.
    
    SPECIAL includes tests for message size, line count and attached
    files.
    
    Autoreply is now functional.  You must specify a template section 
    to use in creating the auto reply.  This is tricky, since you cannot
    create a new reply template from within ICE, yet.  Sorry.  It's an
    easy edit, tho ... edit your mr2i.tf and splice in the lines from
    mr2iorg.tf.  If you haven't customized your mr2i.tf file, you can 
    simply copy mr2itf.org to mr2i.tf and be all set.  Currently, 
    autoreplies are added to the outbox for sending, but deleted on send.
    I'm considering some options here.
    
    MR/2 added a header value for AUTOREPLIES as an aid in preventing
    endless loops of auto-replying.  Any filter that auto-replies should
    test for the existence of "X-AutoReply: Yes" and NOT autoreply if
    found.  Filter like: (whatever) & !{H:X-AutoReply}"Yes".
    
    ... Autoforward is next.

o   Printer setup lockup fixed.

o   Search/Replace lockup.  It doesn't lock up anymore.  Replace all
    works, replace one-at-a-time is still bad (but harmless).
    
o   Several problems with editing externally on-demand fixed.  Also fixed
    bug when editing header AFTER and cancel was pressed.  It now keeps
    you in the message with all of your text :)
    
o   Message are saved to disk with CR/LF's, and subsequently sent out 
    this way. (helps with some rare SMTP servers that require this)
    
o   Incoming messages.  Insertion into open folders was horribly slow. 
    Fixed (ok, it's at least MUCH better :).  Also, fixed another place 
    where index was being updated unnecessarily on message open.  I see 
    some other areas that can be improved ... I'll address these as we
    move along.
    
o   Fixed several small bugs with QP conversions.  Outgoing header
    translations for hi-ASCII values are performed.  Still a few items I
    want to add, but this is about done.
    
-   Also, I believe I've made QP working with the external editor options
    correctly.  ALTHOUGH, if you edit an "incoming" message externally,
    it WILL NOT be translated from QP nor from the source char set.
    This is the way it will work ... I should show, tho, outgoing messages
    (modifiable) in "readable" form when editing externally.

o   New sort option for message index: Message status.  Sorts in unread, 
    read, replied, unsent, sent order.
    
o   Right Mouse Button (RMB) popup menu in message indices now has a 
    "select to" entry.  Click on a startng message, find an "end" message,
    RMB->Select-to.  Highlights these two message and all message between 
    the two.
    
o   Spelling checker now takes into account your own quote string when
    deciding which text is quoted (and should not be spell-checked).
    
o   Bugs with several menu items crashing when invoked on "new message".

o   Template file would not be referenced if "edit headers before" was
    not checked.  Fixed.
    
o   Opening 7-8 folders at once would crash.  Fixed.

o   The CheckInstanceExists() routine now uses the full path of the
    running MR/2 when testing.  This allows for multiple copies of
    MR/2 ICE without specifying mail configs, as long as they are
    based in different directories.



Changes included in v0.99v
--------------------------
I release this with a small bit of hesitation.  There has been some 
discussion of problems with the new build of the support DLL's,
which I have chosen to use.  If there are too many problems, I will
offer a separate version linked with the "old" DLL's.

o   Outgoing MIME Quoted Printable and CTE Character set conversions.
    Your choice of 9 outgoing ISO sets, or US-ASCII.  Other options.
    (See new settings page).  Conversion of header strings is not in,
    yet, but will be quickly.  [Incoming conversions have been in place
    for awhile now].
    
o   New Settings page "Advanced features" ... MIME QP options and
    settings for Web Explorer and FTP commands spawned from Right
    Mouse Button (RMB) inside viewer/editor.
    
o   More Filter options started, but I disabled the controls for these
    again, as I didn't get to finish them.  They're next.

Fixed dozens of smaller bugs:

o   Last character of formatted print output chopped.  I cannot find
    the reason for the extra formfeed some users are experiencing.

o   Edit Externally did not always save current work to file 
    before spawning editor.
    
o   The UUDecode logic would loop forever on error or if no attached
    uuencoded file existed.  Path prefixes are stripped (better) from
    embedded file names.
    
o   I've added an experimental area in the title bar for account
    name.
    
o   Stabilized the threads a bit so that "false starts" should no
    longer occur.
    
o   Modified cleanup code on exit so that threads all commit suicide.
    This seems to have fixed the "failure to exit" bug.
    
o   Minor address book and group address book issues fixed.

o   Made subjects prefixed with "Re: " logically equivelent to "Re:".

o   Network Settings: modified the FROM and REPLYTO fields to have
    mnor validations.  Also modified the initila import of TCPOS2.INI
    data to guess better at the FROM string.
    
o   Creating a new user profile failed to add this to the "valid" list,
    so logging on with that name was not possible until you exited and
    reentered.

o   Folders now reset the "new" count to zero on close.

o   Printer errors now display to the user with a popup window.

o   Text searching and body-text oriented filters were broken.  Fixed.

o   Logging off sometimes messaged up the current INI.  Fixed.

o   Logging into a new account would leave empty grey area on right.

o   Split screen editor now allows "header" button to work correctly.

o   Cell boxes for outbox and folder index will now remember fonts
    dropped on them.

o   STILL NEW!! An MR/2 ICE mailing list.  Send email to 
    mr2ice.list@secant.com with a subject of SUBSCRIBE.  Discussions
    of MR/2 ICE bugs, problems, solutions, tips and tricks!


Changes included in v0.99u
--------------------------
NEW!! An MR/2 ICE mailing list.  Send email to mr2ice.list@secant.com 
with a subject of SUBSCRIBE.  Discussions of MR/2 ICE bugs, problems,
solutions, tips and tricks!

NOTE, LAST TIME!:  If you've registered MR/2 ICE and are not getting 
email notifications of new version (and want them, I guess), please 
drop me a note specifying your serial number, real name and email 
address.

I may actually wait TWO WEEKS for the next update.  I want to track down 
some strangeness, and keeping the same released code out longer may 
help.  Not sure yet, but just to prepare you!  For those getting the 
occassional SYS3184 (devide by zero), please report the crash address 
again. I will keep an EXACT DEBUGGING COPY of version U around for the 
purpose of finding this one.


o   That anoying "beep" and hour-glass cursor often when opening a 
    message?  Gone!
    
o   Message viewer Tools menu now enabled External Editor for read-only 
    messages.  Changes saved to disk (e.g., to incoming messages) *are* 
    reflected in the message window.  For PGP users and other folks 
    wishing to edit incoming mail for whatever reason (I need it on 
    occassion :).
    
o   Some Quoted-Printable character translation bugs fixed.  

o   Addresses with commas inside comments (parenthesis) failed.  Fixed.

o   Most import text/save text standard file dialogs now remember there
    previous paths and file names.  By request :)
    
o   Blank message may now be sent.  MR/2 had trouble with these before.

o   Ooops, BMT Micro's phone under "help" was listing their FAX number.

o   Printer template: modified big time.  Played with the footer spacing.
    Added some new @variables.
    
o   Printer Settings page revamped.  Now has Paper Size, simple font
    and font size selection.  NOTE that I still have some work to do
    with right margins (A4 paper size still has Letter size's right
    aligned headings), but this is minor.
    
    So, the special A4 template I sent to some of you is obsolete,
    use the printer.tf file supplied in this release, and set your
    paper size to A4 in Options->Settings->Printer.
    
o   Almost forgot!  By request, and something I've needed myself.
    Support within viewer for "Move to folder, Next/Prev message".  
    Navigate menu shows these options with keyboard connections to
    CTRL+UP and CTRL+DOWN.  No toolbar icons or menu quick-folder 
    lists, but I should get to these soon.

o   Modified the print thread to delay in starting.  There was a 
    hint that this thread might be involved in the exit-while-loading
    problem.  You won't be able to print for the first 4 seconds ICE
    is running :)

o   Minor revision to msgutil.ccc, prompted by Jason Gottschalk's 
    <os2@tir.com> post to the MR/2 ICE mailing list.  Ctrl-F3 has
    been made to support viewing of HTML embedded within a message.
    I only stole a small part of his code (with permission, of 
    course!) but like his code layout better than mine and will model
    the next release after that.  Thanks Jason!                



Changes included in v0.99t
--------------------------
NOTE, AGAIN!:  If you've registered MR/2 ICE and are not getting email
notifications of new version (and want them, I guess), please drop
me a note specifying your serial number, real name and email address.
OS/2 Shareware's system does not provide an email address, and I sometimes
miss the BMT Micro carbon copies (but do get email addresses later).

o   More printing issues.  Polling my list of registered users, we came 
    up with a majority confirmation that long descriptions passed to 
    various drivers caused trouble.  I've fixed a limit of 40 chars to 
    spooled file descriptions (detail printer view document 
    descriptions). This should help tremendously.  Some other printing 
    changes ... I'm hoping to hear of great results, but I assume I'm 
    not quite done yet.
    
    NOTE:  Form change dialogs.  I added these in and expect some of the 
    remaining problems to be with these.  If the driver knows you last 
    printed on Legal paper, or on Envelopes, the Job Properties dialog 
    will pop up.  There still seems to be a problem here (it still 
    doesn't print after changing the settings) and I am looking into 
    this.  If this message comes up, try setting the properties outside 
    of ICE, then reloading and printing again.  BTW, the default paper 
    size is LETTER for printed messages.  I am curious as to if this 
    causes problems for European users.  Let me know and I will try to 
    address them.

    UPDATE: I modified things a bit at the last minute <oh no! gasp> and 
    the popup job properties seem to be recognized now.  We'll see.
    
o   Modified printer.tf some.  Removed the $HEADER dump of raw headings, 
    cleaned up spacing and alignment a bit.
    
o   Sorry.  I had inserted a new formatting loop in versions S/S2 that 
    was invoked on pressing the SEND button.  Very slow, very 
    inefficient. Caused long message (e.g., attachments) to slow so 
    badly that you would think the system was locked.  Fixed (rewritten, 
    then written in assembler).
    
o   Printer settings use the same code in all 3 places it can be 
    invoked.

o   Added some code to the HELP menu for "Registration info" and added a 
    new "View read.me file" option.  Works OK, except I now realized 
    that the internal editor has no print capabilities (can't print the 
    registration form!) so it still needs some work.
    
o   Yes, I fixed several tiny bugs, but I can't recall them at this 
    time. Humph.  I'm getting old :)  Most of the focus *was* on 
    printers, tho, and now that I'm close on this (I think?), I'll spend 
    less time on it and get some other stuff done.


Changes included in v0.99s
--------------------------

NOTE 1:  If you've registered MR/2 ICE and are not getting email
notifications of new version (and want them, I guess), please drop
me a note specifying your serial number, real name and email address.
OS/2 Shareware's system does not provide an email address, and I sometimes
miss the BMT Micro carbon copies (but do get email addresses later).

NOTE 2:  Groups.  I'm working on some instructions, as this is creating
much confusion.  At the same time, I'm thinking about ways to improve
this.

Printing took an incredible amount of time this week.  QP, configuration
issues (Explorer, ftp, code pages, etc) and the a blitz on RMB menus are
next; lots of great ideas!

o   Printing?  I believe it's fixed ... at least the BIG problem with
    formated printing.  It turned out to be a driver-specific problem,
    which I knew before but couldn't place any logic behind it.  I have
    an office HPIII and HP4Plus that work perfectly.  Others had HP's 
    that wouldn't.  It all depended on how the driver handled a 
    seldom-used FORM specification.  This parameter is usually ignored, 
    so it is now removed and I've managed to print to my collection of
    dot-matrix test drivers.
    
    IF YOU STILL have a problem with formated printing, please let me
    know.  I'd like to know the version of WARP you are using (I've
    found that this matters in this case), the printer driver used, and
    and trap address and source.  I NEED ONLY the address as in 
    "generated an access violation at xxxxxxxx" and the module (MR2I.EXE,
    PMSPL.DLL, etc).
    
o   Other printer additions: settings.  The "Other port" option for draft
    printing has been enabled.  You can now specify any weirdness you want,
    although error checking is at a bare minimum.  Specified file/device
    is opened in "append text" mode.
    
    Also, a new draft setting that controls the end-of-print form feed.
    Sometimes it's needed, sometimes it produces a blank page.  Now you
    can pick which one you want.

o   I added some code to make printer selection persistent.  Testing will
    be very limited, and I'll know quickly if something doesn't work.  
    It's simple enough, tho.
    
o   The formating problem with outgoing text has been fixed.  It had
    to do with left over LF's, usually in pasted text whose lines were
    previously wrapped longer that MR/2's wrap column.
    
o   The Message viewer window now has a menu entry for 
    "Edit->Copy message file name".  This copies the fully qualified
    file name for the current message to the clipboard.
    
o   Minor bugs:  Auto-split window should now work when replying from
    a folder.
    
o   I tried to switch the filter system's REXX stuff to not load
    the command processor by calling RexxStart() directly.  Still
    needs work.
    
o   Ctrl-Fkey invoked REXX functions ... oh well, I didn't get a chance 
    to finish for this release.  Basically, a REXX file is invoked with 
    a key code and the file name, so you can do ANYTHING you want, 
    including detaching binhex and mime attachments.  This isn't what 
    I'll depend on for this ... it's just an escape for "special 
    processing". There's a msgutil.ccc file that can be renamed to a 
    cmd.  UNDERSTAND, please, that this whole thing may be reworked in 
    the next release. Consider it a toy/prototype at this time.  Ctrl-F9
    is not processed, Ctrl+F1->F12 are available other that that.
    Stay tuned.
    
    

Changes included in v0.99r
--------------------------
March is almost here.  I have committed to release a v1.0 sometime in
this month, and it is important to do so.  This will undoubtable mean
that v1.0 will not have all of the features on my to-do list.  That 
list has been growing at a fast pace, and some long-time entries have
not yet been addressed.

Releasing a v1.0 is a mere formality to me ... work will not cease, and
I will continue to upgrade the product quickly.  I'm pushing it with
once-a-week releases, I will probably drop back to every 2 weeks, with
"specials" in between, when warranted.

I anxiously await the release of the two major competitors' updates.  Right
now they have a bit of an advantage, as my work is out in the open and 
there's still a bit of mystery as to what to expect from "them".  I can't
wait to have some visible and relatively static new targets :).  And there's
the key ... I do not believe that the competitors can maintain the pace
that I intend to keep.  Only one has the resources, but they also have the
most overhead.  We'll see.  It will be interesting.

Rest assured.  If you see a v1.00, v1.01 will be out in another week or
two, v1.02 shortly after that.  That's how I've reached a version level of
2.26 with the QWK reader, usually at a .01 release at a time :)

I've been beating back bugs.  Lot's of them.  Again, not documenting too 
well:

o   Editing template sections is now more reliable.  Problems with changing
    the size of a section have been fixed.

o   TCP/IP updates w/regards to SMTP sends ... minor bug with one 
    user's host.  Some other changes with POP3 receives and odd packet
    sizes.

o   Replies crashing on send from folders AND navigation being disabled
    upon incoming mail.  This was a tricky one to fix, but I believe it's
    reliable now.  When a message was being copied/moved to a folder
    (including the copies done by incoming filters), the entire folder
    index was reloaded, invalidating the previously loaded memory image
    of any one that was open.  Fixed.

o   Ah.  I have dusted off my assembler books.  MR/2 ICE now includes 
    two small assembler routines for manipulating message contents.  
    This code was applied to some new areas, so existing code will not 
    increase in speed.  However, I see many places where things can be 
    made snappier with some assembler applied.  I will start to do this 
    over time, probably more realistically AFTER v1.0.  I once wrote a 
    database code generator and report writer (under CTOS/BTOS)  that 
    blew away all the competition w/regards to speed (and features, too 
    :).  I accredited the speed to a small core set of assembler 
    helpers.  I will apply the same technology to MR/2 ICE.
    
o   ALT-Q, paste with quote, now wraps better (by removing previous line
    breaks).
    
o   Minors:  RMB invocation of explore.exe will clean up URL's better.
    Updated the default template file for forwards.  Preparing for the
    support of selectable sigs and secondary-account specific support
    files.  Edit menu would disable entries when switching "back" to 
    the source message ("<" button) that were never reenabled.  Fixed.
    New reply-time variable: @SignatureFile@ that doesn't yet have
    a use :)  Spell checker buglets, a couple accelerator issues, etc.,.
    
o   POP receives.  Yet another strange case where lost data occured was 
    plugged. This was due to a connection disconnect and a subsequent 
    hurried closing if ICE my the user, but it still had ugly results.  
    This effected PURGE mode only.  I have cleaned up the warning 
    message so as not to invoke unneeded panic and fixed it so that the 
    same actions will not lose messages.  NOTE that I have also removed 
    a "cleanup by purging old messages" loop that may result in dupes.  
    Maybe.  Better this than lost data, IMO.
    
o   Oh, yes!  Almost forgot (Cheryl :-).  I added persistence when 
    dropping a font on the INBOX.  If this works OK, I'll add 
    it to the others. This is a test ... colors are pending, but 
    dragging a font to the inbox should "stick".  There are some kinks, 
    most w/regards to non CP850 fonts that will be fixed next release.
    
o   I have added some code to Filters that enables a REXX script to be 
    executed upon a filter match.  This is preliminary and spawns a 
    command shell for now, until I rework it.  I also have an example 
    script that I will use to maintain, over time, an automated mailing 
    list.  The file is provided as maillist.ccc ... you should copy
    this to a .cmd file.  I will only update the .ccc file, so that 
    overwriting any modifications you may make will be avoided.  To 
    invoke this file at this time.  I use this as so:
    
        Link to Rexx:   maillist.cmd maillist.lst
        
    The mail message file name is appended to this command line and
    the script is run.  Maillist.lst is the email address list I
    want to create ... it can vary based on your needs.  Naming the list
    in this manner allows multiple lists to be supported.  The script
    support two commands at present, SUBSCRIBE and UNSUBSCRIBE, both as
    the first word of the subject line.  Obviously this is work-in-progress,
    but it will fill a long-standing personal need :).
    
    You would then use it by defining a group, where the group consist
    of At Least this file (maillist.lst) as an entry.  I *do* intend
    on continuing until ICE can work as a list server (receiving posts
    and routing them to all members on the list).


GENERAL NOTES!

1.  The movement between open folders issue was brought to my attention
    again just now.  This, after a bit of a rough discussion on Usenet
    not long ago.  As I explained that I didn't, personally, like PM Mail's
    setup for folders, I remembered another gadget I had coded to help here.
    The Windows menu.  Has anyone ever looked at this with a bunch of 
    windows/folders open?  You should!  It's a quick and dirty index into
    almost any open and accessible MR/2 Window.  The same menu is on the
    main notebook as well as each message window.  Editor windows are not
    listed, but are on my todo's.  Just a subtle "fun fact".
    
2.  Installation over existing setups causes constant concerns.  And 
    questions.  I have built the ZIP files so that the risk of overwriting
    user-modified files is slim.  So, USUALLY, it is safe to simply unzip
    a new distribution set over an existing setup.  I WILL RECCOMMEND, as
    always, to backup the MR/2 ICE base directory, as a precaution.  This
    also gives you protection against a newly introduced bug that might
    render your mail system unworkable.


Changes included in v0.99q
----------------------- ---
SIMPLE HELP NEEDED:  I would like to see some examples of ISO-8859 based
messages that are not *-1 or *-2 character sets.  Does anyone receive
messages in one of the other char sets that can forward a copy to
nick@secant.com?  Thanks!

ALSO, I'm looking for suggestions for OTHER ftp sites on which to place 
MR/2 ICE initially on release.  Places that will benefit large numbers 
of people and ease the strain on my site.  I'll gladly crosslink my web 
page to these sites.  Gary Hammer's page would be a great choice, I'll 
write him, but he's pretty quick about grabbing released anyway! 
Specifically, a place in Europe would be ideal.  I've had some 
suggestions, but upon logging into these 2 sites, had no idea where I 
would even place the files! Just trying to spread things about some, and 
improve access.

o   Unsynchronized SEND and RECEIVE threads.  From the beginning, I coded
    it so you could not do both at once.  Not sure why, but I spent the
    week with them de-synched and all worked well.  I received messages
    while waiting for my last MR/2 released notice was going out.  I see
    even more possibilities here :)
    
o   A host of bug fixes ... bugs introduced in the P version.  Sorry!
    includes /L crashing, Read/check marks having a mind of their own
    and others.  Once again, I wasn't too careful about remembering them
    all.  Oh, also the new install blank-page-if-no-data-to-list bug 
    was fixed.    

o   Improvements to Multiple Account support.  Passwords now work <again!>
    as do the menu options for change password and delete profile.
    Oh, ya, pathing bug fixed when a default profile is created by simply
    starting with the /Mnewprofile.cfg flag.
    I've got just a couple minor issues to handle this week to call this 
    "done".  The biggest issue is how to allow each account to have sigs,
    filters and templates with the least negative impact on existing setups.
    A couple of other ideas, too ...
    
o   I've created a reindex.exe utility, not included this time but will
    be next release.  This will aid in the creation of more other-mailer
    to ICE migration tools, as I've externalized the hardest part of
    MR/2 ICE messages ... the message index creation.

o   Printing is still struggling, although I've made headway.  If I can't 
    close out the largest of the bugs in the next week, I may back off and
    code up a simpler system, worrying about all the fancy features later.
    Sorry this has continued on so long ...


Changes included in v0.99p
---------------------------
I've included the listings for a couple of interrim v0.99o fixes
in this list, since only a couple of folks collected the patched releases.

I also didn't do any better with documenting smaller bugs that were
fixed.  I know I did quite a few.  I should be handling the smaller ones
more quickly.

o   Code Pages - I handled Latin-2 conversions, but my libraries always
    used a CP850 font.  Fixed to honor the systems current CP.
    
o   CP conversions STILL weren't done unless quoted-printable was 
    specified.  Fixed.  Also, "quoted-printable" was tested for too
    tersely, and was not found if prefixed with too many spaces.
    
o   Minor menu disabling for folder index fixes.

o   Conversion of QP and Base64 codes in message headers.  There are
    still a few quirks, but they are minor.
    
o   Folder indices may now be closed simply by clicking on the "Close
    Window) icon, third from the left.  It seemed more handy to change
    the meaning somewhat.  We'll try it and see.
    
o   Folder message count fixes.  Again.

o   More menu items disabled when not appropriate.

o   Two more viewer navigation options ... open next/previous INDEX search
    hit.  I'm sure I'll find plenty more of these, and I'll probably add
    the "delete" versions, too.

o   Some minor fixes to Multiple Accounts.  I expect to delve into this
    more this week.  That, and finally, formated printing.
    
o   Reworked this read me so that change logs are at the top of the file.
    The 


Changes included in v0.99o
--------------------------
I had hoped to have more "results" in this release, but the process of
debugging the printing is still underway.  I understand the problem(s)
much better, but don't (yet) have concrete, blanket results.

o   How to say this ... printing sometimes works again :).  If you were
    able to print formated before, then couldn't, you probably can again.
    The major problem with formated printing still exists ... but I've
    narrowed it down.
    
o   Miscellaneous filter issues handled ... saving, modifying, initial
    entry activation.  What's there seems to be stable now.
    
o   Folder issues with marking read messages, handling counts, etc.
    Some fixed, a few more to track down.
    
o   Quite a few bugs that I don't remember ... it was one of those weeks
    where I tried to fix some things as soon as I heard about them, but
    failed to write them down.  For example:  Web Explorer was launched
    as a child of MR/2 ICE.  So, exiting MR/2 ICE would close any
    internally launched WEB links.  Fixed so that WE's are separate 
    independent session.
    
o   Translation cleanups.  ICE now recognizes the MIME quoted-printable 
    header regardless of the charset and performs escape char translations.
    
o   Character set conversions.  I massively rewrote this into the 
    ultimate conversion engine (IMHO :).  MR/2 ICE now supports 45 
    code pages / character sets, including ISO-8859-1 thru 9.  It 
    supports more code pages than standard Warp does at this time, but 
    I've planned for the future :).
    
    No DBCS code page conversion is supported at this time.
    
    All MIME ISO headers (1-9) should be properly converted for display.
    I still have send-side conversions to handle.  I'd like to hear, 
    either positively or negatively, if display-side conversions are
    working for you (this goes out to non-US users mostly, I guess!).
    Is this working OK for you or not?
    
o   I've removed the DBCS flags from all ENTRY fields ... pasting should 
    now work.  Investigating better fixes ...

o   Multiple Instances of MR/2 ICE may now be started, as long as EACH
    instance references a different mail configuration file.  This allows
    the monitoring of different accounts.  For example, if you've created
    a second "account" to monitor mail at a different ISP, and that 
    account is called ISP2 (thus, a file ISP2.CFG exists), you can monitor
    mail for both the "default" account, mail.cfg and ISP 2 this way:
    
        start MR2i
        start MR2i /Misp2.cfg


Changes included in v0.99n2
---------------------------

o   Filter bugs.  First, I left filtering out of SMTP "read" mode.  Fixed.

o   Filters would actually NOT filter some messages.  This was due to
    the unobvious occurence of a name collision.  What this proves is 
    my filter-error recovery works great (if an error occurs, message
    stays in the inbox).  I've fixed the name collisions ... I could 
    explain what happened, but it doesn't matter ... it's fixed.  This
    problem arose when TWO or more messages filtered within the
    same second to the same folder.  All but the first one would fail
    and remain in the inbox.
    
o   Filter maintenance ... saves sometimes weren't performed.  Fixed.


Changes included in v0.99n
--------------------------
There is MUCH new code in this release.  Please, save your v0.99m
executable as a precaution, just in case something doesn't work right
for you.  Previous MR/2 ICE version are usually available on my ftp
site in the mr2i sub directory.

o   Added inbound support for quoted-printable message (simple MIME 
    messages using the ISO-8859-1 character set).  Display only support 
    at this time (no outgoing translations).  Messages sent in ISO-8859 
    with proper headers will automatically be converted to your default 
    code page.  Only code pages 850,437,860,863 and 865 are supported at 
    this time.
    
    This means that those anoying "=0D" symbols in certain messages should
    be converted, and hi-end ASCII should display language-specific
    characters properly.  Let me know how this works ...

o   Filters?  You bet!  Consider this a "real beta", as this code is all 
    new and messes with the heart of my email delivery engine.  It still 
    has worked flawlessly here.  The Filter Maintenance form gives away 
    many of my ideas, and there were even some I believe to be original!  
    It all starts under the Utility menu.
    
    There are many areas of the Filter form that are disabled, as the
    code to support them is not there yet.  What you have at this time is
    a pick of simple or freeform search criteria.  You can copy/move a
    matching messages into a specific folder, if desired.  You can then
    choose to keep the message in the inbox or delete it from the inbox.
    If no folder is specified, and you delete the message, it is the
    same as "killing" it.

    Simple searches let you pick the area(s) to test, and a simple keyword
    or phrase (multiple words inside double quotes!).  Boolean symbols are
    allowed, but this mode is meant for users having simple search needs.
    
    Freeform searches follow the syntax spelled out for text searches, 
    below (see version L).  This allows for very complex search criteria 
    to be specified.  For example, it is possible to test a user-defined 
    header line and match against its content.
    
    Only Inbound filters are supported at this time.  You can see from 
    the other options on the form hints of my intended direction.
    
o   Font selection and application to the Message Viewer/Editor.  Certain
    outline fonts were shown in the font selection pick list, but were
    not actually used when selection.  This has been corrected, and the
    Russian font example kindly supplied by a user works just fine :).
    I also fixed the font selection dialog to display with the currently
    active font displayed.  A bug remains with the outline fonts where
    point size is not selected correctly.  I'll work on that ...

o   Folder Index has been enhanced to show a count of "new" messages and 
    to display folders with new messages in red.
    
o   Folder message listings now work better ... icons correspond to the
    original status of the message, and status-line counts tend to be 
    more accurate :).  May still be some strangeness, but much of what's
    been reported is fixed.


Changes included in v0.99m
--------------------------

o   Another UUencoding bug fixed ... actually a bug in the MLE text 
    import code that would have the largest effect on attached files.
    Occurred when a partial section being imported ended with a LF.
    
o   Double click on a word in the editor no longer invokes popup menu.

o   Double click to close a window would press an underlying toolbar
    botton.  Fixed.
    
o   Filters have been started and are mostly "in", although you can't 
    see them yet!  I have spec'd out what I believe to be an extremely 
    comprehensive filter system.  I looked at quite a few "other 
    mailers", and read all user comments I have received to date (NOTE 
    that I could not find filters within Eudora ... but I'm no expert!). 
    All of this will be implemented in due time, although a subset will 
    probably be offered to get everyone started.  
    
o   New configuration option: Queue unsent message on program start.
    Does just that ... a popular request!

o   I laxed off on the nag screen a little.  I moved it back so as to
    start popping up after 120 days instead of 60.  This will move 
    back to 30-60, once I release, but I felt funny bugging people this 
    early.  ALSO note that, once released, unregistered users' X-Mailer 
    line will be marked with "(unregistered)" after the grace period.
    This isn't enabled yet ...
    
o   Worked on code to handle individualized group sends ... something
    that will allow groups to be used with POP3 sends too.  Not ready
    yet, but just so you know what I'm working on :)


Changes included in v0.99l
--------------------------

o   You can now register via the OS/2 Shareware BBS, online with any
    major credit card!  Use your modem to call the OS/2 Shareware BBS 
    at (703) 242-4482 or telnet into os2bbs.com.

o   Resending a message multiple times now only sends it once.  A message
    can exist in the send queue only once.  After the queue is cleared,
    it can be readded, but not until.

o   Address book doubling fixed.
    
o   Folder deletion would not remove the folder directory if it was ever
    reindexed.  Fixed.
    
o   Yet another POP3 server variation ... server never reports size of
    a message.  I now have a mechnism that expands the message buffer
    before overflow.  Should have done it this way to begin with ...
    
o   Pasting-with-quote strangeness fixed up.  Also Remove CR's (CTRL-F9)
    tendency to chop tail carraige return off.
    
o   Marked source-message text is used as the source for a reply's quote
    if more than 40 characters are marked.

o   Delete-and-Next now works correctly on the LAST message in the list.

o   Forwarding a message now respects the "always use external editor"
    setting.

o   Logout now confirms with a message box before clearing the current
    profile.

o   OK, I added some new search code in.  While it doesn't yet show, 
    there are a TON of new features in the program :).  For those of
    you familiar with MR/2 Classic, the complete Virtual Conference
    string-match engine is now in, waiting to be thoroughly exploited.
    This code will be the basis for filters, too.

o   I've added to the main index FIND menu ... Text search options.
    This will allow you to text search through the contents of ALL
    message in the currently displayed index.  This begs for some
    polish and options (and I'll get these in quickly).  The search
    is currently NOT MULTITHREADED and will make you wait, but will
    pop up the first "hit" message and highlight all hits.  There
    are new "Navigate" message-menu options for next hit, previous hit.
    In all, a basic "grep" system.
    
    Now, for text search strings, ICE supports full boolean expressions,
    parenthesis for grouping, forced case sensitivity (case is ignored
    by default) and exact word matches.  Oh, and soundexing.  Thanks to
    MR/2 Classic again :)
    
    I have many. many other ideas ...
    
    I'll steal some samples from MR/2 Classic's docs and include here
    to provide some "quick start" instructions for those that want to
    try this out.
    
    
x   Boolean match logic is now available ...

    Keywords can be OR'd together, AND'd together and/or NOT'd.  In
    addition, parenthesis can be used to control the evaluations of
    the test.  There is also an operator that will match a word,
    remaining sensitive to case.  I've also added support for quoted
    strings so that spaces and the special boolean operator symbols
    can still be searched for.  Some simple examples:

        (OS/2 | OS2) & !WARP    (OS/2 or OS2) and not warp
        Windows & OS/2          Windows and OS/2
        Windows | OS/2          Windows or OS/2
        ^warp                   warp, but ONLY if all lower case letters

    The "operator" symbols follow the conventions used by C and C++ for
    boolean operations:

        &   is the AND operator
        |   is the OR operator
        !   is the NOT operator
        ()  cause the expression inside to be
            evaluated as a single expression.

    and two others that I added:

        ^   causes a case-sensitive match to be performed.
            The word that follows must be found with
            matching capitalization to be concidered a
            "match".
            
        ~   causes an exact word match to be required.  
            String/phrase that follows must be found with 
            standing on it's own; not imbedded within another 
            strings.

    The following will find all messages that contain one or two
    different words referencing OS/2 that also mentions "bugs".
    if the message doesn't match under this criteria, then it is
    tested for the words "Windows" and "slow" in the same messages:

        ((OS/2 | OS2) & bugs) | (Windows & slow)

    The following is somewhat similar.  It will also find all messages
    that contain one of two different words referencing OS/2 that also
    mentions "bugs".  If the message is found to match, then it is
    tested for the words "Windows" and "slow" in the same messages.
    If these words are both found, however, the message is eliminated
    (compliments of the "!" NOT operator):

        ((OS/2 | OS2) & bugs) & !(Windows & slow)

    A few more examples:

        ObjectPM | "Object PM"      spaces are ignored unless witin quotes

        "R&D"                       operator characters must be in quotes
                                    if part of a search string.

        R&D                         finds the single letters R and D,
                                    anywhere in the message.  This *isn't*
                                    what you want!

        "(ch | 0xFF)"               more special characters within quotes.
                                    The operator characters will be treated
                                    as any other characters.

        """Windows"""               Looks funny?  It will find the Windows
                                    in message but only if between quote
                                    marks.  Two quotes together are treated
                                    as a single " mark, but they must still
                                    be part of an entire quoted string.
                                    Tricky?  Maybe.  Just know that ...

        ""Windows""                 WILL NOT WORK, and that ...

        "can you say ""neighbor""?" will find the prase 'can you say
                                    "neighbor"?'  The word neighbor must be
                                    within quotes to be concidered a match.

        "&Windoze"                  Soundex search for anything sounding
                                    similar to "Windows".

        ^warp | phasers             Looks for the word "warp" in all lower
                                    case ONLY, or the word "phasers"

        ^NT | ^Nick                 Looks for the capital letters "NT" or
                                    the string "Nick" where only the N is
                                    capitalized.

x   Further enhancements to the text-string search function.  Support
    for selecting message-specific areas to check within a search
    specification.  For example, you can now ask for all message that
    have "OS/2" in the SUBJECT field, but not in the message itself.
    You may tag any word, or set of words within matched parenthesis,
    with a set of areas to test.  The default is to test all parts of
    the message.  For example:

    {S}OS/2                 Matches "OS/2", only checking SUBJECT

    {F}"jim@gilliland.com"  Finds ONLY message FROM Jim Gilliland

    {M}"Tim McClanahan" & !{FT}"Tim McClanahan"

                            Finds references to Tim McClanahan
                            inside any message text, but excludes
                            messages FROM or TO him.

    {S}(MR/2 | MR2 | MR-2)  Matches any of these three strings when
                            they exist in the SUBJECT field.

    {Conclusion}            Probably won't find what you want :)

    "{Conclusion}"          Probably is what you want.  Finds any
                            occurence of the word "Conclusion" that
                            is enclosed between curly-brackets.

    
    Valid areas are From, To, Subject, Message and Header,
    represented by the letters F, T, S, M and H, respectively.
    The value 'H' may be followed by a header field "tag" to specify
    a specific header line.  For example:
    
    
    {H:Cc}nick@secant.com   will match all email cc'addressed to me
    
    !{H:X-Mailer}""         will find all messages without an 
                            X-MAILER header line.
    
    {H:X-Mailer}"MR/2"      will find all messages with an 
                            X-MAILER header line containing "MR/2".
    
    {H:X-Mailer}"" & !{H:X-Mailer}"MR/2" 
          
                            will find all messages with an X-MAILER
                            header line that does NOT containing "MR/2".


    Another search string modifier ... the tilde (~).  This, when
    placed at the very beginning of a keyword, requests the match be
    qualified as an "exact word match".  If the strings is embedded as
    part of some other word, it will not match.  For example, searching
    for the word "owl" will match "owl", but also words like "knowledge"
    and "scowl".  Using the search string "~owl" will match only with
    "owl" as a standalone word.  Beginning and end of line cases
    are handled correctly in this mode.
    


Changes included in v0.99k
--------------------------

o   Fixed a dozen or so little bugs, most of which I didn't record.  
    Mostly smaller items.  In particular, I remember the logging out
    bug that left folders open.
    
o   Problem with POP3 polls in purge-from-server mode.  Under certain 
    circumstances, the internal start counter would get corrupt and 
    the risk of losing mail was possible.  I've fortified this
    code, making sure the count is always remembered conservatively.
    
o   FP16 kludge/fix.  I spent alot of time with a couple of select
    users creating intermediate version with more logging built in.
    During this process, I determined that the exit problem appears
    to be originating in the formatted printer object of MR/2 ICE.
    I don't know why yet, and I probably won't look harder under the
    FP16 fix is out.  I've got to rework the printer code anyway.
    
    NOTE that I'm not POSITIVE this is the problem, but the logs 
    indicate it probably is.  I also made soem thread code changes
    that might help.  
    
    If MR/2 ICE exits under Fp16 for you, try running with /V.  This
    suppresses the formatted printer driver.  I'll await further feedback
    (as to whether this allows ICE to be loaded reliably).
    


Changes included in v0.99j
--------------------------

o   Logging into a account would automatically poll for mail.  This
    has been changed to respect the "automatically poll for mail"
    flag of the newly loaded profile.
    
o   Modified startup logging to flush the output buffer after every 
    line.  This will prevent 0 length log files and perform the
    function it was meant to do in the first place.

o   Resizing of open folder pages now works correctly.

o   Reorganizing the index of an open folder would leave the folder
    selection entry in an inconsistent state.  This caused a crash if
    it was reopened.  Fixed.

o   Wow.  The option to edit the header AFTER editing never really
    worked.  I guess most people (except for the 2 folks that 
    reported this problem :) don't use the after options!  Changes
    made on the "after" header form were totally ignored.  Fixed.

o   Related somewhat to the above, I removed the inconsistencies I
    could find with the insertion of the "Re:" prefix in Subjects.
    This was getting inserted far too often.  Small nit, but it 
    bothered me :)
    
o   Split screen editor resets to single screen once reply is sent.

o   Reworked the Inbox and Outbox popup menus a bit.  Removed things
    that weren't implemented and/or didn't make sense here.  Add the
    abitlity to rebuild the message index for each of these lists.
    
    Rebuilding a major index is something that shouldn't be done
    without a reason.  I will add more text to the confirmation screen
    in order to explain more thoroughly.  
        

Changes included in v0.99i
--------------------------
This is a quick intermediate release targeted towards fixing a few
items I broke in the last two release.  That, and to make LaMail imports
cleaner.

o   File names generated by MR/2 ICE are always full 8 digit names with
    3 char suffixes.  Shorter base names did not previously function
    correctly under ICE.  Now they do.  The only suffixes officially
    recognized for messages are still .RCV and .OUT.
    
o   Multiple Accounts.  The new password logic prevented account configs
    made with older version from working.  I now check the DATE the config
    (the profile) was created, and if before 12/26/95, the password is
    tested against the user name (the OLD way).  Otherwise, the password
    must match that chosen at creation time.  There's a grey area here
    that isn't handled, but it's small.
    
o   Beeping on SEND attempts subsequent to a failure are suppressed.


Changes included in v0.99h
--------------------------
Bad week, but I still managed to fix many bugs ... and I believe I'm
ready with OS/2 Shareware registration utilities.  I have a on of code
items started, but can't add them until I've had more time to test.

o   Logging was changed quite a bit (error/event logging, invoked by
    the command line switch /L).  The output is directed to a file
    named "mr2i.log" ... redirection is no longer neccessary and, in
    fact, will no longer have any effect.
    
    I've added logging for the entire startup process of MR/2 ICE.
    This in an attempt to track problems with fixpack #16 and ICE.
    If your program exits starngely upon startup, please run:
    
        mr2i /L
        
    and try again.  If it exits again, please email me the file 
    "mr2i.log".  Thanks.

o   Focus issues, fixed as they were reported.

o   Yet-another attached file problem, caused by the MLE import routines.
    Adjusted one more time.
    
o   Pop3 purging is now performed by the mail fetching thread.  This means
    that the rest of the interface is functional while purging.
    
o   I modified some procedures related to the key system.

o   Refixed the POP3 receive thread for message size reports that are
    not what was previously expected.  The G fix didn't work, this one
    does (as reported by two test subjects :).
    
o   Flush send queue after successful POP3 poll.  This happens 
    automatically, but only if a previous send failed because of a
    missing internet connection failed.  Only mail queued in this 
    session is resent.  I've got some other ideas, but this will 
    provide most of the functionality that has been frequently requested
    here recently.
    
o   Modified all ENTRY type fields to allow DBCS sequences.  Thanks to
    Matt Smith (ala Prominaire Designer) for the inside scoop.  This may
    not solve all of the DBCS issues, but I'm working on them!
    
o   On a side note, I managed to figure out how to convert character sets
    to the "current" code page so that non-US displays can show message
    correctly.  This code is not currently in, but I've been enlightened :)
    
o   Better error handling of "disk full" and other write-type errors when
    trying to record new mail.  These were not properly accomodated
    previously.
    

Changes included in v0.99g
--------------------------

o   The BIG news, athough I can't take credit for it!  CONVERSIONS!!
    Dave Martin has provided two well-done REXX scripts that will 
    convert PM Mail and LaMail addresses and folders to MR/2 ICE
    format.  They worked well with my test setups!  See my web page
    at http://nick.secant.com for more info.

    I received another smaller REXX file converted, but did not get
    a response from the author when I asked if I could post it.  Will
    try again, but these two look very capable!    
    
o   BMT Micro is now carrying MR/2 ICE.  Credit card orders can be 
    placed with BMT Micro at 1-800-414-4268 or visit their WEB page
    at http://www.wilmington.net/bmtmicro, or email them at
    orders@bmt.wilmington.net.
    
    I will also be taking advantage of the OS/2 Shareware BBS 
    registration system set up by Peter Norloff.  I just have to 
    get busy and write a small utility! ...

o   Bug where POP3 server sent back message size in an unusual 
    place/format.  All the info is there, but the SIZE of the message 
    isn't where MR/2 expect it.  So, it "defaulted" to 96K.  When this 
    happens, large message would cause trouble.  I now have beefed up 
    the size parsing and I think I've got all the bases covered now.

o   Also saw some extra work being done by MR/2 ICE, because of the 
    buffer size I chose.  By increasing my buffer size internally by one 
    character, I've cut down the number of packets transfered on some 
    system ... by half! My bet is that the size issue is common

o   POP3 receive ... closing of messages invoked a cleanup filter
    that was horribly inefficient.  I spent a short time on this and sped
    it up tremendously, most noticable with large (uuencoded) messages.

o   Persisitence of POP3 counter on failure ... MR/2 ICE will now save
    the last-read counter on each successful read.  Previously, on error,
    MR/2 would reread many successfully improted messages when restarted.

o   Folder sorting has been implemented (the form was always there, but 
    no code was behind it).  Rebuilding a folder index no longer does 
    the strange things it used to (although I'm aleways watching for 
    other stange things to appear :)

o   Counts on folder index screens, folder edits (name, tab text) now save;
    were previously not flushed to disk.
    
o   Open Folder lists now update when added-to using MOVE or COPY message.

o   Move/Copy on RMB menu have been enhanced to be "conditional cascade"
    sub menus.  You can still click on the COPY or MOVE text to invoke
    the pick-list dialog.  Alternately, you can now click on the arrow
    symbol to get options for NEW folder, or to pick from a list of
    commonly used folders.
    
o   You have always been able to edit Folder info from the folder screen
    by highlighting a folder and using the RMB to "edit" the folder.
    This form has a "include in MOVE/COPY submenus" checkbox.  Checking 
    this for folders of you choice will include them in the submenu
    mentioned above.  The Y/N flag is now shown on the Folder List, and
    I'll eventually allow toggling of this flag from there.
    
o   Multiple Account improvements.  While not completely finished, things
    work a little bit better.  For example, any NEW account created will
    remember and enforce the specified password.  Folder lists are now
    correctly modified and displayed as accounts are changed.  Accounts
    that already exist still have a password that matches the user name;
    I'll allow you to change this next time.
    
o   I almost forgot ... I added some code to the logic that is triggered
    the very first time you run MR/2 ICE.  The program invokes the
    settings notebook, then immediately explains the common Cirrus Logic
    video bug that exists, and asks you if you see the settings tabs.
    If you respond that the BUG does indeed exists, MR/2 ICE sets up
    a "forced /F9" command line flag.  You can override this with a
    command line switch, and I'll have this option on the settings form
    next version.
    
o   ALSO, if you invoke the speller and/or thesaurus, and the necessary
    files do not exist on your system, MR/2 will now pop up a text
    file (via an editor window) that explains how it works, and where to
    get the files.  It also suggests using the RBM to load my home page
    into the browser.

o   Fixed a problem with some URL's that wouldn't load from the RMB
    "Web browser" option.  Had to do with them starting with tab 
    characters.  Fixed.  Converted the ftp logic to also load the
    browser, at least for now!
    
    

Changes included in v0.99f
--------------------------
I did alot this week, but I don't have much to list.  I spend tons of
time finalizing the registration scheme.  I will start sending
registration keys via email very soon.  I fixed a dozen or so bugs, 
but I wrote no details down.  I started several really neat ideas, 
but can't even hint at them until I'm further along :).

I expect the next 2 weeks to consist of filling in gaps and crossing off
items on my bug list.  This includes the uglies in the area of Folders.
I have started "filters", but this is a biggie and will take a bit of
time.  At least for what I want to do :).  I worked more than I should
have trying to get printing problems resolved.  I made progress, I was
able to identify much of the problem ... waiting for Secant's Component
division to give me some time to fix it.  I expect this to be soon :)

o   Pop-up "context" menus in the viewer and message editor.  Use the
    RMB to quickly cut, copy, append, paste, reply, forward and send.
    There are some other options, and some disabled items waiting for
    completion.  Oh, the speller and thesaurus entries are enabled,
    but appear only on the Editor side.
    
    NOTICE, please, the Web Browser and FTP entries on this menu.
    Click on any fully qualified URL and select one of these to invoke
    a separate session.  Configuration is called for, but it is 
    functional as it stands.  I launch the commands EXPLORE or FTP,
    depending on what you select.  If you use some other browser or 
    FTP client (I use ncFtp), simply make an EXPLORE.CMD or an FTP.CMD
    in the MR/2 ICE directory.  For example, my ftp.cmd file looks like:
    
        ncftp %1
        
    NEVERMIND.  It appears this doesn't work (creating an ftp.cmd file). 
    I know why.  I'll leave it like this until next release, where I'll 
    at least convert to CMD files so you can do what you want.  Better 
    if this can all be configured from a dialog ...
    
    So, if your mail includes a web page URL, left click once, RMB,
    Web Browser and you're loading it.  There's a listing for a 
    file you want, with a fully qualified URL (for example,
    ftp://nick.secant.com/mr2i099f.zip), a couple of clicks and
    another session is loading it.
    
o   Fixed a case where the accent character (`) was used in a subject
    field and blew up my cell box (inbox) code.  I selected this code
    as my field delimiter.  All of my index entries now filter for this
    character.
    
o   Groups:  The address field is no longer required before allowing
    a pick-list button to work.  Other minor fixes.
    
    BTW, groups do not work with POP3 sends.  I have to think about
    this, but the current technique for exanding groups requires that
    MR/2 lists the recipients, and the To: line is ignored.  This is
    contrary to how POP sending works.

o   External Edit:  I was ignoring the option of hiding headers in the
    editor window.  If this is checked, the external edit does not have
    access to the message header.

o   New Registration dialog under the main HELP menu.  Will allow me and
    other distributors to supply key codes for "instant registration", or
    at least "quick email registration".
    
o   More fixes ... I just can't recall them at this time.


Changes included in v0.99e
--------------------------

o   Address Groups are now "in" and seem to be functioning well.  There 
    has been a minimal of testing, tho.  I personally created a couple 
    of small groups that worked well.  I also created three larger 
    groups, all external-file based.  One contained all of my original 
    beta testers, one contained all users who have registered to-date, 
    and the third combined these two by "including" the two lists by 
    tag.
    
    I have tried to come up with a very flexible group-addressing scheme,
    but in doing so, may have made it look a little more complex than
    it really is.  Groups can be simple lists of individual addresses,
    all maintained online.  Groups can also be mixes of individual
    addresses, address book tags, other group tags, and "address from
    file" entries.  I have included code to prevent circular references,
    but the error messages/warnings are weak at this time.
    
    An address file is simply a text file (I started using the file
    extension ".lst") that contains one address entry per line.  Great
    for those of us who keep lists generated from "other" programs.
    Oh, yes, these entries can also be address book tags, group tags or
    other file references.
    
    THE one thing sorely missing is a "pick group" button on the header
    entry form and the Pick Group button on address entry needs to be
    hooked to the same code.  Next release.  Groups WILL popup in the
    RMB menu, if the appropriate checkbox is marked.
    
    As a short example, you could easily create a group that references
    three other groups.  Each of these groups could reference whatever
    they needed to ... more groups, addresses from a file, address
    book entries and/or individual addresses.
    
    I'm open for comments.  Try it out, let me know what you think, and
    feel free to give me your ideas :).
    
    Oh, one last note.  Group address entries can be disabled.  To toggle
    the checkmarks, you can euse the "edit" button on each, but clicking
    ON THE LISTBOX CHECKMARK will also toggle it.
    
o   Importing text CLOSE to 64K would chop a small portion of the text.
    This became acutely apparent when I tried to send a UUEncoded file
    that was about 63K.  The problem was the import into the MLE ... I
    had the "switch to my pieces-parts import" threshold set too close
    to the MLE's chop-point.  Fixed.
    
o   Font selection ... for some silly reason I was showing only BitMap
    fonts.  That will teach me to steal code from sample programs 
    without studying it closer :).  Fixed.
    
o   Template processing would sometimes remove the "@" symbol in email
    addresses and other tokens that were supposed to have them.  I believe
    I fixed this, but it warrants some time-testing.
    
o   Hint Bubbles!!! (Tool Tips, whatever you want to call them).  
    They're fixed, at least as far as speed goes.  I was able to get 
    some of Mike's time (Mike is Secant's OS/2 Control "guru" :) to look 
    at what was going on.  A couple of code snips here and there, and
    we're operating at blinding speeds.  You should be able to turn these
    on without noticably effecting performance.  NOTE that for MAXIMUM
    performance, they should still be off ... even faster, creating
    20 tiny windows still takes time.
    
o   Crashes on program load.  Some of these (all?  Too wishfull a thought,
    I guess) were caused by my changes to the way the printing system
    is initialized.  If your system had NO OS/2 PRINTER DRIVER installed
    you would probably crash.  If you had a driver with an internal name
    that did not have a '.' as part of it ... sme thing [My home system
    had an old IBMNULL with no '.', and when I switched to that printer,
    crash!].  These have been fixed, although printing itself is still 
    being worked on.
    
o   NOTE:  an early report of Object Desktop's Tabbed Launchpad crashing
    ICE on load.  This started with a recent update/path to their v1.02
    level.  Running ICE with the /T switch worked-around this, as did
    not invoking the tabbed launchpad.  They've been notified, write to
    them if this incoveniences you.
    
o   Thesaurus and Speller limits were still in a few obscure places
    (reported as "Unregistered User" limits).  These weren't supposed
    to be there, and I've removed the ones I can see.  I don't believe
    there are any more.
    
o   Message received from some UUCP gateways were crashing ICE on reply.
    This was due to invalid date formats in the source message's header.
    I would assume I had a good date and crash on trying to use it.
    MR/2 now takes precautions and defaults to a zeroed-out date (1/1/1900)
    if the date is invalid.  Maybe not the best technique, but certainly
    better than crashing :)
    
o   Calculator now accepts keystrokes matching the button keys.

o   Pop3 messages reported to MR/2 as "Error" were previously simply 
    skipped.  This would happen here if/when a message was just being
    recieved by SendMail, the pop server could see it, but the file was
    still in use by SendMail.  Now, MR/2 will retry the message, trying 
    up to 20 times at one second intervals before giving up.
    
o   Notebook "back arrow" will no longer show blank pages when invoked
    from the Inbox screen.
    
o   Dozens of other minor fixes too tiny to itemize.    


Changes included in v0.99d
--------------------------

o   Well, address groups are close.  The whole idea, because I wanted to 
    do it a certain way, is taking longer than I guessed.  With a couple 
    of more hours, I would have included it.  The menu option for 
    Address Group Maintenance is disabled.  It is relatively functional, 
    barring a few bugs, and can be enabled by running with the "//" flag 
    on the command line.  This is just so those interested can comment 
    on the overall layout.  It is NOT meant for real use, and may change 
    before finalized.  SENDS do not recognize Groups yet.
    
    In general, groups will allow for lists of raw addresses, aliases, 
    other groups and/or lists of all of these contained within an 
    external file.  Resolution will be fully recursive/nested, so that a 
    group can be defined as a set of other groups, and each of those can 
    contain more groups.  Address Book entries can contain group names, 
    also.  I will add code to prevent circular references.
    
    There's a chance I may release a mid-week version, if I can complete
    and test all of this.  I must also finalize my registration key system
    in the next day or two.

o   Speedup and memory leaks plugged.  Found these while looking for
    the reason the message window opened so progressively slower.
    Found that I had left in some debugging code (checking the heap)
    2-3 times each message was displayed.  Removing these has sped up
    the message opening greatly.

o   Added code to SMTP import process to better recover from file
    in use errors.  (LDA is still delivering when ICE tries to import).

o   Progression indicator on pop receive.  Resized both indicators
    to be smaller and allow more text to show.

o   Country date settings are now used for most (all?) date/time
    displays.
    
o   External editor is now functional.  You can alwasy use the editor
    by checking the box on Options->User Preferences, or you can invoke
    it on demand via the Tools->Edit externally menu item from within
    the message viewer.

o   SMTP mode would still include LaMail's NDX files.  It was a case
    sensitivity issue.  Fixed.

o   Pressing DEL in the message viewer, then cancel, closed the message.

o   Suppressed auto poll on startup if auto-poll is off

o   Toolbar display toggle bug.  Toolbar would sometimes appear twice.

o   Pop3 long UIDL server error messages handled better

o   Fixed Text searches inside any editor window. Again.  This time
    I believe it's fixed for good :)

o   Ouch.  I accidently hit ALT-C in the reply editor and the message
    closed w/out warning or chance to save.  Fixed.


o   Mail tab is now set correctly when login to another account.

o   Internal editor: now gets focus on startup.

o   Better detection and resolution when tcpip services file is wrong.

o   Removed pop3 check before optional password prompt.    

o   Mesage window: Close via sysmenu, cancel would crash.  Fixed.



Changes included in v0.99c
--------------------------
What a week.  It started off with almost immediately finding that several
key features of MR/2 ICE were broken by the B release.  I believe this one
to be in much better shape.

I've got groups/lists pretty close, and the external editor code was
yanked at the last second because of a crash in one spot.  Next week,
I'm sure.

BEEP on window open.  I tried to get rid of this, but couldn't wait
any longer.  Sorry!  It's only when you double click and the
message part is over the click spot.  I'll get it, but it will be
annoying for a week.

o   Fixed problems with checking for mail under various user settings.

o   Pasting text with quoting cleaned up.  Still needs another pass :(

o   Addresses of the form "nick knight <nick@secant.com>" are now 
    normalized so that picky SMTP server's should no longer complain.
    
o   Ctrl+, Ctrl-, shift del  should now work as they're supposed to.

o   Cursor pos when header is scrolled off screen starts at current line.

o   UUEncode process wasn't closing source file.

o   Complex multi-addresses can now be up to 512 bytes.  Still working on 
    groups/distribution lists.

o   Crash when sending and status displays too long (rare).  Fixed.

o   SMTP Receive and all related file-type problems have been fixed.
    Sorry!  Includes "can't create folder" problem and user not registered
    on multi-accounts.

o   AutoSave and sending would sometimes conflict and crash.  I do believe
    this was the crash that was so prevelant, yet random enough to not
    be recreatable "on demand".  My mail has been stable for a couple of 
    days; I'm sure you guys will tell me if something's still loose in the
    code.

o   Ctrl-E is now an accelerator to the internal text editor.  This
    is available on both the mail index and message windows.  The Message
    menu's "Edit file" item is now hooked to this editor window.
    
o   Notebook page buttons a tad larger

o   Toolbar FIND on MW no longer loses text highlight.

o   Problem with POP receive when lines *started* with a '.'.  Fixed. Was
    messing up around 1 out of every 77 uuencoded messages.

o   Did I mention the calculator?  No??  Well, I added a simple, integer-
    only (no decimal points) calculator to the Utilities.  I use this
    thing often, but can never find it fast.  Now I know where it is.
    This item is an almost snap-in part from Secant Technologies'
    ObjectPM toolkit, provided there as a sample.  I plan on spending
    very little time improving this, except to add a keyboard interface
    and full decimal support (all easy).  If you find it useful, great,
    if not, don't use it :)

o   More fields opened up for hi-end ASCII.  Folder form in particular.

o   Templates are now editable via the Utilities menu.  This is brand
    new code, so I'm watching for bugs.  Still can't make a NEW
    template, but I ran out of time.

o   Text Editor fix ups and enhancements.

o   Tons of tiny nats squashed.


Changes included in v0.99b
--------------------------
Again, my todo list above didn't get all the attention I had hoped to give
it.  Still, it was a pretty productive week.  The best news is that many
crashes have been eliminated.  There seems to be one more pesky crash
scenario that I'm having trouble catching (the crash-on-send), but I've
added some code to try and help.  Ironically, since doing this, I have
been unable to make it crash.  I may have fixed it while making other  
code changes, but only time will tell.  Reporting crash addresses is
very important with this release.  Thanks!

QUERY:  Has anyone created any from-other-mailer conversion tools that
they'd like to share?  I've had many requests for conversion tools, and
I'd certainly like to supply them, and I know I can.  Time is the 
problem.  I can see how to convert PMMail's stuff to my format, but if 
I stop to do this, I don't get to add important features to my own work.
Any REXX guru's want to show there stuff off and get some recognition?
Of particular interest are scripts that would convert address books and
folders from PM Mail, Post Road Mailer, Ultimail/LaMail and things like
PINE.

o   Added a command line switch: /- which tells MR/2 ICE to minimize
    on load.  There's still some screens displayed, but then it does
    minimize.
    
o   The /S command line options was broken.  Fixed.  Also, configuring
    for NO POLLING was ignored.  Fixed.
    
o   Crash scenario:  When paging through message using the next/prev
    menu command or toolbar options, MR/2 ICE did not properly set a
    complete message state for each message.  This could case crashes
    under some circumstance.
    
o   Crash scenario: Folders not opening, exiting the program abruptly and
    without explanation, and crashing.  This was a big error on my part.
    Each folder would actually create another copy of the SEND thread,
    and this would do some very strange things.  Fixed.
    
o   Crash scenario:  Address Book maintenance.  Tags/Aliases longer than
    a couple of characters would cause a crash when the address book
    as closed/saved.  Fixed (sorry!).
    
o   New prompt option: disable pop3 counter reset warning/prompt.

o   Send toolbar icon now has correct bubble hint.  Send is no longer
    disabled in the menu for "new" message.

o   Bubble hints now use smaller font ... this is possible because:

o   All 3 Secant-based DLL's are "new" and offer several low level bug
    fixes, including better font handling.  Was not able to "fix" the
    Cirrus chipset bug, but smaller fonts now space correctly.  I hope to
    freeze these DLL's soon and be able to release updates without the
    DLL's.
    
o   Index cellbox: highlighted text is now WHITE on black background.

o   Address book listings now show tags/aliases.

o   Tried to increase secaondary thread robustness.  Increased all stack
    size slightly.  More error checking; more overflow detection code 
    added to low-level TCPIP interface code.
    
o   Password on POP3 prompt form is now masked from the user.

o   Opened up many form fields to hi-end ASCII character for the European
    and Chinese (and other, I guess) uses that have requested this.  Please
    let me know if this helps!
    
o   ALT-Q pasting would often crash.  I rewrote this routine, and while it
    does not crash, it still needs work.  Next release for sure.
    
o   Sig editor added and functional.  This will change some next release,
    but at least you can edit the default SIG file.  I missed having the 
    complete template editor ready by an hour or two ... next release for
    sure.
    
o   Simple file editor included on utility menu.  Simple?  Don't know
    about that, but I've got more to add to it.  I got tired of using
    the E editor to open files for "clipping" sections.  This will work
    more gracefully, particularly when I add some persistence and
    history to it.  In the meantime, I'm open for comments.
    
o   More tiny little changes that I forgot to document.  More to come ...
    

Changes included in v0.99a
--------------------------
Unfortunately (or fortunately, depending on your angle :), my todo
list above didn't get the attention it deserved.  Too many "new" problems
were reported that required immediate attention.  I expect to have more
time this week to "fill in the blanks".  I expect weekly-or-so updates
until I release v1.0.

o   Removed the Edit signature file menu item.  I added much code to 
    this feature, but it isn't yet workable (made a bigger monster
    than originally planned out of the editor).  This will be readded
    in the next release, complete with the editor.
    
    The signature file can be manually edited with the E editor.  Look 
    for "mr2i.sig".  Note that the sig file itself is just a very simple 
    file that's "included" by reference into the various template file 
    sections.  *This* is where MR/2 ICE gets much of it's power, 
    although not yet documented.  *This* is where you can have as many 
    selectable reply templates are you want, each with custom 
    attribution lines, multi-line sigs, information blocks or complete 
    documents as "canned replies".  I currently use my own template file 
    to offer canned literature replies for ObjectPM and some of Secant's 
    other products.  Just FYI, so the feature doesn't go unnoticed by 
    those of you who might find it useful.  Templates are in "mr2i.tf".

o   SMTP package is now part of the distribution zip.  See mr2ilda.doc
    for more information.

o   Many bugs and nits fixed ... too numerous to even remember.  This
    version is much more stable than the previous.  Still one crash
    scenario seems to elude me.  Perhaps I'll catch it by next release.

o   Empty template sections now work correctly and don't include parts
    of the next template section.
    
o   Pop sends and "no save" would update the index anyway and cause
    problems.  Fixed.

o   Removed spell checker and thesaurus limits inherited from me/2.
    I may reinstate more laxed limits in unregistered programs after
    60-90 days.

o   Resending a message after modifying message would crash most
    consistently.  Fixed.
    
o   Protected other multithreaded message handlers so that no harm is
    done if message is deleted or moved with another thread is processing
    same.
    
o   Some systems have missing default fonts in special windows including
    the bubble hits, the settings notebook (tabs squashed and no text) and
    in the calendar.  I'm still chasing this one, but to "work around" the
    problem, those users can now use a sepcified font using the new command
    line option /F.  From the new MR/2 ICE FAQ www page:

    There seems to be a bug in the class libraries I'm using where, on 
    some systems, the system proportional font fails when used as the 
    "default".  I have a system in-house that exhibits this problem, so 
    I'm in search of "the answer".  In the meantime, I have added a 
    "default font override" command line parameter:
    
            Mr2i /F9

    Where a zero is used to denote the System Proportional Font, and a 
    number 1-30 can be used to override this setting (for the 
    problematic windows ONLY). Using /F1 will cause the text to show up 
    and make the application functional.  For those that are more 
    particular about their fonts, you can select one of these following 
    numbers:
        
            0 - SystemProp                    16 - HelvOLB 
            1 - Courier8                      17 - HelvOLBI 
            2 - Courier10                     18 - TmsRmn8 
            3 - Courier12                     19 - TmsRmn10 
            4 - CourierOL                     20 - TmsRmn12 
            5 - CourierOLI                    21 - TmsRmn14 
            6 - CourierOLB                    22 - TmsRmn18 
            7 - CourierOLBI                   23 - TmsRmn24 
            8 - Helv8                         24 - TmsRmnOL 
            9 - Helv10                        25 - TmsRmnOLI 
            10 - Helv12                       26 - TmsRmnOLB 
            11 - Helv14                       27 - TmsRmnOLBI 
            12 - Helv18                       28 - SysMono10 
            13 - Helv24                       29 - SysMono12 
            14 - HelvOL                       30 - SymbolOL
            15 - HelvOLI 

o   While it was possible to use a different POP3 port by editing the
    TCPIP etc\serviced file and changing the POP entry, I added a
    command line /P option.  Specifying "Mr2i /P1111" will cause ICE
    to try the port number 1111 for POP3 services.

o   When the settings were changed to turn word wrap off, MR/2 would
    fail to quote text correctly.  Also, the word wrap column changes
    were always reset to the default, nomatter what you changed them to.
    This works much better now :)

o   I calmed the aggressive rewrapping of text somewhat in an effort to
    stop MR/2 ICE from messing up user sigs.

o   SMTP users: Remove *.ndx from SMTP new message list so that
    LaMail setups would quit importing its inbox.ndx file.

o   Toolbar:  The Reply bitmap is now replaced with a Send bitmap when 
    in Reply or new message mode.

o   SMTP read settings now do not require POP settings.  You may leave
    these blank, as long as the SMTP Host has been filled in and SMTP
    reading and sending are used.


Changes included in v0.99
-------------------------
First widely distributed beta.  The adventure begins.

o   Message Index counters (notebook status windows) now update.

o   Various bugs:  Re-editing header used to cause extra CR's in messages;
    paste from clipboard w/quote format improved.  Others ...
    
o   Settings notebook: more prompt options, more config options.
    SMTP read choice activated.
    
o   Shrunk several forms down to better show on standard VGA systems.
    Still could use another pass, but at least the settings notebook
    is mostly on screen :)
    
o   SMTP reading is now offered in preliminary form.  Write me for the
    instruction sheet, as I need to know who's using it and what problems
    are encountered (write nick@secant.com).
    
o   Multiple account support added/enhanced.  Won't document this until
    next release or so.
    
o   Message window:  Toolbar display options functional.  New "Pushbutton"
    option to hide/display bottom buttons.  Font toggle on menu.  Other
    minor menu additions.
    
o   Tiling and cascading of message windows is in, although some time-
    testing is required on my end to assur usefulness.
    
o   Address book tags now expand!  For example, you can attach a tag of
    "nk" to my default name in the address book (if you are a new user,
    the starter address book lists me).  When creating a new message or
    sending a reply, you can enter "ice" as a user name and it will expand
    to my full address upon exiting the field.
    
o   Major notebook tabs now default to a "hidden" state.  Option on the
    main index menu enables tabs.  Since "news" was not yet functional,
    these tabs simply wasted screen area.  Tabs were also reduced in size,
    for when they *do* display.
