- add an explicit expunge when closing an IMAP mailbox, for servers that
incorrectly do not do this when the mailbox is closed. Thanks: Nicolas
Pomarède.
- fix incorrect section reference for `mailboxes` parameter in documentation.
Thanks: Ross Boylan.
- fix getmail_fetch broken in 4.21.0. Thanks: Chris Donoghue.
-when retriever supports multiple mail folders (IMAP), store oldmail data for
each folder separately, preventing problems in some cases when using multiple
rc files with the same account. Thanks: Jesse Schobben.
While here, add a patch comment to quell pkglint.
-automatically open IMAP folders read-only if neither the delete nor
delete_after options are in use; necessary to access chatlogs via Gmail.
Thanks: Daniel M. Drucker.
-avoid sorting msgids on each retrieval, reducing overhead when dealing with
folders containing thousands of messages. Thanks: Daniel Koukola.
-ensure correct remote address and port is included in the Received: trace
headers generated by getmail. Previously the first address found for the
server was used even if another address was actually used to connect to the
server. Thanks: Frederic Perrin.
-update broken link in FAQ. Thanks: Stefan Kangas.
-strip a few extra problematic (on non-Unix systems) characters when
generating oldmail filenames; backslash was requested by Andy Ross.
If upgrading and your current oldmail file contains any of these
characters:
\ ; < > |
... then rename it, replacing runs of one or more of those characters with
a single "-".
-improve clarity of message logged by getmail when an external program exits
0 but getmail considers it failed because it wrote to stderr. Thanks:
Chris Dennis.
- change to how getmail counts messages in an IMAP mailbox; prevents problems
where getmail would only see the first 500 messages in a mailbox with some
IMAP servers that return oddball responses to SELECT. Thanks: David Damerell.
- handle additional cases where IMAP (and for good measure, POP3) server is
broken and offers a message that it then fails to return. Thanks: Eric
Waguespack.
- fix --dump not generating any output for rcfiles containing
"verbose = 0" option. Thanks: Morty Abzug.
- fix copy-and-paste error in documentation of MultiSorter destination.
Thanks: Roland Hill.
- add "message_log_verbose" option, defaulting to false. If true,
the message_log file (and syslog, if used) will contain a little
more information than the default of just messages retrieved.
Thanks: Matthias Andree, Gregory Morozov.
- if oldmail file is corrupted on disk (by system crash, perhaps),
handle it gracefully. Some lines may be lost (and messages therefore
re-retrieved), but operation will continue, with the corrupt lines
logged. Thanks: Domen Puncer.
- add Kerberos authentication support to IMAP retriever classes.
Thanks: Guido Günther, Uli M.
- clarify documentation regarding MDA_external. Thanks: AJ Weber.
- eliminate deprecation warning for sets module with Python 2.6 by
using a compatibility wrapper module.
-Add missing fsync() in updatefile close method to ensure data actually
hits disk before the rename takes place, to make writing of the oldmail
file more resilient to system crashes. Thanks: Domen Puncer.
- for IMAP retrievers, keep message state around for 30 days even
if the corresponding message isn't seen. This allows users to
have multiple rc files with different IMAP folders to retrieve
from without losing their "seen" mail state for the folders they're
not currently retrieving from. You no longer need to work around
this with different getmail state directories. Thanks: ?.
- assume that Python 2.4 and 2.5 are compatible and allow checking for
fallout.
- remove PYTHON_VERSIONS_COMPATIBLE that are obsoleted by the 2.3+
default. Modify the others to deal with the removals.
* explicitly close current IMAP mailbox when selecting a new one,
so all servers expunge deleted mail. Thanks: Josh Triplett.
* include experimental spec file for creating RPM with rpmbuild.
Thanks: Dag Wieers, Rob Loos, Dries Verachtert.
* convert changelog to utf-8 encoding.
* update email addresses, etc. Domain for mailing lists has changed
to lists.pyropus.ca.
* add FAQ about memory errors on OS X. Thanks: Andres Gasson.
* drop log message level for stderr output of destination if
ignore_stderr is set, just like for filter. Thanks: Jeremy
Chadwick.
-make updatefile honour symlinks, so users can alias one server's oldmail
state file to another (for split-horizon DNS and other strange
configurations). Thanks: Scott Hepler.
-explicitly watch for broken POP3 servers that return a blank UIDL value
(not permitted by the POP3 protocol) and print a fatal error message.
Thanks: Florian Hackenberger and Cameron Rangeley.
- disable debug logging message which would show up in messages if
--trace was used and the message was passed through an external
filter. Thanks: Christian Bruemmer.
- add additional sanity checks to ensure a recent-enough Python is
used; trying to run getmail 4 with Python 2.2 would throw an
exception. Thanks: fakhri ?.
- fix regression introduced in 4.6.0 where atime on mbox files would
get updated (i.e. not set back), making it difficult for other
programs to tell if there was new mail or not without actually
opening the mbox. Thanks: Tim van der Molen.
- fix regression: spurious errors thrown when required multidrop
retriever parameter "envelope_recipient" not present in getmailrc
file. Thanks: Elliot Schlegelmilch.
- fix regression: getmail_fetch no longer properly supported external
MDAs because of problems parsing the arguments to them. Thanks: ?.
- change getmail's handling of regular expressions in the "locals"
parameter of MultiSorter destination to allow it to handle
backslashes correctly. Unfortunately this means complicating
the configuration syntax slightly. Thanks: Tim van der Molen.
- update filters to use new configuration code. Remove obsolete code.