Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Append to the archive, and don't use rename() | Nikolaus Schulz | 2009-11-06 | 1 | -40/+20 |
| | | | | | This is WIP to prepare locking for the archive. Since we no longer copy the whole archive before appending, archiving should also be faster. | ||||
* | Remove unused method Mbox.is_empty() | Nikolaus Schulz | 2009-11-06 | 2 | -20/+0 |
| | |||||
* | Keep mbox files open, so we don't break our locks | Nikolaus Schulz | 2009-11-06 | 1 | -34/+17 |
| | | | | | | When committing a changed mbox, don't use os.rename(), and don't open/close the mbox file to truncate it to zero length. Locking was pretty much broken before -- at least in theory a quite severe bug. | ||||
* | Cleanup restoring of the mbox timestamps | Nikolaus Schulz | 2009-11-06 | 1 | -14/+5 |
| | | | | | | | | * Remove code duplication: restore the mbox timestamps once and for all when we're done * Don't bother restoring the file mode when finishing, since this is handled in RetainMbox.finalise() (and need be) * Therefore, rename Mbox.reset_stat() to reset_timestamps() | ||||
* | Cosmetics: in verbose mode, report current mailbox early | Nikolaus Schulz | 2009-11-06 | 1 | -1/+1 |
| | | | | | This is now before we do the sanity checking, so in verbose mode, we don't error out before having said that we now turn attention to the current mailbox. | ||||
* | Refuse to process mailboxes owned by someone else | Nikolaus Schulz | 2009-11-06 | 1 | -2/+12 |
| | | | | | | This should also protect people relying on the old setuid feature. If the mailbox is local, by checking the ownership we necessarily check for existance. | ||||
* | Sanity check existing archives early | Nikolaus Schulz | 2009-11-06 | 1 | -10/+15 |
| | | | | | This used to happen when creating the temporary archive, we now do it before we start processing the mailbox. | ||||
* | Remove simple-minded security checks | Nikolaus Schulz | 2009-11-06 | 1 | -12/+0 |
| | | | | | Remove the checks if the mailbox is a symlink, and if the output directory is world-writable. Better no security than half-baked security. | ||||
* | Move archive naming code into new function make_archive_name() | Nikolaus Schulz | 2009-11-06 | 1 | -18/+21 |
| | |||||
* | Remove the setuid functionality | Nikolaus Schulz | 2009-11-06 | 1 | -24/+0 |
| | | | | It was not a good idea, and trying to do it right would be too much effort. | ||||
* | Simplify imap_get_namespace() and imap_guess_mailboxnames() | Nikolaus Schulz | 2009-11-06 | 1 | -15/+15 |
| | | | | | | I don't think anybody wants to archive folders in shared or public IMAP namespaces, so we don't bother checking all possible namespaces. The code was ugly anyway. | ||||
* | Removed obsolete references to subversion | Nikolaus Schulz | 2009-11-06 | 3 | -19/+9 |
| | | | | | | archivemail development has moved to git. This patch updates the project webpage, removes the subversion $Id$ keyword that was stored in archivemail.__svn_id__, and updates the Makefile. | ||||
* | IMAP: imap_guess_mailboxnames: check for NIL delimiter. | Nikolaus Schulz | 2008-04-09 | 1 | -1/+1 |
| | | | | | | Only replace the slash with the server's hierarchy delimiter if the latter actually exists (is not NIL). | ||||
* | TODO: dropped items about --all, which is now implemented. | Nikolaus Schulz | 2008-04-08 | 1 | -4/+2 |
| | |||||
* | IMAP: only check for \Deleted in PERMANENTFLAGS if mailbox isn't read-only. | Nikolaus Schulz | 2008-04-08 | 1 | -1/+1 |
| | | | | | This spewed an error when --dry-running. | ||||
* | IMAP: added sanity check for \Deleted in PERMANENTFLAGS. | Nikolaus Schulz | 2008-04-08 | 1 | -0/+14 |
| | |||||
* | Minor, local variable renaming. | Nikolaus Schulz | 2008-04-08 | 1 | -6/+6 |
| | |||||
* | Moved IMAP SELECT code into a separate function. | Nikolaus Schulz | 2008-04-08 | 1 | -15/+20 |
| | |||||
* | IMAP: be NAMESPACE-aware; improved probing for guessed mailbox names. | Nikolaus Schulz | 2008-04-08 | 4 | -30/+86 |
| | | | | | | | | * 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. | ||||
* | archivemail.sgml: warn that multiple passes with --copy will create duplicates. | Nikolaus Schulz | 2008-04-08 | 2 | -1/+5 |
| | |||||
* | Code structuring: made a separate group of IMAP functions. | Nikolaus Schulz | 2008-04-07 | 1 | -58/+65 |
| | | | | | No code changes, just moved functions around. | ||||
* | IMAP: servers should never advertise LOGINDISABLED with SSL; removed the check | Nikolaus Schulz | 2008-03-21 | 1 | -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 Schulz | 2008-03-19 | 1 | -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 Schulz | 2008-03-16 | 1 | -1/+1 |
| | |||||
* | Updated changelog, which was a little behind. | Nikolaus Schulz | 2008-03-15 | 1 | -0/+7 |
| | |||||
* | Removed an assertion which choked upon --days=0. | Nikolaus Schulz | 2008-03-15 | 1 | -3/+0 |
| | |||||
* | Added new option --all to archive all messages in a mailbox. | Nikolaus Schulz | 2008-03-15 | 4 | -11/+68 |
| | | | | | | Updated documentation, and added a first simple unittest for this. Closes: #1764846. | ||||
* | Updated copyright notes to include year 2008. | Nikolaus Schulz | 2008-03-15 | 2 | -2/+2 |
| | |||||
* | Documented the new option --debug-imap in the manpage. | Nikolaus Schulz | 2008-03-15 | 2 | -2/+24 |
| | |||||
* | Fixed crash when archiving an empty maildir with python 2.5. | Nikolaus Schulz | 2008-03-15 | 1 | -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 regular | Nikolaus Schulz | 2008-03-15 | 1 | -8/+8 |
| | | | | | expressions. | ||||
* | test_archivemail.py: removed nested calls to setUp() and tearDown(). | Nikolaus Schulz | 2008-03-06 | 1 | -68/+0 |
| | |||||
* | TODO: added items: | Nikolaus Schulz | 2008-02-14 | 1 | -0/+7 |
| | | | | | | * perhaps integrate --debug-imap into -vv switch * graceful IMAP connection termination upon error | ||||
* | Added --debug-imap option which just sets imaplib.Debug. | Nikolaus Schulz | 2008-02-14 | 1 | -1/+8 |
| | |||||
* | IMAP: catch LOGINDISABLED, and suggest using imaps. | Nikolaus Schulz | 2008-02-14 | 1 | -2/+9 |
| | |||||
* | Only try CRAM-MD5 authentication if the server advertises it. | Nikolaus Schulz | 2008-02-14 | 1 | -3/+5 |
| | |||||
* | TODO: added issues: | Nikolaus Schulz | 2008-01-19 | 1 | -0/+14 |
| | | | | | | | - no locking with archives - no validation of existing archives - discomfort with current mbox class design and usage | ||||
* | _archive_imap() used SSL only if the 'imaps://' url scheme was all lowercase. | Nikolaus Schulz | 2008-01-19 | 1 | -1/+1 |
| | | | | | Fixed. | ||||
* | Updated TODO list. Added: | Nikolaus Schulz | 2007-11-15 | 1 | -0/+29 |
| | | | | | | | * rework locking * IMAP SEARCH BEFORE matching dates only, no time * document mbox format issues | ||||
* | guess_delivery_time(): | Nikolaus Schulz | 2007-11-13 | 4 | -10/+24 |
| | | | | | | | | | * 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, when | Nikolaus Schulz | 2007-11-13 | 2 | -9/+16 |
| | | | | | | 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 Schulz | 2007-11-13 | 1 | -1/+1 |
| | | | | | Reverted that hunk. | ||||
* | When converting from other formats to mbox, re-use existing 'Status' and | Nikolaus Schulz | 2007-11-13 | 1 | -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 mailbox | Nikolaus Schulz | 2007-11-09 | 1 | -9/+11 |
| | | | | | is not root. | ||||
* | Bumped version to 0.7.2, and updated release info on the webpage. | Nikolaus Schulz | 2007-11-09 | 3 | -4/+4 |
| | |||||
* | RELNOTES: slightly re-edited to be more consistent. | Nikolaus Schulz | 2007-11-09 | 1 | -3/+8 |
| | |||||
* | RELNOTES, CHANGELOG: updated for v0.7.2, which fixes a crash with IMAP and | Nikolaus Schulz | 2007-11-09 | 2 | -0/+10 |
| | | | | | python << 2.5. | ||||
* | IMAP: fixed crash by working around python bug #1277098, which is still pending | Nikolaus Schulz | 2007-11-09 | 1 | -0/+3 |
| | | | | | in python << 2.5. | ||||
* | Makefile: made the htdocs rule a little bit more intelligent. | Nikolaus Schulz | 2007-11-08 | 1 | -1/+2 |
| | |||||
* | Makefile: declare phony targets. | Nikolaus Schulz | 2007-11-08 | 1 | -0/+2 |
| |