patchy
patchy copied to clipboard
Class closures does not work
Python Version
3.9.0
Package Version
2.6.0
Description
Trying to patch Foo.__init__
in this case:
class Foo:
ANY_VALUE = 42
def __init__(self, any_value=ANY_VALUE): pass
Would cause an error:
Traceback (most recent call last):
...
File "/home/kai/Projects/.../venv/lib/python3.9/site-packages/patchy/api.py", line 33, in patch
_do_patch(func, patch_text, forwards=True)
File "/home/kai/Projects/.../venv/lib/python3.9/site-packages/patchy/api.py", line 100, in _do_patch
_set_source(func, new_source)
File "/home/kai/Projects/.../venv/lib/python3.9/site-packages/patchy/api.py", line 321, in _set_source
new_func = localz["__patchy_freevars__"]()
File "<patchy>", line 4, in __patchy_freevars__
File "<patchy>", line 6, in Client
NameError: name 'ANY_VALUE' is not defined