12 years agoMerge branch 'master' of master
James Bunton [Mon, 13 Jul 2009 12:29:43 +0000 (22:29 +1000)]
Merge branch 'master' of

12 years agoQuick synchronizations (for 'quick' > 0) are now performed between full synchronizati...
Michal Vitecek [Fri, 10 Jul 2009 09:27:31 +0000 (11:27 +0200)]
Quick synchronizations (for 'quick' > 0) are now performed between full synchronizations (as specified in the documentation).

Hello John,

 The attached patch makes quick synchronization work again (according to
 the documentation), so there are <quick> quick synchronizations
 performed between full synchronizations.


12 years agoMerge branch 'master' of ssh://
John Goerzen [Sun, 12 Jul 2009 13:53:18 +0000 (08:53 -0500)]
Merge branch 'master' of ssh://

12 years agouse latest version of imaplib2
Christoph Höger [Sat, 11 Jul 2009 09:17:37 +0000 (11:17 +0200)]
use latest version of imaplib2

* fixes rh bz #510036
Signed-off-by: Christoph Höger <>
[ per jgoerzen: rh bz #510036 is Kerberos issue.  also Closes: #535794 in Debian ]

12 years agoReduce memory usage when scanning Maildirs
John Goerzen [Tue, 7 Jul 2009 05:52:00 +0000 (00:52 -0500)]
Reduce memory usage when scanning Maildirs

Patch from Michal Vitecek

12 years agoFix the order of folders during sync
John Goerzen [Tue, 7 Jul 2009 05:04:52 +0000 (00:04 -0500)]
Fix the order of folders during sync

was broken by e1fb9492f84538df698d6a2f1cfa2738929ed040
      (Patch for signal handling to start a sync by Jim Prior)

This patch from Nicolas Dandrimont.  Closes: #535540.

12 years agoMerge branch 'master' of ssh://
John Goerzen [Mon, 6 Jul 2009 15:11:20 +0000 (10:11 -0500)]
Merge branch 'master' of ssh://

12 years agoFixing Python issue to minimum 2.5
John Goerzen [Thu, 2 Jul 2009 05:04:20 +0000 (00:04 -0500)]
Fixing Python issue to minimum 2.5

12 years agoFix minimum Python version. Closes: #535481.
John Goerzen [Thu, 2 Jul 2009 05:03:05 +0000 (00:03 -0500)]
Fix minimum Python version.  Closes: #535481.

12 years agoRemoved old reference to README
John Goerzen [Thu, 2 Jul 2009 02:01:20 +0000 (21:01 -0500)]
Removed old reference to README

12 years agoBump version number
John Goerzen [Thu, 2 Jul 2009 02:00:30 +0000 (21:00 -0500)]
Bump version number

12 years agoUpdated changelog
John Goerzen [Thu, 2 Jul 2009 01:59:45 +0000 (20:59 -0500)]
Updated changelog

12 years agoAdded patch for Python 2.6 ssl
John Goerzen [Thu, 2 Jul 2009 01:49:20 +0000 (20:49 -0500)]
Added patch for Python 2.6 ssl

12 years agoApplied patch from Peter Colberg to remove usage of hard linking
Peter Colberg [Tue, 30 Jun 2009 09:37:36 +0000 (11:37 +0200)]
Applied patch from Peter Colberg to remove usage of hard linking
Closes: #535160

Bug#535160: offlineimap fails on encfs (FUSE) due to hard linking

Package: offlineimap
Version: 6.0.3
Severity: normal
Tags: patch


if the localrepository is stored on an encfs, offlineimap fails as follows:

    OfflineIMAP 6.0.3
    Copyright (C) 2002 - 2008 John Goerzen <>
    This software comes with ABSOLUTELY NO WARRANTY; see the file
    COPYING for details.  This is free software, and you are welcome
    to distribute it under the conditions laid out in COPYING.
    ***** Processing account pleione
    Copying folder structure from IMAP to Maildir
    Establishing connection to tunnel:eval `keychain --quiet --eval` && ssh -q mymailhost /usr/sbin/dovecot --exec-mail imap.
    Syncing Drafts: IMAP -> Maildir
    Syncing INBOX: IMAP -> Maildir
    Syncing net: IMAP -> Maildir
    Copy message 360 IMAP[net] -> Maildir[net], LocalStatus[net]
    Syncing personal: IMAP -> Maildir
    Thread 'Copy message 360 from net' terminated with exception:
    Traceback (most recent call last):
      File "/var/lib/python-support/python2.4/offlineimap/", line 149, in run
      File "", line 422, in run
self.__target(*self.__args, **self.__kwargs)
      File "/var/lib/python-support/python2.4/offlineimap/folder/", line 282, in copymessageto
newuid = object.savemessage(uid, message, flags, rtime)
      File "/var/lib/python-support/python2.4/offlineimap/folder/", line 198, in savemessage
os.path.join(tmpdir, messagename))
    OSError: [Errno 1] Operation not permitted

    Last 4 debug messages logged for Copy message 360 from net prior to exception:

As encfs does not support hard linking, the rename of the temporary
message file fails.

This is the only occurrence of hard linking in offlineimap and can be
fixed by using an atomic `os.rename` instead of ``+`os.unlink`.
I have been using the attached patch for more than 1.5 years and have
never again had any problems with offlineimap on encfs.


12 years agoset gssapi to false on kerberos error
Christoph Höger [Mon, 29 Jun 2009 08:53:07 +0000 (10:53 +0200)]
set gssapi to false on kerberos error

* this fixes a crash when the n-th connection returns an error
by falling back to plainauth
Signed-off-by: Christoph Höger <>
12 years agoUpdate changelog
John Goerzen [Tue, 5 May 2009 20:17:59 +0000 (15:17 -0500)]
Update changelog

12 years agoBug#502779: Sync accounts in order of general.accounts option
Jonny Lamb [Tue, 5 May 2009 19:47:11 +0000 (20:47 +0100)]
Bug#502779: Sync accounts in order of general.accounts option

On Tue, Apr 21, 11:19:00 -0500, John Goerzen wrote:
> I think the one loss of functionality we have here is that it doesn't
> check if a given account has already been listed before adding to the
> list.  Should be a simple tweak.  If you could tweak that and test, I'd
> apply a new patch.

Good catch. I attach an updated patch which I've tested and it appears
to work fine, including not syncing two accounts twice.


Jonny Lamb, UK

From 7f348ee116bba64f7330e28d4e7b2c015910a890 Mon Sep 17 00:00:00 2001
From: Jonny Lamb <>
Date: Tue, 05 May 2009 20:45:17 +0100
Subject: [PATCH] Respect order of general.accounts config setting.

This makes the order of account synchronisation the same as the order of
the general.accounts setting by using a list instead of a dict, which
was actually pointless as the value of each dict item was never even
looked at.

Signed-off-by: Jonny Lamb <>
12 years agoApply patch to fix autorefresh with Kerberos
John Goerzen [Tue, 21 Apr 2009 05:03:28 +0000 (00:03 -0500)]
Apply patch to fix autorefresh with Kerberos

Patch from Eric Dorland

Closes: #470875

From: Wouter Verhelst
Subject: kerberos authentication works only the first time
Date: Fri, 14 Mar 2008 09:28:37 +0100

Package: offlineimap
Version: 5.99.8
Severity: normal


I have the "autorefresh" configuration option specified in my
.offlineimaprc, and am now using the kerberos authentication.

However, this kerberos authentication seems to work only the first
offlineimap tries to fetch mails. The next time, it fails with this

Thread 'Account sync Test' terminated with exception:
Traceback (most recent call last):
  File "/var/lib/python-support/python2.4/offlineimap/",
  line 153, in run
  File "/usr/lib/python2.4/", line 422, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/var/lib/python-support/python2.4/offlineimap/",
  line 119, in syncrunner
  File "/var/lib/python-support/python2.4/offlineimap/",
  line 148, in sync
    remoterepos.syncfoldersto(localrepos, [statusrepos])
  line 135, in syncfoldersto
    srcfolders = src.getfolders()
  line 192, in getfolders
    listresult = imapobj.list(directory =
  File "/usr/lib/python2.4/", line 469, in list
    typ, dat = self._simple_command(name, directory, pattern)
  File "/usr/lib/python2.4/", line 1028, in _simple_command
    return self._command_complete(name, self._command(name, *args))
  File "/usr/lib/python2.4/", line 787, in _command
    raise self.error(
error: command LIST illegal in state NONAUTH

12 years agoFixed typos thanks to Alexey Mahotkin
John Goerzen [Tue, 21 Apr 2009 05:01:01 +0000 (00:01 -0500)]
Fixed typos thanks to Alexey Mahotkin

12 years agogitignore generated files from 'make doc'
Nicolas Sebrecht [Tue, 14 Apr 2009 00:48:18 +0000 (02:48 +0200)]
gitignore generated files from 'make doc'

Signed-off-by: Nicolas Sebrecht <>
12 years ago'make clean' remove
Nicolas Sebrecht [Tue, 14 Apr 2009 00:48:17 +0000 (02:48 +0200)]
'make clean' remove

Signed-off-by: Nicolas Sebrecht <>
12 years agoSort mbnames for each account before writing
James Bunton [Tue, 3 Mar 2009 12:22:07 +0000 (23:22 +1100)]
Sort mbnames for each account before writing

12 years agoAdd IDLE support from James Bunton
John Goerzen [Fri, 13 Feb 2009 02:22:32 +0000 (20:22 -0600)]
Add IDLE support from James Bunton

Merge branch 'bunton'

12 years agoAdded check for IDLE in capabilities
James Bunton [Tue, 10 Feb 2009 05:19:55 +0000 (16:19 +1100)]
Added check for IDLE in capabilities

12 years agoAllow keepalive to be overridden by user if imapfolders is set
James Bunton [Tue, 10 Feb 2009 04:57:03 +0000 (15:57 +1100)]
Allow keepalive to be overridden by user if imapfolders is set

12 years agoImplementation of IMAP IDLE
James Bunton [Tue, 10 Feb 2009 00:27:48 +0000 (11:27 +1100)]
Implementation of IMAP IDLE

 - Use a newer version of imaplib
 - Hijack the keepalive process to send IDLE instead of NOOP

12 years agoFix missing import for pre/postsynchook
John Goerzen [Wed, 14 Jan 2009 06:05:00 +0000 (00:05 -0600)]
Fix missing import for pre/postsynchook

Apply synchook-import.patch from Graham D
fixes #125

12 years agoFix md5 import error
Paul Hinze [Wed, 24 Dec 2008 18:22:10 +0000 (12:22 -0600)]
Fix md5 import error

Paul Hinze <> on 2008-12-22 at 19:16:
> I did a bit of debugging and asking around in #python and it turns out
> that because uses a conditional import of md5 from either
> hashlib or the md5 module, the call is not always correct.
> The attached patch should fix this problem.

Thanks to Daniel Rall for pointing out that the attachment got stripped
off my last message.  Patch follows.



From e01fdfbf62c61c31b514e826e6cc00fb98d88808 Mon Sep 17 00:00:00 2001
From: Paul Hinze <>
Date: Mon, 22 Dec 2008 18:42:44 -0600
Subject: [PATCH] Fixing md5 import when hashlib is available

Thanks to habnabit and Rhamphoryncus in #python for help debugging

12 years agoImport md5 from hashlib if available.
Loui Chang [Thu, 4 Dec 2008 21:45:15 +0000 (16:45 -0500)]
Import md5 from hashlib if available.

The md5 module is deprecated and hashlib is available
since python 2.5.

Signed-off-by: Loui Chang <>
12 years agoPatch from Jim Pryor to support /etc/netrc in addition to ~/.netrc
John Goerzen [Tue, 2 Dec 2008 19:15:44 +0000 (13:15 -0600)]
Patch from Jim Pryor to support /etc/netrc in addition to ~/.netrc

12 years agoApply remainder of Jim Pryor's patch
John Goerzen [Tue, 2 Dec 2008 19:12:36 +0000 (13:12 -0600)]
Apply remainder of Jim Pryor's patch

12 years agomade note in changelog
John Goerzen [Mon, 1 Dec 2008 22:15:42 +0000 (16:15 -0600)]
made note in changelog

12 years agoPatch for signal handling to start a sync by Jim Pryor
John Goerzen [Mon, 1 Dec 2008 22:13:16 +0000 (16:13 -0600)]
Patch for signal handling to start a sync by Jim Pryor
Here's the way I'd like to use offlineimap on my laptop:
    1. Have a regular cron job running infrequently. The cron job
    checks to see
if I'm online, plugged in, and that no other copy of offlineimap is
running. If
all of these conditions are satisfied, it runs offlineimap just once:
"offlineimap -o -u Noninteractive.Quiet"

    2. When I start up mutt, I do it by calling a wrapper script that
until cron-started copies of offlineimap have finished, then starts
on its regular, stay-alive and keep checking schedule. When I quit
    mutt, the
wrapper script tells offlineimap to stop.

This way I get frequent regular checks while I have mutt running, but
I don't
waste my battery/cpu checking frequently for mail when I'm not
interested in

To make this work, though, it'd be nicer if it were easier to tell
from the outside, things like "terminate cleanly now" and "when you've
synching, then terminate instead of sleeping and synching again."

OK, to put my money where my mouth is, I attach two patches against

The first, "cleanup.patch", cleans up a few spots that tend to throw
for me as offlineimap is exiting from a KeyboardInterrupt.

The second adds signaling capabilities to offlineimap.

* sending a SIGTERM tells offlineimap to terminate immediately but
  just as if "q" had been pressed in the GUI interface

* sending a SIGUSR1 tells every account to do a full sync asap: if
  sleeping, then wake up and do the sync now. If it's mid-sync, then
  any folders whose syncing has already been started or completed, and
  to synch the other, queued but not-yet-synched folders.

* sending a SIGHUP tells every account to die as soon as it can (but
  immediately: only after finishing any synch it's now engaged in)

* sending a SIGUSR2 tells every account to do a full sync asap (as
  SIGUSR1), then die

It's tricky to mix signals with threads, but I think I've done this
I've been using it now for a few weeks without any obvious
problems. But I'm passing it
on so that others can review the code and test it out on their
systems. I developed the
patch when I was running Python 2.5.2, but to my knowledge I don't use
any Python 2.5-specific
code. Now I'm using the patch with Python 2.6.

Although I said "without any obvious problems," let me confess that
seeing offlineimap regularly choke when I do things like this: start
my offlineimap-wrapped copy of mutt, wait a while, put the machine to
sleep (not sure if offlineimap is active in the background or idling),
move to a different spot, wake the machine up again and it acquires a
new network, sometimes a wired network instead of wifi. Offlineimap
doesn't like that so much. I don't yet have any reason to think the
problems here come from my patches. But I'm just acknowledging them,
that if others are able to use offlineimap without any difficulty in
situations like I described, then maybe the fault is with my patches.

12 years agoPatch to make exit on Ctrl-C cleaner
John Goerzen [Mon, 1 Dec 2008 22:10:49 +0000 (16:10 -0600)]
Patch to make exit on Ctrl-C cleaner
From Jim Pryor

The first, "cleanup.patch", cleans up a few spots that tend to throw
exceptions for me as offlineimap is exiting from a KeyboardInterrupt.

13 years agoNew option to only work with subscribed folders
John Goerzen [Wed, 1 Oct 2008 05:33:57 +0000 (00:33 -0500)]
New option to only work with subscribed folders

Patch from Sean Finney, slightly modified by John Goerzen to change
name of config file option

fixes deb#499588

13 years agoAdded docs for hooks
John Goerzen [Wed, 1 Oct 2008 05:04:14 +0000 (00:04 -0500)]
Added docs for hooks

Patch from Sias Mey

fixes #71

13 years agoApplied pre/post sync hooks
John Goerzen [Wed, 1 Oct 2008 05:03:04 +0000 (00:03 -0500)]
Applied pre/post sync hooks

Patch from Sylvain FORET in refs #71

13 years agoMerge branch 'master' of ssh://
John Goerzen [Mon, 29 Sep 2008 23:04:50 +0000 (18:04 -0500)]
Merge branch 'master' of ssh://

13 years agoimaplibutil: Remove flagrantly bad use of private attribute
Michael Witten [Fri, 26 Sep 2008 15:43:57 +0000 (10:43 -0500)]
imaplibutil: Remove flagrantly bad use of private attribute

Frankly, the original code doesn't even make much sense, and
moreover it's not forward compatible with python 2.6, and

    DeprecationWarning: socket.ssl() is deprecated.

So, this commit is just a temporary fix.

Signed-off-by: Michael Witten <>
13 years agoApply new darwin.patch from Vincent Beffara
John Goerzen [Tue, 16 Sep 2008 21:51:11 +0000 (16:51 -0500)]
Apply new darwin.patch from Vincent Beffara
fixes #20
patch dated 5/27/2008

13 years agoPrepping 6.0.3 debian/6.0.3
John Goerzen [Wed, 13 Aug 2008 05:05:17 +0000 (00:05 -0500)]
Prepping 6.0.3

13 years agomake the trash and spam folder names in Gmail accounts configurable
Henning Glawe [Tue, 12 Aug 2008 23:19:38 +0000 (01:19 +0200)]
make the trash and spam folder names in Gmail accounts configurable

13 years agotask_done wasn't in Python before 2.5
John Goerzen [Tue, 12 Aug 2008 01:38:33 +0000 (20:38 -0500)]
task_done wasn't in Python before 2.5

13 years agoMerge branch 'master' of ssh://
John Goerzen [Fri, 8 Aug 2008 18:08:08 +0000 (13:08 -0500)]
Merge branch 'master' of ssh://

13 years agoFix a bug preventing the pid file from being empty.
Ben Willard [Fri, 8 Aug 2008 01:16:36 +0000 (21:16 -0400)]
Fix a bug preventing the pid file from being empty.

Convert os.getpid() to a string before writing it to the pid file in
order to avoid generating an empty pid file.

13 years agoClarified and highlighted the need to set maxsyncaccounts to sync more
John Goerzen [Thu, 7 Aug 2008 08:51:00 +0000 (03:51 -0500)]
Clarified and highlighted the need to set maxsyncaccounts to sync more
than 1 account

13 years agoRemoved debug statements
John Goerzen [Tue, 5 Aug 2008 05:07:26 +0000 (00:07 -0500)]
Removed debug statements

13 years agoYet another Python threading workaround.
John Goerzen [Tue, 5 Aug 2008 05:05:29 +0000 (00:05 -0500)]
Yet another Python threading workaround.

module threading should be taken out back and shot.

Condition.wait() is a busywait loop that has negative implications for
battery consumption on laptops.

Queue.get() in blocking mode blocks SIGINT from being delivered.

Argh, argh, argh.

Closes: #493801.

13 years agoUpdate changelog debian/6.0.2
John Goerzen [Sat, 2 Aug 2008 22:44:46 +0000 (17:44 -0500)]
Update changelog

13 years agoBump version to 6.0.2
John Goerzen [Sat, 2 Aug 2008 22:44:20 +0000 (17:44 -0500)]
Bump version to 6.0.2

13 years agoRework keepalive to use time.sleep() instead of event.wait()
John Goerzen [Sat, 2 Aug 2008 22:04:32 +0000 (17:04 -0500)]
Rework keepalive to use time.sleep() instead of event.wait()

This should improve power-management abilities some more

The catch is that we can't wait any longer for the kathread to
terminate.  We were waiting for this in some cases.  This is probably
not a big deal.

fixes deb#434074
fixes #66

13 years agoUpdate changelog debian/6.0.1
John Goerzen [Sat, 2 Aug 2008 20:39:49 +0000 (15:39 -0500)]
Update changelog

13 years agoEliminate one more fsync
John Goerzen [Sat, 2 Aug 2008 20:31:43 +0000 (15:31 -0500)]
Eliminate one more fsync

13 years agoUpdate for 6.0.1
John Goerzen [Sat, 2 Aug 2008 20:18:22 +0000 (15:18 -0500)]
Update for 6.0.1

13 years agoBump version to 6.0.1
John Goerzen [Sat, 2 Aug 2008 20:13:43 +0000 (15:13 -0500)]
Bump version to 6.0.1

13 years agoFix syntax error in nofsync support
John Goerzen [Sat, 2 Aug 2008 20:11:23 +0000 (15:11 -0500)]
Fix syntax error in nofsync support

13 years agoRework threadutil to use Queue for simplification and power-friendliness
John Goerzen [Sat, 2 Aug 2008 20:10:11 +0000 (15:10 -0500)]
Rework threadutil to use Queue for simplification and power-friendliness

Removes code and should avoid weird Python situation that causes cpu

fixes deb#434074
fixes #66

13 years agoAdded ability to disable fsync()
John Goerzen [Sat, 2 Aug 2008 19:55:08 +0000 (14:55 -0500)]
Added ability to disable fsync()

Passed config to LocalStatus and Maildir folders so they can look
up the fsync status

13 years agoMerge branches 'master' and 'master' of ssh://
John Goerzen [Sat, 2 Aug 2008 19:42:56 +0000 (14:42 -0500)]
Merge branches 'master' and 'master' of ssh://

13 years agoSlightly more debug info
John Goerzen [Sat, 2 Aug 2008 19:37:55 +0000 (14:37 -0500)]
Slightly more debug info

13 years agoNow create cur,new,tmp in '.' even if existsok is false
John Goerzen [Sat, 2 Aug 2008 19:34:51 +0000 (14:34 -0500)]
Now create cur,new,tmp in '.' even if existsok is false

Otherwise, there was a race where sometimes subfolders would get created
first in the sep = '.' scneario

fixes #64

13 years agoFix for keys with -1
John Goerzen [Wed, 16 Jul 2008 19:12:38 +0000 (14:12 -0500)]
Fix for keys with -1
fixes #83

13 years agoSmall doc grammar fix. fixes #74.
John Goerzen [Wed, 11 Jun 2008 20:23:12 +0000 (15:23 -0500)]
Small doc grammar fix.  fixes #74.

13 years agoAdd support for ssl client certificates
Mark Hymers [Fri, 23 May 2008 19:58:18 +0000 (14:58 -0500)]
Add support for ssl client certificates

  This patch adds sslclientcert and sslclientkey configuration
  options which are passed through to imaplib in order to allow
  the use of client certificates for authentication.

Tue Nov 13 14:44:17 CST 2007  Mark Hymers <>

13 years agoRevert "Initial stab at showing list of folders that aren't being synced"
John Goerzen [Tue, 20 May 2008 06:38:42 +0000 (01:38 -0500)]
Revert "Initial stab at showing list of folders that aren't being synced"

This reverts commit fa766b61bcf5dcc1f241c96521b56304a0e3ba11.

Not going to follow this path right now

13 years agoRevert "Checkpointing work on mailbox deletion"
John Goerzen [Tue, 20 May 2008 06:38:32 +0000 (01:38 -0500)]
Revert "Checkpointing work on mailbox deletion"

This reverts commit f58ebe390d281e6fe526e70451e2377b77f68183.

Not going to follow this path right now

13 years agoCheckpointing work on mailbox deletion
John Goerzen [Tue, 20 May 2008 06:38:15 +0000 (01:38 -0500)]
Checkpointing work on mailbox deletion

13 years agoInitial stab at showing list of folders that aren't being synced
John Goerzen [Tue, 20 May 2008 06:13:36 +0000 (01:13 -0500)]
Initial stab at showing list of folders that aren't being synced

This isn't working right yet because two accounts could sync into one

13 years agoPoof, this is 6.0.0. debian/6.0.0
John Goerzen [Tue, 20 May 2008 05:01:51 +0000 (00:01 -0500)]
Poof, this is 6.0.0.

13 years agoPrepping 5.99.15; fixes: #63 debian/5.99.15
John Goerzen [Mon, 12 May 2008 14:03:08 +0000 (09:03 -0500)]
Prepping 5.99.15; fixes: #63

13 years agoFinally fix the stupid LocalStatus folder bug, I really hope!
John Goerzen [Sun, 11 May 2008 02:08:05 +0000 (21:08 -0500)]
Finally fix the stupid LocalStatus folder bug, I really hope!

Noted thie code:

    statusfolder =

in  Should have been using the sep of the LocalStatus all

refs deb#479798, #68

13 years agoPrepping 5.99.14
John Goerzen [Sat, 10 May 2008 01:44:19 +0000 (20:44 -0500)]
Prepping 5.99.14

13 years agoRevert some previous attempts at localstatus creation
John Goerzen [Tue, 6 May 2008 23:23:48 +0000 (18:23 -0500)]
Revert some previous attempts at localstatus creation

refs deb#479798

Reverts cf080844ac92df72db4a85d434b73f647ec51b95
and 031e018ead749faa8250282ef5d46cc68f326869

13 years agoBump to 5.99.13
John Goerzen [Tue, 6 May 2008 13:51:58 +0000 (08:51 -0500)]
Bump to 5.99.13

13 years agoRevert "Apply darwin.patch from Vincent Beffara"
John Goerzen [Tue, 6 May 2008 13:11:54 +0000 (08:11 -0500)]
Revert "Apply darwin.patch from Vincent Beffara"

This reverts commit 9f5c8d708bfa9c16092255a59e13fe8171588c7a.

Several people were complaining about problems.  See

Closes: #479677.

refs #20.

13 years agoVersion 5.99.12 debian/5.99.12
John Goerzen [Mon, 5 May 2008 05:48:55 +0000 (00:48 -0500)]
Version 5.99.12

13 years agoFinally fix problem with making new folders
John Goerzen [Mon, 5 May 2008 05:06:25 +0000 (00:06 -0500)]
Finally fix problem with making new folders
fixes deb#478990.  fixes #63.

Patch from Martin F. Krafft.

13 years agoApply darwin.patch from Vincent Beffara
John Goerzen [Thu, 1 May 2008 20:20:56 +0000 (15:20 -0500)]
Apply darwin.patch from Vincent Beffara

fixes #20

 04/27/2008 09:34 AM - Vincent Beffara

    * File darwin.patch added

OK, I finally installed an IMAPS server on my iMac, so I could test a
little further. For some reason, fixing the read() method in did not seem to work (it hung on connecting to the
server) - however, modifying the file similarly to the
non-SSL case fixed the crash.

I also reduced the chunk size to 100k instead of 1M, as 1M seemed to
still trigger the memory error in some cases. Ah, and I added a
platform test, so that the patch does essentially nothing on
non-Darwin machines ...

So, still no guarantee, but the attached patch works for me. Any
comments ?

(If noone here screams in horror at my code, I will include the patch
into the Fink package and see what happens there.)

13 years agoRev versions debian/5.99.11
John Goerzen [Thu, 17 Apr 2008 14:53:20 +0000 (09:53 -0500)]
Rev versions

13 years agoFixed a braino introduced in last patch
John Goerzen [Thu, 17 Apr 2008 05:16:19 +0000 (00:16 -0500)]
Fixed a braino introduced in last patch

Fixes #63

13 years ago5.99.10 prep debian/5.99.10
John Goerzen [Thu, 17 Apr 2008 05:11:15 +0000 (00:11 -0500)]
5.99.10 prep

13 years agoMake parent dirs of localstatus folders.
John Goerzen [Thu, 17 Apr 2008 05:09:32 +0000 (00:09 -0500)]
Make parent dirs of localstatus folders.

fixes #63

13 years agoUnify repository code with folder code
John Goerzen [Thu, 17 Apr 2008 05:09:11 +0000 (00:09 -0500)]
Unify repository code with folder code

refs #63

13 years agoVersion to 5.99.9 debian/5.99.9
John Goerzen [Thu, 27 Mar 2008 05:36:32 +0000 (00:36 -0500)]
Version to 5.99.9

13 years agoUpdate changelog for 5.99.9
John Goerzen [Thu, 27 Mar 2008 05:35:51 +0000 (00:35 -0500)]
Update changelog for 5.99.9

13 years agoAutomatically create top-level localfolder for Maildirs
John Goerzen [Thu, 27 Mar 2008 21:19:35 +0000 (16:19 -0500)]
Automatically create top-level localfolder for Maildirs
this is the folder Maildirs will put messages in.

Closes: #286967

13 years agotypo in previous
Florian Friesdorf [Thu, 20 Mar 2008 12:46:42 +0000 (13:46 +0100)]
typo in previous

13 years agoIgnore empty LocalStatus files
Florian Friesdorf [Thu, 20 Mar 2008 12:15:37 +0000 (13:15 +0100)]
Ignore empty LocalStatus files

I created new IMAP folders on my server. In some moment I found offlineimap
crashed. The reason were empty LocalStatus files. From looking at the code I
have no explanation how those files came into existence.

13 years agoAdd *~ to .gitignore
John Goerzen [Wed, 12 Mar 2008 05:29:31 +0000 (00:29 -0500)]
Add *~ to .gitignore

13 years agoUpdated with Kerberos info
John Goerzen [Mon, 10 Mar 2008 05:16:26 +0000 (00:16 -0500)]
Updated with Kerberos info

13 years agoAlso make bin/offlineimap +x
John Goerzen [Mon, 10 Mar 2008 05:05:16 +0000 (00:05 -0500)]
Also make bin/offlineimap +x

13 years agochmod +x
Florian Friesdorf [Sun, 9 Mar 2008 11:56:43 +0000 (12:56 +0100)]
chmod +x

13 years agoAdded suggests on python-kerberos debian/5.99.8
John Goerzen [Mon, 10 Mar 2008 01:36:02 +0000 (20:36 -0500)]
Added suggests on python-kerberos

13 years agoUpdate changelog
John Goerzen [Mon, 10 Mar 2008 01:35:13 +0000 (20:35 -0500)]
Update changelog

13 years agoBug#359213: Kerberos
Eric Dorland [Sun, 9 Mar 2008 05:46:51 +0000 (00:46 -0500)]
Bug#359213: Kerberos

* John Goerzen ( wrote:
> tages 359213 help
> thanks
> Hi folks,
> Unfortunately, I lack both the expertise to add Kerberos
> authentication and a way to test this.  A patch would be very welcome
> :-)

Well it was a bit unclear but there's a patch for offlineimap attached
to Guido's message:;filename=support-GSSAPI-via-pykerberos.diff;att=1;bug=359213

I've tried it out and it works great! Except that if the Kerberos
layer throws an exception it wouldn't fail over to plain
authentication properly. Attached is a slightly reworked patch that I
tested it in the following situations:

1. python-kerberos uninstalled, with kerberos credentials.
   Prompted for password authentication as expected.

2. python-kerberos installed, with kerberos credentials.
   Keberos authentication was successful and my mail was fetched
   without password prompting. Yeehaw!

3. python-kerberos installed, with no kerberos credentials.
   Prompted for    password authentication     as expected.

I think those are all the interesting situations. So I think this is
ready to go in, with a Suggest on python-kerberos (>=

Eric Dorland <>
ICQ: #61138586, Jabber:

13 years agoDon't crash if LocalStatus file doesn't exist yet
John Goerzen [Mon, 10 Mar 2008 01:27:37 +0000 (20:27 -0500)]
Don't crash if LocalStatus file doesn't exist yet

Closes: #470174

13 years agoAttempt to fix a crashing bug in Gmail driver
John Goerzen [Sat, 8 Mar 2008 13:47:53 +0000 (07:47 -0600)]
Attempt to fix a crashing bug in Gmail driver

refs deb#469598

Bug report received in Debian.  User is having occasional trouble with Gmail
driver crashing, indicates problem may have started after switching to Gmail.

Gmail driver merged to tree in 81b86fb74 on 2008-01-03 and recently released
in beta tarballs.

BT shows:

  File "/var/lib/python-support/python2.4/offlineimap/folder/", line 102, in processmessagesflags
    attributehash = imaputil.flags2hash(imaputil.imapsplit(result)[1])
  File "/var/lib/python-support/python2.4/offlineimap/", line 88, in imapsplit
    for i in range(len(imapstring)):
TypeError: len() of unsized object

imap debug log shows:

imap:   29:58.16 > BEAL75 UID STORE 4887 +FLAGS (\Deleted)
imap:   29:58.47 < BEAL75 OK Success
imap:   29:58.47        matched r'(?P<tag>BEAL\d+) (?P<type>[A-Z]+) (?P<data>.*)' => ('BEAL75', 'OK', 'Success')
imap: imapsplit() called with input: None
imap: imapsplit() got a non-string input; working around.

looking at code for processmessagesflags, comments from Ricardo
indicate it was copied from the same function in folder/

However, folder/ has checks for this, added 2002-07-12 in
5342dacc & 817a10ce.  Suspect that Gmail author believed those checks
superfluous for Gmail.

Copied checks from folder/ to folder/

13 years ago* Remove empty /usr/sbin directory from package.
martin f. krafft [Wed, 5 Mar 2008 16:11:47 +0000 (17:11 +0100)]
* Remove empty /usr/sbin directory from package.

13 years ago* Remove second docbook-utils build dependency.
martin f. krafft [Wed, 5 Mar 2008 16:11:21 +0000 (17:11 +0100)]
* Remove second docbook-utils build dependency.

13 years ago* Fix clean target in debian/rules to allow for proper failure handling.
martin f. krafft [Wed, 5 Mar 2008 16:10:54 +0000 (17:10 +0100)]
* Fix clean target in debian/rules to allow for proper failure handling.