diff options
author | Tim Peters <tim.peters@gmail.com> | 2024-05-25 03:08:21 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-25 03:08:21 (GMT) |
commit | de19694cfbcaa1c85c3a4b7184a24ff21b1c0919 (patch) | |
tree | e89934fb91ec8b089f7a088ac313275ee3f4a8b0 /Python/crossinterp.c | |
parent | 84be5244de75c92904fb41326c9a69f19051e7ab (diff) | |
download | cpython-de19694cfbcaa1c85c3a4b7184a24ff21b1c0919.zip cpython-de19694cfbcaa1c85c3a4b7184a24ff21b1c0919.tar.gz cpython-de19694cfbcaa1c85c3a4b7184a24ff21b1c0919.tar.bz2 |
gh-119105: Differ.compare is too slow [for degenerate cases] (#119492)
``_fancy_replace()`` is no longer recursive. and a single call does a worst-case linear number of ratio() computations instead of quadratic. This renders toothless a universe of pathological cases. Some inputs may produce different output, but that's rare, and I didn't find a case where the final diff appeared to be of materially worse quality. To the contrary, by refusing to even consider synching on lines "far apart", there was more easy-to-digest locality in the output.
Diffstat (limited to 'Python/crossinterp.c')
0 files changed, 0 insertions, 0 deletions