python / python/mypy

Setting two arguments to `Optional` within `reveal_type()` doesn't get error

Offen
#20,432 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug topic-reveal-type topic-runtime-semantics
Vorherrschende Sprache
Python
Sterne
20.6k
Forks
3.3k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

*Memo:
mypy test.py
mypy 1.19.1
Python 3.14.0
Windows 11

Setting two arguments to Optional properly gets the error as shown below:

from typing import Optional

          # ↓↓↓  ↓↓↓
v: Optional[int, str] = 100 # Error

error: Optional[...] must have exactly one type argument

But, setting two arguments to Optional within reveal_type() doesn't get the error as shown below so the error should occur:

from typing import Optional, reveal_type

                   # ↓↓↓  ↓↓↓
reveal_type(Optional[int, str]) # No error

note: Revealed type is "typing._SpecialForm"

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduziere das Problem anhand der bereitgestellten test.py-Snippets mit mypy 1.19.1 unter Python 3.14. Beginne damit nachzuverfolgen, wie reveal_type() Optional[int, str] im Vergleich zu einem Annotationskontext verarbeitet. Als erledigt gilt es, wenn der reveal_type()-Ausdruck denselben Fehler wegen ungültiger Argumente wie die Annotation meldet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
devtools, tooling
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
62/100

Neue Issues direkt in Ihr Postfach

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