diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2019-07-13 14:59:48 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-13 14:59:48 (GMT) |
commit | b815669c833c543b0f6696c3121a179f6b2383a6 (patch) | |
tree | 830de55213d7082b1e11d204169dd826baede675 /Doc | |
parent | 143672cf028740fc549e532c049559c522930c95 (diff) | |
download | cpython-b815669c833c543b0f6696c3121a179f6b2383a6.zip cpython-b815669c833c543b0f6696c3121a179f6b2383a6.tar.gz cpython-b815669c833c543b0f6696c3121a179f6b2383a6.tar.bz2 |
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
(cherry picked from commit e44184749c2fd0921867ea5cd20b8e226c2146c2)
Co-authored-by: Sviatoslav Sydorenko <wk@sydorenko.org.ua>
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/library/mailbox.rst | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Doc/library/mailbox.rst b/Doc/library/mailbox.rst index d901ad2..f82a3b2 100644 --- a/Doc/library/mailbox.rst +++ b/Doc/library/mailbox.rst @@ -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 |