tracdap-runtime 0.6.1.dev3__tar.gz → 0.6.2__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.
Files changed (146) hide show
  1. {tracdap_runtime-0.6.1.dev3/tracdap_runtime.egg-info → tracdap_runtime-0.6.2}/PKG-INFO +8 -5
  2. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/setup.cfg +14 -5
  3. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/context.py +25 -1
  4. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/dev_mode.py +277 -213
  5. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/functions.py +37 -8
  6. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/graph.py +2 -0
  7. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/graph_builder.py +118 -56
  8. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/runtime.py +28 -0
  9. tracdap_runtime-0.6.2/src/tracdap/rt/_exec/server.py +68 -0
  10. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/data.py +14 -0
  11. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/__init__.py +13 -0
  12. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/codec.py +44 -0
  13. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2.py +51 -0
  14. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2.pyi +59 -0
  15. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2_grpc.py +183 -0
  16. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/common_pb2.py +55 -0
  17. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/common_pb2.pyi +103 -0
  18. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/job_pb2.py +42 -0
  19. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/job_pb2.pyi +44 -0
  20. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/platform_pb2.py +71 -0
  21. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/platform_pb2.pyi +197 -0
  22. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/result_pb2.py +37 -0
  23. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/result_pb2.pyi +35 -0
  24. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/runtime_pb2.py +42 -0
  25. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/config/runtime_pb2.pyi +46 -0
  26. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/common_pb2.py +33 -0
  27. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/common_pb2.pyi +34 -0
  28. {tracdap_runtime-0.6.1.dev3/src/tracdap/rt → tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap}/metadata/custom_pb2.py +5 -5
  29. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/custom_pb2.pyi +15 -0
  30. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/data_pb2.py +51 -0
  31. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/data_pb2.pyi +115 -0
  32. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/file_pb2.py +28 -0
  33. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/file_pb2.pyi +22 -0
  34. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/flow_pb2.py +59 -0
  35. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/flow_pb2.pyi +109 -0
  36. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.py +76 -0
  37. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.pyi +177 -0
  38. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.py +51 -0
  39. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.pyi +92 -0
  40. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.py +32 -0
  41. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.pyi +68 -0
  42. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.py +35 -0
  43. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.pyi +35 -0
  44. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/search_pb2.py +39 -0
  45. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/search_pb2.pyi +83 -0
  46. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/stoarge_pb2.py +50 -0
  47. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/stoarge_pb2.pyi +89 -0
  48. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_pb2.py +34 -0
  49. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_pb2.pyi +26 -0
  50. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_update_pb2.py +30 -0
  51. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_update_pb2.pyi +34 -0
  52. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/type_pb2.py +47 -0
  53. tracdap_runtime-0.6.2/src/tracdap/rt/_impl/grpc/tracdap/metadata/type_pb2.pyi +101 -0
  54. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/guard_rails.py +5 -6
  55. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/static_api.py +10 -6
  56. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_version.py +1 -1
  57. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/api/hook.py +6 -2
  58. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/api/model_api.py +22 -0
  59. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/api/static_api.py +14 -4
  60. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/config/platform.py +9 -9
  61. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/launch/cli.py +3 -5
  62. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/launch/launch.py +15 -3
  63. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/common.py +7 -7
  64. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/custom.py +2 -0
  65. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/data.py +28 -5
  66. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/file.py +2 -0
  67. tracdap_runtime-0.6.2/src/tracdap/rt/metadata/flow.py +130 -0
  68. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/job.py +56 -16
  69. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/model.py +4 -0
  70. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/object_id.py +9 -9
  71. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/search.py +35 -13
  72. tracdap_runtime-0.6.2/src/tracdap/rt/metadata/stoarge.py +126 -0
  73. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/tag_update.py +21 -7
  74. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/type.py +28 -13
  75. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2/tracdap_runtime.egg-info}/PKG-INFO +8 -5
  76. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/tracdap_runtime.egg-info/SOURCES.txt +44 -19
  77. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/tracdap_runtime.egg-info/requires.txt +8 -4
  78. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/config/common_pb2.py +0 -55
  79. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/config/job_pb2.py +0 -42
  80. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/config/platform_pb2.py +0 -71
  81. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/config/result_pb2.py +0 -37
  82. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/config/runtime_pb2.py +0 -42
  83. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/common_pb2.py +0 -33
  84. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/data_pb2.py +0 -51
  85. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/file_pb2.py +0 -28
  86. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/flow.py +0 -68
  87. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/flow_pb2.py +0 -55
  88. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/job_pb2.py +0 -76
  89. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/model_pb2.py +0 -51
  90. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/object_id_pb2.py +0 -32
  91. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/object_pb2.py +0 -35
  92. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/search_pb2.py +0 -39
  93. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/stoarge.py +0 -68
  94. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/stoarge_pb2.py +0 -50
  95. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/tag_pb2.py +0 -34
  96. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/tag_update_pb2.py +0 -30
  97. tracdap_runtime-0.6.1.dev3/src/tracdap/rt/metadata/type_pb2.py +0 -48
  98. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/LICENSE +0 -0
  99. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/README.md +0 -0
  100. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/pyproject.toml +0 -0
  101. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/__init__.py +0 -0
  102. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/__init__.py +0 -0
  103. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/actors.py +0 -0
  104. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_exec/engine.py +0 -0
  105. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/__init__.py +0 -0
  106. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/config_parser.py +0 -0
  107. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/models.py +0 -0
  108. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/repos.py +0 -0
  109. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/schemas.py +0 -0
  110. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/shim.py +0 -0
  111. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/storage.py +0 -0
  112. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/type_system.py +0 -0
  113. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/util.py +0 -0
  114. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_impl/validation.py +0 -0
  115. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/__init__.py +0 -0
  116. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/_helpers.py +0 -0
  117. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/format_arrow.py +0 -0
  118. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/format_csv.py +0 -0
  119. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/format_parquet.py +0 -0
  120. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/repo_git.py +0 -0
  121. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/repo_local.py +0 -0
  122. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/repo_pypi.py +0 -0
  123. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/storage_aws.py +0 -0
  124. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/storage_azure.py +0 -0
  125. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/storage_gcp.py +0 -0
  126. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/_plugins/storage_local.py +0 -0
  127. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/api/__init__.py +0 -0
  128. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/config/__init__.py +3 -3
  129. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/config/common.py +0 -0
  130. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/config/job.py +0 -0
  131. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/config/result.py +0 -0
  132. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/config/runtime.py +0 -0
  133. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/exceptions.py +0 -0
  134. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/ext/__init__.py +0 -0
  135. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/ext/_guard.py +0 -0
  136. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/ext/embed.py +0 -0
  137. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/ext/plugins.py +0 -0
  138. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/ext/repos.py +0 -0
  139. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/ext/storage.py +0 -0
  140. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/launch/__init__.py +0 -0
  141. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/launch/__main__.py +0 -0
  142. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/__init__.py +15 -15
  143. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/object.py +0 -0
  144. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/src/tracdap/rt/metadata/tag.py +0 -0
  145. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/tracdap_runtime.egg-info/dependency_links.txt +0 -0
  146. {tracdap_runtime-0.6.1.dev3 → tracdap_runtime-0.6.2}/tracdap_runtime.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tracdap-runtime
3
- Version: 0.6.1.dev3
3
+ Version: 0.6.2
4
4
  Summary: Runtime package for building models on the TRAC Data & Analytics Platform
5
5
  Home-page: https://tracdap.finos.org/
6
6
  Author: Martin Traverse
@@ -16,22 +16,25 @@ Classifier: Operating System :: OS Independent
16
16
  Requires-Python: <3.13,>=3.8
17
17
  Description-Content-Type: text/markdown
18
18
  License-File: LICENSE
19
- Requires-Dist: protobuf==4.25.3
19
+ Requires-Dist: protobuf==5.27.4
20
20
  Requires-Dist: pyarrow==16.0.0
21
21
  Requires-Dist: pyyaml==6.0.1
22
22
  Requires-Dist: dulwich==0.22.1
23
23
  Requires-Dist: requests==2.32.3
24
24
  Requires-Dist: pandas<2.3.0,>=1.2.0
25
25
  Requires-Dist: numpy<2.0.0
26
+ Provides-Extra: grpc
27
+ Requires-Dist: grpcio==1.66.1; extra == "grpc"
28
+ Requires-Dist: grpcio-status==1.66.1; extra == "grpc"
26
29
  Provides-Extra: spark
27
30
  Requires-Dist: pyspark<3.6.0,>=3.0.0; extra == "spark"
28
31
  Provides-Extra: aws
29
32
  Requires-Dist: botocore==1.34.93; extra == "aws"
30
33
  Requires-Dist: boto3==1.34.93; extra == "aws"
31
34
  Provides-Extra: gcp
32
- Requires-Dist: google-auth==2.29.0; extra == "gcp"
33
- Requires-Dist: google-cloud-core==2.4.1; extra == "gcp"
34
- Requires-Dist: google-cloud-storage==2.16.0; extra == "gcp"
35
+ Requires-Dist: google-auth==2.34.0; extra == "gcp"
36
+ Requires-Dist: google-api-core==2.19.2; extra == "gcp"
37
+ Requires-Dist: google-cloud-storage==2.18.2; extra == "gcp"
35
38
  Requires-Dist: gcsfs==2024.3.1; extra == "gcp"
36
39
  Provides-Extra: azure
37
40
  Requires-Dist: azure-core==1.30.1; extra == "azure"
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = tracdap-runtime
3
- version = 0.6.1.dev3
3
+ version = 0.6.2
4
4
  description = Runtime package for building models on the TRAC Data & Analytics Platform
5
5
  long_description = file: README.md
6
6
  long_description_content_type = text/markdown
@@ -28,13 +28,19 @@ packages =
28
28
  tracdap.rt.ext
29
29
  tracdap.rt._exec
30
30
  tracdap.rt._impl
31
+ tracdap.rt._impl.grpc
32
+ tracdap.rt._impl.grpc.tracdap
33
+ tracdap.rt._impl.grpc.tracdap.metadata
34
+ tracdap.rt._impl.grpc.tracdap.config
35
+ tracdap.rt._impl.grpc.tracdap.api
36
+ tracdap.rt._impl.grpc.tracdap.api.internal
31
37
  tracdap.rt._plugins
32
38
  package_dir =
33
39
  tracdap = src/tracdap
34
40
  tracdap.rt = src/tracdap/rt
35
41
  python_requires = >= 3.8, < 3.13
36
42
  install_requires =
37
- protobuf == 4.25.3
43
+ protobuf == 5.27.4
38
44
  pyarrow == 16.0.0
39
45
  pyyaml == 6.0.1
40
46
  dulwich == 0.22.1
@@ -44,15 +50,18 @@ install_requires =
44
50
  numpy < 2.0.0
45
51
 
46
52
  [options.extras_require]
53
+ grpc =
54
+ grpcio == 1.66.1
55
+ grpcio-status == 1.66.1
47
56
  spark =
48
57
  pyspark >= 3.0.0, < 3.6.0
49
58
  aws =
50
59
  botocore == 1.34.93
51
60
  boto3 == 1.34.93
52
61
  gcp =
53
- google-auth == 2.29.0
54
- google-cloud-core == 2.4.1
55
- google-cloud-storage == 2.16.0
62
+ google-auth == 2.34.0
63
+ google-api-core == 2.19.2
64
+ google-cloud-storage == 2.18.2
56
65
  gcsfs == 2024.3.1
57
66
  azure =
58
67
  azure-core == 1.30.1
@@ -79,7 +79,6 @@ class TracContextImpl(_api.TracContext):
79
79
  self.__data,
80
80
  checkout_directory)
81
81
 
82
-
83
82
  def get_parameter(self, parameter_name: str) -> tp.Any:
84
83
 
85
84
  _val.validate_signature(self.get_parameter, parameter_name)
@@ -92,6 +91,31 @@ class TracContextImpl(_api.TracContext):
92
91
 
93
92
  return _types.MetadataCodec.decode_value(value)
94
93
 
94
+ def has_dataset(self, dataset_name: str) -> bool:
95
+
96
+ _val.validate_signature(self.has_dataset, dataset_name)
97
+
98
+ part_key = _data.DataPartKey.for_root()
99
+
100
+ self.__val.check_dataset_name_not_null(dataset_name)
101
+ self.__val.check_dataset_valid_identifier(dataset_name)
102
+
103
+ data_view = self.__data.get(dataset_name)
104
+
105
+ if data_view is None:
106
+ return False
107
+
108
+ # If the item exists but is not a dataset, that is still a runtime error
109
+ # E.g. if this method is called for FILE inputs
110
+ self.__val.check_context_item_is_dataset(dataset_name)
111
+
112
+ part = data_view.parts.get(part_key)
113
+
114
+ if part is None or len(part) == 0:
115
+ return False
116
+
117
+ return True
118
+
95
119
  def get_schema(self, dataset_name: str) -> _meta.SchemaDefinition:
96
120
 
97
121
  _val.validate_signature(self.get_schema, dataset_name)