cpython/Lib
Duane Griffin 9877d191f4
gh-135335: flush stdout/stderr in forkserver after preloading modules (#135338)
If a preloaded module writes to stdout or stderr, and the stream is buffered,
child processes will inherit the buffered data after forking. Attempt to
prevent this by flushing the streams after preload.

Co-authored-by: Mikhail Efimov <efimov.mikhail@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2025-06-18 14:17:02 +02:00
..
__phello__
_pyrepl gh-69605: Disable PyREPL module autocomplete fallback on regular completion (gh-134181) 2025-05-26 01:05:08 +02:00
asyncio gh-135371: Fix asyncio introspection output to include internal coroutine chains (#135436) 2025-06-14 13:48:25 +01:00
collections Fix outdated reference link in collections module (gh-130349) 2025-02-20 23:58:58 +00:00
compression gh-132983: Split `_zstd_set_c_parameters` (#133921) 2025-05-28 14:45:08 +00:00
concurrent gh-134939: Add the concurrent.interpreters Module (gh-133958) 2025-06-11 17:35:48 -06:00
ctypes gh-133866: remove deprecated and undocumented function ctypes.SetPointerType (GH-133869) 2025-05-29 15:28:57 +02:00
curses gh-133575: eliminate legacy checks in Lib/curses/__init__.py (#133576) 2025-05-07 20:28:32 +02:00
dbm gh-134004: Added the reorganize() methods to dbm.sqlite, dbm.dumb and shelve (GH-134028) 2025-06-01 15:30:04 +03:00
email gh-67022: Document bytes/str inconsistency in email.header.decode_header() and suggest email.headerregistry.HeaderRegistry as a sane alternative (#92900) 2025-06-15 15:29:38 -04:00
encodings gh-62824: Add alias for iso-8859-8-i which is the same as iso-8859-8 (gh-134306) 2025-05-20 15:14:02 +02:00
ensurepip gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
html gh-135462: Fix quadratic complexity in processing special input in HTMLParser (GH-135464) 2025-06-13 19:57:48 +03:00
http gh-127319: Disable port reuse on HTTP, XMLRPC, and logging TCP servers (GH-135405) 2025-06-15 06:34:29 +01:00
idlelib gh-129876: Update IDLE News3.txt to May 2025 (#135139) 2025-06-04 11:26:19 -04:00
importlib gh-115942: Add locked to several multiprocessing locks (#115944) 2025-04-08 11:14:12 +03:00
json gh-131884: Fix incorrect formatting in json.dumps() when using indent and skipkeys=True (GH-132200) 2025-06-03 10:40:25 +03:00
logging gh-127319: Disable port reuse on HTTP, XMLRPC, and logging TCP servers (GH-135405) 2025-06-15 06:34:29 +01:00
multiprocessing gh-135335: flush stdout/stderr in forkserver after preloading modules (#135338) 2025-06-18 14:17:02 +02:00
pathlib GH-128520: pathlib ABCs: add JoinablePath.__vfspath__() (#133437) 2025-05-12 19:00:36 +01:00
pydoc_data Python 3.14.0b1 2025-05-06 18:33:52 +03:00
re gh-133306: Support \z as a synonym for \Z in regular expressions (GH-133314) 2025-05-03 07:54:33 +00:00
site-packages
sqlite3 gh-133390: Support SQL keyword completion for sqlite3 CLI (GH-133393) (GH-135292) 2025-06-12 16:28:30 +02:00
string gh-134082: modernize string.Formatter class docstring (#134125) 2025-05-18 10:10:54 +02:00
sysconfig gh-133779: Revert Windows generation of pyconfig.h and go back to a static header. (GH-133966) 2025-05-19 11:35:22 +01:00
test gh-135335: flush stdout/stderr in forkserver after preloading modules (#135338) 2025-06-18 14:17:02 +02:00
tkinter gh-130482: Add ability to specify name for tkinter.OptionMenu and tkinter.ttk.OptionMenu (GH-130502) 2025-05-02 14:38:50 +03:00
tomllib gh-133117: Enable stricter mypy checks for tomllib (#133206) 2025-05-03 16:57:09 +03:00
turtledemo
unittest gh-135368: Fix mocks on dataclass specs with instance=True (#135421) 2025-06-14 09:46:43 +01:00
urllib GH-123599: url2pathname(): don't call gethostbyname() by default (#132610) 2025-05-05 17:03:42 +00:00
venv gh-119535: 3.15 minus π (#134037) 2025-05-15 02:39:42 -07:00
wsgiref gh-133810: remove http.server.CGIHTTPRequestHandler and --cgi flag (#133811) 2025-05-17 09:58:16 +02:00
xml gh-131938: Update exception message for Element.remove() when an element is not found (#131972) 2025-04-04 15:04:07 +00:00
xmlrpc gh-127319: Disable port reuse on HTTP, XMLRPC, and logging TCP servers (GH-135405) 2025-06-15 06:34:29 +01:00
zipfile gh-135276: Refresh zipfile.Path from zipp 3.23 (#135277) 2025-06-08 19:20:20 +00:00
zoneinfo gh-114713: Revert gh-114731 (#133330) 2025-05-03 07:47:08 +00:00
__future__.py
__hello__.py
_aix_support.py
_android_support.py
_apple_support.py
_ast_unparse.py gh-133581: Improve AST unparsing of t-strings (#133635) 2025-05-08 06:13:57 -07:00
_collections_abc.py gh-132491: Rename annotationlib.value_to_string to type_repr (#132492) 2025-04-15 20:10:53 +00:00
_colorize.py gh-133346: Make theming support in _colorize extensible (GH-133347) 2025-05-05 23:45:25 +02:00
_compat_pickle.py gh-133810: remove http.server.CGIHTTPRequestHandler and --cgi flag (#133811) 2025-05-17 09:58:16 +02:00
_ios_support.py
_markupbase.py _markupbase.py: Use a permalink for the analysis of MS-Word extensions (GH-129017) 2025-02-06 11:40:43 +01:00
_opcode_metadata.py GH-134282: Always borrow references LOAD_CONST (GH-134284) 2025-05-20 11:24:11 -04:00
_osx_support.py
_py_abc.py
_py_warnings.py gh-133306: Use \z instead of \Z in regular expressions in the stdlib (GH-133337) 2025-05-03 17:58:49 +03:00
_pydatetime.py gh-126883: Add check that timezone fields are in range for datetime.fromisoformat (#127242) 2025-05-19 14:07:11 -04:00
_pydecimal.py gh-130662: Accept leading zeros in precision/width for Decimal's formatting (#132549) 2025-06-02 15:30:52 +02:00
_pyio.py gh-62184: Remove _pyio import of _io.FileIO (gh-134192) 2025-05-21 17:29:18 +02:00
_pylong.py
_sitebuiltins.py
_strptime.py gh-122781: Allow empty offset for %z in strptime (#132922) 2025-05-20 16:39:58 +00:00
_threading_local.py gh-107006: Move threading.local docstring to docs (#131840) 2025-05-05 15:00:15 +03:00
_weakrefset.py
abc.py
annotationlib.py gh-119180: Only fetch globals and locals if necessary in annotationlib.get_annotations() (#135644) 2025-06-17 20:29:13 -07:00
antigravity.py
argparse.py gh-134970: Fix exception message in argparse module (GH-134971) 2025-06-01 08:56:56 +03:00
ast.py gh-134718: Omit optional Load() values in ast.dump() (GH-134934) 2025-05-31 10:32:53 +03:00
base64.py
bdb.py gh-132536: Do not disable PY_THROW event in bdb (#132537) 2025-04-15 18:31:52 -04:00
bisect.py
bz2.py gh-132983: Introduce compression package and move _compression module (GH-133018) 2025-04-27 14:41:30 -07:00
calendar.py gh-135001: Explicitly specify the encoding parameter value of calendar.HTMLCalendar as 'utf-8' (#135002) 2025-06-09 15:40:09 +02:00
cmd.py gh-133363: Fix Cmd completion for lines beginning with ! (#133364) 2025-05-03 22:50:37 -04:00
code.py gh-135103: Remove an unused local variable in Lib/code.py (GH-135104) 2025-06-04 13:57:31 +09:00
codecs.py gh-133036: Deprecate codecs.open (#133038) 2025-04-30 10:11:09 +09:00
codeop.py gh-132449: Improve syntax error messages for keywords with typos (#132450) 2025-04-22 11:01:55 +02:00
colorsys.py
compileall.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
configparser.py gh-65697: Improved error msg for configparser key validation (#135527) 2025-06-15 12:13:19 -04:00
contextlib.py
contextvars.py
copy.py
copyreg.py gh-132882: Fix copying of unions with members that do not support __or__ (#132883) 2025-04-24 16:49:09 +00:00
cProfile.py gh-132737: Support profiling modules that require __main___ (#132738) 2025-04-24 14:41:01 -04:00
csv.py
dataclasses.py gh-82129: Improve annotations for make_dataclass() (#133406) 2025-05-05 08:21:32 -07:00
datetime.py
decimal.py
difflib.py gh-134580: Modernizing difflib.HtmlDiff for HTML Output (#134581) 2025-05-28 03:46:41 +03:00
dis.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
doctest.py gh-108885: Use subtests for doctest examples run by unittest (GH-134890) 2025-05-31 13:01:46 +03:00
enum.py gh-132684: [Enum] only call _missing_ in __contains__ for Flags (GH-132790) 2025-04-24 23:13:54 -07:00
filecmp.py
fileinput.py
fnmatch.py gh-133306: Use \z instead of \Z in fnmatch.translate() and glob.translate() (GH-133338) 2025-05-03 17:58:21 +03:00
fractions.py gh-130662: Accept leading zeros in precision/width for Fraction's formatting (#130663) 2025-06-02 15:28:20 +02:00
ftplib.py
functools.py gh-125028: Prohibit placeholders in partial keywords (GH-126062) 2025-05-08 10:53:53 +03:00
genericpath.py gh-135034: Normalize link targets in tarfile, add os.path.realpath(strict='allow_missing') (#135037) 2025-06-03 12:42:11 +02:00
getopt.py
getpass.py gh-77065: Use putwch instead of putch in getpass.win_getpass (#134058) 2025-05-15 15:14:31 +00:00
gettext.py gettext: Remove outdated "TODO" comment (#130890) 2025-03-06 23:41:03 +00:00
glob.py GH-128520: pathlib ABCs: add JoinablePath.__vfspath__() (#133437) 2025-05-12 19:00:36 +01:00
graphlib.py gh-130914: Make graphlib.TopologicalSorter.prepare() idempotent (#131317) 2025-03-18 16:28:00 -05:00
gzip.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
hashlib.py gh-134696: align OpenSSL and HACL*-based hash functions constructors AC signatures (#134713) 2025-05-31 09:37:47 +02:00
heapq.py gh-110067: Make max heap methods public and add missing ones (GH-130725) 2025-05-05 17:52:49 +02:00
hmac.py gh-132388: Increase test coverage for HMAC (#132389) 2025-04-12 17:43:11 +00:00
imaplib.py gh-55454: Add IMAP4 IDLE support to imaplib (#122542) 2025-02-06 19:15:11 -08:00
inspect.py gh-132493: Remove __annotations__ usage in inspect._signature_is_functionlike (#133415) 2025-05-09 18:42:53 -07:00
io.py gh-132952: Speed up startup by importing _io instead of io (#132957) 2025-04-28 08:38:56 -07:00
ipaddress.py gh-128840: Fix parsing long IPv6 addresses with embedded IPv4 address (#134836) 2025-05-28 08:24:24 -07:00
keyword.py
linecache.py gh-133253: making linecache thread-safe (#133305) 2025-05-09 12:15:16 +05:30
locale.py gh-133967: Do not normalize locale name 'C.UTF-8' to 'en_US.UTF-8' (#135347) 2025-06-10 13:38:32 +00:00
lzma.py gh-132983: Introduce compression package and move _compression module (GH-133018) 2025-04-27 14:41:30 -07:00
mailbox.py
mimetypes.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
modulefinder.py
netrc.py
ntpath.py gh-135034: Normalize link targets in tarfile, add os.path.realpath(strict='allow_missing') (#135037) 2025-06-03 12:42:11 +02:00
nturl2path.py GH-125866: Deprecate nturl2path module (#131432) 2025-03-19 19:33:01 +00:00
numbers.py
opcode.py gh-131738: optimize builtin any/all/tuple calls with a generator expression arg (#131737) 2025-03-28 10:35:20 +00:00
operator.py
optparse.py
os.py gh-134993: Add os.lstat() to os.supports_dir_fd (#135188) 2025-06-06 14:11:49 +02:00
pdb.py gh-134546: ensure remote pdb script is readable (#134552) 2025-05-23 23:07:39 -04:00
pickle.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
pickletools.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
pkgutil.py gh-131152, pkgutil: Remove unused imports (#131149) 2025-03-12 15:03:36 +01:00
platform.py gh-119132: Remove "experimental" tag from the CPython free-threading. (gh-135550) 2025-06-16 23:32:52 +09:00
plistlib.py
poplib.py gh-130637: Add validation for numeric response data in stat() method (#130646) 2025-03-02 08:05:40 -05:00
posixpath.py gh-135034: Normalize link targets in tarfile, add os.path.realpath(strict='allow_missing') (#135037) 2025-06-03 12:42:11 +02:00
pprint.py gh-90117: handle dict and mapping views in pprint (#30135) 2025-05-20 12:30:00 -07:00
profile.py
pstats.py gh-118761: Improve import time for pstats and zipfile (#128981) 2025-01-23 14:49:36 +00:00
pty.py
py_compile.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
pyclbr.py
pydoc.py gh-125225: Fix column misalignment in help('topics') output (gh-125226) 2025-05-19 16:10:17 +02:00
queue.py
quopri.py
random.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
reprlib.py gh-132493: Avoid eager evaluation of annotations in @reprlib.recursive_repr() (#133411) 2025-05-05 19:20:11 -07:00
rlcompleter.py
runpy.py
sched.py
secrets.py
selectors.py
shelve.py gh-134004: Added the reorganize() methods to dbm.sqlite, dbm.dumb and shelve (GH-134028) 2025-06-01 15:30:04 +03:00
shlex.py gh-118761: Optimise import time for `shlex` (#132036) 2025-04-24 16:10:46 +01:00
shutil.py gh-132983: Add the compression.zstd pacakge and tests (#133365) 2025-05-06 01:38:08 +01:00
signal.py
site.py gh-128066: Properly handle history file writes for RO fs on PyREPL (gh-134380) 2025-05-20 21:47:57 +02:00
smtplib.py
socket.py gh-127840: Revert "gh-127840: pass flags and address from send_fds (GH-127841)" (#134482) 2025-05-22 03:38:44 +00:00
socketserver.py gh-80184: Set getattr(socket, "SOMAXCONN", 5) as the default queue size for TCPServer (GH-134249) 2025-05-19 19:28:09 +00:00
sre_compile.py
sre_constants.py
sre_parse.py
ssl.py gh-133623: Add ssl.HAS_PSK_TLS13 to detect external TLS 1.3 PSK support (#133624) 2025-05-09 09:09:09 +02:00
stat.py
statistics.py gh-132893: Minor edits to the statistics module PR (gh-133106) 2025-04-28 23:05:37 -05:00
stringprep.py
struct.py
subprocess.py gh-133089: Use original timeout value for TimeoutExpired when the func subprocess.run is called with a timeout (GH-133103) 2025-05-05 01:15:31 +00:00
symtable.py
tabnanny.py
tarfile.py gh-135034: Normalize link targets in tarfile, add os.path.realpath(strict='allow_missing') (#135037) 2025-06-03 12:42:11 +02:00
tempfile.py gh-132124: improve safety nets for creating AF_UNIX socket files (GH-134085) 2025-05-21 10:10:31 -07:00
textwrap.py gh-133306: Use \z instead of \Z in regular expressions in the stdlib (GH-133337) 2025-05-03 17:58:49 +03:00
this.py
threading.py gh-134323: Fix the new threading.RLock.locked method (#134368) 2025-05-22 13:48:24 +00:00
timeit.py gh-131178: Update help message for timeit CLI (#131326) 2025-03-30 14:19:38 +03:00
token.py gh-131507: Add support for syntax highlighting in PyREPL (GH-133247) 2025-05-02 20:22:31 +02:00
tokenize.py gh-134675: Add t-string prefixes to tokenizer module, lexical analysis doc, and add a test to make sure we catch this error in the future. (#134734) 2025-05-26 13:49:39 -04:00
trace.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
traceback.py gh-130999: Avoid exiting the new REPL when there are non-string candidates for suggestions (gh-131001) 2025-06-02 13:04:59 +02:00
tracemalloc.py
tty.py
turtle.py
types.py gh-133372: remove out of date todos from types module about generator wrapper (#134563) 2025-05-23 05:19:41 +00:00
typing.py gh-133960: Improve typing.evaluate_forward_ref (#133961) 2025-05-25 17:26:39 +00:00
uuid.py gh-135244: generate UUID random Node ID with a CSPRNG as per RFC 9562, §6.10.3 (#135226) 2025-06-08 11:46:16 +00:00
warnings.py gh-128384: Use a context variable for warnings.catch_warnings (gh-130010) 2025-04-09 16:18:54 -07:00
wave.py gh-133873: remove deprecated mark interface for wave.Wave_{read,write} objects (#133874) 2025-05-15 14:52:07 +00:00
weakref.py
webbrowser.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
zipapp.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
zipimport.py gh-125746: Delay deprecated zipimport.zipimporter.load_module removal time to 3.15 (#125748) 2025-02-11 23:59:09 +00:00