Hello community, here is the log from the commit of package getmail for openSUSE:Factory checked in at 2017-06-08 15:03:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/getmail (Old) and /work/SRC/openSUSE:Factory/.getmail.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "getmail" Thu Jun 8 15:03:18 2017 rev:21 rq:501657 version:4.54.0 Changes: -------- --- /work/SRC/openSUSE:Factory/getmail/getmail.changes 2014-10-09 12:52:52.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.getmail.new/getmail.changes 2017-06-08 15:03:22.315900366 +0200 @@ -1,0 +2,57 @@ +Sun Apr 30 13:56:49 UTC 2017 - [email protected] + +- added obs-service verify_file + +- Version bump to 4.54.0 + * fix error running getmail_fetch introduced in 4.53.0. + +- Changes from 4.53.0 + * fix plaintext version of docs not generated correctly. + * fix `getmail --fingerprint` not logging server TLS fingerprint correctly + with SimplePOP3SSLRetriever. + +- Changes from 4.52.0 + * 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. + * 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. + * 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. + +- Changes from 4.51.0 + * fix exception when using MDA_External and an IMAP mailbox whose name + contains non-ASCII chars. + +- Changes from 4.50.0 + * maybe fix handling of OSX keychain passwords containing double-quote chars. + * fix getmail erroring out on IMAP folders containing i18n chars. + +- Changes from 4.49.0 + * 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. + +- Changes from 4.48.0 + * 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. + +- Changes from 4.47.0 + * try to work around pathological breakage in one random POP server + implementation. + * remove dead marc.theaimsgroup.com list archive from docs. + * 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. + +------------------------------------------------------------------- Old: ---- getmail-4.46.0.tar.gz New: ---- _service getmail-4.54.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ getmail.spec ++++++ --- /var/tmp/diff_new_pack.XQoXOF/_old 2017-06-08 15:03:23.055795945 +0200 +++ /var/tmp/diff_new_pack.XQoXOF/_new 2017-06-08 15:03:23.059795380 +0200 @@ -1,7 +1,7 @@ # # spec file for package getmail # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: getmail -Version: 4.46.0 +Version: 4.54.0 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build Url: http://pyropus.ca/software/getmail/ ++++++ _service ++++++ <services> <service name="verify_file" mode="localonly"> <param name="verifier">sha256</param> <param name="checksum">d45657945353c68785b106dd9c5fae6bc2cec8f99fbb202d9dddd4967f483a65</param> <param name="file">getmail-4.54.0.tar.gz</param> </service> </services> ++++++ getmail-4.46.0.tar.gz -> getmail-4.54.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/PKG-INFO new/getmail-4.54.0/PKG-INFO --- old/getmail-4.46.0/PKG-INFO 2014-04-07 05:25:59.000000000 +0200 +++ new/getmail-4.54.0/PKG-INFO 2017-02-19 19:08:50.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: getmail -Version: 4.46.0 +Version: 4.54.0 Summary: a mail retrieval, sorting, and delivering system Home-page: http://pyropus.ca/software/getmail/ Author: Charles Cazabon diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/CHANGELOG new/getmail-4.54.0/docs/CHANGELOG --- old/getmail-4.46.0/docs/CHANGELOG 2014-04-07 05:24:46.000000000 +0200 +++ new/getmail-4.54.0/docs/CHANGELOG 2017-02-19 19:08:34.000000000 +0100 @@ -1,3 +1,68 @@ +Version 4.54.0 +19 February 2017 + -fix error running getmail_fetch introduced in 4.53.0. Thanks: "fsckd". + +Version 4.53.0 +15 January 2017 + -fix plaintext version of docs not generated correctly. Thanks: Elijah. + -fix `getmail --fingerprint` not logging server TLS fingerprint correctly + with SimplePOP3SSLRetriever. Thanks: Gabriel Kihlman. + +Version 4.52.0 +22 October 2016 + -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. + +Version 4.51.0 +11 September 2016 + -fix exception when using MDA_External and an IMAP mailbox whose name + contains non-ASCII chars. Thanks: "drtmk". + +Version 4.50.0 +11 July 2016 + -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 Stühler. + + Version 4.49.0 +13 January 2016 + -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. + +Version 4.48.0 +31 May 2015 + -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. + +Version 4.47.0 +25 February 2015 + -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. + Version 4.46.0 6 April 2014 -fix --idle checking Python version incorrectly, resulting in incorrect diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/configuration.html new/getmail-4.54.0/docs/configuration.html --- old/getmail-4.46.0/docs/configuration.html 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/docs/configuration.html 2017-02-19 19:08:45.000000000 +0100 @@ -616,8 +616,9 @@ <li> move_on_delete (<a href="#parameter-string">string</a>) - — if set, messages are moved to the named mail folder before being - deleted from their original location. Note that if you configure + — if set, messages are moved to the named IMAP mail folder before + being deleted from their original location. The specified mail folder + must exist; getmail will not create it. Note that if you configure getmail not to delete retrieved messages (the default behaviour), they will not be moved at all. </li> @@ -2729,6 +2730,18 @@ for definition. </li> <li> + ignore_header_shrinkage + (<a href="#parameter-boolean">boolean</a>) + — by default, getmail will warn if a filtered message's header + contains fewer fields than the source message had, to warn you if your + filter is unexpectedly deleting information from messages it handles. + If you know your filter can legitimately produce a message with a + shorter header (such as if it encapsulates the original message), + set this option to disable the warning. <b>Do not simply set this + if you see the warning; you must understand whether your filter is + operating correctly or not before you use this</b>. + </li> + <li> ignore_stderr (<a href="#parameter-boolean">boolean</a>) — see diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/configuration.txt new/getmail-4.54.0/docs/configuration.txt --- old/getmail-4.46.0/docs/configuration.txt 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/docs/configuration.txt 2017-02-19 19:08:46.000000000 +0100 @@ -388,9 +388,10 @@ if PEEK is not used to retrieve the message content. Versions of getmail prior to 4.26.0 did not use PEEK to retrieve messages. * move_on_delete (string) — if set, messages are moved to the named - mail folder before being deleted from their original location. Note - that if you configure getmail not to delete retrieved messages (the - default behaviour), they will not be moved at all. + IMAP mail folder before being deleted from their original location. + The specified mail folder must exist; getmail will not create it. + Note that if you configure getmail not to delete retrieved messages + (the default behaviour), they will not be moved at all. * use_kerberos (boolean) — whether to use Kerberos authentication with the IMAP server. If not set, normal password-based authenticaion is used. Note that when you use Kerberos @@ -1438,6 +1439,15 @@ * group (string) — see Filter_classifier for definition. * allow_root_commands (boolean) — see Filter_classifier for definition. + * ignore_header_shrinkage (boolean) — by default, getmail will warn + if a filtered message's header contains fewer fields than the + source message had, to warn you if your filter is unexpectedly + deleting information from messages it handles. If you know your + filter can legitimately produce a message with a shorter header + (such as if it encapsulates the original message), set this option + to disable the warning. Do not simply set this if you see the + warning; you must understand whether your filter is operating + correctly or not before you use this. * ignore_stderr (boolean) — see Filter_classifier for definition. * exitcodes_drop (tuple of integers) — see Filter_classifier for definition. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/documentation.html new/getmail-4.54.0/docs/documentation.html --- old/getmail-4.46.0/docs/documentation.html 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/docs/documentation.html 2017-02-19 19:08:45.000000000 +0100 @@ -717,8 +717,8 @@ <h4 id="mailing-list-users-archive">Archives of the getmail-users' mailing list</h4> <p> There are browsable archives of the list at - <a href="http://marc.theaimsgroup.com/?l=getmail&r=1&w=2"> - http://marc.theaimsgroup.com/?l=getmail&r=1&w=2 + <a href="https://marc.info/?l=getmail"> + https://marc.info/?l=getmail </a> and <a href="http://news.gmane.org/gmane.mail.getmail.user"> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/documentation.txt new/getmail-4.54.0/docs/documentation.txt --- old/getmail-4.46.0/docs/documentation.txt 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/docs/documentation.txt 2017-02-19 19:08:46.000000000 +0100 @@ -403,7 +403,7 @@ Archives of the getmail-users' mailing list There are browsable archives of the list at - http://marc.theaimsgroup.com/?l=getmail&r=1&w=2 and + https://marc.info/?l=getmail and http://news.gmane.org/gmane.mail.getmail.user . The GMANE getmail users' archive is also available via NNTP if you prefer to read it with a newsreader, rather than a web browser. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/faq.html new/getmail-4.54.0/docs/faq.html --- old/getmail-4.46.0/docs/faq.html 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/docs/faq.html 2017-02-19 19:08:45.000000000 +0100 @@ -1424,7 +1424,7 @@ <p> See the following mailing list message from Frankye Fattarelli for additional notes on using ClamAV with getmail: - <a href="http://marc.theaimsgroup.com/?l=getmail&m=109128345509273&w=2">http://marc.theaimsgroup.com/?l=getmail&m=109128345509273&w=2</a> + <a href="https://marc.info/?l=getmail&m=109128345509273&w=2">https://marc.info/?l=getmail&m=109128345509273&w=2</a> </p> <h4 id="faq-integrating-clamav-prettier">Getting prettier output from ClamAV</h4> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/docs/faq.txt new/getmail-4.54.0/docs/faq.txt --- old/getmail-4.46.0/docs/faq.txt 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/docs/faq.txt 2017-02-19 19:08:46.000000000 +0100 @@ -954,7 +954,7 @@ See the following mailing list message from Frankye Fattarelli for additional notes on using ClamAV with getmail: - http://marc.theaimsgroup.com/?l=getmail&m=109128345509273&w=2 + https://marc.info/?l=getmail&m=109128345509273&w=2 Getting prettier output from ClamAV diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmail new/getmail-4.54.0/getmail --- old/getmail-4.46.0/getmail 2014-04-07 05:24:46.000000000 +0200 +++ new/getmail-4.54.0/getmail 2016-09-11 17:30:41.000000000 +0200 @@ -159,14 +159,15 @@ for mailbox in retriever.mailboxes: if mailbox: # For POP this is None and uninteresting - log.debug(' checking mailbox %s ...\n' % mailbox) + log.debug(' checking mailbox %s ...\n' + % mailbox.encode('utf-8')) try: retriever.select_mailbox(mailbox) except getmailMailboxSelectError, o: errorexit = True log.info(' mailbox %s not selectable (%s) - verify the ' 'mailbox exists and you have sufficient ' - 'permissions\n' % (mailbox, o)) + 'permissions\n' % (mailbox.encode('utf-8'), o)) continue nummsgs = len(retriever) fmtlen = len(str(nummsgs)) @@ -424,6 +425,7 @@ try: idling = retriever.go_idle(idle) # Returned from idle + retriever.set_new_timestamp() configs.append(configs[0]) continue except KeyboardInterrupt, o: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmail.spec new/getmail-4.54.0/getmail.spec --- old/getmail-4.46.0/getmail.spec 2014-04-07 05:25:56.000000000 +0200 +++ new/getmail-4.54.0/getmail.spec 2017-02-19 19:08:46.000000000 +0100 @@ -2,7 +2,7 @@ Summary: POP3 mail retriever with reliable Maildir delivery Name: getmail -Version: 4.46.0 +Version: 4.54.0 Release: 1 License: GPL Group: Applications/Internet @@ -52,6 +52,33 @@ %{python_sitelib}/getmailcore/ %changelog +* Sun Feb 19 2017 Charles Cazabon <[email protected]> +-update to version 4.54.0 + +* Sun Jan 15 2017 Charles Cazabon <[email protected]> +-update to version 4.53.0 + +* Sat Oct 22 2016 Charles Cazabon <[email protected]> +-update to version 4.52.0 + +* Sun Sep 11 2016 Charles Cazabon <[email protected]> +-update to version 4.51.0 + +* Sun Sep 11 2016 Charles Cazabon <[email protected]> +-update to version 4.51.0 + +* Mon Jul 11 2016 Charles Cazabon <[email protected]> +-update to version 4.50.0 + +* Wed Jan 13 2016 Charles Cazabon <[email protected]> +-update to version 4.49.0 + +* Sun May 31 2015 Charles Cazabon <[email protected]> +-update to version 4.48.0 + +* Wed Feb 25 2015 Charles Cazabon <[email protected]> +-update to version 4.47.0 + * Sun Apr 06 2014 Charles Cazabon <[email protected]> -update to version 4.46.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmail_fetch new/getmail-4.54.0/getmail_fetch --- old/getmail-4.46.0/getmail_fetch 2012-06-20 05:44:15.000000000 +0200 +++ new/getmail-4.54.0/getmail_fetch 2017-02-19 19:08:34.000000000 +0100 @@ -9,6 +9,7 @@ import os import socket import poplib +import new from optparse import OptionParser try: @@ -133,6 +134,10 @@ raise getmailOperationError('incorrect arguments; try --help' % args) + def get(self, key, value=None): + return getattr(self, key, value) + options.get = new.instancemethod(get, options, options.__class__) + msg = None if options.message is not None: try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmailcore/__init__.py new/getmail-4.54.0/getmailcore/__init__.py --- old/getmail-4.46.0/getmailcore/__init__.py 2014-04-07 05:24:46.000000000 +0200 +++ new/getmail-4.54.0/getmailcore/__init__.py 2017-02-19 19:08:34.000000000 +0100 @@ -16,7 +16,7 @@ raise ImportError('getmail version 4 requires Python version 2.3.3' ' or later') -__version__ = '4.46.0' +__version__ = '4.54.0' __all__ = [ 'baseclasses', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmailcore/_retrieverbases.py new/getmail-4.54.0/getmailcore/_retrieverbases.py --- old/getmail-4.46.0/getmailcore/_retrieverbases.py 2014-04-07 05:24:46.000000000 +0200 +++ new/getmail-4.54.0/getmailcore/_retrieverbases.py 2017-02-19 19:08:34.000000000 +0100 @@ -233,6 +233,15 @@ # Constant for POPSSL POP3_SSL_PORT = 995 + +# Python added poplib._MAXLINE somewhere along the way. As far as I can +# see, it serves no purpose except to introduce bugs into any software +# using poplib. Any computer running Python will have at least some megabytes +# of userspace memory; arbitrarily causing message retrieval to break if any +# "line" exceeds 2048 bytes is absolutely stupid. +poplib._MAXLINE = 1 << 20 # 1MB; decrease this if you're running on a VIC-20 + + # # Mix-in classes # @@ -421,8 +430,19 @@ ) self.conn.sock.setblocking(1) - self.log.trace('POP3 connection %s established' % self.conn - + os.linesep) + + fingerprint_message = ('POP3 SSL connection %s established' + % self.conn) + if actual_hash: + fingerprint_message += ' with fingerprint %s' % actual_hash + if ssl_cipher: + fingerprint_message += ' using cipher %s' % ssl_cipher + fingerprint_message += os.linesep + + if self.app_options.get('fingerprint', False): + self.log.info(fingerprint_message) + else: + self.log.trace(fingerprint_message) ####################################### @@ -733,7 +753,7 @@ def __init__(self, **args): self.headercache = {} self.deleted = {} - self.timestamp = int(time.time()) + self.set_new_timestamp() self.__oldmail_written = False self.__initialized = False self.gotmsglist = False @@ -742,6 +762,9 @@ self.supports_idle = False ConfigurableBase.__init__(self, **args) + def set_new_timestamp(self): + self.timestamp = int(time.time()) + def _clear_state(self): self.msgnum_by_msgid = {} self.msgid_by_msgnum = {} @@ -749,6 +772,7 @@ self.msgsizes = {} self.oldmail = {} self.__delivered = {} + self.deleted = {} self.mailbox_selected = False def setup_received(self, sock): @@ -1325,9 +1349,10 @@ raise ValueError name = parts.pop(0).lower() r[name] = parts.pop(0) - except (ValueError, IndexError), o: + except (ValueError, IndexError, AttributeError), o: raise getmailOperationError( - 'IMAP error (failed to parse UID response line "%s")' % line + 'IMAP error (failed to parse attr response line "%s": %s)' + % (line, o) ) self.log.trace('got %s' % r + os.linesep) return r @@ -1361,8 +1386,9 @@ def close_mailbox(self): # Close current mailbox so deleted mail is expunged. One getmail # user had a buggy IMAP server that didn't do the automatic expunge, - # so we do it explicitly here. - self.conn.expunge() + # so we do it explicitly here if we've deleted any messages. + if self.deleted: + self.conn.expunge() self.conn.close() self.write_oldmailfile(self.mailbox_selected) # And clear some state @@ -1433,6 +1459,10 @@ 'FETCH', '1:%d' % msgcount, '(UID RFC822.SIZE)' ) for line in response: + if not line: + # One user had a server that returned a null response + # somehow -- try to just skip. + continue r = self._parse_imapattrresponse(line) # Don't allow / in UIDs we store, as we look for that to # detect old-style oldmail files. Can occur with IMAP, at @@ -1477,7 +1507,7 @@ ) self.log.debug('deleting message "%s"' % uid + os.linesep) response = self._parse_imapuidcmdresponse( - 'STORE', uid, 'FLAGS', '(\Deleted)' + 'STORE', uid, 'FLAGS', '(\Deleted \Seen)' ) except imaplib.IMAP4.error, o: raise getmailOperationError('IMAP error (%s)' % o) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmailcore/destinations.py new/getmail-4.54.0/getmailcore/destinations.py --- old/getmail-4.46.0/getmailcore/destinations.py 2013-01-27 20:21:35.000000000 +0100 +++ new/getmail-4.54.0/getmailcore/destinations.py 2016-09-11 17:30:41.000000000 +0200 @@ -696,7 +696,8 @@ 'or GID 0 by default' ) args = [self.conf['path'], self.conf['path']] - msginfo['mailbox'] = self.retriever.mailbox_selected or '' + msginfo['mailbox'] = (self.retriever.mailbox_selected + or '').encode('utf-8') for arg in self.conf['arguments']: arg = expand_user_vars(arg) for (key, value) in msginfo.items(): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmailcore/filters.py new/getmail-4.54.0/getmailcore/filters.py --- old/getmail-4.46.0/getmailcore/filters.py 2013-08-03 22:27:04.000000000 +0200 +++ new/getmail-4.54.0/getmailcore/filters.py 2016-10-22 18:46:10.000000000 +0200 @@ -94,12 +94,13 @@ # Check the filter was sane if len(newmsg.headers()) < len(msg.headers()): - # Warn user - self.log.warning( - 'Warning: filter %s returned fewer headers (%d) than supplied ' - '(%d)\n' - % (self, len(newmsg.headers()), len(msg.headers())) - ) + if not self.conf.get('ignore_header_shrinkage', False): + # Warn user + self.log.warning( + 'Warning: filter %s returned fewer headers (%d) than ' + 'supplied (%d)\n' + % (self, len(newmsg.headers()), len(msg.headers())) + ) # Copy attributes from original message newmsg.copyattrs(msg) @@ -174,6 +175,7 @@ ConfString(name='user', required=False, default=None), ConfString(name='group', required=False, default=None), ConfBool(name='allow_root_commands', required=False, default=False), + ConfBool(name='ignore_header_shrinkage', required=False, default=False), ConfBool(name='ignore_stderr', required=False, default=False), ConfInstance(name='configparser', required=False), ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmailcore/retrievers.py new/getmail-4.54.0/getmailcore/retrievers.py --- old/getmail-4.46.0/getmailcore/retrievers.py 2014-04-07 05:24:46.000000000 +0200 +++ new/getmail-4.54.0/getmailcore/retrievers.py 2016-10-22 18:46:10.000000000 +0200 @@ -402,8 +402,9 @@ ConfInstance(name='configparser', required=False), ConfDirectory(name='getmaildir', required=False, default='~/.getmail/'), - # socket.ssl() and socket timeouts are incompatible in Python 2.3 - #ConfInt(name='timeout', required=False, default=180), + # socket.ssl() and socket timeouts were incompatible in Python 2.3; + # if you have problems, comment this line out + ConfInt(name='timeout', required=False, default=180), ConfString(name='server'), ConfInt(name='port', required=False, default=imaplib.IMAP4_SSL_PORT), ConfString(name='username'), @@ -488,8 +489,9 @@ ConfInstance(name='configparser', required=False), ConfDirectory(name='getmaildir', required=False, default='~/.getmail/'), - # socket.ssl() and socket timeouts are incompatible in Python 2.3 - #ConfInt(name='timeout', required=False, default=180), + # socket.ssl() and socket timeouts were incompatible in Python 2.3; + # if you have problems, comment this line out + ConfInt(name='timeout', required=False, default=180), ConfString(name='server'), ConfInt(name='port', required=False, default=imaplib.IMAP4_SSL_PORT), ConfString(name='username'), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/getmail-4.46.0/getmailcore/utilities.py new/getmail-4.54.0/getmailcore/utilities.py --- old/getmail-4.46.0/getmailcore/utilities.py 2013-10-25 03:08:51.000000000 +0200 +++ new/getmail-4.54.0/getmailcore/utilities.py 2016-09-11 17:30:41.000000000 +0200 @@ -634,9 +634,14 @@ return None password = None for line in output.split('\n'): - match = re.match(r'password: "([^"]+)"', line) - if match: - password = match.group(1) + #match = re.match(r'password: "([^"]+)"', line) + #if match: + # password = match.group(1) + if 'password:' in line: + pw = line.split(':', 1)[1].strip() + if pw.startswith('"') and pw.endswith('"'): + pw = pw[1:-1] + password = pw if password is None: logger.debug('No keychain password found for %s %s %s' % (user, server, protocol))
