deriva-ml 1.14.30__py3-none-any.whl → 1.14.32__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.
@@ -7,6 +7,7 @@ from pathlib import Path
7
7
  from typing import Any
8
8
 
9
9
  import requests
10
+ from pydantic import BaseModel, PrivateAttr, model_validator
10
11
  from requests import RequestException
11
12
 
12
13
  from deriva_ml.core.definitions import RID
@@ -48,7 +49,7 @@ except ImportError:
48
49
  return get_connection_file()
49
50
 
50
51
 
51
- class Workflow:
52
+ class Workflow(BaseModel):
52
53
  """Represents a computational workflow in DerivaML.
53
54
 
54
55
  A workflow defines a computational process or analysis pipeline. Each workflow has
@@ -75,17 +76,19 @@ class Workflow:
75
76
  ... )
76
77
  """
77
78
 
78
- def __init__(
79
- self,
80
- name: str,
81
- workflow_type: str,
82
- description: str | None = None,
83
- url: str | None = None,
84
- version: str | None = None,
85
- rid: RID | None = None,
86
- checksum: str | None = None,
87
- is_notebook: bool = False,
88
- ):
79
+ name: str
80
+ workflow_type: str
81
+ description: str | None = None
82
+ url: str | None = None
83
+ version: str | None = None
84
+ rid: RID | None = None
85
+ checksum: str | None = None
86
+ is_notebook: bool = False
87
+
88
+ _logger: logging.Logger = PrivateAttr(default=10)
89
+
90
+ @model_validator(mode="after")
91
+ def setup_url_checksum(self) -> "Workflow":
89
92
  """Creates a workflow from the current execution context.
90
93
 
91
94
  Identifies the currently executing program (script or notebook) and creates
@@ -114,14 +117,6 @@ class Workflow:
114
117
  ... description="Process sample data"
115
118
  ... )
116
119
  """
117
- self.name = name
118
- self.url = url
119
- self.workflow_type = workflow_type
120
- self.version = version
121
- self.description = description
122
- self.rid = rid
123
- self.checksum = checksum
124
- self.is_notebook = is_notebook
125
120
  """Initializes logging for the workflow."""
126
121
 
127
122
  # Check to see if execution file info is being passed in by calling program.
@@ -135,6 +130,7 @@ class Workflow:
135
130
  self.url, self.checksum = Workflow.get_url_and_checksum(path)
136
131
 
137
132
  self._logger = logging.getLogger("deriva_ml")
133
+ return self
138
134
 
139
135
  @staticmethod
140
136
  def get_url_and_checksum(executable_path: Path) -> tuple[str, str]:
@@ -1,11 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: deriva-ml
3
- Version: 1.14.30
3
+ Version: 1.14.32
4
4
  Summary: Utilities to simplify use of Dervia and Pandas to create reproducable ML pipelines
5
5
  Author-email: ISRD <isrd-dev@isi.edu>
6
6
  Requires-Python: >=3.10
7
7
  Description-Content-Type: text/markdown
8
8
  License-File: LICENSE
9
+ Requires-Dist: bump-my-version
9
10
  Requires-Dist: deriva~=1.7.10
10
11
  Requires-Dist: deepdiff
11
12
  Requires-Dist: pandas
@@ -20,7 +20,7 @@ deriva_ml/execution/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
20
20
  deriva_ml/execution/environment.py,sha256=B7nywqxFTRUWgyu8n7rFoKcVC9on422kjeFG2FPQfvg,9302
21
21
  deriva_ml/execution/execution.py,sha256=tXWkFLDoSre836x6MMkcmhtmr3zP5_VoSioQ72-XmvE,44298
22
22
  deriva_ml/execution/execution_configuration.py,sha256=Rw4VWkBCZN9yatvSKdTqEWTfu470lpcVKfHFR0uN0jI,6248
23
- deriva_ml/execution/workflow.py,sha256=65z9p0u4EKduLykn-noWRgf14B1lRPeYJr_0SbqYlA4,13681
23
+ deriva_ml/execution/workflow.py,sha256=Q5AvWOZLmveIobVKqTNo30HqpnLQ9Q9oy8klZBDKd3Q,13577
24
24
  deriva_ml/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
25
  deriva_ml/model/catalog.py,sha256=dzTBcRlqgEVkPY32AUax_iu75RgFiT4Pu5au7rmrv8k,14068
26
26
  deriva_ml/model/database.py,sha256=MlXQQFgFmGxZbRx-unRFoRttXwpJspV4v2AIgppttCU,14805
@@ -32,9 +32,9 @@ deriva_ml/schema/create_schema.py,sha256=0ydJSZEg3C3-m8hWPN6k2MoUvm-RWxAlKFzVChx
32
32
  deriva_ml/schema/deriva-ml-reference.json,sha256=AEOMIgwKO3dNMMWHb0lxaXyamvfAEbUPh8qw0aAtsUQ,242460
33
33
  deriva_ml/schema/policy.json,sha256=5ykB8nnZFl-oCHzlAwppCFKJHWJFIkYognUMVEanfY8,1826
34
34
  deriva_ml/schema/table_comments_utils.py,sha256=4flCqnZAaqg_uSZ9I18pNUWAZoLfmMCXbmI5uERY5vM,2007
35
- deriva_ml-1.14.30.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
36
- deriva_ml-1.14.30.dist-info/METADATA,sha256=c3IN9kLi-Es1kMa6LAxJ-hgr6BqFnOPfw7gd6o_xvpM,1034
37
- deriva_ml-1.14.30.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
38
- deriva_ml-1.14.30.dist-info/entry_points.txt,sha256=dkf_z7E4V6_3_5Xjsm0hcixNg6ASHDw6NfYQuBvF1Wc,363
39
- deriva_ml-1.14.30.dist-info/top_level.txt,sha256=I1Q1dkH96cRghdsFRVqwpa2M7IqJpR2QPUNNc5-Bnpw,10
40
- deriva_ml-1.14.30.dist-info/RECORD,,
35
+ deriva_ml-1.14.32.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
36
+ deriva_ml-1.14.32.dist-info/METADATA,sha256=_asZgskBD4cnJX51XQZCe97TSTNswWzAREQSyCA1uLs,1065
37
+ deriva_ml-1.14.32.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
38
+ deriva_ml-1.14.32.dist-info/entry_points.txt,sha256=dkf_z7E4V6_3_5Xjsm0hcixNg6ASHDw6NfYQuBvF1Wc,363
39
+ deriva_ml-1.14.32.dist-info/top_level.txt,sha256=I1Q1dkH96cRghdsFRVqwpa2M7IqJpR2QPUNNc5-Bnpw,10
40
+ deriva_ml-1.14.32.dist-info/RECORD,,