mkdir essentially just calls
os.mkdir(). The documentation there includes the section:
On some systems, mode is ignored. Where it is used, the current umask value is first masked out. If bits other than the last 9 (i.e. the last 3 digits of the octal representation of the mode) are set, their meaning is platform-dependent. On some platforms, they are ignored and you should call
chmod()explicitly to set them.
So only the last 9 bits are guaranteed to be used. You'll have to do (no need to set umask):
It would be better if
pathlib would not silently ignore extra bits, but actually threw a ValueError.
* Be the first to Make Comment