From 4d1fdc079d488fa736b1b8497ad325f5c59a0de9 Mon Sep 17 00:00:00 2001
From: dmt <>
Date: Tue, 12 Nov 2019 18:28:02 +0100
Subject: [PATCH] Load default settings during module import.

---
 cml/__init__.py | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/cml/__init__.py b/cml/__init__.py
index edf35d6..61e3666 100644
--- a/cml/__init__.py
+++ b/cml/__init__.py
@@ -1,18 +1,24 @@
 from cml.controller import load_settings
-from cml.controller import get_data_source
+from cml.controller import load_knowledge
+from cml.controller import get_source
 from cml.controller import construction
 from cml.controller import feature_selection
 from cml.controller import reconstruction
+from cml.controller import deconstruction
 from cml.controller import search_knowledge
 
-# TODO (dmt): Load default settings automatically.
-# configure logging levels
-from logging import addLevelName, Logger, config
-from os.path import join, abspath
-from inspect import getsourcefile
+
+def _load_default_settings():
+    from os.path import join, expanduser, exists
+    path = join(expanduser('~'), ".cml", "settings.ini")
+    if exists(path): load_settings(path)
 
 
 def _setup_loggers():
+    from logging import addLevelName, Logger, config
+    from os.path import join, abspath
+    from inspect import getsourcefile
+
     protocol_level = 55
     addLevelName(protocol_level, "PROTOCOL")
 
@@ -25,4 +31,5 @@ def _setup_loggers():
     config.fileConfig(logging_config)
 
 
+_load_default_settings()
 _setup_loggers()
-- 
GitLab