/head: changeset 123

- Made folder/Maildir.py/deletemessage() more tolerant if a message
  asked to be deleted already has been.

- In Base.py/copymessageto(), no longer bother calling getmessage()
  unless a folder's storemessages() returns true. This will also help
  with syncing to LocalStatus if the user deleted messages in the
  Maildir since the cachemessagelist() was called.
This commit is contained in:
jgoerzen 2002-07-16 03:26:58 +01:00
parent 09cf911d53
commit d3f86beb9f
9 changed files with 366 additions and 234 deletions

View File

@ -1,3 +1,63 @@
2002-07-15 11:22 jgoerzen
* debian/changelog, offlineimap/folder/Base.py,
offlineimap/folder/LocalStatus.py, offlineimap/folder/Maildir.py:
* Made folder/Maildir.py/deletemessage() more tolerant if a message
asked to be deleted already has been.
* In Base.py/copymessageto(), no longer bother calling
getmessage()
unless a folder's storemessages() returns true. This will also
help
with syncing to LocalStatus if the user deleted messages in the
Maildir since the cachemessagelist() was called.
2002-07-15 10:46 jgoerzen
* debian/changelog, offlineimap/imaputil.py,
offlineimap/folder/IMAP.py: * Optimized folder/IMAP.py
addmessagesflags() with new listjoin() in
imaputil. Now, send the server 1:5,7 instead of 1,2,3,4,5,7.
2002-07-15 08:50 jgoerzen
* offlineimap.1, offlineimap.py, debian/changelog: Added -o (run
only once) option with patch sent in by Martijn Pieters.
2002-07-15 08:40 jgoerzen
* debian/changelog, offlineimap/version.py: Fixed changelog and
version.py
2002-07-15 08:40 jgoerzen
* offlineimap.1, debian/changelog: Noted options for -u in manpage
2002-07-15 08:38 jgoerzen
* offlineimap/ui/__init__.py: Cleaned up imports
2002-07-12 09:41 jgoerzen
* TODO, debian/changelog: Updated TODO list.
2002-07-12 09:27 jgoerzen
* COPYING, debian/copyright, offlineimap/ui/UIBase.py: Detabified
the source
2002-07-11 22:58 jgoerzen
* debian/control: Added suggests for python2.2-tk
2002-07-11 22:26 jgoerzen
* manual.html, manual.ps, debian/changelog: Final doc update for
3.0.0 release
2002-07-11 22:20 jgoerzen
* ChangeLog: Updated for 3.0.0
2002-07-11 22:20 jgoerzen
* debian/changelog, offlineimap/folder/IMAP.py,

View File

@ -5,6 +5,12 @@ offlineimap (3.0.1) unstable; urgency=low
* Added -o (run only once) option with patch sent in by Martijn Pieters.
* Optimized folder/IMAP.py addmessagesflags() with new listjoin() in
imaputil. Now, send the server 1:5,7 instead of 1,2,3,4,5,7.
* Made folder/Maildir.py/deletemessage() more tolerant if a message
asked to be deleted already has been.
* In Base.py/copymessageto(), no longer bother calling getmessage()
unless a folder's storemessages() returns true. This will also help
with syncing to LocalStatus if the user deleted messages in the
Maildir since the cachemessagelist() was called.
-- John Goerzen <jgoerzen@complete.org> Fri, 12 Jul 2002 07:28:24 -0500

View File

@ -25,7 +25,7 @@
<hr>
<!-- Creator : groff version 1.17.2 -->
<!-- CreationDate: Thu Jul 11 22:25:55 2002 -->
<!-- CreationDate: Mon Jul 15 11:26:37 2002 -->
<a name="NAME"></a>
<h2>NAME</h2>
<table width="100%" border=0 rules="none" frame="void"
@ -42,7 +42,8 @@ OfflineIMAP - Powerful IMAP/Maildir synchronization and reader support</td></tab
<td width="10%"></td><td width="90%">
<b>offlineimap</b> [ <b>-1</b> ] [ <b>-a</b>
<i>accountlist</i> ] [ <b>-c</b> <i>configfile</i> ]<br>
[ <b>-d</b> ] [ <b>-u</b> <i>interface</i> ]</td></table>
[ <b>-d</b> ] [ <b>-o</b> ] [ <b>-u</b> <i>interface</i>
]</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
@ -367,6 +368,19 @@ protocol in plain text, including passwords, so take care to
remove that from the debugging output before sending it to
anyone else.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>-o</b></td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="21%"></td><td width="79%">
Run only once, ignoring any autorefresh setting in the
config file.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
@ -394,6 +408,14 @@ overrides the default specified in the configuration file.
The UI specified with <b>-u</b> will be forced to be used,
even if its <b>isuable()</b> method states that it cannot
be. Use this option with care.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="21%"></td><td width="79%">
The pre-defined options are <b>Tk.TKUI</b> (a graphical
interface) and <b>TTY.TTYUI</b> (a text-mode
interface).</td></table>
<a name="EXAMPLES"></a>
<h2>EXAMPLES</h2>

Binary file not shown.

View File

@ -1,6 +1,6 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.17.2
%%CreationDate: Thu Jul 11 22:25:53 2002
%%CreationDate: Mon Jul 15 11:26:30 2002
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
@ -212,11 +212,12 @@ BP
(SYNOPSIS)72 112.8 Q/F2 10/Times-Bold@0 SF(of\215ineimap)108 124.8 Q F0
([)2.5 E F2<ad31>2.5 E F0 2.5(][)2.5 G F2<ad61>A/F3 10/Times-Italic@0 SF
(accountlist)2.5 E F0 2.5(][)2.5 G F2<ad63>A F3(con\214g\214le)2.5 E F0
(])2.5 E([)108 136.8 Q F2<ad64>2.5 E F0 2.5(][)2.5 G F2<ad75>A F3
(interface)2.5 E F0(])2.5 E F2(of\215ineimap \255h)108 160.8 Q F0(|)2.5
E F2(\255\255help)2.5 E F1(DESCRIPTION)72 177.6 Q F2(Of\215ineIMAP)108
189.6 Q F0 .019(is a tool to simplify your e-mail reading.)2.519 F -.4
(Wi)5.019 G(th).4 E F2(Of\215ineIMAP)2.519 E(,)-.92 E F0 .018
(])2.5 E([)108 136.8 Q F2<ad64>2.5 E F0 2.5(][)2.5 G F2<ad6f>A F0 2.5
(][)2.5 G F2<ad75>A F3(interface)2.5 E F0(])2.5 E F2
(of\215ineimap \255h)108 160.8 Q F0(|)2.5 E F2(\255\255help)2.5 E F1
(DESCRIPTION)72 177.6 Q F2(Of\215ineIMAP)108 189.6 Q F0 .019
(is a tool to simplify your e-mail reading.)2.519 F -.4(Wi)5.019 G(th).4
E F2(Of\215ineIMAP)2.519 E(,)-.92 E F0 .018
(you can read the same mailbox)2.519 F 1.115(from multiple computers.)
108 201.6 R -1.1(Yo)6.115 G 3.615(ug)1.1 G 1.115(et a current cop)-3.615
F 3.616(yo)-.1 G 3.616(fy)-3.616 G 1.116(our messages on each computer)
@ -314,7 +315,7 @@ G(ilable.).25 E 32.5<8359>108 660 S .085(ou must ha)-33.6 F .385 -.15
(installed. If)144 708 R .359(you intend to use the SSL interf)2.859 F
.359(ace, your Python must ha)-.1 F .66 -.15(ve b)-.2 H .36(een b).15 F
.36(uilt with SSL sup-)-.2 F(port.)144 720 Q(John Goerzen)72 768 Q
(July 11, 2002)151.655 E(1)201.915 E EP
(July 12, 2002)151.655 E(1)201.915 E EP
%%Page: 2 2
%%BeginPageSetup
BP
@ -402,9 +403,11 @@ F 2.582(Is)5.082 G .082(uggest that you use this with)-2.582 F F1<ad31>
(col in plain te)144 660 R 1.7(xt, including passw)-.15 F 1.7
(ords, so tak)-.1 F 4.2(ec)-.1 G 1.7(are to remo)-4.2 F 2 -.15(ve t)-.15
H 1.7(hat from the deb).15 F 1.7(ugging output)-.2 F
(before sending it to an)144 672 Q(yone else.)-.15 E F1
(\255h, \255\255help)108 688.8 Q F0(Sho)144 700.8 Q 2.5(ws)-.25 G
(ummary of options.)-2.5 E(John Goerzen)72 768 Q(July 11, 2002)151.655 E
(before sending it to an)144 672 Q(yone else.)-.15 E F1<ad6f>108 688.8 Q
F0(Run only once, ignoring an)25.3 E 2.5(ya)-.15 G
(utorefresh setting in the con\214g \214le.)-2.5 E F1
(\255h, \255\255help)108 705.6 Q F0(Sho)144 717.6 Q 2.5(ws)-.25 G
(ummary of options.)-2.5 E(John Goerzen)72 768 Q(July 12, 2002)151.655 E
(2)201.915 E EP
%%Page: 3 3
%%BeginPageSetup
@ -420,285 +423,289 @@ SF<ad75>108 84 Q/F2 10/Times-Italic@0 SF(interface)2.5 E F0 1.133
5.28 F F1(-u)2.78 E F0 .281(will be forced to be used, e)2.78 F -.15(ve)
-.25 G 2.781(ni).15 G 2.781(fi)-2.781 G(ts)-2.781 E F1(isuable\(\))2.781
E F0(method)2.781 E(states that it cannot be.)144 120 Q
(Use this option with care.)5 E/F3 10.95/Times-Bold@0 SF(EXAMPLES)72
136.8 Q F0(Here is an e)108 148.8 Q
(Use this option with care.)5 E .158(The pre-de\214ned options are)144
136.8 R F1(Tk.TKUI)2.658 E F0 .158(\(a graphical interf)2.658 F .157
(ace\) and)-.1 F F1(TTY)2.657 E(.TTYUI)-.92 E F0 .157(\(a te)2.657 F
.157(xt-mode inter)-.15 F(-)-.2 E -.1(fa)144 148.8 S(ce\).).1 E/F3 10.95
/Times-Bold@0 SF(EXAMPLES)72 165.6 Q F0(Here is an e)108 177.6 Q
(xample con\214guration for a particularly comple)-.15 E 2.5(xs)-.15 G
(ituation; more e)-2.5 E(xamples will be added later)-.15 E(.)-.55 E F1
(MUL)87 165.6 Q(TIPLE A)-.92 E(CCOUNTS WITH MUTT)-.55 E F0 .514(This e)
108 177.6 R .514(xample sho)-.15 F .514(ws you ho)-.25 F 3.014(wt)-.25 G
3.014(os)-3.014 G .514(et up)-3.014 F F1(Of\215ineIMAP)3.014 E F0 .513
(MUL)87 194.4 Q(TIPLE A)-.92 E(CCOUNTS WITH MUTT)-.55 E F0 .513(This e)
108 206.4 R .513(xample sho)-.15 F .513(ws you ho)-.25 F 3.014(wt)-.25 G
3.014(os)-3.014 G .514(et up)-3.014 F F1(Of\215ineIMAP)3.014 E F0 .514
(to synchronize multiple accounts with the mutt mail)3.014 F(reader)108
189.6 Q(.)-.55 E(Start by creating a directory to hold your folders:)108
206.4 Q F1(mkdir ~/Mail)108 218.4 Q F0(In your)108 235.2 Q F2(~/.of)2.5
E(\215ineimapr)-.18 E(c,)-.37 E F0(specify this:)2.5 E F1(accounts = P)
108 247.2 Q(ersonal, W)-.2 E(ork)-.75 E F0(Mak)108 264 Q 2.82(es)-.1 G
.32(ure that you ha)-2.82 F .62 -.15(ve b)-.2 H .32(oth a).15 F F1([P)
2.821 E(ersonal])-.2 E F0 .321(and a)2.821 F F1([W)2.821 E(ork])-.75 E
F0 .321(section, with dif)2.821 F .321(ferent localfolder pathnames and)
-.25 F(enable)108 276 Q F1([mbnames].)2.5 E F0
(In each account section, do something lik)108 292.8 Q 2.5(et)-.1 G
(his:)-2.5 E F1(localf)108 304.8 Q(olders = ~/Mail/P)-.25 E(ersonal)-.2
E F0(Add these lines to your)108 321.6 Q F2(~/.muttr)2.5 E(c:)-.37 E F1
(sour)108 333.6 Q(ce ~/path-to-mbnames-muttr)-.18 E(c-mailboxes)-.18 E
-.25(fo)108 345.6 S(lder).25 E(-hook P)-.37 E(ersonal set fr)-.2 E
(om="y)-.18 E(our)-.25 E(email@personal.com")-.18 E -.25(fo)108 357.6 S
218.4 Q(.)-.55 E(Start by creating a directory to hold your folders:)108
235.2 Q F1(mkdir ~/Mail)108 247.2 Q F0(In your)108 264 Q F2(~/.of)2.5 E
(\215ineimapr)-.18 E(c,)-.37 E F0(specify this:)2.5 E F1(accounts = P)
108 276 Q(ersonal, W)-.2 E(ork)-.75 E F0(Mak)108 292.8 Q 2.821(es)-.1 G
.321(ure that you ha)-2.821 F .621 -.15(ve b)-.2 H .321(oth a).15 F F1
([P)2.821 E(ersonal])-.2 E F0 .321(and a)2.821 F F1([W)2.821 E(ork])-.75
E F0 .32(section, with dif)2.82 F .32(ferent localfolder pathnames and)
-.25 F(enable)108 304.8 Q F1([mbnames].)2.5 E F0
(In each account section, do something lik)108 321.6 Q 2.5(et)-.1 G
(his:)-2.5 E F1(localf)108 333.6 Q(olders = ~/Mail/P)-.25 E(ersonal)-.2
E F0(Add these lines to your)108 350.4 Q F2(~/.muttr)2.5 E(c:)-.37 E F1
(sour)108 362.4 Q(ce ~/path-to-mbnames-muttr)-.18 E(c-mailboxes)-.18 E
-.25(fo)108 374.4 S(lder).25 E(-hook P)-.37 E(ersonal set fr)-.2 E
(om="y)-.18 E(our)-.25 E(email@personal.com")-.18 E -.25(fo)108 386.4 S
(lder).25 E(-hook W)-.37 E(ork set fr)-.75 E(om="y)-.18 E(our)-.25 E
(email@w)-.18 E(ork.com")-.1 E(set mbox_type=Maildir)108 369.6 Q(set f)
108 381.6 Q(older=$HOME/Mail)-.25 E(set spool\214le=+P)108 393.6 Q
(ersonal/INBO)-.2 E(X)-.4 E F0(That')108 410.4 Q 2.5(si)-.55 G(t!)-2.5 E
F3(ERR)72 427.2 Q(ORS)-.329 E F0(If you get one of some frequently-enco\
untered or confusing errors, please check this section.)108 439.2 Q F1
(UID v)87 456 Q(alidity pr)-.1 E(oblem f)-.18 E(or f)-.25 E(older)-.25 E
F0 1.638(IMAP serv)108 468 R 1.637
(email@w)-.18 E(ork.com")-.1 E(set mbox_type=Maildir)108 398.4 Q(set f)
108 410.4 Q(older=$HOME/Mail)-.25 E(set spool\214le=+P)108 422.4 Q
(ersonal/INBO)-.2 E(X)-.4 E F0(That')108 439.2 Q 2.5(si)-.55 G(t!)-2.5 E
F3(ERR)72 456 Q(ORS)-.329 E F0(If you get one of some frequently-encoun\
tered or confusing errors, please check this section.)108 468 Q F1
(UID v)87 484.8 Q(alidity pr)-.1 E(oblem f)-.18 E(or f)-.25 E(older)-.25
E F0 1.637(IMAP serv)108 496.8 R 1.637
(ers use a unique ID \(UID\) to refer to a speci\214c message.)-.15 F
1.637(This number is guaranteed to be)6.637 F 1.109
(unique to a particular message FOREVER.)108 480 R 1.109
(No other message in the same folder will e)6.109 F -.15(ve)-.25 G 3.61
(rg).15 G 1.11(et the same)-3.61 F 2.874(UID. UIDs)108 492 R .373
(are an inte)2.874 F .373(gral part of Of)-.15 F(\215ineIMAP')-.25 E
1.638(This number is guaranteed to be)6.637 F 1.11
(unique to a particular message FOREVER.)108 508.8 R 1.109
(No other message in the same folder will e)6.11 F -.15(ve)-.25 G 3.609
(rg).15 G 1.109(et the same)-3.609 F 2.873(UID. UIDs)108 520.8 R .373
(are an inte)2.873 F .373(gral part of Of)-.15 F(\215ineIMAP')-.25 E
2.873(ss)-.55 G .373(ynchronization scheme; the)-2.873 F 2.873(ya)-.15 G
.373(re used to match up mes-)-2.873 F
(sages on your computer to messages on the serv)108 504 Q(er)-.15 E(.)
-.55 E .107(Sometimes, the UIDs on the serv)108 520.8 R .108
(sages on your computer to messages on the serv)108 532.8 Q(er)-.15 E(.)
-.55 E .108(Sometimes, the UIDs on the serv)108 549.6 R .108
(er might get reset.)-.15 F .108
(Usually this will happen if you delete and then recreate)5.108 F 3.743
(af)108 532.8 S(older)-3.743 E 6.243(.W)-.55 G 1.243
(hen you create a folder)-6.243 F 3.742(,t)-.4 G 1.242(he serv)-3.742 F
1.242(er will often start the UID back from 1.)-.15 F(But)6.242 E F1
(Of\215ineIMAP)3.742 E F0 .302(might still ha)108 544.8 R .602 -.15
(ve t)-.2 H .302(he UIDs from the pre).15 F .302
(vious folder by the same name stored.)-.25 F F1(Of\215ineIMAP)5.303 E
F0 .303(will detect this)2.803 F(condition and skip the folder)108 556.8
(Usually this will happen if you delete and then recreate)5.108 F 3.742
(af)108 561.6 S(older)-3.742 E 6.242(.W)-.55 G 1.242
(hen you create a folder)-6.242 F 3.742(,t)-.4 G 1.242(he serv)-3.742 F
1.242(er will often start the UID back from 1.)-.15 F(But)6.243 E F1
(Of\215ineIMAP)3.743 E F0 .303(might still ha)108 573.6 R .603 -.15
(ve t)-.2 H .303(he UIDs from the pre).15 F .302
(vious folder by the same name stored.)-.25 F F1(Of\215ineIMAP)5.302 E
F0 .302(will detect this)2.802 F(condition and skip the folder)108 585.6
Q 5(.T)-.55 G(his is GOOD, because it pre)-5 E -.15(ve)-.25 G
(nts data loss.).15 E -1.1(Yo)108 573.6 S 2.827(uc)1.1 G .327
(an \214x it by remo)-2.827 F .327
(nts data loss.).15 E -1.1(Yo)108 602.4 S 2.826(uc)1.1 G .326
(an \214x it by remo)-2.826 F .327
(ving your local folder and cache data.)-.15 F -.15(Fo)5.327 G 2.827(ri)
.15 G .327(nstance, if your folders are under)-2.827 F F2(~/F)2.826 E
(old-)-1.05 E(er)108 585.6 Q(s)-.1 E F0
.15 G .327(nstance, if your folders are under)-2.827 F F2(~/F)2.827 E
(old-)-1.05 E(er)108 614.4 Q(s)-.1 E F0
(and the folder with the problem is INBO)2.5 E(X, you')-.4 E 2.5(dt)-.5
G(ype this:)-2.5 E F1(rm -r ~/F)108 602.4 Q(olders/INBO)-.25 E(X)-.4 E
(rm ~/.of\215ineimap/AccountName/INBO)108 614.4 Q(X)-.4 E F0
(\(replacing AccountName with the account name as speci\214ed in)108
631.2 Q F2(~/.of)2.5 E(\215ineimapr)-.18 E(c\))-.37 E F0(Ne)108 648 Q
.801(xt time you run)-.15 F F1(Of\215ineIMAP)3.301 E(,)-.92 E F0 .802
G(ype this:)-2.5 E F1(rm -r ~/F)108 631.2 Q(olders/INBO)-.25 E(X)-.4 E
(rm ~/.of\215ineimap/AccountName/INBO)108 643.2 Q(X)-.4 E F0
(\(replacing AccountName with the account name as speci\214ed in)108 660
Q F2(~/.of)2.5 E(\215ineimapr)-.18 E(c\))-.37 E F0(Ne)108 676.8 Q .802
(xt time you run)-.15 F F1(Of\215ineIMAP)3.302 E(,)-.92 E F0 .802
(it will re-do)3.302 F .802(wnload the folder with the ne)-.25 F 3.302
(wU)-.25 G 3.302(IDs. Note)-3.302 F .802(that the proce-)3.302 F
(dure speci\214ed abo)108 660 Q .3 -.15(ve w)-.15 H(ill lose an).15 E
2.5(yl)-.15 G(ocal changes made to the folder)-2.5 E(.)-.55 E .523
(Some IMAP serv)108 676.8 R .522(ers are brok)-.15 F .522
(wU)-.25 G 3.301(IDs. Note)-3.302 F .801(that the proce-)3.301 F
(dure speci\214ed abo)108 688.8 Q .3 -.15(ve w)-.15 H(ill lose an).15 E
2.5(yl)-.15 G(ocal changes made to the folder)-2.5 E(.)-.55 E .522
(Some IMAP serv)108 705.6 R .522(ers are brok)-.15 F .522
(en and do not support UIDs properly)-.1 F 5.522(.I)-.65 G 3.022(fy)
-5.522 G .522(ou continue to get this error for all)-3.022 F .066
(your folders e)108 688.8 R -.15(ve)-.25 G 2.566(na).15 G .066
-5.522 G .522(ou continue to get this error for all)-3.022 F .067
(your folders e)108 717.6 R -.15(ve)-.25 G 2.566(na).15 G .066
(fter performing the abo)-2.566 F .366 -.15(ve p)-.15 H .066
(rocedure, it is lik).15 F .066(ely that your IMAP serv)-.1 F .066(er f)
-.15 F .067(alls into this cat-)-.1 F -.15(eg)108 700.8 S(ory).15 E(.)
-.65 E F1(Of\215ineIMAP)5.984 E F0 .984(is incompatible with such serv)
3.484 F 3.484(ers. Using)-.15 F F1(Of\215ineIMAP)3.484 E F0 .984
(with them will not destro)3.484 F(y)-.1 E(an)108 712.8 Q 2.769(ym)-.15
G .269(ail, b)-2.769 F .269
(ut at the same time, it will not actually synchronize it either)-.2 F
5.27(.\()-.55 G(Of)-5.27 E .27(\215ineIMAP will detect this con-)-.25 F
(dition and abort prior to synchronization\))108 724.8 Q(John Goerzen)72
768 Q(July 11, 2002)151.655 E(3)201.915 E EP
-.15 F .066(alls into this cat-)-.1 F -.15(eg)108 729.6 S(ory).15 E(.)
-.65 E F1(Of\215ineIMAP)5.983 E F0 .984(is incompatible with such serv)
3.483 F 3.484(ers. Using)-.15 F F1(Of\215ineIMAP)3.484 E F0 .984
(with them will not destro)3.484 F(y)-.1 E(John Goerzen)72 768 Q
(July 12, 2002)151.655 E(3)201.915 E EP
%%Page: 4 4
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E/F1 10.95
/Times-Bold@0 SF -.438(OT)72 84 S(HER FREQ).438 E(UENTL)-.11 E 2.738(YA)
-1.007 G(SKED Q)-2.738 E(UESTIONS)-.11 E F0 .684(There are some other F)
108 96 R -.55(AQ)-.74 G 3.184(st).55 G .684
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E(an)108 84 Q 2.77
(ym)-.15 G .27(ail, b)-2.77 F .27
(ut at the same time, it will not actually synchronize it either)-.2 F
5.269(.\()-.55 G(Of)-5.269 E .269(\215ineIMAP will detect this con-)-.25
F(dition and abort prior to synchronization\))108 96 Q/F1 10.95
/Times-Bold@0 SF -.438(OT)72 124.8 S(HER FREQ).438 E(UENTL)-.11 E 2.738
(YA)-1.007 G(SKED Q)-2.738 E(UESTIONS)-.11 E F0 .683
(There are some other F)108 136.8 R -.55(AQ)-.74 G 3.184(st).55 G .684
(hat might not \214t into another section of this document, and the)
-3.184 F 3.183(ya)-.15 G .683(re enumer)-3.183 F(-)-.2 E(ated here.)108
108 Q/F2 10/Times-Bold@0 SF(What platf)108 124.8 Q
-3.184 F 3.184(ya)-.15 G .684(re enumer)-3.184 F(-)-.2 E(ated here.)108
148.8 Q/F2 10/Times-Bold@0 SF(What platf)108 165.6 Q
(orms does Of\215ineIMAP run on?)-.25 E F0(It should run on most platfo\
rms supported by Python, which are quite a fe)144 136.8 Q -.65(w.)-.25 G
F2 .688(I'm using Mutt. Other IMAP sync pr)108 153.6 R .689(ograms r)
rms supported by Python, which are quite a fe)144 177.6 Q -.65(w.)-.25 G
F2 .689(I'm using Mutt. Other IMAP sync pr)108 194.4 R .689(ograms r)
-.18 F(equir)-.18 E 3.189(em)-.18 G 3.189(et)-3.189 G 3.189(ou)-3.189 G
.689(se set maildir_trash=y)-3.189 F .689(es . Do I need to)-.1 F
(do that with Of\215ineIMAP?)108 165.6 Q F0(No.)144 177.6 Q F2
.689(se set maildir_trash=y)-3.189 F .688(es . Do I need to)-.1 F
(do that with Of\215ineIMAP?)108 206.4 Q F0(No.)144 218.4 Q F2
(Of\215ineIMAP)7.27 E F0 2.27
(is smart enough to \214gure out message deletion without this e)4.77 F
2.27(xtra crutch.)-.15 F -1.1(Yo)144 189.6 S(u')1.1 E
2.27(xtra crutch.)-.15 F -1.1(Yo)144 230.4 S(u')1.1 E
(ll get the best results if you don')-.1 E 2.5(tu)-.18 G
(se this setting, in f)-2.5 E(act.)-.1 E F2(Ho)108 206.4 Q 2.5(wd)-.1 G
(se this setting, in f)-2.5 E(act.)-.1 E F2(Ho)108 247.2 Q 2.5(wd)-.1 G
2.5(oIs)-2.5 G(pecify the names of my f)-2.5 E(olders?)-.25 E F0 -1.1
(Yo)144 218.4 S 3.55(ud)1.1 G 3.55(on)-3.55 G 1.05(ot need to.)-3.55 F
(Yo)144 259.2 S 3.55(ud)1.1 G 3.55(on)-3.55 G 1.05(ot need to.)-3.55 F
F2(Of\215ineIMAP)6.05 E F0 1.05
(is smart enough to automatically \214gure out what folders are)3.55 F
.678(present on the IMAP serv)144 230.4 R .678(er and synchronize them.)
-.15 F -1.1(Yo)5.679 G 3.179(uc)1.1 G .679(an use the)-3.179 F F2 -.25
(fo)3.179 G(lder\214lter).25 E F0(and)3.179 E F2 -.25(fo)3.179 G
.679(present on the IMAP serv)144 271.2 R .679(er and synchronize them.)
-.15 F -1.1(Yo)5.679 G 3.178(uc)1.1 G .678(an use the)-3.178 F F2 -.25
(fo)3.178 G(lder\214lter).25 E F0(and)3.178 E F2 -.25(fo)3.178 G
(ldertrans).25 E F0(con\214guration \214le options to request certain f\
olders and rename them as the)144 242.4 Q 2.5(yc)-.15 G
(ome in if you lik)-2.5 E(e.)-.1 E F2(Ho)108 259.2 Q 2.5(wc)-.1 G
(an I pr)-2.5 E -2.3 -.15(ev e)-.18 H(nt certain f).15 E(olders fr)-.25
E(om being synced?)-.18 E F0(Use the)144 271.2 Q F2 -.25(fo)2.5 G
olders and rename them as the)144 283.2 Q 2.5(yc)-.15 G
(ome in if you lik)-2.5 E(e.)-.1 E F2(Ho)108 300 Q 2.5(wc)-.1 G(an I pr)
-2.5 E -2.3 -.15(ev e)-.18 H(nt certain f).15 E(olders fr)-.25 E
(om being synced?)-.18 E F0(Use the)144 312 Q F2 -.25(fo)2.5 G
(lder\214lter).25 E F0(option in the con\214guration \214le.)2.5 E F2
(Ho)108 288 Q 2.5(wc)-.1 G(an I add or delete a f)-2.5 E(older?)-.25 E
(Of\215ineIMAP)144 300 Q F0 .504(does not currently pro)3.004 F .504
(vide this feature, b)-.15 F .504(ut if you create a ne)-.2 F 3.003(wf)
-.25 G .503(older on the IMAP)-3.003 F(serv)144 312 Q(er)-.15 E 2.5(,i)
-.4 G 2.5(tw)-2.5 G(ill be created locally automatically)-2.5 E(.)-.65 E
F2(Ar)108 328.8 Q 2.5(et)-.18 G(her)-2.5 E 2.5(ea)-.18 G(ny other war)
-2.5 E(nings that I should be awar)-.15 E 2.5(eo)-.18 G(f?)-2.5 E F0 -1
(Ye)144 340.8 S(s; see the NO)1 E(TES section belo)-.4 E -.65(w.)-.25 G
F2(What is the mailbox name r)108 357.6 Q(ecorder \(mbnames\) f)-.18 E
(or?)-.25 E F0 1.019(The Mutt mail reader is not capable of automatical\
ly determining the names of your mailbox)144 369.6 R(es.)-.15 E(Of)144
381.6 Q .266(\215ineIMAP can help it \(or man)-.25 F 2.765(yo)-.15 G
.265(ther\) programs out be writing these names out in a format you)
-2.765 F(specify)144 393.6 Q 5(.S)-.65 G(ee the e)-5 E(xample of)-.15 E
(\215ineimap.conf \214le for details.)-.25 E F2(Can I synchr)108 410.4 Q
(onize multiple accounts with Of\215ineIMAP?)-.18 E F0 3.344(Sure. Just)
144 422.4 R .845(name them all in the accounts line in the general sect\
ion of the con\214g \214le, and add a)3.344 F(per)144 434.4 Q
(Ho)108 328.8 Q 2.5(wc)-.1 G(an I add or delete a f)-2.5 E(older?)-.25 E
(Of\215ineIMAP)144 340.8 Q F0 .503(does not currently pro)3.003 F .504
(vide this feature, b)-.15 F .504(ut if you create a ne)-.2 F 3.004(wf)
-.25 G .504(older on the IMAP)-3.004 F(serv)144 352.8 Q(er)-.15 E 2.5
(,i)-.4 G 2.5(tw)-2.5 G(ill be created locally automatically)-2.5 E(.)
-.65 E F2(Ar)108 369.6 Q 2.5(et)-.18 G(her)-2.5 E 2.5(ea)-.18 G
(ny other war)-2.5 E(nings that I should be awar)-.15 E 2.5(eo)-.18 G
(f?)-2.5 E F0 -1(Ye)144 381.6 S(s; see the NO)1 E(TES section belo)-.4 E
-.65(w.)-.25 G F2(What is the mailbox name r)108 398.4 Q
(ecorder \(mbnames\) f)-.18 E(or?)-.25 E F0 1.019(The Mutt mail reader \
is not capable of automatically determining the names of your mailbox)
144 410.4 R(es.)-.15 E(Of)144 422.4 Q .265
(\215ineIMAP can help it \(or man)-.25 F 2.765(yo)-.15 G .265
(ther\) programs out be writing these names out in a format you)-2.765 F
(specify)144 434.4 Q 5(.S)-.65 G(ee the e)-5 E(xample of)-.15 E
(\215ineimap.conf \214le for details.)-.25 E F2(Can I synchr)108 451.2 Q
(onize multiple accounts with Of\215ineIMAP?)-.18 E F0 3.345(Sure. Just)
144 463.2 R .845(name them all in the accounts line in the general sect\
ion of the con\214g \214le, and add a)3.345 F(per)144 475.2 Q
(-account section for each one.)-.2 E F2
(Does Of\215ineIMAP support POP?)108 451.2 Q F0 4.077(No. POP)144 463.2
R 1.576(is not rob)4.077 F 1.576(ust enough to do a completely reliable\
multi-machine synchronization lik)-.2 F(e)-.1 E(Of)144 475.2 Q
(Does Of\215ineIMAP support POP?)108 492 Q F0 4.076(No. POP)144 504 R
1.576(is not rob)4.076 F 1.576(ust enough to do a completely reliable m\
ulti-machine synchronization lik)-.2 F(e)-.1 E(Of)144 516 Q
(\215ineIMAP can do.)-.25 E(Of)5 E(\215ineIMAP will not support it.)-.25
E F2(Do y)108 492 Q(ou support mailbox f)-.25 E
(ormats other than Maildir?)-.25 E F0 .409(Not at present.)144 504 R
.409(There is no technical reason not to; just no demand yet.)5.409 F
.41(Maildir is a superior for)5.41 F(-)-.2 E(mat an)144 516 Q(yw)-.15 E
(ay)-.1 E(.)-.65 E F2([technical] Wh)108 532.8 Q 2.5(ya)-.15 G .36 -.18
E F2(Do y)108 532.8 Q(ou support mailbox f)-.25 E
(ormats other than Maildir?)-.25 E F0 .41(Not at present.)144 544.8 R
.41(There is no technical reason not to; just no demand yet.)5.41 F .409
(Maildir is a superior for)5.409 F(-)-.2 E(mat an)144 556.8 Q(yw)-.15 E
(ay)-.1 E(.)-.65 E F2([technical] Wh)108 573.6 Q 2.5(ya)-.15 G .36 -.18
(re y)-2.5 H(our Maildir message \214lenames so huge?)-.07 E
(Of\215ineIMAP)144 544.8 Q F0 .959(has tw)3.459 F 3.459(or)-.1 G(ele)
-3.459 E -.25(va)-.25 G .959(nt principles: 1\) ne).25 F -.15(ve)-.25 G
3.459(rm).15 G .958(odifying your messages in an)-3.459 F 3.458(yw)-.15
G .958(ay and 2\))-3.558 F .493
(ensuring 100% reliable synchronizations.)144 556.8 R .493
(Of\215ineIMAP)144 585.6 Q F0 .958(has tw)3.458 F 3.458(or)-.1 G(ele)
-3.458 E -.25(va)-.25 G .958(nt principles: 1\) ne).25 F -.15(ve)-.25 G
3.459(rm).15 G .959(odifying your messages in an)-3.459 F 3.459(yw)-.15
G .959(ay and 2\))-3.559 F .493
(ensuring 100% reliable synchronizations.)144 597.6 R .493
(In order to do a reliable sync,)5.493 F F2(Of\215ineIMAP)2.993 E F0
.494(must ha)2.993 F -.15(ve)-.2 G 3.095(aw)144 568.8 S .595
(ay to uniquely identify each e-mail.)-3.195 F .594
(Three pieces of information are required to do this: your)5.594 F .537
(account name, the folder name, and the message UID.)144 580.8 R .538
(The account name can be calculated from)5.537 F 1.082
(the path in which your messages are.)144 592.8 R 1.082
(The folder name can usually be as well, B)6.082 F 1.081(UT some mail)
-.1 F(clients mo)144 604.8 Q .3 -.15(ve m)-.15 H
.493(must ha)2.993 F -.15(ve)-.2 G 3.094(aw)144 609.6 S .594
(ay to uniquely identify each e-mail.)-3.194 F .595
(Three pieces of information are required to do this: your)5.594 F .538
(account name, the folder name, and the message UID.)144 621.6 R .537
(The account name can be calculated from)5.537 F 1.081
(the path in which your messages are.)144 633.6 R 1.082
(The folder name can usually be as well, B)6.082 F 1.082(UT some mail)
-.1 F(clients mo)144 645.6 Q .3 -.15(ve m)-.15 H
(essages between folders by simply mo).15 E(ving the \214le, lea)-.15 E
(ving the name intact.)-.2 E(So,)144 621.6 Q F2(Of\215ineIMAP)3.2 E F0
(ving the name intact.)-.2 E(So,)144 662.4 Q F2(Of\215ineIMAP)3.2 E F0
.7(must store both a UID folder ID.)3.2 F .7
(The folder ID is necessary so)5.7 F F2(Of\215ineIMAP)3.2 E F0 .456
(can detect a message mo)144 633.6 R -.15(ve)-.15 G 2.956(dt).15 G 2.955
(oad)-2.956 G(if)-2.955 E .455(ferent folder)-.25 F(.)-.55 E F2
(Of\215ineIMAP)5.455 E F0 .455(stores the UID \(U= number\) and)2.955 F
(an md5sum of the foldername \(FMD5= number\) to f)144 645.6 Q
(acilitate this.)-.1 E F2(What is the speed of Of\215ineIMAP')108 662.4
Q 2.5(ss)-.37 G(ync?)-2.5 E(Of\215ineIMAP)144 674.4 Q F0 -.15(ve)2.89 G
.39(rsions 2.0 and abo).15 F .691 -.15(ve c)-.15 H .391
(ontain a multithreaded system.).15 F 2.891(Ag)5.391 G .391(ood w)-2.891
F .391(ay to e)-.1 F(xperiment)-.15 E(is by setting maxsyncaccounts to \
3 and maxconnections to 3 in each account clause.)144 686.4 Q .382
(This lets Of)144 703.2 R .382
(\215ineIMAP open up multiple connections simultaneously)-.25 F 5.381
(.T)-.65 G .381(hat will let it process mul-)-5.381 F
(tiple folders and messages at once.)144 715.2 Q
(In most cases, this will increase performance of the sync.)5 E
(John Goerzen)72 768 Q(July 11, 2002)151.655 E(4)201.915 E EP
(The folder ID is necessary so)5.7 F F2(Of\215ineIMAP)3.2 E F0 .455
(can detect a message mo)144 674.4 R -.15(ve)-.15 G 2.955(dt).15 G 2.955
(oad)-2.955 G(if)-2.955 E .455(ferent folder)-.25 F(.)-.55 E F2
(Of\215ineIMAP)5.455 E F0 .456(stores the UID \(U= number\) and)2.955 F
(an md5sum of the foldername \(FMD5= number\) to f)144 686.4 Q
(acilitate this.)-.1 E F2(What is the speed of Of\215ineIMAP')108 703.2
Q 2.5(ss)-.37 G(ync?)-2.5 E(Of\215ineIMAP)144 715.2 Q F0 -.15(ve)2.891 G
.391(rsions 2.0 and abo).15 F .691 -.15(ve c)-.15 H .391
(ontain a multithreaded system.).15 F 2.891(Ag)5.391 G .39(ood w)-2.891
F .39(ay to e)-.1 F(xperiment)-.15 E(is by setting maxsyncaccounts to 3\
and maxconnections to 3 in each account clause.)144 727.2 Q
(John Goerzen)72 768 Q(July 12, 2002)151.655 E(4)201.915 E EP
%%Page: 5 5
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E(Don')144 84 Q 3.103
(ts)-.18 G .603(et the number too high.)-3.103 F .603
(If you do that, things might actually slo)5.603 F 3.104(wd)-.25 G -.25
(ow)-3.104 G 3.104(na).25 G 3.104(sy)-3.104 G .604(our link gets)-3.104
F 2.633(saturated. Also,)144 96 R .133(too man)2.633 F 2.633(yc)-.15 G
.132(onnections can cause mail serv)-2.633 F .132(ers to ha)-.15 F .432
-.15(ve ex)-.2 H(cessi).15 E .432 -.15(ve l)-.25 H 2.632
(oad. Administra-).15 F .506(tors might tak)144 108 R 3.006(eu)-.1 G
.506(nkindly to this, and the serv)-3.006 F .507(er might bog do)-.15 F
3.007(wn. There)-.25 F .507(are man)3.007 F 3.007(yv)-.15 G .507
(ariables in the)-3.257 F(optimal setting; e)144 120 Q
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E .381(This lets Of)
144 84 R .381(\215ineIMAP open up multiple connections simultaneously)
-.25 F 5.382(.T)-.65 G .382(hat will let it process mul-)-5.382 F
(tiple folders and messages at once.)144 96 Q
(In most cases, this will increase performance of the sync.)5 E(Don')144
112.8 Q 3.104(ts)-.18 G .604(et the number too high.)-3.104 F .603
(If you do that, things might actually slo)5.604 F 3.103(wd)-.25 G -.25
(ow)-3.103 G 3.103(na).25 G 3.103(sy)-3.103 G .603(our link gets)-3.103
F 2.632(saturated. Also,)144 124.8 R .132(too man)2.632 F 2.632(yc)-.15
G .132(onnections can cause mail serv)-2.632 F .132(ers to ha)-.15 F
.433 -.15(ve ex)-.2 H(cessi).15 E .433 -.15(ve l)-.25 H 2.633
(oad. Administra-).15 F .507(tors might tak)144 136.8 R 3.007(eu)-.1 G
.507(nkindly to this, and the serv)-3.007 F .506(er might bog do)-.15 F
3.006(wn. There)-.25 F .506(are man)3.006 F 3.006(yv)-.15 G .506
(ariables in the)-3.256 F(optimal setting; e)144 148.8 Q
(xperimentation may help.)-.15 E
(An informal benchmark yields these results for my setup:)144 136.8 Q
(10 minutes with MacOS X Mail.app "manual cache")144 153.6 Q 2.5(5m)144
165.6 S(inutes with GNUS agent sync)-2.5 E(20 seconds with Of)144 177.6
Q(\215ineIMAP 1.x)-.25 E 2.5(9s)144 189.6 S(econds with Of)-2.5 E
(\215ineIMAP 2.x)-.25 E 2.5(3s)144 201.6 S(econds with Of)-2.5 E
(\215ineIMAP 3.x "cold start")-.25 E 2.5(2s)144 213.6 S(econds with Of)
(An informal benchmark yields these results for my setup:)144 165.6 Q
(10 minutes with MacOS X Mail.app "manual cache")144 182.4 Q 2.5(5m)144
194.4 S(inutes with GNUS agent sync)-2.5 E(20 seconds with Of)144 206.4
Q(\215ineIMAP 1.x)-.25 E 2.5(9s)144 218.4 S(econds with Of)-2.5 E
(\215ineIMAP 2.x)-.25 E 2.5(3s)144 230.4 S(econds with Of)-2.5 E
(\215ineIMAP 3.x "cold start")-.25 E 2.5(2s)144 242.4 S(econds with Of)
-2.5 E(\215ineIMAP 3.x "held connection")-.25 E/F1 10.95/Times-Bold@0 SF
(CONFORMING T)72 230.4 Q(O)-.197 E F0 32.5<8349>108 242.4 S
(CONFORMING T)72 259.2 Q(O)-.197 E F0 32.5<8349>108 271.2 S
(nternet Message Access Protocol v)-32.5 E(ersion 4re)-.15 E
(v1 \(IMAP 4re)-.25 E(v1\) as speci\214ed in RFC2060)-.25 E 32.5<834d>
108 259.2 S 8.92(aildir as speci\214ed in http://www)-32.5 F(.qmail.or)
108 288 S 8.92(aildir as speci\214ed in http://www)-32.5 F(.qmail.or)
-.65 E(g/qmail-manual-html/man5/maildir)-.18 E 8.92(.html and)-.55 F
(http://cr)144 271.2 Q(.yp.to/proto/maildir)-.55 E(.html.)-.55 E 32.5
<8353>108 288 S
(http://cr)144 300 Q(.yp.to/proto/maildir)-.55 E(.html.)-.55 E 32.5
<8353>108 316.8 S
(tandard Python 2.2.1 as implemented on POSIX-compliant systems.)-32.5 E
F1(NO)72 304.8 Q(TES)-.438 E/F2 10/Times-Bold@0 SF
(DELETING LOCAL FOLDERS)87 316.8 Q(Of\215ineIMAP)108 328.8 Q F0 .532
(does a tw)3.032 F(o-w)-.1 E .532(ay synchronization.)-.1 F .532
F1(NO)72 333.6 Q(TES)-.438 E/F2 10/Times-Bold@0 SF
(DELETING LOCAL FOLDERS)87 345.6 Q(Of\215ineIMAP)108 357.6 Q F0 .533
(does a tw)3.033 F(o-w)-.1 E .533(ay synchronization.)-.1 F .532
(That is, if you mak)5.532 F 3.032(eac)-.1 G .532
(hange to the mail on the serv)-3.032 F(er)-.15 E 3.033(,i)-.4 G(t)
-3.033 E .897(will be propog)108 340.8 R .897(ated to your local cop)
(hange to the mail on the serv)-3.032 F(er)-.15 E 3.032(,i)-.4 G(t)
-3.032 E .896(will be propog)108 369.6 R .896(ated to your local cop)
-.05 F 2.197 -.65(y, a)-.1 H .897(nd vise-v).65 F 3.397(ersa. Some)-.15
F .896(people might think that it w)3.397 F .896(ould be wise to)-.1 F
1.59(just delete all their local mail folders periodically)108 352.8 R
F .897(people might think that it w)3.397 F .897(ould be wise to)-.1 F
1.59(just delete all their local mail folders periodically)108 381.6 R
6.59(.I)-.65 G 4.09(fy)-6.59 G 1.59(ou do this with Of)-4.09 F
(\215ineIMAP)-.25 E 4.09(,r)-1.11 G 1.59(emember to also)-4.09 F(remo)
108 364.8 Q 1.67 -.15(ve y)-.15 H 1.37(our local status cache \(~/.of)
108 393.6 Q 1.67 -.15(ve y)-.15 H 1.37(our local status cache \(~/.of)
.15 F 1.37(\215ineimap by def)-.25 F 3.87(ault\). Otherwise,)-.1 F(Of)
3.87 E 1.37(\215ineIMAP will tak)-.25 F 3.87(et)-.1 G 1.37(his as an)
-3.87 F .415(intentional deletion of man)108 376.8 R 2.915(ym)-.15 G
-3.87 F .416(intentional deletion of man)108 405.6 R 2.916(ym)-.15 G
.416(essages and will interpret your action as requesting them to be de\
leted from)-2.915 F(the serv)108 388.8 Q(er as well.)-.15 E
leted from)-2.916 F(the serv)108 417.6 Q(er as well.)-.15 E
(\(If you don')5 E 2.5(tu)-.18 G(nderstand this, don')-2.5 E 2.5(tw)-.18
G(orry; you probably w)-2.6 E(on')-.1 E 2.5(te)-.18 G
(ncounter this situation\))-2.5 E F2(MAILING LIST)87 405.6 Q F0
(There is an Of)108 417.6 Q(\215ineIMAP mailing list a)-.25 E -.25(va)
-.2 G(ilable.).25 E 2.448 -.8(To s)108 434.4 T .847
(ncounter this situation\))-2.5 E F2(MAILING LIST)87 434.4 Q F0
(There is an Of)108 446.4 Q(\215ineIMAP mailing list a)-.25 E -.25(va)
-.2 G(ilable.).25 E 2.447 -.8(To s)108 463.2 T .847
(ubscribe, send the te).8 F .847
(xt "Subscribe" in the subject of a mail to of)-.15 F
(\215ineimap-request@complete.or)-.25 E 3.347(g. T)-.18 F(o)-.8 E
(post, send the message to of)108 446.4 Q(\215ineimap@complete.or)-.25 E
(g.)-.18 E F1 -.11(BU)72 463.2 S(GS).11 E F0
(\215ineimap-request@complete.or)-.25 E 3.348(g. T)-.18 F(o)-.8 E
(post, send the message to of)108 475.2 Q(\215ineimap@complete.or)-.25 E
(g.)-.18 E F1 -.11(BU)72 492 S(GS).11 E F0
(Should be reported to the author at the address speci\214ed belo)108
475.2 Q -.65(w.)-.25 G F1(COPYRIGHT)72 492 Q F0(Of)108 504 Q
(\215ineIMAP is Cop)-.25 E(yright \(C\) 2002 John Goerzen.)-.1 E .286
(This program is free softw)108 520.8 R .286(are; you can redistrib)-.1
F .287(ute it and/or modify it under the terms of the GNU General)-.2 F
.766(Public License as published by the Free Softw)108 532.8 R .766
504 Q -.65(w.)-.25 G F1(COPYRIGHT)72 520.8 Q F0(Of)108 532.8 Q
(\215ineIMAP is Cop)-.25 E(yright \(C\) 2002 John Goerzen.)-.1 E .287
(This program is free softw)108 549.6 R .287(are; you can redistrib)-.1
F .286(ute it and/or modify it under the terms of the GNU General)-.2 F
.766(Public License as published by the Free Softw)108 561.6 R .766
(are F)-.1 F .766(oundation; either v)-.15 F .766
(ersion 2 of the License, or \(at your)-.15 F(option\) an)108 544.8 Q
2.5(yl)-.15 G(ater v)-2.5 E(ersion.)-.15 E .579(This program is distrib)
108 561.6 R .579(uted in the hope that it will be useful, b)-.2 F .58
(ut WITHOUT ANY W)-.2 F(ARRANTY)-1.2 E 3.08(;w)-.92 G(ithout)-3.08 E
-2.15 -.25(ev e)108 573.6 T 2.73(nt).25 G .23(he implied w)-2.73 F .229
(arranty of MERCHANT)-.1 F .229(ABILITY or FITNESS FOR A P)-.93 F(AR)
-.92 E .229(TICULAR PURPOSE.)-.6 F(See)5.229 E
(the GNU General Public License for more details.)108 585.6 Q -1.1(Yo)
108 602.4 S 2.77(us)1.1 G .27(hould ha)-2.77 F .57 -.15(ve r)-.2 H(ecei)
(ersion 2 of the License, or \(at your)-.15 F(option\) an)108 573.6 Q
2.5(yl)-.15 G(ater v)-2.5 E(ersion.)-.15 E .58(This program is distrib)
108 590.4 R .579(uted in the hope that it will be useful, b)-.2 F .579
(ut WITHOUT ANY W)-.2 F(ARRANTY)-1.2 E 3.079(;w)-.92 G(ithout)-3.079 E
-2.15 -.25(ev e)108 602.4 T 2.729(nt).25 G .229(he implied w)-2.729 F
.229(arranty of MERCHANT)-.1 F .229(ABILITY or FITNESS FOR A P)-.93 F
(AR)-.92 E .23(TICULAR PURPOSE.)-.6 F(See)5.23 E
(the GNU General Public License for more details.)108 614.4 Q -1.1(Yo)
108 631.2 S 2.77(us)1.1 G .27(hould ha)-2.77 F .57 -.15(ve r)-.2 H(ecei)
.15 E -.15(ve)-.25 G 2.77(dac).15 G(op)-2.77 E 2.77(yo)-.1 G 2.77(ft)
-2.77 G .27
(he GNU General Public License along with this program; if not, write)
-2.77 F(to:)108 614.4 Q(Free Softw)108 631.2 Q(are F)-.1 E
(oundation, Inc.)-.15 E(59 T)108 643.2 Q(emple Place)-.7 E(Suite 330)108
655.2 Q(Boston, MA)108 667.2 Q(02111-1307)5 E(USA)108 679.2 Q F1 -.548
(AU)72 696 S(THOR).548 E F2(Of\215ineIMAP)108 708 Q(,)-.92 E F0 .488
(its libraries, documentation, and all included \214les, e)2.988 F .488
(xcept where noted, w)-.15 F .487(as written by John)-.1 F
(Goerzen <jgoerzen@complete.or)108 720 Q(g> and cop)-.18 E
(yright is held as stated in the COPYRIGHT section.)-.1 E(John Goerzen)
72 768 Q(July 11, 2002)151.655 E(5)201.915 E EP
-2.77 F(to:)108 643.2 Q(Free Softw)108 660 Q(are F)-.1 E
(oundation, Inc.)-.15 E(59 T)108 672 Q(emple Place)-.7 E(Suite 330)108
684 Q(Boston, MA)108 696 Q(02111-1307)5 E(USA)108 708 Q(John Goerzen)72
768 Q(July 12, 2002)151.655 E(5)201.915 E EP
%%Page: 6 6
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 111.22(OFFLINEIMAP\(1\) Of)72 48 R
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E(Of)108 84 Q
(\215ineIMAP manual)-.25 E(OFFLINEIMAP\(1\))113.72 E/F1 10.95
/Times-Bold@0 SF -.548(AU)72 84 S(THOR).548 E/F2 10/Times-Bold@0 SF
(Of\215ineIMAP)108 96 Q(,)-.92 E F0 .488
(its libraries, documentation, and all included \214les, e)2.987 F .488
(xcept where noted, w)-.15 F .488(as written by John)-.1 F
(Goerzen <jgoerzen@complete.or)108 108 Q(g> and cop)-.18 E
(yright is held as stated in the COPYRIGHT section.)-.1 E(Of)108 124.8 Q
(\215ineIMAP may be do)-.25 E(wnloaded, and information found, from its\
homepage via either Gopher or HTTP:)-.25 E(gopher://quux.or)108 100.8 Q
homepage via either Gopher or HTTP:)-.25 E(gopher://quux.or)108 141.6 Q
(g/1/de)-.18 E -.15(ve)-.25 G(l/of).15 E(\215ineimap)-.25 E
(http://quux.or)108 112.8 Q(g/de)-.18 E -.15(ve)-.25 G(l/of).15 E
(\215ineimap)-.25 E/F1 10.95/Times-Bold@0 SF(SEE ALSO)72 141.6 Q/F2 10
/Times-Bold@0 SF(mutt)108 153.6 Q F0(\(1\),)A F2(python)2.5 E F0(\(1\).)
A(John Goerzen)72 768 Q(July 11, 2002)151.655 E(6)201.915 E EP
(http://quux.or)108 153.6 Q(g/de)-.18 E -.15(ve)-.25 G(l/of).15 E
(\215ineimap)-.25 E F1(SEE ALSO)72 182.4 Q F2(mutt)108 194.4 Q F0
(\(1\),)A F2(python)2.5 E F0(\(1\).)A(John Goerzen)72 768 Q
(July 12, 2002)151.655 E(6)201.915 E EP
%%Trailer
end
%%EOF

View File

@ -8,7 +8,7 @@ NAME
SYNOPSIS
offlineimap [ -1 ] [ -a accountlist ] [ -c configfile ]
[ -d ] [ -u interface ]
[ -d ] [ -o ] [ -u interface ]
offlineimap -h | --help
@ -175,17 +175,23 @@ OPTIONS
remove that from the debugging output before send-
ing it to anyone else.
-o Run only once, ignoring any autorefresh setting in
the config file.
-h, --help
Show summary of options.
-u interface
Specifies an alternative user interface module to
use. This overrides the default specified in the
configuration file. The UI specified with -u will
be forced to be used, even if its isuable() method
states that it cannot be. Use this option with
Specifies an alternative user interface module to
use. This overrides the default specified in the
configuration file. The UI specified with -u will
be forced to be used, even if its isuable() method
states that it cannot be. Use this option with
care.
The pre-defined options are Tk.TKUI (a graphical
interface) and TTY.TTYUI (a text-mode interface).
EXAMPLES
Here is an example configuration for a particularly com-
plex situation; more examples will be added later.
@ -453,4 +459,4 @@ SEE ALSO
John Goerzen July 11, 2002 OFFLINEIMAP(1)
John Goerzen July 12, 2002 OFFLINEIMAP(1)

View File

@ -41,6 +41,12 @@ class BaseFolder:
InstanceLimitedThreads."""
raise NotImplementedException
def storesmessages(self):
"""Should be true for any backend that actually saves message bodies.
(Almost all of them). False for the LocalStatus backend. Saves
us from having to slurp up messages just for localstatus purposes."""
return 1
def getvisiblename(self):
return self.name
@ -171,8 +177,19 @@ class BaseFolder:
pass
def copymessageto(self, uid, applyto):
# Sometimes, it could be the case that if a sync takes awhile,
# a message might be deleted from the maildir before it can be
# synced to the status cache. This is only a problem with
# self.getmessage(). So, don't call self.getmessage unless
# really needed.
__main__.ui.copyingmessage(uid, self, applyto)
message = self.getmessage(uid)
message = ''
# If any of the destinations actually stores the message body,
# load it up.
for object in applyto:
if object.storesmessages():
message = self.getmessage(uid)
break
flags = self.getmessageflags(uid)
for object in applyto:
newuid = object.savemessage(uid, message, flags)

View File

@ -29,6 +29,9 @@ class LocalStatusFolder(BaseFolder):
self.filename = os.path.join(root, name)
self.messagelist = None
def storesmessages(self):
return 0
def isnewfolder(self):
return not os.path.exists(self.filename)

View File

@ -66,7 +66,7 @@ class MaildirFolder(BaseFolder):
self.saveuidvalidity(remotefolder.getuidvalidity())
return 1
def cachemessagelist(self):
def _scanfolder(self):
"""Cache the message list. Maildir flags are:
R (replied)
S (seen)
@ -74,7 +74,7 @@ class MaildirFolder(BaseFolder):
D (draft)
F (flagged)
and must occur in ASCII order."""
self.messagelist = {}
retval = {}
files = []
nouidcounter = -1 # Messages without UIDs get
# negative UID numbers.
@ -114,9 +114,13 @@ class MaildirFolder(BaseFolder):
# more robust.
os.unlink(file)
else:
self.messagelist[uid] = {'uid': uid,
'flags': flags,
'filename': file}
retval[uid] = {'uid': uid,
'flags': flags,
'filename': file}
return retval
def cachemessagelist(self):
self.messagelist = self._scanfolder()
def getmessagelist(self):
return self.messagelist
@ -195,6 +199,13 @@ class MaildirFolder(BaseFolder):
if not uid in self.messagelist:
return
filename = self.getmessagelist()[uid]['filename']
os.unlink(filename)
try:
os.unlink(filename)
except IOError:
# Can't find the file -- maybe already deleted?
newmsglist = self._scanfolder()
if uid in newmsglist: # Nope, try new filename.
os.unlink(newmsglist[uid]['filename'])
# Yep -- return.
del(self.messagelist[uid])