| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
| |
|
|
|
|
|
| |
There's no need to tell the visitor which fonts to use; she knows best
what she likes, so let her decide.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This gives a significant operation speedup in quiet mode.
|
| |
|
|
|
|
|
| |
This change aims to comply with the FHS, which puts manpages into
/usr/share/man, not /usr/man.
|
|
|
|
|
| |
This was overdone when switching from integers to booleans.
Here 0 and False are in fact probably equivalent, but it's still a bug.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
web page
|
| |
|
| |
|
|
|
|
| |
This file is not really suitable to put into a revision control system.
|
| |
|
|
|
|
| |
mailbox names
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Archive name prefixes may contain path components, thus renaming some
variables accordingly.
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Also add more archive name affix testing to the test suite.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Add references to bug numbers and be more verbose.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Better don't write "soon there will be... <foo>" and don't be specific about
available versions. Writing it more generically means lesser maintenance. :)
|
| |
|
| |
|
| |
|
|
|
|
| |
This feature has been removed.
|
|
|
|
|
| |
Recent distutils versions always generate a new MANIFEST, overwriting our
custom one. See Python bug #8688.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
With the recent optimizations of the test suite, it has become quite fast.
|
| |
|
| |
|
| |
|
| |
|