encommon 0.12.3__tar.gz → 0.13.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {encommon-0.12.3/encommon.egg-info → encommon-0.13.0}/PKG-INFO +1 -1
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/config.py +27 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/test/test_config.py +3 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/conftest.py +5 -1
- encommon-0.13.0/encommon/version.txt +1 -0
- {encommon-0.12.3 → encommon-0.13.0/encommon.egg-info}/PKG-INFO +1 -1
- encommon-0.12.3/encommon/version.txt +0 -1
- {encommon-0.12.3 → encommon-0.13.0}/LICENSE +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/MANIFEST.in +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/README.md +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/files.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/logger.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/params.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/paths.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/test/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/test/test_files.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/test/test_logger.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/test/test_paths.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/test/test_utils.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/config/utils.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/crypts.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/hashes.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/params.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/test/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/test/test_crypts.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/crypts/test/test_hashes.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/py.typed +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/common.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/duration.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/params.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/parse.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_duration.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_params.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_parse.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_timer.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_timers.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_times.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_utils.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_window.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/test/test_windows.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/timer.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/timers.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/times.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/utils.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/window.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/times/windows.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/dicts.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/empty.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/notate.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/strings.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/test/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/test/test_dicts.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/test/test_empty.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/test/test_notate.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/types/test/test_strings.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/common.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/files.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/match.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/paths.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/sample.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/stdout.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/test/__init__.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/test/test_files.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/test/test_match.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/test/test_paths.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/test/test_sample.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon/utils/test/test_stdout.py +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon.egg-info/SOURCES.txt +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon.egg-info/dependency_links.txt +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon.egg-info/requires.txt +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/encommon.egg-info/top_level.txt +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/pyproject.toml +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/reqs-install.txt +0 -0
- {encommon-0.12.3 → encommon-0.13.0}/setup.cfg +0 -0
@@ -49,12 +49,14 @@ class Config:
|
|
49
49
|
:param paths: Complete or relative path to config paths.
|
50
50
|
:param cargs: Configuration arguments in dictionary form,
|
51
51
|
which will override contents from the config files.
|
52
|
+
:param sargs: Additional arguments on the command line.
|
52
53
|
:param model: Override default config validation model.
|
53
54
|
"""
|
54
55
|
|
55
56
|
__files: ConfigFiles
|
56
57
|
__paths: ConfigPaths
|
57
58
|
__cargs: dict[str, Any]
|
59
|
+
__sargs: dict[str, Any]
|
58
60
|
|
59
61
|
__model: Callable # type: ignore
|
60
62
|
|
@@ -69,6 +71,7 @@ class Config:
|
|
69
71
|
files: Optional['PATHABLE'] = None,
|
70
72
|
paths: Optional['PATHABLE'] = None,
|
71
73
|
cargs: Optional[dict[str, Any]] = None,
|
74
|
+
sargs: Optional[dict[str, Any]] = None,
|
72
75
|
model: Optional[Callable] = None, # type: ignore
|
73
76
|
) -> None:
|
74
77
|
"""
|
@@ -78,12 +81,14 @@ class Config:
|
|
78
81
|
files = files or []
|
79
82
|
paths = paths or []
|
80
83
|
cargs = cargs or {}
|
84
|
+
sargs = sargs or {}
|
81
85
|
|
82
86
|
paths = list(config_paths(paths))
|
83
87
|
|
84
88
|
self.__model = model or Params
|
85
89
|
self.__files = ConfigFiles(files)
|
86
90
|
self.__cargs = deepcopy(cargs)
|
91
|
+
self.__sargs = deepcopy(sargs)
|
87
92
|
|
88
93
|
self.__params = None
|
89
94
|
|
@@ -147,6 +152,28 @@ class Config:
|
|
147
152
|
return deepcopy(returned)
|
148
153
|
|
149
154
|
|
155
|
+
@property
|
156
|
+
def sargs(
|
157
|
+
self,
|
158
|
+
) -> dict[str, Any]:
|
159
|
+
"""
|
160
|
+
Return the value for the attribute from class instance.
|
161
|
+
|
162
|
+
:returns: Value for the attribute from class instance.
|
163
|
+
"""
|
164
|
+
|
165
|
+
returned: dict[str, Any] = {}
|
166
|
+
|
167
|
+
sargs = deepcopy(self.__sargs)
|
168
|
+
|
169
|
+
items = sargs.items()
|
170
|
+
|
171
|
+
for key, value in items:
|
172
|
+
setate(returned, key, value)
|
173
|
+
|
174
|
+
return deepcopy(returned)
|
175
|
+
|
176
|
+
|
150
177
|
@property
|
151
178
|
def config(
|
152
179
|
self,
|
@@ -44,6 +44,7 @@ def test_Config(
|
|
44
44
|
'_Config__model',
|
45
45
|
'_Config__files',
|
46
46
|
'_Config__cargs',
|
47
|
+
'_Config__sargs',
|
47
48
|
'_Config__params',
|
48
49
|
'_Config__paths',
|
49
50
|
'_Config__logger',
|
@@ -71,6 +72,8 @@ def test_Config(
|
|
71
72
|
|
72
73
|
assert len(config.cargs) == 1
|
73
74
|
|
75
|
+
assert len(config.sargs) == 1
|
76
|
+
|
74
77
|
assert len(config.config) == 3
|
75
78
|
|
76
79
|
assert config.model is Params
|
@@ -47,9 +47,13 @@ def config_factory(
|
|
47
47
|
'enlogger/file_path': config_log,
|
48
48
|
'enlogger/file_level': 'info'}
|
49
49
|
|
50
|
+
sargs = {
|
51
|
+
'custom/parameter': 'fart'}
|
52
|
+
|
50
53
|
return Config(
|
51
54
|
files=f'{tmp_path}/config.yml',
|
52
|
-
cargs=cargs
|
55
|
+
cargs=cargs,
|
56
|
+
sargs=sargs)
|
53
57
|
|
54
58
|
|
55
59
|
|
@@ -0,0 +1 @@
|
|
1
|
+
0.13.0
|
@@ -1 +0,0 @@
|
|
1
|
-
0.12.3
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|