code: def set_config(config, overwrite=False):
      '''
      Updates the global configuration.
  
      :param config: Can be a dictionary containing configuration, or a string
                     which represents a (relative) configuration filename.
      '''
  
      if config is None:
          config = get_conf_path_from_env()
  
      # must be after the fallback other a bad fallback will incorrectly clear
      if overwrite is True:
          _runtime_conf.empty()
  
      if isinstance(config, six.string_types):
          config = conf_from_file(config)
          _runtime_conf.update(config)
          if config.__file__:
              _runtime_conf.__file__ = config.__file__
      elif isinstance(config, dict):
          _runtime_conf.update(conf_from_dict(config))
      else:
          raise TypeError('%s is neither a dictionary or a string.' % configf set_config(config, overwrite=False):
      '''
      Updates the global configuration.
  
      :param config: Can be a dictionary containing configuration, or a string
                     which represents a (relative) configuration filename.
      '''
  
      if config is None:
          config = get_conf_path_from_env()
  
      # must be after the fallback other a bad fallback will incorrectly clear
      if overwrite is True:
          _runtime_conf.empty()
  
      if isinstance(config, six.string_types):
          config = conf_from_file(config)
          _runtime_conf.update(config)
          if config.__file__:
              _runtime_conf.__file__ = config.__file__
      elif isinstance(config, dict):
          _runtime_conf.update(conf_from_dict(config))
      else:
          raise TypeError('%s is neither a dictionary or a string.' % config)
docs: Updates the global configuration.
  
      :param config: Can be a dictionary containing configuration, or a string
                     which represents a (relative) configuration filename.