Update `Lib/test/crashers`
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 77.2k
- Fork
- 35.9k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
The Lib/test/crashers directory contains some Python files that are known to crash the interpreters. I thought it'd be useful to check in on whether they are still crashing the interpreter.
Here's what I get on a current-ish 3.14 build:
bogus_code_obj.py: TypeError because we're missing some arguments to the CodeType constructor. I assume this would still crash if you pass the missing args though.gc_inspection.py: segfaultinfinite_loop_re.py: takes a long time (this is not exactly a crasher, just a ReDoS)mutation_inside_cyclegc.py: no errorrecursive_call.py: hangs for a long time (this sets the recursion limit to a huge value and then does runaway recursion). I believe Mark Shannon's recent interpreter changes make it so this doesn't segfault. Interestingly, I can't kill the process with Ctrl-C, maybe a bug?trace_at_recursion_limit.py: RecursionError (which is not a crash)underlying_dict.py: segfault
I'll send a PR to make bogus_code_obj.py properly segfault again. Some of the other ones should perhaps be removed.
Linked PRs
- gh-121922
- gh-126360
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Esamina i file elencati in Lib/test/crashers, iniziando da bogus_code_obj.py, gc_inspection.py, mutation_inside_cyclegc.py, recursive_call.py, trace_at_recursion_limit.py e underlying_dict.py. Eseguili su una build corrente di CPython e confronta il loro comportamento con il report dell’issue, verificando anche le PR collegate gh-121922 e gh-126360. Il lavoro è completato quando i crashers sono stati aggiornati o rimossi in base al loro comportamento attuale.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- testing
- Tipo di issue
- Refactoring
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100