GH-69564: Clarify use of octal format of mode argument in help(os.chmod) (#20621)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
This commit is contained in:
amaajemyfren 2022-12-21 20:48:25 +03:00 committed by GitHub
parent d713c54ac8
commit bbf4a66a18
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 23 additions and 3 deletions

View File

@ -0,0 +1 @@
Clarify use of octal format of mode argument in help(os.chmod) as well as help(os.fchmod)

View File

@ -501,6 +501,9 @@ PyDoc_STRVAR(os_chmod__doc__,
" If this functionality is unavailable, using it raises an exception.\n" " If this functionality is unavailable, using it raises an exception.\n"
" mode\n" " mode\n"
" Operating-system mode bitfield.\n" " Operating-system mode bitfield.\n"
" Be careful when using number literals for *mode*. The conventional UNIX notation for\n"
" numeric modes uses an octal base, which needs to be indicated with a ``0o`` prefix in\n"
" Python.\n"
" dir_fd\n" " dir_fd\n"
" If not None, it should be a file descriptor open to a directory,\n" " If not None, it should be a file descriptor open to a directory,\n"
" and path should be relative; path will then be relative to that\n" " and path should be relative; path will then be relative to that\n"
@ -602,6 +605,14 @@ PyDoc_STRVAR(os_fchmod__doc__,
"\n" "\n"
"Change the access permissions of the file given by file descriptor fd.\n" "Change the access permissions of the file given by file descriptor fd.\n"
"\n" "\n"
" fd\n"
" The file descriptor of the file to be modified.\n"
" mode\n"
" Operating-system mode bitfield.\n"
" Be careful when using number literals for *mode*. The conventional UNIX notation for\n"
" numeric modes uses an octal base, which needs to be indicated with a ``0o`` prefix in\n"
" Python.\n"
"\n"
"Equivalent to os.chmod(fd, mode)."); "Equivalent to os.chmod(fd, mode).");
#define OS_FCHMOD_METHODDEF \ #define OS_FCHMOD_METHODDEF \
@ -11549,4 +11560,4 @@ exit:
#ifndef OS_WAITSTATUS_TO_EXITCODE_METHODDEF #ifndef OS_WAITSTATUS_TO_EXITCODE_METHODDEF
#define OS_WAITSTATUS_TO_EXITCODE_METHODDEF #define OS_WAITSTATUS_TO_EXITCODE_METHODDEF
#endif /* !defined(OS_WAITSTATUS_TO_EXITCODE_METHODDEF) */ #endif /* !defined(OS_WAITSTATUS_TO_EXITCODE_METHODDEF) */
/*[clinic end generated code: output=04fd23c89ab41f75 input=a9049054013a1b77]*/ /*[clinic end generated code: output=41eab6c3523792a9 input=a9049054013a1b77]*/

View File

@ -3173,6 +3173,9 @@ os.chmod
mode: int mode: int
Operating-system mode bitfield. Operating-system mode bitfield.
Be careful when using number literals for *mode*. The conventional UNIX notation for
numeric modes uses an octal base, which needs to be indicated with a ``0o`` prefix in
Python.
* *
@ -3198,7 +3201,7 @@ dir_fd and follow_symlinks may not be implemented on your platform.
static PyObject * static PyObject *
os_chmod_impl(PyObject *module, path_t *path, int mode, int dir_fd, os_chmod_impl(PyObject *module, path_t *path, int mode, int dir_fd,
int follow_symlinks) int follow_symlinks)
/*[clinic end generated code: output=5cf6a94915cc7bff input=989081551c00293b]*/ /*[clinic end generated code: output=5cf6a94915cc7bff input=674a14bc998de09d]*/
{ {
int result; int result;
@ -3328,7 +3331,12 @@ os_chmod_impl(PyObject *module, path_t *path, int mode, int dir_fd,
os.fchmod os.fchmod
fd: int fd: int
The file descriptor of the file to be modified.
mode: int mode: int
Operating-system mode bitfield.
Be careful when using number literals for *mode*. The conventional UNIX notation for
numeric modes uses an octal base, which needs to be indicated with a ``0o`` prefix in
Python.
Change the access permissions of the file given by file descriptor fd. Change the access permissions of the file given by file descriptor fd.
@ -3337,7 +3345,7 @@ Equivalent to os.chmod(fd, mode).
static PyObject * static PyObject *
os_fchmod_impl(PyObject *module, int fd, int mode) os_fchmod_impl(PyObject *module, int fd, int mode)
/*[clinic end generated code: output=afd9bc05b4e426b3 input=8ab11975ca01ee5b]*/ /*[clinic end generated code: output=afd9bc05b4e426b3 input=b5594618bbbc22df]*/
{ {
int res; int res;
int async_err = 0; int async_err = 0;