Up to [cvs.NetBSD.org] / pkgsrc / mail / getmail
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
getmail: avoid conflicts with getmail6. Bump PKGREVISION.
Update to 5.16. From the changelog: - add new use_netrc and netrc_file configuration options to support reading username/password from a .netrc file. Thanks: Stephen Gildea. - documentation updates.
mail: Replace RMD160 checksums with BLAKE2s checksums All checksums have been double-checked against existing RMD160 and SHA512 hashes The following distfiles were unfetchable (possibly fetched conditionally?): ./mail/qmail/distinfo netqmail-1.05-TAI-leapsecs.patch
mail: Remove SHA1 hashes for distfiles
Update to 5.15. From the changelog: - fix example spamc arguments in FAQ. Thanks: Christoph Scholzen. - document exit codes in manpages. Thanks: Langenxx Feld.
Update to 5.14. From the changelog: - remove socket setblocking() calls which should be no longer needed, and which may have caused hangups. Thanks: Viacheslav Chimishuk. - correct version number string in error message. Thanks: Piet van Oostrum.
Update to 5.13. From the changelog: - second attempt at fixing SNI change with Python < 2.7. Thanks: "Cimbal".
Update to 5.12. From the changelog: - bugfix: the SNI change broke something else with Python 2.6 and earlier; fixed. Thanks: "Cimbal".
Update to 5.11. From the changelog: - bugfix: the SNI change did not work correctly with Python < 2.7.13; should be fixed now. Thanks: Scott Robbins.
Update to 5.10. From the changelog: - experimental: when SSL SNI support is present in the underlying Python (and OpenSSL), send SNI by default in the SSL setup. This should work around Gmail's brokenness with TLSv.1.3 connections when SNI is not sent.
Update to 5.9. From the changelog: - documentation-only update; add note with workaround for Gmail SSL connections with OpenSSL 1.1.1 and later. - update copyright dates.
Update to 5.8. From the changelog: - fix problem handling IMAP errors introduced in 5.7. Thanks: Andreas Reuleaux.
Update to 5.7. From the changelog: - when users specify an SSL version that no longer exists in the Python ssl module, do not result in an unhandled exception. Thanks: "nandre". - catch IMAP UNAVAILABLE temporary error during login. Thanks: Dario Corti.
Update to 5.6. From the changelog: - fix references to version 4 in README. Thanks: Daniel Kahn Gillmor. - add Gmail-specific XOAUTH2 login support for IMAP. Thanks: Stefan Krah.
Update to 5.5. From the changelog: - feature request: added record_mailbox configuration parameter, to allow turning off the header getmail adds with this information. Thanks: Daniel Kahn Gillmor, Osamu Aoki, Josh Triplett.
Update to 5.4. From the changelog: - bugfix: fix another error in logging an error condition. Thanks: "ng0".
Update to 5.3. From the changelog: - bugfix: another case where an error condition resulted in getmail not displaying the correct message. Thanks: "ng0".
Update to 5.2. From the changelog: - bugfix: disconnection during IMAP IDLE could result in an error message rather than silently exiting. Thanks: David Gray.
Update to 5.1. From the changelog: - bugfix: if password_command parameter was used with a non-existent program, getmail would error out during the handling of that condition and not report the problem correctly.
Update to 5.0. From the changelog: - new release numbering scheme; previous version numbers were just getting too high. - catch and ignore/exit cleanly after reset connection in IMAP IDLE mode. Thanks: Stephan Schulz. - allow specifying an expected SSL certificate hostname, for when the server's certificate does not match the domain name used to connect to it. Thanks: "Andre". - fix error message not actually giving the header field name incorrectly specified as containing the envelope recipient address. Thanks: Hardy Braunsdorf. - add new password_command configuration parameter for retrievers, allowing getmail to retrieve the account password from any arbitrary external command. Suggestion: "ng0".
Update to 4.54.0. From the changelog: - fix error running getmail_fetch introduced in 4.53.0. Thanks: "fsckd".
Update to 4.53.0. From the changelog: - fix plaintext version of docs not generated correctly. Thanks: Elijah. - fix `getmail --fingerprint` not logging server TLS fingerprint correctly with SimplePOP3SSLRetriever. Thanks: Gabriel Kihlman.
Update to 4.52.0. From the changelog: - add `ignore_header_shrinkage` parameter to Filter_external for users who know it is normal for their particular filter to result in a smaller message header than the source message, for example when the filter encapsulates the original message in a simpler wrapper message. Thanks: "RW", Tristan Miller, Francesco Ariis. - EXPERIMENTAL: when deleting a message from an IMAP mailbox, set the \Seen flag in addition to the the \Deleted flag. This apparently prevents the ever-innovatively-broken MSExchange from sending a spurious incorrect disposition-notification message to the sender of the message. I do not know if this will cause problems with other broken IMAP server implementations; please send a report to the getmail- user's mailing list if you see odd behaviour with this change. Thanks: John Hein. - enable socket timeouts for IMAP SSL classes by default. They were disabled in the code because they were incompatible with SSL in older versions of Python. If you see problems with Python 2.6 or 2.7 now, please let me know.
Update to 4.51.0. From the changelog: - fix exception when using MDA_External and an IMAP mailbox whose name contains non-ASCII chars. Thanks: "drtmk".
Update to 4.50.0. From the changelog: - maybe fix handling of OSX keychain passwords containing double-quote chars. Thanks: Teddy Wing, Patrick Asselman. - fix getmail erroring out on IMAP folders containing i18n chars. Thanks: Jan Stuehler.
Use PKGMANDIR.
Update to 4.49.0. From the changelog: - make IMAP class only issue EXPUNGE command on mailbox close if we have actually deleted any messages from the open mailbox. Makes use of read- only IMAP folders possible. Thanks: Zoltan Padrah.
Add SHA512 digests for distfiles for mail category Problems found locating distfiles: Package mutt: missing distfile patch-1.5.24.rr.compressed.gz Package p5-Email-Valid: missing distfile Email-Valid-1.198.tar.gz Package pine: missing distfile fancy.patch.gz Package postgrey: missing distfile targrey-0.31-postgrey-1.34.patch Package qmail: missing distfile badrcptto.patch Package qmail: missing distfile outgoingip.patch Package qmail: missing distfile qmail-1.03-realrcptto-2006.12.10.patch Package qmail: missing distfile qmail-smtpd-viruscan-1.3.patch Package thunderbird24: missing distfile enigmail-1.7.2.tar.gz Package thunderbird31: missing distfile enigmail-1.7.2.tar.gz Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
Update to 4.48.0. From the changelog: - work around brain-damaged change in Python's poplib which causes message retrieval errors if any line of a message has more than 2048 characters in it. - restore link to moved Marc mailing list archive. Thanks: David J. Weller-Fahy.
Update to 4.47.0. From the changelog: - try to work around pathological breakage in one random POP server implementation. Thanks: Michael Thomas Kockmeyer. - remove dead marc.theaimsgroup.com list archive from docs. Thanks: Miroslav Rovis. - bugfix: if you combined IMAP IDLE mode with delete_after, getmail would, after remaining connected to the server for the number of days configured, begin deleting messages immediately after retrieval instead of after the configured delay. Now fixed. Thanks: Johannes Weißl.
Update to 4.46.0. From the changelog: - fix --idle checking Python version incorrectly, resulting in incorrect warning about running with Python < 2.5. Thanks: "Voytek", Krzysztof Warzecha. - add missing support for SSL certificate checking in POP3 which broke POP retrieval in v4.45.0. Requires Python 2.6 or newer. Thanks: "mancha".
Update to 4.45.0. From the changelog: - perform hostname-vs-certificate matching of SSL certificate if validating the certifcate. Thanks: "mancha". - fix missing plaintext versions of documentation. Updating this leaf package during the freeze for the security fix.
Update to 4.44.0. From the changelog: - add extended SSL options for IMAP retrievers, allowing certificate verification and other features. Thanks: Steven Murdoch. - fix missing plaintext versions of documentation. Thanks: Osamu Aoki. - fix "Header instance has no attribute 'strip'" error which cropped up in some configurations. Thanks: Krzysztof Warzecha. Updating this leaf package during the freeze for security improvements and bugfixes.
Update to 4.43.0. From the changelog: - add IMAP IDLE support. Thanks: Jon Gjengset.
Update to 4.42.0. From the changelog: - fix problem with non-ascii characters in newly-added message header fields with output from Filter_classifier. Thanks: "Gour".
Update to 4.41.0. From the changelog: - messages retrieved with POP could have a blank trailing line removed when delivered; fixed. Thanks: Christoph Mitterer, Krzysztof Warzecha. - fix an ImportError when IMAP retriever used with getmail under Python 2.4.
Update to 4.40.3. From the changelog: - increase system recursion limit when run with Python 2.3, to prevent recursion errors in parsing some pathologically complex MIME emails. Thanks: Kenneth Pronovici.
Update to 4.40.2. From the changelog: - fix a backwards incompatibility with Python 2.3 and 2.4 introduced in getmail 4.38.0. Thanks: Massimo Zambelli, Krzysztof Warzecha.
Update to 4.40.1. From the changelog: - again change protocol codes passed to OSX, as they're not only reserved codes, but also case-sensitive. Use the ones an OSX user reports work properly. Thanks: Tim Gray.
Update to 4.40.0. From the changelog: - convert SIGTERM to SIGINT so getmail can cleanup and exit normally if killed with a default signal. Thanks: Carl Lei. - fix change which resulted in passing full protocol name to OSX keyring program, which can't handle it (restricted to 4-character code). Thanks: Tim Gray.
Update to 4.39.1. From the changelog: - fix a bug that could crop up when retrieving mail via IMAP from Gmail, and the Gmail servers provided weird data in their header extensions. Thanks: Krzysztof Warzecha.
Update to 4.39.0. From the changelog: - fix an oldmail filename issue that occurred with certain non-ASCII characters in an IMAP mailbox name. Thanks: Michael Kockmeyer.
Distfile changed in place (spelling and other documentation reformatting). Set DIST_SUBDIR.
Update to 4.38.0. From the changelog: - fix retrieving mail from an IMAP mailbox with non-ASCII characters in its name causing difficult-to-understand unicode errors during delivery. Thanks: "fsLeg", Krzysztof Warzech.
Distfile changed in place (tweaked wording in docs and RPM spec file). Set DIST_SUBDIR.
Update to 4.37.0. From the changelog: - handle IMAP servers which include "/" in message IDs better, so those messages aren't always thought to be new. Thanks: Bradley Rintoul. - record (IMAP) mailbox retrieved from in X-getmail-retrieved-from-mailbox: header field, and make it available as %(mailbox) substitution in MDA_external arguments. Thanks: Les Barstow. - add delete_bigger_than option to allow removal of large messages after retrieval, even if not deleting messages otherwise. Thanks: Jan Vereecke.
Update to 4.36.0. From the changelog: - add support for retrieving POP/IMAP passwords from, and storing them to, the Gnome keyring. Thanks: Krzysztof Warzecha, Scott Hepler.
Update to 4.35.0. From the changelog: - fix From_ quoting in mbox delivery; use of the Python stdlib function meant getmail was incorrectly using mboxo-style quoting instead of mboxrd quoting, probably since early in the v4 series. Thanks: Christoph Mitterer.
Update to 4.34.0. From the changelog: - retrieve Gmail metadata (labels, thread ID, message ID) via IMAP extension and record it in new message headers. Thanks: Krzysztof Warzecha.
Update to 4.33.0. From the changelog: - allow normal exit on interrupt (ctrl-c) to allow the uesr to abort message retrieval while still remembering already-retrieved messages as successfully delivered. You may get a weird error message after you abort, since the server may be in the middle of delivering another message to getmail at the time. Thanks: Krzysztof Warzecha.
Update to 4.32.0. From the changelog: - prevent some nuisance stack traces if getmail cannot connect to the POP/IMAP server correctly. Thanks: Daniel Dumke. - restore use_peek IMAP retriever parameter which accidentally got removed in 4.30. Thanks: Andreas Amann.
Update to 4.31.0. From the changelog: - improved backwards compatibility with pre-v.4.22.0 oldmail files, so IMAP mail is not re-retrieved if you upgrade from a 4.22 or earlier to this one; no user action necessary. Thanks: Osamu Aoki, Tim van der Molen.
Update to 4.30.2. From the changelog: - fix a nuisance stack trace that would be dumped if a connection failed in particular states. Thanks: Gary Schmidt. Updating this leaf package during the freeze for the bugfix.
Distfile changed in place (tweaked wording in docs and RPM spec file), noticed by dholland. Set DIST_SUBDIR.
Update to 4.30.1. From the changelog: - silence a nuisance deprecation warning about the sets module when running with Python >= 2.5 which was reintroduced in 4.29.0. Thanks: Stephan Schulz. - fix breakage introduced in 4.29.0 where BrokenUIDLPOP3Retriever would fail with a TypeError at logout time. Thanks: Scott Robbins, Stephan Schulz. - fix breakage introduced in 4.29.0 where deleted mail was not being expunged from the last (or only) folder retrieved from in an IMAP session. Thanks: Paul Howarth. - update old contact information for Free Software Foundation. Thanks: Ricky Zhou. - fix incorrect character encoding in plaintext documentation. Thanks: Ricky Zhou. - ensure getmail exits nonzero if a server refuses login due to a credential problem. Thanks: Stephan Schulz. - ensure getmail exits nonzero if various error conditions (like POP/IMAP authentication failure) occur. Thanks: Ryan J., Stephan Schulz. - python versions prior to 2.5.0 contain a bug when dealing with read-only IMAP mailboxes. Monkey-patch imaplib when running with Python<2.5.0. Thanks: Les Barstow. - do IMAP modified-utf7 conversion of mailbox names containing non-ASCII characters. Thanks: A. Lapraitis, Randall Mason. - add special ALL value for retrieving mail from all selectable IMAP mailboxes in the account. - change IMAP retrieval strategy to retrieve all messages from a mailbox, then move on to the next mailbox, etc. Should result in increased speed, but if you set `max_messages_per_session` too low, this could result in later mailboxes not being retrieved from. Updating this leaf package during the freeze for bugfixes.
Update to 4.27.0. From the changelog: -make use of IMAP BODY.PEEK configurable; set the IMAP retriever parameter `use_peek` to False to disable use of PEEK to get getmail's historical IMAP behaviour.
Update to 4.26.0. From the changelog: - switch to using BODY.PEEK in IMAP retrieval; I no longer see problems with this feature in my testing. If users experience incompatibility with any IMAP servers where 4.25.0 worked, please let me know.
Update to 4.25.0. From the changelog: - add support for storing POP/IMAP password in OSX keychain. Thanks: Adam Lazur.
Update to 4.24.0. From the changelog: - 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.
Update to 4.23.0. From the changelog: - Fix race if new message shows up in POP3 mailbox between running the UIDL and LIST commands. Thanks: Roland Koebler, Osamu Aoki.
Update to 4.22.2. From the changelog: -fix an error when logging a bad response to an IMAP SELECT command, introduced in 4.21.0. Thanks: "kureshii".
Update to 4.22.1. From the changelog: - fix BrokenUIDLPOP3Retriever breakage from 4.21.0. Thanks: Scott Robbins, "hgolden".
Update to 4.22.0. From the changelog: -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.
Update to 4.21.0. From the changelog: -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.
Update to 4.20.3. From the changelog: -fix logging errors in error paths. Thanks: Visa Putkinen.
Update to 4.20.2. From the changelog: -further changes to the Received: header construction to handle IPv6 better. Thanks: Frederic Perrin.
Update to 4.20.1. From the changelog: -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.
Pullup previous changes on HEAD to pkgsrc-2010Q2 branch to fix branching error, and to sync with reality.
Update to 4.20.0. From the changelog: -fix crap code from bad svn merge that slipped into 4.18.0, triggering exceptions in MDA_external configs. Thanks: Paul Howarth.
Update to 4.19.0. From the changelog: -fix missing import introduced in 4.18.0. Thanks: Paul Howarth.
Update to 4.18.0. From the changelog: -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.
Update to 4.17.0. From the changelog: - 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.
Update to 4.16.0. From the changelog: -additional fix for IMAP server that offers a message it then fails to return, to allow getmail to continue with the next message. Thanks: Yaw Anokwa.
Update to 4.15.0. From the changelog: - default port for MultidropIMAPSSLRetriever was incorrect. Thanks: David Lehn.
Update to 4.14.0. From the changelog: - 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.
Update to 4.13.0. From the changelog: -fix new log message not having trailing newline. Thanks: Morty Abzug.
Update to 4.12.0. From the changelog: - handle MSExchange failure to deliver message gracefully. Thanks: Morty Abzug. - documentation updates regarding Python IMAP memory bug. Thanks: "spig". - fix bad tag in documentation.
Update to 4.11.0. From the changelog: - 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.
Update to 4.10.0. From the changelog: - 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.
Update to 4.9.2. From the changelog: -use tempfile module function instead of os.tmpfile() so getmail obeys TMPDIR and similar environment variables. Thanks: Stefan Baehring.
Update to 4.9.1 and define LICENSE. From the changelog: - 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.
Update to 4.9.0. From the changelog: - 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.
Update to 4.8.4. From the changelog: -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.
Update to 4.8.3. From the changelog: - Improve information sent to logfile about messages not retrieved. Thanks: Scott.
Update to 4.8.2. From the changelog: - 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: ?.
Update to 4.8.1. From the changelog: * fix use of Python 2.4 set builtin in 4.8.0 preventing getmail from running on Python 2.3.x.
Update to 4.8.0. From the changelog: * better diagnostic when user invalidly supplies timeout configuration parameter for an IMAP-SSL retriever. Thanks: Dennis S. * code cleanups
Update to 4.7.8. From the changelog: * 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.
Update to 4.7.6. From the changelog: -fix exception when getmail is trying to report a POP3 server that completely missed generating a UIDL token for a message. Thanks: Hans Lammerts.
Update to 4.7.5. From the changelog: -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.
Update to 4.7.4. From the changelog: -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.
Update to 4.7.3. From the changelog: -fix wrong bytecount displayed in summary at end of run. Thanks: Andreas Jung.
Update to 4.7.2. From the changelog: -add ignore_stderr option to filters, copying same from MDA_external destination. Thanks: Vittorio Beggi.
Update to 4.7.1. From the changelog: -add max_bytes_per_session option. Thanks: Robert Spencer. -documentation additions.
Update to 4.7.0. From the changelog: - make Mboxrd lock type configurable (lockf or flock). Change default to lockf. Thanks: Norman Carver.
Update to 4.6.7. From the changelog: -better handling for some fatal violations of POP/IMAP protocols. -formatting cleanups.
Update to 4.6.6. From the changelog: - add ignore_stderr option to MDA_external destination. Thanks: Daniel Burrows. - documentation cleanups.
Update to 4.6.5. From the changelog: - 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 ?.
Update to 4.6.4. From the changelog: - add FAQ about BrokenUIDLPOP3 retrievers. - add better diagnostics for missing/invalid/unwritable state/data directory. Thanks: Christian Authmann.
Update to 4.6.3. From the changelog: - 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.
Update to 4.6.1. From the changelog: - fix attribute deletion error with Filter_classifier when strip_delivered_to is set. Thanks: ?. - do not consider qmail-local writing to stderr a delivery error. Thanks: ?. Remove nearly 2-year-old MESSAGE about upgrading from version 3.
Update to 4.6.0. From the changelog: -clean up logger API. -refactor configuration mechanism to use classes with embedded logic, rather than simply dictionaries.
Update to 4.5.4. From the changelog: -added Maildir "filemode" parameter. Thanks: Martin Haag.
Update to 4.5.3. From the changelog: * keyfile and certfile parameters to SSL retrievers are now expanded for leading "~/" and "~username/" as well as environment variables, just like other path parameters. Thanks: Fredrik Steen.
Update to 4.5.2. From the changelog: -fix IMAP bug where no mail was retrieved introduced in 4.5.0. Thanks: Scott Robbins.
Update to 4.5.1. From the changelog: - add delete_dup_msgids option to non-multidrop POP3 retrievers. Thanks: Matthias Andree. - suppress stack trace in getmail_fetch error message when configuration error detected. Thanks: Dave Jarvis. - documentation updates. - build and development environment changes. The plaintext versions of the documentation are now generated with links instead of lynx. - explicitly log the reason for not retrieving a message (seen or oversized). Thanks: Payal Rathod.
Update to 4.4.4. From the changelog: -improve parsing of flags in IMAP responses. Thanks: Gareth McCaughan.
Update to 4.4.3. From the changelog: -fix harmless copy and paste error in IMAPRetrieverBase class. Thanks: Henry Miller.
Update to 4.4.2. From the changelog: 4.3.14: -Fix copy and paste error that caused BrokenUIDLPOP3SSLRetriever to default to port 110. Thanks: Daniel Burrows via Fredrik Steen. 4.4.0: -add new POP3-over-SSL initialization class, which is automatically used when Python 2.4 or newer is in use. This reduces the overhead involved in retrieving messages from a POP3SSL server (reduces systime about 35%, user time about 50%, wall time 10-30%). Thanks: Jan Vereecke. -add getmail_fetch configuration-less commandline POP retriever, perfect for scripting use. Development of getmail_fetch was sponsored by Texas Communications. -future proofing: eliminate relative imports within getmailcore package. 4.4.1: -work around bug in Python which meant POP3-over-SSL with Python >= 2.4 could "hang" (it's exactly the same bug that affected getmail's initial IMAP-over-SSL code). 4.4.2: -fix logging import in corrupt messages with Python 2.3. Thanks: Marco Ferra.
Update to 4.3.13. From the changelog: -add BrokenUIDLPOP3SSLRetriever as SSL version of BrokenUIDLPOP3Retriever, based on an idea by a user of the Debian package. Thanks: Daniel Burrows, Fredrik Steen. -remove deprecated "strict" argument from message/header parsing calls. While it was possible to suppress the warning that resulted when using Python 2.4, it appears many getmail users couldn't bother to do that and complained to me instead.
Update to 4.3.11. From the changelog: -getmail could previously record an envelope return path header of "<<>>". Fixed. Thanks: Fredrik Steen.
Update to 4.3.10: -bugfix for missing import. Thanks: Matthias Andree.
Update to 4.3.9. From the changelog: -for multidrop retrievers, change the way the envelope recipient header field is parsed, to prevent odd values from being interpreted as multiple addresses when they look like an 822-style address group. Thanks: "aal". -try to avoid parsing message bodies, in case they're corrupt or invalid. Thanks: Michael Gold.
Update to 4.3.8. From the changelog: -change (again) handling of deleted messages vs. connection that dies. Inability to send QUIT to POP3 server should be less problematic now. -improve housekeeping of old message state file. Thanks: Thomas Schwinge.
Update to 4.3.7. From the changelog: -add error message for missing mboxrd file. Thanks: Marco Ferra. -change handling of connection that dies vs. deleted messages. Thanks: Thomas Schwinge.
Update to 4.3.6. From the changelog: -broke BrokenUIDLPOP3Retriever when I added the forget_deleted parameter to the retrievers base class; now fixed. Thanks: Georg Neis.
Update to 4.3.5. From the changelog: * make getmail less conservative about remembering messages as already-seen when unrelated errors occur after successfully delivering them. Thanks: Thomas Schwinge.
Update to 4.3.4. From the changelog: Version 4.3.4 14 March 2005 -documentation changes; getmail v4 cannot run natively on Windows. Use Cygwin if you must run on a Windows platform; this works. -remove some Windows-specific code. Version 4.3.3 19 February 2005 -previously, for safety, getmail would re-retrieve messages after a session that encountered errors. However, getmail had enough information to safely remember those messages that had been successfully delivered. This behaviour has been changed, to avoid delivering duplicate messages where it isn't necessary. Thanks: Thomas Schwinge. -in output/log files, getmailrc files are now specified only by filename, instead of by complete paths. This will prevent some overly-long output lines. -add Windows versions of functions to lock/unlock files, so mbox delivery can be used on Windows. Thanks: Felix Schwarz.
Add RMD160 digests.
Update to 4.3.2. From the changelog: -previously, if an SSL POP3 or IMAP server abruptly closed the connection before getmail could finish logging in, getmail would exit instead of proceeding to the next configured mail account. Fixed. Thanks: Matthias Andree, Frank Benkstein, Thomas Schwinge. -eliminate duplicate Return-Path: header fields. Thanks: Angles Puglisi.
Update to 4.3.1. From the changelog: -some IMAP errors would cause getmail to raise an exception, instead of gracefully proceeding with the next configured mail account. Fixed. Thanks: Matthias Andree.
Update to 4.3.0. From the changelog: -add BrokenUIDLPOP3Retriever class to support servers that do not implement the UIDL command, or which fail to uniquely identify messages using it.
Update to 4.2.6. From the changelog: -add new error message and documentation for POP3 servers that cannot uniquely identify messages in a mailbox. Thanks: Thomas Schwinge.
Update to 4.2.5. From the changelog: -fix typo in getmailcore/exceptions.py that would raise a NameError exception in certain rare cases. Thanks: Gour ?.
Update to 4.2.4. From the changelog: Version 4.2.3 18 November 2004 -documentation updates. -getmailrc examples file updated. Thanks: Scott Robbins. -clarify error message when user insecurely tries to deliver mail as GID 0. Version 4.2.4 22 November 2004 -one type of filter error would cause getmail to skip to the next configured mail account, rather than simply proceeding to the next message from the same account. Fixed. Thanks: Adrien Beau. -documentation updates.
Update to 4.2.2. From the changelog: Version 4.1.5 13 September 2004 -getmail would not delete messages from the server if it was configured not to retrieve them and the delete_after directive was not in use (i.e. user normally left messages on server but occasionally wanted to force-delete them). Fixed. Thanks: Frankye Fattarelli. Version 4.2.0 18 September 2004 -SECURITY: previous versions of getmail contain a security vulnerability. A local attacker with a shell account could exploit a race condition (or a similar symlink attack) to cause getmail to create or overwrite files in a directory of the local user's choosing if the system administrator ran getmail as root and delivered messages to a maildir or mbox file under the control of the attacker, resulting in a local root exploit. Fixed in versions 4.2.0 and 3.2.5. This vulnerability is not exploitable if the administrator does not deliver mail to the maildirs/mbox files of untrusted local users, or if getmail is configured to use an external unprivileged MDA. This vulnerability is not remotely exploitable. Thanks: David Watson. My gratitude to David for his work on finding and analyzing this problem. -Now, on Unix-like systems when run as root, getmail forks a child process and drops privileges before delivering to maildirs or mbox files. getmail will absolutely refuse to deliver to such destinations as root; the uid to switch to must be configured in the getmailrc file. -revert behaviour regarding delivery to non-existent mbox files. Versions 4.0.0 through 4.1.5 would create the mbox file if it did not exist; in versions 4.2.0 and up, getmail reverts to the v.3 behaviour of refusing to do so. Version 4.2.1 8 October 2004 -set message attributes on corrupt container objects to prevent problems with destinations that expect multidrop-retrieved messages. Thanks: Harry Wearne. -move tests for existence of file from mbox destination initialization to delivery method, and change error from configuration to delivery error. Thanks: David Watson. Version 4.2.2 11 October 2004 -in child delivery processes, change real as well as effective uid/gid. Thanks: David Watson. -handle corrupted oldmail file better. Thanks: Matthias Andree.
Update to 4.1.4. From the changelog: -change failure of a message filter to produce at least as many mail headers as it was provided from a non-fatal error to warning. If your filter strips headers, getmail will now warn you about it, but will not consider it an error. -documentation additions.
Update to 4.1.3. From the changelog: -enhance warning diagnostics about non-accessible or non-writable maildirs. -change method of determining name of local host; only fall back to getfqdn() if the result of gethostname() does not contain a dot. -documentation enhancements.
Update to 4.1.2. From the changelog: -dumping config would raise an exception since 4.1.0; fixed. Thanks: Ilya Krel.
Update to 4.1.1. From the changelog: -getmail raised an exception after processing all accounts, while printing a summary, if verbose was set to 2. Fixed. Thanks: Matthias Andree.
Update to 4.1.0. From the changelog: -biggest change is multiple verbosity levels. To support this from rc file, the verbose parameter had to change from a boolean to an integer. Update your getmail rc files: for quiet, set verbose to 0. For more output, set it to 1 or 2. 2 includes info about messages not retrieved, etc. -add rc filename to error messages -change fix from 4.0.11 for email module raising exception during .flatten(). Thanks: Jürgen Nagel. -some types of SSL error could cause getmail to exit instead of continuing to the next mail account; fixed. Thanks: Matthias Andree.
Update to 4.0.13. From the changelog: -unrecognized parameters could trigger a traceback instead of a warning. Fixed. Thanks: Frankye Fattarelli.
Update to 4.0.12. From the changelog: -forgot to add the new Message attribute (from 4.0.11) to its slots declaration. Fixed.
Update to 4.0.11. From the changelog: -change oldmail file writing to save a few bytes of disk space -documentation additions. -Python's standard library email.Message().flatten() could barf on certain types of badly mis-formatted messages (instead of the during instantiation, like the /other/ buggy cases). Hope this is fixed in Python 2.4. Developed a work-around for getmail. Thanks: Juergen Nagel. -changes to "normal" output of getmail to make it slightly less verbose.
Update to 4.0.10. From the changelog: -cosmetic fix to output: add whitespace after timestamp when not retrieving message. Thanks: Matthias Andree. -include MANIFEST.in in source distribution, to assist users in building "built distributions" from it. -change a few output messages' level to make verbose mode slightly less verbose, and add --debug switch to get "more verbose" behaviour.
Update to 4.0.9. From the changelog: -fix cosmetic error for IMAP mailboxes with 0 messages in them. -change method of obtaining uidvalidity from IMAP server and remove wrapper. -previously, connecting to an IMAP-SSL server could fail if a non-SSL IMAP connection were attempted immediately before. This was due to the Python bug discussed here: http://sourceforge.net/tracker/index.php?func=detail&aid=945642&group_id=5470&atid=305470 Implemented a workaround for getmail. Thanks: Payal Rathod.
Update to 4.0.8. From the changelog: 4.0.7: -change failure of a message filter to produce at least as many mail headers as it was provided from a fatal to a non-fatal error. The message will be skipped. Thanks: Payal Rathod. -a few non-conformant IMAP4 servers don't implement SEARCH, so getmail couldn't get a list of UIDs. Changed to use FETCH instead. Thanks: Matthias Andree. -prevent traceback if IMAP SSL connection closed during connect(). Thanks: Payal Rathod. -add warning if unknown parameters are supplied to a retriever, filter, or destination. -write subclasses of Python imaplib classes to work around missing UIDVALIDITY select() response. Add it to the state getmail keeps. Thanks: Matthias Andree. -move message state saving to later, so getmail doesn't falsely remember having handled a message. Thanks: Matthias Andree. -change location of documentation/man pages to <prefix>/share/{doc/getmail,man}/ to be more comformant with the FHS. -documentation updates 4.0.8: -add an extra error message if you ask getmail to deliver to a maildir, but getmail can't check the contents of it due to permissions. Thanks: Clemens Buschmann. -fix breakage introduced in 4.0.7: getmail would forget a message was "seen" after a cycle of not retrieving it. Thanks: Payal Rathod.
Update to 4.0.6. From the changelog: -if the connection failed in a certain way, getmail could forget which messages it had already retrieved, and therefore retrieve them again when the next successful connection occurred. Fixed. Thanks: Wim Uyttebroek. --add win32 executable installer as third download option.
Update to 4.0.5. From the changelog: -add additional error handler for certain network errors with POP3-over-SSL connections. Thanks: Frank Benkstein. -rename retriever class for Demon UK: it should have been SDPS; my transposition. Thanks: Paul Howarth.
Update to 4.0.4. From the changelog: -corrupt-message handler introduced in 4.0.1 needed tweaking. Thanks: Bernhard Riedel.
Update to 4.0.3. From the changelog: -some types of socket errors would raise an exception instead of letting getmail gracefully continue; fixed. Thanks: David. -documentatation updates; fix two typos and add to the section on using ClamAV with getmail. -changes to my release process; the current version's URL will not change when a new version is released. See, I try to help others, even when they don't do the same...
Update to 4.0.2. The changelog is lengthy. The author's summary of differences from previous versions: getmail version 4 has been completely rewritten. It is designed to closely mimic the interface and user experience of getmail version 3, but the new architecture necessitates some differences you will notice: * the getmail rc file (configuration file) format has changed. If you are upgrading from version 3, you will need to write a new configuration file based on the contents of your old one. The new file format resembles the old in many ways. Each account you retrieve mail from will require a separate rc file, but getmail can operate with multiple rc files simultaneously if you wish to retrieve mail from multiple accounts. * support for protocols other than POP3/SPDS. IMAP support is now included, and other protocols can be added with relative ease. * support for SSL-encrypted protocols. The included POP3 and IMAP retriever classes are complemented by SSL-enabled counterparts. * messages can be filtered or annotated by external programs like spam filters and anti-Microsoft-worm programs. Filters can cause messages to be dropped completely. * a flexible, extensible architecture. Additional classes for handling new mail protocols, filter types, or destination mailstores can be added without needing to modify the main script at all. Feel free to contact me if you need a custom retriever, filter, or destination class written, or if you want commercial support for getmail.
Update to getmail-3.2.2. From the changelog: * Add an error handler for the case where a POP3 server returns a message that isn't even close to valid 822 format, particularly one where the first line in the message header is a continuation line (starts with whitespace).
Upgrade to 3.2.1. Patch sent by Soren Jacobsen in PR pkg/23299. Changes since 3.1.7: * Add command_add_fromline directive to control prepending mbox-style From_ lines to command deliveries. Defaults to 1, the previous behaviour. Set to 0 to disable. * Add workaround for differences in Python poplib; an incompatible change was introduced (apparently in 1.6) to Python's library, where session.retr() previous returned raw lines, but now it returns the un-stuffed lines. getmail now has to conditionally un-stuff lines depending on the version of the Python interpreter in use. * Change the "over max message size of %(max_message_size)i, skipping ..." message from informational to warning so it can be seen when using -q/--quiet/verbose=0. Thanks to Volker Kuhlmann for the report. -Change error message resulting from failed APOP attempt
Update to 3.1.7, provided by Toru TAKAMIZU in PR 22007. -getmail_mbox.py was missing an import for the string module. Thanks to Emily Jackson for the report. This was introduced in 3.1.6. -Argh; my change to getmail_mbox was incomplete -- not only would getmail not put duplicate From_ lines in, it would escape the single one that it did. This fixes it, so don't bother filing a bug report about this one. -Fredrik Steen reported that getmail was adding a duplicate From_ line when using getmail_mbox to deliver to mbox files. Fixed. -Added -q and --quiet flags to getmail_mbox to suppress warning message. -removed the experimental message_filter code; it was unworkable. If you want to filter messages, use a filtering MDA. getmail works fine with maildrop, procmail, and other MDAs. Thanks to Dan Hensley for experimenting with the message_filter functionality. -message logging inconsistently used local time; changed to GMT for consistency. Thanks to Markus Vetter for the report. -address_no_brackets couldn't handle empty strings. Fixed; thanks to Fredrik Steen for the report.
Update to 3.1.1, based on Toru TAKAMIZU's patches in PR 19707. Changes: Version 3.1.1 14 March 2003 -Add additional info to message log (msg #, msg count, size) "new msg" status line. Thanks to Payal Rathod for the feature request. Version 3.1.0 21 February 2003 -Rename the recipient_header directive to "envelope_recipient". There was simply too much confusion about it. Sorry, but you'll have to update your getmailrc file and rename this directive if you're using it. This version was going to be 3.0.5, but this change necessitates bumping the version up to 3.1.0. -Include separate callable program for mbox delivery. The program, getmail_mbox, is based on the mbox delivery code in getmail version 2.3. It assumes mboxrd format and flock locking; if other programs on your system expect a different subtype of mbox format or use a different locking method, you can corrupt your mbox file. Use at your own risk. You can use this in a command delivery target from getmail as "|/path/to/getmail_mbox /path/to/mboxfile" . -In a similar vein, include separate callable program for maildir delivery. The program, getmail_maildir, uses the same maildir delivery code as getmail. You can use this in a command delivery target from getmail as "|/path/to/getmail_maildir /path/to/maildir/" . This is mostly useful if you want to deliver to a maildir after doing something else to the message, and can be used in place of safecat. -Add message filtering. You can now pass messages through arbitrary filters before delivery; specify one or more message_filter directives, each of which is a command and arguments. The filter(s) should read the message from stdin, write to stdout, and exit 0 for success, 99 to drop the message in the bitbucket, and anything else to indicate an error. No docs for this yet. -getmail could drop the final newline when delivering to Maildirs in some circumstances. Thanks to Jason Mastaler for the report and testing. Version 3.0.4 20 February 2003 -Catch a user incorrectly specifying two values for recipient_header. Thanks to Francisco Stefano Wechsler for the report. -Update ConfParser to version 3.3, designed to make it easier to catch user configuration errors. -Update configuration-handling code to use new features of ConfParser 3.3 above, report configuration errors more clearly. Thanks to Francisco Stefano Wechsler for the report which got me looking at this. -Add explicit check for recipient_header specifying a known-incorrect value. Thanks to Edward Davis for the report that got me looking at this. -Move some sanity checks around to report errors earlier. Version 3.0.3 14 February 2003 -Missing import in getmail_utilities.py affected those who let getmail prompt them for a password. Thanks to Francisco Stefano Wechsler for the report. Version 3.0.2 14 February 2003 -My editor let CR LF line endings into getmail_utilities.py ; this caused problems for at least one person. Thanks to Francisco Stefano Wechsler for the report. Now fixed. Version 3.0.1 13 February 2003 -Have getmail report an error if local directives are specified but getmail is not operating in multidrop mode (through either of the "use_*env" or "recipient_header" directives). Thanks to Gerwin Krist for reporting that this was not obvious. Version 3.0.0 10 February 2003 -Updated to version 1.23 of Timothy O'Malley's timeoutsocket.py from http://www.timo-tasi.org/python/timeoutsocket.py -not all configuration errors were being caught in ConfParser. Updated ConfParser as a result; thanks to Christian Pelster for reporting and testing this. -Move lots of code around. Much has been moved into separate files. Much other code has been cleaned up. -Add support for Demon's SPDS "*ENV" command for domain mailboxes. Thanks to Paul Clifford for the request and the pointer to Demon's explanation of this protocol extension, submission of a patch to getmail 2.3.x for this feature, and for a testing 3.0 in its pre-release state. Paul also submitted several patches during pre-release testing which I accepted. -Change main delivery loop; individual message delivery failures are not considered fatal errors any more. The messages will be left on the server and retried. -Remove mbox delivery code. Use an external MDA for this; for safety and reliability, all mbox-delivery programs on a system have to be compiled to use the same method of mbox locking in any case. I don't use mbox files at all. -Simplify handling of oldmail data files. -Domain mailboxes are now only supported with explicit configuration of a header field which records the envelope recipient address or with *ENV. This removes a lot of code and makes the logic simpler. -Remove duplicate filtering option. Use an external MDA for this. -Change maildir delivery algorithm; getmail will now try up to three times to generate a valid, unique name in maildir/tmp/, sleeping two seconds between tries as recommended by djb. This code is also now moved into an independant function in getmail_utilities.py for easier use by others. The file naming convention has changed to djb's "modern delivery identifiers".
Update getmail to 2.1.3 News: Version 2.1.3 3 August 2001 -change handling of command delivery. Verification of existent command is smarter; arguments won't cause problems now. Remove duplicate code. Version 2.1.2 1 August 2001 -getmail will now check the permissions on your getmailrc file, and refuse to run if the file is group- or world-writable. Thanks to Fredrik Steen for the request. Version 2.1.1 29 June 2001 -add "no_received" option, similar to no_delivered_to, at request of getmail user Nigel Cunningham. -got rid of some trailing tabs in ConfigParser.py after a report from Fredrik Steen -- they're harmless, but unclean. Fredrik is also in the process of packaging getmail for use in Debian. Thanks, Fredrik. -changed the default path to the getmail library dir from /usr/local/lib/... to /usr/lib/... . This only affects the getmail wrapper script; if you're using that, you may have to edit your copy, or change where you install the files to.
Update getmail to 2.1.0 Changes: -fix the "blank lines output, even in quiet mode" problem which caused cron to send email every time getmail was run. Thanks to Errol Casey for finding the cause. -Handle user aborting getmail better. -Remove dead parameter from message_add_info() -move file locking to separate functions -add file locking around handling of oldmail file -move regular expression objects into a dictionary -add ability to deliver to a command (pipe delivery) like maildrop or procmail. getmail won't do this if it's running as root.
Update getmail to 2.0.20 Changes: -remove dead code -fix bug in example getmailrc file. Thanks to John Gennard for spotting this. There was an instance of an empty option value left over from before this was an issue.
Version 2.0.19 18 April 2001 -add additional exception handling for POP3 protocol errors (server bugs) and socket errors after connect (network errors). Thanks to Jesper Andersen for the bug report. -add additional log message to make diagnosis of server problems easier. Apparently Mandrake Linux v.7.2 ships with a very broken POP3 server; several users sent me traces which I tracked down to gross violations of the POP3 protocol (RFC1939). o remove patch-aa, we can do substitution using sed o move getmailrc-example to standard place (PREFIX/share/examples), thus removing pkg/MESSAGE (it suggested taking a look at PREFIX/doc/getmail/getmailrc-example
+ move the distfile digest/checksum value from files/md5 to distinfo + move the patch digest/checksum values from files/patch-sum to distinfo