summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/library/socket.rst16
-rw-r--r--Doc/library/sysconfig.rst2
-rw-r--r--Lib/inspect.py2
-rwxr-xr-xLib/keyword.py2
-rw-r--r--Lib/locale.py3
-rwxr-xr-xLib/symbol.py2
-rwxr-xr-xLib/test/regrtest.py18
-rwxr-xr-xLib/token.py2
-rw-r--r--Misc/ACKS1
-rw-r--r--Misc/NEWS3
-rw-r--r--Misc/python.man2
11 files changed, 37 insertions, 16 deletions
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index 17a99e2..f507958 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -64,20 +64,20 @@ Socket addresses are represented as follows:
tuple, and the fields depend on the address type. The general tuple form is
``(addr_type, v1, v2, v3 [, scope])``, where:
- - *addr_type* is one of TIPC_ADDR_NAMESEQ, TIPC_ADDR_NAME, or
- TIPC_ADDR_ID.
- - *scope* is one of TIPC_ZONE_SCOPE, TIPC_CLUSTER_SCOPE, and
- TIPC_NODE_SCOPE.
- - If *addr_type* is TIPC_ADDR_NAME, then *v1* is the server type, *v2* is
+ - *addr_type* is one of :const:`TIPC_ADDR_NAMESEQ`, :const:`TIPC_ADDR_NAME`,
+ or :const:`TIPC_ADDR_ID`.
+ - *scope* is one of :const:`TIPC_ZONE_SCOPE`, :const:`TIPC_CLUSTER_SCOPE`, and
+ :const:`TIPC_NODE_SCOPE`.
+ - If *addr_type* is :const:`TIPC_ADDR_NAME`, then *v1* is the server type, *v2* is
the port identifier, and *v3* should be 0.
- If *addr_type* is TIPC_ADDR_NAMESEQ, then *v1* is the server type, *v2*
+ If *addr_type* is :const:`TIPC_ADDR_NAMESEQ`, then *v1* is the server type, *v2*
is the lower port number, and *v3* is the upper port number.
- If *addr_type* is TIPC_ADDR_ID, then *v1* is the node, *v2* is the
+ If *addr_type* is :const:`TIPC_ADDR_ID`, then *v1* is the node, *v2* is the
reference, and *v3* should be set to 0.
- If *addr_type* is TIPC_ADDR_ID, then *v1* is the node, *v2* is the
+ If *addr_type* is :const:`TIPC_ADDR_ID`, then *v1* is the node, *v2* is the
reference, and *v3* should be set to 0.
- A tuple ``(interface, )`` is used for the :const:`AF_CAN` address family,
diff --git a/Doc/library/sysconfig.rst b/Doc/library/sysconfig.rst
index 5b2509a..c47dcce 100644
--- a/Doc/library/sysconfig.rst
+++ b/Doc/library/sysconfig.rst
@@ -130,7 +130,7 @@ identifier. Python currently uses eight paths:
one may call this function and get the default value.
If *scheme* is provided, it must be a value from the list returned by
- :func:`get_path_names`. Otherwise, the default scheme for the current
+ :func:`get_scheme_names`. Otherwise, the default scheme for the current
platform is used.
If *vars* is provided, it must be a dictionary of variables that will update
diff --git a/Lib/inspect.py b/Lib/inspect.py
index 9898b11..c0b67a3 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -482,7 +482,7 @@ def getmodule(object, _filename=None):
return sys.modules.get(modulesbyfile[file])
# Update the filename to module name cache and check yet again
# Copy sys.modules in order to cope with changes while iterating
- for modname, module in sys.modules.items():
+ for modname, module in list(sys.modules.items()):
if ismodule(module) and hasattr(module, '__file__'):
f = module.__file__
if f == _filesbymodname.get(modname, None):
diff --git a/Lib/keyword.py b/Lib/keyword.py
index a3788a6..dad39cc 100755
--- a/Lib/keyword.py
+++ b/Lib/keyword.py
@@ -7,7 +7,7 @@ This file is automatically generated; please don't muck it up!
To update the symbols in this file, 'cd' to the top directory of
the python source tree after building the interpreter and run:
- python Lib/keyword.py
+ ./python Lib/keyword.py
"""
__all__ = ["iskeyword", "kwlist"]
diff --git a/Lib/locale.py b/Lib/locale.py
index d9dbce6..d2a885d 100644
--- a/Lib/locale.py
+++ b/Lib/locale.py
@@ -1598,8 +1598,7 @@ locale_alias = {
# to include every locale up to Windows Vista.
#
# NOTE: this mapping is incomplete. If your language is missing, please
-# submit a bug report to Python bug manager, which you can find via:
-# http://www.python.org/dev/
+# submit a bug report to the Python bug tracker at http://bugs.python.org/
# Make sure you include the missing language identifier and the suggested
# locale code.
#
diff --git a/Lib/symbol.py b/Lib/symbol.py
index e3fff34..679e5c8 100755
--- a/Lib/symbol.py
+++ b/Lib/symbol.py
@@ -7,7 +7,7 @@
# To update the symbols in this file, 'cd' to the top directory of
# the python source tree after building the interpreter and run:
#
-# python Lib/symbol.py
+# ./python Lib/symbol.py
#--start constants--
single_input = 256
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index cfae1f0..af11416 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -177,6 +177,7 @@ import packaging.database
import platform
import random
import re
+import shutil
import signal
import sys
import sysconfig
@@ -1042,6 +1043,23 @@ class saved_test_environment:
asyncore.close_all(ignore_all=True)
asyncore.socket_map.update(saved_map)
+ def get_shutil_archive_formats(self):
+ # we could call get_archives_formats() but that only returns the
+ # registry keys; we want to check the values too (the functions that
+ # are registered)
+ return shutil._ARCHIVE_FORMATS, shutil._ARCHIVE_FORMATS.copy()
+ def restore_shutil_archive_formats(self, saved):
+ shutil._ARCHIVE_FORMATS = saved[0]
+ shutil._ARCHIVE_FORMATS.clear()
+ shutil._ARCHIVE_FORMATS.update(saved[1])
+
+ def get_shutil_unpack_formats(self):
+ return shutil._UNPACK_FORMATS, shutil._UNPACK_FORMATS.copy()
+ def restore_shutil_unpack_formats(self, saved):
+ shutil._UNPACK_FORMATS = saved[0]
+ shutil._UNPACK_FORMATS.clear()
+ shutil._UNPACK_FORMATS.update(saved[1])
+
def get_logging__handlers(self):
# _handlers is a WeakValueDictionary
return id(logging._handlers), logging._handlers, logging._handlers.copy()
diff --git a/Lib/token.py b/Lib/token.py
index 7e2bfcf..7ddd35e 100755
--- a/Lib/token.py
+++ b/Lib/token.py
@@ -7,7 +7,7 @@ __all__ = ['tok_name', 'ISTERMINAL', 'ISNONTERMINAL', 'ISEOF']
# To update the symbols in this file, 'cd' to the top directory of
# the python source tree after building the interpreter and run:
#
-# python Lib/token.py
+# ./python Lib/token.py
#--start constants--
ENDMARKER = 0
diff --git a/Misc/ACKS b/Misc/ACKS
index b8e5881..70a42e2 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -978,6 +978,7 @@ Frank J. Tobin
Bennett Todd
R Lindsay Todd
Eugene Toder
+Erik Tollerud
Matias Torchinsky
Sandro Tosi
Richard Townsend
diff --git a/Misc/NEWS b/Misc/NEWS
index 14bf253..5132f8c 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -399,6 +399,9 @@ Core and Builtins
Library
-------
+- Issue #13487: Make inspect.getmodule robust against changes done to
+ sys.modules while it is iterating over it.
+
- Issue #12618: Fix a bug that prevented py_compile from creating byte
compiled files in the current directory. Initial patch by Sjoerd de Vries.
diff --git a/Misc/python.man b/Misc/python.man
index 1b37d0c..eaa3ec7 100644
--- a/Misc/python.man
+++ b/Misc/python.man
@@ -409,7 +409,7 @@ Main website: http://www.python.org/
.br
Documentation: http://docs.python.org/py3k/
.br
-Developer resources: http://www.python.org/dev/
+Developer resources: http://docs.python.org/devguide/
.br
Downloads: http://python.org/download/
.br