Stewart Smith | 1 Apr 2008 11:00
Gravatar

Re: LocalStatus as SQLlite

On Mon, 2008-03-31 at 10:16 -0500, John Goerzen wrote:
> First off, thank you for your continued work and persistence on this.
Not a problem - just maintaining what i find useful. mmmm... free
software.

> Referring back to the original thread [1], it looks like there may be a 
> couple of regressions:
> 
> 1) That we cannot use threading to simultaneously download multiple messages 
> in a single folder;

Yep. One possible way around this would be to add locking to LocalStatus
so that only one thread can use the object at once (but every other bit
of code can run in parallel).

> 2) That changes are not committed immediately after each change (but only at 
> the end of processing a folder)

Or every 100 flag changes.

This is intentional. Commit == fsync() - so it's a relatively expensive
operation. When there's been a lot of changes (e.g. marking lots of
mails as read... common for me on heavy traffic mailing lists), it's the
difference between being able to sync about 100/s and a lot more /sec...
and also reduces file system journal traffic and leaves more disk ops
(sync) for other apps you're probably running at the same time.

If you crash during this part of the sync, it'll just have to re-sync up
to 100 messages flags.. so I don't think it's much of an issue.

(Continue reading)

John Goerzen | 2 Apr 2008 23:17
Favicon

Re: LocalStatus as SQLlite

On Tue April 1 2008 4:00:10 am Stewart Smith wrote:
> On Mon, 2008-03-31 at 10:16 -0500, John Goerzen wrote:
> > First off, thank you for your continued work and persistence on this.
>
> Not a problem - just maintaining what i find useful. mmmm... free
> software.
>
> > Referring back to the original thread [1], it looks like there may be a
> > couple of regressions:
> >
> > 1) That we cannot use threading to simultaneously download multiple
> > messages in a single folder;
>
> Yep. One possible way around this would be to add locking to LocalStatus
> so that only one thread can use the object at once (but every other bit
> of code can run in parallel).

That would be ideal.

> This is intentional. Commit == fsync() - so it's a relatively expensive
> operation. When there's been a lot of changes (e.g. marking lots of
> mails as read... common for me on heavy traffic mailing lists), it's the
> difference between being able to sync about 100/s and a lot more /sec...
> and also reduces file system journal traffic and leaves more disk ops
> (sync) for other apps you're probably running at the same time.
>
> If you crash during this part of the sync, it'll just have to re-sync up
> to 100 messages flags.. so I don't think it's much of an issue.

I could see it causing message duplication as well.  OfflineIMAP is designed 
(Continue reading)

John Goerzen | 3 Apr 2008 03:24
Favicon

ANN: Revamped OfflineIMAP website

Hi folks,

Recently (a week or so ago), the OfflineIMAP website migrated from Trac to 
Redmine.  It is still hosted at http://software.complete.org/offlineimap

There are many improvements... some of them include:

* Much nicer issue tracker

* Nicer download tool

* Integration with Git repository

* Web forums

On the last item... I'm generally a person that hates web forums.  But there 
are some people that like 'em, so I figured I'd tick the little box that 
turns them on for OfflineIMAP and see how they go.  I hope to avoid 
fragmenting the community, but rather to draw more in.  Feedback 
appreciated.

-- John

John Goerzen | 3 Apr 2008 03:28
Favicon

ANN: OfflineIMAP 5.99.9

Available now from http://software.complete.org/offlineimap

Changes since 5.99.8:

  [ John Goerzen ]
  * Automatically create top-level localfolder for Maildirs this is the
    folder Maildirs will put messages in.  (Closes: #286967)

  [ Florian Friesdorf ]
  * 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.

  [ John Goerzen ]
  * Add *~ to .gitignore
  * Updated offlineimap.conf with Kerberos info
  * Also make bin/offlineimap +x

  [ Florian Friesdorf ]
  * chmod +x offlineimap.py

martin f krafft | 7 Apr 2008 11:24

recreating folder structure for imapd consumption

Hi,
I am trying to sync with a Courier server and drop files into
a local maildir, so that a dovecot instance can pick it up.

The upstream folder structure is simple:

$ ls .maildir -a
.   .Trash   .sent  courierimapacl       courierimapsubscribed  courierpop3dsizelist  new
..  .drafts  .spam  courierimapkeywords  courierimapuiddb       cur                   tmp

and with the exception of the courier* files, I would like to
recreate it 1:1 on my local machine.

Following the comments in the full example configuration file,
I thus tried:

  [Repository local]
  type = Maildir
  localfolders = ~/.maildir

  [Repository imap3.madduck.net]
  type = IMAP
  [...]
  #reference = INBOX
  nametrans = lambda foldername: re.sub('INBOX\.*', '.', foldername)

But this dies with

  imap: imapsplit() called with input: (\Marked \HasChildren) "." "INBOX"
  imap: imapsplit() returning: ['(\\Marked \\HasChildren)', '"."', '"INBOX"']
(Continue reading)

martin f krafft | 7 Apr 2008 11:40

[solved] Re: recreating folder structure for imapd consumption

also sprach martin f krafft <madduck <at> madduck.net> [2008.04.07.1124 +0200]:
>     File "/usr/lib/python2.5/os.py", line 171, in makedirs
>       mkdir(name, mode)
>   OSError: [Errno 17] File exists: '.'
I used mkdir ~/.maildir, where offlineimap could not find a Maildir.
Using maildirmake instead of mkdir fixed that problem.

Sorry for the noise. At least this is now documented. :)

-- 
martin | http://madduck.net/ | http://two.sentenc.es/

my other computer is your windows box.

spamtraps: madduck.bogus <at> madduck.net

-- Attached file included as plaintext by Ecartis --
-- File: digital_signature_gpg.asc
-- Desc: Digital signature (see http://martin-krafft.net/gpg/)

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD4DBQFH+ev1IgvIgzMMSnURAn3fAJY4MPXv87QtDVxHh2icpInldpLKAJ9hUoue
P/3MPoIaSR0eV/DufI2uUA==
=5rKo
-----END PGP SIGNATURE-----

John Goerzen | 7 Apr 2008 15:13
Favicon

Re: recreating folder structure for imapd consumption

On Mon April 7 2008 4:24:23 am martin f krafft wrote:
>   [Repository local]
>   type = Maildir
>   localfolders = ~/.maildir

Do you have sep = . ?

I'm using pretty much the identical setup myself.  Does your ~/.maildir have 
cur, new, and tmp?

If not, then perhaps OfflineIMAP is not recognizing it as a valid Maildir.

On the other hand, there have been some recent patches regarding directory 
creation so you might try it with 5.99.7 and see if that helps.

-- John

SK | 11 Apr 2008 10:00
Picon

execute script when new mail arrives

Is there a hook in offlineimap that will let me execute an external
script if new mails are fetched during a sync? I am trying to set the
title of the GNU screen that is running offlineimap to reflect the
number of new emails in my mailbox.

Thanks,
SK

simon-oi | 1 May 2008 18:43

quick = <natural number> behaviour

Hello,

I'm curious to know what the expected behaviour is when:

 quick = <integer greater than zero>

I've tried running in debug mode (-d imap -1), and I do not see anything
happening between the 2 minute auto refresh period, despite my creation
and deletion of messages on both ends.

My config:

[general]
accounts = Test
ui = Noninteractive.Basic

[Account Test]
autorefresh = 2
quick = 100
localrepository = Local
remoterepository = Remote

[Repository Local]
type = IMAP
remotehost = localhost
remoteuser = userA
remotepass = passA

[Repository Remote]
type = IMAP
(Continue reading)

Christian G. Warden | 1 May 2008 19:50
Gravatar

Re: quick = <natural number> behaviour

On Thu, May 01, 2008 at 12:43:53PM -0400, simon-oi <at> uc.org wrote:
> Hello,
> 
> I'm curious to know what the expected behaviour is when:
> 
>  quick = <integer greater than zero>
> 
> I've tried running in debug mode (-d imap -1), and I do not see anything
> happening between the 2 minute auto refresh period, despite my creation
> and deletion of messages on both ends.

The sync will still run every two minutes, but when quick is set to 100,
only every 100th (or 101st?) sync will do a full sync in which messages
are inspected for changes to flags, which tends to be slow on large
mailboxes.  During a quick sync, if there are no new messages or
deletions in the mailbox, you'll see messages like:
Skipping sent-mail (not changed)

Christian


Gmane