[Python-Dev] Postponed annotations break inspection of dataclasses (original) (raw)

Yury Selivanov yselivanov.ml at gmail.com
Sat Sep 22 16:38:22 EDT 2018


On Sat, Sep 22, 2018 at 3:11 PM Guido van Rossum <guido at python.org> wrote: [..]

Still, I wonder if there's a tweak possible of the globals and locals used when exec()'ing the function definitions in dataclasses.py, so that gettypehints() gets the right globals for this use case.

It's really tough to be at the intersection of three PEPs...

If it's possible to fix exec() to accept any Mapping (not just dicts), then we can create a proxy mapping for "Dataclass.init.module" module and everything would work as expected.

Here's a very hack-ish fix we can use in meanwhile (even in 3.7.1?): https://gist.github.com/1st1/37fdd3cc84cd65b9af3471b935b722df

Yury



More information about the Python-Dev mailing list