xref: /spdk/python/spdk/rpc/helpers.py (revision 588dfe314bb83d86effdf67ec42837b11c2620bf)
1*588dfe31SMichal Berger#  SPDX-License-Identifier: BSD-3-Clause
2*588dfe31SMichal Berger#  Copyright (C) 2019 Intel Corporation.
3*588dfe31SMichal Berger#  All rights reserved.
4*588dfe31SMichal Berger
57610bc38SKonrad Sztyberimport sys
67610bc38SKonrad Sztyber
77610bc38SKonrad Sztyberdeprecated_aliases = {}
87610bc38SKonrad Sztyber
97610bc38SKonrad Sztyber
107610bc38SKonrad Sztyberdef deprecated_alias(old_name):
117610bc38SKonrad Sztyber    def wrap(f):
127610bc38SKonrad Sztyber        def old_f(*args, **kwargs):
137610bc38SKonrad Sztyber            ret = f(*args, **kwargs)
147610bc38SKonrad Sztyber            print("{} is deprecated, use {} instead.".format(old_name, f.__name__), file=sys.stderr)
157610bc38SKonrad Sztyber            return ret
167610bc38SKonrad Sztyber        old_f.__name__ = old_name
177610bc38SKonrad Sztyber        deprecated_aliases[old_name] = f.__name__
187610bc38SKonrad Sztyber        setattr(sys.modules[f.__module__], old_name, old_f)
197610bc38SKonrad Sztyber        return f
207610bc38SKonrad Sztyber    return wrap
21