> On Sep 22, 2018, at 1:38 PM, Yury Selivanov <yselivanov.ml at gmail.com> wrote: > > 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 get_type_hints() 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 FWIW, the locals() dict for exec() already accepts any mapping (not just dicts): >>> class M: def __getitem__(self, key): return key.upper() def __setitem__(self, key, value): print(f'{key!r}: {value!r}') >>> exec('a=b', globals(), M()) 'a': 'B' Raymond
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4