cpython/Lib
Serhiy Storchaka 4398b788ff
[3.12] gh-133767: Fix use-after-free in the unicode-escape decoder with an error handler (GH-129648) (GH-133944) (#134337)
If the error handler is used, a new bytes object is created to set as
the object attribute of UnicodeDecodeError, and that bytes object then
replaces the original data. A pointer to the decoded data will became invalid
after destroying that temporary bytes object. So we need other way to return
the first invalid escape from _PyUnicode_DecodeUnicodeEscapeInternal().

_PyBytes_DecodeEscape() does not have such issue, because it does not
use the error handlers registry, but it should be changed for compatibility
with _PyUnicode_DecodeUnicodeEscapeInternal().
(cherry picked from commit 9f69a58623)
(cherry picked from commit 6279eb8c07)
2025-05-25 20:33:22 -07:00
..
__phello__
asyncio [3.12] gh-131325: fix sendfile fallback implementation to drain data after writing to transport (GH-131376) (#131378) 2025-03-17 19:40:43 +00:00
collections [3.12] Fix outdated reference link in collections module (gh-130349) (gh-130387) 2025-02-21 00:15:48 +00:00
concurrent [3.12] gh-88110: Clear concurrent.futures.thread._threads_queues after fork to avoid joining parent process' threads (GH-126098) (GH-127164) 2024-11-30 09:05:46 +00:00
ctypes
curses
dbm
email [3.12] gh-121284: Fix email address header folding with parsed encoded-word (GH-122754) (#131404) 2025-03-18 15:35:32 -04:00
encodings
ensurepip [3.12] gh-129583: update bundled pip to 25.0.1 (GH-129909) (#129947) 2025-03-03 17:46:07 +02:00
html
http [3.12] Docs: Replace dead hyperlink for CGI environment variables (GH-132137) (#132151) 2025-04-06 08:29:09 +00:00
idlelib [3.12] gh-69001: Convert links to more usable buttons (GH-129591) (#130339) 2025-02-20 08:49:51 +00:00
importlib [3.12] gh-116608: undeprecate functional importlib.resources API (#132206) 2025-04-08 10:36:29 +02:00
json [3.12] gh-132021: Add bool type to the list of allowed JSON key types (GH-132048) (#132256) 2025-04-08 08:43:45 +00:00
lib2to3
logging [3.12] gh-127712: Fix secure argument of logging.handlers.SMTPHandler (GH-127726) (GH-129956) 2025-02-10 14:29:57 +00:00
msilib
multiprocessing [3.12] gh-88887: Cleanup multiprocessing.resource_tracker.ResourceTracker upon deletion (GH-130429) (#131530) 2025-03-21 11:15:35 +01:00
pydoc_data Python 3.12.10 2025-04-08 13:35:47 +02:00
re [3.12] gh-126505: Fix bugs in compiling case-insensitive character classes (GH-126557) (GH-126690) 2024-11-11 16:47:37 +00:00
site-packages
sqlite3
test [3.12] gh-133767: Fix use-after-free in the unicode-escape decoder with an error handler (GH-129648) (GH-133944) (#134337) 2025-05-25 20:33:22 -07:00
tkinter [3.12] gh-128562: Fix generation of the tkinter widget names (GH-128604) (GH-128792) 2025-01-13 18:23:53 +02:00
tomllib
turtledemo [3.12] [3.13] gh-123370: Fix the canvas not clearing after running turtledemo.clock (gh-123457) (GH-125653) (#125656) 2024-10-17 17:09:05 +00:00
unittest [3.12] bpo-46128: Strip IsolatedAsyncioTestCase frames from reported stacktraces (GH-30196) (#126771) 2024-11-13 09:20:47 +00:00
urllib [3.12] gh-105704: Disallow square brackets ([ and ]) in domain names for parsed URLs (GH-129418) (GH-129527) 2025-02-02 08:30:28 +00:00
venv [3.12] gh-112507: Detect Cygwin and MSYS with uname instead of $OSTYPE (GH-112508) (GH-130674) 2025-02-28 09:23:45 +00:00
wsgiref
xml [3.12] gh-128302: Fix bugs in xml.dom.xmlbuilder (GH-128284) (#128583) 2025-01-11 13:30:29 +02:00
xmlrpc
zipfile [3.12] gh-117779: Fix reading duplicated entries in zipfile by name (GH-129254) (GH-132264) 2025-04-08 11:13:09 +00:00
zoneinfo
__future__.py
__hello__.py
_aix_support.py
_collections_abc.py [3.12] gh-116938: Clarify documentation of dict and dict.update regarding the positional argument they accept (GH-125213) (#125337) 2024-10-11 23:23:54 +00:00
_compat_pickle.py
_compression.py
_markupbase.py
_osx_support.py
_py_abc.py
_pydatetime.py gh-130959: Reject whitespace in fractions, in pure Python fromisoformat() (GH-130962) (GH-131076) (#131086) 2025-03-11 12:00:06 +00:00
_pydecimal.py [3.12] Fix typos in Lib/_pydecimal.py (GH-127700) (#127888) 2024-12-12 20:45:20 +00:00
_pyio.py
_pylong.py
_sitebuiltins.py
_strptime.py [3.12] gh-127552: Remove comment questioning 4-digit restriction for ‘Y’ in datetime.strptime patterns (GH-127590) (#127649) 2024-12-10 09:20:54 +01:00
_threading_local.py
_weakrefset.py
abc.py
aifc.py
antigravity.py
argparse.py [3.12] gh-125355: Rewrite parse_intermixed_args() in argparse (GH-125356) (GH-125839) 2024-10-22 13:23:30 +00:00
ast.py [3.12] gh-127975: Avoid reusing quote types in ast.unparse if not needed (GH-127980) (#129601) 2025-02-02 22:58:22 +00:00
base64.py
bdb.py [3.12] gh-58956: Set f_trace on frames with breakpoints after setting a new breakpoint (GH-124454) (#125549) 2025-01-25 15:12:19 -05:00
bisect.py
bz2.py
calendar.py [3.12] gh-126476: Raise IllegalMonthError for calendar.formatmonth() when the input month is not correct (GH-126484) (GH-126878) 2024-11-15 15:20:10 -08:00
cgi.py
cgitb.py
chunk.py
cmd.py
code.py [3.12] gh-122478: Remove internal frames from tracebacks in REPL (GH-122528) (GH-122816) 2024-08-23 09:27:03 +03:00
codecs.py
codeop.py
colorsys.py [3.12] gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) (GH-122013) 2024-07-19 09:08:33 +00:00
compileall.py
configparser.py
contextlib.py
contextvars.py [3.12] gh-126451: Revert backports of ABC registrations for contextvars.Context and multiprocessing proxies (#126735) 2024-11-12 12:26:23 +00:00
copy.py
copyreg.py
cProfile.py
crypt.py
csv.py
dataclasses.py [3.12] gh-123935: Fix typo in _get_slots in dataclasses.py (GH-123941) (#123992) 2024-09-12 07:48:01 +00:00
datetime.py
decimal.py [3.12] gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) (GH-122013) 2024-07-19 09:08:33 +00:00
difflib.py [3.12] gh-131204: Fix difflib.HtmlDiff may not use monospaced font (GH-131221) (#131243) 2025-03-14 12:23:39 +00:00
dis.py [3.12] gh-127637: add tests for dis command-line interface (#127759) (#127780) 2025-01-18 12:01:56 +01:00
doctest.py
enum.py [3.12] gh-131045: [Enum] fix flag containment checks when using values (GH-131053) (#131232) 2025-03-24 10:31:24 +01:00
filecmp.py [3.12] gh-122400: Handle ValueError in filecmp (GH-122401) (GH-122442) 2024-07-30 09:07:06 +00:00
fileinput.py
fnmatch.py
fractions.py [3.12] gh-119189: Fix the power operator for Fraction (GH-119242) (GH-119835) 2024-07-16 10:44:05 +03:00
ftplib.py
functools.py [3.12] gh-127537: Add __class_getitem__ to the python implementation of functools.partial (#127537) (#128282) 2024-12-27 01:25:07 +00:00
genericpath.py
getopt.py
getpass.py
gettext.py
glob.py
graphlib.py [3.12] gh-129892: Doc: Remove unnecessary role directive in graphlib.py (GH-129896) (#129905) 2025-02-09 15:39:23 +00:00
gzip.py [3.12] gh-131492, gh-131461: handle exceptions in GzipFile constructor while owning resources (GH-131462) (#131519) 2025-03-21 11:21:40 +01:00
hashlib.py
heapq.py
hmac.py
imaplib.py [3.12] gh-119511: Fix a potential denial of service in imaplib (GH-119514) (GH-129356) 2025-01-27 14:06:14 -08:00
imghdr.py
inspect.py [3.12] gh-130164: Fix inspect.Signature.bind() handling of positional-only args without defaults (GH-130192) (GH-132259) 2025-04-08 09:39:45 +00:00
io.py
ipaddress.py [3.12] gh-124217, ipaddress: Add RFC 9637 reserved IPv6 block 3fff::/20 (GH-124240) (#124283) 2024-09-20 14:20:27 +02:00
keyword.py
linecache.py [3.12] gh-126775: make linecache.checkcache threadsafe and GC re-entrency safe (GH-126776) (#127779) 2024-12-10 08:02:22 +00:00
locale.py
lzma.py
mailbox.py
mailcap.py
mimetypes.py [3.12] gh-101137: Add text/x-rst to mimetypes (GH-118593) (GH-118599) 2025-04-08 12:40:41 +02:00
modulefinder.py
netrc.py
nntplib.py
ntpath.py gh-119826: Improved fallback for ntpath.abspath() on Windows (GH-119938) 2024-12-02 20:03:44 +00:00
nturl2path.py [3.12] GH-127078: url2pathname(): handle extra slash before UNC drive in URL path (GH-127132) (#127136) 2024-11-22 04:37:51 +00:00
numbers.py
opcode.py
operator.py
optparse.py
os.py [3.12] gh-127541: Update os.walk example (GH-127765) (#131873) 2025-03-29 10:34:35 +00:00
pathlib.py [3.12] GH-125069: Fix inconsistent joining in WindowsPath(PosixPath(...)) (GH-125156) (#125410) 2024-10-13 18:18:41 +00:00
pdb.py [3.12] gh-58956: Fix a frame refleak in bdb (GH-128190) (#128953) 2025-01-17 14:19:37 -05:00
pickle.py [3.12] gh-126489: Do not call persistent_id() for a persistent id in Python pickle (GH-126490) (GH-126516) 2024-11-06 21:11:37 +00:00
pickletools.py [3.12] gh-126997: Fix support of non-ASCII strings in pickletools (GH-127062) (GH-127095) 2024-11-21 11:32:16 +00:00
pipes.py
pkgutil.py
platform.py gh-127732: Add Windows Server 2025 detection to platform module (GH-127733) 2024-12-09 12:42:37 +00:00
plistlib.py
poplib.py [3.12] gh-130637: Add validation for numeric response data in stat() method (GH-130646) (#130764) 2025-03-02 15:05:46 -05:00
posixpath.py
pprint.py
profile.py
pstats.py [3.12] gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) (GH-122013) 2024-07-19 09:08:33 +00:00
pty.py
py_compile.py
pyclbr.py
pydoc.py [3.12] gh-128772: Fix pydoc for methods with __module__ is None (GH-129177) (GH-129654) 2025-02-04 14:44:02 +00:00
queue.py
quopri.py
random.py [3.12] gh-130285: Fix handling of zero or empty counts in random.sample() (gh-130291) (gh-130417) 2025-02-21 17:48:46 +00:00
reprlib.py [3.12] gh-113570: reprlib.repr does not use builtin __repr__ for reshadowed builtins (GH-113577) (GH-125655) 2024-10-17 16:59:01 +00:00
rlcompleter.py
runpy.py [3.12] gh-99437: runpy: decode path-like objects before setting globals (#114838) 2024-08-12 11:22:13 +03:00
sched.py [3.12] gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) (GH-122013) 2024-07-19 09:08:33 +00:00
secrets.py
selectors.py
shelve.py
shlex.py
shutil.py [3.12] gh-127001: Fix PATHEXT issues in shutil.which() on Windows (GH-127035) (GH-127158) 2024-11-22 16:33:50 +00:00
signal.py
site.py [3.12] gh-126911: Update credits output (GH-126913) (#126974) 2024-11-18 15:58:22 +00:00
smtplib.py
sndhdr.py
socket.py [3.12] gh-128916: Do not set SO_REUSEPORT on non-AF_INET* sockets (GH-128933) (#128970) 2025-01-18 01:06:45 +00:00
socketserver.py [3.12] gh-128916: Do not set SO_REUSEPORT on non-AF_INET* sockets (GH-128933) (#128970) 2025-01-18 01:06:45 +00:00
sre_compile.py
sre_constants.py
sre_parse.py
ssl.py [3.12] gh-79846: Make ssl.create_default_context() ignore invalid certificates (GH-91740) (#122769) 2024-08-09 12:55:36 -04:00
stat.py
statistics.py [3.12] gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) (GH-122013) 2024-07-19 09:08:33 +00:00
string.py
stringprep.py
struct.py
subprocess.py [3.12] gh-118761: Revert "Improve import time of subprocess (GH-129427)" (GH-130201) (#130205) 2025-02-16 18:56:18 +00:00
sunau.py
symtable.py [3.12] gh-119698: fix a special case in symtable.Class.get_methods (GH-121802) (#121910) 2024-07-17 22:32:29 +00:00
sysconfig.py [3.12] GH-92897: schedule the check_home deprecation to 3.15 (GH-129102) (#130585) 2025-02-27 18:17:08 +00:00
tabnanny.py
tarfile.py [3.12] gh-121285: Remove backtracking when parsing tarfile headers (GH-121286) (GH-123543) 2024-08-31 22:35:24 +00:00
telnetlib.py
tempfile.py [3.12] gh-127371 Avoid unbounded growth SpooledTempfile.writelines (GH-127372) (#130885) 2025-03-05 18:42:35 +01:00
textwrap.py
this.py
threading.py [3.12] gh-129403: Fix ValueError messages in asyncio.Barrier and threading.Barrier (GH-129419) (#129469) 2025-01-30 08:28:06 +00:00
timeit.py
token.py [3.12] gh-127303: Add docs for token.EXACT_TOKEN_TYPES (GH-127304) (#127391) 2024-11-29 09:22:27 +00:00
tokenize.py [3.12] gh-125553: Fix backslash continuation in untokenize (GH-126010) (#130579) 2025-02-27 21:57:13 +00:00
trace.py
traceback.py [3.12] gh-130250: fix regression in traceback.print_last (GH-130318) (#130326) 2025-02-19 22:01:32 +00:00
tracemalloc.py
tty.py
turtle.py [3.12] Fix print usage in turtle doctests (GH-122940) (#122978) 2024-08-13 16:58:37 +00:00
types.py
typing.py [3.12] gh-88834: Unify the instance check for typing.Union and types.UnionType (GH-128363) (GH-128371) 2024-12-31 08:19:45 +00:00
uu.py
uuid.py
warnings.py [3.12] gh-129843: fix pure Python implementation of warnings.warn_explicit (GH-129848) (#131350) 2025-03-17 12:19:09 +01:00
wave.py
weakref.py
webbrowser.py [3.12] gh-123494: Improve documentation for `webbrowser` return types (GH-123495) (#123549) 2024-09-01 05:36:18 +00:00
xdrlib.py
zipapp.py
zipimport.py [3.12] gh-121735: Fix module-adjacent references in zip files (gh-123037) (#124011) 2024-09-24 10:19:43 -07:00