holado 0.2.3__py3-none-any.whl → 0.2.5__py3-none-any.whl
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.
Potentially problematic release.
This version of holado might be problematic. Click here for more details.
- holado/__init__.py +61 -23
- holado/common/context/service_manager.py +10 -2
- holado/common/context/session_context.py +43 -12
- holado/common/handlers/object.py +12 -4
- holado/holado_config.py +1 -0
- {holado-0.2.3.dist-info → holado-0.2.5.dist-info}/METADATA +1 -1
- {holado-0.2.3.dist-info → holado-0.2.5.dist-info}/RECORD +30 -30
- holado_ais/ais/ais_messages.py +140 -139
- holado_core/common/tools/path_manager.py +8 -4
- holado_grpc/api/rpc/grpc_client.py +122 -118
- holado_helper/docker/logging.conf +3 -1
- holado_helper/docker/run_holado_test_nonreg_in_docker.sh +28 -28
- holado_helper/docker/run_terminal_in_docker-with_docker_control.sh +27 -27
- holado_helper/docker/run_terminal_in_docker.sh +26 -26
- holado_helper/script/initialize_script.py +5 -5
- holado_logging/__init__.py +7 -9
- holado_logging/common/logging/holado_logger.py +2 -2
- holado_logging/common/logging/log_config.py +152 -127
- holado_logging/common/logging/log_manager.py +20 -19
- holado_multitask/multitasking/multitask_manager.py +1 -1
- holado_multitask/multithreading/thread.py +8 -4
- holado_protobuf/__init__.py +1 -1
- holado_protobuf/ipc/protobuf/protobuf_messages.py +821 -818
- holado_rabbitmq/tools/rabbitmq/rabbitmq_client.py +1 -2
- holado_test/behave/independant_runner.py +3 -5
- holado_test/scenario/step_tools.py +2 -0
- test_holado/environment.py +1 -1
- test_holado/logging.conf +3 -1
- {holado-0.2.3.dist-info → holado-0.2.5.dist-info}/WHEEL +0 -0
- {holado-0.2.3.dist-info → holado-0.2.5.dist-info}/licenses/LICENSE +0 -0
holado/__init__.py
CHANGED
|
@@ -27,7 +27,7 @@ except:
|
|
|
27
27
|
with_behave = False
|
|
28
28
|
|
|
29
29
|
logger = None
|
|
30
|
-
|
|
30
|
+
__initialized = False
|
|
31
31
|
|
|
32
32
|
def __initialize_holado_loggers():
|
|
33
33
|
global logger
|
|
@@ -38,27 +38,29 @@ def __initialize_holado_loggers():
|
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
def _initialize_logging(
|
|
41
|
+
def _initialize_logging(use_holado_logger=True, logging_config_file_path=None, log_level=None, log_on_console=False, log_in_file=True):
|
|
42
42
|
# print_imported_modules("[initialize]")
|
|
43
43
|
import holado_logging
|
|
44
44
|
# print_imported_modules("[after import holado_logging]")
|
|
45
45
|
|
|
46
46
|
# Configure logging module
|
|
47
|
-
holado_logging.configure(
|
|
47
|
+
holado_logging.configure(use_holado_logger=use_holado_logger, logging_config_file_path=logging_config_file_path, log_level=log_level, log_on_console=log_on_console, log_in_file=log_in_file)
|
|
48
48
|
# print_imported_modules("[after import holado_logging]")
|
|
49
49
|
|
|
50
50
|
# Initialize holado loggers
|
|
51
51
|
__initialize_holado_loggers()
|
|
52
52
|
|
|
53
|
-
#
|
|
54
|
-
holado_logging.register()
|
|
55
|
-
|
|
56
|
-
# Configure log manager
|
|
53
|
+
# Create session context
|
|
57
54
|
from holado.common.context.session_context import SessionContext
|
|
58
|
-
SessionContext.
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
55
|
+
if SessionContext.has_instance():
|
|
56
|
+
from holado_core.common.exceptions.technical_exception import TechnicalException
|
|
57
|
+
raise TechnicalException(f"Session context was initialized to early (before logging configuration)")
|
|
58
|
+
SessionContext.instance()
|
|
59
|
+
|
|
60
|
+
# Initialize log manager and register it in session context
|
|
61
|
+
holado_logging.initialize_and_register()
|
|
62
|
+
|
|
63
|
+
# Set whole logging configuration
|
|
62
64
|
SessionContext.instance().log_manager.set_config()
|
|
63
65
|
|
|
64
66
|
def change_logging_config(log_level=None, log_on_console=False, log_in_file=True):
|
|
@@ -67,52 +69,81 @@ def change_logging_config(log_level=None, log_on_console=False, log_in_file=True
|
|
|
67
69
|
SessionContext.instance().log_manager.on_console = log_on_console
|
|
68
70
|
SessionContext.instance().log_manager.in_file = log_in_file
|
|
69
71
|
SessionContext.instance().log_manager.set_config()
|
|
70
|
-
|
|
71
|
-
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def initialize_minimal():
|
|
75
|
+
# initialize(TSessionContext=None, use_holado_logger=False, logging_config_file_path=None,
|
|
76
|
+
# log_level=None, log_on_console=True, log_in_file=False,
|
|
77
|
+
# session_kwargs={'with_session_path':False},
|
|
78
|
+
# garbage_collector_periodicity=None)
|
|
79
|
+
initialize(TSessionContext=None, use_holado_logger=True, logging_config_file_path=None,
|
|
80
|
+
log_level=None, log_on_console=True, log_in_file=False,
|
|
81
|
+
garbage_collector_periodicity=None)
|
|
82
|
+
|
|
83
|
+
def initialize(TSessionContext=None, use_holado_logger=True, logging_config_file_path=None,
|
|
72
84
|
log_level=None, log_on_console=False, log_in_file=True, session_kwargs=None,
|
|
73
85
|
garbage_collector_periodicity=default_value):
|
|
86
|
+
global __initialized
|
|
87
|
+
if __initialized:
|
|
88
|
+
from holado_core.common.exceptions.technical_exception import TechnicalException
|
|
89
|
+
raise TechnicalException(f"HolAdo was already initialized")
|
|
90
|
+
|
|
74
91
|
from holado_core.common.tools.tools import Tools
|
|
75
92
|
|
|
76
93
|
if session_kwargs is None:
|
|
77
94
|
session_kwargs = {}
|
|
78
95
|
with_session_path = session_kwargs.get("with_session_path", True)
|
|
79
96
|
|
|
97
|
+
# Reset session context before initializing logging
|
|
98
|
+
# Note: Session context must not be created before logging initialization
|
|
99
|
+
from holado.common.context.session_context import SessionContext
|
|
100
|
+
SessionContext._reset_instance()
|
|
80
101
|
if TSessionContext is not None:
|
|
81
102
|
if isinstance(TSessionContext, str):
|
|
82
103
|
module_name, class_type = TSessionContext.rsplit('.', maxsplit=1)
|
|
83
104
|
module = importlib.import_module(module_name)
|
|
84
105
|
TSessionContext = getattr(module, class_type)
|
|
85
|
-
|
|
86
|
-
from holado.common.context.session_context import SessionContext
|
|
106
|
+
|
|
87
107
|
SessionContext.TSessionContext = TSessionContext
|
|
88
108
|
|
|
89
109
|
# Initialize logging
|
|
90
|
-
_initialize_logging(
|
|
110
|
+
_initialize_logging(use_holado_logger=use_holado_logger, logging_config_file_path=logging_config_file_path,
|
|
91
111
|
log_level=log_level, log_on_console=log_on_console, log_in_file=log_in_file and with_session_path)
|
|
92
112
|
if Tools.do_log(logger, logging.DEBUG):
|
|
93
113
|
logger.debug("Configured logging")
|
|
94
114
|
|
|
95
115
|
if Tools.do_log(logger, logging.DEBUG):
|
|
96
116
|
logger.debug("Importing HolAdo modules")
|
|
97
|
-
|
|
117
|
+
_import_modules(get_holado_module_names())
|
|
98
118
|
|
|
99
|
-
|
|
119
|
+
_initialize_session_context(session_kwargs)
|
|
100
120
|
|
|
101
121
|
# Initialize garbage collector
|
|
102
122
|
if garbage_collector_periodicity is not None:
|
|
103
123
|
GcManager.collect_periodically(garbage_collector_periodicity)
|
|
104
124
|
logger.debug(f"Garbage collector is disabled, and collects are automatically done in a dedicated thread (periodicity: {GcManager.get_collect_periodicity()} s)")
|
|
105
125
|
|
|
106
|
-
|
|
126
|
+
if with_behave:
|
|
127
|
+
# Register default behave parameter types
|
|
128
|
+
#TODO: make step tools a service
|
|
129
|
+
from holado_test.behave.scenario.behave_step_tools import BehaveStepTools
|
|
130
|
+
BehaveStepTools.register_default_types()
|
|
131
|
+
|
|
132
|
+
__initialized = True
|
|
133
|
+
|
|
134
|
+
def initialize_for_script(TSessionContext=None, use_holado_logger=True, logging_config_file_path=None,
|
|
135
|
+
log_level=logging.WARNING, log_on_console=True, log_in_file=False, session_kwargs=None,
|
|
136
|
+
garbage_collector_periodicity=None):
|
|
107
137
|
if session_kwargs is None:
|
|
108
138
|
session_kwargs={'with_session_path':log_in_file, 'raise_if_not_exist':False}
|
|
109
139
|
|
|
110
|
-
initialize(TSessionContext=TSessionContext,
|
|
140
|
+
initialize(TSessionContext=TSessionContext, use_holado_logger=use_holado_logger, logging_config_file_path=logging_config_file_path,
|
|
111
141
|
log_level=log_level, log_on_console=log_on_console, log_in_file=log_in_file,
|
|
112
|
-
session_kwargs=session_kwargs
|
|
142
|
+
session_kwargs=session_kwargs,
|
|
143
|
+
garbage_collector_periodicity=garbage_collector_periodicity )
|
|
113
144
|
|
|
114
145
|
|
|
115
|
-
def
|
|
146
|
+
def _initialize_session_context(session_kwargs=None):
|
|
116
147
|
from holado_core.common.tools.tools import Tools
|
|
117
148
|
|
|
118
149
|
if Tools.do_log(logger, logging.DEBUG):
|
|
@@ -138,7 +169,7 @@ def get_holado_module_names():
|
|
|
138
169
|
lp = sorted(os.listdir(get_holado_src_path()))
|
|
139
170
|
return [name for name in lp if name.startswith("holado_") and name not in ['holado_logging']]
|
|
140
171
|
|
|
141
|
-
def
|
|
172
|
+
def _import_modules(module_names):
|
|
142
173
|
from holado_core.common.tools.tools import Tools
|
|
143
174
|
|
|
144
175
|
imported_modules = __import_modules(module_names)
|
|
@@ -265,3 +296,10 @@ def print_imported_modules(prefix):
|
|
|
265
296
|
# print(f"{prefix} globals modules: {globals_modules}")
|
|
266
297
|
|
|
267
298
|
|
|
299
|
+
|
|
300
|
+
# Process minimal initialization of HolAdo
|
|
301
|
+
# Note: Currently, initialization can be done only once, thus minimal initialization is commented.
|
|
302
|
+
# As a consequence, the call of an initialize method is mandatory
|
|
303
|
+
# initialize_minimal()
|
|
304
|
+
|
|
305
|
+
|
|
@@ -170,13 +170,21 @@ class ServiceManager(object):
|
|
|
170
170
|
return context.get_object(name)
|
|
171
171
|
|
|
172
172
|
def add_context_property(self, name, context_type, raise_if_service_exist=None):
|
|
173
|
-
|
|
174
|
-
|
|
173
|
+
# Note: next lines are commented, to allow to set again the service in context type
|
|
174
|
+
# if raise_if_service_exist is None or raise_if_service_exist:
|
|
175
|
+
# self.__verify_service_doesnt_exist(name, context_type, raise_if_service_exist)
|
|
176
|
+
if hasattr(context_type, name):
|
|
177
|
+
logger.debug(f"Set again the property '{name}' in context type {context_type}")
|
|
175
178
|
|
|
176
179
|
@property
|
|
177
180
|
def context_service_property(self_context):
|
|
178
181
|
return self._get_context_service(name, self_context)
|
|
179
182
|
setattr(context_type, name, context_service_property)
|
|
183
|
+
|
|
184
|
+
@property
|
|
185
|
+
def context_has_service_property(self_context):
|
|
186
|
+
return self_context.has_object(name)
|
|
187
|
+
setattr(context_type, 'has_' + name, context_has_service_property)
|
|
180
188
|
|
|
181
189
|
def add_shortcut_property_to_context_service(self, name, dst_type, context_type, raise_if_service_exist=None):
|
|
182
190
|
from holado_multitask.multiprocessing.context.process_context import ProcessContext
|
|
@@ -18,6 +18,7 @@ import os.path
|
|
|
18
18
|
from holado.common.context.context import Context
|
|
19
19
|
from holado_core.common.tools.tools import Tools
|
|
20
20
|
import threading
|
|
21
|
+
from holado.common.handlers.enums import ObjectStates
|
|
21
22
|
|
|
22
23
|
|
|
23
24
|
logger = logging
|
|
@@ -32,16 +33,37 @@ class SessionContext(Context):
|
|
|
32
33
|
|
|
33
34
|
# Singleton management
|
|
34
35
|
__instance = None
|
|
36
|
+
__is_resetting_instance = False
|
|
35
37
|
|
|
36
38
|
@staticmethod
|
|
37
39
|
def instance() -> TSessionContext:
|
|
40
|
+
# Note: If session context istance is under reset, consider it is already None
|
|
41
|
+
if SessionContext.__is_resetting_instance:
|
|
42
|
+
return None
|
|
43
|
+
|
|
38
44
|
if SessionContext.__instance is None:
|
|
39
45
|
SessionContext.__instance = SessionContext.TSessionContext()
|
|
40
|
-
|
|
46
|
+
logger.debug(f"Created session context of type {SessionContext.TSessionContext}")
|
|
47
|
+
# logging.log(45, f"Created session context of type {SessionContext.TSessionContext}")
|
|
41
48
|
# import traceback
|
|
42
|
-
#
|
|
49
|
+
# logging.log(45, "".join(traceback.format_list(traceback.extract_stack())))
|
|
43
50
|
return SessionContext.__instance
|
|
44
51
|
|
|
52
|
+
@staticmethod
|
|
53
|
+
def has_instance() -> bool:
|
|
54
|
+
if SessionContext.__is_resetting_instance:
|
|
55
|
+
return False
|
|
56
|
+
else:
|
|
57
|
+
return SessionContext.__instance is not None
|
|
58
|
+
|
|
59
|
+
@staticmethod
|
|
60
|
+
def _reset_instance():
|
|
61
|
+
if SessionContext.__instance is not None:
|
|
62
|
+
logger.debug(f"Resetting session context")
|
|
63
|
+
SessionContext.__is_resetting_instance = True
|
|
64
|
+
SessionContext.__instance = None
|
|
65
|
+
SessionContext.__is_resetting_instance = False
|
|
66
|
+
logger.debug(f"Reset of session context")
|
|
45
67
|
|
|
46
68
|
def __init__(self, name="Session"):
|
|
47
69
|
super().__init__(name)
|
|
@@ -55,12 +77,27 @@ class SessionContext(Context):
|
|
|
55
77
|
self.__multitask_lock = threading.RLock()
|
|
56
78
|
self.__multitask_step_lock = threading.RLock()
|
|
57
79
|
|
|
80
|
+
def __del__(self):
|
|
81
|
+
# Note: Override Object.__del__ since it supposes that SessionContext is initialized, whereas SessionContext is deleting
|
|
82
|
+
try:
|
|
83
|
+
if self.object_state in [ObjectStates.Deleting, ObjectStates.Deleted]:
|
|
84
|
+
return
|
|
85
|
+
|
|
86
|
+
self.delete_object()
|
|
87
|
+
except Exception as exc:
|
|
88
|
+
if "Python is likely shutting down" in str(exc):
|
|
89
|
+
# Simply return
|
|
90
|
+
return
|
|
91
|
+
else:
|
|
92
|
+
raise exc
|
|
93
|
+
|
|
58
94
|
def _delete_object(self):
|
|
59
|
-
logger.info(f"Delete session context - Interrupting and unregistering all threads...")
|
|
60
95
|
# if Tools.do_log(logger, logging.DEBUG):
|
|
61
96
|
# logger.debug("Interrupting and unregistering all threads for scenario [{}]".format(scenario.name))
|
|
62
|
-
self.
|
|
63
|
-
|
|
97
|
+
if self.has_threads_manager:
|
|
98
|
+
logger.info(f"Delete session context - Interrupting and unregistering all threads...")
|
|
99
|
+
self.threads_manager.interrupt_all_threads(scope="Session")
|
|
100
|
+
self.threads_manager.unregister_all_threads(scope="Session", keep_alive=False)
|
|
64
101
|
|
|
65
102
|
# Delete session context
|
|
66
103
|
logger.info(f"Delete session context - Deleting context objects...")
|
|
@@ -76,11 +113,6 @@ class SessionContext(Context):
|
|
|
76
113
|
|
|
77
114
|
self.__with_session_path = session_kwargs.get("with_session_path", True)
|
|
78
115
|
|
|
79
|
-
# Register default behave parameter types
|
|
80
|
-
#TODO: make step tools a service
|
|
81
|
-
from holado_test.behave.scenario.behave_step_tools import BehaveStepTools
|
|
82
|
-
BehaveStepTools.register_default_types()
|
|
83
|
-
|
|
84
116
|
# Create this thread context
|
|
85
117
|
self.multitask_manager.get_thread_context()
|
|
86
118
|
|
|
@@ -122,14 +154,13 @@ class SessionContext(Context):
|
|
|
122
154
|
name = "session_{}".format(datetime.now().strftime("%Y-%m-%d_%H-%M-%S"))
|
|
123
155
|
report_path = self.path_manager.get_reports_path(name)
|
|
124
156
|
logger.info(f"Reports location: {report_path}")
|
|
125
|
-
|
|
157
|
+
print(f"Reports location: {report_path}")
|
|
126
158
|
self.report_manager.new_session(report_path)
|
|
127
159
|
|
|
128
160
|
# Logging configuration
|
|
129
161
|
if self.with_session_path and SessionContext.instance().log_manager.in_file:
|
|
130
162
|
log_filename = os.path.join(report_path, "logs", "report.log")
|
|
131
163
|
self.path_manager.makedirs(log_filename)
|
|
132
|
-
SessionContext.instance().log_manager.on_console = False
|
|
133
164
|
SessionContext.instance().log_manager.set_root_log_file(log_filename)
|
|
134
165
|
SessionContext.instance().log_manager.set_config()
|
|
135
166
|
|
holado/common/handlers/object.py
CHANGED
|
@@ -66,15 +66,23 @@ class DeleteableObject(Object):
|
|
|
66
66
|
|
|
67
67
|
def __del__(self):
|
|
68
68
|
try:
|
|
69
|
-
from holado_multitask.multithreading.functionthreaded import FunctionThreaded
|
|
70
|
-
|
|
71
69
|
if self.object_state in [ObjectStates.Deleting, ObjectStates.Deleted]:
|
|
72
70
|
return
|
|
73
71
|
|
|
74
|
-
|
|
75
|
-
|
|
72
|
+
if logger.isEnabledFor(logging.DEBUG):
|
|
73
|
+
logger.debug(f"Deleting object of ID {id(self)} and type {type(self)}")
|
|
74
|
+
if logger.isEnabledFor(logging.TRACE): # @UndefinedVariable
|
|
75
|
+
import traceback
|
|
76
|
+
logger.trace("".join(traceback.format_list(traceback.extract_stack())))
|
|
77
|
+
|
|
78
|
+
# Notes:
|
|
79
|
+
# - Garbage collector default mecanism is incompatible with custom object finalizers (cf GcManager.Method __del__ is called by garbage collector. This call can be done in any thread at any moment.
|
|
80
|
+
# - When SessionContext is under deletion, delete any object by thread is not possible
|
|
81
|
+
from holado.common.context.session_context import SessionContext
|
|
82
|
+
if GcManager.is_collect_threaded() or isinstance(self, SessionContext.TSessionContext) or not SessionContext.has_instance():
|
|
76
83
|
self.__delete()
|
|
77
84
|
else:
|
|
85
|
+
from holado_multitask.multithreading.functionthreaded import FunctionThreaded
|
|
78
86
|
func = FunctionThreaded(self.__delete, name=f"delete object '{self.name}'", register_thread=False)
|
|
79
87
|
func.start()
|
|
80
88
|
func.join(timeout=30, raise_if_still_alive=False) # timeout of 30s to limit deadlock impact ; raise to False since exceptions are omitted in gc collect context
|
holado/holado_config.py
CHANGED
|
@@ -16,6 +16,7 @@ class Config(object):
|
|
|
16
16
|
"""HolAdo project configuration"""
|
|
17
17
|
|
|
18
18
|
# Timeouts
|
|
19
|
+
session_timeout_seconds = 7 * 24 * 3600 # Session timeout is by default to 7 days
|
|
19
20
|
timeout_seconds = 240 # Default timeout
|
|
20
21
|
join_timeout_seconds = 1800 # Long timeout used when a join should stop without deadlock. When this timeout is reached, a TimeoutTechnicalException is raised
|
|
21
22
|
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
holado/__init__.py,sha256=
|
|
2
|
-
holado/holado_config.py,sha256
|
|
1
|
+
holado/__init__.py,sha256=vZmStYCsHdPOPrD-9qElAOHwiodLbN3iOldeVi7IEBE,14455
|
|
2
|
+
holado/holado_config.py,sha256=-HPwBdEcdG1kLfqSq4bH_esXbndVkNX4WW0VSpqoxu4,2459
|
|
3
3
|
holado/common/__init__.py,sha256=ZjXM-FRQgnfzRNXqcvJOGewDHVRR-U5-ugStSs8U2Xs,1525
|
|
4
4
|
holado/common/context/__init__.py,sha256=3jJBLm8myrYF9jbdV1EhIA6BtnlmjX33eeoDpTzwmLA,1604
|
|
5
5
|
holado/common/context/context.py,sha256=XPrdZw_9j096AI9EZwMT4xVd58c1ZH6VGxT5Yb-qYYU,6660
|
|
6
|
-
holado/common/context/service_manager.py,sha256=
|
|
7
|
-
holado/common/context/session_context.py,sha256=
|
|
6
|
+
holado/common/context/service_manager.py,sha256=LaCn8ukE1aqJynmwoexAYj5hCkdb_F3hXRtUBGqorUE,14087
|
|
7
|
+
holado/common/context/session_context.py,sha256=jyCXydCk7RnTf35MFcqaEflOsjX5eK2U33uITeGqP6U,22477
|
|
8
8
|
holado/common/handlers/__init__.py,sha256=d0KDUpaAAw1eBXyX08gaRh4RECnJlXjYQ0TcU-Ndicc,1372
|
|
9
9
|
holado/common/handlers/enums.py,sha256=ieqKVoukEiNyfE3KrKmMOImdbFS1ocUMud8JHe2xNLs,1662
|
|
10
|
-
holado/common/handlers/object.py,sha256=
|
|
10
|
+
holado/common/handlers/object.py,sha256=zAjJOClRmueziEPPUXQT61tZd4cdUjvjOXWdtEnJWqg,6369
|
|
11
11
|
holado/common/handlers/undefined.py,sha256=a1Jq2yrRd0UjJqZndj8ZTLpg5e6FlFn3Cc5uMfkbnBM,1859
|
|
12
12
|
holado/common/tools/__init__.py,sha256=z-T6zX_tOVkJjniTDA0KSKmdtosjfEhjaNa1-3g8wTs,1374
|
|
13
13
|
holado/common/tools/gc_manager.py,sha256=TjQg7MisGRhxuiQ22hB3IuqNhnWCVEWpU253-rOjR0w,7611
|
|
14
14
|
holado_ais/__init__.py,sha256=Mudcgu_7p1hBDBs6LpSz757H4haB0yLHgT70sznG82c,1807
|
|
15
15
|
holado_ais/ais/MaritimeIdentificationDigits.csv,sha256=r-uHt4wOvxlbA26af9e-N3BKbuiMf6ia3PN0ZGfYk2A,8547
|
|
16
16
|
holado_ais/ais/ais_manager.py,sha256=QvN94JoUBbSXT08HABl2FNsAVOM-YCmQO5tN9COg6Rc,6496
|
|
17
|
-
holado_ais/ais/ais_messages.py,sha256=
|
|
17
|
+
holado_ais/ais/ais_messages.py,sha256=Fh35mDS1mcZcH1XKmrAxxgfnGq-xp6Vgapc_C0dK_xU,10899
|
|
18
18
|
holado_ais/ais/ais_payload.py,sha256=mdOa_4JIbkFLK4_KUmQF5jUt1nLxvZhmIcqK8i-YY6w,1791
|
|
19
19
|
holado_ais/ais/enums.py,sha256=bsqfJVg65fWiJwL_VlSKwKgTY0pLoDcI4T06aEOcQnw,1108
|
|
20
20
|
holado_ais/ais/patch_pyais.py,sha256=ViRXz3__FXm-VBwD5C4bQ_gGvujCJuJSOoqewkFM6GI,54835
|
|
@@ -125,7 +125,7 @@ holado_core/common/tables/comparators/table_with_header_comparator.py,sha256=j7B
|
|
|
125
125
|
holado_core/common/tables/converters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
126
126
|
holado_core/common/tables/converters/table_converter.py,sha256=lFt1NKFo5aMPMpKQi_krBdVYUlm8zEg3JbDOy4bwWyA,8200
|
|
127
127
|
holado_core/common/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
128
|
-
holado_core/common/tools/path_manager.py,sha256=
|
|
128
|
+
holado_core/common/tools/path_manager.py,sha256=dgdm8wAaVubh-krpquCXXeGUTtGqRKDpuEKmvhA9dKA,8899
|
|
129
129
|
holado_core/common/tools/string_tools.py,sha256=j6ErNwpz19AXmbuvMk1HakX0EXfOkgu3s6bVohdz1g8,5365
|
|
130
130
|
holado_core/common/tools/tools.py,sha256=mRw-i4xNeBTb0GFBPzv54s7RyKzY0Ok0Oor8tgARmtw,8112
|
|
131
131
|
holado_core/common/tools/comparators/comparator.py,sha256=K4LcXIRORHX5vkmDibI6P6Bu1L-6Xezb63ZzzOMKrWY,6812
|
|
@@ -175,7 +175,7 @@ holado_docker/tools/docker_controler/proto/generated/docker_controler_pb2.py,sha
|
|
|
175
175
|
holado_docker/tools/docker_controler/proto/generated/docker_controler_pb2_grpc.py,sha256=r56UidBcB4jjxGWEsTY08_71Iz0E6pI2b5LR46qvoPc,9295
|
|
176
176
|
holado_grpc/__init__.py,sha256=SaAz66iSTqMw7oIDrj94rGcO8W7BgS15B78p--OogHc,2266
|
|
177
177
|
holado_grpc/api/rpc/TODO.txt,sha256=uWZT-WtrGuWbiOVU8-6xNiNyx_kKx-htM691zprLjh0,130
|
|
178
|
-
holado_grpc/api/rpc/grpc_client.py,sha256=
|
|
178
|
+
holado_grpc/api/rpc/grpc_client.py,sha256=sCsNzwHY8QAXvcqMd-Wt-gXy3VKrsqVbB8ncBf_EcRA,8990
|
|
179
179
|
holado_grpc/api/rpc/grpc_manager.py,sha256=v3e7b1JCNlUoCnWUPgB9aWKde-AbseRCZAxFwz5gPN8,4115
|
|
180
180
|
holado_grpc/ipc/rpc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
181
181
|
holado_grpc/ipc/rpc/grpc_compiler.py,sha256=f_v1Rj6gDpLSCpkN8a6Jn4w9d826JqNRII16HSPPrWA,2477
|
|
@@ -188,10 +188,10 @@ holado_helper/__init__.py,sha256=U5rV9zTT4OFE4MU2yiOIDlAmwQ_NO2CB0Adih2sn8eQ,178
|
|
|
188
188
|
holado_helper/debug/README.txt,sha256=kpsK1Ii5-t5pJCL9ChcEbZYyYTKt34fjKdiMC5DGOjc,2045
|
|
189
189
|
holado_helper/debug/memory/memory_profiler.py,sha256=Qu05N3uzntqm5S5XJMPdG9X0EFdagZS5poNQJPgZ-Iw,4659
|
|
190
190
|
holado_helper/docker/init_user.sh,sha256=vac-OUgsbSTIuO7MK4mpbtRZNGqHbNJGNm3Hk3W3FWQ,913
|
|
191
|
-
holado_helper/docker/logging.conf,sha256=
|
|
192
|
-
holado_helper/docker/run_holado_test_nonreg_in_docker.sh,sha256=
|
|
193
|
-
holado_helper/docker/run_terminal_in_docker-with_docker_control.sh,sha256=
|
|
194
|
-
holado_helper/docker/run_terminal_in_docker.sh,sha256=
|
|
191
|
+
holado_helper/docker/logging.conf,sha256=PKFEwVhQriaaHZMnU3t5I9fGxuM1HFxUBRJ0NZVH-KE,1186
|
|
192
|
+
holado_helper/docker/run_holado_test_nonreg_in_docker.sh,sha256=_ndFQXg4gBE3Zs6TbLmF15PM797i6onOK89OVENWORM,4696
|
|
193
|
+
holado_helper/docker/run_terminal_in_docker-with_docker_control.sh,sha256=EIKqew9xOAeA8KCEbz4DDSDM8s27g3FAT1j3sr2uWlI,3525
|
|
194
|
+
holado_helper/docker/run_terminal_in_docker.sh,sha256=GOOhbo9cEjw5Pp5BlhbzZm2U5XqZoqhHcVjlUwdV4WA,3397
|
|
195
195
|
holado_helper/holado_module_template/__init__.py,sha256=KpbIi2cm1BYZgoWf0LuhE0ei3ZCE15UcUtjC1cSA55M,1653
|
|
196
196
|
holado_helper/holado_module_template/test/behave/steps/__init__.py,sha256=BHp8TYE_X4lWn4B8A51nXSYaJlczuiDVJLcKMy7p0Lw,1267
|
|
197
197
|
holado_helper/holado_module_template/test/behave/steps/private/__init__.py,sha256=BHp8TYE_X4lWn4B8A51nXSYaJlczuiDVJLcKMy7p0Lw,1267
|
|
@@ -200,7 +200,7 @@ holado_helper/script/action_script.py,sha256=6yhb7M9aGe6jbqA4APa2rc3zC3INXvNTZjp
|
|
|
200
200
|
holado_helper/script/any_action_script.py,sha256=6P1bG3UoSO0JVS6kWaDGd4jP7MN-foiThRcVitW3Hjg,7901
|
|
201
201
|
holado_helper/script/behave_action_script.py,sha256=DwIRdHrRBM9qcLxoSx0vtyy3RX308g8bRlLT-UAqimM,5148
|
|
202
202
|
holado_helper/script/csv_action_script.py,sha256=mNoy9AS99uh57GCh5BPmxlp-hVql7S-ZPAQD_Kit3gA,7259
|
|
203
|
-
holado_helper/script/initialize_script.py,sha256=
|
|
203
|
+
holado_helper/script/initialize_script.py,sha256=v77lIoYeL3NR73_NBAr1OLWKPVixPW9m6gyLWLg8Ef4,5062
|
|
204
204
|
holado_helper/script/input_output_script.py,sha256=sRldfxO58KCjr5Zh_i-3MXy8zPPWDnNzZDLiwTKuBdM,6039
|
|
205
205
|
holado_helper/script/job.py,sha256=hb7WenhQP1qFMsxWGMsgbA-Z-zixynjRWjmZdx9wHEI,4435
|
|
206
206
|
holado_helper/script/json_action_script.py,sha256=angdSt6e385lKwYSGJBqytVb4sp3-HjMKziVEFSz6ro,5147
|
|
@@ -217,23 +217,23 @@ holado_keycloak/tests/behave/steps/__init__.py,sha256=NBE4L-am7jgPiJxcHRlZ4PQRjJ
|
|
|
217
217
|
holado_keycloak/tests/behave/steps/tools/keycloak_client_steps.py,sha256=Ku3G7GAmmX9Wzsv5ihj1tiPWae8gQDjpxYieMim6CrQ,3005
|
|
218
218
|
holado_keycloak/tools/keycloak/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
219
219
|
holado_keycloak/tools/keycloak/keycloak_client.py,sha256=QXAsf9rF0pKq1dHhXeZFZOxuEg_1uzp6vqXnwWDnegg,4019
|
|
220
|
-
holado_logging/__init__.py,sha256=
|
|
221
|
-
holado_logging/common/logging/holado_logger.py,sha256=
|
|
222
|
-
holado_logging/common/logging/log_config.py,sha256=
|
|
223
|
-
holado_logging/common/logging/log_manager.py,sha256=
|
|
220
|
+
holado_logging/__init__.py,sha256=EMmwm_jHe739gftVCmf6lb_dT20IVseVg0bbGGADn8w,2176
|
|
221
|
+
holado_logging/common/logging/holado_logger.py,sha256=vlU_q5jYD9Qf-xWFBogeNiIR9qpRri-68OfMofgbhy4,3320
|
|
222
|
+
holado_logging/common/logging/log_config.py,sha256=aSq1PUgQZXsomhmCmJLdVNQrJjkRNaisjVLVbon9dnM,6549
|
|
223
|
+
holado_logging/common/logging/log_manager.py,sha256=gq92IAfnKEX-GKUHexNVgEI0UUrUdiWaC5GLcSTAaUE,13604
|
|
224
224
|
holado_multitask/__init__.py,sha256=EwuwiBmp8ICbPZ8CKPju8tHRTh2rG68PB_wGXczY9rw,2143
|
|
225
225
|
holado_multitask/multiprocessing/function_process.py,sha256=HFXjpnzWed5J1tjmWMQyRx8AGcY6D1laegHqZ5j1dco,4550
|
|
226
226
|
holado_multitask/multiprocessing/periodic_function_process.py,sha256=ubbdm2XSwjBGuDDXWX2b-lo_Abkivh4Blj9C8axsa4o,6779
|
|
227
227
|
holado_multitask/multiprocessing/process.py,sha256=pSzeOXJpHF6poxT6oXx7g-2CcSm-EjVjSdZ4bIO3TD4,8591
|
|
228
228
|
holado_multitask/multiprocessing/processesmanager.py,sha256=WCWD-Zo5adBNKz-X34VhD3QifrlgAIaLzU-fVsQKtCs,5905
|
|
229
229
|
holado_multitask/multiprocessing/context/process_context.py,sha256=UADxmma8f5tW6etJz7kvrfDdeBOrFxNYCieRev0hFJY,1709
|
|
230
|
-
holado_multitask/multitasking/multitask_manager.py,sha256=
|
|
230
|
+
holado_multitask/multitasking/multitask_manager.py,sha256=uXd16gZvcrbh1tPh_v_Au97Ysz3tvu14k2H3AzBVPy8,21385
|
|
231
231
|
holado_multitask/multithreading/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
232
232
|
holado_multitask/multithreading/functionthreaded.py,sha256=gCLVMrxI18dKDNOQ9szH4hEKk_PQSWSuoO4enEEORzE,5570
|
|
233
233
|
holado_multitask/multithreading/loopfunctionthreaded.py,sha256=5kfONDR76uuT1bTJrAtnfSncHwvVvzl8jagWUvTduHw,2492
|
|
234
234
|
holado_multitask/multithreading/loopthread.py,sha256=4II3d22PRf891De8dd9P4WjuwI52KrTDRTSTPzzvso8,4265
|
|
235
235
|
holado_multitask/multithreading/periodicfunctionthreaded.py,sha256=PCBKpbOIThNGLq12rOONAh2ECxEOmaOb6Aqj2Ob2XY8,6926
|
|
236
|
-
holado_multitask/multithreading/thread.py,sha256=
|
|
236
|
+
holado_multitask/multithreading/thread.py,sha256=4zd5f3RFHPINhQzW6KUA4945npabKoOU7kAEIhdoOpA,8901
|
|
237
237
|
holado_multitask/multithreading/threadsmanager.py,sha256=5a-kV8t0-lwL6a9vCLL3_Oi-i67epcqOWWBz6vIJFEU,8462
|
|
238
238
|
holado_multitask/multithreading/timer.py,sha256=RIU9Cxm3CYVVGqtch2fAHNYnXOziq4PhZOu4LnKsE_o,2528
|
|
239
239
|
holado_multitask/multithreading/context/thread_context.py,sha256=pGcySQnqx92NIaVT64Ra3gIV7BpgBFfEy3N8PYTCOlI,3570
|
|
@@ -243,11 +243,11 @@ holado_multitask/multithreading/reflection/traceback.py,sha256=Bnq-Xp0aA3D4kYtb7
|
|
|
243
243
|
holado_multitask/tests/behave/steps/__init__.py,sha256=H3pe2qGVRV8gj5hLg9xvQM_S0u3UZH_3X3mSwvkAgH8,1319
|
|
244
244
|
holado_multitask/tests/behave/steps/multiprocessing_steps.py,sha256=SgDBUpU_j7NjPS-HRZUo7fhE4ukMYa8MuQhjNhvX7fM,7441
|
|
245
245
|
holado_multitask/tests/behave/steps/multithreading_steps.py,sha256=ZiPifzvN_L9vfY5xu2yqX8T-XLurX4TWT4-uXD9P0wI,6827
|
|
246
|
-
holado_protobuf/__init__.py,sha256=
|
|
246
|
+
holado_protobuf/__init__.py,sha256=PsfsVCEC663IoDbDGyAjRUnOzXXSammPd9MH4nkOp28,3491
|
|
247
247
|
holado_protobuf/ipc/protobuf/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
248
248
|
holado_protobuf/ipc/protobuf/protobuf_compiler.py,sha256=RIHyjsLpgv6jwsIz4hXUStTnn_TGwFL3LOgrzxKhEOw,6349
|
|
249
249
|
holado_protobuf/ipc/protobuf/protobuf_converter.py,sha256=L3SAhBC3L5ghcXFD9Q9nHodPb3aP4bBd6nB7k9soHJ4,8995
|
|
250
|
-
holado_protobuf/ipc/protobuf/protobuf_messages.py,sha256=
|
|
250
|
+
holado_protobuf/ipc/protobuf/protobuf_messages.py,sha256=ENWbNLg-JicsMLeV1mz3jrfGU3u3z_KTG4EHh9p-WYI,61684
|
|
251
251
|
holado_protobuf/ipc/protobuf/protobuf_modifier.py,sha256=TZUfUYJd2nPoDYw3GXaGy5GLp7YwG-bqJFZ6Ep1mNLQ,3271
|
|
252
252
|
holado_protobuf/ipc/protobuf/abstracts/type.py,sha256=xr6CvHTJJQBDKtpPdOlUJyWjdjbHsm5uPHa3eOZlvLQ,2234
|
|
253
253
|
holado_protobuf/ipc/protobuf/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -296,7 +296,7 @@ holado_rabbitmq/tests/behave/steps/__init__.py,sha256=l-VWY2Qv9f-9ZoPmWjUmeurF8k
|
|
|
296
296
|
holado_rabbitmq/tests/behave/steps/tools/rabbitmq_client_steps.py,sha256=H5_r6LKaw_ElmmjcghZMT5KQInoJrdYNOtATh8GG3MQ,28833
|
|
297
297
|
holado_rabbitmq/tests/behave/steps/tools/rabbitmq_server_steps.py,sha256=35cXpKCuqg827dpf22rjmD4dJeXUnfOEN1cFkUr9P7Q,3060
|
|
298
298
|
holado_rabbitmq/tools/rabbitmq/rabbitmq_blocking_client.py,sha256=ABv8GlwdZ_lvJQswL1Yz9kO6C7nXIKv4BSNb0JiByFo,15116
|
|
299
|
-
holado_rabbitmq/tools/rabbitmq/rabbitmq_client.py,sha256=
|
|
299
|
+
holado_rabbitmq/tools/rabbitmq/rabbitmq_client.py,sha256=ChKiC5C4i00tW6tn2Pw70g6P4mXG-xHtB5UlmULQMro,29723
|
|
300
300
|
holado_rabbitmq/tools/rabbitmq/rabbitmq_manager.py,sha256=lCbbow3qFNhLNMzFHKEKhsaO4GmAH5DPYXwcjIittkA,9021
|
|
301
301
|
holado_rabbitmq/tools/rabbitmq/rabbitmq_select_client.py,sha256=urWn9A8XZqpAAtbvRZ-YUGVbOX_1Y0uSBA2lHGqJxLA,21039
|
|
302
302
|
holado_rabbitmq/tools/rabbitmq/rabbitmq_server.py,sha256=FW8iKAHm0I78bHQEbRk4rl0dtCmv4dvAe5BY_HfOQVM,1613
|
|
@@ -404,14 +404,14 @@ holado_test/behave/behave.py,sha256=IiqT_F45C-xVY2T8sKDPV7NsFCiGNzb8xpoTaXD-PXg,
|
|
|
404
404
|
holado_test/behave/behave_environment.py,sha256=T0HNMlSZAyzcnMB76VQtDo9zFiICzPMDGRa2xt1JCJA,5678
|
|
405
405
|
holado_test/behave/behave_function.py,sha256=2jDZIIijgQegWHmuzX1DlqRzs4utGjK1OeoucSeCTdg,1691
|
|
406
406
|
holado_test/behave/behave_manager.py,sha256=TEAfPgBQQONFn_l0s7gm7gDgWU0EejvuaPuFApoY_jY,26965
|
|
407
|
-
holado_test/behave/independant_runner.py,sha256=
|
|
407
|
+
holado_test/behave/independant_runner.py,sha256=QR_IS-qkK_x2FTryb2gRQrqyBU3YUgKqsaIL2xwXPNQ,3189
|
|
408
408
|
holado_test/behave/scenario/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
409
409
|
holado_test/behave/scenario/behave_step_tools.py,sha256=apMS8nvdY-vbXsUIw1mVR4wOy2xWHMOCPJ1QiYNU-hI,6612
|
|
410
410
|
holado_test/common/context/feature_context.py,sha256=GhC0lihnvTBhv5tE4JzPt39eP7gwAU5IApwX_-5Wt2Y,3348
|
|
411
411
|
holado_test/common/context/scenario_context.py,sha256=pmo-xGtn6oHtbTmcH6Vtp8Dj2iGrYVdHd0b6smtlhbY,10527
|
|
412
412
|
holado_test/common/context/step_context.py,sha256=j6S4ozTPrdlpV9Slopc998fYOV8KfMLAUSW4mcEFUI8,2383
|
|
413
413
|
holado_test/common/exceptions/undefined_step_exception.py,sha256=SHHX22iz4Ip-V4Y3aM2EJFDt30CCS5EaauN6KB-JORo,1461
|
|
414
|
-
holado_test/scenario/step_tools.py,sha256=
|
|
414
|
+
holado_test/scenario/step_tools.py,sha256=sVe9m1iFyOnhlgIVsOrFLq2Mc5LLZsKr3xuvnhVvERM,25178
|
|
415
415
|
holado_test/scenario/tester_tools.py,sha256=j2eBe7tlEX-Nw3VUGCZOdFqvh5ENhV9XnEUsqAqnXV8,2272
|
|
416
416
|
holado_test/tests/behave/steps/__init__.py,sha256=rdqrp-UN7vRplIqORx4sXyKwMUkptRizyLWudsmYehM,1362
|
|
417
417
|
holado_test/tests/behave/steps/scenario/exception_steps.py,sha256=ayMUmIJI4a7w95RL2NYiBWA8jSBwKyjdaRJL3IKdYQ0,4033
|
|
@@ -445,8 +445,8 @@ test_holado/Dockerfile_test_holado,sha256=zO6OUFnC1X9ZG7fPWWWfcWgZwnxif4WDE4ZDEm
|
|
|
445
445
|
test_holado/__init__.py,sha256=TIHAHrF05rvz6-VDKuDBSBjasD6PxTxXvcXjMEC3D6E,54
|
|
446
446
|
test_holado/__main__.py,sha256=PVdCX8V_RGRzbQQKVxf7eyt8a10XfUJ1pcaajGgIlus,1509
|
|
447
447
|
test_holado/build_docker_image_to_test_holado_in_docker.sh,sha256=B3hbi0yKnEC-t9S18o6ZR27AU1bqiuptwOqm6H7tv8s,142
|
|
448
|
-
test_holado/environment.py,sha256=
|
|
449
|
-
test_holado/logging.conf,sha256=
|
|
448
|
+
test_holado/environment.py,sha256=X4a6q9Km_Ya8XFIjwlDULgEQOkucumXxjIrIRtK1GDY,2294
|
|
449
|
+
test_holado/logging.conf,sha256=fI2P1eKEkDZm_GW0CFkgy7ASaIWwvgmLHUoLBfGqlwo,1132
|
|
450
450
|
test_holado/test_holado_session_context.py,sha256=qOB_i2k8mYjkR3-q2uv0B04xFc1K3p-K20ttYwe1Z18,1364
|
|
451
451
|
test_holado/features/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
452
452
|
test_holado/features/NonReg/api/REST.feature,sha256=ouaDdgXulNlXcZ7fSrSGCX-qDmQoCpXWnR_hKcKh8M4,469
|
|
@@ -529,7 +529,7 @@ test_holado/tools/django/api_rest/api_rest/api1/serializers.py,sha256=o_YxFr-tgC
|
|
|
529
529
|
test_holado/tools/django/api_rest/api_rest/api1/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
530
530
|
test_holado/tools/django/api_rest/api_rest/api1/views.py,sha256=kOt2xT6bxO47_z__5yYR9kcYIWWv4qYzpX0K8Tqonik,758
|
|
531
531
|
test_holado/tools/django/api_rest/api_rest/api1/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
532
|
-
holado-0.2.
|
|
533
|
-
holado-0.2.
|
|
534
|
-
holado-0.2.
|
|
535
|
-
holado-0.2.
|
|
532
|
+
holado-0.2.5.dist-info/METADATA,sha256=04lm8Q_8eATXzz-hS6LVjr7Y9_0sFQN0nBI8_O3oIBU,5796
|
|
533
|
+
holado-0.2.5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
534
|
+
holado-0.2.5.dist-info/licenses/LICENSE,sha256=IgGmNlcFHnbp7UWrLJqAFvs_HIgjJDTmjCNRircJLsk,1070
|
|
535
|
+
holado-0.2.5.dist-info/RECORD,,
|