def _update_config(self, config: Config) -> None: """Update configurations by new one.""" self.config_status = CONFIG_OK self.config_status_extra = '' if self.config is None: self.config_status = CONFIG_NEW elif self.config.extensions != config.extensions: self.config_status = CONFIG_EXTENSIONS_CHANGED extensions = sorted( set(self.config.extensions) ^ set(config.extensions)) if len(extensions) == 1: extension = extensions[0] else: extension = '%d' % (len(extensions), ) self.config_status_extra = ' (%r)' % (extension, ) else: # check if a config value was changed that affects how # doctrees are read for item in config.filter('env'): if self.config[item.name] != item.value: self.config_status = CONFIG_CHANGED self.config_status_extra = ' (%r)' % (item.name, ) break self.config = config
def __init__(self, config: Config = None, tags: Tags = None, config_categories: List[str] = []) -> None: # NOQA self.config_hash = '' self.tags_hash = '' if config: values = {c.name: c.value for c in config.filter(config_categories)} self.config_hash = get_stable_hash(values) if tags: self.tags_hash = get_stable_hash(sorted(tags))
def _update_config(self, config: Config) -> None: """Update configurations by new one.""" self.config_status = CONFIG_OK if self.config is None: self.config_status = CONFIG_NEW elif self.config.extensions != config.extensions: self.config_status = CONFIG_EXTENSIONS_CHANGED else: # check if a config value was changed that affects how # doctrees are read for item in config.filter('env'): if self.config[item.name] != item.value: self.config_status = CONFIG_CHANGED break self.config = config