diff --git a/joblib/memory.py b/joblib/memory.py index dc95d2b1a..68b3ec8f8 100644 --- a/joblib/memory.py +++ b/joblib/memory.py @@ -344,6 +344,10 @@ class NotMemorizedFunc(object): # Should be a light as possible (for speed) def __init__(self, func): self.func = func + try: + functools.update_wrapper(self, func) + except: + "Objects like ufunc don't like that" def __call__(self, *args, **kwargs): return self.func(*args, **kwargs) diff --git a/joblib/test/test_memory.py b/joblib/test/test_memory.py index aaa7d1695..5071e38b4 100644 --- a/joblib/test/test_memory.py +++ b/joblib/test/test_memory.py @@ -700,6 +700,9 @@ def test_memorized_pickling(tmpdir): assert result2.get() == result.get() os.remove(filename) +def test_func_attrs(tmpdir): + assert NotMemorizedFunc(f).__name__ == 'f' + assert MemorizedFunc(f, tmpdir.strpath).__name__ == 'f' def test_memorized_repr(tmpdir): func = MemorizedFunc(f, tmpdir.strpath)