mirror of
https://github.com/python/cpython.git
synced 2026-01-06 07:22:09 +00:00
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`
148 lines
4.6 KiB
Text
148 lines
4.6 KiB
Text
# See https://help.github.com/articles/about-codeowners/
|
|
# for more info about CODEOWNERS file
|
|
|
|
# It uses the same pattern rule for gitignore file
|
|
# https://git-scm.com/docs/gitignore#_pattern_format
|
|
|
|
# asyncio
|
|
**/*asyncio* @1st1 @asvetlov
|
|
|
|
# Core
|
|
**/*context* @1st1
|
|
**/*genobject* @1st1 @markshannon
|
|
**/*hamt* @1st1
|
|
Objects/set* @rhettinger
|
|
Objects/dict* @methane @markshannon
|
|
Objects/type* @markshannon
|
|
Objects/codeobject.c @markshannon
|
|
Objects/frameobject.c @markshannon
|
|
Objects/call.c @markshannon
|
|
Python/ceval.c @markshannon
|
|
Python/compile.c @markshannon
|
|
Python/ast_opt.c @isidentical
|
|
Lib/test/test_patma.py @brandtbucher
|
|
Lib/test/test_peepholer.py @brandtbucher
|
|
|
|
# Exceptions
|
|
Lib/traceback.py @iritkatriel
|
|
Lib/test/test_except*.py @iritkatriel
|
|
Lib/test/test_traceback.py @iritkatriel
|
|
Objects/exceptions.c @iritkatriel
|
|
Python/traceback.c @iritkatriel
|
|
Python/pythonrun.c @iritkatriel
|
|
|
|
# Hashing
|
|
**/*hashlib* @tiran
|
|
**/*pyhash* @tiran
|
|
**/*sha* @tiran
|
|
**/*md5* @tiran
|
|
**/*blake* @tiran
|
|
/Modules/_blake2/** @tiran
|
|
/Modules/_sha3/** @tiran
|
|
|
|
# logging
|
|
**/*logging* @vsajip
|
|
|
|
# venv
|
|
**/*venv* @vsajip
|
|
|
|
# Launcher
|
|
/PC/launcher.c @vsajip
|
|
|
|
# HTML
|
|
/Lib/html/ @ezio-melotti
|
|
/Lib/_markupbase.py @ezio-melotti
|
|
/Lib/test/test_html*.py @ezio-melotti
|
|
|
|
# Import (including importlib).
|
|
# Ignoring importlib.h so as to not get flagged on
|
|
# all pull requests that change the emitted
|
|
# bytecode.
|
|
**/*import*.c @brettcannon @encukou @ericsnowcurrently @ncoghlan @warsaw
|
|
**/*import*.py @brettcannon @encukou @ericsnowcurrently @ncoghlan @warsaw
|
|
|
|
# Dates and times
|
|
**/*datetime* @pganssle @abalkin
|
|
**/*str*time* @pganssle @abalkin
|
|
Doc/library/time.rst @pganssle @abalkin
|
|
Lib/test/test_time.py @pganssle @abalkin
|
|
Modules/timemodule.c @pganssle @abalkin
|
|
Python/pytime.c @pganssle @abalkin
|
|
Include/pytime.h @pganssle @abalkin
|
|
|
|
# Email and related
|
|
**/*mail* @python/email-team
|
|
**/*smtp* @python/email-team
|
|
**/*mime* @python/email-team
|
|
**/*imap* @python/email-team
|
|
**/*poplib* @python/email-team
|
|
|
|
# Garbage collector
|
|
/Modules/gcmodule.c @pablogsal
|
|
/Doc/library/gc.rst @pablogsal
|
|
|
|
# Parser
|
|
/Parser/ @pablogsal @lysnikolaou
|
|
/Tools/peg_generator/ @pablogsal @lysnikolaou
|
|
/Lib/test/test_peg_generator/ @pablogsal @lysnikolaou
|
|
/Grammar/python.gram @pablogsal @lysnikolaou
|
|
|
|
# AST
|
|
Python/ast.c @isidentical
|
|
Parser/asdl.py @isidentical
|
|
Parser/asdl_c.py @isidentical
|
|
Lib/ast.py @isidentical
|
|
|
|
# Mock
|
|
/Lib/unittest/mock.py @cjw296
|
|
/Lib/unittest/test/testmock/* @cjw296
|
|
|
|
# SQLite 3
|
|
**/*sqlite* @berkerpeksag
|
|
|
|
# subprocess
|
|
/Lib/subprocess.py @gpshead
|
|
/Lib/test/test_subprocess.py @gpshead
|
|
/Modules/*subprocess* @gpshead
|
|
|
|
# Windows
|
|
/PC/ @python/windows-team
|
|
/PCbuild/ @python/windows-team
|
|
|
|
# Urllib
|
|
**/*robotparser* @berkerpeksag
|
|
|
|
# Windows installer packages
|
|
/Tools/msi/ @python/windows-team
|
|
/Tools/nuget/ @python/windows-team
|
|
|
|
# Misc
|
|
**/*itertools* @rhettinger
|
|
**/*collections* @rhettinger
|
|
**/*random* @rhettinger
|
|
**/*queue* @rhettinger
|
|
**/*bisect* @rhettinger
|
|
**/*heapq* @rhettinger
|
|
**/*functools* @rhettinger
|
|
**/*decimal* @rhettinger
|
|
|
|
**/*dataclasses* @ericvsmith
|
|
|
|
**/*idlelib* @terryjreedy
|
|
|
|
**/*typing* @gvanrossum @Fidget-Spinner @JelleZijlstra
|
|
|
|
**/*asyncore @giampaolo
|
|
**/*asynchat @giampaolo
|
|
**/*ftplib @giampaolo
|
|
**/*shutil @giampaolo
|
|
|
|
**/*enum* @ethanfurman
|
|
**/*cgi* @ethanfurman
|
|
**/*tarfile* @ethanfurman
|
|
|
|
**/*tomllib* @encukou
|
|
|
|
# macOS
|
|
/Mac/ @python/macos-team
|
|
**/*osx_support* @python/macos-team
|