python / python/mypy

[stubgen] Nested classes in `NamedTuple`s are not produced

Offen
#15,752 0 Kommentare 0 Reaktionen 1 zugewiesene Person Auf GitHub ansehen

@sobolevn arbeitet bereits daran.

Seit 23.7.2023.

bug topic-named-tuple topic-stubgen
Vorherrschende Sprache
Python
Sterne
20.6k
Forks
3.3k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Consider this code:

from typing import NamedTuple

class A(NamedTuple):
    class B: ...

In runtime you can freely access it:

>>> from typing import NamedTuple
>>> 
>>> class A(NamedTuple):
...     class B: ...
... 
>>> A.B
<class '__main__.A.B'>

But, stubgen does ignore it:

» stubgen ex.py && bat out/ex.pyi
Processed 1 modules
Generated out/ex.pyi
───────┬───────────────────────────────────────────────────────────────────────────────────
       │ File: out/ex.pyi
───────┼───────────────────────────────────────────────────────────────────────────────────
   1   │ from typing import NamedTuple
   2   │ 
   3   │ class A(NamedTuple): ...
───────┴───────────────────────────────────────────────────────────────────────────────────

This needs to be fixed.

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.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

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