~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/symbol_versioning.py

first cut at merge from integration.

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
 
23
23
__all__ = ['deprecated_function',
24
24
           'deprecated_method',
25
 
           'DEPRECATED_PARAMETER',
 
25
           'deprecated_nonce',
26
26
           'deprecated_passed',
27
27
           'warn', 'set_warning_method', 'zero_seven',
28
28
           'zero_eight',
29
 
           'zero_nine',
30
29
           ]
31
30
 
32
31
from warnings import warn
33
32
 
34
33
 
35
 
DEPRECATED_PARAMETER = "A deprecated parameter marker."
 
34
deprecated_nonce = "A deprecated parameter marker."
36
35
zero_seven = "%s was deprecated in version 0.7."
37
36
zero_eight = "%s was deprecated in version 0.8."
38
 
zero_nine = "%s was deprecated in version 0.9."
39
37
 
40
38
 
41
39
def set_warning_method(method):
110
108
    # def __init__(self, bad, other)
111
109
    # def __init__(self, **kwargs)
112
110
    # RBC 20060116
113
 
    return not parameter_value is DEPRECATED_PARAMETER
 
111
    return not parameter_value is deprecated_nonce
114
112
 
115
113
 
116
114
def _decorate_docstring(callable, deprecation_version, label,
117
115
                        decorated_callable):
118
 
    if callable.__doc__:
119
 
        docstring_lines = callable.__doc__.split('\n')
120
 
    else:
121
 
        docstring_lines = []
 
116
    docstring_lines = callable.__doc__.split('\n')
122
117
    if len(docstring_lines) == 0:
123
118
        decorated_callable.__doc__ = deprecation_version % ("This " + label)
124
119
    elif len(docstring_lines) == 1:
144
139
                        decorated_callable)
145
140
    decorated_callable.__module__ = callable.__module__
146
141
    decorated_callable.__name__ = callable.__name__
147
 
    decorated_callable.is_deprecated = True