tracdap-runtime 0.9.3.dev1__tar.gz → 0.10.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.
Files changed (146) hide show
  1. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/PKG-INFO +16 -17
  2. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/README.md +3 -3
  3. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/setup.cfg +13 -14
  4. tracdap_runtime-0.10.0/src/tracdap/rt/__init__.py +16 -0
  5. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/config_parser.py +4 -4
  6. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/data.py +33 -445
  7. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/guard_rails.py +17 -10
  8. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/logging.py +1 -1
  9. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/models.py +44 -8
  10. tracdap_runtime-0.10.0/src/tracdap/rt/_impl/core/network.py +300 -0
  11. tracdap_runtime-0.10.0/src/tracdap/rt/_impl/core/plugins.py +241 -0
  12. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/repos.py +9 -2
  13. tracdap_runtime-0.10.0/src/tracdap/rt/_impl/core/resources.py +112 -0
  14. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/storage.py +520 -0
  15. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/type_system.py +16 -0
  16. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/util.py +135 -3
  17. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/validation.py +159 -4
  18. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/context.py +137 -31
  19. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/dev_mode.py +112 -53
  20. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/engine.py +22 -19
  21. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/functions.py +121 -50
  22. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/graph.py +15 -1
  23. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/graph_builder.py +83 -22
  24. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2_grpc.py +2 -2
  25. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/data_pb2.py +15 -15
  26. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/data_pb2.pyi +4 -2
  27. tracdap_runtime-0.10.0/src/tracdap/rt/_impl/grpc/tracdap/metadata/flow_pb2.py +73 -0
  28. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/flow_pb2.pyi +17 -4
  29. tracdap_runtime-0.10.0/src/tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.py +152 -0
  30. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.pyi +26 -6
  31. tracdap_runtime-0.10.0/src/tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.py +90 -0
  32. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.pyi +41 -2
  33. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/resource_pb2.py +3 -3
  34. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/resource_pb2.pyi +2 -0
  35. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/storage_pb2.py +2 -2
  36. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/storage_pb2.pyi +6 -2
  37. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/runtime.py +25 -10
  38. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/static_api.py +57 -57
  39. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/format_arrow.py +2 -2
  40. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/format_csv.py +9 -9
  41. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/format_parquet.py +2 -2
  42. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/repo_local.py +6 -6
  43. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/api/__init__.py +2 -0
  44. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/api/constants.py +0 -5
  45. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/api/hook.py +10 -29
  46. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/api/model_api.py +69 -11
  47. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/api/static_api.py +26 -4
  48. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/__init__.py +5 -5
  49. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/common.py +2 -0
  50. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/platform.py +10 -2
  51. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/exceptions.py +17 -0
  52. tracdap_runtime-0.10.0/src/tracdap/rt/ext/external.py +127 -0
  53. tracdap_runtime-0.10.0/src/tracdap/rt/ext/plugins.py +141 -0
  54. tracdap_runtime-0.10.0/src/tracdap/rt/ext/repos.py +98 -0
  55. tracdap_runtime-0.10.0/src/tracdap/rt/ext/util.py +141 -0
  56. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/__init__.py +33 -31
  57. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/data.py +2 -0
  58. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/flow.py +10 -0
  59. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/job.py +6 -0
  60. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/model.py +34 -0
  61. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/resource.py +5 -1
  62. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/storage.py +6 -2
  63. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/tracdap_runtime.egg-info/PKG-INFO +16 -17
  64. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/tracdap_runtime.egg-info/SOURCES.txt +5 -3
  65. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/tracdap_runtime.egg-info/requires.txt +9 -10
  66. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/__init__.py +0 -16
  67. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/_impl/grpc/tracdap/metadata/flow_pb2.py +0 -69
  68. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.py +0 -144
  69. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.py +0 -77
  70. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/_plugins/repo_git.py +0 -315
  71. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/_plugins/repo_pypi.py +0 -360
  72. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/_version.py +0 -16
  73. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/ext/plugins.py +0 -138
  74. tracdap_runtime-0.9.3.dev1/src/tracdap/rt/ext/repos.py +0 -75
  75. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/LICENSE +0 -0
  76. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/pyproject.toml +0 -0
  77. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/__init__.py +0 -0
  78. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/__init__.py +0 -0
  79. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/schemas.py +0 -0
  80. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/shim.py +0 -0
  81. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/core/struct.py +0 -0
  82. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/__init__.py +0 -0
  83. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/exec/actors.py +0 -0
  84. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/ext/__init__.py +0 -0
  85. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/ext/sql.py +0 -0
  86. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/ext/storage.py +0 -0
  87. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/__init__.py +0 -0
  88. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/codec.py +0 -0
  89. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/server.py +0 -0
  90. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2.py +0 -0
  91. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2.pyi +0 -0
  92. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/common_pb2.py +0 -0
  93. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/common_pb2.pyi +0 -0
  94. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/config_pb2.py +0 -0
  95. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/config_pb2.pyi +0 -0
  96. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/custom_pb2.py +0 -0
  97. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/custom_pb2.pyi +0 -0
  98. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/file_pb2.py +0 -0
  99. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/file_pb2.pyi +0 -0
  100. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.py +0 -0
  101. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.pyi +0 -0
  102. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.py +0 -0
  103. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.pyi +0 -0
  104. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/search_pb2.py +0 -0
  105. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/search_pb2.pyi +0 -0
  106. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_pb2.py +0 -0
  107. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_pb2.pyi +0 -0
  108. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_update_pb2.py +0 -0
  109. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/tag_update_pb2.pyi +0 -0
  110. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/type_pb2.py +0 -0
  111. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_impl/grpc/tracdap/metadata/type_pb2.pyi +0 -0
  112. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/__init__.py +0 -0
  113. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/_helpers.py +0 -0
  114. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/config_local.py +0 -0
  115. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/storage_aws.py +0 -0
  116. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/storage_azure.py +0 -0
  117. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/storage_gcp.py +0 -0
  118. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/storage_local.py +0 -0
  119. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/storage_sql.py +0 -0
  120. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/_plugins/storage_sql_dialects.py +0 -0
  121. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/api/experimental.py +0 -0
  122. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/dynamic.py +0 -0
  123. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/job.py +0 -0
  124. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/result.py +0 -0
  125. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/runtime.py +0 -0
  126. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/config/tenant.py +0 -0
  127. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/ext/__init__.py +0 -0
  128. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/ext/config.py +0 -0
  129. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/ext/embed.py +0 -0
  130. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/ext/storage.py +0 -0
  131. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/launch/__init__.py +0 -0
  132. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/launch/__main__.py +0 -0
  133. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/launch/cli.py +0 -0
  134. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/launch/launch.py +0 -0
  135. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/common.py +0 -0
  136. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/config.py +0 -0
  137. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/custom.py +0 -0
  138. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/file.py +0 -0
  139. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/object.py +0 -0
  140. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/object_id.py +0 -0
  141. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/search.py +0 -0
  142. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/tag.py +0 -0
  143. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/tag_update.py +0 -0
  144. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/src/tracdap/rt/metadata/type.py +0 -0
  145. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/tracdap_runtime.egg-info/dependency_links.txt +0 -0
  146. {tracdap_runtime-0.9.3.dev1 → tracdap_runtime-0.10.0}/tracdap_runtime.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tracdap-runtime
3
- Version: 0.9.3.dev1
3
+ Version: 0.10.0
4
4
  Summary: Portable, production-grade models in Python
5
5
  Home-page: https://www.fintrac.co.uk/
6
6
  Author: Martin Traverse
@@ -12,11 +12,11 @@ Project-URL: Issue Tracker, https://github.com/finos/tracdap/issues
12
12
  Platform: any
13
13
  Classifier: Operating System :: OS Independent
14
14
  Classifier: Programming Language :: Python :: 3
15
- Classifier: Programming Language :: Python :: 3.9
16
15
  Classifier: Programming Language :: Python :: 3.10
17
16
  Classifier: Programming Language :: Python :: 3.11
18
17
  Classifier: Programming Language :: Python :: 3.12
19
18
  Classifier: Programming Language :: Python :: 3.13
19
+ Classifier: Programming Language :: Python :: 3.14
20
20
  Classifier: Intended Audience :: Developers
21
21
  Classifier: Intended Audience :: End Users/Desktop
22
22
  Classifier: Intended Audience :: Financial and Insurance Industry
@@ -25,20 +25,16 @@ Classifier: Topic :: Office/Business :: Financial
25
25
  Classifier: Topic :: Software Development
26
26
  Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
27
27
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
28
- Requires-Python: >=3.9
28
+ Requires-Python: >=3.10
29
29
  Description-Content-Type: text/markdown
30
30
  License-File: LICENSE
31
- Requires-Dist: protobuf==6.31.1
32
- Requires-Dist: pyarrow==21.0.0
33
- Requires-Dist: pyyaml==6.0.2
34
- Requires-Dist: dulwich==0.23.2
35
- Requires-Dist: requests==2.32.4
36
- Provides-Extra: grpc
37
- Requires-Dist: grpcio==1.74.0; extra == "grpc"
38
- Requires-Dist: grpcio-status==1.74.0; extra == "grpc"
31
+ Requires-Dist: protobuf==6.33.5
32
+ Requires-Dist: pyarrow==23.0.1
33
+ Requires-Dist: pyyaml==6.0.3
34
+ Requires-Dist: certifi>=2025.1.31
39
35
  Provides-Extra: pandas
40
- Requires-Dist: pandas<2.3.0,>=1.2.0; extra == "pandas"
41
- Requires-Dist: numpy<2.3.0,>=1.20; extra == "pandas"
36
+ Requires-Dist: pandas<2.4.0,>=1.3.0; extra == "pandas"
37
+ Requires-Dist: numpy<2.4.0,>=1.22; extra == "pandas"
42
38
  Provides-Extra: polars
43
39
  Requires-Dist: polars<2.0.0,>=1.0.0; extra == "polars"
44
40
  Provides-Extra: pyspark
@@ -54,10 +50,13 @@ Requires-Dist: google-api-core==2.25.1; extra == "gcp"
54
50
  Requires-Dist: google-cloud-storage==3.2.0; extra == "gcp"
55
51
  Requires-Dist: gcsfs==2024.3.1; extra == "gcp"
56
52
  Provides-Extra: azure
57
- Requires-Dist: azure-core==1.35.0; extra == "azure"
53
+ Requires-Dist: azure-core==1.38.0; extra == "azure"
58
54
  Requires-Dist: azure-identity==1.23.1; extra == "azure"
59
55
  Requires-Dist: azure-storage-blob==12.26.0; extra == "azure"
60
56
  Requires-Dist: adlfs==2024.12.0; extra == "azure"
57
+ Provides-Extra: grpc
58
+ Requires-Dist: grpcio==1.76.0; extra == "grpc"
59
+ Requires-Dist: grpcio-status==1.76.0; extra == "grpc"
61
60
  Dynamic: license-file
62
61
 
63
62
  <div align="center">
@@ -71,7 +70,7 @@ Dynamic: license-file
71
70
  <a href="https://pypi.org/project/tracdap-runtime"><img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/tracdap-runtime.svg?maxAge=3600" /></a>
72
71
  <a href="https://github.com/finos/tracdap/actions/workflows/packaging.yaml?query=branch%3Amain"><img alt="Packaging status" src="https://github.com/finos/tracdap/actions/workflows/packaging.yaml/badge.svg?branch:main&workflow:CI" /></a>
73
72
  <a href="https://github.com/finos/tracdap/actions/workflows/compliance.yaml?query=branch%3Amain"><img alt="Compliance status" src="https://github.com/finos/tracdap/actions/workflows/compliance.yaml/badge.svg?branch:main&workflow:CI" /></a>
74
- <a href="https://github.com/pandas-dev/pandas/blob/main/LICENSE"><img alt="License - Apache-2.0" src="https://img.shields.io/pypi/l/tracdap-runtime.svg" /></a>
73
+ <a href="https://github.com/finos/tracdap/blob/main/LICENSE"><img alt="License - Apache-2.0" src="https://img.shields.io/pypi/l/tracdap-runtime.svg" /></a>
75
74
  <a href="https://community.finos.org/docs/governance/software-projects/stages/incubating/"><img alt="FINOS - Incubating" src="https://cdn.jsdelivr.net/gh/finos/contrib-toolbox@master/images/badge-incubating.svg" /></a>
76
75
  </div>
77
76
 
@@ -107,9 +106,9 @@ For a complete guide to writing models in the TRAC framework, see the
107
106
 
108
107
  ## 📦 Requirements
109
108
 
110
- * **Python :** 3.9 or later
109
+ * **Python :** 3.10 or later
111
110
  * **Tools :** Any popular IDE (PyCharm, VS Code, etc.)
112
- * **Pandas :** Version 1.2 and later are supported
111
+ * **Pandas :** Version 1.3 and later are supported
113
112
  * **Polars :** Version 1.0 and later are supported
114
113
 
115
114
  *Some 3rd party libraries may have additional version constraints,
@@ -9,7 +9,7 @@
9
9
  <a href="https://pypi.org/project/tracdap-runtime"><img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/tracdap-runtime.svg?maxAge=3600" /></a>
10
10
  <a href="https://github.com/finos/tracdap/actions/workflows/packaging.yaml?query=branch%3Amain"><img alt="Packaging status" src="https://github.com/finos/tracdap/actions/workflows/packaging.yaml/badge.svg?branch:main&workflow:CI" /></a>
11
11
  <a href="https://github.com/finos/tracdap/actions/workflows/compliance.yaml?query=branch%3Amain"><img alt="Compliance status" src="https://github.com/finos/tracdap/actions/workflows/compliance.yaml/badge.svg?branch:main&workflow:CI" /></a>
12
- <a href="https://github.com/pandas-dev/pandas/blob/main/LICENSE"><img alt="License - Apache-2.0" src="https://img.shields.io/pypi/l/tracdap-runtime.svg" /></a>
12
+ <a href="https://github.com/finos/tracdap/blob/main/LICENSE"><img alt="License - Apache-2.0" src="https://img.shields.io/pypi/l/tracdap-runtime.svg" /></a>
13
13
  <a href="https://community.finos.org/docs/governance/software-projects/stages/incubating/"><img alt="FINOS - Incubating" src="https://cdn.jsdelivr.net/gh/finos/contrib-toolbox@master/images/badge-incubating.svg" /></a>
14
14
  </div>
15
15
 
@@ -45,9 +45,9 @@ For a complete guide to writing models in the TRAC framework, see the
45
45
 
46
46
  ## 📦 Requirements
47
47
 
48
- * **Python :** 3.9 or later
48
+ * **Python :** 3.10 or later
49
49
  * **Tools :** Any popular IDE (PyCharm, VS Code, etc.)
50
- * **Pandas :** Version 1.2 and later are supported
50
+ * **Pandas :** Version 1.3 and later are supported
51
51
  * **Polars :** Version 1.0 and later are supported
52
52
 
53
53
  *Some 3rd party libraries may have additional version constraints,
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = tracdap-runtime
3
- version = 0.9.3.dev1
3
+ version = 0.10.0
4
4
  license = Apache-2.0
5
5
  platform = any
6
6
  description = Portable, production-grade models in Python
@@ -14,11 +14,11 @@ project_urls =
14
14
  classifiers =
15
15
  Operating System :: OS Independent
16
16
  Programming Language :: Python :: 3
17
- Programming Language :: Python :: 3.9
18
17
  Programming Language :: Python :: 3.10
19
18
  Programming Language :: Python :: 3.11
20
19
  Programming Language :: Python :: 3.12
21
20
  Programming Language :: Python :: 3.13
21
+ Programming Language :: Python :: 3.14
22
22
  Intended Audience :: Developers
23
23
  Intended Audience :: End Users/Desktop
24
24
  Intended Audience :: Financial and Insurance Industry
@@ -50,21 +50,17 @@ packages =
50
50
  package_dir =
51
51
  tracdap = src/tracdap
52
52
  tracdap.rt = src/tracdap/rt
53
- python_requires = >= 3.9
53
+ python_requires = >= 3.10
54
54
  install_requires =
55
- protobuf == 6.31.1
56
- pyarrow == 21.0.0
57
- pyyaml == 6.0.2
58
- dulwich == 0.23.2
59
- requests == 2.32.4
55
+ protobuf == 6.33.5
56
+ pyarrow == 23.0.1
57
+ pyyaml == 6.0.3
58
+ certifi >= 2025.1.31
60
59
 
61
60
  [options.extras_require]
62
- grpc =
63
- grpcio == 1.74.0
64
- grpcio-status == 1.74.0
65
61
  pandas =
66
- pandas >= 1.2.0, < 2.3.0
67
- numpy >= 1.20, < 2.3.0
62
+ pandas >= 1.3.0, < 2.4.0
63
+ numpy >= 1.22, < 2.4.0
68
64
  polars =
69
65
  polars >= 1.0.0, < 2.0.0
70
66
  pyspark =
@@ -80,10 +76,13 @@ gcp =
80
76
  google-cloud-storage == 3.2.0
81
77
  gcsfs == 2024.3.1
82
78
  azure =
83
- azure-core == 1.35.0
79
+ azure-core == 1.38.0
84
80
  azure-identity == 1.23.1
85
81
  azure-storage-blob == 12.26.0
86
82
  adlfs == 2024.12.0
83
+ grpc =
84
+ grpcio == 1.76.0
85
+ grpcio-status == 1.76.0
87
86
 
88
87
  [egg_info]
89
88
  tag_build =
@@ -0,0 +1,16 @@
1
+ # Licensed to the Fintech Open Source Foundation (FINOS) under one or
2
+ # more contributor license agreements. See the NOTICE file distributed
3
+ # with this work for additional information regarding copyright ownership.
4
+ # FINOS licenses this file to you under the Apache License, Version 2.0
5
+ # (the "License"); you may not use this file except in compliance with the
6
+ # License. You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ __version__ = "0.10.0"
@@ -65,7 +65,7 @@ class ConfigKeys:
65
65
  class ConfigKDefaults:
66
66
 
67
67
  STORAGE_DEFAULT_FORMAT = "CSV"
68
- STORAGE_DEFAULT_LAYOUT = "OBJECT_ID_LAYOUT"
68
+ STORAGE_DEFAULT_LAYOUT = "DATE_SNAP_LAYOUT"
69
69
 
70
70
  RUNTIME_LIMIT_RESOURCE_SIZE = 256 # KB
71
71
 
@@ -173,7 +173,7 @@ class ConfigManager:
173
173
  dev_mode_locations: tp.List[str] = None,
174
174
  config_file_name: tp.Optional[str] = None) -> _T:
175
175
 
176
- resolved_url = self._resolve_config_file(config_url)
176
+ resolved_url = self.resolve_config_url(config_url)
177
177
 
178
178
  if config_file_name is not None:
179
179
  self._log.info(f"Loading {config_file_name} config: {self._url_to_str(resolved_url)}")
@@ -189,7 +189,7 @@ class ConfigManager:
189
189
  self, config_url: tp.Union[str, pathlib.Path],
190
190
  config_file_name: tp.Optional[str] = None) -> bytes:
191
191
 
192
- resolved_url = self._resolve_config_file(config_url)
192
+ resolved_url = self.resolve_config_url(config_url)
193
193
 
194
194
  if config_file_name is not None:
195
195
  self._log.info(f"Loading {config_file_name} config: {self._url_to_str(resolved_url)}")
@@ -198,7 +198,7 @@ class ConfigManager:
198
198
 
199
199
  return self._load_config_file(resolved_url)
200
200
 
201
- def _resolve_config_file(self, config_url: tp.Union[str, pathlib.Path]) -> _urlp.ParseResult:
201
+ def resolve_config_url(self, config_url: tp.Union[str, pathlib.Path]) -> _urlp.ParseResult:
202
202
 
203
203
  # If the config URL defines a scheme, treat it as absolute
204
204
  # (This also works for Windows paths, C:\ is an absolute path)