diff --git a/Doc/c-api/sys.rst b/Doc/c-api/sys.rst index 252bd1ad060..9760dca2df1 100644 --- a/Doc/c-api/sys.rst +++ b/Doc/c-api/sys.rst @@ -61,12 +61,6 @@ accessible to C code. They all work with the current interpreter thread's Return the object *name* from the :mod:`sys` module or *NULL* if it does not exist, without setting an exception. -.. c:function:: FILE *PySys_GetFile(char *name, FILE *def) - - Return the :c:type:`FILE*` associated with the object *name* in the - :mod:`sys` module, or *def* if *name* is not in the module or is not associated - with a :c:type:`FILE*`. - .. c:function:: int PySys_SetObject(char *name, PyObject *v) Set *name* in the :mod:`sys` module to *v* unless *v* is *NULL*, in which diff --git a/Doc/data/refcounts.dat b/Doc/data/refcounts.dat index c7d7bd140af..b5dde333647 100644 --- a/Doc/data/refcounts.dat +++ b/Doc/data/refcounts.dat @@ -1310,10 +1310,6 @@ PySys_AddWarnOption:char*:s:: PySys_AddXOption:void::: PySys_AddXOption:const wchar_t*:s:: -PySys_GetFile:FILE*::: -PySys_GetFile:char*:name:: -PySys_GetFile:FILE*:def:: - PySys_GetObject:PyObject*::0: PySys_GetObject:char*:name:: diff --git a/Doc/extending/embedding.rst b/Doc/extending/embedding.rst index d004d244c4d..ccbe6818f67 100644 --- a/Doc/extending/embedding.rst +++ b/Doc/extending/embedding.rst @@ -58,6 +58,7 @@ perform some operation on a file. :: int main(int argc, char *argv[]) { + Py_SetProgramName(argv[0]); /* optional but recommended */ Py_Initialize(); PyRun_SimpleString("from time import time,ctime\n" "print('Today is', ctime(time()))\n"); @@ -65,14 +66,18 @@ perform some operation on a file. :: return 0; } -The above code first initializes the Python interpreter with -:c:func:`Py_Initialize`, followed by the execution of a hard-coded Python script -that print the date and time. Afterwards, the :c:func:`Py_Finalize` call shuts -the interpreter down, followed by the end of the program. In a real program, -you may want to get the Python script from another source, perhaps a text-editor -routine, a file, or a database. Getting the Python code from a file can better -be done by using the :c:func:`PyRun_SimpleFile` function, which saves you the -trouble of allocating memory space and loading the file contents. +Function :c:func:`Py_SetProgramName` should be called before +:c:func:`Py_Initialize` to inform the interpreter about paths to +Python run-time libraries. Next initialize the Python interpreter +with :c:func:`Py_Initialize`, followed by the execution of a +hard-coded Python script that prints the date and time. Afterwards, +the :c:func:`Py_Finalize` call shuts the interpreter down, followed by +the end of the program. In a real program, you may want to get the +Python script from another source, perhaps a text-editor routine, a +file, or a database. Getting the Python code from a file can better +be done by using the :c:func:`PyRun_SimpleFile` function, which saves +you the trouble of allocating memory space and loading the file +contents. .. _lower-level-embedding: diff --git a/Doc/library/ctypes.rst b/Doc/library/ctypes.rst index 3c602c8a25f..3887ee19b85 100644 --- a/Doc/library/ctypes.rst +++ b/Doc/library/ctypes.rst @@ -1155,8 +1155,8 @@ testing. Try it out with ``import __hello__`` for example. Surprises ^^^^^^^^^ -There are some edges in :mod:`ctypes` where you may be expect something else than -what actually happens. +There are some edges in :mod:`ctypes` where you might expect something other +than what actually happens. Consider the following example:: diff --git a/Misc/NEWS b/Misc/NEWS index bd6cd80a47a..44f5864d828 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -61,6 +61,8 @@ Core and Builtins - Issue #15368: An issue that caused bytecode generation to be non-deterministic when using randomized hashing (-R) has been fixed. +- Issue #16369: Global PyTypeObjects not initialized with PyType_Ready(...). + - Issue #15020: The program name used to search for Python's path is now "python3" under Unix, not "python". diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c index 314bafd1e7d..54c1343e2a5 100644 --- a/Modules/_collectionsmodule.c +++ b/Modules/_collectionsmodule.c @@ -1019,7 +1019,7 @@ static PyMethodDef deque_methods[] = { }; PyDoc_STRVAR(deque_doc, -"deque(iterable[, maxlen]) --> deque object\n\ +"deque([iterable[, maxlen]]) --> deque object\n\ \n\ Build an ordered collection with optimized access from its endpoints.");