blob: 9dd6e67baa3619cceb7e226b40855fd0c6ad4fbe [file]
#!/usr/bin/env python3
import re
from stdlibs import py38, py39, py310, py311, py312, py313, py314, py315
PATH = "isort/stdlibs/py{}.py"
VERSIONS = [
py38,
py39,
py310,
py311,
py312,
py313,
py314,
py315,
]
DOCSTRING = """
File contains the standard library of Python {}.
DO NOT EDIT. If the standard library changes, a new list should be created
using the mkstdlibs.py script.
"""
for version_module in VERSIONS:
version_match = re.match(
r"^stdlibs\.py(?P<major>\d)(?P<minor>\d+)$",
version_module.__name__,
)
version_info = (version_match.groupdict()["major"], version_match.groupdict()["minor"])
path = PATH.format("".join(version_info))
with open(path, "w") as stdlib_file:
docstring = DOCSTRING.format(".".join(version_info))
stdlib_file.write(f'"""{docstring}"""\n\n')
stdlib_file.write("stdlib = {\n")
for module in sorted(version_module.module_names):
stdlib_file.write(f' "{module}",\n')
stdlib_file.write("}\n")