`configparser.getboolean()` raises `AttributeError` for a value-less option
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
Bug description
When ConfigParser uses allow_no_value=True, calling getboolean() on a value-less option raises AttributeError instead of the documented ValueError.
Documentation:
https://docs.python.org/3/library/configparser.html#configparser.ConfigParser.getboolean
Reproducer
import configparser
config = configparser.ConfigParser(allow_no_value=True)
config.read_string("""
[section]
enabled
""")
assert config.get("section", "enabled") is None
config.getboolean("section", "enabled")
Current result:
AttributeError: 'NoneType' object has no attribute 'lower'
Expected result:
ValueError: Not a boolean: None
CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux
Linked PRs
- gh-155437
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
Inizia dal punto di ingresso ConfigParser.getboolean() e riproduci il caso dell’opzione priva di valore descritto nell’issue. Controlla i test esistenti di configparser per la conversione booleana e aggiungi una copertura che mostri il ValueError documentato per None; il lavoro è completato quando questo caso non solleva più AttributeError.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- backend
- Tipo di issue
- Bug
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 35/100