summaryrefslogtreecommitdiffstats
path: root/Python/stdlib_module_names.h
Commit message (Collapse)AuthorAgeFilesLines
* gh-81313: Add the math.integer module (PEP-791) (GH-133909)Serhiy Storchaka2025-10-311-0/+1
|
* gh-138122: Implement PEP 799 (#138142)Pablo Galindo Salgado2025-08-271-0/+1
|
* gh-105456: Remove 3 deprecated `sre_*` modules (#135994)Stan Ulbrych2025-07-011-3/+0
|
* GH-91048: Minor fixes for ``_remotedebugging`` & rename to ↵Adam Turner2025-05-051-0/+1
| | | | ``_remote_debugging`` (#133398)
* gh-132983: Introduce `_zstd` bindings module (GH-133027)Emma Smith2025-05-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add _zstd module for https://peps.python.org/pep-0784/ This commit introduces the `_zstd` module, with bindings to libzstd from the pyzstd project. It also includes the unix build system configuration. Windows build system support will be integrated independently as it depends on integration with cpython-source-deps. * Add _zstd to modules * Fix path for compression.zstd module * Ignore _zstd module like _io * Expand module state macros to improve code quality Also removes module state references from the classes in the _zstd module and instead uses PyType_GetModuleState() * Remove backticks suggested in review Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com> * Use critical sections to lock object state This should avoid races and deadlocks. * Remove compress/decompress and mark module as not reliant on the GIL The `compress`/`decompress` functions will be moved to Python code for simplicity. C implementations can always be re-added in the future. Also, mark _zstd as not requiring the GIL. * Lift critical section to avoid clang warning * Respond to comments by picnixz * Call out pyzstd explicitly in license description Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> * Use a much more robust implementation... ... for `get_zstd_state_from_type` Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> * Use PyList_GetItemRef for thread safety purposes * Use a macro for the minimum supported version * remove const from primivite types * Use PyMem_New in another spot * Simplify error handling in _get_frame_size * Another simplification of error handling in get_frame_info * Rename _module_state to mod_state * Rewrite comment explaining the context of the code * Add link to pyzstd * Add TODO about refactoring dict training code * Use PyModule_AddObjectRef over PyModule_AddObject PyModule_AddObject is soft-deprecated, so we should use PyModule_AddObjectRef * Check result of OutputBufferGrow * Simplify return logic in `add_constant_to_type` Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> * Ignore return value of _zstd_clear() Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> * Remove redundant comments * Remove __reduce__ from ZstdDict We should instead document that to pickle a dictionary a user should use the `.dict_content` attribute. * Use PyUnicode_FromFormat instead of a buffer * Don't use C constants/types in error messages * Make error messages easier to understand for Python users * Lower minimum required version 1.4.0 * Use casts and make slot function signatures correct * Be consistent with CPython on const usage * Make else clauses in line with PEP 7 * Fix over-indented blocks in argument clinic * Add critical section around ZSTD_DCtx_setParameter * Add a TODO about refactoring critical sections * Use Py_UNREACHABLE * Move bytes operations out of Py_BEGIN_ALLOW_THREADS * Add TODO about ensuring a lock is held * Remove asserts that may not be correct * Add TODO to make ZstdDict and others GC objects * Make objects GC tracked * Remove unused include * Fix some memory issues * Fix refleaks on module and in ZstdDict * Update configure to check for ZDICT_finalizeDictionary * Properly check version in configure * exit(1) if check fails * Use AC_RUN_IFELSE * Use a define() to re-use version check * Actually properly set _zstd module status based on version --------- Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com> Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-132983: Introduce `compression` package and move `_compression` module ↵Emma Smith2025-04-271-1/+1
| | | | | | | | | | | | | | | (GH-133018) * Introduces `compression` package for https://peps.python.org/pep-0784/ This commit introduces the `compression` package, specified in PEP 784 to re-export the `lzma`, `bz2`, `gzip`, and `zlib` modules. Introduction of `compression.zstd` will be completed in a future commit once the `_zstd` module is merged. This commit also moves the `_compression` private module to `compression._common._streams`. * Re-exports existing module docstrings.
* gh-128384: Use a context variable for warnings.catch_warnings (gh-130010)Neil Schemenauer2025-04-091-0/+1
| | | | | | | | | | | | | | | | | | | | Make `warnings.catch_warnings()` use a context variable for holding the warning filtering state if the `sys.flags.context_aware_warnings` flag is set to true. This makes using the context manager thread-safe in multi-threaded programs. Add the `sys.flags.thread_inherit_context` flag. If true, starting a new thread with `threading.Thread` will use a copy of the context from the caller of `Thread.start()`. Both these flags are set to true by default for the free-threaded build and false for the default build. Move the Python implementation of warnings.py into _py_warnings.py. Make _contextvars a builtin module. Co-authored-by: Kumar Aditya <kumaraditya@python.org>
* gh-109599: Expose `CapsuleType` via the `_types` module (#131969)Adam Turner2025-04-041-0/+1
|
* gh-99108: Implement HACL* HMAC (#130157)Bénédikt Tran2025-04-041-0/+1
| | | | | | | A new extension module, `_hmac`, now exposes the HACL* HMAC (formally verified) implementation. The HACL* implementation is used as a fallback implementation when the OpenSSL implementation of HMAC is not available or disabled. For now, only named hash algorithms are recognized and SIMD support provided by HACL* for the BLAKE2 hash functions is not yet used.
* gh-118761: Optimise import time for ast (#131953)Adam Turner2025-04-021-0/+1
|
* gh-126925: Modify how iOS test results are gathered (#127592)Russell Keith-Magee2024-12-091-0/+1
| | | | | | | Adds a `use_system_log` config item to enable stdout/stderr redirection for Apple platforms. This log streaming is then used by a new iOS test runner script, allowing the display of test suite output at runtime. The iOS test runner script can be used by any Python project, not just the CPython test suite.
* gh-123892: Add "_wmi" to sys.stdlib_module_names (#123893)Victor Stinner2024-09-101-0/+1
|
* gh-119180: Add `annotationlib` module to support PEP 649 (#119891)Jelle Zijlstra2024-07-231-0/+1
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-111201: A new Python REPL (GH-111567)Pablo Galindo Salgado2024-05-051-0/+1
| | | | | | | Co-authored-by: Łukasz Langa <lukasz@langa.pl> Co-authored-by: Marta Gómez Macías <mgmacias@google.com> Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-117225: Move colorize functionality to own internal module (#118283)Hugo van Kemenade2024-05-011-0/+1
|
* gh-116622: Redirect stdout and stderr to system log when embedded in an ↵Malcolm Smith2024-04-301-0/+1
| | | | Android app (#118063)
* gh-76785: Rename _xxsubinterpreters to _interpreters (gh-117791)Eric Snow2024-04-241-0/+3
| | | See https://discuss.python.org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26.
* gh-114099: Additions to standard library to support iOS (GH-117052)Russell Keith-Magee2024-03-281-0/+1
| | | | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Malcolm Smith <smith@chaquo.com> Co-authored-by: Ned Deily <nad@python.org>
* gh-110721: Remove unused code from suggestions.c after moving PyErr_Display ↵Pablo Galindo Salgado2024-01-081-0/+1
| | | | to use the traceback module (#113712)
* gh-88402: Add new sysconfig variables on Windows (GH-110049)Sam Gross2023-10-041-0/+1
| | | | Co-authored-by: Filipe Laíns <filipe.lains@gmail.com>
* gh-105481: generate _specializations and _specialized_instructions from ↵Irit Katriel2023-06-191-0/+1
| | | | bytecodes.c (#105913)
* gh-104773: PEP 594: Remove the imghdr module (#104777)Victor Stinner2023-05-261-1/+0
| | | | | | * Remove the Lib/test/imghdrdata/ directory. * Copy 5 pictures (gif, png, ppm, pgm, xbm) from removed Lib/test/imghdrdata/ to a new Lib/test/tkinterdata/ directory. * Update Sphinx from 4.5 to 6.2 in Doc/requirements.txt.
* gh-104773: PEP 594: Remove the chunk module (#104868)Victor Stinner2023-05-251-1/+0
| | | The module had no tests.
* gh-104773: PEP 594: Remove the audioop module (#104937)Victor Stinner2023-05-251-1/+0
|
* gh-104773: PEP 594: Remove the aifc module (#104933)Victor Stinner2023-05-251-1/+0
| | | | * Remove .aifc and .aiff test files of Lib/test/audiodata/ * Remove Lib/test/Sine-1000Hz-300ms.aif test file
* gh-104773: PEP 594: Remove the uu module (#104932)Victor Stinner2023-05-251-1/+0
| | | | Doc/license.rst: Keep the UUencode and UUdecode license since it's also used by the uu codec.
* gh-104773: PEP 594: Remove the crypt module (#104908)Victor Stinner2023-05-251-2/+0
| | | | Remove the crypt module and its private _crypt extension, deprecated in Python 3.11.
* gh-104773: Remove the msilib package (GH-104911)Zachary Ware2023-05-251-2/+0
|
* gh-104773: PEP 594: Remove the xdrlib module (#104900)Victor Stinner2023-05-241-1/+0
| | | pickle documentation no longer mentions the XDR format.
* gh-104773: PEP 594: Remove the nis module (#104897)Victor Stinner2023-05-241-1/+0
|
* gh-104773: PEP 594: Remove the nntplib module (#104894)Victor Stinner2023-05-241-1/+0
| | | | | | | | * socket_helper.transient_internet() no longer imports nntplib to catch nntplib.NNTPTemporaryError. * ssltests.py no longer runs test_nntplib. * "make quicktest" no longer runs test_nntplib. * WASM: remove nntplib from OMIT_NETWORKING_FILES. * Remove mentions to nntplib in the email documentation.
* gh-104773: PEP 594: Remove the spwd module (#104871)Victor Stinner2023-05-241-1/+0
| | | Remove spwd from the configure script and Modules/Setup.
* gh-104773: PEP 594: Remove the mailcap module (#104867)Victor Stinner2023-05-241-1/+0
| | | Remove Lib/test/mailcap.txt test file.
* gh-104773: PEP 594: Remove the sunau module (#104863)Victor Stinner2023-05-241-1/+0
| | | | * Remove Lib/test/audiodata/pluck-*.au files. * Remove Lib/test/audiotest.au file.
* gh-104773: PEP 594: Remove the ossaudiodev module (#104862)Victor Stinner2023-05-241-1/+0
| | | | | * Remove ossaudiodev extension in configure.ac and regenerate the configure script. * Remove ossaudiodev in Modules/Setup and Modules/Setup.stdlib.in.
* gh-104773: PEP 594: Remove the pipes module (#104848)Victor Stinner2023-05-241-1/+0
|
* gh-104773: PEP 594: Remove the sndhdr module (#104774)Victor Stinner2023-05-241-1/+0
| | | Remove the Lib/test/sndhdrdata/ directory.
* gh-104773: PEP 594: Remove cgi and cgitb modules (#104775)Victor Stinner2023-05-241-2/+0
| | | | | * Replace "cgi" with "!cgi" in the Sphinx documentation to avoid warnings on broken references. * test_pyclbr no longer tests the cgi module.
* gh-104780: Remove 2to3 program and lib2to3 module (#104781)Victor Stinner2023-05-231-1/+0
| | | | | | | | | * Remove the Tools/scripts/2to3 script. * Remove the Lib/test/test_lib2to3/ directory. * Doc/tools/extensions/pyspecific.py: remove the "2to3fixer" object type. * Makefile and PC/layout/main.py no longer compile lib2to3 grammar files. * Update Makefile for 2to3 removal.
* gh-104773: PEP 594: Remove the telnetlib module (#104778)Victor Stinner2023-05-231-1/+0
|
* GH-84976: Move Lib/datetime.py to Lib/_pydatetimePaul Ganssle2023-05-031-0/+1
| | | | | | This breaks the tests, but we are keeping it as a separate commit so that the move operation and editing of the moved files are separate, for a cleaner history.
* gh-98040: Remove just the `imp` module (#98573)Barry Warsaw2023-04-281-1/+0
|
* gh-99108: Refactor _sha256 & _sha512 into _sha2. (#101924)Gregory P. Smith2023-02-161-2/+1
| | | | | | | | | This merges their code. They're backed by the same single HACL* static library, having them be a single module simplifies maintenance. This should unbreak the wasm enscripten builds that currently fail due to linking in --whole-archive mode and the HACL* library appearing twice. Long unnoticed error fixed: _sha512.SHA384Type was doubly assigned and was actually SHA512Type. Nobody depends on those internal names. Also rename LIBHACL_ make vars to LIBHACL_SHA2_ in preperation for other future HACL things.
* gh-72719: Remove asyncore and asynchat modules (#96580)Nikita Sobolev2022-11-081-2/+0
| | | | | Remove modules asyncore and asynchat, which were deprecated by PEP 594. Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-92584: Remove the distutils package (#99061)Victor Stinner2022-11-031-1/+0
| | | | | | | | | | | | Remove the distutils package. It was deprecated in Python 3.10 by PEP 632 "Deprecate distutils module". For projects still using distutils and cannot be updated to something else, the setuptools project can be installed: it still provides distutils. * Remove Lib/distutils/ directory * Remove test_distutils * Remove references to distutils * Skip test_check_c_globals and test_peg_generator since they use distutils
* gh-90716: add _pylong.py module (#96673)Neil Schemenauer2022-10-261-0/+1
| | | | | | | | | | | | Add Python implementations of certain longobject.c functions. These use asymptotically faster algorithms that can be used for operations on integers with many digits. In those cases, the performance overhead of the Python implementation is not significant since the asymptotic behavior is what dominates runtime. Functions provided by this module should be considered private and not part of any public API. Co-author: Tim Peters <tim.peters@gmail.com> Co-author: Mark Dickinson <dickinsm@gmail.com> Co-author: Bjorn Martinsson
* gh-97669: Create Tools/build/ directory (#97963)Victor Stinner2022-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Create Tools/build/ directory. Move the following scripts from Tools/scripts/ to Tools/build/: * check_extension_modules.py * deepfreeze.py * freeze_modules.py * generate_global_objects.py * generate_levenshtein_examples.py * generate_opcode_h.py * generate_re_casefix.py * generate_sre_constants.py * generate_stdlib_module_names.py * generate_token.py * parse_html5_entities.py * smelly.py * stable_abi.py * umarshal.py * update_file.py * verify_ensurepip_wheels.py Update references to these scripts.
* gh-93243: Make smtpd private before porting its users (GH-93246)Oleg Iarygin2022-08-061-1/+0
| | | | | | | gh-93243 This PR is required to reduce diffs of the following porting (no need to either maintain documentation and tests consistent with each porting step, or try to port everything and remove smtpd in a single PR). Automerge-Triggered-By: GH:warsaw
* gh-93939: Build C extensions without setup.py (GH-94474)Christian Heimes2022-07-141-1/+0
| | | Combines GH-93940, GH-94452, and GH-94433
* bpo-40059: Add tomllib (PEP-680) (GH-31498)Taneli Hukkinen2022-03-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a new standard library module, `tomllib`, for parsing TOML. The implementation is based on Tomli (https://github.com/hukkin/tomli). ## Steps taken (converting `tomli` to `tomllib`) - Move everything in `tomli:src/tomli` to `Lib/tomllib`. Exclude `py.typed`. - Remove `__version__ = ...` line from `Lib/tomllib/__init__.py` - Move everything in `tomli:tests` to `Lib/test/test_tomllib`. Exclude the following test data dirs recursively: - `tomli:tests/data/invalid/_external/` - `tomli:tests/data/valid/_external/` - Create `Lib/test/test_tomllib/__main__.py`: ```python import unittest from . import load_tests unittest.main() ``` - Add the following to `Lib/test/test_tomllib/__init__.py`: ```python import os from test.support import load_package_tests def load_tests(*args): return load_package_tests(os.path.dirname(__file__), *args) ``` Also change `import tomli as tomllib` to `import tomllib`. - In `cpython/Lib/tomllib/_parser.py` replace `__fp` with `fp` and `__s` with `s`. Add the `/` to `load` and `loads` function signatures. - Run `make regen-stdlib-module-names` - Create `Doc/library/tomllib.rst` and reference it in `Doc/library/fileformats.rst`