docs: def get_caller(*caller_class, **params):
      """
      This is obsolete and references are being removed
  """
      (frame, file, line, func, contextlist, index) = inspect.stack()[1]
  
      try: class_name = frame.f_locals["self"].__class__.__name__
      except: class_name = None
  
      if class_name:
          name = class_name + '.'
      elif caller_class != ():                                                                    # pragma: no cover
          name = inspect.getmodule(caller_class[0]).__name__ + '.'
      elif hasattr(inspect.getmodule(frame), '__name__'):
          name = inspect.getmodule(frame).__name__ + '.'
      else:                                                                                       # pragma: no cover
          name = ''
  
      if func == '__init__' and class_name:
          name = class_name + '()'
      elif name == '__main__.':                                                                   # pragma: no cover
          name = func + '()'
      else:
          name += func + '()'
  
      if 'persist_place' in params:
          get_caller._Persist_Place = params['persist_place']
  
      log = params.get('log', logging.getLogger())
      if get_caller._Persist_Place or params.get('place') or log.isEnabledFor(logging.DEBUG):
          name += ' [+{} {}]'.format(line, os.path.basename(file))
      return name