cognite-toolkit 0.7.28__tar.gz → 0.7.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 (316) hide show
  1. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/PKG-INFO +1 -1
  2. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/_toolkit_client.py +10 -3
  3. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/extended_functions.py +6 -9
  4. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/migration_io.py +15 -0
  5. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/function.py +2 -2
  6. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_annotations.py +2 -1
  7. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/http_client/_client.py +126 -11
  8. cognite_toolkit-0.7.29/cognite_toolkit/_cdf_tk/utils/http_client/_data_classes2.py +97 -0
  9. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml +1 -1
  10. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml +1 -1
  11. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_resources/cdf.toml +1 -1
  12. cognite_toolkit-0.7.29/cognite_toolkit/_version.py +1 -0
  13. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/pyproject.toml +1 -1
  14. cognite_toolkit-0.7.28/cognite_toolkit/_version.py +0 -1
  15. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/README.md +0 -0
  16. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/__init__.py +0 -0
  17. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf.py +0 -0
  18. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/__init__.py +0 -0
  19. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/__init__.py +0 -0
  20. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_auth_app.py +0 -0
  21. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_core_app.py +0 -0
  22. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_data_app.py +0 -0
  23. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_dev_app.py +0 -0
  24. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_download_app.py +0 -0
  25. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_dump_app.py +0 -0
  26. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_landing_app.py +0 -0
  27. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_migrate_app.py +0 -0
  28. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_modules_app.py +0 -0
  29. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_profile_app.py +0 -0
  30. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_purge.py +0 -0
  31. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_repo_app.py +0 -0
  32. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_run.py +0 -0
  33. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/apps/_upload_app.py +0 -0
  34. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/__init__.py +0 -0
  35. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_base.py +0 -0
  36. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_datamodels.py +0 -0
  37. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_file.py +0 -0
  38. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_function.py +0 -0
  39. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_location.py +0 -0
  40. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_raw.py +0 -0
  41. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_streamlit.py +0 -0
  42. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/builders/_transformation.py +0 -0
  43. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cdf_toml.py +0 -0
  44. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/__init__.py +0 -0
  45. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/_constants.py +0 -0
  46. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/__init__.py +0 -0
  47. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/canvas.py +0 -0
  48. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/charts.py +0 -0
  49. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/dml.py +0 -0
  50. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/extended_data_modeling.py +0 -0
  51. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/extended_files.py +0 -0
  52. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/extended_raw.py +0 -0
  53. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/extended_timeseries.py +0 -0
  54. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/fixed_transformations.py +0 -0
  55. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/infield.py +0 -0
  56. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/location_filters.py +0 -0
  57. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/lookup.py +0 -0
  58. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/migration.py +0 -0
  59. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/project.py +0 -0
  60. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/__init__.py +0 -0
  61. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/api.py +0 -0
  62. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/capabilities.py +0 -0
  63. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/data_postprocessing.py +0 -0
  64. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/frames.py +0 -0
  65. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/locations.py +0 -0
  66. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/maps.py +0 -0
  67. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/robots.py +0 -0
  68. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/robotics/utlis.py +0 -0
  69. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/search.py +0 -0
  70. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/search_config.py +0 -0
  71. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/streams.py +0 -0
  72. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/three_d.py +0 -0
  73. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/token.py +0 -0
  74. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api/verify.py +0 -0
  75. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/api_client.py +0 -0
  76. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/config.py +0 -0
  77. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/__init__.py +0 -0
  78. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/api_classes.py +0 -0
  79. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/apm_config_v1.py +0 -0
  80. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/base.py +0 -0
  81. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/canvas.py +0 -0
  82. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/capabilities.py +0 -0
  83. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/charts.py +0 -0
  84. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/charts_data.py +0 -0
  85. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/extendable_cognite_file.py +0 -0
  86. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/extended_filemetadata.py +0 -0
  87. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/extended_filemetdata.py +0 -0
  88. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/extended_timeseries.py +0 -0
  89. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/functions.py +0 -0
  90. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/graphql_data_models.py +0 -0
  91. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/infield.py +0 -0
  92. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/instance_api.py +0 -0
  93. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/instances.py +0 -0
  94. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/location_filters.py +0 -0
  95. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/migration.py +0 -0
  96. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/pending_instances_ids.py +0 -0
  97. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/project.py +0 -0
  98. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/raw.py +0 -0
  99. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/robotics.py +0 -0
  100. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/search_config.py +0 -0
  101. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/sequences.py +0 -0
  102. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/streamlit_.py +0 -0
  103. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/streams.py +0 -0
  104. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/data_classes/three_d.py +0 -0
  105. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/testing.py +0 -0
  106. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/utils/__init__.py +0 -0
  107. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/utils/_concurrency.py +0 -0
  108. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/client/utils/_http_client.py +0 -0
  109. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/__init__.py +0 -0
  110. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_base.py +0 -0
  111. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_changes.py +0 -0
  112. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_cli_commands.py +0 -0
  113. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_download.py +0 -0
  114. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/__init__.py +0 -0
  115. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/command.py +0 -0
  116. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/conversion.py +0 -0
  117. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/creators.py +0 -0
  118. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/data_classes.py +0 -0
  119. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/data_mapper.py +0 -0
  120. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/data_model.py +0 -0
  121. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/default_mappings.py +0 -0
  122. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/issues.py +0 -0
  123. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/prepare.py +0 -0
  124. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_migrate/selectors.py +0 -0
  125. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_profile.py +0 -0
  126. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_purge.py +0 -0
  127. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_questionary_style.py +0 -0
  128. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_upload.py +0 -0
  129. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_utils.py +0 -0
  130. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/_virtual_env.py +0 -0
  131. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/about.py +0 -0
  132. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/auth.py +0 -0
  133. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/build_cmd.py +0 -0
  134. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/clean.py +0 -0
  135. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/collect.py +0 -0
  136. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/deploy.py +0 -0
  137. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/dump_resource.py +0 -0
  138. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/init.py +0 -0
  139. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/modules.py +0 -0
  140. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/pull.py +0 -0
  141. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/repo.py +0 -0
  142. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/resources.py +0 -0
  143. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/commands/run.py +0 -0
  144. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/constants.py +0 -0
  145. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/__init__.py +0 -0
  146. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_base_cruds.py +0 -0
  147. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_data_cruds.py +0 -0
  148. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/__init__.py +0 -0
  149. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/agent.py +0 -0
  150. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/auth.py +0 -0
  151. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/classic.py +0 -0
  152. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/configuration.py +0 -0
  153. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/data_organization.py +0 -0
  154. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/datamodel.py +0 -0
  155. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/extraction_pipeline.py +0 -0
  156. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/fieldops.py +0 -0
  157. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/file.py +0 -0
  158. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/group_scoped.py +0 -0
  159. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/hosted_extractors.py +0 -0
  160. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/industrial_tool.py +0 -0
  161. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/location.py +0 -0
  162. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/migration.py +0 -0
  163. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/raw.py +0 -0
  164. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/relationship.py +0 -0
  165. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/robotics.py +0 -0
  166. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/streams.py +0 -0
  167. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/three_d_model.py +0 -0
  168. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/timeseries.py +0 -0
  169. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/transformation.py +0 -0
  170. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/workflow.py +0 -0
  171. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/cruds/_worker.py +0 -0
  172. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/__init__.py +0 -0
  173. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_base.py +0 -0
  174. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_build_files.py +0 -0
  175. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_build_variables.py +0 -0
  176. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_built_modules.py +0 -0
  177. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_built_resources.py +0 -0
  178. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_config_yaml.py +0 -0
  179. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_deploy_results.py +0 -0
  180. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_module_directories.py +0 -0
  181. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_module_resources.py +0 -0
  182. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_module_toml.py +0 -0
  183. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_packages.py +0 -0
  184. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_tracking_info.py +0 -0
  185. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/data_classes/_yaml_comments.py +0 -0
  186. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/exceptions.py +0 -0
  187. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/feature_flags.py +0 -0
  188. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/hints.py +0 -0
  189. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/plugins.py +0 -0
  190. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/protocols.py +0 -0
  191. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/prototypes/commands/__init__.py +0 -0
  192. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/prototypes/commands/import_.py +0 -0
  193. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/prototypes/import_app.py +0 -0
  194. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/__init__.py +0 -0
  195. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/agent.py +0 -0
  196. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/agent_tools.py +0 -0
  197. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/asset.py +0 -0
  198. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/authentication.py +0 -0
  199. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/base.py +0 -0
  200. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/capabilities.py +0 -0
  201. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/cognitefile.py +0 -0
  202. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/container_field_definitions.py +0 -0
  203. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/containers.py +0 -0
  204. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/data_model.py +0 -0
  205. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/datapoint_subscription.py +0 -0
  206. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/dataset.py +0 -0
  207. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/event.py +0 -0
  208. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/extraction_pipeline.py +0 -0
  209. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/extraction_pipeline_config.py +0 -0
  210. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/filemetadata.py +0 -0
  211. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/function_schedule.py +0 -0
  212. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/functions.py +0 -0
  213. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/graphql_model.py +0 -0
  214. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/groups.py +0 -0
  215. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_destination.py +0 -0
  216. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_job.py +0 -0
  217. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_mapping.py +0 -0
  218. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_source.py +0 -0
  219. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/infield_cdm_location_config.py +0 -0
  220. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/infield_location_config.py +0 -0
  221. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/infield_v1.py +0 -0
  222. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/instance.py +0 -0
  223. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/labels.py +0 -0
  224. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/location.py +0 -0
  225. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/migration.py +0 -0
  226. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/raw_database_table.py +0 -0
  227. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/relationship.py +0 -0
  228. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/robotics/__init__.py +0 -0
  229. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/robotics/capability.py +0 -0
  230. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/robotics/data_postprocessing.py +0 -0
  231. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/robotics/frame.py +0 -0
  232. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/robotics/location.py +0 -0
  233. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/robotics/map.py +0 -0
  234. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/search_config.py +0 -0
  235. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/securitycategories.py +0 -0
  236. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/sequence.py +0 -0
  237. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/space.py +0 -0
  238. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/streamlit_.py +0 -0
  239. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/streams.py +0 -0
  240. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/threedmodels.py +0 -0
  241. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/timeseries.py +0 -0
  242. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/transformation_destination.py +0 -0
  243. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/transformation_notification.py +0 -0
  244. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/transformation_schedule.py +0 -0
  245. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/transformations.py +0 -0
  246. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/view_field_definitions.py +0 -0
  247. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/views.py +0 -0
  248. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/workflow.py +0 -0
  249. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/workflow_trigger.py +0 -0
  250. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/resource_classes/workflow_version.py +0 -0
  251. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/__init__.py +0 -0
  252. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_applications.py +0 -0
  253. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_asset_centric.py +0 -0
  254. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_base.py +0 -0
  255. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_data_classes.py +0 -0
  256. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_datapoints.py +0 -0
  257. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_file_content.py +0 -0
  258. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_instances.py +0 -0
  259. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/_raw.py +0 -0
  260. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/__init__.py +0 -0
  261. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_asset_centric.py +0 -0
  262. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_base.py +0 -0
  263. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_canvas.py +0 -0
  264. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_charts.py +0 -0
  265. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_datapoints.py +0 -0
  266. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_file_content.py +0 -0
  267. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_instances.py +0 -0
  268. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/storageio/selectors/_raw.py +0 -0
  269. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/tk_warnings/__init__.py +0 -0
  270. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/tk_warnings/base.py +0 -0
  271. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/tk_warnings/fileread.py +0 -0
  272. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/tk_warnings/other.py +0 -0
  273. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/tracker.py +0 -0
  274. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/__init__.py +0 -0
  275. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/_auxiliary.py +0 -0
  276. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/aggregators.py +0 -0
  277. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/auth.py +0 -0
  278. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/auxiliary.py +0 -0
  279. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/cdf.py +0 -0
  280. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/cicd.py +0 -0
  281. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/cli_args.py +0 -0
  282. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/collection.py +0 -0
  283. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/diff_list.py +0 -0
  284. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/dtype_conversion.py +0 -0
  285. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/file.py +0 -0
  286. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/fileio/__init__.py +0 -0
  287. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/fileio/_base.py +0 -0
  288. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/fileio/_compression.py +0 -0
  289. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/fileio/_readers.py +0 -0
  290. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/fileio/_writers.py +0 -0
  291. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/graphql_parser.py +0 -0
  292. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/hashing.py +0 -0
  293. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/http_client/__init__.py +0 -0
  294. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/http_client/_data_classes.py +0 -0
  295. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/http_client/_exception.py +0 -0
  296. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/http_client/_tracker.py +0 -0
  297. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/interactive_select.py +0 -0
  298. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/modules.py +0 -0
  299. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/producer_worker.py +0 -0
  300. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/progress_tracker.py +0 -0
  301. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/repository.py +0 -0
  302. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/sentry_utils.py +0 -0
  303. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/sql_parser.py +0 -0
  304. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/text.py +0 -0
  305. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/thread_safe_dict.py +0 -0
  306. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/useful_types.py +0 -0
  307. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/utils/validate_access.py +0 -0
  308. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_cdf_tk/validation.py +0 -0
  309. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/.env.tmpl +0 -0
  310. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/.gitignore +0 -0
  311. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/AzureDevOps/.devops/README.md +0 -0
  312. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/AzureDevOps/.devops/deploy-pipeline.yml +0 -0
  313. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/_repo_files/AzureDevOps/.devops/dry-run-pipeline.yml +0 -0
  314. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/config.dev.yaml +0 -0
  315. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/demo/__init__.py +0 -0
  316. {cognite_toolkit-0.7.28 → cognite_toolkit-0.7.29}/cognite_toolkit/demo/_base.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cognite_toolkit
3
- Version: 0.7.28
3
+ Version: 0.7.29
4
4
  Summary: Official Cognite Data Fusion tool for project templates and configuration deployment
5
5
  Author: Cognite AS
6
6
  Author-email: Cognite AS <support@cognite.com>
@@ -35,19 +35,26 @@ class ToolAPI:
35
35
 
36
36
 
37
37
  class ToolkitClient(CogniteClient):
38
- def __init__(self, config: ToolkitClientConfig | None = None, enable_set_pending_ids: bool = False) -> None:
38
+ def __init__(
39
+ self,
40
+ config: ToolkitClientConfig | None = None,
41
+ enable_set_pending_ids: bool = False,
42
+ console: Console | None = None,
43
+ ) -> None:
39
44
  super().__init__(config=config)
40
45
  http_client = HTTPClient(self.config)
41
46
  self.http_client = http_client
42
47
  toolkit_config = ToolkitClientConfig.from_client_config(self.config)
43
- self.console = Console()
48
+ self.console = console or Console()
44
49
  self.tool = ToolAPI(http_client, self.console)
45
50
  self.search = SearchAPI(self._config, self._API_VERSION, self)
46
51
  self.robotics = RoboticsAPI(self._config, self._API_VERSION, self)
47
52
  self.dml = DMLAPI(self._config, self._API_VERSION, self)
48
53
  self.verify = VerifyAPI(self._config, self._API_VERSION, self)
49
54
  self.lookup = LookUpGroup(self._config, self._API_VERSION, self, self.console)
50
- self.functions: ExtendedFunctionsAPI = ExtendedFunctionsAPI(toolkit_config, self._API_VERSION, self)
55
+ self.functions: ExtendedFunctionsAPI = ExtendedFunctionsAPI(
56
+ toolkit_config, self._API_VERSION, self, self.console
57
+ )
51
58
  self.data_modeling: ExtendedDataModelingAPI = ExtendedDataModelingAPI(self._config, self._API_VERSION, self)
52
59
  if enable_set_pending_ids:
53
60
  self.time_series: ExtendedTimeSeriesAPI = ExtendedTimeSeriesAPI(self._config, self._API_VERSION, self)
@@ -17,15 +17,16 @@ class ExtendedFunctionsAPI(FunctionsAPI):
17
17
  config: ToolkitClientConfig,
18
18
  api_version: str | None,
19
19
  cognite_client: CogniteClient,
20
+ console: Console | None = None,
20
21
  ) -> None:
21
22
  """
22
23
  Extended Functions API to include custom headers and payload preparation.
23
24
  """
24
25
  super().__init__(config, api_version, cognite_client)
25
26
  self._toolkit_config = config
26
- self._toolkit_http_client = HTTPClient(config, max_retries=global_config.max_retries)
27
+ self._toolkit_http_client = HTTPClient(config, max_retries=global_config.max_retries, console=console)
27
28
 
28
- def create_with_429_retry(self, function: FunctionWrite, console: Console | None = None) -> Function:
29
+ def create_with_429_retry(self, function: FunctionWrite) -> Function:
29
30
  """Create a function with manual retry handling for 429 Too Many Requests responses.
30
31
 
31
32
  This method is a workaround for scenarios where the function creation API is temporarily unavailable
@@ -43,16 +44,13 @@ class ExtendedFunctionsAPI(FunctionsAPI):
43
44
  endpoint_url=self._toolkit_config.create_api_url("/functions"),
44
45
  method="POST",
45
46
  body_content={"items": [function.dump(camel_case=True)]},
46
- ),
47
- console=console,
47
+ )
48
48
  )
49
49
  result.raise_for_status()
50
50
  # We assume the API response is one item on a successful creation
51
51
  return Function._load(result.get_first_body()["items"][0], cognite_client=self._cognite_client) # type: ignore[arg-type,index]
52
52
 
53
- def delete_with_429_retry(
54
- self, external_id: SequenceNotStr[str], ignore_unknown_ids: bool = False, console: Console | None = None
55
- ) -> None:
53
+ def delete_with_429_retry(self, external_id: SequenceNotStr[str], ignore_unknown_ids: bool = False) -> None:
56
54
  """Delete one or more functions with retry handling for 429 Too Many Requests responses.
57
55
 
58
56
  This method is an improvement over the standard delete method in the FunctionsAPI.
@@ -77,7 +75,6 @@ class ExtendedFunctionsAPI(FunctionsAPI):
77
75
  endpoint_url=self._toolkit_config.create_api_url("/functions/delete"),
78
76
  method="POST",
79
77
  body_content=body_content,
80
- ),
81
- console=console,
78
+ )
82
79
  ).raise_for_status()
83
80
  return None
@@ -231,6 +231,8 @@ class AnnotationMigrationIO(
231
231
  CHUNK_SIZE = 1000
232
232
  UPLOAD_ENDPOINT = InstanceIO.UPLOAD_ENDPOINT
233
233
 
234
+ SUPPORTED_ANNOTATION_TYPES = frozenset({"diagrams.AssetLink", "diagrams.FileLink"})
235
+
234
236
  def __init__(
235
237
  self,
236
238
  client: ToolkitClient,
@@ -272,6 +274,10 @@ class AnnotationMigrationIO(
272
274
  for data_chunk in self.annotation_io.stream_data(asset_centric_selector, limit):
273
275
  mapping_list = AssetCentricMappingList[Annotation]([])
274
276
  for resource in data_chunk.items:
277
+ if resource.annotation_type not in self.SUPPORTED_ANNOTATION_TYPES:
278
+ # This should not happen, as the annotation_io should already filter these out.
279
+ # This is just in case.
280
+ continue
275
281
  mapping = AnnotationMapping(
276
282
  instance_id=EdgeId(space=self.instance_space, external_id=f"annotation_{resource.id!r}"),
277
283
  id=resource.id,
@@ -294,11 +300,15 @@ class AnnotationMigrationIO(
294
300
  resources = self.client.annotations.retrieve_multiple(current_batch.get_ids())
295
301
  resources_by_id = {resource.id: resource for resource in resources}
296
302
  not_found = 0
303
+ incorrect_type_count = 0
297
304
  for mapping in current_batch:
298
305
  resource = resources_by_id.get(mapping.id)
299
306
  if resource is None:
300
307
  not_found += 1
301
308
  continue
309
+ if resource.annotation_type not in self.SUPPORTED_ANNOTATION_TYPES:
310
+ incorrect_type_count += 1
311
+ continue
302
312
  mapping.ingestion_view = self._get_mapping(mapping.ingestion_view, resource)
303
313
  chunk.append(AssetCentricMapping(mapping=mapping, resource=resource))
304
314
  if chunk:
@@ -308,6 +318,11 @@ class AnnotationMigrationIO(
308
318
  MediumSeverityWarning(
309
319
  f"Could not find {not_found} annotations referenced in the CSV file. They will be skipped during migration."
310
320
  ).print_warning(include_timestamp=True, console=self.client.console)
321
+ if incorrect_type_count:
322
+ MediumSeverityWarning(
323
+ f"Found {incorrect_type_count} annotations with unsupported types. Only 'diagrams.AssetLink' and "
324
+ "'diagrams.FileLink' are supported. These annotations will be skipped during migration."
325
+ ).print_warning(include_timestamp=True, console=self.client.console)
311
326
 
312
327
  def _get_mapping(self, current_mapping: str | None, resource: Annotation) -> str:
313
328
  try:
@@ -320,7 +320,7 @@ class FunctionCRUD(ResourceCRUD[str, FunctionWrite, Function]):
320
320
  " problem persists, please contact Cognite support."
321
321
  )
322
322
  item.file_id = file_id
323
- created_item = self.client.functions.create_with_429_retry(item, console=self.console)
323
+ created_item = self.client.functions.create_with_429_retry(item)
324
324
  self._warn_if_cpu_or_memory_changed(created_item, item)
325
325
  created.append(created_item)
326
326
  return created
@@ -404,7 +404,7 @@ class FunctionCRUD(ResourceCRUD[str, FunctionWrite, Function]):
404
404
  def delete(self, ids: SequenceNotStr[str]) -> int:
405
405
  functions = self.retrieve(ids)
406
406
 
407
- self.client.functions.delete_with_429_retry(external_id=ids, ignore_unknown_ids=True, console=self.console)
407
+ self.client.functions.delete_with_429_retry(external_id=ids, ignore_unknown_ids=True)
408
408
  file_ids = {func.file_id for func in functions if func.file_id}
409
409
  self.client.files.delete(id=list(file_ids), ignore_unknown_ids=True)
410
410
  return len(ids)
@@ -33,7 +33,8 @@ class AnnotationIO(StorageIO[AssetCentricSelector, Annotation]):
33
33
  annotated_resource_type="file",
34
34
  annotated_resource_ids=[{"id": file_metadata.id} for file_metadata in file_chunk.items],
35
35
  annotation_type=annotation_type,
36
- )
36
+ ),
37
+ limit=-1,
37
38
  )
38
39
  if limit is not None and total + len(results) > limit:
39
40
  results = results[: limit - total]
@@ -23,6 +23,15 @@ from cognite_toolkit._cdf_tk.utils.http_client._data_classes import (
23
23
  ResponseList,
24
24
  ResponseMessage,
25
25
  )
26
+ from cognite_toolkit._cdf_tk.utils.http_client._data_classes2 import (
27
+ BaseRequestMessage,
28
+ ErrorDetails2,
29
+ FailedRequest2,
30
+ FailedResponse2,
31
+ HTTPResult2,
32
+ RequestMessage2,
33
+ SuccessResponse2,
34
+ )
26
35
  from cognite_toolkit._cdf_tk.utils.useful_types import PrimitiveType
27
36
 
28
37
  if sys.version_info >= (3, 11):
@@ -48,6 +57,7 @@ class HTTPClient:
48
57
  Default is {408, 429, 502, 503, 504}.
49
58
  split_items_status_codes (frozenset[int]): In the case of ItemRequest with multiple
50
59
  items, these status codes will trigger splitting the request into smaller batches.
60
+ console (Console | None): Optional Rich Console for printing warnings.
51
61
 
52
62
  """
53
63
 
@@ -59,6 +69,7 @@ class HTTPClient:
59
69
  pool_maxsize: int = 20,
60
70
  retry_status_codes: Set[int] = frozenset({408, 429, 502, 503, 504}),
61
71
  split_items_status_codes: Set[int] = frozenset({400, 408, 409, 422, 502, 503, 504}),
72
+ console: Console | None = None,
62
73
  ):
63
74
  self.config = config
64
75
  self._max_retries = max_retries
@@ -66,6 +77,7 @@ class HTTPClient:
66
77
  self._pool_maxsize = pool_maxsize
67
78
  self._retry_status_codes = retry_status_codes
68
79
  self._split_items_status_codes = split_items_status_codes
80
+ self._console = console
69
81
 
70
82
  # Thread-safe session for connection pooling
71
83
  self.session = self._create_thread_safe_session()
@@ -80,12 +92,11 @@ class HTTPClient:
80
92
  self.session.close()
81
93
  return False # Do not suppress exceptions
82
94
 
83
- def request(self, message: RequestMessage, console: Console | None = None) -> Sequence[HTTPMessage]:
95
+ def request(self, message: RequestMessage) -> Sequence[HTTPMessage]:
84
96
  """Send an HTTP request and return the response.
85
97
 
86
98
  Args:
87
99
  message (RequestMessage): The request message to send.
88
- console (Console | None): The rich console to use for printing warnings.
89
100
 
90
101
  Returns:
91
102
  Sequence[HTTPMessage]: The response message(s). This can also
@@ -98,12 +109,12 @@ class HTTPClient:
98
109
  return message.create_failed_request(error_msg)
99
110
  try:
100
111
  response = self._make_request(message)
101
- results = self._handle_response(response, message, console)
112
+ results = self._handle_response(response, message)
102
113
  except Exception as e:
103
114
  results = self._handle_error(e, message)
104
115
  return results
105
116
 
106
- def request_with_retries(self, message: RequestMessage, console: Console | None = None) -> ResponseList:
117
+ def request_with_retries(self, message: RequestMessage) -> ResponseList:
107
118
  """Send an HTTP request and handle retries.
108
119
 
109
120
  This method will keep retrying the request until it either succeeds or
@@ -114,7 +125,6 @@ class HTTPClient:
114
125
 
115
126
  Args:
116
127
  message (RequestMessage): The request message to send.
117
- console (Console | None): The rich console to use for printing warnings.
118
128
 
119
129
  Returns:
120
130
  Sequence[ResponseMessage | FailedRequestMessage]: The final response
@@ -127,7 +137,7 @@ class HTTPClient:
127
137
  final_responses = ResponseList([])
128
138
  while pending_requests:
129
139
  current_request = pending_requests.popleft()
130
- results = self.request(current_request, console)
140
+ results = self.request(current_request)
131
141
 
132
142
  for result in results:
133
143
  if isinstance(result, RequestMessage):
@@ -194,9 +204,7 @@ class HTTPClient:
194
204
  follow_redirects=False,
195
205
  )
196
206
 
197
- def _handle_response(
198
- self, response: httpx.Response, request: RequestMessage, console: Console | None = None
199
- ) -> Sequence[HTTPMessage]:
207
+ def _handle_response(self, response: httpx.Response, request: RequestMessage) -> Sequence[HTTPMessage]:
200
208
  if 200 <= response.status_code < 300:
201
209
  return request.create_success_response(response)
202
210
  elif (
@@ -216,11 +224,11 @@ class HTTPClient:
216
224
 
217
225
  retry_after = self._get_retry_after_in_header(response)
218
226
  if retry_after is not None and response.status_code == 429 and request.status_attempt < self._max_retries:
219
- if console is not None:
227
+ if self._console is not None:
220
228
  short_url = request.endpoint_url.removeprefix(self.config.base_api_url)
221
229
  HighSeverityWarning(
222
230
  f"Rate limit exceeded for the {short_url!r} endpoint. Retrying after {retry_after} seconds."
223
- ).print_warning(console=console)
231
+ ).print_warning(console=self._console)
224
232
  request.status_attempt += 1
225
233
  time.sleep(retry_after)
226
234
  return [request]
@@ -273,3 +281,110 @@ class HTTPClient:
273
281
  error_msg = f"RequestException after {request.total_attempts - 1} attempts ({error_type} error): {e!s}"
274
282
 
275
283
  return request.create_failed_request(error_msg)
284
+
285
+ def request_single(self, message: RequestMessage2) -> RequestMessage2 | HTTPResult2:
286
+ """Send an HTTP request and return the response.
287
+
288
+ Args:
289
+ message (RequestMessage2): The request message to send.
290
+ Returns:
291
+ HTTPMessage: The response message.
292
+ """
293
+ try:
294
+ response = self._make_request2(message)
295
+ result = self._handle_response_single(response, message)
296
+ except Exception as e:
297
+ result = self._handle_error_single(e, message)
298
+ return result
299
+
300
+ def request_single_retries(self, message: RequestMessage2) -> HTTPResult2:
301
+ """Send an HTTP request and handle retries.
302
+
303
+ This method will keep retrying the request until it either succeeds or
304
+ exhausts the maximum number of retries.
305
+
306
+ Note this method will use the current thread to process all request, thus
307
+ it is blocking.
308
+
309
+ Args:
310
+ message (RequestMessage2): The request message to send.
311
+ Returns:
312
+ HTTPMessage2: The final response message, which can be either successful response or failed request.
313
+ """
314
+ if message.total_attempts > 0:
315
+ raise RuntimeError(f"RequestMessage has already been attempted {message.total_attempts} times.")
316
+ current_request = message
317
+ while True:
318
+ result = self.request_single(current_request)
319
+ if isinstance(result, RequestMessage2):
320
+ current_request = result
321
+ elif isinstance(result, HTTPResult2):
322
+ return result
323
+ else:
324
+ raise TypeError(f"Unexpected result type: {type(result)}")
325
+
326
+ def _make_request2(self, message: BaseRequestMessage) -> httpx.Response:
327
+ headers = self._create_headers(message.api_version, message.content_type, message.accept)
328
+ return self.session.request(
329
+ method=message.method,
330
+ url=message.endpoint_url,
331
+ content=message.content,
332
+ headers=headers,
333
+ params=message.parameters,
334
+ timeout=self.config.timeout,
335
+ follow_redirects=False,
336
+ )
337
+
338
+ def _handle_response_single(
339
+ self, response: httpx.Response, request: RequestMessage2
340
+ ) -> RequestMessage2 | HTTPResult2:
341
+ if 200 <= response.status_code < 300:
342
+ return SuccessResponse2(
343
+ status_code=response.status_code,
344
+ body=response.text,
345
+ content=response.content,
346
+ )
347
+ retry_after = self._get_retry_after_in_header(response)
348
+ if retry_after is not None and response.status_code == 429 and request.status_attempt < self._max_retries:
349
+ if self._console is not None:
350
+ short_url = request.endpoint_url.removeprefix(self.config.base_api_url)
351
+ HighSeverityWarning(
352
+ f"Rate limit exceeded for the {short_url!r} endpoint. Retrying after {retry_after} seconds."
353
+ ).print_warning(console=self._console)
354
+ request.status_attempt += 1
355
+ time.sleep(retry_after)
356
+ return request
357
+
358
+ if request.status_attempt < self._max_retries and response.status_code in self._retry_status_codes:
359
+ request.status_attempt += 1
360
+ time.sleep(self._backoff_time(request.total_attempts))
361
+ return request
362
+ else:
363
+ # Permanent failure
364
+ return FailedResponse2(
365
+ status_code=response.status_code,
366
+ body=response.text,
367
+ error=ErrorDetails2.from_response(response),
368
+ )
369
+
370
+ def _handle_error_single(self, e: Exception, request: RequestMessage2) -> RequestMessage2 | HTTPResult2:
371
+ if isinstance(e, httpx.ReadTimeout | httpx.TimeoutException):
372
+ error_type = "read"
373
+ request.read_attempt += 1
374
+ attempts = request.read_attempt
375
+ elif isinstance(e, ConnectionError | httpx.ConnectError | httpx.ConnectTimeout):
376
+ error_type = "connect"
377
+ request.connect_attempt += 1
378
+ attempts = request.connect_attempt
379
+ else:
380
+ error_msg = f"Unexpected exception: {e!s}"
381
+ return FailedRequest2(error=error_msg)
382
+
383
+ if attempts <= self._max_retries:
384
+ time.sleep(self._backoff_time(request.total_attempts))
385
+ return request
386
+ else:
387
+ # We have already incremented the attempt count, so we subtract 1 here
388
+ error_msg = f"RequestException after {request.total_attempts - 1} attempts ({error_type} error): {e!s}"
389
+
390
+ return FailedRequest2(error=error_msg)
@@ -0,0 +1,97 @@
1
+ import gzip
2
+ from abc import ABC, abstractmethod
3
+ from typing import Any, Literal
4
+
5
+ import httpx
6
+ from cognite.client import global_config
7
+ from pydantic import BaseModel, JsonValue, TypeAdapter, model_validator
8
+
9
+ from cognite_toolkit._cdf_tk.utils.useful_types import PrimitiveType
10
+
11
+
12
+ class HTTPResult2(BaseModel): ...
13
+
14
+
15
+ class FailedRequest2(HTTPResult2):
16
+ error: str
17
+
18
+
19
+ class SuccessResponse2(HTTPResult2):
20
+ status_code: int
21
+ body: str
22
+ content: bytes
23
+
24
+
25
+ class ErrorDetails2(BaseModel):
26
+ """This is the expected structure of error details in the CDF API"""
27
+
28
+ code: int
29
+ message: str
30
+ missing: list[JsonValue] | None = None
31
+ duplicated: list[JsonValue] | None = None
32
+ is_auto_retryable: bool | None = None
33
+
34
+ @classmethod
35
+ def from_response(cls, response: httpx.Response) -> "ErrorDetails2":
36
+ """Populate the error details from a httpx response."""
37
+ try:
38
+ res = TypeAdapter(dict[Literal["error"], ErrorDetails2]).validate_json(response.text)
39
+ except ValueError:
40
+ return cls(code=response.status_code, message=response.text)
41
+ return res["error"]
42
+
43
+
44
+ class FailedResponse2(HTTPResult2):
45
+ status_code: int
46
+ body: str
47
+ error: ErrorDetails2
48
+
49
+
50
+ class BaseRequestMessage(BaseModel, ABC):
51
+ endpoint_url: str
52
+ method: Literal["GET", "POST", "PATCH", "DELETE", "PUT"]
53
+ connect_attempt: int = 0
54
+ read_attempt: int = 0
55
+ status_attempt: int = 0
56
+ api_version: str | None = None
57
+ content_type: str = "application/json"
58
+ accept: str = "application/json"
59
+
60
+ parameters: dict[str, PrimitiveType] | None = None
61
+
62
+ @property
63
+ def total_attempts(self) -> int:
64
+ return self.connect_attempt + self.read_attempt + self.status_attempt
65
+
66
+ @property
67
+ @abstractmethod
68
+ def content(self) -> str | bytes | None: ...
69
+
70
+
71
+ class RequestMessage2(BaseRequestMessage):
72
+ data_content: bytes | None = None
73
+ body_content: dict[str, JsonValue] | None = None
74
+
75
+ @model_validator(mode="before")
76
+ def check_data_or_body(cls, values: dict[str, Any]) -> dict[str, Any]:
77
+ if values.get("data_content") is not None and values.get("body_content") is not None:
78
+ raise ValueError("Only one of data_content or body_content can be set.")
79
+ return values
80
+
81
+ @property
82
+ def content(self) -> str | bytes | None:
83
+ data: str | bytes | None = None
84
+ if self.data_content is not None:
85
+ data = self.data_content
86
+ if not global_config.disable_gzip:
87
+ data = gzip.compress(data)
88
+ elif self.body_content is not None:
89
+ # We serialize using pydantic instead of json.dumps. This is because pydantic is faster
90
+ # and handles more complex types such as datetime, float('nan'), etc.
91
+ data = _BODY_SERIALIZER.dump_json(self.body_content)
92
+ if not global_config.disable_gzip and isinstance(data, str):
93
+ data = gzip.compress(data.encode("utf-8"))
94
+ return data
95
+
96
+
97
+ _BODY_SERIALIZER = TypeAdapter(dict[str, JsonValue])
@@ -12,7 +12,7 @@ jobs:
12
12
  environment: dev
13
13
  name: Deploy
14
14
  container:
15
- image: cognite/toolkit:0.7.28
15
+ image: cognite/toolkit:0.7.29
16
16
  env:
17
17
  CDF_CLUSTER: ${{ vars.CDF_CLUSTER }}
18
18
  CDF_PROJECT: ${{ vars.CDF_PROJECT }}
@@ -10,7 +10,7 @@ jobs:
10
10
  environment: dev
11
11
  name: Deploy Dry Run
12
12
  container:
13
- image: cognite/toolkit:0.7.28
13
+ image: cognite/toolkit:0.7.29
14
14
  env:
15
15
  CDF_CLUSTER: ${{ vars.CDF_CLUSTER }}
16
16
  CDF_PROJECT: ${{ vars.CDF_PROJECT }}
@@ -4,7 +4,7 @@ default_env = "<DEFAULT_ENV_PLACEHOLDER>"
4
4
  [modules]
5
5
  # This is the version of the modules. It should not be changed manually.
6
6
  # It will be updated by the 'cdf modules upgrade' command.
7
- version = "0.7.28"
7
+ version = "0.7.29"
8
8
 
9
9
 
10
10
  [plugins]
@@ -0,0 +1 @@
1
+ __version__ = "0.7.29"
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cognite_toolkit"
3
- version = "0.7.28"
3
+ version = "0.7.29"
4
4
  description = "Official Cognite Data Fusion tool for project templates and configuration deployment"
5
5
  authors = [
6
6
  {name ="Cognite AS", email="support@cognite.com"}
@@ -1 +0,0 @@
1
- __version__ = "0.7.28"