1# -*- coding: utf-8 -*- 2 3import warnings 4warnings.simplefilter('default', DeprecationWarning) 5 6from .utils import import_string, get_envvar 7 8 9def str_object(obj_path, silent=False, is_envvar=False): 10 """Get a configuration object from a string.""" 11 if is_envvar: 12 obj_path = get_envvar(obj_path, silent=silent) 13 14 try: 15 obj = import_string(obj_path) 16 except (ImportError, ValueError): 17 if not silent: 18 raise 19 else: 20 obj = None 21 22 return obj 23 24 25def envvar_object(var_name, silent=False): 26 """Get a configuration object from an environment variable.""" 27 warnings.warn('`envvar_object(name, silent)` is deprecated, use ' 28 '`str_object(name, silent, is_envvar=True)` instead.', 29 DeprecationWarning) 30 return str_object(var_name, silent=silent, is_envvar=True) 31