MCPcopy
hub / github.com/ArchiveBox/ArchiveBox / load_config

Function load_config

archivebox/config.py:748–784  ·  view source on GitHub ↗
(defaults: ConfigDefaultDict,
                config: Optional[ConfigDict]=None,
                out_dir: Optional[str]=None,
                env_vars: Optional[os._Environ]=None,
                config_file_vars: Optional[Dict[str, str]]=None)

Source from the content-addressed store, hash-verified

746
747
748def load_config(defaults: ConfigDefaultDict,
749 config: Optional[ConfigDict]=None,
750 out_dir: Optional[str]=None,
751 env_vars: Optional[os._Environ]=None,
752 config_file_vars: Optional[Dict[str, str]]=None) -> ConfigDict:
753
754 env_vars = env_vars or os.environ
755 config_file_vars = config_file_vars or load_config_file(out_dir=out_dir)
756
757 extended_config: ConfigDict = config.copy() if config else {}
758 for key, default in defaults.items():
759 try:
760 extended_config[key] = load_config_val(
761 key,
762 default=default['default'],
763 type=default.get('type'),
764 aliases=default.get('aliases'),
765 config=extended_config,
766 env_vars=env_vars,
767 config_file_vars=config_file_vars,
768 )
769 except KeyboardInterrupt:
770 raise SystemExit(0)
771 except Exception as e:
772 stderr()
773 stderr(f'[X] Error while loading configuration value: {key}', color='red', config=extended_config)
774 stderr(' {}: {}'.format(e.__class__.__name__, e))
775 stderr()
776 stderr(' Check your config for mistakes and try again (your archive data is unaffected).')
777 stderr()
778 stderr(' For config documentation and examples see:')
779 stderr(' https://github.com/ArchiveBox/ArchiveBox/wiki/Configuration')
780 stderr()
781 # raise
782 raise SystemExit(2)
783
784 return extended_config
785
786
787def parse_version_string(version: str) -> Tuple[int, int, int]:

Callers 1

load_all_configFunction · 0.85

Calls 4

load_config_fileFunction · 0.85
load_config_valFunction · 0.85
stderrFunction · 0.85
getMethod · 0.45

Tested by

no test coverage detected