forked from Ponysearch/Ponysearch
2039060b64
The intention of this PR is to modernize the settings_loader implementations. The concept is old (remember, this is partly from 2014), back then we only had one config file, meanwhile we have had a folder with config files for a very long time. Callers can now load a YAML configuration from this folder as follows :: settings_loader.get_yaml_cfg('my-config.yml') - BTW this is a fix of #3557. - Further the `existing_filename_or_none` construct dates back to times when there was not yet a `pathlib.Path` in all Python versions we supported in the past. - Typehints have been added wherever appropriate At the same time, this patch should also be downward compatible and not introduce a new environment variable. The localization of the folder with the configurations is further based on: SEARXNG_SETTINGS_PATH (wich defaults to /etc/searxng/settings.yml) Which means, the default config folder is `/etc/searxng/`. ATTENTION: intended functional changes! If SEARXNG_SETTINGS_PATH was set and pointed to a not existing file, the previous implementation silently loaded the default configuration. This behavior has been changed: if the file or folder does not exist, an EnvironmentError exception will be thrown in future. Closes: https://github.com/searxng/searxng/issues/3557 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> |
||
---|---|---|
.. | ||
engines | ||
network | ||
processors | ||
settings | ||
__init__.py | ||
test_answerers.py | ||
test_engines_init.py | ||
test_exceptions.py | ||
test_external_bangs.py | ||
test_locales.py | ||
test_plugins.py | ||
test_preferences.py | ||
test_query.py | ||
test_results.py | ||
test_search.py | ||
test_settings_loader.py | ||
test_utils.py | ||
test_webadapter.py | ||
test_webapp.py | ||
test_webutils.py |