summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Misc/NEWS.d/next/Build/2022-11-02-19-25-07.gh-issue-99016.R05NkD.rst1
-rw-r--r--Tools/build/generate_levenshtein_examples.py4
-rw-r--r--Tools/build/generate_opcode_h.py2
3 files changed, 4 insertions, 3 deletions
diff --git a/Misc/NEWS.d/next/Build/2022-11-02-19-25-07.gh-issue-99016.R05NkD.rst b/Misc/NEWS.d/next/Build/2022-11-02-19-25-07.gh-issue-99016.R05NkD.rst
new file mode 100644
index 0000000..df189da
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2022-11-02-19-25-07.gh-issue-99016.R05NkD.rst
@@ -0,0 +1 @@
+Fix build with ``PYTHON_FOR_REGEN=python3.8``.
diff --git a/Tools/build/generate_levenshtein_examples.py b/Tools/build/generate_levenshtein_examples.py
index 5a8360f..778eb45 100644
--- a/Tools/build/generate_levenshtein_examples.py
+++ b/Tools/build/generate_levenshtein_examples.py
@@ -1,7 +1,7 @@
"""Generate 10,000 unique examples for the Levenshtein short-circuit tests."""
import argparse
-from functools import cache
+from functools import lru_cache
import json
import os.path
from random import choices, randrange
@@ -22,7 +22,7 @@ def _substitution_cost(ch_a, ch_b):
return _MOVE_COST
-@cache
+@lru_cache(None)
def levenshtein(a, b):
if not a or not b:
return (len(a) + len(b)) * _MOVE_COST
diff --git a/Tools/build/generate_opcode_h.py b/Tools/build/generate_opcode_h.py
index 372221a..174573a 100644
--- a/Tools/build/generate_opcode_h.py
+++ b/Tools/build/generate_opcode_h.py
@@ -108,7 +108,7 @@ def main(opcode_py, outfile='Include/opcode.h', internaloutfile='Include/interna
opname_including_specialized[255] = 'DO_TRACING'
used[255] = True
- with (open(outfile, 'w') as fobj, open(internaloutfile, 'w') as iobj):
+ with open(outfile, 'w') as fobj, open(internaloutfile, 'w') as iobj:
fobj.write(header)
iobj.write(internal_header)