Commit e4418474 authored by Sviatoslav Sydorenko's avatar Sviatoslav Sydorenko Committed by Miss Islington (bot)

bpo-30088: Document that existing dir structure isn't verified by mailbox.Maildir (GH-1163)



Hi,

I've faced an issue w/ `mailbox.Maildir()`. The case is following:
1. I create a folder with `tempfile.TemporaryDirectory()`, so it's empty
2. I pass that folder path as an argument when instantiating `mailbox.Maildir()`
3. Then I receive an exception happening because "there's no such file or directory" (namely `cur`, `tmp` or `new`) during interaction with Maildir

**Expected result:** subdirs are created during `Maildir()` instance creation.

**Actual result:** subdirs are assumed as existing which leads to exceptions during use.

**Workaround:** remove the actual dir before passing the path to `Maildir()`. It will be created automatically with all subdirs needed.

**Fix:** This PR. Basically it adds creation of subdirs regardless of whether the base dir existed before.


https://bugs.python.org/issue30088
parent ed184c06
......@@ -308,6 +308,9 @@ Supported mailbox formats are Maildir, mbox, MH, Babyl, and MMDF.
representation. If *create* is ``True``, the mailbox is created if it does not
exist.
If *create* is ``True`` and the *dirname* path exists, it will be treated as
an existing maildir without attempting to verify its directory layout.
It is for historical reasons that *dirname* is named as such rather than *path*.
Maildir is a directory-based mailbox format invented for the qmail mail
......
......@@ -1613,6 +1613,7 @@ Kalle Svensson
Andrew Svetlov
Paul Swartz
Al Sweigart
Sviatoslav Sydorenko
Thenault Sylvain
Péter Szabó
John Szakmeister
......
Documented that :class:`mailbox.Maildir` constructor doesn't attempt to verify the maildir folder layout correctness. Patch by Sviatoslav Sydorenko.
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment