From c7fc13743fb19c5016147f3e752546219f021dcf Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Fri, 14 Mar 2014 14:48:33 +0100 Subject: [PATCH] add proper deprecation warnings and warnings become error messages in Jedi; also deprecate CallSignature.call_name --- conftest.py | 3 +++ jedi/api/classes.py | 10 +++++++++- test/test_api/test_call_signatures.py | 3 ++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/conftest.py b/conftest.py index e9335bcb..691f3df7 100644 --- a/conftest.py +++ b/conftest.py @@ -27,6 +27,9 @@ def pytest_addoption(parser): def pytest_configure(config): + import warnings + warnings.simplefilter("error") + global jedi_cache_directory_orig, jedi_cache_directory_temp jedi_cache_directory_orig = jedi.settings.cache_directory jedi_cache_directory_temp = tempfile.mkdtemp(prefix='jedi-test-') diff --git a/jedi/api/classes.py b/jedi/api/classes.py index 6641e70a..4165d611 100644 --- a/jedi/api/classes.py +++ b/jedi/api/classes.py @@ -583,7 +583,14 @@ class CallSignature(Definition): @property def call_name(self): - """ The name (e.g. 'isinstance') as a string. """ + """ + .. deprecated:: 0.8.0 + Use :attr:`.name` instead. + .. todo:: Remove! + + The name (e.g. 'isinstance') as a string. + """ + warnings.warn("Use name instead.", DeprecationWarning) return unicode(self._definition.name) def __repr__(self): @@ -603,4 +610,5 @@ class Param(Definition): A function to get the whole code of the param. """ + warnings.warn("Use description instead.", DeprecationWarning) return self.description diff --git a/test/test_api/test_call_signatures.py b/test/test_api/test_call_signatures.py index 8e2e274f..a8abddfa 100644 --- a/test/test_api/test_call_signatures.py +++ b/test/test_api/test_call_signatures.py @@ -193,7 +193,8 @@ def test_signature_is_definition(): # Now compare all the attributes that a CallSignature must also have. for attr_name in dir(definition): - if attr_name.startswith('_') or attr_name == 'defined_names': + dont_scan = ['defined_names', 'line_nr', 'start_pos'] + if attr_name.startswith('_') or attr_name in dont_scan: continue attribute = getattr(definition, attr_name) signature_attribute = getattr(signature, attr_name)