#! /bin/env python3 # encoding: utf-8 import sys import traceback from . import text _print = text.Output('over.core', stream=sys.stderr) class DeprecationForwarder: def __init__(self, target, old_name, new_name): self._target = target self._old_name = old_name self._new_name = new_name def __getattr__(self, name): caller = traceback.extract_stack()[-2] _print('%s is deprecated, please use %s instead (%s:%d)' %(self._old_name, self._new_name, caller[0], caller[1]), text.prefix.warn) return getattr(self._target, name)