diff -r 52b05cedb7c3 Lib/inspect.py --- a/Lib/inspect.py Wed May 20 14:38:50 2015 -0400 +++ b/Lib/inspect.py Wed May 20 17:02:48 2015 -0400 @@ -2661,11 +2661,17 @@ @classmethod def from_function(cls, func): """Constructs Signature for the given python function.""" + + warnings.warn("inspect.Signature.from_function() is deprecated, " + "use Signature.from_callback()", DeprecationWarning) return _signature_from_function(cls, func) @classmethod def from_builtin(cls, func): """Constructs Signature for the given builtin function.""" + + warnings.warn("inspect.Signature.from_builtin() is deprecated, " + "use Signature.from_callback()", DeprecationWarning) return _signature_from_builtin(cls, func) @classmethod diff -r 52b05cedb7c3 Lib/test/test_inspect.py --- a/Lib/test/test_inspect.py Wed May 20 14:38:50 2015 -0400 +++ b/Lib/test/test_inspect.py Wed May 20 17:02:48 2015 -0400 @@ -1971,13 +1971,6 @@ with self.assertRaisesRegex(TypeError, 'is not a callable object'): inspect.signature(42) - with self.assertRaisesRegex(TypeError, 'is not a Python function'): - inspect.Signature.from_function(42) - - def test_signature_from_builtin_errors(self): - with self.assertRaisesRegex(TypeError, 'is not a Python builtin'): - inspect.Signature.from_builtin(42) - def test_signature_from_functionlike_object(self): def func(a,b, *args, kwonly=True, kwonlyreq, **kwargs): pass @@ -1998,9 +1991,9 @@ def __call__(self, *args, **kwargs): return self.func(*args, **kwargs) - sig_func = inspect.Signature.from_function(func) - - sig_funclike = inspect.Signature.from_function(funclike(func)) + sig_func = inspect.Signature.from_callable(func) + + sig_funclike = inspect.Signature.from_callable(funclike(func)) self.assertEqual(sig_funclike, sig_func) sig_funclike = inspect.signature(funclike(func)) @@ -2048,9 +2041,6 @@ __defaults__ = func.__defaults__ __kwdefaults__ = func.__kwdefaults__ - with self.assertRaisesRegex(TypeError, 'is not a Python function'): - inspect.Signature.from_function(funclike) - self.assertEqual(str(inspect.signature(funclike)), '(marker)') def test_signature_on_method(self):