mirror of
https://github.com/imapsync/imapsync.git
synced 2025-07-20 17:25:53 +02:00
1.155
This commit is contained in:
parent
a1ba8b7815
commit
3a28514165
11 changed files with 139 additions and 46 deletions
17
ChangeLog
17
ChangeLog
|
@ -1,17 +1,26 @@
|
||||||
|
|
||||||
RCS file: RCS/imapsync,v
|
RCS file: RCS/imapsync,v
|
||||||
Working file: imapsync
|
Working file: imapsync
|
||||||
head: 1.153
|
head: 1.155
|
||||||
branch:
|
branch:
|
||||||
locks: strict
|
locks: strict
|
||||||
gilles: 1.153
|
|
||||||
access list:
|
access list:
|
||||||
symbolic names:
|
symbolic names:
|
||||||
keyword substitution: kv
|
keyword substitution: kv
|
||||||
total revisions: 153; selected revisions: 153
|
total revisions: 155; selected revisions: 155
|
||||||
description:
|
description:
|
||||||
----------------------------
|
----------------------------
|
||||||
revision 1.153 locked by: gilles;
|
revision 1.155
|
||||||
|
date: 2006/02/28 02:18:13; author: gilles; state: Exp; lines: +14 -7
|
||||||
|
Updated AUTHOR section.
|
||||||
|
Talked about confirmation request
|
||||||
|
Talked about comp.mail.imap
|
||||||
|
----------------------------
|
||||||
|
revision 1.154
|
||||||
|
date: 2006/02/28 02:03:40; author: gilles; state: Exp; lines: +18 -17
|
||||||
|
Fixed doc: No need to rerun imapsync with expunge now.
|
||||||
|
----------------------------
|
||||||
|
revision 1.153
|
||||||
date: 2006/02/22 02:41:52; author: gilles; state: Exp; lines: +10 -9
|
date: 2006/02/22 02:41:52; author: gilles; state: Exp; lines: +10 -9
|
||||||
updated usage()
|
updated usage()
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
12
FAQ
12
FAQ
|
@ -20,7 +20,8 @@ imapsync does not touch any header since the
|
||||||
header is used to identify the messages in
|
header is used to identify the messages in
|
||||||
both parts.
|
both parts.
|
||||||
|
|
||||||
Solutions: a) Don't use buggy Eudora
|
Solutions:
|
||||||
|
a) Don't use buggy Eudora.
|
||||||
b) Use the --syncinternaldates option and keep using Eudora :-)
|
b) Use the --syncinternaldates option and keep using Eudora :-)
|
||||||
|
|
||||||
=======================================================================
|
=======================================================================
|
||||||
|
@ -44,6 +45,15 @@ b) Use stunnel
|
||||||
then use imapsync on localhost (or bar machine) imap (143) port.
|
then use imapsync on localhost (or bar machine) imap (143) port.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
======================================================================
|
||||||
|
Q. I want the --folder 'MyFolder' option be recurse.
|
||||||
|
|
||||||
|
R. Do not use the --folder option.
|
||||||
|
Instead, use --include '^MyFolder'
|
||||||
|
Folder "MyFolder" and all its subfolders will be handled.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
Q. I have moved from Braunschweig to Graz, so I would like to have my whole
|
Q. I have moved from Braunschweig to Graz, so I would like to have my whole
|
||||||
Braunschweig mail sorted into a folder INBOX.Braunschweig of my new mail
|
Braunschweig mail sorted into a folder INBOX.Braunschweig of my new mail
|
||||||
|
|
3
Makefile
3
Makefile
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
# $Id: Makefile,v 1.7 2005/04/13 11:44:17 gilles Exp gilles $
|
# $Id: Makefile,v 1.8 2006/02/28 03:55:01 gilles Exp gilles $
|
||||||
|
|
||||||
TARGET=imapsync
|
TARGET=imapsync
|
||||||
|
|
||||||
|
@ -99,3 +99,4 @@ lfo: dist niouze
|
||||||
|
|
||||||
niouze: VERSION
|
niouze: VERSION
|
||||||
. memo && lfo_announce
|
. memo && lfo_announce
|
||||||
|
. memo && fm_announce
|
||||||
|
|
20
README
20
README
|
@ -2,7 +2,7 @@ NAME
|
||||||
imapsync - IMAP synchronization, copy or migration tool. Synchronize
|
imapsync - IMAP synchronization, copy or migration tool. Synchronize
|
||||||
mailboxes between two imap servers. Good at IMAP migration.
|
mailboxes between two imap servers. Good at IMAP migration.
|
||||||
|
|
||||||
$Revision: 1.153 $
|
$Revision: 1.155 $
|
||||||
|
|
||||||
INSTALL
|
INSTALL
|
||||||
imapsync works fine under any Unix OS.
|
imapsync works fine under any Unix OS.
|
||||||
|
@ -74,8 +74,7 @@ DESCRIPTION
|
||||||
|
|
||||||
You can decide to delete the messages from the source mailbox after a
|
You can decide to delete the messages from the source mailbox after a
|
||||||
successful transfert (it is a good feature when migrating). In that
|
successful transfert (it is a good feature when migrating). In that
|
||||||
case, use the --delete option, and run imapsync again with the
|
case, use the --delete --expunge1 options.
|
||||||
--expunge1 option.
|
|
||||||
|
|
||||||
You can also just synchronize a mailbox A from another mailbox B in case
|
You can also just synchronize a mailbox A from another mailbox B in case
|
||||||
you just want to keep a "live" copy of B in A.
|
you just want to keep a "live" copy of B in A.
|
||||||
|
@ -93,7 +92,7 @@ HISTORY
|
||||||
copy_folder.pl comes from the Mail-IMAPClient-2.1.3 perl module tarball
|
copy_folder.pl comes from the Mail-IMAPClient-2.1.3 perl module tarball
|
||||||
source (in the examples/ directory of the tarball).
|
source (in the examples/ directory of the tarball).
|
||||||
|
|
||||||
EXAMPLES
|
EXAMPLE
|
||||||
While working on imapsync parameters please run imapsync in dry mode (no
|
While working on imapsync parameters please run imapsync in dry mode (no
|
||||||
modification induced) with the --dry option. Nothing bad can be done
|
modification induced) with the --dry option. Nothing bad can be done
|
||||||
this way.
|
this way.
|
||||||
|
@ -130,7 +129,14 @@ EXIT STATUS
|
||||||
done
|
done
|
||||||
|
|
||||||
AUTHOR
|
AUTHOR
|
||||||
Gilles LAMIRAL lamiral@linux-france.org
|
Gilles LAMIRAL <lamiral@linux-france.org>
|
||||||
|
|
||||||
|
Feedback good or bad is always welcome. The first you send me an email
|
||||||
|
you will receive a confirmation request before I really read your
|
||||||
|
message.
|
||||||
|
|
||||||
|
The newsgroup comp.mail.imap is a good place to talk about imapsync. I
|
||||||
|
read it when imapsync is concerned.
|
||||||
|
|
||||||
LICENSE
|
LICENSE
|
||||||
imapsync is free, gratis and open source software cover by the GNU
|
imapsync is free, gratis and open source software cover by the GNU
|
||||||
|
@ -164,7 +170,7 @@ BUGS
|
||||||
(fixed since 1.28 release but wait for a time before removing those
|
(fixed since 1.28 release but wait for a time before removing those
|
||||||
lines)
|
lines)
|
||||||
|
|
||||||
Report any bugs to the author: lamiral@linux-france.org
|
Report any bugs to the author.
|
||||||
|
|
||||||
IMAP SERVERS
|
IMAP SERVERS
|
||||||
Failure stories reported with the following imap servers :
|
Failure stories reported with the following imap servers :
|
||||||
|
@ -267,5 +273,5 @@ AUTHOR
|
||||||
teaching free open and gratis softwares. Don't hesitate to pay him for
|
teaching free open and gratis softwares. Don't hesitate to pay him for
|
||||||
that services.
|
that services.
|
||||||
|
|
||||||
$Id: imapsync,v 1.153 2006/02/22 02:41:52 gilles Exp gilles $
|
$Id: imapsync,v 1.155 2006/02/28 02:18:13 gilles Exp $
|
||||||
|
|
||||||
|
|
36
TODO
36
TODO
|
@ -1,18 +1,18 @@
|
||||||
TODO file for imapsync
|
TODO file for imapsync
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
|
Talk about mbox and maildir format when "Invalid header"
|
||||||
|
problem is encountered.
|
||||||
|
|
||||||
|
Post on newsgroup comp.mail.imap when a new release comes.
|
||||||
|
http://groups.google.fr/group/comp.mail.imap
|
||||||
|
|
||||||
Make --include --exclude options possibly be a list.
|
Make --include --exclude options possibly be a list.
|
||||||
|
|
||||||
Create a imapsync mailing list.
|
|
||||||
|
|
||||||
Add features from Herman (patch against 1.139)
|
Add features from Herman (patch against 1.139)
|
||||||
- Support for authenticating as different (admin) user
|
- Support for authenticating as different (admin) user
|
||||||
- Support for different auth mechanisms (we needed PLAIN)
|
- Support for different auth mechanisms (we needed PLAIN)
|
||||||
|
|
||||||
|
|
||||||
Add my amazon wishlist link.
|
Add my amazon wishlist link.
|
||||||
|
|
||||||
Add an --exactsync option to remove target messages
|
Add an --exactsync option to remove target messages
|
||||||
|
@ -30,21 +30,33 @@ Look at http://barnson.org/node/81
|
||||||
Read:
|
Read:
|
||||||
http://www.washington.edu/imap/documentation/commndmt.txt.html
|
http://www.washington.edu/imap/documentation/commndmt.txt.html
|
||||||
|
|
||||||
Talk about :
|
|
||||||
"I think notes is right but MS Eudora is bad with dates.
|
|
||||||
(netscape or thunderbird is ok with dates)
|
|
||||||
use the option --syncinternaldates "
|
|
||||||
|
|
||||||
|
|
||||||
Add cyrus link about INBOX. namespace
|
Add cyrus link about INBOX. namespace
|
||||||
http://asg.web.cmu.edu/cyrus/download/imapd/altnamespace.html
|
http://asg.web.cmu.edu/cyrus/download/imapd/altnamespace.html
|
||||||
|
|
||||||
Look at http://freshmeat.net/projects/freshmeat-submit/
|
Look at http://freshmeat.net/projects/freshmeat-submit/
|
||||||
Look at comp.mail.imap http://groups.google.fr/groups?q=imapsync
|
|
||||||
|
|
||||||
Explain expunge behavior
|
Explain expunge behavior.
|
||||||
|
|
||||||
Add a --recurse option when --folder option is used.
|
|
||||||
|
DONE in FAQ.Talk about :
|
||||||
|
"I think notes is right but MS Eudora is bad with dates.
|
||||||
|
(netscape or thunderbird is ok with dates)
|
||||||
|
use the option --syncinternaldates "
|
||||||
|
|
||||||
|
DONE. Create a imapsync mailing list.
|
||||||
|
May be I won't since we can use comp.mail.imap
|
||||||
|
http://groups.google.fr/group/comp.mail.imap
|
||||||
|
to talk about imapsync
|
||||||
|
|
||||||
|
DONE. Add a --recurse option when --folder option is used.
|
||||||
|
No I won't since this feature can be done by doing a
|
||||||
|
--include '^INBOX.MyFolder'
|
||||||
|
|
||||||
|
Done. Look at comp.mail.imap http://groups.google.fr/groups?q=imapsync
|
||||||
|
In fact I set up an google alert on imapsync so I read
|
||||||
|
any posted question about imapsync posted to any group
|
||||||
|
followed by google.
|
||||||
|
|
||||||
DONE. Add usage about --regextrans2
|
DONE. Add usage about --regextrans2
|
||||||
To remove INBOX. in the name of destination folders:
|
To remove INBOX. in the name of destination folders:
|
||||||
|
|
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
||||||
1.153
|
1.155
|
||||||
|
|
20
freshmeat_submition
Normal file
20
freshmeat_submition
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
Project: imapsync
|
||||||
|
Version: 1.155
|
||||||
|
Release-Focus: Major feature enhancements
|
||||||
|
Hide: N
|
||||||
|
Home-Page-URL: http://www.linux-france.org/prj/imapsync/
|
||||||
|
Gzipped-Tar-URL: http://www.linux-france.org/prj/imapsync/dist/
|
||||||
|
|
||||||
|
From imapsync version 1.121 to 1.153, the following options have been added:
|
||||||
|
--buffersize
|
||||||
|
--expunge1 --expunge2
|
||||||
|
--fastio1 --fastio2
|
||||||
|
--minage
|
||||||
|
--useheader
|
||||||
|
--prefix1
|
||||||
|
--foldersizes
|
||||||
|
|
||||||
|
The documentation has been updated.
|
||||||
|
Also, imapsync is now "IMAP4 Namespace" RFC 2342 compliant.
|
||||||
|
More than 20 different IMAP server softwares have
|
||||||
|
successfully migrate or been synchronised with imapsync.
|
7
freshmeat_submition2
Normal file
7
freshmeat_submition2
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
Project: imapsync
|
||||||
|
Version: 1.155
|
||||||
|
Release-Focus: Major feature enhancements
|
||||||
|
Hide: N
|
||||||
|
Home-Page-URL: http://www.linux-france.org/prj/imapsync/
|
||||||
|
Gzipped-Tar-URL: http://www.linux-france.org/prj/imapsync/dist/
|
||||||
|
|
44
imapsync
44
imapsync
|
@ -6,7 +6,7 @@ imapsync - IMAP synchronization, copy or migration
|
||||||
tool. Synchronize mailboxes between two imap servers. Good
|
tool. Synchronize mailboxes between two imap servers. Good
|
||||||
at IMAP migration.
|
at IMAP migration.
|
||||||
|
|
||||||
$Revision: 1.153 $
|
$Revision: 1.155 $
|
||||||
|
|
||||||
=head1 INSTALL
|
=head1 INSTALL
|
||||||
|
|
||||||
|
@ -70,7 +70,7 @@ $Revision: 1.153 $
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
The command imapsync is a tool allowing incremental and recursive
|
The command imapsync is a tool allowing incremental and recursive
|
||||||
imap transfer from one mailbox to another.
|
imap transfer from one mailbox to another.
|
||||||
|
|
||||||
We sometimes need to transfer mailboxes from one imap server to
|
We sometimes need to transfer mailboxes from one imap server to
|
||||||
|
@ -87,8 +87,7 @@ connection.
|
||||||
|
|
||||||
You can decide to delete the messages from the source mailbox
|
You can decide to delete the messages from the source mailbox
|
||||||
after a successful transfert (it is a good feature when migrating).
|
after a successful transfert (it is a good feature when migrating).
|
||||||
In that case, use the --delete option, and run imapsync again
|
In that case, use the --delete --expunge1 options.
|
||||||
with the --expunge1 option.
|
|
||||||
|
|
||||||
You can also just synchronize a mailbox A from another mailbox B
|
You can also just synchronize a mailbox A from another mailbox B
|
||||||
in case you just want to keep a "live" copy of B in A.
|
in case you just want to keep a "live" copy of B in A.
|
||||||
|
@ -108,20 +107,22 @@ transfert. imapsync started its life being a copy_folder.pl patch.
|
||||||
The tool copy_folder.pl comes from the Mail-IMAPClient-2.1.3 perl
|
The tool copy_folder.pl comes from the Mail-IMAPClient-2.1.3 perl
|
||||||
module tarball source (in the examples/ directory of the tarball).
|
module tarball source (in the examples/ directory of the tarball).
|
||||||
|
|
||||||
=head1 EXAMPLES
|
=head1 EXAMPLE
|
||||||
|
|
||||||
While working on imapsync parameters please run imapsync in dry mode (no
|
While working on imapsync parameters please run imapsync in
|
||||||
modification induced) with the --dry option. Nothing bad can be done
|
dry mode (no modification induced) with the --dry
|
||||||
this way.
|
option. Nothing bad can be done this way.
|
||||||
|
|
||||||
To synchronize the imap account "buddy" on host "imap.src.fr" to the
|
To synchronize the imap account "buddy" on host
|
||||||
imap account "max" on host "imap.dest.fr" (the passwords are located
|
"imap.src.fr" to the imap account "max" on host
|
||||||
in too files "/etc/secret1" for "buddy", "/etc/secret2" for "max") :
|
"imap.dest.fr" (the passwords are located in too files
|
||||||
|
"/etc/secret1" for "buddy", "/etc/secret2" for "max") :
|
||||||
|
|
||||||
imapsync --host1 imap.src.fr --user1 buddy --passfile1 /etc/secret1 \
|
imapsync --host1 imap.src.fr --user1 buddy --passfile1 /etc/secret1 \
|
||||||
--host2 imap.dest.fr --user2 max --passfile2 /etc/secret2
|
--host2 imap.dest.fr --user2 max --passfile2 /etc/secret2
|
||||||
|
|
||||||
Then, you will have buddy's mailbox updated from max's mailbox.
|
Then, you will have buddy's mailbox updated from max's
|
||||||
|
mailbox.
|
||||||
|
|
||||||
=head1 SECURITY
|
=head1 SECURITY
|
||||||
|
|
||||||
|
@ -150,7 +151,14 @@ in a Bourne shell:
|
||||||
|
|
||||||
=head1 AUTHOR
|
=head1 AUTHOR
|
||||||
|
|
||||||
Gilles LAMIRAL lamiral@linux-france.org
|
Gilles LAMIRAL <lamiral@linux-france.org>
|
||||||
|
|
||||||
|
Feedback good or bad is always welcome. The first you send
|
||||||
|
me an email you will receive a confirmation request before I
|
||||||
|
really read your message.
|
||||||
|
|
||||||
|
The newsgroup comp.mail.imap is a good place to talk about
|
||||||
|
imapsync. I read it when imapsync is concerned.
|
||||||
|
|
||||||
=head1 LICENSE
|
=head1 LICENSE
|
||||||
|
|
||||||
|
@ -188,7 +196,7 @@ copied the first time. Run imapsync twice if you want the
|
||||||
flags set correctly. (fixed since 1.28 release but wait for
|
flags set correctly. (fixed since 1.28 release but wait for
|
||||||
a time before removing those lines)
|
a time before removing those lines)
|
||||||
|
|
||||||
Report any bugs to the author: lamiral@linux-france.org
|
Report any bugs to the author.
|
||||||
|
|
||||||
=head1 IMAP SERVERS
|
=head1 IMAP SERVERS
|
||||||
|
|
||||||
|
@ -313,7 +321,7 @@ Gilles LAMIRAL earn his living writing, installing,
|
||||||
configuring and teaching free open and gratis
|
configuring and teaching free open and gratis
|
||||||
softwares. Don't hesitate to pay him for that services.
|
softwares. Don't hesitate to pay him for that services.
|
||||||
|
|
||||||
$Id: imapsync,v 1.153 2006/02/22 02:41:52 gilles Exp gilles $
|
$Id: imapsync,v 1.155 2006/02/28 02:18:13 gilles Exp $
|
||||||
|
|
||||||
=cut
|
=cut
|
||||||
|
|
||||||
|
@ -361,7 +369,7 @@ my(
|
||||||
use vars qw ($opt_G); # missing code for this will be option.
|
use vars qw ($opt_G); # missing code for this will be option.
|
||||||
|
|
||||||
|
|
||||||
$rcs = ' $Id: imapsync,v 1.153 2006/02/22 02:41:52 gilles Exp gilles $ ';
|
$rcs = ' $Id: imapsync,v 1.155 2006/02/28 02:18:13 gilles Exp $ ';
|
||||||
$rcs =~ m/,v (\d+\.\d+)/;
|
$rcs =~ m/,v (\d+\.\d+)/;
|
||||||
$VERSION = ($1) ? $1 : "UNKNOWN";
|
$VERSION = ($1) ? $1 : "UNKNOWN";
|
||||||
|
|
||||||
|
@ -398,8 +406,8 @@ $error=0;
|
||||||
|
|
||||||
my $banner = join("",
|
my $banner = join("",
|
||||||
'$RCSfile: imapsync,v $ ',
|
'$RCSfile: imapsync,v $ ',
|
||||||
'$Revision: 1.153 $ ',
|
'$Revision: 1.155 $ ',
|
||||||
'$Date: 2006/02/22 02:41:52 $ ',
|
'$Date: 2006/02/28 02:18:13 $ ',
|
||||||
"\n",
|
"\n",
|
||||||
"Mail::IMAPClient version used here is ",
|
"Mail::IMAPClient version used here is ",
|
||||||
$VERSION_IMAPClient,"\n"
|
$VERSION_IMAPClient,"\n"
|
||||||
|
|
20
memo
20
memo
|
@ -35,3 +35,23 @@ niouzes_compil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
fm_announce() {
|
||||||
|
software_version
|
||||||
|
NEWS_FILE_FM="/home/gilles/public_html/imapsync/freshmeat_submition2"
|
||||||
|
if ! newer VERSION $NEWS_FILE_FM; then
|
||||||
|
echo "$VERSION already announced"
|
||||||
|
else
|
||||||
|
cat > $NEWS_FILE_FM << EOF
|
||||||
|
Project: imapsync
|
||||||
|
Version: $VERSION
|
||||||
|
Release-Focus: Major feature enhancements
|
||||||
|
Hide: N
|
||||||
|
Home-Page-URL: http://www.linux-france.org/prj/imapsync/
|
||||||
|
Gzipped-Tar-URL: http://www.linux-france.org/prj/imapsync/dist/
|
||||||
|
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
4
tests.sh
4
tests.sh
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# $Id: tests.sh,v 1.46 2006/02/22 02:21:57 gilles Exp gilles $
|
# $Id: tests.sh,v 1.47 2006/02/28 03:53:34 gilles Exp gilles $
|
||||||
|
|
||||||
#### Shell pragmas
|
#### Shell pragmas
|
||||||
|
|
||||||
|
@ -402,7 +402,7 @@ lp_include()
|
||||||
--passfile2 /var/tmp/secret.tata \
|
--passfile2 /var/tmp/secret.tata \
|
||||||
--host1 loul --user1 tata \
|
--host1 loul --user1 tata \
|
||||||
--passfile1 /var/tmp/secret.tata \
|
--passfile1 /var/tmp/secret.tata \
|
||||||
--include 'INBOX.yop'
|
--include '^INBOX.yop'
|
||||||
else
|
else
|
||||||
:
|
:
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue