aboutsummaryrefslogtreecommitdiffstats
path: root/archivemail.py
Commit message (Collapse)AuthorAgeFilesLines
* IMAP: added sanity check for \Deleted in PERMANENTFLAGS.Nikolaus Schulz2008-04-081-0/+14
|
* Minor, local variable renaming.Nikolaus Schulz2008-04-081-6/+6
|
* Moved IMAP SELECT code into a separate function.Nikolaus Schulz2008-04-081-15/+20
|
* IMAP: be NAMESPACE-aware; improved probing for guessed mailbox names. Nikolaus Schulz2008-04-081-17/+74
| | | | | | | | * Automatically add NAMESPACE prefix to the mailbox path if necessary, * Explicitely check for guessed mailbox names with LIST instead of just trying to SELECT them. * Updated documentation about NAMESPACE handling.
* Code structuring: made a separate group of IMAP functions. Nikolaus Schulz2008-04-071-58/+65
| | | | | No code changes, just moved functions around.
* IMAP: servers should never advertise LOGINDISABLED with SSL; removed the checkNikolaus Schulz2008-03-211-5/+1
| | | | | for it, which was just used to spit a special error message anyway.
* Archiving an IMAP folder with --all didn't archive *any* messages.Nikolaus Schulz2008-03-191-1/+1
| | | | | | The message sequence numbers must be strings, but were generated as integers; fixed.
* Updated year in another copyright note, which I overlooked before.Nikolaus Schulz2008-03-161-1/+1
|
* Removed an assertion which choked upon --days=0. Nikolaus Schulz2008-03-151-3/+0
|
* Added new option --all to archive all messages in a mailbox.Nikolaus Schulz2008-03-151-11/+20
| | | | | | Updated documentation, and added a first simple unittest for this. Closes: #1764846.
* Updated copyright notes to include year 2008.Nikolaus Schulz2008-03-151-1/+1
|
* Fixed crash when archiving an empty maildir with python 2.5. Nikolaus Schulz2008-03-151-1/+0
| | | | | | The incompatible changes in mailbox.Maildir triggered an assertion in _archive_dir(); removing that assertion since it looks not useful anyway.
* Sanitized parsing some IMAP server responses by switching to regularNikolaus Schulz2008-03-151-8/+8
| | | | | expressions.
* Added --debug-imap option which just sets imaplib.Debug.Nikolaus Schulz2008-02-141-1/+8
|
* IMAP: catch LOGINDISABLED, and suggest using imaps. Nikolaus Schulz2008-02-141-2/+9
|
* Only try CRAM-MD5 authentication if the server advertises it. Nikolaus Schulz2008-02-141-3/+5
|
* _archive_imap() used SSL only if the 'imaps://' url scheme was all lowercase.Nikolaus Schulz2008-01-191-1/+1
| | | | | Fixed.
* guess_delivery_time(): Nikolaus Schulz2007-11-131-4/+10
| | | | | | | | | * look for the timestamp of the latest 'Received' header before resorting to 'Date' or 'Resent-Date'. * let 'Resent-date' header take precedence over 'Date'. Document these changes in manpage and changelog. Closes: #1481316, #1764855, Debian bug #272666.
* Fixed date header parsing to be precise with timezone information. Also, whenNikolaus Schulz2007-11-131-9/+10
| | | | | | writing From_ line timestamps, don't use UTC but local time, without timezone information.
* !%&$*# Repair previous broken commit where an unrelated hunk slipped through. Nikolaus Schulz2007-11-131-1/+1
| | | | | Reverted that hunk.
* When converting from other formats to mbox, re-use existing 'Status' andNikolaus Schulz2007-11-131-5/+7
| | | | | 'X-Status' headers if appropriate (instead of deleting and re-generating them).
* If running as root, only call seteuid/setegid if the if the owner of the mailboxNikolaus Schulz2007-11-091-9/+11
| | | | | is not root.
* Bumped version to 0.7.2, and updated release info on the webpage.Nikolaus Schulz2007-11-091-1/+1
|
* IMAP: fixed crash by working around python bug #1277098, which is still pendingNikolaus Schulz2007-11-091-0/+3
| | | | | in python << 2.5.
* Debug message improvements. Explicitely say if we're selecting an IMAP mailboxNikolaus Schulz2007-11-071-3/+5
| | | | | read-only. Improve some formatting.
* Added more debugging messages to the IMAP flag conversion. Nikolaus Schulz2007-11-071-3/+7
|
* Minor code cleanup.Nikolaus Schulz2007-11-071-1/+1
|
* IMAP: if selecting a mailbox fails with both the original path name and withNikolaus Schulz2007-11-071-2/+2
| | | | | replaced path delimiters, report failure for the original path.
* Minor code cleanups. Nikolaus Schulz2007-11-071-13/+6
|
* IMAP: if selecting the mailbox fails, then detect the server's mailbox hierarchyNikolaus Schulz2007-11-071-6/+48
| | | | | delimiter, replace slashes in the mailbox name with the delimiter and try again.
* Fixed IMAP --verbose mode to say what we're *intending* to do next, instead ofNikolaus Schulz2007-11-071-5/+9
| | | | | | reporting success after the fact. This makes a lot more sense for debugging. Also added some more messages.
* archivemail.py, setup.py, test_archivemail.py: Nikolaus Schulz2007-11-071-3/+3
| | | | | bumped version to 0.7.1, and updated copyright.
* When converting from other formats to mbox, don't preserve existing 'Status' andNikolaus Schulz2007-11-021-21/+12
| | | | | 'X-Status' mbox headers, we better overwrite them with correct values.
* With IMAP no IdentityCache object was initialized, causing a crash ifNikolaus Schulz2007-11-021-0/+1
| | | | | --warn-duplicates was used. Closes: Debian bug #434786.
* archivemail.py: added --copy option to the usage message.Nikolaus Schulz2007-11-021-0/+1
|
* Let archivemail accept --days=0.Nikolaus Schulz2007-11-021-2/+2
|
* Expand tilde in argument of long option --pwfile. Nikolaus Schulz2007-11-021-1/+1
|
* Deprecate the old automatic seteuid feature; document this in the manpage andNikolaus Schulz2007-11-021-0/+2
| | | | | | changelog, and let archivemail spit a warning when it changes the effective user id.
* If running as root, only switch the effective uid and gid back if we haveNikolaus Schulz2007-11-021-1/+1
| | | | | actually switched them before.
* New option --copy: archive mail, but don't delete it from the mailbox. Nikolaus Schulz2007-11-021-21/+31
| | | | | Closes: #981865, #988803, #1764851, Debian bug #434798
* IMAP: first fetch message flags, then the body. Doing it together alwaysNikolaus Schulz2007-11-021-2/+7
| | | | | | returns the \Seen flag set. Closes: Debian bug #434807 (well, the outstanding part of it).
* When converting from maildir or IMAP to mbox, report existing 'Status' andNikolaus Schulz2007-11-021-4/+16
| | | | | | 'X-Status' headers in verbose mode, since they are preserved, which can give surprising results.
* IMAP: fixed message flags retrieval, which failed to extract the right stringNikolaus Schulz2007-11-021-1/+1
| | | | | from the server response. Tough.
* If dry-running, open IMAP mailboxes read-only. This uses EXAMINE instead ofNikolaus Schulz2007-11-021-1/+4
| | | | | select, thus preserving the \Recent flag.
* add_status_headers_imap(): Nikolaus Schulz2007-11-021-5/+2
| | | | | | | | | * mark message 'old' iff it's not \Recent (drop requirement that it's unread; this probably confused mutt's message status flags in the index with mbox status flags). * a message not \Seen and not \Recent was marked as 'N', but there is no such thing like an mbox status flag 'N'.
* Skip invalid messages/files in Maildirs. Nikolaus Schulz2007-10-241-3/+4
| | | | | | Closes: #1783369, Debian bug #255944, and Debian bug #305902 also seems about this issue.
* New IMAP URL parser that understands double-quoted usernames and passwords.Nikolaus Schulz2007-10-231-12/+40
| | | | | Closes: #1640878
* Define very simple exception classes, mapping to the error functionsNikolaus Schulz2007-10-231-3/+16
| | | | | | | user_error() and unexpected_error(). If archivemail is used as a module, let the functions raise the corresponding exceptions rather than writing to stderr and calling sys.exit().
* Use a wrapper around rfc822.Message.fp to find the filename for Maildir/MHNikolaus Schulz2007-10-221-8/+30
| | | | | | emails. Python 2.5 broke backward compatibility for Maildirs. :-/ Closes: #1670422
* Expand tilde in argument of long option --output-dir, the shell doesn't.Nikolaus Schulz2006-11-141-1/+1
|