cpython/Lib
Michiel W. Beijen ca064d9b99
gh-117716: Fix wave RIFF padding for data chunks (GH-145237)
wave.Wave_write now writes the required RIFF pad byte when the data chunk
size is odd.

Update RIFF chunk size calculations in both header writing and header
patching so they include the alignment pad byte when present.

Add a regression test in test_wave.py that verifies
odd-sized writes are padded, RIFF size is correct, and roundtrip reads
preserve frame data.
2026-04-15 14:21:43 +02:00
..
__phello__
_pyrepl gh-148105: _pyrepl: switch console refresh to structured rendered screens (#146584) 2026-04-08 23:42:26 +01:00
asyncio gh-144881: Add retry logic to asyncio debugging tools (#148530) 2026-04-13 22:10:54 +00:00
collections gh-147957: pop items from UserDict in LIFO order (gh-147958) 2026-04-14 23:29:41 -05:00
compression gh-132983: Split `_zstd_set_c_parameters` (#133921) 2025-05-28 14:45:08 +00:00
concurrent Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
ctypes gh-146547: Use lazy imports in ctypes (GH-146548) 2026-04-07 15:26:53 +02:00
curses gh-146153: Use frozendict in pure python fallback for curses.has_key (#146154) 2026-03-21 14:06:07 +01:00
dbm Fix typo: 'exept' -> 'except' in Lib/dbm/dumb.py (GH-144060) 2026-01-20 08:50:34 +02:00
email gh-148192: Fix Generator._make_boundary behavior with CRLF line endings. (#148193) 2026-04-14 09:10:08 -04:00
encodings gh-146054: Limit the growth of encodings.search_function cache (GH-146055) 2026-03-17 15:02:59 +01:00
ensurepip gh-146310: Fix ensurepip to treat empty WHEEL_PKG_DIR as unset (#146357) 2026-03-27 20:48:07 +00:00
html gh-140875: Fix handling of unclosed charrefs before EOF in HTMLParser (GH-140904) 2025-11-19 13:55:10 +02:00
http gh-146211: Reject CR/LF in HTTP tunnel request headers (#146212) 2026-04-10 15:21:42 +00:00
idlelib gh-139551: add support for BaseExceptionGroup in IDLE (GH-139563) 2026-04-12 10:06:41 -07:00
importlib gh-121190: Emit a better error message from importlib.resources.files() when module spec is None" (#148460) 2026-04-12 18:15:01 -04:00
json gh-146440: Add array_hook parameter to JSON decoders (#146441) 2026-03-27 11:10:48 +00:00
logging gh-145650: Add logging.{Formatter,Filter}.__repr__ (GH-145652) 2026-03-26 12:41:14 +00:00
multiprocessing gh-137335: remove a mktemp use in multiprocessing.connection to avoid security scanner noise (GH-148578) 2026-04-14 23:31:58 +00:00
pathlib GH-139174: Prepare pathlib.Path.info for new methods (part 2) (#140155) 2025-10-18 02:13:25 +01:00
profiling gh-148225: Validate profiling.sampling replay input (#148243) 2026-04-08 23:34:46 +00:00
pydoc_data Python 3.15.0a8 2026-04-07 14:24:03 +03:00
re gh-86519: Add prefixmatch APIs to the re module (GH-31137) 2026-02-15 17:43:39 -08:00
site-packages
sqlite3 gh-135883: Fix sqlite3 CLI history scrolling with colored prompts (#135884) 2026-03-03 19:48:03 +01:00
string GH-132661: Add `string.templatelib.convert()` (#135217) 2025-07-15 11:56:42 +02:00
sysconfig gh-146541: Allow building the Android testbed for 32-bit targets (#146542) 2026-04-04 11:27:27 +08:00
test gh-117716: Fix wave RIFF padding for data chunks (GH-145237) 2026-04-15 14:21:43 +02:00
tkinter gh-47655: Add support for user data and detail of Tk events to tkinter (GH-7142) 2026-02-25 10:34:00 +02:00
tomllib gh-142956: Update tomllib to parse TOML 1.1.0 (#144243) 2026-02-03 13:41:57 +01:00
turtledemo gh-137586: Open external osascript program with absolute path (GH-137584) 2026-04-06 09:42:10 -07:00
unittest gh-145754: Update signature retrieval in unittest.mock to use forwardref annotation format (#145756) 2026-03-19 19:39:41 -07:00
urllib gh-144148: Update the urllib.parse documentation (GH-144497) 2026-02-05 16:32:17 +02:00
venv gh-96894: Do not turn echo off for subsequent commands in batch activators (GH-96895) 2026-04-13 11:50:46 +00:00
wsgiref gh-144370: Disallow usage of control characters in status in wsgiref.handlers for security (#144371) 2026-03-06 13:22:21 +01:00
xml gh-144270: Make SubElement parent and tag positional-only (GH-144845) 2026-03-30 19:42:24 +03:00
xmlrpc gh-136839: Refactor simple dict.update calls (#136811) 2025-07-19 10:12:10 -07:00
zipfile Correct MAX_N in Lib/zipfile ZipExtFile (GH-144973) 2026-02-20 00:48:01 +02:00
zoneinfo gh-145883: Fix two heap-buffer-overflows in _zoneinfo (#145885) 2026-04-04 13:29:17 +01:00
__future__.py
__hello__.py
_aix_support.py
_android_support.py gh-144415: Android testbed fixes (#142912) 2026-02-03 16:37:34 +08:00
_apple_support.py
_ast_unparse.py gh-143055: Fix crash in AST unparser when unparsing dict comprehension unpacking (#145556) 2026-03-09 10:37:23 -07:00
_collections_abc.py gh-141510, PEP 814: Add built-in frozendict type (#144757) 2026-02-17 10:54:41 +01:00
_colorize.py gh-146609: Add colour to timeit CLI output (#146610) 2026-04-08 16:18:53 +03:00
_compat_pickle.py gh-142349: Implement PEP 810 - Explicit lazy imports (#142351) 2026-02-12 00:15:33 +00:00
_ios_support.py
_markupbase.py
_opcode_metadata.py GH-145667: Merge GET_ITER and GET_YIELD_FROM_ITER (GH-146120) 2026-03-21 10:48:13 +00:00
_osx_support.py gh-136677: Introduce executable specific linker flags to configure (#137296) 2026-02-24 22:52:02 +00:00
_py_abc.py
_py_warnings.py gh-146358: Fix warnings.catch_warnings on Free Threading (#146374) 2026-03-25 14:34:50 +01:00
_pydatetime.py gh-97517: Add documentation links to datetime strftime/strptime docstrings (#138559) 2025-09-15 19:50:46 +01:00
_pydecimal.py gh-76007: Deprecate __version__ attribute in decimal (#140302) 2025-10-26 12:01:04 +01:00
_pyio.py gh-143602: Fix duplicate buffer exports in io.BytesIO.write (#143629) 2026-01-15 16:08:55 +01:00
_pylong.py
_sitebuiltins.py gh-145035: Allows removing the _pyrepl module to completely disable the modern REPL (GH-145159) 2026-03-10 14:58:32 +01:00
_strptime.py GH-70647: Remove support for %d (and deprecate for %e) without year in strptime() (GH-144570) 2026-04-14 17:15:27 -07:00
_threading_local.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
_weakrefset.py
abc.py
annotationlib.py gh-146556: Fix infinite loop in annotationlib.get_annotations() on circular __wrapped__ (#146557) 2026-03-30 03:08:18 +00:00
antigravity.py
argparse.py gh-66419: Make optional arguments with nargs=REMAINDER consume all arguments (GH-124509) 2026-03-18 17:04:11 +02:00
ast.py gh-135801: Add the module parameter to compile() etc (GH-139652) 2025-11-13 13:21:32 +02:00
base64.py gh-148153: Do not use assert for parameter validation in base64 (GH-148154) 2026-04-06 13:47:27 +03:00
bdb.py gh-136057: Allow step and next to step over for loops (#136160) 2025-11-16 13:57:07 -08:00
bisect.py
bz2.py
calendar.py gh-140212: Add html for year-month option in Calendar (#140230) 2025-10-31 17:28:53 +02:00
cmd.py
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-52876: Implement missing parameter in codecs.StreamReaderWriter functions (#136498) 2025-07-10 17:42:14 +02:00
codeop.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
colorsys.py
compileall.py gh-144278: Enable overriding sys.implementation's name and cache_tag when building sysmodule.c (GH-144293) 2026-02-10 00:01:17 +00:00
configparser.py gh-148370: prevent quadratic behavior in configparser.ParsingError.combine (#148452) 2026-04-14 00:32:54 +02:00
contextlib.py gh-144386: Add support for descriptors in ExitStack and AsyncExitStack (#144420) 2026-02-04 13:20:18 +02:00
contextvars.py
copy.py gh-141510: Fix copy.deepcopy() for recursive frozendict (#145027) 2026-02-21 15:30:40 +00:00
copyreg.py
cProfile.py Remove unused imports (#142320) 2025-12-06 11:27:31 +00:00
csv.py gh-137627: Make csv.Sniffer.sniff() delimiter detection 1.6x faster (#137628) 2025-10-23 15:28:29 +03:00
dataclasses.py gh-105936: Properly update closure cells for __setattr__ and __delattr__ in frozen dataclasses with slots (GH-144021) 2026-04-12 14:12:19 -07:00
datetime.py
decimal.py gh-76007: Deprecate __version__ attribute in decimal (#140302) 2025-10-26 12:01:04 +01:00
difflib.py gh-145131: difflib.Differ._fancy_replace performance (re-use ratio) (#145133) 2026-02-22 19:59:40 -06:00
dis.py gh-142349: Implement PEP 810 - Explicit lazy imports (#142351) 2026-02-12 00:15:33 +00:00
doctest.py gh-69113: Fix doctest to report line numbers for __test__ strings (#141624) 2025-12-06 15:47:08 -05:00
enum.py gh-140806: add docs for enum.bin function (#140807) 2026-01-12 13:34:18 +02:00
filecmp.py
fileinput.py
fnmatch.py
fractions.py gh-87790: support thousands separators for formatting fractional part of Fraction (#132204) 2025-07-07 11:16:31 +03:00
ftplib.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
functools.py gh-141510: Use frozendict in the stdlib (#144909) 2026-03-06 10:25:09 +01:00
genericpath.py gh-74453: Deprecate os.path.commonprefix (#144436) 2026-02-05 22:37:05 +02:00
getopt.py
getpass.py gh-138577: Fix keyboard shortcuts in getpass with echo_char (#141597) 2026-03-30 11:11:13 +02:00
gettext.py gh-141510: Use frozendict in the stdlib (#144909) 2026-03-06 10:25:09 +01:00
glob.py gh-144835: Added missing explanations for some parameters in glob and iglob. (#144836) 2026-03-02 08:56:28 -03:00
graphlib.py GH-143948: Explain graphlib's cycle-finding code (#143950) 2026-01-20 19:28:48 -06:00
gzip.py Remove some dead code from gzip and tarfile (#138123) 2025-08-25 16:23:47 +03:00
hashlib.py gh-136565: use SHA-256 for hashlib.__doc__ example instead of MD5 (#138157) 2025-08-26 10:38:53 +00:00
heapq.py Indexing is more straight-forward (and faster) than unpacking (gh-145154) 2026-02-23 12:31:35 -06:00
hmac.py gh-142451: correctly copy HMAC attributes in HMAC.copy() (#142510) 2025-12-14 09:45:36 +01:00
imaplib.py gh-143921: Reject control characters in IMAP commands 2026-01-20 20:45:42 +00:00
inspect.py gh-117865: Speedup import of inspect module (#144756) 2026-03-02 23:39:07 +02:00
io.py
ipaddress.py gh-141497: Make ipaddress.IP{v4,v6}Network.hosts() always returning an iterator (GH-141547) 2025-11-17 19:29:06 +02:00
keyword.py gh-142349: Implement PEP 810 - Explicit lazy imports (#142351) 2026-02-12 00:15:33 +00:00
linecache.py gh-122255: Synchronize warnings in C and Python implementations of the warnings module (GH-122824) 2025-11-14 16:49:28 +02:00
locale.py gh-123853: Cleanup Windows 95 locale fallback support (#144738) 2026-02-27 11:06:46 +01:00
lzma.py
mailbox.py bpo-32234: Allow mailbox instances as context managers (GH-4770) 2026-02-16 14:14:26 +01:00
mimetypes.py gh-145719: Add .efi file detection in mimetypes (#145720) 2026-03-23 22:16:41 +02:00
modulefinder.py gh-84530: fix namespace package support in modulefinder (#29196) 2025-12-09 15:50:50 +00:00
netrc.py gh-139633: Run netrc file permission check only once per parse (GH-139634) 2026-03-30 22:05:18 +03:00
ntpath.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
nturl2path.py
numbers.py gh-122450: Expand documentation for `Rational and Fraction` (#136800) 2025-08-04 02:15:59 +00:00
opcode.py gh-127958: Trace from RESUME in the JIT (GH-145905) 2026-03-17 00:18:59 +08:00
operator.py
optparse.py gh-141510: Use frozendict in the stdlib (#144909) 2026-03-06 10:25:09 +01:00
os.py gh-120057: add os.reload_environ to __all__ (#140763) 2025-10-29 21:21:26 +00:00
pdb.py gh-145035: Allows removing the _pyrepl module to completely disable the modern REPL (GH-145159) 2026-03-10 14:58:32 +01:00
pickle.py gh-77188: Add support for pickling private methods and nested classes (GH-21480) 2026-02-05 19:50:51 +00:00
pickletools.py gh-131178: Add tests for pickletools command-line interface (#131287) 2025-11-22 19:17:06 +02:00
pkgutil.py gh-146121: Clarify security model of pkgutil.getdata; revert checks (GH-148197) 2026-04-07 11:39:50 +02:00
platform.py gh-141510: Use frozendict in the stdlib (#144909) 2026-03-06 10:25:09 +01:00
plistlib.py gh-141510: Support frozendict in plistlib (#145590) 2026-03-31 15:45:23 +03:00
poplib.py gh-143923: Reject control characters in POP3 commands 2026-01-20 20:46:32 +00:00
posixpath.py gh-74453: Deprecate os.path.commonprefix (#144436) 2026-02-05 22:37:05 +02:00
pprint.py gh-134551: Add t-strings support to pprint (#134577) 2026-04-14 14:37:41 +03:00
profile.py GH-65961: Stop setting __cached__ on modules (GH-142165) 2025-12-11 11:44:46 -08:00
pstats.py gh-140137: Handle empty collections in profiling.sampling (#140154) 2025-10-15 14:59:12 +01:00
pty.py
py_compile.py gh-144278: Enable overriding sys.implementation's name and cache_tag when building sysmodule.c (GH-144293) 2026-02-10 00:01:17 +00:00
pyclbr.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
pydoc.py gh-145035: Allows removing the _pyrepl module to completely disable the modern REPL (GH-145159) 2026-03-10 14:58:32 +01:00
queue.py Fix Queue.shutdown docs for condition to unblock a join (gh-137088) 2025-07-25 07:56:28 -06:00
quopri.py
random.py Minor edit: Move comments closer to the code they describe (gh-136477) 2025-07-09 10:23:46 -07:00
reprlib.py gh-135487: fix reprlib.Repr.repr_int when given very large integers (#135506) 2025-06-24 11:09:46 +00:00
rlcompleter.py gh-142349: Implement PEP 810 - Explicit lazy imports (#142351) 2026-02-12 00:15:33 +00:00
runpy.py GH-65961: Stop setting __cached__ on modules (GH-142165) 2025-12-11 11:44:46 -08:00
sched.py
secrets.py
selectors.py
shelve.py Drop three unused imports (#141875) 2025-11-23 16:33:05 +00:00
shlex.py gh-138804: Check type in shlex.quote (GH-138809) 2025-09-12 14:26:21 -04:00
shutil.py gh-85809: Ensure shutil.make_archive accepts path-like objects in all cases (GH-143668) 2026-02-25 16:44:17 +02:00
signal.py
site.py gh-145035: Allows removing the _pyrepl module to completely disable the modern REPL (GH-145159) 2026-03-10 14:58:32 +01:00
smtplib.py gh-70039: smtplib: store the server name in ._host in .connect() (#115259) 2026-04-08 17:46:25 -04:00
socket.py gh-146139: Disable socketpair authentication on WASI (#146140) 2026-04-13 21:06:36 +00:00
socketserver.py gh-76007: Deprecate __version__ attribute (#138675) 2025-09-29 12:03:23 +03:00
ssl.py gh-141510: Use frozendict in the stdlib (#144909) 2026-03-06 10:25:09 +01:00
stat.py gh-144050: Fix stat.filemode pure Python file type detection (GH-144059) 2026-01-20 14:05:42 +02:00
statistics.py Minor improvement to statistics.pdf() (gh-148500) 2026-04-13 11:29:15 -05:00
stringprep.py
struct.py
subprocess.py gh-146004: propagate all -X options to multiprocessing child processes (GH-146005) 2026-03-28 05:03:05 +00:00
symtable.py gh-141510: Use frozendict in the stdlib (#144909) 2026-03-06 10:25:09 +01:00
tabnanny.py gh-76007: Deprecate __version__ attribute (#138675) 2025-09-29 12:03:23 +03:00
tarfile.py gh-141707: Skip TarInfo DIRTYPE normalization during GNU long name handling 2026-03-11 13:47:55 +00:00
tempfile.py gh-66305: Fix a hang on Windows in the tempfile module (GH-144672) 2026-02-24 13:05:06 +02:00
textwrap.py gh-139065: Fix trailing space before long word in textwrap (GH-139070) 2025-10-10 16:29:18 +03:00
this.py
threading.py gh-114827: clarify threading.Event.wait timeout behavior (#114834) 2025-10-14 11:34:53 +03:00
timeit.py gh-148254: Use singular "sec" in timeit verbose output (#148290) 2026-04-09 17:37:19 +03:00
token.py
tokenize.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
trace.py GH-65961: Stop setting __cached__ on modules (GH-142165) 2025-12-11 11:44:46 -08:00
traceback.py gh-130273: Fix traceback color output with unicode characters (GH-142529) 2026-04-07 15:05:23 +02:00
tracemalloc.py
tty.py
turtle.py Fix pyflakes warnings: variable is assigned to but never used (#142294) 2025-12-08 14:00:31 +01:00
types.py gh-142349: Implement PEP 810 - Explicit lazy imports (#142351) 2026-02-12 00:15:33 +00:00
typing.py gh-145033: Implement PEP 747 (#145034) 2026-02-28 19:52:04 -08:00
uuid.py gh-76760: test that uuid.uuid1() sets the version field (#139033) 2025-09-17 13:31:51 +00:00
warnings.py
wave.py gh-117716: Fix wave RIFF padding for data chunks (GH-145237) 2026-04-15 14:21:43 +02:00
weakref.py gh-124748: Fix handling kwargs in WeakKeyDictionary.update() (#124783) 2026-02-18 13:17:08 +00:00
webbrowser.py gh-148169: Fix webbrowser %action substitution bypass of dash-prefix check (#148170) 2026-04-13 19:02:52 +00:00
zipapp.py gh-130645: Add color to stdlib argparse CLIs (gh-133380) 2025-05-05 19:46:46 +02:00
zipimport.py gh-135801: Add the module parameter to compile() etc (GH-139652) 2025-11-13 13:21:32 +02:00