1

Resolved

Need to specialize functools module

description

Most important:
  • _functools.partial
  • functools.wraps
Less important:
  • functools.update_wrapper
  • functools.total_ordering
Because we don't handle these properly (nor callable types, such as partial) we fail to properly analyze decorators using these:
def wrap(fn):
    @functools.wraps(fn)
    def wrapped(*args, **kwargs):
        return fn(*args, **kwargs)
    return wrapped

@wrap
def test(): pass
The analyzed type of test is unknown, but should be wrapped with __name__ set to "test".

comments