ProgramFeatures
From PMMail for OS/2
Program Features
The Good News (in no particular order)
- New charsets are available to Locale/composition options
- iso-8859-* (Western)
- windows-125*
- iso-2022-jp, shift-jis, euc-jp (Japanese)
- big-5 (Chinese)
- euc-kr (Korean)
- koi18-r (Russian)
- utf-8 (set as the default)
A character set may be selected on a per-message basis in the composer.
- Mail Classifier
- Bogofilter has been integrated into PMMail/2.
- Additional options for training the classifier have been added to the Message menus.
- It is possible to have separate classifier databases for each account. The default is for all accounts to use the same database.
- Classifier use is optional.
- Three new folders are added as children of the Inbox to be the default Classifier processing targets: Classifier Result, Is Spam and Is Dubious.
- Options for processing the Classifier result may be Nothing, Move to a folder, Add a string to the Subject, or Delete the message. The aforementioned folders are the default targets.
- Messages that are Trained as either Spam or Good may also be processed: Nothing, Move to Folder, Use existing Filters.
See the Bogofilter Project for more information about Bogofilter.
- Gnu Privacy Guard (aka: GnuPG, gpg)
The program searches for GPG at startup. If found, it is the preferred security agent. Both GPG and PGP may be individually en-/disabled at the Account level. Separate passphrases may be recorded.
- SMTP (send)
Multiple threads of execution are added for SMTP. If there is more than one message to send, more than one connection is started to send the messages. For high speed connections this can significantly improve throughput. The maximum number of connections is settable.
- SMTP Extensions
- Secure Authentication. CRAM-MD5 and DIGEST-MD5 are supported. If no secure method of authentication is available, the user is warned that the username and password are sent in the clear. The warning may be disabled.
- SIZE: If a message is too large to be stored by the server, that is determined before the message is sent, not after.
- User interface
- The POP sever may be queried about the number of messages currently awaiting retrieval.
- The notification dialog after re-index and manual filter operation is now optional at the account level.
- Re-index All. All of the folders of an account may be re-indexed with a single command.
- Windows and dialogs now take on the current WPS color scheme as a default instead gray. Colors and fonts are selectable by dropping them on the different windows: Main Folder and Message, Compose and Read windows.
- Option to show the total message count in a folder.
- Message Menu. The number of "Mark Message As" options is expanded into a separate submenu.
- Read/Unread,
- Spam/Not Spam,
- Deleteable/Undeleteable,
- High/Low/Normal Priority.
- The displayed field widths of the Subject, From and To addresses may be set to a maximum length.
- When Forwarding a message, including the message header is now optional.
- When Forwarding a message, an optional subset of the message header may be chosen; only the From, To, Date and Subject fields are copied.
- MRU (Most Recently Used) list improved
- Now in true MRU order. Original code left a found address were it was in the list. Now moved to the top.
- Removed check for in address book. It looks more like one would expect a MRU list to look like than it did.
- Spell check offers original word as replacement option - saves retyping when almost correct.
- Attachments
- If a message has both plain and html versions, the html part is shown as an attachment and may be opened in a browser.
- Message icons use the WPS icon associated with the program that is linked to that attachment type (MIME Association).
- Unnamed attachments are given a name that includes the MIME type so they may be more easily recognized. Formerly the name was "Unnamed Attachment XX.att".
- MIME Associations
- The associations list was always sorted alphabetically. It may be sorted to customize the search order preference.
- Items in the MIME association list may be individually en-/disabled.
- External programs
Some programs called by filters do not appreciate more than one instance running at a time. An option has been added to serialize execution of external program calls. If one instance is started and another attempts to do so, the second is blocked until the first is finished.
Incoming and Outgoing filters may be separately serialized.
- Filters
- An "Always" match option is added to "Simple" and "Complex."
- A message may additionally be marked as Spam or Undeleteabale by the Set Status filter action.
- Performance enhancements
- A Filter is compiled only once; the result is saved for later use. Formerly a filter was compiled every time it was called.
- When messages are moved, the Message window is disabled to prevent each move from updating the window. These updates are very time-consuming. It is an optional feature.
- Multiple SMTP sends as noted above.
- Accounts may initiate download (POP) sessions simultaneously without causing the program to hang or abort the downloads.
- The program now uses high shared memory space (when available), which helps to alleviate the problem of running out of low shared memory space memory. It also uses less shared memory space.
- Many flaws in the code have been fixed which enhances the program's reliability.
- Command line options
- "-cwd <dir>": Change Working Directory to <dir>.
- "-a <acct>": Same as "-s". Start the program with <acct> open and selected.
- PMMSend
- The PMMSend program has been enhanced to be more flexible. It is also backward compatible, so any old programs that used it continue to work (perhaps with some path changes). Anything that uses the new features does NOT work with the old PMMSend.
- Other
- Messages in the Outbox may be individually selected for sending.
- Re-indexing may be applied to all folders including Outbox, Send and Trash
- A message's priority is indicated for New, Read, Replied/Forward statuses.
- Drafts are alway saved in UTF-8 character set. The selected character set is used when the message is sent.
- Logging is available to aid in troubleshooting the program. The default level records errors. Increasing levels of verbosity output more data. The verbosity, size and number of log files is selectable.
- The program is now installed using WarpIn. It offers to put it in the default (as set in WarpIn) programs directory but that can be overridden, if the user wants to (I suggest leaving it in the default location). DO NOT try to install it over the old PMMail, or you may find that some problems may arise.
The Not-as-good News
- PMMail/2 is not backward compatible with version 2.x.
Actually, it is backward compatible. It's more the case that the old PMMail is not forward compatible as explained below.
PMMail/2 has a greater abundance of status indicators, specifically for Spam/NotSpam, Send Pending and Undeleteable. Flag storage required some changes and additional fields to the <folder.bag> file which breaks full compatibility with older versions. Those status indicators are lost when an older version, either an os/2 or windows port, loads the mailstore.
The address book and filter file formats are unchanged and have no compatibility problems.
PMMSend and PMMail/2 use a different protocol for communication. Formerly PMMail monitored a shared memory area for messages from PMMsend. The new version also uses a communication pipe that is designed for this type of data transfer. While an older version of PMMSend can send messages to the new PMMail/2, the converse is not possible.