diff options
-rw-r--r-- | Doc/library/os.rst | 19 | ||||
-rw-r--r-- | Misc/NEWS | 3 |
2 files changed, 14 insertions, 8 deletions
diff --git a/Doc/library/os.rst b/Doc/library/os.rst index 5f149cb..bf6087e 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -1555,18 +1555,21 @@ features: single: UNC paths; and os.makedirs() Recursive directory creation function. Like :func:`mkdir`, but makes all - intermediate-level directories needed to contain the leaf directory. If - the target directory with the same mode as specified already exists, - raises an :exc:`OSError` exception if *exist_ok* is False, otherwise no - exception is raised. If the directory cannot be created in other cases, - raises an :exc:`OSError` exception. The default *mode* is ``0o777`` (octal). - On some systems, *mode* is ignored. Where it is used, the current umask - value is first masked out. + intermediate-level directories needed to contain the leaf directory. + + The default *mode* is ``0o777`` (octal). On some systems, *mode* is + ignored. Where it is used, the current umask value is first masked out. + + If *exists_ok* is ``False`` (the default), an :exc:`OSError` is raised if + the target directory already exists. If *exists_ok* is ``True`` an + :exc:`OSError` is still raised if the umask-masked *mode* is different from + the existing mode, on systems where the mode is used. :exc:`OSError` will + also be raised if the directory creation fails. .. note:: :func:`makedirs` will become confused if the path elements to create - include :data:`pardir`. + include :data:`pardir` (eg. ".." on UNIX systems). This function handles UNC paths correctly. @@ -4206,6 +4206,9 @@ C-API Documentation ------------- +- Issue #13498: Clarify docs of os.makedirs()'s exist_ok argument. Done with + great native-speaker help from R. David Murray. + - Issues #13491 and #13995: Fix many errors in sqlite3 documentation. Initial patch for #13491 by Johannes Vogel. |