cognite-neat 1.0.27__tar.gz → 1.0.29__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 (337) hide show
  1. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/PKG-INFO +10 -9
  2. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_config.py +3 -0
  3. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/_analysis.py +18 -2
  4. cognite_neat-1.0.29/cognite/neat/_data_model/importers/__init__.py +5 -0
  5. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_api_importer.py +168 -3
  6. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_table_importer/data_classes.py +1 -2
  7. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_limits.py +11 -11
  8. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_exceptions.py +13 -0
  9. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_physical.py +55 -1
  10. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_wrappers.py +20 -2
  11. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_store/_store.py +4 -1
  12. cognite_neat-1.0.29/cognite/neat/_version.py +2 -0
  13. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/legacy.py +10 -0
  14. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/pyproject.toml +15 -11
  15. cognite_neat-1.0.27/cognite/neat/_data_model/importers/__init__.py +0 -5
  16. cognite_neat-1.0.27/cognite/neat/_version.py +0 -2
  17. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/README.md +0 -0
  18. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/__init__.py +0 -0
  19. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/__init__.py +0 -0
  20. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/api.py +0 -0
  21. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/client.py +0 -0
  22. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/config.py +0 -0
  23. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/containers_api.py +0 -0
  24. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/data_classes.py +0 -0
  25. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/data_model_api.py +0 -0
  26. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/filters.py +0 -0
  27. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/init/__init__.py +0 -0
  28. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/init/credentials.py +0 -0
  29. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/init/env_vars.py +0 -0
  30. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/init/interactive.py +0 -0
  31. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/init/main.py +0 -0
  32. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/spaces_api.py +0 -0
  33. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/statistics_api.py +0 -0
  34. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_client/views_api.py +0 -0
  35. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/__init__.py +0 -0
  36. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/_constants.py +0 -0
  37. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/_identifiers.py +0 -0
  38. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/_shared.py +0 -0
  39. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/_snapshot.py +0 -0
  40. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/__init__.py +0 -0
  41. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/_differ.py +0 -0
  42. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/_differ_container.py +0 -0
  43. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/_differ_data_model.py +0 -0
  44. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/_differ_space.py +0 -0
  45. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/_differ_view.py +0 -0
  46. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/data_classes.py +0 -0
  47. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/deployer/deployer.py +0 -0
  48. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/__init__.py +0 -0
  49. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/_api_exporter.py +0 -0
  50. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/_base.py +0 -0
  51. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/_table_exporter/__init__.py +0 -0
  52. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/_table_exporter/exporter.py +0 -0
  53. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/_table_exporter/workbook.py +0 -0
  54. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/exporters/_table_exporter/writer.py +0 -0
  55. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_base.py +0 -0
  56. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_table_importer/__init__.py +0 -0
  57. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_table_importer/importer.py +0 -0
  58. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_table_importer/reader.py +0 -0
  59. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/importers/_table_importer/source.py +0 -0
  60. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/__init__.py +0 -0
  61. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/conceptual/__init__.py +0 -0
  62. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/conceptual/_base.py +0 -0
  63. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/conceptual/_concept.py +0 -0
  64. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/conceptual/_data_model.py +0 -0
  65. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/conceptual/_properties.py +0 -0
  66. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/conceptual/_property.py +0 -0
  67. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/__init__.py +0 -0
  68. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_base.py +0 -0
  69. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_constants.py +0 -0
  70. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_constraints.py +0 -0
  71. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_container.py +0 -0
  72. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_data_model.py +0 -0
  73. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_data_types.py +0 -0
  74. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_http.py +0 -0
  75. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_indexes.py +0 -0
  76. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_limits.py +0 -0
  77. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_references.py +0 -0
  78. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_schema.py +0 -0
  79. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_space.py +0 -0
  80. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_types.py +0 -0
  81. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_view_filter.py +0 -0
  82. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_view_property.py +0 -0
  83. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/dms/_views.py +0 -0
  84. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/entities/__init__.py +0 -0
  85. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/entities/_base.py +0 -0
  86. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/entities/_constants.py +0 -0
  87. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/entities/_data_types.py +0 -0
  88. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/entities/_identifiers.py +0 -0
  89. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/models/entities/_parser.py +0 -0
  90. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/__init__.py +0 -0
  91. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/__init__.py +0 -0
  92. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_ai_readiness.py +0 -0
  93. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_base.py +0 -0
  94. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_connections.py +0 -0
  95. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_consistency.py +0 -0
  96. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_containers.py +0 -0
  97. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_orchestrator.py +0 -0
  98. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_data_model/validation/dms/_views.py +0 -0
  99. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_issues.py +0 -0
  100. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/__init__.py +0 -0
  101. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_cdf.py +0 -0
  102. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/__init__.py +0 -0
  103. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/_render.py +0 -0
  104. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/__init__.py +0 -0
  105. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/deployment.css +0 -0
  106. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/deployment.js +0 -0
  107. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/issues.css +0 -0
  108. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/issues.js +0 -0
  109. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/shared.css +0 -0
  110. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/statistics.css +0 -0
  111. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/static/statistics.js +0 -0
  112. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/templates/__init__.py +0 -0
  113. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/templates/deployment.html +0 -0
  114. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/templates/issues.html +0 -0
  115. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_html/templates/statistics.html +0 -0
  116. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_issues.py +0 -0
  117. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/__init__.py +0 -0
  118. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/_deployment/__init__.py +0 -0
  119. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/_deployment/_physical/__init__.py +0 -0
  120. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/_deployment/_physical/_changes.py +0 -0
  121. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/_deployment/_physical/_statistics.py +0 -0
  122. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/_deployment/_physical/serializer.py +0 -0
  123. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_result/_result.py +0 -0
  124. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_session.py +0 -0
  125. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_usage_analytics/__init__.py +0 -0
  126. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_usage_analytics/_collector.py +0 -0
  127. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_usage_analytics/_constants.py +0 -0
  128. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_session/_usage_analytics/_storage.py +0 -0
  129. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_state_machine/__init__.py +0 -0
  130. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_state_machine/_base.py +0 -0
  131. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_state_machine/_states.py +0 -0
  132. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_store/__init__.py +0 -0
  133. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_store/_provenance.py +0 -0
  134. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/__init__.py +0 -0
  135. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/_reader.py +0 -0
  136. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/auxiliary.py +0 -0
  137. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/collection.py +0 -0
  138. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/http_client/__init__.py +0 -0
  139. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/http_client/_client.py +0 -0
  140. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/http_client/_config.py +0 -0
  141. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/http_client/_data_classes.py +0 -0
  142. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/http_client/_tracker.py +0 -0
  143. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/repo.py +0 -0
  144. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/text.py +0 -0
  145. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/useful_types.py +0 -0
  146. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_utils/validation.py +0 -0
  147. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/__init__.py +0 -0
  148. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/__init__.py +0 -0
  149. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/__init__.py +0 -0
  150. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/_api/__init__.py +0 -0
  151. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/_api/data_modeling_loaders.py +0 -0
  152. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/_api/neat_instances.py +0 -0
  153. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/_api/schema.py +0 -0
  154. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/_api/statistics.py +0 -0
  155. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/_api_client.py +0 -0
  156. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/data_classes/__init__.py +0 -0
  157. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/data_classes/data_modeling.py +0 -0
  158. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/data_classes/neat_sequence.py +0 -0
  159. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/data_classes/schema.py +0 -0
  160. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/data_classes/statistics.py +0 -0
  161. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_client/testing.py +0 -0
  162. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_config.py +0 -0
  163. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_constants.py +0 -0
  164. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/__init__.py +0 -0
  165. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/_constants.py +0 -0
  166. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/_shared.py +0 -0
  167. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/analysis/__init__.py +0 -0
  168. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/analysis/_base.py +0 -0
  169. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/catalog/__init__.py +0 -0
  170. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/catalog/classic_model.xlsx +0 -0
  171. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/catalog/conceptual-imf-data-model.xlsx +0 -0
  172. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/catalog/hello_world_pump.xlsx +0 -0
  173. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/__init__.py +0 -0
  174. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/_base.py +0 -0
  175. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/_data_model2dms.py +0 -0
  176. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/_data_model2excel.py +0 -0
  177. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/_data_model2instance_template.py +0 -0
  178. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/_data_model2semantic_model.py +0 -0
  179. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/exporters/_data_model2yaml.py +0 -0
  180. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/__init__.py +0 -0
  181. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_base.py +0 -0
  182. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_base_file_reader.py +0 -0
  183. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_dict2data_model.py +0 -0
  184. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_dms2data_model.py +0 -0
  185. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_graph2data_model.py +0 -0
  186. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_rdf/__init__.py +0 -0
  187. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_rdf/_base.py +0 -0
  188. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_rdf/_inference2rdata_model.py +0 -0
  189. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_rdf/_owl2data_model.py +0 -0
  190. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_rdf/_shared.py +0 -0
  191. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/importers/_spreadsheet2data_model.py +0 -0
  192. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/__init__.py +0 -0
  193. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/_base_unverified.py +0 -0
  194. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/_base_verified.py +0 -0
  195. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/_import_contexts.py +0 -0
  196. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/_types.py +0 -0
  197. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/conceptual/__init__.py +0 -0
  198. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/conceptual/_unverified.py +0 -0
  199. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/conceptual/_validation.py +0 -0
  200. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/conceptual/_verified.py +0 -0
  201. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/data_types.py +0 -0
  202. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/__init__.py +0 -0
  203. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_constants.py +0 -0
  204. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_loaders.py +0 -0
  205. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_multi_value.py +0 -0
  206. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_restrictions.py +0 -0
  207. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_single_value.py +0 -0
  208. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_types.py +0 -0
  209. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/entities/_wrapped.py +0 -0
  210. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/mapping/__init__.py +0 -0
  211. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/mapping/_classic2core.py +0 -0
  212. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/mapping/_classic2core.yaml +0 -0
  213. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/physical/__init__.py +0 -0
  214. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/physical/_exporter.py +0 -0
  215. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/physical/_unverified.py +0 -0
  216. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/physical/_validation.py +0 -0
  217. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/models/physical/_verified.py +0 -0
  218. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/transformers/__init__.py +0 -0
  219. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/transformers/_base.py +0 -0
  220. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/transformers/_converters.py +0 -0
  221. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/transformers/_mapping.py +0 -0
  222. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/transformers/_union_conceptual.py +0 -0
  223. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_data_model/transformers/_verification.py +0 -0
  224. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/__init__.py +0 -0
  225. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/_shared.py +0 -0
  226. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/_tracking/__init__.py +0 -0
  227. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/_tracking/base.py +0 -0
  228. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/_tracking/log.py +0 -0
  229. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
  230. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/examples/Knowledge-Graph-Nordic44.xml +0 -0
  231. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/examples/__init__.py +0 -0
  232. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
  233. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/__init__.py +0 -0
  234. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_base.py +0 -0
  235. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/__init__.py +0 -0
  236. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_assets.py +0 -0
  237. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_base.py +0 -0
  238. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_classic.py +0 -0
  239. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_data_sets.py +0 -0
  240. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_events.py +0 -0
  241. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_files.py +0 -0
  242. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_labels.py +0 -0
  243. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_relationships.py +0 -0
  244. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_sequences.py +0 -0
  245. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_timeseries.py +0 -0
  246. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_dict.py +0 -0
  247. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_dms.py +0 -0
  248. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_dms_graph.py +0 -0
  249. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_mock_graph_generator.py +0 -0
  250. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_raw.py +0 -0
  251. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/extractors/_rdf_file.py +0 -0
  252. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/loaders/__init__.py +0 -0
  253. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/loaders/_base.py +0 -0
  254. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/loaders/_rdf2dms.py +0 -0
  255. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/loaders/_rdf_to_instance_space.py +0 -0
  256. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/queries/__init__.py +0 -0
  257. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/queries/_base.py +0 -0
  258. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/queries/_queries.py +0 -0
  259. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/queries/_select.py +0 -0
  260. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/queries/_update.py +0 -0
  261. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/transformers/__init__.py +0 -0
  262. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/transformers/_base.py +0 -0
  263. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/transformers/_classic_cdf.py +0 -0
  264. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/transformers/_prune_graph.py +0 -0
  265. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/transformers/_rdfpath.py +0 -0
  266. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_instances/transformers/_value_type.py +0 -0
  267. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/__init__.py +0 -0
  268. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/_base.py +0 -0
  269. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/_contextmanagers.py +0 -0
  270. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/_factory.py +0 -0
  271. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/errors/__init__.py +0 -0
  272. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/errors/_external.py +0 -0
  273. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/errors/_general.py +0 -0
  274. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/errors/_properties.py +0 -0
  275. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/errors/_resources.py +0 -0
  276. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/errors/_wrapper.py +0 -0
  277. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/formatters.py +0 -0
  278. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/__init__.py +0 -0
  279. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/_external.py +0 -0
  280. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/_general.py +0 -0
  281. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/_models.py +0 -0
  282. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/_properties.py +0 -0
  283. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/_resources.py +0 -0
  284. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_issues/warnings/user_modeling.py +0 -0
  285. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_shared.py +0 -0
  286. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_store/__init__.py +0 -0
  287. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_store/_data_model.py +0 -0
  288. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_store/_instance.py +0 -0
  289. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_store/_provenance.py +0 -0
  290. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_store/exceptions.py +0 -0
  291. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/__init__.py +0 -0
  292. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/auth.py +0 -0
  293. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/auxiliary.py +0 -0
  294. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/collection_.py +0 -0
  295. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/graph_transformations_report.py +0 -0
  296. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/io_.py +0 -0
  297. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/rdf_.py +0 -0
  298. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/reader/__init__.py +0 -0
  299. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/reader/_base.py +0 -0
  300. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/spreadsheet.py +0 -0
  301. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/tarjan.py +0 -0
  302. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/text.py +0 -0
  303. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/time_.py +0 -0
  304. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/upload.py +0 -0
  305. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/core/_utils/xml_.py +0 -0
  306. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/engine/__init__.py +0 -0
  307. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/engine/_import.py +0 -0
  308. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/engine/_interface.py +0 -0
  309. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/engine/_load.py +0 -0
  310. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/plugins/__init__.py +0 -0
  311. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/plugins/_base.py +0 -0
  312. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/plugins/_data_model.py +0 -0
  313. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/plugins/_issues.py +0 -0
  314. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/plugins/_manager.py +0 -0
  315. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/__init__.py +0 -0
  316. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_base.py +0 -0
  317. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_collector.py +0 -0
  318. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_diff.py +0 -0
  319. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_drop.py +0 -0
  320. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_experimental.py +0 -0
  321. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_explore.py +0 -0
  322. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_fix.py +0 -0
  323. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_inspect.py +0 -0
  324. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_mapping.py +0 -0
  325. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_plugin.py +0 -0
  326. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_prepare.py +0 -0
  327. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_read.py +0 -0
  328. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_set.py +0 -0
  329. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_show.py +0 -0
  330. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_state/README.md +0 -0
  331. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_state.py +0 -0
  332. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_subset.py +0 -0
  333. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_template.py +0 -0
  334. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_to.py +0 -0
  335. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/_wizard.py +0 -0
  336. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/_v0/session/exceptions.py +0 -0
  337. {cognite_neat-1.0.27 → cognite_neat-1.0.29}/cognite/neat/py.typed +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cognite-neat
3
- Version: 1.0.27
3
+ Version: 1.0.29
4
4
  Summary: Knowledge graph transformation
5
5
  Author: Nikola Vasiljevic, Anders Albert
6
6
  Author-email: Nikola Vasiljevic <nikola.vasiljevic@cognite.com>, Anders Albert <anders.albert@cognite.com>
@@ -17,22 +17,14 @@ Classifier: Programming Language :: Python :: 3.11
17
17
  Classifier: Programming Language :: Python :: 3.12
18
18
  Classifier: Programming Language :: Python :: 3.13
19
19
  Classifier: Operating System :: OS Independent
20
- Requires-Dist: pandas>=1.5.3,<3.0.0
21
20
  Requires-Dist: cognite-sdk>=7.83.0,<8.0.0
22
- Requires-Dist: rdflib>=7.0.0,<8.0.0
23
21
  Requires-Dist: httpx>=0.28.1
24
22
  Requires-Dist: pydantic>=2.0.0,<3.0.0
25
23
  Requires-Dist: pyyaml>=6.0.1,<7.0.0
26
- Requires-Dist: requests>=2.28.1,<3.0.0
27
24
  Requires-Dist: urllib3>=1.26.15,<3.0.0
28
25
  Requires-Dist: openpyxl>=3.0.10,<4.0.0
29
26
  Requires-Dist: networkx>=3.4.2,<4.0.0
30
27
  Requires-Dist: mixpanel>=4.10.1,<5.0.0
31
- Requires-Dist: packaging>=22.0
32
- Requires-Dist: jsonpath-python>=1.0.6,<2.0.0
33
- Requires-Dist: elementpath>=4.0.0,<5.0.0
34
- Requires-Dist: pyvis>=0.3.2,<1.0.0
35
- Requires-Dist: rich[jupyter]>=13.7.1,<14.0.0
36
28
  Requires-Dist: exceptiongroup>=1.1.3,<2.0.0 ; python_full_version < '3.11'
37
29
  Requires-Dist: backports-strenum>=1.2,<2.0.0 ; python_full_version < '3.11'
38
30
  Requires-Dist: typing-extensions>=4.8.0,<5.0.0 ; python_full_version < '3.11'
@@ -51,6 +43,14 @@ Requires-Dist: mkdocs-autorefs>=0.5.0,<1.0.0 ; extra == 'docs'
51
43
  Requires-Dist: gspread>=5.0.0,<6.0.0 ; extra == 'google'
52
44
  Requires-Dist: google-api-python-client>=2.70.0,<3.0.0 ; extra == 'google'
53
45
  Requires-Dist: google-auth-oauthlib>=1.0.0,<2.0.0 ; extra == 'google'
46
+ Requires-Dist: rdflib>=7.0.0,<8.0.0 ; extra == 'legacy'
47
+ Requires-Dist: pandas>=1.5.3,<3.0.0 ; extra == 'legacy'
48
+ Requires-Dist: requests>=2.28.1,<3.0.0 ; extra == 'legacy'
49
+ Requires-Dist: packaging>=22.0 ; extra == 'legacy'
50
+ Requires-Dist: jsonpath-python>=1.0.6,<2.0.0 ; extra == 'legacy'
51
+ Requires-Dist: elementpath>=4.0.0,<5.0.0 ; extra == 'legacy'
52
+ Requires-Dist: pyvis>=0.3.2,<1.0.0 ; extra == 'legacy'
53
+ Requires-Dist: rich[jupyter]>=13.7.1,<14.0.0 ; extra == 'legacy'
54
54
  Requires-Dist: lxml>=5.3.0,<6.0.0 ; extra == 'lxml'
55
55
  Requires-Dist: oxrdflib>=0.4.0,<0.5.0 ; extra == 'oxi'
56
56
  Requires-Dist: pyoxigraph>=0.4.3,<0.5.0 ; extra == 'oxi'
@@ -61,6 +61,7 @@ Project-URL: GitHub, https://github.com/cognitedata/neat
61
61
  Project-URL: Changelog, https://github.com/cognitedata/neat/releases
62
62
  Provides-Extra: docs
63
63
  Provides-Extra: google
64
+ Provides-Extra: legacy
64
65
  Provides-Extra: lxml
65
66
  Provides-Extra: oxi
66
67
  Description-Content-Type: text/markdown
@@ -105,6 +105,9 @@ class AlphaFlagConfig(ConfigModel):
105
105
  default=False,
106
106
  description="If enabled, Neat will run experimental validators that are still in alpha stage.",
107
107
  )
108
+ enable_solution_model_creation: bool = Field(
109
+ default=False, description="If enabled, neat.physical_data_model.create() will be available"
110
+ )
108
111
  enable_cdf_analysis: bool = Field(default=False, description="If enabled, neat.cdf endpoint will be available.")
109
112
 
110
113
  def __setattr__(self, key: str, value: Any) -> None:
@@ -43,10 +43,14 @@ _NodeT = TypeVar("_NodeT", ContainerReference, ViewReference)
43
43
 
44
44
  class ValidationResources:
45
45
  def __init__(
46
- self, modus_operandi: ModusOperandi, local: SchemaSnapshot, cdf: SchemaSnapshot, limits: SchemaLimits
46
+ self,
47
+ modus_operandi: ModusOperandi,
48
+ local: SchemaSnapshot,
49
+ cdf: SchemaSnapshot,
50
+ limits: SchemaLimits | None = None,
47
51
  ) -> None:
48
52
  self._modus_operandi = modus_operandi
49
- self.limits = limits
53
+ self.limits = limits or SchemaLimits()
50
54
 
51
55
  self.local = local
52
56
  self.cdf = cdf
@@ -385,6 +389,18 @@ class ValidationResources:
385
389
 
386
390
  return connection_end_node_types
387
391
 
392
+ @staticmethod
393
+ def is_explicit_connection(property_: ViewRequestProperty) -> bool:
394
+ """Check if a property is an explicit connection property, meaning end node type is explicitly defined.
395
+
396
+ Args:
397
+ property_: The property to check.
398
+
399
+ Returns:
400
+ True if the property is a connection property, False otherwise.
401
+ """
402
+ return True if property_.source else False
403
+
388
404
  @cached_property
389
405
  def views_by_container(self) -> dict[ContainerReference, set[ViewReference]]:
390
406
  """Get a mapping from containers to the views that use them.
@@ -0,0 +1,5 @@
1
+ from ._api_importer import DMSAPICreator, DMSAPIImporter
2
+ from ._base import DMSImporter
3
+ from ._table_importer.importer import DMSTableImporter
4
+
5
+ __all__ = ["DMSAPICreator", "DMSAPIImporter", "DMSImporter", "DMSTableImporter"]
@@ -1,19 +1,30 @@
1
1
  import difflib
2
2
  from pathlib import Path
3
- from typing import Any
3
+ from typing import Any, Literal
4
4
 
5
5
  import yaml
6
6
  from pydantic import ValidationError
7
7
 
8
8
  from cognite.neat._client import NeatClient
9
+ from cognite.neat._data_model._analysis import ValidationResources
10
+ from cognite.neat._data_model._snapshot import SchemaSnapshot
9
11
  from cognite.neat._data_model.importers._base import DMSImporter
10
12
  from cognite.neat._data_model.models.dms import (
11
13
  DataModelReference,
12
14
  RequestSchema,
13
15
  SpaceReference,
14
16
  )
15
- from cognite.neat._exceptions import CDFAPIException, DataModelImportException, FileReadException
16
- from cognite.neat._issues import ModelSyntaxError
17
+ from cognite.neat._data_model.models.dms._data_model import DataModelRequest
18
+ from cognite.neat._data_model.models.dms._references import ViewReference
19
+ from cognite.neat._data_model.models.dms._views import ViewRequest
20
+ from cognite.neat._data_model.models.entities._parser import parse_entities
21
+ from cognite.neat._exceptions import (
22
+ CDFAPIException,
23
+ DataModelCreateException,
24
+ DataModelImportException,
25
+ FileReadException,
26
+ )
27
+ from cognite.neat._issues import ConsistencyError, ModelSyntaxError
17
28
  from cognite.neat._utils.http_client import FailedRequestMessage
18
29
  from cognite.neat._utils.text import humanize_collection
19
30
  from cognite.neat._utils.validation import ValidationContext, humanize_validation_error
@@ -164,3 +175,157 @@ class DMSAPIImporter(DMSImporter):
164
175
  )
165
176
  schema_data["dataModel"] = data_model
166
177
  return schema_data
178
+
179
+
180
+ class DMSAPICreator(DMSImporter):
181
+ """Creates data model from the existing schema components in CDF"""
182
+
183
+ def __init__(
184
+ self,
185
+ cdf_snapshot: SchemaSnapshot,
186
+ space: str,
187
+ external_id: str,
188
+ version: str,
189
+ views: list[str],
190
+ name: str | None = None,
191
+ description: str | None = None,
192
+ kind: Literal["solution"] = "solution",
193
+ ) -> None:
194
+ self._resources = ValidationResources("rebuild", local=cdf_snapshot, cdf=cdf_snapshot)
195
+ self._space = space
196
+ self._external_id = external_id
197
+ self._version = version
198
+ self._name = name
199
+ self._description = description
200
+ self._kind = kind
201
+ self._views = views
202
+
203
+ def to_data_model(self) -> RequestSchema:
204
+ if self._kind == "solution":
205
+ return self._to_solution_model()
206
+ else:
207
+ raise NotImplementedError(f"Data model kind '{self._kind}' is not supported yet.")
208
+
209
+ def _to_solution_model(self) -> RequestSchema:
210
+ """Creates solution data model from provided views"""
211
+
212
+ errors, view_refs = self._parse_view_references(self._views)
213
+
214
+ if not view_refs:
215
+ errors.append(ModelSyntaxError(message="No valid views provided to create the data model."))
216
+
217
+ # Check if all views exist in the cdf snapshot:
218
+ for view in view_refs:
219
+ if not self._resources.select_view(view):
220
+ errors.append(
221
+ ConsistencyError(
222
+ message=f"View '{view}' not found in the provided CDF snapshot. Cannot create data model."
223
+ )
224
+ )
225
+
226
+ if errors:
227
+ raise DataModelCreateException(errors)
228
+
229
+ # now we iterate over the views, expand them and add them to the data model
230
+ expanded_views: list[ViewRequest] = []
231
+
232
+ for view in view_refs:
233
+ expanded_view = self._resources.expand_view_properties(view)
234
+ if not expanded_view:
235
+ raise RuntimeError(f"Failed to expand view '{view}' despite earlier checks. This is a bug.")
236
+
237
+ # make a deep copy to avoid modifying the cached view in resources
238
+ expanded_view = expanded_view.model_copy(deep=True)
239
+
240
+ # remove implements after expansion
241
+ expanded_view.implements = None
242
+
243
+ # set space and version to data model values
244
+ expanded_view.space = self._space
245
+ expanded_view.version = self._version
246
+
247
+ # Connections should be dropped if their source are not part of the expanded view
248
+ properties_to_remove = []
249
+ for id, property_ in expanded_view.properties.items():
250
+ # Currently only supporting explicit connections where source is defined
251
+ if self._resources.is_explicit_connection(property_):
252
+ source = property_.source
253
+ if source not in view_refs:
254
+ properties_to_remove.append(id)
255
+
256
+ # Update source to point to view of solution data model
257
+ else:
258
+ property_.source = ViewReference(
259
+ space=self._space, external_id=source.external_id, version=self._version
260
+ )
261
+
262
+ # Dropping connections which sources will not be part of the data model
263
+ for property_id in properties_to_remove:
264
+ expanded_view.properties.pop(property_id)
265
+
266
+ expanded_views.append(expanded_view)
267
+
268
+ data_model = DataModelRequest(
269
+ space=self._space,
270
+ externalId=self._external_id,
271
+ version=self._version,
272
+ name=self._name,
273
+ description=self._description,
274
+ views=[view.as_reference() for view in expanded_views],
275
+ )
276
+
277
+ return RequestSchema(dataModel=data_model, views=expanded_views)
278
+
279
+ @classmethod
280
+ def _parse_view_references(
281
+ cls, views: list[str]
282
+ ) -> tuple[list[ModelSyntaxError | ConsistencyError], list[ViewReference]]:
283
+ """Parses list of view strings in to list of view references
284
+
285
+ Args:
286
+ views : list of view references in a short string format
287
+
288
+ Returns:
289
+ Tuple of errors and view references
290
+ """
291
+ view_references: list[ViewReference] = []
292
+ errors: list[ModelSyntaxError | ConsistencyError] = []
293
+
294
+ for view in views:
295
+ try:
296
+ entity = parse_entities(view)
297
+ if not entity:
298
+ errors.append(ModelSyntaxError(message=f"Invalid view reference '{view}': Could not parse entity."))
299
+ continue
300
+
301
+ if len(entity) != 1:
302
+ errors.append(
303
+ ModelSyntaxError(message=f"Invalid view reference '{view}': Expected a single view definition.")
304
+ )
305
+ continue
306
+
307
+ if "version" not in entity[0].properties:
308
+ errors.append(
309
+ ModelSyntaxError(message=f"Invalid view reference '{view}': Missing 'version' property.")
310
+ )
311
+ continue
312
+
313
+ try:
314
+ view_ref = ViewReference(
315
+ space=entity[0].prefix,
316
+ external_id=entity[0].suffix,
317
+ version=str(entity[0].properties["version"]),
318
+ )
319
+ view_references.append(view_ref)
320
+ except ValidationError as e:
321
+ humanized = [humanize_validation_error(error) for error in e.errors()]
322
+ errors.append(
323
+ ModelSyntaxError(
324
+ message=f"Invalid view reference '{view}', cannot parse it: " + ", ".join(humanized)
325
+ )
326
+ )
327
+
328
+ except ValueError as e:
329
+ errors.append(ModelSyntaxError(message=f"Invalid view reference '{view}', cannot parse it: {e}"))
330
+
331
+ return errors, view_references
@@ -1,5 +1,5 @@
1
1
  from collections.abc import Mapping
2
- from typing import Annotated, Literal, cast, get_args
2
+ from typing import Annotated, Any, Literal, cast, get_args
3
3
 
4
4
  from pydantic import (
5
5
  AliasGenerator,
@@ -12,7 +12,6 @@ from pydantic import (
12
12
  )
13
13
  from pydantic.alias_generators import to_camel
14
14
  from pydantic.fields import FieldInfo
15
- from traitlets import Any
16
15
 
17
16
  from cognite.neat._data_model.models.entities import ParsedEntity, parse_entities, parse_entity
18
17
  from cognite.neat._utils.text import title_case
@@ -11,7 +11,7 @@ from cognite.neat._data_model.models.dms._view_property import (
11
11
  from cognite.neat._data_model.validation.dms._base import (
12
12
  DataModelValidator,
13
13
  )
14
- from cognite.neat._issues import ConsistencyError
14
+ from cognite.neat._issues import ConsistencyError, Recommendation
15
15
 
16
16
  BASE_CODE = "NEAT-DMS-LIMITS"
17
17
 
@@ -124,19 +124,19 @@ class ViewContainerCountIsOutOfLimits(DataModelValidator):
124
124
  Checks that the view references no more containers than the CDF limit allows.
125
125
 
126
126
  ## Why is this bad?
127
- CDF enforces limits on the number of containers per view to prevent overly complex view definitions, leading
128
- to too many joins and performance degradation.
127
+ Mapping too many containers to a single view can lead to performance issues to increasing number of joins
128
+ that need to be performed when querying data through the view.
129
129
 
130
130
  ## Example
131
131
  If a view references 20 containers and the CDF limit is 10 containers per view,
132
- this validator will raise a ConsistencyError issue.
132
+ this validator will raise a Recommendation.
133
133
  """
134
134
 
135
135
  code = f"{BASE_CODE}-VIEW-002"
136
- issue_type = ConsistencyError
136
+ issue_type = Recommendation
137
137
 
138
- def run(self) -> list[ConsistencyError]:
139
- errors: list[ConsistencyError] = []
138
+ def run(self) -> list[Recommendation]:
139
+ recommendations: list[Recommendation] = []
140
140
 
141
141
  # Single loop over all views
142
142
  for view_ref in self.validation_resources.merged_data_model.views or []:
@@ -152,18 +152,18 @@ class ViewContainerCountIsOutOfLimits(DataModelValidator):
152
152
  }
153
153
  )
154
154
  if count > self.validation_resources.limits.views.containers:
155
- errors.append(
156
- ConsistencyError(
155
+ recommendations.append(
156
+ Recommendation(
157
157
  message=(
158
158
  f"View {view_ref!s} references "
159
- f"{count} containers, which exceeds the limit of "
159
+ f"{count} containers, which exceeds a common sense limit of "
160
160
  f"{self.validation_resources.limits.views.containers} containers per view."
161
161
  ),
162
162
  code=self.code,
163
163
  )
164
164
  )
165
165
 
166
- return errors
166
+ return recommendations
167
167
 
168
168
 
169
169
  class ViewImplementsCountIsOutOfLimits(DataModelValidator):
@@ -1,6 +1,8 @@
1
1
  from abc import ABC
2
2
  from typing import TYPE_CHECKING
3
3
 
4
+ from cognite.neat._issues import ConsistencyError
5
+
4
6
  if TYPE_CHECKING:
5
7
  from cognite.neat._issues import ModelSyntaxError
6
8
  from cognite.neat._utils.http_client import HTTPMessage
@@ -23,6 +25,17 @@ class DataModelImportException(NeatException):
23
25
  return f"Model import failed with {len(self.errors)} errors: " + "; ".join(map(str, self.errors))
24
26
 
25
27
 
28
+ class DataModelCreateException(NeatException):
29
+ """Raised when there is an error creating a data model."""
30
+
31
+ def __init__(self, errors: "list[ModelSyntaxError | ConsistencyError]") -> None:
32
+ super().__init__(errors)
33
+ self.errors = errors
34
+
35
+ def __str__(self) -> str:
36
+ return f"Model creation failed with {len(self.errors)} errors: " + "; ".join(map(str, self.errors))
37
+
38
+
26
39
  class CDFAPIException(NeatException):
27
40
  """Raised when there is an error in an API call."""
28
41
 
@@ -1,3 +1,4 @@
1
+ from types import MethodType
1
2
  from typing import Any, Literal
2
3
 
3
4
  from cognite.neat._client import NeatClient
@@ -13,7 +14,7 @@ from cognite.neat._data_model.exporters import (
13
14
  DMSTableYamlExporter,
14
15
  )
15
16
  from cognite.neat._data_model.exporters._table_exporter.workbook import WorkbookOptions
16
- from cognite.neat._data_model.importers import DMSAPIImporter, DMSImporter, DMSTableImporter
17
+ from cognite.neat._data_model.importers import DMSAPICreator, DMSAPIImporter, DMSImporter, DMSTableImporter
17
18
  from cognite.neat._data_model.models.dms import DataModelReference
18
19
  from cognite.neat._data_model.validation.dms import DmsDataModelValidation
19
20
  from cognite.neat._exceptions import UserInputError
@@ -24,6 +25,7 @@ from cognite.neat._utils._reader import NeatReader
24
25
  from ._wrappers import session_wrapper
25
26
 
26
27
 
28
+ @session_wrapper
27
29
  class PhysicalDataModel:
28
30
  """Read from a data source into NeatSession graph store."""
29
31
 
@@ -34,6 +36,10 @@ class PhysicalDataModel:
34
36
  self.read = ReadPhysicalDataModel(self._store, self._client, self._config)
35
37
  self.write = WritePhysicalDataModel(self._store, self._client, self._config)
36
38
 
39
+ # attach alpha methods
40
+ if self._config.alpha.enable_solution_model_creation:
41
+ self.create = MethodType(create, self) # type: ignore[attr-defined]
42
+
37
43
  def _repr_html_(self) -> str:
38
44
  if not isinstance(self._store.state, PhysicalState):
39
45
  return "No physical data model. Get started by reading physical data model <em>.physica_data_mode.read</em>"
@@ -292,3 +298,51 @@ class WritePhysicalDataModel:
292
298
  )
293
299
  on_success = SchemaDeployer(self._client, options)
294
300
  return self._store.write_physical(writer, on_success)
301
+
302
+
303
+ def create(
304
+ self: PhysicalDataModel,
305
+ space: str,
306
+ external_id: str,
307
+ version: str,
308
+ views: list[str],
309
+ name: str | None = None,
310
+ description: str | None = None,
311
+ kind: Literal["solution"] = "solution",
312
+ ) -> None:
313
+ """Create a solution data model in Neat from CDF views.
314
+
315
+ Args:
316
+ space (str): The schema space of the data model.
317
+ external_id (str): The external id of the data model.
318
+ version (str): The version of the data model.
319
+ views (list[str]): List of view external ids to include in the data model in the short string format
320
+ space:external_id(version=version)
321
+ name (str | None): The name of the data model. If None, the name will be fetched from CDF.
322
+ description (str | None): The description of the data model. If None, the description will be fetched from CDF.
323
+ kind (Literal["solution"]): The kind of the data model. Currently, only "solution" is supported.
324
+ """
325
+
326
+ if not self._store.cdf_snapshot.data_model:
327
+ raise ValueError("There are no data models in CDF. Cannot create solution model.")
328
+
329
+ creator = DMSAPICreator(
330
+ space=space,
331
+ external_id=external_id,
332
+ version=version,
333
+ views=views,
334
+ name=name,
335
+ description=description,
336
+ kind=kind,
337
+ cdf_snapshot=self._store.cdf_snapshot,
338
+ )
339
+
340
+ on_success = DmsDataModelValidation(
341
+ modus_operandi=self._config.modeling.mode,
342
+ cdf_snapshot=self._store.cdf_snapshot,
343
+ limits=self._store.cdf_limits,
344
+ can_run_validator=self._config.validation.can_run_validator,
345
+ enable_alpha_validators=self._config.alpha.enable_experimental_validators,
346
+ )
347
+
348
+ return self._store.read_physical(creator, on_success)
@@ -96,6 +96,24 @@ def session_wrapper(cls: type[T_Class]) -> type[T_Class]:
96
96
  if callable(attr):
97
97
  # Replace the original method with wrapped version
98
98
  setattr(cls, attr_name, _handle_method_call(attr))
99
-
100
- # Return the modified class
99
+ # Intercept __init__ to wrap any methods added via setattr
100
+ original_init = cls.__init__
101
+
102
+ @wraps(original_init)
103
+ def pick_alpha_methods(self: HasStore, *args: Any, **kwargs: Any) -> Any:
104
+ """This method wraps any instance methods added during __init__. which is the case for alpha methods"""
105
+ original_init(self, *args, **kwargs)
106
+ # Wrap any instance methods added during init
107
+ for attr_name in dir(self):
108
+ if not attr_name.startswith("_"):
109
+ attr = getattr(self, attr_name, None)
110
+ # Check if it's an instance method (not from the class)
111
+ if callable(attr) and attr_name not in vars(self.__class__):
112
+ # Wrap and set on the instance
113
+ wrapped = (
114
+ _handle_method_call(attr.__func__) if hasattr(attr, "__func__") else _handle_method_call(attr)
115
+ )
116
+ setattr(self, attr_name, wrapped.__get__(self, type(self)))
117
+
118
+ cls.__init__ = pick_alpha_methods # type: ignore[assignment]
101
119
  return cls
@@ -15,7 +15,7 @@ from cognite.neat._data_model.exporters._table_exporter.exporter import DMSTable
15
15
  from cognite.neat._data_model.importers import DMSImporter, DMSTableImporter
16
16
  from cognite.neat._data_model.models.dms import RequestSchema as PhysicalDataModel
17
17
  from cognite.neat._data_model.models.dms._limits import SchemaLimits
18
- from cognite.neat._exceptions import DataModelImportException
18
+ from cognite.neat._exceptions import DataModelCreateException, DataModelImportException
19
19
  from cognite.neat._issues import IssueList
20
20
  from cognite.neat._state_machine._states import EmptyState, PhysicalState, State
21
21
  from cognite.neat._utils.text import NEWLINE
@@ -179,6 +179,9 @@ class NeatStore:
179
179
  except DataModelImportException as e:
180
180
  errors.extend(e.errors)
181
181
 
182
+ except DataModelCreateException as e:
183
+ errors.extend(e.errors)
184
+
182
185
  # these are all other errors, such as missing file, wrong format, etc.
183
186
  except Exception as e:
184
187
  raise e
@@ -0,0 +1,2 @@
1
+ __version__ = "1.0.29"
2
+ __engine__ = "^2.0.4"
@@ -1,3 +1,13 @@
1
+ import importlib
2
+
3
+ from cognite.neat._exceptions import NeatImportError
4
+
5
+ try:
6
+ importlib.import_module("rdflib")
7
+ except ImportError as e:
8
+ raise NeatImportError("legacy module", "legacy") from e
9
+
10
+
1
11
  from cognite.neat._v0.core._utils.auth import get_cognite_client
2
12
  from cognite.neat._v0.session._base import NeatSession
3
13
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cognite-neat"
3
- version = "1.0.27"
3
+ version = "1.0.29"
4
4
  readme = "README.md"
5
5
  description = "Knowledge graph transformation"
6
6
  authors = [
@@ -24,17 +24,25 @@ classifiers = [
24
24
  "Operating System :: OS Independent",
25
25
  ]
26
26
  dependencies = [
27
- "pandas>=1.5.3, <3.0.0",
28
27
  "cognite-sdk>=7.83.0, <8.0.0",
29
- "rdflib>=7.0.0, <8.0.0",
30
28
  "httpx>=0.28.1",
31
29
  "pydantic>=2.0.0, <3.0.0",
32
30
  "PyYAML>=6.0.1, <7.0.0",
33
- "requests>=2.28.1, <3.0.0",
34
31
  "urllib3>=1.26.15, <3.0.0",
35
32
  "openpyxl>=3.0.10, <4.0.0",
36
33
  "networkx>=3.4.2, <4.0.0",
37
34
  "mixpanel>=4.10.1, <5.0.0",
35
+ # Backport from Python 3.11
36
+ "exceptiongroup>=1.1.3, <2.0.0; python_version < '3.11'",
37
+ "backports.strenum >=1.2, <2.0.0; python_version < '3.11'",
38
+ "typing_extensions>=4.8.0, <5.0.0; python_version < '3.11'",
39
+ "tomli>=2.0.1, <3.0.0; python_version < '3.11'",
40
+ ]
41
+
42
+ [project.optional-dependencies]
43
+ legacy = [ "rdflib>=7.0.0, <8.0.0",
44
+ "pandas>=1.5.3, <3.0.0",
45
+ "requests>=2.28.1, <3.0.0",
38
46
  # Used for loading neat engine
39
47
  "packaging>=22.0",
40
48
  # NeatEngine dependencies
@@ -43,13 +51,8 @@ dependencies = [
43
51
  "pyvis>=0.3.2, <1.0.0",
44
52
  # Notebook
45
53
  "rich[jupyter]>=13.7.1, <14.0.0",
46
- # Backport from Python 3.11
47
- "exceptiongroup>=1.1.3, <2.0.0; python_version < '3.11'",
48
- "backports.strenum >=1.2, <2.0.0; python_version < '3.11'",
49
- "typing_extensions>=4.8.0, <5.0.0; python_version < '3.11'",
50
- "tomli>=2.0.1, <3.0.0; python_version < '3.11'",
51
54
  ]
52
- [project.optional-dependencies]
55
+
53
56
  lxml = [
54
57
  "lxml>=5.3.0, <6.0.0",
55
58
  ]
@@ -120,6 +123,7 @@ dev = [
120
123
  markers = [
121
124
  "serial: mark test to run serially (not in parallel)",
122
125
  ]
126
+ norecursedirs = ["tests/v0"]
123
127
 
124
128
  [tool.uv]
125
129
  package = true
@@ -181,7 +185,7 @@ disable_error_code = ["type-abstract"]
181
185
  # The _v0 module is legacy code that is not fully typed. We are not planning
182
186
  # to update it, so we exclude it from mypy checks. Once v1 is released with all features
183
187
  # from _v0, we will remove this folder.
184
- exclude = ["tests/v0"]
188
+ exclude = ["tests/v0", "cognite/neat/_v0"]
185
189
 
186
190
  [tool.pydantic-mypy]
187
191
  init_forbid_extra = true
@@ -1,5 +0,0 @@
1
- from ._api_importer import DMSAPIImporter
2
- from ._base import DMSImporter
3
- from ._table_importer.importer import DMSTableImporter
4
-
5
- __all__ = ["DMSAPIImporter", "DMSImporter", "DMSTableImporter"]
@@ -1,2 +0,0 @@
1
- __version__ = "1.0.27"
2
- __engine__ = "^2.0.4"
File without changes