aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* IMAP: handle broken servers sending no untagged SEARCH responseNikolaus Schulz2011-07-091-3/+7
| | | | | | | The proprietary "SmartMail" IMAP server likes to send no untagged SEARCH response when the set of matching email messages is empty. This was brought up as sf.net support request #3213272.
* Fix whitespace and formatting of the manpage XML sourceNikolaus Schulz2011-07-051-158/+238
|
* Manpage & changelog: document support for international IMAP mailbox namesNikolaus Schulz2011-07-052-0/+10
|
* IMAP: add support for non-ascii mailbox namesNikolaus Schulz2011-07-052-1/+135
|
* test suite: let FixedGzipFile.seek() pass on what gzip.GzipFile.seek() returnedNikolaus Schulz2011-06-182-2/+7
| | | | | | | | | | | | | | | This fixes test suite failures with Python 2.7. Starting with Python 2.7, gzip.GzipFile is subclassing io.IOBase. The seek() method of io.IOBase differs from file.seek() and the old gzip.GzipFile.seek() in that it returns the new file position, not None. And in Python 2.7, gzip.GzipFile.tell() is inherited from io.IOBase.tell(), which is implemented using its seek() method. FixedGzipFile subclasses gzip.GzipFile and overrides seek(); therefore, this method need be adapted for this change in the interface. Closes: #3314293.
* Makefile: remove obsolete rulesNikolaus Schulz2011-03-281-11/+1
| | | | | | | | | | | * docbook2{man,html} used to generate temporary files; the new XML tool xsltproc does not, so we can drop the corresponding cleanup rule. * The `bdist_rpm' rule for building rpm packages was broken for a long time, and therefore commented out. The distutils bug that broke the rule is now fixed, but I'm removing the rule nevertheless because it's useless. * The `upload' rule no longer works; drop it. * Update .PHONY
* Add .gitignore, ignoring auto-generated filesNikolaus Schulz2011-03-281-0/+3
|
* Update changelogNikolaus Schulz2011-03-281-0/+6
|
* Manpage & webpage CSS: drop font selectionsNikolaus Schulz2011-03-281-5/+0
| | | | | There's no need to tell the visitor which fonts to use; she knows best what she likes, so let her decide.
* Manpage: lots of cleanup and fixes in the XML and formattingNikolaus Schulz2011-03-285-209/+224
|
* Remove manpage, there is no need to keep an auto-generated file aroundNikolaus Schulz2011-03-281-886/+0
|
* manpage: define proper "manual" and "source" stringsNikolaus Schulz2011-01-072-4/+5
|
* Port man page from SGML to XMLNikolaus Schulz2010-12-298-1206/+1582
|
* IMAP: don't collect statistics data when run with --quiet optionNikolaus Schulz2010-12-261-1/+1
| | | | This gives a significant operation speedup in quiet mode.
* Fix typo in the manpageNikolaus Schulz2010-12-261-1/+1
|
* setup.py: install manpage into share/man/man1 instead of man/man1Nikolaus Schulz2010-11-281-1/+1
| | | | | This change aims to comply with the FHS, which puts manpages into /usr/share/man, not /usr/man.
* Default options.debug_imap to 0 again, not FalseNikolaus Schulz2010-11-121-1/+1
| | | | | This was overdone when switching from integers to booleans. Here 0 and False are in fact probably equivalent, but it's still a bug.
* Update changelog and prepare 0.8.2 releaseNikolaus Schulz2010-10-164-4/+9
|
* IMAP: don't prepend NAMESPACE prefix to INBOX and its childrenNikolaus Schulz2010-10-161-4/+12
|
* Update changelog and prepare 0.8.1 releaseNikolaus Schulz2010-09-304-4/+9
|
* IMAP: correctly handle IMAP `literal' and unquoted `astring' in LIST replyNikolaus Schulz2010-09-262-6/+55
| | | | | | | | | | | | The LIST reply handling in imap_find_mailboxes() was buggy in several ways. It expected a non-NIL hierarchy delimiter, and it assumed that the mailbox name in a LIST reply is always quoted; but it can be an astring, a quoted string, or a literal (see RFC 3501 for the definitions of these tokens). These variants should now all be interpreted correctly. In addition, quoted mailbox names are now handled more strictly to the letter of the RFC; this only affects mailbox names containing a " or a backslash, though.
* Releasing 0.8.0: fix release date in the changelog, and update the project ↵Nikolaus Schulz2010-08-092-3/+3
| | | | web page
* MANIFEST.in: distribute NEWSNikolaus Schulz2010-08-091-0/+1
|
* Add new file NEWS, gathering noteworthy changes from the changelogNikolaus Schulz2010-08-091-0/+39
|
* Remove release notesNikolaus Schulz2010-08-091-44/+0
| | | | This file is not really suitable to put into a revision control system.
* Regenerate manpage from sgml sourceNikolaus Schulz2010-08-091-1/+15
|
* Manpage, TODO, CHANGELOG: document and record wildcard expansion in IMAP ↵Nikolaus Schulz2010-08-093-3/+21
| | | | mailbox names
* Expand wildcards in IMAP mailbox namesNikolaus Schulz2010-08-091-127/+133
| | | | | | | The only non-obvious code change required for this is due to the fact that computing the archive names has to move into the format-specific archiving functions, because they can no longer be derived from the mailbox name beforehand.
* TODO: drop more obsolete itemsNikolaus Schulz2010-08-081-20/+1
| | | | | | | | In particular: * we no longer use shutil.copy{,2} to write back a changed mbox * having temporary mbox files in the same directory as the originals doesn't make sense anymore since we no longer commit them with rename(2) * the --archive-name option is now implemented
* Regenerate manpage from sgml sourceNikolaus Schulz2010-07-311-12/+42
|
* Manpage: various updatesNikolaus Schulz2010-07-311-16/+50
| | | | | | | Document the --archive-name option, and explain the basic idea of deriving the archive filename from the mailbox earlier and more prominently. Also document how archivemail tries not to create hidden archive files, and remove some obsolete notes.
* New option --archive-name, alias -a, to hard-code the archive filenameNikolaus Schulz2010-07-313-19/+64
|
* test suite: fix buggy test of --suffix and --prefix option parsingNikolaus Schulz2010-07-311-2/+2
|
* test suite: replace some plain assertions with TestCase.assertEqual()Nikolaus Schulz2010-07-311-4/+4
|
* Rename variables in make_archive_name()Nikolaus Schulz2010-07-311-6/+6
| | | | | Archive name prefixes may contain path components, thus renaming some variables accordingly.
* Don't create hidden archives when archiving mailboxes with leading dots in ↵Nikolaus Schulz2010-07-313-0/+30
| | | | | | | | the name When archiving a mailbox with leading dots in the name and no archive name prefix specified, strip the dots off the archive name. This is targeting Maildir++ subfolders.
* Only use the default archive name suffix when the user specified no affixNikolaus Schulz2010-07-312-12/+41
| | | | Also add more archive name affix testing to the test suite.
* New option --archive-prefix, alias -pNikolaus Schulz2010-07-314-13/+70
| | | | | | | | | | | Technically, this works just like the --suffix option. This commit also updates the manpage accordingly. Currently, the prefix is not checked for slashes, so it could contain path components. (The same applies for the suffix, btw). Since the expanded string is prepended to the archive base name, this can be used to dynamically configure the archive directory, depending on the archive cutoff date. I'm not sure if this can be considered a reasonable feature, though.
* Detect and never archive IMAP server pseudo mbox messagesNikolaus Schulz2010-07-303-0/+31
| | | | | | | IMAP servers (Dovecot and UW-IMAP at least) may store mailbox meta data for mboxes in a pseudo message. Such messages are now detected and never archived. This commit includes a test case in the test suite.
* Give the changelog some more loveNikolaus Schulz2010-07-301-14/+24
| | | | Add references to bug numbers and be more verbose.
* test suite: test unlocking an mbox after dotlocking failed with EACCESNikolaus Schulz2010-07-301-0/+1
|
* Fix crash when unlocking an mbox after dotlocking failed with EACCESNikolaus Schulz2010-07-301-1/+4
| | | | | | If we don't have sufficient permissions to create a dotlock for an mbox file, record that, and don't try to remove the dotlock when unlocking the mbox later.
* index.html: reword pointer to the Suse Build Service to be more genericNikolaus Schulz2010-07-301-2/+2
| | | | | Better don't write "soon there will be... <foo>" and don't be specific about available versions. Writing it more generically means lesser maintenance. :)
* Regenerate manpage from the sgml sourceNikolaus Schulz2010-07-301-8/+2
|
* Updated the manpage dateNikolaus Schulz2010-07-301-1/+1
|
* Document in the manpage that archivemail locks the archive mboxNikolaus Schulz2010-07-301-0/+1
|
* Remove the notes about setuid support from the manpageNikolaus Schulz2010-07-291-13/+0
| | | | This feature has been removed.
* Replace distutils MANIFEST with MANIFEST.in templateNikolaus Schulz2010-07-292-12/+9
| | | | | Recent distutils versions always generate a new MANIFEST, overwriting our custom one. See Python bug #8688.
* Rename archivemail.py to archivemailNikolaus Schulz2010-07-295-17/+8
| | | | | | | | | On Unix, most scripts don't come with a file extension, it's not needed, and we distribute the script as "archivemail" anyway. And most importantly, I like it better without the extension. :) With a little trick we can still load the script as a module from the test suite.
* README: drop warning that the test suite is slowNikolaus Schulz2010-07-291-1/+0
| | | | With the recent optimizations of the test suite, it has become quite fast.