cpython/Lib
Sam Gross 587d480203
gh-112529: Remove PyGC_Head from object pre-header in free-threaded build (#114564)
* gh-112529: Remove PyGC_Head from object pre-header in free-threaded build

This avoids allocating space for PyGC_Head in the free-threaded build.
The GC implementation for free-threaded CPython does not use the
PyGC_Head structure.

 * The trashcan mechanism uses the `ob_tid` field instead of `_gc_prev`
   in the free-threaded build.
 * The GDB libpython.py file now determines the offset of the managed
   dict field based on whether the running process is a free-threaded
   build. Those are identified by the `ob_ref_local` field in PyObject.
 * Fixes `_PySys_GetSizeOf()` which incorrectly incorrectly included the
   size of `PyGC_Head` in the size of static `PyTypeObject`.
2024-02-01 12:29:19 -08:00
..
__phello__
asyncio gh-109534: fix reference leak when SSL handshake fails (#114074) 2024-01-31 16:42:17 -08:00
collections gh-110275: Named tuple's __replace__() now raises TypeError for invalid arguments (GH-110299) 2023-12-04 13:30:32 +02:00
concurrent Simplify concurrent.futures.process code by using itertools.batched() (GH-114221) 2024-01-27 10:29:38 +02:00
ctypes gh-114257: Ignore the FileNotFound error in ctypes.util._is_elf() (GH-114394) 2024-01-22 17:15:29 +00:00
curses gh-60436: fix curses textbox backspace/del (#103783) 2023-04-26 22:54:07 +02:00
dbm
email gh-109653: Improve import time of importlib.metadata / email.utils (#114664) 2024-01-29 01:30:22 -08:00
encodings
ensurepip GH-80789: Get rid of the `ensurepip` infra for many wheels (#109245) 2024-01-30 01:25:31 +00:00
html gh-100210: Correct the comment link for unescaping HTML (#100212) 2023-02-19 11:18:12 +01:00
http gh-113199: Make read1() and readline() of HTTPResponse close IO after reading all data (GH-113200) 2023-12-18 22:17:16 +02:00
idlelib gh-96905: In IDLE code, stop redefining built-ins 'dict' and 'object' (#114227) 2024-01-18 04:39:12 +00:00
importlib `importlib/_bootstrap.py: Reduce size of _List` instances (GH-114747) 2024-01-30 10:44:09 -08:00
json gh-58032: Do not use argparse.FileType in module CLIs and scripts (GH-113649) 2024-01-10 15:07:19 +02:00
logging gh-114706: Allow QueueListener.stop() to be called more than once. (GH-114748) 2024-01-30 12:34:18 +00:00
multiprocessing gh-101225: Increase the socket backlog when creating a multiprocessing.connection.Listener (#113567) 2024-01-13 10:48:33 +01:00
pathlib pathlib ABCs: drop partial, broken, untested support for bytes paths. (#114777) 2024-01-31 00:59:33 +00:00
pydoc_data Python 3.13.0a3 2024-01-17 13:14:40 +01:00
re GH-83162: Rename re.error for better clarity. (#101677) 2023-12-11 15:45:08 -05:00
site-packages
sqlite3 gh-108364: In sqlite3, disable foreign keys before dumping SQL schema (#113957) 2024-01-12 10:50:37 +01:00
sysconfig gh-103708: Make directory layout in sysconfig implementation configurable (#103709) 2023-12-29 17:55:17 +00:00
test gh-112529: Remove PyGC_Head from object pre-header in free-threaded build (#114564) 2024-02-01 12:29:19 -08:00
tkinter gh-110345: show Tcl/Tk patchlevel in tkinter._test() (GH-110350) 2024-01-18 17:46:58 +02:00
tomllib
turtledemo gh-111092: Make turtledemo run without default root enabled (#111093) 2023-10-19 23:58:41 -04:00
unittest GH-113661: unittest runner: Don't exit 5 if tests were skipped (#113856) 2024-01-09 19:50:01 +00:00
urllib gh-91539: Small performance improvement of urrlib.request.getproxies_environment() (#108771) 2024-01-15 15:45:01 -08:00
venv gh-89427: Provide the original prompt value for VIRTUAL_ENV_PROMPT (GH-106726) 2024-01-23 08:53:04 +00:00
wsgiref gh-111768: Add wsgiref.util.is_hop_by_hop to __all__ (#111770) 2023-11-08 15:29:47 +00:00
xml gh-114737: Revert change to ElementTree.iterparse "root" attribute (GH-114755) 2024-01-31 13:22:24 +02:00
xmlrpc xmlrpc.client uses datetime.datetime.isoformat() (#105741) 2023-06-14 17:00:40 +02:00
zipfile gh-113971: Make zipfile.ZipInfo._compresslevel public as .compress_level (#113969) 2024-01-12 20:15:05 +00:00
zoneinfo bpo-42663: Fix parsing TZ strings in zoneinfo module (GH-23825) 2023-10-14 23:24:33 +03:00
__future__.py
__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-111485: Generate instruction and uop metadata (GH-113287) 2023-12-20 14:27:25 +00:00
_osx_support.py gh-102362: Fix macOS version number in result of sysconfig.get_platform() (GH-112942) 2023-12-18 18:51:58 -05:00
_py_abc.py
_pydatetime.py gh-106392: Fix inconsistency in deprecation warnings in datetime module (GH-114761) 2024-01-30 22:15:33 +00: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-80109: Fix io.TextIOWrapper dropping the internal buffer during write() (GH-22535) 2024-01-08 12:33:34 +02: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 bpo-36959: Fix error messages for invalid ISO format string in _strptime() (GH-13408) 2023-12-26 19:26:17 +00: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 Clean up backslash avoiding code in ast, fix typo (#113605) 2024-01-16 11:24:25 -08:00
base64.py gh-61199: Remove superfluous global statements from base64._b32{en,de}code()* (GH-111785) 2023-11-07 16:32:44 -06:00
bdb.py gh-80675: Set f_trace_lines = True on all frames upon pdb.set_trace() (#110881) 2023-11-04 19:59:36 +00: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-112240: Add option to calendar module CLI to specify the weekday to start each week (GH-112241) 2024-01-29 16:58:21 +00:00
cmd.py gh-52161: Enhance Cmd support for docstrings (#110987) 2024-01-03 19:37:34 +00:00
code.py GH-102895 Add an option local_exit in code.interact to block exit() from terminating the whole process (GH-102896) 2023-10-18 11:36:43 -07:00
codecs.py gh-66143: Allow copying and pickling of CodecInfo object (GH-109235) 2023-09-29 20:07:09 +03:00
codeop.py gh-113744: Add a new IncompleteInputError exception to improve incomplete input detection in the codeop module (#113745) 2024-01-30 16:21:30 +00:00
colorsys.py gh-106498: Revert incorrect colorsys.rgb_to_hls change (#106627) 2023-07-11 11:07:20 -04:00
compileall.py gh-105931: Fix surprising compileall stripdir behaviour (GH-108671) 2023-10-23 13:55:39 +00:00
configparser.py Fix typo in configparser module docstring (#105652) 2023-06-11 15:06:42 +01:00
contextlib.py gh-103791: handle BaseExceptionGroup in contextlib.suppress() (#111910) 2023-11-10 13:32:36 +00:00
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
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-114123: Migrate docstring from _csv to csv (#114124) 2024-01-18 22:18:42 +00:00
dataclasses.py gh-114087: Speed up dataclasses._asdict_inner (#114088) 2024-01-18 09:03:20 -07: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 gh-58032: Do not use argparse.FileType in module CLIs and scripts (GH-113649) 2024-01-10 15:07:19 +02:00
doctest.py gh-61648: Detect line numbers of properties in doctests (GH-113161) 2023-12-15 15:24:30 +02:00
enum.py gh-114149: [Enum] revert #114160 and add more tuple-subclass tests (GH-114215) 2024-01-17 16:31:00 -08:00
filecmp.py
fileinput.py Use bool in fileinput.input() docstring and tests for the inplace argument (GH-111998) 2024-01-27 23:47:55 +02:00
fnmatch.py GH-72904: Add glob.translate() function (#106703) 2023-11-13 17:15:56 +00:00
fractions.py gh-114014: Update fractions.Fraction()'s rational parsing regex (#114015) 2024-01-13 12:02:39 +00:00
ftplib.py gh-114241: Fix and improve the ftplib CLI (GH-114242) 2024-01-21 22:16:45 +02: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-76912: Raise OSError from any failure in getpass.getuser() (#29739) 2023-11-27 10:05:55 -08:00
gettext.py gh-88434: Emit deprecation warnings for non-integer numbers in gettext if translation not found (GH-110574) 2023-10-14 09:07:02 +03:00
glob.py GH-72904: Add glob.translate() function (#106703) 2023-11-13 17:15:56 +00:00
graphlib.py
gzip.py gh-112529: Implement GC for free-threaded builds (#114262) 2024-01-25 10:27:36 -08:00
hashlib.py gh-99108: Refactor _sha256 & _sha512 into _sha2. (#101924) 2023-02-15 22:08:20 -08:00
heapq.py
hmac.py gh-112999: Replace the outdated "deprecated" directives with "versionchanged" (GH-113000) 2023-12-12 18:31:04 +02:00
imaplib.py
inspect.py gh-112316: improve docs for inspect.signature and inspect.Signature (#112631) 2023-12-03 01:37:34 -08:00
io.py gh-111356: io: Add missing documented objects to io.__all__ (#111370) 2023-11-10 16:18:52 +09:00
ipaddress.py gh-109466: Add ipv6_mapped property to IPv4Address (#109467) 2023-11-05 16:50:31 +00:00
keyword.py gh-103763: Implement PEP 695 (#103764) 2023-05-15 20:36:23 -07:00
linecache.py gh-67224: Show source lines in tracebacks when using the -c option when running Python (#111200) 2023-10-26 15:17:28 +09:00
locale.py gh-111187: Postpone removal version for locale.getdefaultlocale() to 3.15 (#111188) 2023-10-25 16:47:41 +03:00
lzma.py
mailbox.py gh-66515: Fix locking of an MH mailbox without ".mh_sequences" file (GH-113482) 2024-01-10 15:31:55 +02:00
mimetypes.py gh-111741: Recognise image/webp as a standard format in the mimetypes module (GH-111742) 2024-01-31 17:33:46 +02:00
modulefinder.py
netrc.py
ntpath.py gh-88569: add ntpath.isreserved() (#95486) 2024-01-26 18:14:24 +00:00
nturl2path.py
numbers.py
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-113191: Add support of os.fchmod() on Windows (GH-113192) 2023-12-24 10:57:11 +00:00
pdb.py gh-59013: Set breakpoint on the first executable line of function when using break func in pdb (#112470) 2024-01-31 13:03:05 +00:00
pickle.py gh-85567: Fix resouce warnings in pickle and pickletools CLIs (GH-113618) 2024-01-06 00:12:34 +02:00
pickletools.py gh-85567: Fix resouce warnings in pickle and pickletools CLIs (GH-113618) 2024-01-06 00:12:34 +02:00
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-114490: Add check for Mach-O linkage in Lib/platform.py (#114491) 2024-01-26 21:36:50 +01:00
plistlib.py gh-111803: Support loading more deeply nested lists in binary plist format (GH-114024) 2024-01-13 15:26:55 +02: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 [pprint]: Add docstring about PrettyPrinter.underscore_numbers parameter (#112963) 2023-12-13 12:04:17 +00: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 GH-83162: Rename re.error for better clarity. (#101677) 2023-12-11 15:45:08 -05: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-64020: Deprecate pydoc.ispackage() (GH-20908) 2023-12-27 14:04:31 +00: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-111881: Import _sha2 lazily in random (#111889) 2023-11-09 23:10:21 +01: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-99437: runpy: decode path-like objects before setting globals 2024-01-15 16:58:50 +00:00
sched.py
secrets.py
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 bpo-26791: Update shutil.move() to provide the same symlink move behavior as the mv shell when moving a symlink into a directory that is the target of the symlink (GH-21759) 2023-12-27 16:23:42 +00:00
signal.py gh-112559: Avoid unnecessary conversion attempts to enum_klass in signal.py (#113040) 2023-12-23 17:07:52 -08:00
site.py gh-113659: Skip hidden .pth files (GH-113660) 2024-01-16 20:23:05 +02: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 gh-114077: Fix OverflowError in socket.sendfile() when pass count >2GiB (GH-114079) 2024-01-16 11:31:34 +00: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-89532: Remove LibreSSL workarounds (#28728) 2024-01-06 23:25:58 +00:00
stat.py gh-113666: Adding missing UF_ and SF_ flags to module 'stat' (#113667) 2024-01-15 12:22:43 +01:00
statistics.py gh-112540: Support zero inputs in geometric_mean() (gh-112880) 2023-12-08 12:05:56 -06:00
string.py
stringprep.py
struct.py
subprocess.py gh-104522: Fix OSError raised when run a subprocess (#114195) 2024-01-17 16:52:42 -08:00
symtable.py gh-85098: Implement functional CLI of symtable (#109112) 2023-11-07 16:32:16 +00:00
tabnanny.py gh-102856: Python tokenizer implementation for PEP 701 (#104323) 2023-05-21 01:03:02 +01:00
tarfile.py gh-67641: Clarify documentation on bytes vs text with non-seeking tarfile stream (GH-31610) 2023-12-27 17:16:36 +00:00
tempfile.py gh-59616: Support os.chmod(follow_symlinks=True) and os.lchmod() on Windows (GH-113049) 2023-12-14 13:28:37 +02:00
textwrap.py gh-107369: optimize textwrap.indent() (#107374) 2023-07-29 06:37:23 +00:00
this.py
threading.py gh-109653: Speedup import of threading module (#114509) 2024-01-31 09:29:44 +00: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-104169: Fix test_peg_generator after tokenizer refactoring (#110727) 2023-10-12 09:34:35 +02:00
trace.py gh-38807: Fix race condition in Lib/trace.py (GH-110143) 2024-01-17 22:02:14 +02:00
traceback.py gh-113358: Fix rendering tracebacks with exceptions with a broken __getattr__ (GH-113359) 2024-01-16 09:49:24 +00:00
tracemalloc.py
tty.py gh-114328: tty cbreak mode should not alter ICRNL (#114335) 2024-01-21 15:25:52 -08: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-113320: Reduce the number of dangerous getattr() calls when constructing protocol classes (#113401) 2024-01-05 01:01:48 +00: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 gh-113781: Silence AttributeError in warning module during Python finalization (GH-113813) 2024-01-09 21:44:05 +02:00
wave.py gh-105096: Deprecate wave getmarkers() method (#105098) 2023-05-31 12:09:41 +00:00
weakref.py
webbrowser.py gh-113543: Make sure that MacOSXOSAScript sends webbrowser.open audit event (#113544) 2023-12-28 19:58:06 +01: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 Fix typos in variable names, function names, and comments (GH-101868) 2023-12-01 09:37:40 +00:00