Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

`PromptSession.prompt()` ignores `validator=None`

Offen Anfängerfreundlich
#2,159 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@cumminskd arbeitet bereits daran.

Seit 28.10.2026.

  • #2161 von @JackyHsu-X — offen
  • #2162 von @cumminskd — offen

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
68/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
python
Bereich
cli

Rechercherichtung

Lies zuerst PromptSession.prompt() und die Behandlung des Arguments validator, dann sieh dir die zugehörigen Tests für die Prompt-Validierung und wiederholte Aufrufe an. Reproduziere das Beispiel mit einem Validator, gefolgt von validator=None; fertig ist es, wenn der zweite Prompt leere Eingaben akzeptiert, ohne session.validator direkt zu ändern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

When set a validator with validator arg of PromptSession.prompt(), unable to drop it on a next call with validator=None arg. validator=some_other_validator works.

Example:

import prompt_toolkit

session = prompt_toolkit.PromptSession()

not_empty_validator = prompt_toolkit.validation.Validator.from_callable(lambda x: x)
session.prompt('Obligatory: ', validator=not_empty_validator)
# OK: "Invalid input" on empty line
session.prompt('Obligatory: ', validator=None)
# BAD: validator is still here
session.validator = None
session.prompt('Obligatory: ')
# OK: takes empty

prompt_toolkit==3.0.53
Python==3.15.0

Vorherrschende Sprache
Python
Sterne
10.6k
Forks
837
Ø Merge
15 Std. 43 Min.
Gemergte PRs (30 T.)
1

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus prompt-toolkit/python-prompt-toolkit

Alle Issues in prompt-toolkit/python-prompt-toolkit

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.