cognite-toolkit 0.6.89__py3-none-any.whl → 0.6.90__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cognite-toolkit might be problematic. Click here for more details.

@@ -492,7 +492,7 @@ class BuildCommand(ToolkitCommand):
492
492
  # which is what we do in the deploy step to verify that the source file has not changed.
493
493
  source = SourceLocationEager(source_path, calculate_hash(source_path, shorten=True))
494
494
 
495
- content = variables.replace(content, source_path.suffix)
495
+ content = variables.replace(content, source_path)
496
496
 
497
497
  replace_warnings = self._check_variables_replaced(content, module_dir, source_path)
498
498
 
@@ -561,7 +561,7 @@ class PullCommand(ToolkitCommand):
561
561
 
562
562
  if has_changes and not dry_run:
563
563
  new_content, extra_files = self._to_write_content(
564
- safe_read(source_file), to_write, resources, environment_variables, loader
564
+ safe_read(source_file), to_write, resources, environment_variables, loader, source_file
565
565
  )
566
566
  with source_file.open("w", encoding=ENCODING, newline=NEWLINE) as f:
567
567
  f.write(new_content)
@@ -649,6 +649,7 @@ class PullCommand(ToolkitCommand):
649
649
  loader: ResourceCRUD[
650
650
  T_ID, T_WriteClass, T_WritableCogniteResource, T_CogniteResourceList, T_WritableCogniteResourceList
651
651
  ],
652
+ source_file: Path,
652
653
  ) -> tuple[str, dict[Path, str]]:
653
654
  # 1. Replace all variables with placeholders
654
655
  # 2. Load source and keep the comments
@@ -682,7 +683,7 @@ class PullCommand(ToolkitCommand):
682
683
  variables_with_environment_list.append(variable)
683
684
  variables = BuildVariables(variables_with_environment_list)
684
685
 
685
- content, value_by_placeholder = variables.replace(source, use_placeholder=True)
686
+ content, value_by_placeholder = variables.replace(source, source_file, use_placeholder=True)
686
687
  comments = YAMLComments.load(source)
687
688
  # If there is a variable in the identifier, we need to replace it with the value
688
689
  # such that we can look it up in the to_write dict.
@@ -690,10 +691,10 @@ class PullCommand(ToolkitCommand):
690
691
  # The safe read in ExtractionPipelineConfigLoader stringifies the config dict,
691
692
  # but we need to load it as a dict so we can write it back to the file maintaining
692
693
  # the order or the keys.
693
- loaded = read_yaml_content(variables.replace(source))
694
+ loaded = read_yaml_content(variables.replace(source, source_file))
694
695
  loaded_with_placeholder = read_yaml_content(content)
695
696
  else:
696
- loaded = read_yaml_content(loader.safe_read(variables.replace(source)))
697
+ loaded = read_yaml_content(loader.safe_read(variables.replace(source, source_file)))
697
698
  loaded_with_placeholder = read_yaml_content(loader.safe_read(content))
698
699
 
699
700
  built_by_identifier = {r.identifier: r for r in resources}
@@ -756,7 +757,7 @@ class PullCommand(ToolkitCommand):
756
757
  builder = create_builder(built.resource_dir, None)
757
758
  for extra in built.extra_sources:
758
759
  extra_content, extra_placeholders = built.build_variables.replace(
759
- safe_read(extra.path), extra.path.suffix, use_placeholder=True
760
+ safe_read(extra.path), extra.path, use_placeholder=True
760
761
  )
761
762
  key, _ = builder.load_extra_field(extra_content)
762
763
  if key in item_write:
@@ -8,11 +8,11 @@ from functools import cached_property
8
8
  from pathlib import Path
9
9
  from typing import Any, Literal, SupportsIndex, overload
10
10
 
11
+ from cognite_toolkit._cdf_tk.cruds._resource_cruds.transformation import TransformationCRUD
12
+ from cognite_toolkit._cdf_tk.data_classes._module_directories import ModuleLocation
11
13
  from cognite_toolkit._cdf_tk.exceptions import ToolkitValueError
12
14
  from cognite_toolkit._cdf_tk.feature_flags import Flags
13
15
 
14
- from ._module_directories import ModuleLocation
15
-
16
16
  if sys.version_info >= (3, 11):
17
17
  from typing import Self
18
18
  else:
@@ -161,16 +161,19 @@ class BuildVariables(tuple, Sequence[BuildVariable]):
161
161
  ]
162
162
 
163
163
  @overload
164
- def replace(self, content: str, file_suffix: str = ".yaml", use_placeholder: Literal[False] = False) -> str: ...
164
+ def replace(self, content: str, file_path: Path | None = None, use_placeholder: Literal[False] = False) -> str: ...
165
165
 
166
166
  @overload
167
167
  def replace(
168
- self, content: str, file_suffix: str = ".yaml", use_placeholder: Literal[True] = True
168
+ self, content: str, file_path: Path | None = None, use_placeholder: Literal[True] = True
169
169
  ) -> tuple[str, dict[str, BuildVariable]]: ...
170
170
 
171
171
  def replace(
172
- self, content: str, file_suffix: str = ".yaml", use_placeholder: bool = False
172
+ self, content: str, file_path: Path | None = None, use_placeholder: bool = False
173
173
  ) -> str | tuple[str, dict[str, BuildVariable]]:
174
+ # Extract file suffix from path, default to .yaml if not provided
175
+ file_suffix = file_path.suffix if file_path and file_path.suffix else ".yaml"
176
+
174
177
  variable_by_placeholder: dict[str, BuildVariable] = {}
175
178
  for variable in self:
176
179
  if not use_placeholder:
@@ -180,22 +183,125 @@ class BuildVariables(tuple, Sequence[BuildVariable]):
180
183
  variable_by_placeholder[replace] = variable
181
184
 
182
185
  _core_pattern = rf"{{{{\s*{variable.key}\s*}}}}"
183
- if file_suffix in {".yaml", ".yml", ".json"}:
184
- # Preserve data types
185
- pattern = _core_pattern
186
- if isinstance(replace, str) and (replace.isdigit() or replace.endswith(":")):
187
- replace = f'"{replace}"'
188
- pattern = rf"'{_core_pattern}'|{_core_pattern}|" + rf'"{_core_pattern}"'
189
- elif replace is None:
190
- replace = "null"
191
- content = re.sub(pattern, str(replace), content)
186
+ if file_suffix == ".sql":
187
+ # For SQL files, convert lists to SQL-style tuples
188
+ if isinstance(replace, list):
189
+ replace = self._format_list_as_sql_tuple(replace)
190
+ content = re.sub(_core_pattern, str(replace), content)
191
+ elif file_suffix in {".yaml", ".yml", ".json"}:
192
+ # Check if this is a transformation file (ends with Transformation.yaml/yml)
193
+ is_transformation_file = file_path is not None and f".{TransformationCRUD.kind}." in file_path.name
194
+ # Check if variable is within a query field (SQL context)
195
+ is_in_query_field = self._is_in_query_field(content, variable.key)
196
+
197
+ # For lists in query fields, use SQL-style tuples
198
+ # For transformation files, ensure SQL conversion is applied to query property variables
199
+ if is_transformation_file and is_in_query_field and isinstance(replace, list):
200
+ replace = self._format_list_as_sql_tuple(replace)
201
+ # Use simple pattern for SQL context (no YAML quoting needed)
202
+ content = re.sub(_core_pattern, str(replace), content)
203
+ else:
204
+ # Preserve data types for YAML
205
+ pattern = _core_pattern
206
+ if isinstance(replace, str) and (replace.isdigit() or replace.endswith(":")):
207
+ replace = f'"{replace}"'
208
+ pattern = rf"'{_core_pattern}'|{_core_pattern}|" + rf'"{_core_pattern}"'
209
+ elif replace is None:
210
+ replace = "null"
211
+ content = re.sub(pattern, str(replace), content)
192
212
  else:
213
+ # For other file types, use simple string replacement
193
214
  content = re.sub(_core_pattern, str(replace), content)
194
215
  if use_placeholder:
195
216
  return content, variable_by_placeholder
196
217
  else:
197
218
  return content
198
219
 
220
+ @staticmethod
221
+ def _is_transformation_file(file_path: Path) -> bool:
222
+ """Check if the file path indicates a transformation YAML file.
223
+
224
+ Transformation files are YAML files in the "transformations" folder.
225
+
226
+ Args:
227
+ file_path: The file path to check
228
+
229
+ Returns:
230
+ True if the file is a transformation YAML file
231
+ """
232
+ # Check if path contains "transformations" folder and ends with .yaml/.yml
233
+ path_str = file_path.as_posix().lower()
234
+ return "transformations" in path_str and file_path.suffix.lower() in {".yaml", ".yml"}
235
+
236
+ @staticmethod
237
+ def _format_list_as_sql_tuple(replace: list[Any]) -> str:
238
+ """Format a list as a SQL-style tuple string.
239
+
240
+ Args:
241
+ replace: The list to format
242
+
243
+ Returns:
244
+ SQL tuple string, e.g., "('A', 'B', 'C')" or "()" for empty lists
245
+ """
246
+ if not replace:
247
+ # Empty list becomes empty SQL tuple
248
+ return "()"
249
+ else:
250
+ # Format list as SQL tuple: ('A', 'B', 'C')
251
+ formatted_items = []
252
+ for item in replace:
253
+ if item is None:
254
+ formatted_items.append("NULL")
255
+ elif isinstance(item, str):
256
+ formatted_items.append(f"'{item}'")
257
+ else:
258
+ formatted_items.append(str(item))
259
+ return f"({', '.join(formatted_items)})"
260
+
261
+ @staticmethod
262
+ def _is_in_query_field(content: str, variable_key: str) -> bool:
263
+ """Check if a variable is within a query field in YAML.
264
+
265
+ Assumes query is a top-level property. This detects various YAML formats:
266
+ - query: >-
267
+ - query: |
268
+ - query: "..."
269
+ - query: ...
270
+ """
271
+ lines = content.split("\n")
272
+ variable_pattern = rf"{{{{\s*{re.escape(variable_key)}\s*}}}}"
273
+ in_query_field = False
274
+
275
+ for line in lines:
276
+ # Check if this line starts a top-level query field
277
+ query_match = re.match(r"^query\s*:\s*(.*)$", line)
278
+ if query_match:
279
+ in_query_field = True
280
+ query_content_start = query_match.group(1).strip()
281
+
282
+ # Check if variable is on the same line as query: declaration
283
+ if re.search(variable_pattern, line):
284
+ return True
285
+
286
+ # If query content starts on same line (not a block scalar), check it
287
+ if query_content_start and not query_content_start.startswith(("|", ">", "|-", ">-", "|+", ">+")):
288
+ if re.search(variable_pattern, query_content_start):
289
+ return True
290
+ continue
291
+
292
+ # Check if we're still in the query field
293
+ if in_query_field:
294
+ # If we hit another top-level property, we've exited the query field
295
+ if re.match(r"^\w+\s*:", line):
296
+ in_query_field = False
297
+ continue
298
+
299
+ # We're still in the query field, check for variable
300
+ if re.search(variable_pattern, line):
301
+ return True
302
+
303
+ return False
304
+
199
305
  # Implemented to get correct type hints
200
306
  def __iter__(self) -> Iterator[BuildVariable]:
201
307
  return super().__iter__()
@@ -158,7 +158,7 @@ class BuiltResourceFull(BuiltResource[T_ID]):
158
158
  def load_resource_dict(
159
159
  self, environment_variables: dict[str, str | None], validate: bool = False
160
160
  ) -> dict[str, Any]:
161
- content = self.build_variables.replace(safe_read(self.source.path))
161
+ content = self.build_variables.replace(safe_read(self.source.path), self.source.path)
162
162
  loader = cast(ResourceCRUD, get_crud(self.resource_dir, self.kind))
163
163
  raw = load_yaml_inject_variables(
164
164
  content,
@@ -55,3 +55,4 @@ class AgentYAML(ToolkitResource):
55
55
  "azure/gpt-4o-mini", description="The name of the model to use. Defaults to your CDF project's default model."
56
56
  )
57
57
  tools: list[AgentTool] | None = Field(None, description="A list of tools available to the agent.", max_length=20)
58
+ runtime_version: str | None = Field(None, description="The runtime version")
@@ -0,0 +1,92 @@
1
+ from typing import Any
2
+
3
+ from .base import BaseModelResource, ToolkitResource
4
+
5
+
6
+ class ObservationFeatureToggles(BaseModelResource):
7
+ """Feature toggles for observations."""
8
+
9
+ is_enabled: bool | None = None
10
+ is_write_back_enabled: bool | None = None
11
+ notifications_endpoint_external_id: str | None = None
12
+ attachments_endpoint_external_id: str | None = None
13
+
14
+
15
+ class FeatureToggles(BaseModelResource):
16
+ """Feature toggles for InField location configuration."""
17
+
18
+ three_d: bool | None = None
19
+ trends: bool | None = None
20
+ documents: bool | None = None
21
+ workorders: bool | None = None
22
+ notifications: bool | None = None
23
+ media: bool | None = None
24
+ template_checklist_flow: bool | None = None
25
+ workorder_checklist_flow: bool | None = None
26
+ observations: ObservationFeatureToggles | None = None
27
+
28
+
29
+ class AccessManagement(BaseModelResource):
30
+ """Access management configuration."""
31
+
32
+ template_admins: list[str] | None = None # list of CDF group external IDs
33
+ checklist_admins: list[str] | None = None # list of CDF group external IDs
34
+
35
+
36
+ class ResourceFilters(BaseModelResource):
37
+ """Resource filters."""
38
+
39
+ spaces: list[str] | None = None
40
+
41
+
42
+ class RootLocationDataFilters(BaseModelResource):
43
+ """Data filters for root location."""
44
+
45
+ general: ResourceFilters | None = None
46
+ assets: ResourceFilters | None = None
47
+ files: ResourceFilters | None = None
48
+ timeseries: ResourceFilters | None = None
49
+
50
+
51
+ class DataExplorationConfig(BaseModelResource):
52
+ """Properties for DataExplorationConfig node.
53
+
54
+ Contains configuration for data exploration features:
55
+ - observations: Observations feature configuration
56
+ - activities: Activities configuration
57
+ - documents: Document configuration
58
+ - notifications: Notifications configuration
59
+ - assets: Asset page configuration
60
+ """
61
+
62
+ external_id: str
63
+
64
+ observations: dict[str, Any] | None = None # ObservationsConfigFeature
65
+ activities: dict[str, Any] | None = None # ActivitiesConfiguration
66
+ documents: dict[str, Any] | None = None # DocumentConfiguration
67
+ notifications: dict[str, Any] | None = None # NotificationsConfiguration
68
+ assets: dict[str, Any] | None = None # AssetPageConfiguration
69
+
70
+
71
+ class InfieldLocationConfigYAML(ToolkitResource):
72
+ """Properties for InFieldLocationConfig node.
73
+
74
+ Currently migrated fields:
75
+ - root_location_external_id: Reference to the LocationFilterDTO external ID
76
+ - feature_toggles: Feature toggles migrated from old configuration
77
+ - rootAsset: Direct relation to the root asset (space and externalId)
78
+ - app_instance_space: Application instance space from appDataInstanceSpace
79
+ - access_management: Template and checklist admin groups (from templateAdmins and checklistAdmins)
80
+ - disciplines: List of disciplines (from disciplines in FeatureConfiguration)
81
+ - data_filters: Data filters for general, assets, files, and timeseries (from dataFilters in old configuration)
82
+ - data_exploration_config: Direct relation to the DataExplorationConfig node (shared across all locations)
83
+ """
84
+
85
+ external_id: str
86
+
87
+ root_location_external_id: str | None = None
88
+ feature_toggles: FeatureToggles | None = None
89
+ app_instance_space: str | None = None
90
+ access_management: AccessManagement | None = None
91
+ data_filters: RootLocationDataFilters | None = None
92
+ data_exploration_config: DataExplorationConfig | None = None
@@ -12,7 +12,7 @@ jobs:
12
12
  environment: dev
13
13
  name: Deploy
14
14
  container:
15
- image: cognite/toolkit:0.6.89
15
+ image: cognite/toolkit:0.6.90
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.6.89
13
+ image: cognite/toolkit:0.6.90
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.6.89"
7
+ version = "0.6.90"
8
8
 
9
9
  [alpha_flags]
10
10
  external-libraries = true
@@ -1 +1 @@
1
- __version__ = "0.6.89"
1
+ __version__ = "0.6.90"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cognite_toolkit
3
- Version: 0.6.89
3
+ Version: 0.6.90
4
4
  Summary: Official Cognite Data Fusion tool for project templates and configuration deployment
5
5
  Project-URL: Homepage, https://docs.cognite.com/cdf/deploy/cdf_toolkit/
6
6
  Project-URL: Changelog, https://github.com/cognitedata/toolkit/releases
@@ -1,6 +1,6 @@
1
1
  cognite_toolkit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  cognite_toolkit/_cdf.py,sha256=1OSAvbOeuIrnsczEG2BtGqRP3L3sq0VMPthmugnqCUw,5821
3
- cognite_toolkit/_version.py,sha256=Zx4pn6mGv-GP7UL77bykGBRh05hpWmRUnqQ8PXKNLcc,23
3
+ cognite_toolkit/_version.py,sha256=8C5NBvUzoGO4v6lGEp7BL0OTYykj0dHZjnWDHft7icE,23
4
4
  cognite_toolkit/_cdf_tk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  cognite_toolkit/_cdf_tk/cdf_toml.py,sha256=IjmzNVLxsOV6tsMDgmJmXsy-LQru-8IEQdFzGW5DxVk,8117
6
6
  cognite_toolkit/_cdf_tk/constants.py,sha256=e9XmGvQCqGq7zYQrNoopU5e2KnYZYBPyUC5raGShK7k,6364
@@ -102,7 +102,7 @@ cognite_toolkit/_cdf_tk/commands/_upload.py,sha256=Y0k0q4Iu4F7g3Ax3slSrpll3AHxmO
102
102
  cognite_toolkit/_cdf_tk/commands/_utils.py,sha256=ARlbqA_5ZWlgN3-xF-zanzSx4B0-9ULnguA5QgHmKGA,1225
103
103
  cognite_toolkit/_cdf_tk/commands/_virtual_env.py,sha256=GFAid4hplixmj9_HkcXqU5yCLj-fTXm4cloGD6U2swY,2180
104
104
  cognite_toolkit/_cdf_tk/commands/auth.py,sha256=N6JgtF0_Qoh-xM8VlBb_IK1n0Lo5I7bIkIHmXm1l7ug,31638
105
- cognite_toolkit/_cdf_tk/commands/build_cmd.py,sha256=HTxklCGg6pcnoi7yImQrCjpBXHIw2mFojmZmgDQAsGk,30523
105
+ cognite_toolkit/_cdf_tk/commands/build_cmd.py,sha256=k2_BhmTJRXuB640-g4hFsN2tD58b-aujk6kFn400qsc,30516
106
106
  cognite_toolkit/_cdf_tk/commands/clean.py,sha256=2VWZKp_AZ49AaUCCpvc1kezFA_je6y--zjglccqxsjQ,14346
107
107
  cognite_toolkit/_cdf_tk/commands/collect.py,sha256=zBMKhhvjOpuASMnwP0eeHRI02tANcvFEZgv0CQO1ECc,627
108
108
  cognite_toolkit/_cdf_tk/commands/deploy.py,sha256=QkPe3AGWIYKA-ju1rOyv9WWdwCGWyZFW5M_jc12Apxo,23083
@@ -111,7 +111,7 @@ cognite_toolkit/_cdf_tk/commands/dump_resource.py,sha256=ylAFST3GgkWT1Qa-JIzmQXb
111
111
  cognite_toolkit/_cdf_tk/commands/featureflag.py,sha256=lgLMwuNIwFjvvKn1sNMunkq4VTwdNqXtrZfdGFTrNcI,968
112
112
  cognite_toolkit/_cdf_tk/commands/init.py,sha256=OuAVPI_tAJrwFO81EwzKXAA8m6ne44wXsJ0KZyKwPAE,239
113
113
  cognite_toolkit/_cdf_tk/commands/modules.py,sha256=gR4pLje6tSiWeW0glto0pb7BhlLee4jOv6YBNFsL_0g,42537
114
- cognite_toolkit/_cdf_tk/commands/pull.py,sha256=2Zf6IOXxSxZ-5XkNE80FlrXBuNejAWrApAocu-kTrNw,39253
114
+ cognite_toolkit/_cdf_tk/commands/pull.py,sha256=AF5us8xz5ACeHcmXIiggoZ1GQrNhKXJXARnNdd2gFlc,39325
115
115
  cognite_toolkit/_cdf_tk/commands/repo.py,sha256=MNy8MWphTklIZHvQOROCweq8_SYxGv6BaqnLpkFFnuk,3845
116
116
  cognite_toolkit/_cdf_tk/commands/run.py,sha256=JyX9jLEQej9eRrHVCCNlw4GuF80qETSol3-T5CCofgw,37331
117
117
  cognite_toolkit/_cdf_tk/commands/_migrate/__init__.py,sha256=i5ldcTah59K0E4fH5gHTV0GRvtDCEvVses9WQzn9Lno,226
@@ -157,9 +157,9 @@ cognite_toolkit/_cdf_tk/cruds/_resource_cruds/workflow.py,sha256=OMHOxFY2ZLi0RTw
157
157
  cognite_toolkit/_cdf_tk/data_classes/__init__.py,sha256=4zL-zR3lgQTCWfcy28LK0HEcukQOndPEFXVqfYfdKHU,1720
158
158
  cognite_toolkit/_cdf_tk/data_classes/_base.py,sha256=0jy9VrYIO6iRgOZIcRASv-xIQjU3QbMICffEEIqzx6A,2673
159
159
  cognite_toolkit/_cdf_tk/data_classes/_build_files.py,sha256=ARZpzcpmcbtG5Jg391d7A-7MJCFeUqqiDfJlO14cvvI,953
160
- cognite_toolkit/_cdf_tk/data_classes/_build_variables.py,sha256=XSp9_tHWXSNt4cph5OGJvRGeQBtWuvR49vWgub5s8P8,9086
160
+ cognite_toolkit/_cdf_tk/data_classes/_build_variables.py,sha256=R44AN5-TLRuveVaFO2i_pc8dtlwD2zm9HVYiFlw7drk,13844
161
161
  cognite_toolkit/_cdf_tk/data_classes/_built_modules.py,sha256=Rak0-f0GgyQp_BwEW84YJ3N00F5_Be3twHuWb17Buq8,4724
162
- cognite_toolkit/_cdf_tk/data_classes/_built_resources.py,sha256=Rx6Pl4mSuCRwKUmiuXtOW3H0bT5uspcLdDhVVeJt4zU,8515
162
+ cognite_toolkit/_cdf_tk/data_classes/_built_resources.py,sha256=2lr_oNThS04O4XxzQKKvM08kudvMDCYke5jalv7Lc64,8533
163
163
  cognite_toolkit/_cdf_tk/data_classes/_config_yaml.py,sha256=XIFFvW-7SdFPSoD0J2fhcr6gSo9B2CF90G-76A-MsSM,31566
164
164
  cognite_toolkit/_cdf_tk/data_classes/_deploy_results.py,sha256=NKxJFHiLlKW-5odWs_fQcyHmsysd6VzZHtJXJ3JlOQA,8693
165
165
  cognite_toolkit/_cdf_tk/data_classes/_module_directories.py,sha256=7XB0vdvMSJq7MyXjzNwlbv2Zd3i-OyyvgcOvoO4_GFQ,12259
@@ -172,7 +172,7 @@ cognite_toolkit/_cdf_tk/prototypes/import_app.py,sha256=7dy852cBlHI2RQF1MidSmxl0
172
172
  cognite_toolkit/_cdf_tk/prototypes/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
173
173
  cognite_toolkit/_cdf_tk/prototypes/commands/import_.py,sha256=RkJ7RZI6zxe0_1xrPB-iJhCVchurmIAChilx0_XMR6k,11141
174
174
  cognite_toolkit/_cdf_tk/resource_classes/__init__.py,sha256=pTLYYBc0qImwf_yreoJdSc0LZQK6XQNVmbJFgrdxv-o,3754
175
- cognite_toolkit/_cdf_tk/resource_classes/agent.py,sha256=yYwJ3Jx2HKgJJnIVj_JV0ii5Q1iiq-Kko0pMyxAcpnw,1705
175
+ cognite_toolkit/_cdf_tk/resource_classes/agent.py,sha256=5rglrj551Z-0eT53S_UmSA3wz4m4Y494QxleWVs0ECE,1786
176
176
  cognite_toolkit/_cdf_tk/resource_classes/agent_tools.py,sha256=oNkpPCQF3CyV9zcD6NTuEAnATLXzslw2GOyFz58ZGZg,2891
177
177
  cognite_toolkit/_cdf_tk/resource_classes/asset.py,sha256=bFneWvGrEO0QsCJfSjfVDnJtIp9YCYIU7LYESldUSMs,1179
178
178
  cognite_toolkit/_cdf_tk/resource_classes/authentication.py,sha256=RTLjFXWhpg2tLoJ-xTUH0kPMapuCacrgc-RXHVPJ0QQ,630
@@ -196,6 +196,7 @@ cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_destination.py,sha256=
196
196
  cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_job.py,sha256=vLD28RByQBM9L0H9YsmzJnaNBaCY3Uoi45c1H0fzHds,10750
197
197
  cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_mapping.py,sha256=5gicORcW1vyz6eaO2dtYlhb2J69BuMh6lrWQDjjanuo,4558
198
198
  cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_source.py,sha256=Mma8B5GtxUalE7XDNcmeJx3pHc_v8vzHNqZgYnoDKmw,14663
199
+ cognite_toolkit/_cdf_tk/resource_classes/infield_cdmv1.py,sha256=qARcSa8B-56mMvGt26W9BHi9vzyy-gdG6eK5dYFwuqY,3431
199
200
  cognite_toolkit/_cdf_tk/resource_classes/infield_v1.py,sha256=XtstgUuhYhWgsxSoQ9BhG5d2ySZxyus_TOiJDWGLs0w,3564
200
201
  cognite_toolkit/_cdf_tk/resource_classes/instance.py,sha256=FdPCDz4LlKZ2SDBGH2-z-JiPN0V53Gg3FrxxjcjrJZc,2935
201
202
  cognite_toolkit/_cdf_tk/resource_classes/labels.py,sha256=rh4SV_MBEiS9cjpz1g4_0SAnKGwiIepThD_wR1_bMkY,649
@@ -285,13 +286,13 @@ cognite_toolkit/_repo_files/.gitignore,sha256=ip9kf9tcC5OguF4YF4JFEApnKYw0nG0vPi
285
286
  cognite_toolkit/_repo_files/AzureDevOps/.devops/README.md,sha256=OLA0D7yCX2tACpzvkA0IfkgQ4_swSd-OlJ1tYcTBpsA,240
286
287
  cognite_toolkit/_repo_files/AzureDevOps/.devops/deploy-pipeline.yml,sha256=brULcs8joAeBC_w_aoWjDDUHs3JheLMIR9ajPUK96nc,693
287
288
  cognite_toolkit/_repo_files/AzureDevOps/.devops/dry-run-pipeline.yml,sha256=OBFDhFWK1mlT4Dc6mDUE2Es834l8sAlYG50-5RxRtHk,723
288
- cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml,sha256=4lnerKrn16H3_STBcvu5fODE5cVtxaZEloaTtvCpxXc,667
289
- cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml,sha256=ppSA3aVmcoucLy8pNBfEKscrIvsPgyFwnb0Wv09dLNY,2430
290
- cognite_toolkit/_resources/cdf.toml,sha256=YVocnddLa-tvLk7NRmUshNUS1v8EbDyHHYYJY4or2WU,487
289
+ cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml,sha256=SCxzt7VNwZd1w3WfU5yq2l7LMhu1_MMRshZoupjFVe0,667
290
+ cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml,sha256=33A3FwMmfVDB0iuKb6US6T2trx4w3-oI8Iouc3GQn_s,2430
291
+ cognite_toolkit/_resources/cdf.toml,sha256=pGBcYc-a1_FL7Xy1rB_QfeBkMvEt567P23mAh_CCeCg,487
291
292
  cognite_toolkit/demo/__init__.py,sha256=-m1JoUiwRhNCL18eJ6t7fZOL7RPfowhCuqhYFtLgrss,72
292
293
  cognite_toolkit/demo/_base.py,sha256=6xKBUQpXZXGQ3fJ5f7nj7oT0s2n7OTAGIa17ZlKHZ5U,8052
293
- cognite_toolkit-0.6.89.dist-info/METADATA,sha256=BctpEwbWImcRv7ez5PS2z0R9qS4SmL8VRc4Ryv_GVoQ,4501
294
- cognite_toolkit-0.6.89.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
295
- cognite_toolkit-0.6.89.dist-info/entry_points.txt,sha256=JlR7MH1_UMogC3QOyN4-1l36VbrCX9xUdQoHGkuJ6-4,83
296
- cognite_toolkit-0.6.89.dist-info/licenses/LICENSE,sha256=CW0DRcx5tL-pCxLEN7ts2S9g2sLRAsWgHVEX4SN9_Mc,752
297
- cognite_toolkit-0.6.89.dist-info/RECORD,,
294
+ cognite_toolkit-0.6.90.dist-info/METADATA,sha256=L8Y9o5nwCO9cZOaOAxO5H5TC1y-hz8jXp6-7Zsv7Jes,4501
295
+ cognite_toolkit-0.6.90.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
296
+ cognite_toolkit-0.6.90.dist-info/entry_points.txt,sha256=JlR7MH1_UMogC3QOyN4-1l36VbrCX9xUdQoHGkuJ6-4,83
297
+ cognite_toolkit-0.6.90.dist-info/licenses/LICENSE,sha256=CW0DRcx5tL-pCxLEN7ts2S9g2sLRAsWgHVEX4SN9_Mc,752
298
+ cognite_toolkit-0.6.90.dist-info/RECORD,,