malevich-coretools 0.3.28__py3-none-any.whl → 0.3.30__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 malevich-coretools might be problematic. Click here for more details.

@@ -373,11 +373,17 @@ class AppLog(BaseModel):
373
373
  data: List[LogsResult]
374
374
 
375
375
 
376
+ class PipelineInfo(BaseModel):
377
+ conditions: Dict[str, Dict[int, bool]] # condition bindId -> iteration -> value
378
+ fails: Dict[str, List[int]] # bindId -> fail iterations (1 in common situation)
379
+
380
+
376
381
  class AppLogs(BaseModel):
377
382
  operationId: Alias.Id
378
383
  dagLogs: str = ""
379
384
  data: Dict[str, AppLog] = {}
380
385
  error: Optional[str] = None
386
+ pipeline: Optional[PipelineInfo] = None # only for pipeline
381
387
 
382
388
 
383
389
  class AppLogsWithResults(AppLogs):
@@ -33,7 +33,7 @@ class BaseArgument(BaseModel):
33
33
 
34
34
  class Argument(BaseArgument):
35
35
  group: Optional[List[BaseArgument]] = None # for constructed dfs, sink
36
- # conditions: Optional[Dict[str, bool]] = None # valid only for alternative, bindConditionId -> value, must be specified explicitly, then it will be derived from the pipeline structure
36
+ conditions: Optional[Dict[str, bool]] = None # valid only for alternative, bindConditionId -> value, must be specified explicitly, then it will be derived from the pipeline structure
37
37
 
38
38
  def validation(self) -> None:
39
39
  if self.group is not None:
@@ -44,9 +44,25 @@ class Argument(BaseArgument):
44
44
  assert (self.id is not None) + (self.collectionName is not None) + (self.collectionId is not None) == 1, "one way of constructing the argument must be chosen"
45
45
 
46
46
 
47
- class AlternativeArgument(Argument):
48
- # alternative: Optional[List[Argument]] = None # if set - should be only one valid argument with conditions
49
- pass
47
+ class AlternativeArgument(BaseArgument):
48
+ group: Optional[List[BaseArgument]] = None # for constructed dfs, sink
49
+ alternative: Optional[List[Argument]] = None # if set - should be only one valid argument with conditions
50
+
51
+ def validation(self) -> None:
52
+ if self.group is not None:
53
+ assert self.id is None and self.collectionName is None and self.collectionId is None, "one way of constructing the argument must be chosen"
54
+ for subarg in self.group:
55
+ subarg.validation()
56
+ elif self.alternative is not None:
57
+ for alt_arg in self.alternative:
58
+ if alt_arg.group is not None:
59
+ assert alt_arg.id is None and alt_arg.collectionName is None and alt_arg.collectionId is None, "one way of constructing the argument must be chosen"
60
+ for subarg in alt_arg.group:
61
+ subarg.validation()
62
+ else:
63
+ assert (self.id is not None) + (self.collectionName is not None) + (self.collectionId is not None) == 1, "one way of constructing the argument must be chosen"
64
+ else:
65
+ assert (self.id is not None) + (self.collectionName is not None) + (self.collectionId is not None) == 1, "one way of constructing the argument must be chosen"
50
66
 
51
67
 
52
68
  class AppEntity(BaseModel):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: malevich-coretools
3
- Version: 0.3.28
3
+ Version: 0.3.30
4
4
  Author: Andrew Pogrebnoj
5
5
  Author-email: andrew@onjulius.co
6
6
  License-File: LICENSE
@@ -1,8 +1,8 @@
1
1
  malevich_coretools/__init__.py,sha256=DJtPESxkCZD2SbTZTrR_x0TKDQ4MJpmBqGw5YpKYidM,134
2
2
  malevich_coretools/utils.py,sha256=yIFBlvBZe_HqcyTGeWtZdEIz9ABs41sCNPO7SFDH9Kk,107271
3
3
  malevich_coretools/abstract/__init__.py,sha256=8AC5ZukRGkTtN-XP14DY5z2HrJqN5LLlnmcMqvWwtWU,76
4
- malevich_coretools/abstract/abstract.py,sha256=v012y0NCwgl6vjb0Zir31Vn6tgFrbYHU_IfV_xrWjNM,14307
5
- malevich_coretools/abstract/pipeline.py,sha256=7IJXuQT9WJmlJDIIRxGBpxNE3my1gy_CYxhMHvfv8cI,3291
4
+ malevich_coretools/abstract/abstract.py,sha256=7Z6LfUqLwcwvOMmoqX4dxRKbVbYfA4D4mdi-rVGjJ7U,14585
5
+ malevich_coretools/abstract/pipeline.py,sha256=nTdoIhEmpfDaNK19KCy588RbppMv3S0o6eV6W_t6_hM,4444
6
6
  malevich_coretools/abstract/statuses.py,sha256=9ISSw_evsylBshLXoU44TCoFOrZm4bXIxyAFFDqdUWc,333
7
7
  malevich_coretools/admin/__init__.py,sha256=zdIcHs3T_NZ8HYWts-O7OpBEWHIu779QDZMGF5HRCLg,35
8
8
  malevich_coretools/admin/utils.py,sha256=68fbVsZ-Rmi4YMiOirr6_i03ruT-ts7xSuUntb7JdHs,3015
@@ -20,8 +20,8 @@ malevich_coretools/secondary/kafka_utils.py,sha256=SIUnBFyfwsquN6MAUrEkKCw-1l797
20
20
  malevich_coretools/tools/__init__.py,sha256=jDxlCa5Dr6Y43qlI7JwsRAlBkKmFeTHTEnjNUvu-0iw,46
21
21
  malevich_coretools/tools/abstract.py,sha256=B1RW1FeNHrQ6r1k-cQZ4k4noCRXkIGt-JUwVoXEDkAg,4466
22
22
  malevich_coretools/tools/vast.py,sha256=63tvy70qQV9vnK0eWytlgjBGSnfA7l3kSIDgACBbMMs,12893
23
- malevich_coretools-0.3.28.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
24
- malevich_coretools-0.3.28.dist-info/METADATA,sha256=MYGkdSRISF_Z_Un_y_YoniwVU5w3xeXH51bpidgmODA,265
25
- malevich_coretools-0.3.28.dist-info/WHEEL,sha256=Wyh-_nZ0DJYolHNn1_hMa4lM7uDedD_RGVwbmTjyItk,91
26
- malevich_coretools-0.3.28.dist-info/top_level.txt,sha256=wDX3s1Tso0otBPNrFRfXqyNpm48W4Bp5v6JfbITO2Z8,19
27
- malevich_coretools-0.3.28.dist-info/RECORD,,
23
+ malevich_coretools-0.3.30.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
24
+ malevich_coretools-0.3.30.dist-info/METADATA,sha256=3qUA4rMW18BpH_IcDl0-aPAxk8MlmNQ7xiF9IFhHhAw,265
25
+ malevich_coretools-0.3.30.dist-info/WHEEL,sha256=HiCZjzuy6Dw0hdX5R3LCFPDmFS4BWl8H-8W39XfmgX4,91
26
+ malevich_coretools-0.3.30.dist-info/top_level.txt,sha256=wDX3s1Tso0otBPNrFRfXqyNpm48W4Bp5v6JfbITO2Z8,19
27
+ malevich_coretools-0.3.30.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (71.1.0)
2
+ Generator: setuptools (72.2.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5