This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Use atomic groups to simplify fnmatch
Type: behavior Stage: resolved
Components: Library (Lib) Versions: Python 3.11
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: tim.peters Nosy List: serhiy.storchaka, tim.peters
Priority: normal Keywords: patch

Created on 2022-03-21 04:03 by tim.peters, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 32029 merged tim.peters, 2022-03-21 17:22
Messages (2)
msg415662 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2022-03-21 04:03
I added some excruciatingly obscure technical tricks to ensure that fnmatch.py's regexps can't fall into exponential-time match failures.

It's hard to stop re from useless backtracking. But the new "atomic groups" make that easy instead in some cases, and make it trivial in the cases fnmatch needs.

Of course addressing this has to wait for the atomic groups PR to get merged GH-31982)
msg415692 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2022-03-21 17:49
New changeset 5c3201e146b251017cd77202015f47912ddcb980 by Tim Peters in branch 'main':
bpo-47080: Use atomic groups to simplify fnmatch (GH-32029)
https://github.com/python/cpython/commit/5c3201e146b251017cd77202015f47912ddcb980
History
Date User Action Args
2022-04-11 14:59:57adminsetgithub: 91236
2022-03-21 17:50:22tim.peterssetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2022-03-21 17:49:52tim.peterssetmessages: + msg415692
2022-03-21 17:22:15tim.peterssetkeywords: + patch
stage: needs patch -> patch review
pull_requests: + pull_request30118
2022-03-21 05:21:53serhiy.storchakasetnosy: + serhiy.storchaka
2022-03-21 04:03:21tim.peterscreate