cognite-toolkit 0.6.107__py3-none-any.whl → 0.6.109__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.
@@ -10,6 +10,7 @@ from cognite.client.data_classes.data_modeling import (
10
10
  NodeApplyResultList,
11
11
  NodeId,
12
12
  NodeList,
13
+ ViewId,
13
14
  filters,
14
15
  query,
15
16
  )
@@ -347,6 +348,9 @@ class SpaceSourceAPI:
347
348
  return results
348
349
 
349
350
 
351
+ _T_Cached = TypeVar("_T_Cached", bound=NodeId | ViewId)
352
+
353
+
350
354
  class LookupAPI:
351
355
  def __init__(self, instance_api: ExtendedInstancesAPI, resource_type: AssetCentricType) -> None:
352
356
  self._instance_api = instance_api
@@ -354,13 +358,15 @@ class LookupAPI:
354
358
  self._view_id = InstanceSource.get_source()
355
359
  self._node_id_by_id: dict[int, NodeId | None] = {}
356
360
  self._node_id_by_external_id: dict[str, NodeId | None] = {}
361
+ self._consumer_view_id_by_id: dict[int, ViewId | None] = {}
362
+ self._consumer_view_id_by_external_id: dict[str, ViewId | None] = {}
357
363
  self._RETRIEVE_LIMIT = 1000
358
364
 
359
365
  @overload
360
366
  def __call__(self, id: int, external_id: None = None) -> NodeId | None: ...
361
367
 
362
368
  @overload
363
- def __call__(self, id: Sequence[int], external_id: None = None) -> dict[int, NodeId]: ...
369
+ def __call__(self, id: SequenceNotStr[int], external_id: None = None) -> dict[int, NodeId]: ...
364
370
 
365
371
  @overload
366
372
  def __call__(self, *, external_id: str) -> NodeId | None: ...
@@ -369,7 +375,7 @@ class LookupAPI:
369
375
  def __call__(self, *, external_id: SequenceNotStr[str]) -> dict[str, NodeId]: ...
370
376
 
371
377
  def __call__(
372
- self, id: int | Sequence[int] | None = None, external_id: str | SequenceNotStr[str] | None = None
378
+ self, id: int | SequenceNotStr[int] | None = None, external_id: str | SequenceNotStr[str] | None = None
373
379
  ) -> dict[int, NodeId] | dict[str, NodeId] | NodeId | None:
374
380
  """Lookup NodeId by either internal ID or external ID.
375
381
 
@@ -382,35 +388,87 @@ class LookupAPI:
382
388
 
383
389
  """
384
390
  if id is not None and external_id is None:
385
- return self._lookup_by_id(id)
391
+ return self._lookup(
392
+ identifier=id,
393
+ cache=self._node_id_by_id,
394
+ property_name="id",
395
+ return_type=NodeId,
396
+ input_type=int,
397
+ )
386
398
  elif external_id is not None and id is None:
387
- return self._lookup_by_external_id(external_id)
399
+ return self._lookup(
400
+ identifier=external_id,
401
+ cache=self._node_id_by_external_id,
402
+ property_name="classicExternalId",
403
+ return_type=NodeId,
404
+ input_type=str,
405
+ )
388
406
  else:
389
- raise ValueError("Either id or external_id must be provided, but not both.")
407
+ raise TypeError("Either id or external_id must be provided, but not both.")
390
408
 
391
- def _lookup_by_id(self, id: int | Sequence[int]) -> dict[int, NodeId] | NodeId | None:
392
- ids: list[int] = [id] if isinstance(id, int) else list(id)
409
+ @overload
410
+ def consumer_view(self, id: int, external_id: None = None) -> ViewId | None: ...
393
411
 
394
- missing = [id_ for id_ in ids if id_ not in self._node_id_by_id]
395
- if missing:
396
- self._fetch_and_cache(missing, by="id")
397
- if isinstance(id, int):
398
- return self._node_id_by_id.get(id)
399
- return {id_: node_id for id_ in ids if isinstance(node_id := self._node_id_by_id.get(id_), NodeId)}
412
+ @overload
413
+ def consumer_view(self, id: SequenceNotStr[int], external_id: None = None) -> dict[int, ViewId]: ...
400
414
 
401
- def _lookup_by_external_id(self, external_id: str | SequenceNotStr[str]) -> dict[str, NodeId] | NodeId | None:
402
- external_ids: list[str] = [external_id] if isinstance(external_id, str) else list(external_id)
415
+ @overload
416
+ def consumer_view(self, *, external_id: str) -> ViewId | None: ...
417
+
418
+ @overload
419
+ def consumer_view(self, *, external_id: SequenceNotStr[str]) -> dict[str, ViewId]: ...
420
+
421
+ def consumer_view(
422
+ self, id: int | SequenceNotStr[int] | None = None, external_id: str | SequenceNotStr[str] | None = None
423
+ ) -> dict[int, ViewId] | dict[str, ViewId] | ViewId | None:
424
+ """Lookup Consumer ViewId by either internal ID or external ID.
425
+
426
+ Args:
427
+ id (int | Sequence[int] | None): The internal ID(s) to lookup.
428
+ external_id (str | SequenceNotStr[str] | None): The external ID(s) to lookup.
429
+ Returns:
430
+ ViewId | dict[int, ViewId] | dict[str, ViewId] | None
431
+ """
432
+ if id is not None and external_id is None:
433
+ return self._lookup(
434
+ identifier=id,
435
+ cache=self._consumer_view_id_by_id,
436
+ property_name="id",
437
+ return_type=ViewId,
438
+ input_type=int,
439
+ )
440
+ elif external_id is not None and id is None:
441
+ return self._lookup(
442
+ identifier=external_id,
443
+ cache=self._consumer_view_id_by_external_id,
444
+ property_name="classicExternalId",
445
+ return_type=ViewId,
446
+ input_type=str,
447
+ )
448
+ else:
449
+ raise TypeError("Either id or external_id must be provided, but not both.")
403
450
 
404
- missing = [ext_id for ext_id in external_ids if ext_id not in self._node_id_by_external_id]
451
+ def _lookup(
452
+ self,
453
+ identifier: _T | SequenceNotStr[_T],
454
+ cache: dict[_T, _T_Cached | None],
455
+ property_name: Literal["id", "classicExternalId"],
456
+ return_type: type[_T_Cached],
457
+ input_type: type[_T],
458
+ ) -> dict[_T, _T_Cached] | _T_Cached | None:
459
+ """Generic lookup method for both NodeId and ViewId by id or external_id."""
460
+ is_single = isinstance(identifier, input_type)
461
+ # MyPy does not understand that if is_single is True, identifier is _T, else SequenceNotStr[_T].
462
+ identifiers: list[_T] = [identifier] if is_single else list(identifier) # type: ignore[arg-type, list-item]
463
+
464
+ missing = [id_ for id_ in identifiers if id_ not in cache]
405
465
  if missing:
406
- self._fetch_and_cache(missing, by="classicExternalId")
407
- if isinstance(external_id, str):
408
- return self._node_id_by_external_id.get(external_id)
409
- return {
410
- ext_id: node_id
411
- for ext_id in external_ids
412
- if isinstance(node_id := self._node_id_by_external_id.get(ext_id), NodeId)
413
- }
466
+ self._fetch_and_cache(missing, by=property_name)
467
+
468
+ if is_single:
469
+ return cache.get(identifier) # type: ignore[arg-type]
470
+
471
+ return {id_: value for id_ in identifiers if isinstance(value := cache.get(id_), return_type)}
414
472
 
415
473
  def _fetch_and_cache(self, identifiers: Sequence[int | str], by: Literal["id", "classicExternalId"]) -> None:
416
474
  for chunk in chunker_sequence(identifiers, self._RETRIEVE_LIMIT):
@@ -433,17 +491,25 @@ class LookupAPI:
433
491
  instance_source = InstanceSource._load(item.dump())
434
492
  node_id = instance_source.as_id()
435
493
  self._node_id_by_id[instance_source.id_] = node_id
494
+ self._consumer_view_id_by_id[instance_source.id_] = instance_source.consumer_view()
436
495
  if instance_source.classic_external_id:
437
496
  self._node_id_by_external_id[instance_source.classic_external_id] = node_id
497
+ self._consumer_view_id_by_external_id[instance_source.classic_external_id] = (
498
+ instance_source.consumer_view()
499
+ )
438
500
  missing = set(chunk) - set(self._node_id_by_id.keys()) - set(self._node_id_by_external_id.keys())
439
501
  if by == "id":
440
502
  for missing_id in cast(set[int], missing):
441
503
  if missing_id not in self._node_id_by_id:
442
504
  self._node_id_by_id[missing_id] = None
505
+ if missing_id not in self._consumer_view_id_by_id:
506
+ self._consumer_view_id_by_id[missing_id] = None
443
507
  elif by == "classicExternalId":
444
508
  for missing_ext_id in cast(set[str], missing):
445
509
  if missing_ext_id not in self._node_id_by_external_id:
446
510
  self._node_id_by_external_id[missing_ext_id] = None
511
+ if missing_ext_id not in self._consumer_view_id_by_external_id:
512
+ self._consumer_view_id_by_external_id[missing_ext_id] = None
447
513
 
448
514
 
449
515
  class MigrationLookupAPI:
@@ -114,6 +114,14 @@ class InstanceSource(_InstanceSourceProperties, TypedNode):
114
114
  self.preferred_consumer_view_id = preferred_consumer_view_id
115
115
  self.ingestion_view = DirectRelationReference.load(ingestion_view) if ingestion_view else None
116
116
 
117
+ def dump(self, camel_case: bool = True) -> dict[str, Any]:
118
+ output = super().dump(camel_case)
119
+ if self.preferred_consumer_view_id:
120
+ output["properties"]["cognite_migration"]["InstanceSource/v1"]["preferredConsumerViewId"] = (
121
+ self.preferred_consumer_view_id.dump(camel_case=camel_case)
122
+ )
123
+ return output
124
+
117
125
  @classmethod
118
126
  def _load_properties(cls, resource: dict[str, Any]) -> dict[str, Any]:
119
127
  if "preferredConsumerViewId" in resource:
@@ -2,7 +2,7 @@ from collections.abc import Hashable, Iterable, Sequence
2
2
  from typing import Any
3
3
 
4
4
  from cognite.client.data_classes.agents import Agent, AgentList, AgentUpsert, AgentUpsertList
5
- from cognite.client.data_classes.capabilities import Capability
5
+ from cognite.client.data_classes.capabilities import AgentsAcl, Capability
6
6
  from cognite.client.exceptions import CogniteAPIError
7
7
  from cognite.client.utils.useful_types import SequenceNotStr
8
8
 
@@ -37,7 +37,12 @@ class AgentCRUD(ResourceCRUD[str, AgentUpsert, Agent, AgentUpsertList, AgentList
37
37
  def get_required_capability(
38
38
  cls, items: Sequence[AgentUpsert] | None, read_only: bool
39
39
  ) -> Capability | list[Capability]:
40
- return []
40
+ if not items and items is not None:
41
+ return []
42
+
43
+ actions = [AgentsAcl.Action.READ] if read_only else [AgentsAcl.Action.READ, AgentsAcl.Action.WRITE]
44
+
45
+ return AgentsAcl(actions, AgentsAcl.Scope.All())
41
46
 
42
47
  def create(self, items: AgentUpsertList) -> AgentList:
43
48
  return self.client.agents.upsert(items)
@@ -81,7 +81,6 @@ class RoboticFrameCRUD(ResourceCRUD[str, FrameWrite, Frame, FrameWriteList, Fram
81
81
  capabilities.RoboticsAcl.Action.Create,
82
82
  capabilities.RoboticsAcl.Action.Delete,
83
83
  capabilities.RoboticsAcl.Action.Update,
84
- capabilities.RoboticsAcl.Action.Delete,
85
84
  ],
86
85
  capabilities.RoboticsAcl.Scope.All(),
87
86
  )
@@ -154,7 +153,6 @@ class RoboticLocationCRUD(ResourceCRUD[str, LocationWrite, Location, LocationWri
154
153
  capabilities.RoboticsAcl.Action.Create,
155
154
  capabilities.RoboticsAcl.Action.Delete,
156
155
  capabilities.RoboticsAcl.Action.Update,
157
- capabilities.RoboticsAcl.Action.Delete,
158
156
  ]
159
157
  )
160
158
 
@@ -230,7 +228,6 @@ class RoboticsDataPostProcessingCRUD(
230
228
  capabilities.RoboticsAcl.Action.Create,
231
229
  capabilities.RoboticsAcl.Action.Delete,
232
230
  capabilities.RoboticsAcl.Action.Update,
233
- capabilities.RoboticsAcl.Action.Delete,
234
231
  ]
235
232
  )
236
233
 
@@ -325,7 +322,6 @@ class RobotCapabilityCRUD(
325
322
  capabilities.RoboticsAcl.Action.Create,
326
323
  capabilities.RoboticsAcl.Action.Delete,
327
324
  capabilities.RoboticsAcl.Action.Update,
328
- capabilities.RoboticsAcl.Action.Delete,
329
325
  ]
330
326
  )
331
327
 
@@ -423,7 +419,6 @@ class RoboticMapCRUD(ResourceCRUD[str, MapWrite, Map, MapWriteList, MapList]):
423
419
  capabilities.RoboticsAcl.Action.Create,
424
420
  capabilities.RoboticsAcl.Action.Delete,
425
421
  capabilities.RoboticsAcl.Action.Update,
426
- capabilities.RoboticsAcl.Action.Delete,
427
422
  ]
428
423
  )
429
424
 
@@ -12,7 +12,7 @@ jobs:
12
12
  environment: dev
13
13
  name: Deploy
14
14
  container:
15
- image: cognite/toolkit:0.6.107
15
+ image: cognite/toolkit:0.6.109
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.107
13
+ image: cognite/toolkit:0.6.109
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.107"
7
+ version = "0.6.109"
8
8
 
9
9
  [alpha_flags]
10
10
  external-libraries = true
@@ -1 +1 @@
1
- __version__ = "0.6.107"
1
+ __version__ = "0.6.109"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cognite_toolkit
3
- Version: 0.6.107
3
+ Version: 0.6.109
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
@@ -10,7 +10,7 @@ Author-email: Cognite AS <support@cognite.com>
10
10
  License-Expression: Apache-2.0
11
11
  License-File: LICENSE
12
12
  Requires-Python: >=3.10
13
- Requires-Dist: cognite-sdk<8.0.0,>=7.83.0
13
+ Requires-Dist: cognite-sdk<8.0.0,>=7.87.0
14
14
  Requires-Dist: filelock>=3.18.0
15
15
  Requires-Dist: httpx>=0.28.1
16
16
  Requires-Dist: mixpanel>=4.10.1
@@ -1,6 +1,6 @@
1
1
  cognite_toolkit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  cognite_toolkit/_cdf.py,sha256=0abeQr1Tfk4lkGaoXyrnFC28wDSlR_8UGrh10noGduQ,6085
3
- cognite_toolkit/_version.py,sha256=lu-o5QGcXmrHU8tes3QjIxzRHr_63kClROn7Lrtlq6s,24
3
+ cognite_toolkit/_version.py,sha256=RN7f5cMrZyBLBF66iauaGYInNemTmy-2sr6H3Ysm8OU,24
4
4
  cognite_toolkit/_cdf_tk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  cognite_toolkit/_cdf_tk/cdf_toml.py,sha256=VSWV9h44HusWIaKpWgjrOMrc3hDoPTTXBXlp6-NOrIM,9079
6
6
  cognite_toolkit/_cdf_tk/constants.py,sha256=Gi7iGGzdUrOnBeIK6ix3XiBieHIwzLJO5BWjDI3a6l4,7082
@@ -54,7 +54,7 @@ cognite_toolkit/_cdf_tk/client/api/fixed_transformations.py,sha256=m66cqbx4oCtjv
54
54
  cognite_toolkit/_cdf_tk/client/api/infield.py,sha256=yt1Y-I20aK9dFd9CB50XfinaCR09Ny7SER1H9g2c2Ck,7247
55
55
  cognite_toolkit/_cdf_tk/client/api/location_filters.py,sha256=TIbomUbpUNDxOON_a3pwBmCBdltxL1jMQBXKcIjRx44,3759
56
56
  cognite_toolkit/_cdf_tk/client/api/lookup.py,sha256=c-cvtgfGGGYyk8ROcJu44qlo1ocqbk0o1zafCql79fU,17652
57
- cognite_toolkit/_cdf_tk/client/api/migration.py,sha256=cuB42cbdRIMBWJH71tgJrxCymfDR9KVCJ6VxQmLm6n4,20378
57
+ cognite_toolkit/_cdf_tk/client/api/migration.py,sha256=jjQ-3HyBgEPWO8RB8mI1sp8ZWHrUmtaYsufuUGp_3ew,23055
58
58
  cognite_toolkit/_cdf_tk/client/api/project.py,sha256=Hj0uDCLyPofG-T4626EdeoRRtBaovhU-SMAQ7VWJ1M4,1063
59
59
  cognite_toolkit/_cdf_tk/client/api/search.py,sha256=L4cDPip7pJVP7bEgAiSOjqINIHg8AULNBtR29G5khEQ,612
60
60
  cognite_toolkit/_cdf_tk/client/api/search_config.py,sha256=31rPCSOnzfiLv8FKU6F3tF9ZesEV8moSlbnkFPNh13g,1824
@@ -88,7 +88,7 @@ cognite_toolkit/_cdf_tk/client/data_classes/infield.py,sha256=MK-iD704Xw5VbLcr-M
88
88
  cognite_toolkit/_cdf_tk/client/data_classes/instance_api.py,sha256=dCgCYqvQHiuFhe8CRb1_lYderkVHoHWki1vcf07F8tw,4929
89
89
  cognite_toolkit/_cdf_tk/client/data_classes/instances.py,sha256=aGV3XtBGwG1ELks3kqFkScO-MGC5zvcSZtYXOVWL2BE,2501
90
90
  cognite_toolkit/_cdf_tk/client/data_classes/location_filters.py,sha256=IgHU7Hto0Zz3Bk_QW17JC3vUw0yN1oaTeJ3ZPKOGFAE,12112
91
- cognite_toolkit/_cdf_tk/client/data_classes/migration.py,sha256=DSxa5anY8YAWgm94j_adLP1xGTfR8hdrYL000ZqqF84,18264
91
+ cognite_toolkit/_cdf_tk/client/data_classes/migration.py,sha256=AoYgqwSoYn1ok_ksG9Lljb270J4zPF_qyJSu5ZHtD_Q,18632
92
92
  cognite_toolkit/_cdf_tk/client/data_classes/pending_instances_ids.py,sha256=W99jhHMLzW_0TvZoaeeaeWXljN9GjuXPoFO-SRjsd-s,1888
93
93
  cognite_toolkit/_cdf_tk/client/data_classes/project.py,sha256=y0rcIZvoTf5b3LPgz9ufUU2UTkDTyzz-HmNgH6cXRNA,1226
94
94
  cognite_toolkit/_cdf_tk/client/data_classes/raw.py,sha256=CfFqUKP9_b3yg_1br6fwpkZsmGbMmbj5_D3P6HwoIvQ,14708
@@ -142,7 +142,7 @@ cognite_toolkit/_cdf_tk/cruds/_base_cruds.py,sha256=3ExMHowKi9jV-EwfKL1jfeSfQLM5
142
142
  cognite_toolkit/_cdf_tk/cruds/_data_cruds.py,sha256=PacTXdXaw0sf38tM6_DgNXVYdZXf_J90ZUeLk5v2VRg,9071
143
143
  cognite_toolkit/_cdf_tk/cruds/_worker.py,sha256=XdLm6DMFln9DqDgEbeqzepw9WRSXx7WdChbDtmOc89Q,9358
144
144
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/__init__.py,sha256=gSbQHXTgbkguEc2kFckgt13JVO5GXol_JXT2LW4T5o0,2879
145
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/agent.py,sha256=2pcpwAJQ4GPvW2jM0J-Odm7d1sTlaaoBLKEXPHHz2VQ,5091
145
+ cognite_toolkit/_cdf_tk/cruds/_resource_cruds/agent.py,sha256=yB6t-ZL6XtcneWE_njIZcVVZtcvKu9yaFsysLnsHJUc,5317
146
146
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/auth.py,sha256=iGG2_btpEqip3o6OKpcKfrh5IljOH9NbrJcGBKX0bn4,24971
147
147
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/classic.py,sha256=7RdiWvh6MLI1lLmt3gcqDQj61xbwREhsvoyjFuJn2F0,26402
148
148
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/configuration.py,sha256=KrL7bj8q5q18mGB2V-NDkW5U5nfseZOyorXiUbp2uLw,6100
@@ -159,7 +159,7 @@ cognite_toolkit/_cdf_tk/cruds/_resource_cruds/location.py,sha256=NWbL4JopbHWV-yd
159
159
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/migration.py,sha256=BPjlYYwU31DSKe0cs24hhYv4UCTHJ87mDSfmQDI_S2o,4744
160
160
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/raw.py,sha256=8Ojq7MpatpsiYRD0IzlljMFHTbNP3Iwv_OToxggNcNQ,12341
161
161
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/relationship.py,sha256=eXfMaUL7AIpvTBxTPgDn23oMLtrvNdYjrKWLGmuuzQc,6427
162
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/robotics.py,sha256=SgSFWxcNt0r5Bs-mn8Fm16RQVYMS1skOSDFkqrf1uBE,17489
162
+ cognite_toolkit/_cdf_tk/cruds/_resource_cruds/robotics.py,sha256=dG45TvMcmpwV6OyHAtkaJVEHegOxs2NBBe3a5aui9Bw,17209
163
163
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/streams.py,sha256=-vFcurvfoWZJLBXla7qmMFAtu81Nbcerx2IoizDC7EQ,3266
164
164
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/three_d_model.py,sha256=YmzIQp1cjU6ttqmwwDfU9wXFkKaW5ZuypdEu-LZsOXY,7545
165
165
  cognite_toolkit/_cdf_tk/cruds/_resource_cruds/timeseries.py,sha256=VUvg6geF8d7N6PY1kMXs6v2xbWReiSbbRhQNqlAlhUM,23518
@@ -300,13 +300,13 @@ cognite_toolkit/_repo_files/.gitignore,sha256=ip9kf9tcC5OguF4YF4JFEApnKYw0nG0vPi
300
300
  cognite_toolkit/_repo_files/AzureDevOps/.devops/README.md,sha256=OLA0D7yCX2tACpzvkA0IfkgQ4_swSd-OlJ1tYcTBpsA,240
301
301
  cognite_toolkit/_repo_files/AzureDevOps/.devops/deploy-pipeline.yml,sha256=brULcs8joAeBC_w_aoWjDDUHs3JheLMIR9ajPUK96nc,693
302
302
  cognite_toolkit/_repo_files/AzureDevOps/.devops/dry-run-pipeline.yml,sha256=OBFDhFWK1mlT4Dc6mDUE2Es834l8sAlYG50-5RxRtHk,723
303
- cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml,sha256=7ijoHGa5OFuDD3hYSllkChA4MU_iJgAnXmUX4sTlDkg,668
304
- cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml,sha256=5yngla4gklkissfZ1vVMphWbfMfYmFs2gt3HnckqJrI,2431
305
- cognite_toolkit/_resources/cdf.toml,sha256=CkbioMspsFNI5FwfptPthjPiQiln-5d7B6Tm1eWW_YY,488
303
+ cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml,sha256=nravoEwNPHKAQxpBkVmYEWs32zKaBJF4A0A6qGEqYYs,668
304
+ cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml,sha256=2ds1UMLZ_3DtSe-sdlKQkyKH1cMvFlJczJmuHPxrTK8,2431
305
+ cognite_toolkit/_resources/cdf.toml,sha256=1HiibQI4-kcxjk1K2VnvDNilg8K6H6EOpdhTYK8od6w,488
306
306
  cognite_toolkit/demo/__init__.py,sha256=-m1JoUiwRhNCL18eJ6t7fZOL7RPfowhCuqhYFtLgrss,72
307
307
  cognite_toolkit/demo/_base.py,sha256=6xKBUQpXZXGQ3fJ5f7nj7oT0s2n7OTAGIa17ZlKHZ5U,8052
308
- cognite_toolkit-0.6.107.dist-info/METADATA,sha256=jKo4OnTtq7P4OwIRv8ku2Exp5ZlhakpRrUtmHwbYWKM,4502
309
- cognite_toolkit-0.6.107.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
310
- cognite_toolkit-0.6.107.dist-info/entry_points.txt,sha256=JlR7MH1_UMogC3QOyN4-1l36VbrCX9xUdQoHGkuJ6-4,83
311
- cognite_toolkit-0.6.107.dist-info/licenses/LICENSE,sha256=CW0DRcx5tL-pCxLEN7ts2S9g2sLRAsWgHVEX4SN9_Mc,752
312
- cognite_toolkit-0.6.107.dist-info/RECORD,,
308
+ cognite_toolkit-0.6.109.dist-info/METADATA,sha256=eDd46Parkn2Cs5ujEbVM9lTocNMA3GZh-IGSOyRl9zM,4502
309
+ cognite_toolkit-0.6.109.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
310
+ cognite_toolkit-0.6.109.dist-info/entry_points.txt,sha256=JlR7MH1_UMogC3QOyN4-1l36VbrCX9xUdQoHGkuJ6-4,83
311
+ cognite_toolkit-0.6.109.dist-info/licenses/LICENSE,sha256=CW0DRcx5tL-pCxLEN7ts2S9g2sLRAsWgHVEX4SN9_Mc,752
312
+ cognite_toolkit-0.6.109.dist-info/RECORD,,