cpython/Lib
Victor Stinner 318f5df271
gh-110167: Fix test_socket deadlock in doCleanups() (#110416)
Fix a deadlock in test_socket when server fails with a timeout but
the client is still running in its thread. Don't hold a lock to call
cleanup functions in doCleanups(). One of the cleanup function waits
until the client completes, whereas the client could deadlock if it
called addCleanup() in such situation.

doCleanups() is called when the server completed, but the client can
still be running in its thread especially if the server failed with a
timeout. Don't put a lock on doCleanups() to prevent deadlock between
addCleanup() called in the client and doCleanups() waiting for
self.done.wait of ThreadableTest._setUp().
2023-10-05 20:53:03 +02:00
..
__phello__
asyncio gh-109955 : Update state transition comments for asyncio.Task (#109910) 2023-09-27 15:24:10 -07:00
collections gh-108751: Add copy.replace() function (GH-108752) 2023-09-06 23:55:42 +03:00
concurrent gh-109649: Use os.process_cpu_count() (#110165) 2023-10-01 03:14:57 +02:00
ctypes gh-105751: test_ctypes avoids "from ctypes import *" (#105768) 2023-06-14 03:34:11 +00:00
curses gh-60436: fix curses textbox backspace/del (#103783) 2023-04-26 22:54:07 +02:00
dbm
email gh-106186: Don't report MultipartInvariantViolationDefect for valid multipart emails when parsing header only (#107016) 2023-07-23 12:25:18 +02:00
encodings gh-98433: Fix quadratic time idna decoding. (#99092) 2022-11-07 16:54:41 -08:00
ensurepip gh-106774: Update bundled pip version to 23.2.1 (#106775) 2023-07-25 10:59:25 +01:00
html gh-100210: Correct the comment link for unescaping HTML (#100212) 2023-02-19 11:18:12 +01:00
http gh-109096: Deprecate http.server.CGIHTTPRequestHandler (#109387) 2023-09-15 14:26:45 -07:00
idlelib IDLE: Condense run.main threading.Thread start. (#106125) 2023-06-27 13:12:56 -04:00
importlib GH-105848: Replace KW_NAMES + CALL with LOAD_CONST + CALL_KW (GH-109300) 2023-09-13 10:25:45 -07:00
json Revert "GH-96145: Add AttrDict to JSON module for use with object_hook (#96146)" (#105948) 2023-06-26 20:35:53 +02:00
logging gh-109461: Update logging module lock to use context manager (#109462) 2023-09-27 18:26:41 +02:00
multiprocessing gh-109649: Use os.process_cpu_count() (#110165) 2023-10-01 03:14:57 +02:00
pydoc_data Python 3.12.0b1 2023-05-22 14:07:36 +02:00
re gh-56166: Deprecate passing confusing positional arguments in re functions (#107778) 2023-08-16 13:35:35 -07:00
site-packages
sqlite3 gh-109151: Enable readline in the sqlite3 CLI (GH-109152) 2023-10-04 14:16:44 +03:00
test gh-110167: Fix test_socket deadlock in doCleanups() (#110416) 2023-10-05 20:53:03 +02:00
tkinter gh-72684: Tkinter: provide interface for "tk busy" subcommands (GH-107684) 2023-08-19 14:48:02 +03:00
tomllib
turtledemo Rewrite the turtledemo makeGraphFrame method (#104224) 2023-05-06 11:09:08 -04:00
unittest gh-106584: Fix exit code for unittest in Python 3.12 (#106588) 2023-09-22 14:26:27 +02:00
urllib GH-104554: Add RTSPS support to urllib/parse.py (#104605) 2023-06-13 16:45:47 -07:00
venv GH-83417: Allow venv to add a .gitignore file to environments via a new scm_ignore_file parameter (GH-108125) 2023-09-15 22:38:08 +00:00
wsgiref bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
xml gh-50002: xml.dom.minidom now preserves whitespaces in attributes (GH-107947) 2023-08-23 15:23:41 +03:00
xmlrpc xmlrpc.client uses datetime.datetime.isoformat() (#105741) 2023-06-14 17:00:40 +02:00
zipfile gh-88233: zipfile: refactor _strip_extra (#102084) 2023-09-25 19:46:58 -04:00
zoneinfo Fix typos in documentation and comments (GH-102374) 2023-03-02 07:26:49 -08:00
__future__.py gh-93626: Set the release for __future__.annotations to None (GH-93628) 2022-07-05 10:46:39 +02:00
__hello__.py
_aix_support.py gh-96305: Fix AIX build by avoiding subprocess during bootstrap (#96429) 2023-02-02 12:30:49 -08:00
_collections_abc.py gh-91896: Deprecate collections.abc.ByteString (#102096) 2023-05-04 09:39:33 -07:00
_compat_pickle.py gh-75552: Remove deprecated tkinter.tix module (GH-104902) 2023-05-27 12:34:19 -05:00
_compression.py
_markupbase.py
_opcode_metadata.py GH-105848: Replace KW_NAMES + CALL with LOAD_CONST + CALL_KW (GH-109300) 2023-09-13 10:25:45 -07:00
_osx_support.py
_py_abc.py
_pydatetime.py gh-109495: Remove unused slots from the Python implementation of datetime (GH-109494) 2023-09-29 19:57:32 +03:00
_pydecimal.py gh-86682: Adds sys._getframemodulename as an alternative to using _getframe (GH-99520) 2023-01-13 11:31:06 +00:00
_pyio.py gh-62948: IOBase finalizer logs close() errors (#105104) 2023-05-31 11:41:19 +00:00
_pylong.py gh-102515: Remove unused imports in the Lib/ directory (#102516) 2023-03-08 11:45:38 +00:00
_sitebuiltins.py
_strptime.py GH-90750: Use datetime.fromisocalendar in _strptime (#103802) 2023-04-27 10:27:27 -06:00
_threading_local.py
_weakrefset.py
abc.py gh-87864: Use correct function definition syntax in the docs (#103312) 2023-04-11 16:50:25 +03:00
antigravity.py
argparse.py gh-109653: Defer importing warnings in several modules (#110286) 2023-10-04 06:09:43 +01:00
ast.py gh-110259: Fix f-strings with multiline expressions and format specs (#110271) 2023-10-05 14:26:44 +01:00
base64.py GH-102456: Fix docstring and getopt options for base64 (gh-102457) 2023-04-02 14:05:50 +09:00
bdb.py gh-101517: fix line number propagation in code generated for except* (#103550) 2023-04-24 21:58:51 +01:00
bisect.py GH-102833: Mention the key function in the docstrings (GH-103009) 2023-03-25 02:19:20 -05:00
bz2.py
calendar.py gh-109653: Defer importing warnings in several modules (#110286) 2023-10-04 06:09:43 +01:00
cmd.py
code.py gh-102778: Add sys.last_exc, deprecate sys.last_type, sys.last_value,sys.last_traceback (#102779) 2023-03-18 11:47:11 +00:00
codecs.py gh-66143: Allow copying and pickling of CodecInfo object (GH-109235) 2023-09-29 20:07:09 +03:00
codeop.py Remove dead code in codeop.py (#105263) 2023-06-05 18:14:10 +02:00
colorsys.py gh-106498: Revert incorrect colorsys.rgb_to_hls change (#106627) 2023-07-11 11:07:20 -04:00
compileall.py GH-84559: Deprecate fork being the multiprocessing default. (#100618) 2023-02-02 15:50:35 -08:00
configparser.py Fix typo in configparser module docstring (#105652) 2023-06-11 15:06:42 +01:00
contextlib.py gh-102799: use sys.exception() instead of sys.exc_info() in contextlib (#103311) 2023-07-20 14:41:32 +05:30
contextvars.py
copy.py gh-109868: Skip deepcopy memo check for empty memo (GH-109869) 2023-09-29 10:28:01 +03:00
copyreg.py gh-99325: Remove unused NameError handling (#99326) 2022-11-11 09:56:57 +00:00
cProfile.py gh-103935: Use io.open_code() when executing code in trace and profile modules (GH-103947) 2023-04-27 20:29:35 +00:00
csv.py gh-67230: add quoting rules to csv module (GH-29469) 2023-04-12 15:32:30 -07:00
dataclasses.py gh-110273: dataclasses.replace() now raise TypeError for all invalid arguments (GH-110274) 2023-10-04 09:20:14 +03:00
datetime.py gh-84976: Add back UTC to datetime.__all__ (#104920) 2023-05-25 11:18:56 -04:00
decimal.py
difflib.py
dis.py Add --inline-caches flag to dis command line (#110249) 2023-10-03 00:49:34 +00:00
doctest.py gh-108794: doctest counts skipped tests (#108795) 2023-09-02 16:42:07 +02:00
enum.py gh-109653: Improve enum import time by avoiding import of functools (GH-109789) 2023-09-23 11:31:17 -07:00
filecmp.py
fileinput.py gh-101961 fileinput.hookcompressed should not set the encoding value for the binary mode (gh-102068) 2023-02-21 12:10:29 +09:00
fnmatch.py
fractions.py gh-101825: Clarify that as_integer_ratio() output is always normalized (#101843) 2023-02-27 19:11:28 +00:00
ftplib.py bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
functools.py gh-109653: Avoid a top-level import of types in functools (#109804) 2023-09-24 17:18:27 +01:00
genericpath.py gh-101196: Make isdir/isfile/exists faster on Windows (GH-101324) 2023-02-08 14:34:24 +00:00
getopt.py
getpass.py gh-109653: Defer importing warnings in several modules (#110286) 2023-10-04 06:09:43 +01:00
gettext.py gh-62519: Make pgettext search plurals when translation is not found (#107118) 2023-07-23 16:08:28 +02:00
glob.py
graphlib.py
gzip.py gh-108111: Flush gzip write buffer before seeking, fixing bad writes (#108341) 2023-08-24 10:23:01 +02:00
hashlib.py gh-99108: Refactor _sha256 & _sha512 into _sha2. (#101924) 2023-02-15 22:08:20 -08:00
heapq.py
hmac.py
imaplib.py gh-94172: Remove keyfile, certfile and check_hostname parameters (#94173) 2022-11-03 18:32:25 +01:00
inspect.py gh-108751: Add copy.replace() function (GH-108752) 2023-09-06 23:55:42 +03:00
io.py
ipaddress.py gh-87799: Improve the textual representation of IPv4-mapped IPv6 addresses (#29345) 2023-07-31 14:33:26 +00:00
keyword.py gh-103763: Implement PEP 695 (#103764) 2023-05-15 20:36:23 -07:00
linecache.py gh-92336: linecache.getline should not raise exceptions on decoding errors (GH-94410) 2022-06-30 10:18:18 +01:00
locale.py gh-104783: locale.getlocale() calls sys.getfilesystemencoding() (#105401) 2023-06-06 18:19:40 +00:00
lzma.py
mailbox.py bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
mimetypes.py bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
modulefinder.py
netrc.py
ntpath.py gh-82367: Use FindFirstFile Win32 API in ntpath.realpath() (GH-110298) 2023-10-05 09:49:07 -05:00
nturl2path.py
numbers.py gh-68163: Correct conversion of Rational instances to float (GH-25619) 2022-09-04 13:15:59 +01:00
opcode.py gh-109039: Branch prediction for Tier 2 interpreter (#109038) 2023-09-11 18:20:24 +00:00
operator.py
optparse.py
os.py gh-109649: Add os.process_cpu_count() function (#109907) 2023-10-01 00:12:51 +02:00
pathlib.py GH-107465: Add pathlib.Path.from_uri() classmethod. (#107640) 2023-10-01 16:14:02 +01:00
pdb.py gh-109164: Replace getopt with argparse in pdb (#109165) 2023-09-22 16:55:48 +00:00
pickle.py gh-93627: Align Python implementation of pickle with C implementation of pickle (GH-103035) 2023-09-10 10:06:08 +03:00
pickletools.py
pkgutil.py gh-97850: Deprecate find_loader and get_loader in pkgutil (GH-98520) 2023-05-03 16:11:54 -07:00
platform.py gh-103977: compile re expressions in platform.py only if required (#103981) 2023-04-30 08:36:19 -07:00
plistlib.py gh-101992: update pstlib module documentation (#102133) 2023-03-04 13:35:25 -08:00
poplib.py gh-106200: Remove unused imports (#106201) 2023-06-28 11:55:41 +00:00
posixpath.py gh-101196: Make isdir/isfile/exists faster on Windows (GH-101324) 2023-02-08 14:34:24 +00:00
pprint.py gh-92546: Move pprint benchmark into pyperformance (GH-94613) 2022-07-25 11:30:13 -07:00
profile.py gh-103935: Use io.open_code() when executing code in trace and profile modules (GH-103947) 2023-04-27 20:29:35 +00:00
pstats.py bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
pty.py gh-96522: Fix deadlock in pty.spawn (#96639) 2023-05-19 13:22:43 +00:00
py_compile.py
pyclbr.py
pydoc.py gh-107782: Pydoc: fall back to __text_signature__ if inspect.signature() fails (GH-107786) 2023-08-11 20:51:36 +03:00
queue.py
quopri.py bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
random.py gh-109653: Reduce the import time of random by 60% (#110221) 2023-10-02 22:56:31 +00:00
reprlib.py gh-109818: reprlib.recursive_repr copies __type_params__ (#109819) 2023-09-27 19:26:42 -07:00
rlcompleter.py
runpy.py gh-98040: Remove just the imp module (#98573) 2023-04-28 16:17:58 -07:00
sched.py
secrets.py gh-99305: Speed up secrets.token_hex() ~2x (#99306) 2022-11-11 14:45:24 -08:00
selectors.py gh-110038: KqueueSelector must count all read/write events (#110039) 2023-09-28 17:25:10 +00:00
shelve.py gh-107089: Improve Shelf.clear method performance (gh-107090) 2023-07-29 09:08:11 +09:00
shlex.py bpo-45975: Simplify some while-loops with walrus operator (GH-29347) 2022-11-26 14:33:25 -08:00
shutil.py gh-109653: Defer importing warnings in several modules (#110286) 2023-10-04 06:09:43 +01:00
signal.py
site.py gh-102038: Skip a sometimes unnecessary stat in site.py (#102039) 2023-04-02 15:47:31 -07:00
smtplib.py gh-65495: Use lowercase mail from and rcpt to in smtplib.SMTP (#107019) 2023-07-22 16:46:59 +02:00
socket.py Fix broken link to MSDN (#102355) 2023-03-13 15:15:52 +02:00
socketserver.py gh-103673: Add missing ForkingUnixStreamServer and ForkingUnixDatagramServer socketservers (#103674) 2023-04-24 22:35:52 +00:00
sre_compile.py
sre_constants.py
sre_parse.py
ssl.py gh-109109: Expose retrieving certificate chains in SSL module (#109113) 2023-09-20 01:20:54 +00:00
stat.py gh-108638: Fix stat.filemode() when _stat is missing (#108639) 2023-08-29 15:46:46 +00:00
statistics.py gh-110150: Fix base case handling in quantiles() (gh-110151) 2023-09-30 23:35:54 -05:00
string.py
stringprep.py
struct.py
subprocess.py gh-106723: forward -Xfrozen_modules option to spawned process interpreters (#106724) 2023-07-28 05:04:26 +00:00
symtable.py gh-110045: Update symtable module for PEP 695 (#110066) 2023-09-29 02:08:04 +00:00
sysconfig.py gh-88402: Add new sysconfig variables on Windows (GH-110049) 2023-10-04 22:50:29 +00:00
tabnanny.py gh-102856: Python tokenizer implementation for PEP 701 (#104323) 2023-05-21 01:03:02 +01:00
tarfile.py gh-109653: Defer importing warnings in several modules (#110286) 2023-10-04 06:09:43 +01:00
tempfile.py gh-51574: Make tempfile.mkdtemp() always return absolute paths (#94612) 2023-04-25 16:05:59 +00:00
textwrap.py gh-107369: optimize textwrap.indent() (#107374) 2023-07-29 06:37:23 +00:00
this.py
threading.py gh-109860: Use a New Thread State When Switching Interpreters, When Necessary (gh-110245) 2023-10-03 09:20:48 -06:00
timeit.py gh-105052:update timeit function's description (#105060) 2023-08-27 03:22:27 -04:00
token.py gh-107015: Remove async_hacks from the tokenizer (#107018) 2023-07-26 16:34:15 +01:00
tokenize.py gh-71299: Fix __all__ in tokenize (#105907) 2023-06-19 13:31:57 +02:00
trace.py gh-103935: Use io.open_code() when executing code in trace and profile modules (GH-103947) 2023-04-27 20:29:35 +00:00
traceback.py gh-106922: Fix error location for constructs with spaces and parentheses (#108959) 2023-09-08 17:18:35 +01:00
tracemalloc.py
tty.py gh-85984: New additions and improvements to the tty library. (#101832) 2023-05-19 18:13:30 +00:00
turtle.py no-issue: Capitalise 'PhotoImage' (gh-108958) 2023-09-25 21:37:40 +09:00
types.py gh-109599: Add types.CapsuleType (#109600) 2023-09-25 19:50:39 +02:00
typing.py gh-110180: Remove unused _PickleUsingNameMixin class from typing (#110181) 2023-10-01 16:28:02 +01:00
uuid.py gh-104396: uuid.py to skip platform check for emscripten and wasi (gh-104397) 2023-05-12 07:45:55 +09:00
warnings.py Fix docstring of warnings._deprecated to show correct remove value (#105178) 2023-06-01 08:07:52 +00:00
wave.py gh-105096: Deprecate wave getmarkers() method (#105098) 2023-05-31 12:09:41 +00:00
weakref.py
webbrowser.py gh-105745: Fix open method of webbrowser.Konqueror (#105746) 2023-06-14 12:29:16 +02:00
zipapp.py gh-104527: zippapp will now avoid appending an archive to itself. (gh-106076) 2023-06-26 10:09:08 +01:00
zipimport.py gh-103200: Fix performance issues with zipimport.invalidate_caches() (GH-103208) 2023-07-07 22:02:13 +00:00