tracdap-runtime 0.8.0b1__py3-none-any.whl → 0.8.0b2__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.
Files changed (36) hide show
  1. tracdap/rt/_exec/actors.py +5 -4
  2. tracdap/rt/_exec/context.py +26 -10
  3. tracdap/rt/_exec/dev_mode.py +3 -2
  4. tracdap/rt/_exec/engine.py +221 -98
  5. tracdap/rt/_exec/functions.py +27 -47
  6. tracdap/rt/_exec/graph.py +1 -20
  7. tracdap/rt/_exec/graph_builder.py +31 -17
  8. tracdap/rt/_exec/runtime.py +5 -4
  9. tracdap/rt/_exec/server.py +4 -3
  10. tracdap/rt/_impl/config_parser.py +3 -2
  11. tracdap/rt/_impl/data.py +3 -3
  12. tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.py +64 -62
  13. tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.pyi +16 -2
  14. tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.py +3 -3
  15. tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.pyi +2 -0
  16. tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.py +4 -4
  17. tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.pyi +4 -2
  18. tracdap/rt/_impl/logging.py +195 -0
  19. tracdap/rt/_impl/models.py +3 -2
  20. tracdap/rt/_impl/repos.py +5 -3
  21. tracdap/rt/_impl/schemas.py +2 -2
  22. tracdap/rt/_impl/shim.py +3 -2
  23. tracdap/rt/_impl/storage.py +4 -3
  24. tracdap/rt/_impl/util.py +0 -110
  25. tracdap/rt/_impl/validation.py +3 -2
  26. tracdap/rt/_version.py +1 -1
  27. tracdap/rt/ext/plugins.py +2 -2
  28. tracdap/rt/metadata/__init__.py +1 -0
  29. tracdap/rt/metadata/job.py +16 -0
  30. tracdap/rt/metadata/object.py +2 -0
  31. tracdap/rt/metadata/object_id.py +2 -0
  32. {tracdap_runtime-0.8.0b1.dist-info → tracdap_runtime-0.8.0b2.dist-info}/METADATA +1 -1
  33. {tracdap_runtime-0.8.0b1.dist-info → tracdap_runtime-0.8.0b2.dist-info}/RECORD +36 -35
  34. {tracdap_runtime-0.8.0b1.dist-info → tracdap_runtime-0.8.0b2.dist-info}/WHEEL +1 -1
  35. {tracdap_runtime-0.8.0b1.dist-info → tracdap_runtime-0.8.0b2.dist-info}/LICENSE +0 -0
  36. {tracdap_runtime-0.8.0b1.dist-info → tracdap_runtime-0.8.0b2.dist-info}/top_level.txt +0 -0
@@ -25,7 +25,8 @@ import inspect
25
25
  import queue
26
26
  import time
27
27
 
28
- import tracdap.rt._impl.util as util # noqa
28
+ import tracdap.rt._impl.logging as _logging # noqa
29
+ import tracdap.rt._impl.util as _util # noqa
29
30
  import tracdap.rt._impl.validation as _val # noqa
30
31
  import tracdap.rt.exceptions as _ex
31
32
 
@@ -235,7 +236,7 @@ class EventLoop:
235
236
  self.__shutdown = False
236
237
  self.__shutdown_now = False
237
238
  self.__done = False
238
- self.__log = util.logger_for_object(self)
239
+ self.__log = _logging.logger_for_object(self)
239
240
 
240
241
  def post_message(self, msg: _T_MSG, processor: tp.Callable[[_T_MSG], None]) -> bool:
241
242
  with self.__msg_lock:
@@ -365,7 +366,7 @@ class FunctionCache:
365
366
 
366
367
  class ActorNode:
367
368
 
368
- _log = util.logger_for_class(Actor)
369
+ _log = _logging.logger_for_class(Actor)
369
370
 
370
371
  def __init__(
371
372
  self, actor_id: ActorId, actor: Actor,
@@ -904,7 +905,7 @@ class ActorSystem:
904
905
 
905
906
  super().__init__()
906
907
 
907
- self._log = util.logger_for_object(self)
908
+ self._log = _logging.logger_for_object(self)
908
909
 
909
910
  # self.__actors: tp.Dict[ActorId, ActorNode] = {self.__ROOT_ID: ActorNode("", self.__ROOT_ID, None)}
910
911
  # self.__message_queue: tp.List[Msg] = list()
@@ -26,9 +26,10 @@ import tracdap.rt.api as _api
26
26
  import tracdap.rt.api.experimental as _eapi
27
27
  import tracdap.rt.metadata as _meta
28
28
  import tracdap.rt.exceptions as _ex
29
- import tracdap.rt._impl.type_system as _types # noqa
30
29
  import tracdap.rt._impl.data as _data # noqa
30
+ import tracdap.rt._impl.logging as _logging # noqa
31
31
  import tracdap.rt._impl.storage as _storage # noqa
32
+ import tracdap.rt._impl.type_system as _types # noqa
32
33
  import tracdap.rt._impl.util as _util # noqa
33
34
  import tracdap.rt._impl.validation as _val # noqa
34
35
 
@@ -63,10 +64,15 @@ class TracContextImpl(_api.TracContext):
63
64
  model_class: _api.TracModel.__class__,
64
65
  local_ctx: tp.Dict[str, tp.Any],
65
66
  dynamic_outputs: tp.List[str] = None,
66
- checkout_directory: pathlib.Path = None):
67
+ checkout_directory: pathlib.Path = None,
68
+ log_provider: _logging.LogProvider = None):
69
+
70
+ # If no log provider is supplied, use the default (system logs only)
71
+ if log_provider is None:
72
+ log_provider = _logging.LogProvider()
67
73
 
68
- self.__ctx_log = _util.logger_for_object(self)
69
- self.__model_log = _util.logger_for_class(model_class)
74
+ self.__ctx_log = log_provider.logger_for_object(self)
75
+ self.__model_log = log_provider.logger_for_class(model_class)
70
76
 
71
77
  self.__model_def = model_def
72
78
  self.__model_class = model_class
@@ -368,9 +374,9 @@ class TracDataContextImpl(TracContextImpl, _eapi.TracDataContext):
368
374
  self, model_def: _meta.ModelDefinition, model_class: _api.TracModel.__class__,
369
375
  local_ctx: tp.Dict[str, tp.Any], dynamic_outputs: tp.List[str],
370
376
  storage_map: tp.Dict[str, tp.Union[_eapi.TracFileStorage, _eapi.TracDataStorage]],
371
- checkout_directory: pathlib.Path = None):
377
+ checkout_directory: pathlib.Path = None, log_provider: _logging.LogProvider = None):
372
378
 
373
- super().__init__(model_def, model_class, local_ctx, dynamic_outputs, checkout_directory)
379
+ super().__init__(model_def, model_class, local_ctx, dynamic_outputs, checkout_directory, log_provider)
374
380
 
375
381
  self.__model_def = model_def
376
382
  self.__local_ctx = local_ctx
@@ -460,7 +466,9 @@ class TracDataContextImpl(TracContextImpl, _eapi.TracDataContext):
460
466
 
461
467
  class TracFileStorageImpl(_eapi.TracFileStorage):
462
468
 
463
- def __init__(self, storage_key: str, storage_impl: _storage.IFileStorage, write_access: bool, checkout_directory):
469
+ def __init__(
470
+ self, storage_key: str, storage_impl: _storage.IFileStorage,
471
+ write_access: bool, checkout_directory, log_provider: _logging.LogProvider):
464
472
 
465
473
  self.__storage_key = storage_key
466
474
 
@@ -481,7 +489,11 @@ class TracFileStorageImpl(_eapi.TracFileStorage):
481
489
  self.__rmdir = None
482
490
  self.__write_byte_stream = None
483
491
 
484
- self.__log = _util.logger_for_object(self)
492
+ # If no log provider is supplied, use the default (system logs only)
493
+ if log_provider is None:
494
+ log_provider = _logging.LogProvider()
495
+
496
+ self.__log = log_provider.logger_for_object(self)
485
497
  self.__val = TracStorageValidator(self.__log, checkout_directory, self.__storage_key)
486
498
 
487
499
  def get_storage_key(self) -> str:
@@ -602,7 +614,7 @@ class TracDataStorageImpl(_eapi.TracDataStorage[_eapi.DATA_API]):
602
614
  def __init__(
603
615
  self, storage_key: str, storage_impl: _storage.IDataStorageBase[_data.T_INTERNAL_DATA, _data.T_INTERNAL_SCHEMA],
604
616
  data_converter: _data.DataConverter[_eapi.DATA_API, _data.T_INTERNAL_DATA, _data.T_INTERNAL_SCHEMA],
605
- write_access: bool, checkout_directory):
617
+ write_access: bool, checkout_directory, log_provider: _logging.LogProvider):
606
618
 
607
619
  self.__storage_key = storage_key
608
620
  self.__converter = data_converter
@@ -619,7 +631,11 @@ class TracDataStorageImpl(_eapi.TracDataStorage[_eapi.DATA_API]):
619
631
  self.__create_table = None
620
632
  self.__write_table = None
621
633
 
622
- self.__log = _util.logger_for_object(self)
634
+ # If no log provider is supplied, use the default (system logs only)
635
+ if log_provider is None:
636
+ log_provider = _logging.LogProvider()
637
+
638
+ self.__log = log_provider.logger_for_object(self)
623
639
  self.__val = TracStorageValidator(self.__log, checkout_directory, self.__storage_key)
624
640
 
625
641
  def has_table(self, table_name: str) -> bool:
@@ -23,6 +23,7 @@ import tracdap.rt.config as _cfg
23
23
  import tracdap.rt.metadata as _meta
24
24
  import tracdap.rt.exceptions as _ex
25
25
  import tracdap.rt._impl.config_parser as _cfg_p # noqa
26
+ import tracdap.rt._impl.logging as _logging # noqa
26
27
  import tracdap.rt._impl.models as _models # noqa
27
28
  import tracdap.rt._impl.storage as _storage # noqa
28
29
  import tracdap.rt._impl.type_system as _types # noqa
@@ -50,7 +51,7 @@ DEV_MODE_SYS_CONFIG = []
50
51
 
51
52
  class DevModeTranslator:
52
53
 
53
- _log: tp.Optional[_util.logging.Logger] = None
54
+ _log: tp.Optional[_logging.Logger] = None
54
55
 
55
56
  @classmethod
56
57
  def translate_sys_config(cls, sys_config: _cfg.RuntimeConfig, config_mgr: _cfg_p.ConfigManager):
@@ -1039,4 +1040,4 @@ class DevModeTranslator:
1039
1040
 
1040
1041
 
1041
1042
 
1042
- DevModeTranslator._log = _util.logger_for_class(DevModeTranslator)
1043
+ DevModeTranslator._log = _logging.logger_for_class(DevModeTranslator)