sapiopycommons 2025.3.25a459__py3-none-any.whl → 2025.3.27a461__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 sapiopycommons might be problematic. Click here for more details.
- sapiopycommons/eln/experiment_handler.py +8 -3
- sapiopycommons/general/sapio_links.py +4 -12
- {sapiopycommons-2025.3.25a459.dist-info → sapiopycommons-2025.3.27a461.dist-info}/METADATA +1 -1
- {sapiopycommons-2025.3.25a459.dist-info → sapiopycommons-2025.3.27a461.dist-info}/RECORD +6 -9
- sapiopycommons/ai/__init__.py +0 -0
- sapiopycommons/ai/tool_of_tools.py +0 -917
- sapiopycommons/general/html_formatter.py +0 -456
- {sapiopycommons-2025.3.25a459.dist-info → sapiopycommons-2025.3.27a461.dist-info}/WHEEL +0 -0
- {sapiopycommons-2025.3.25a459.dist-info → sapiopycommons-2025.3.27a461.dist-info}/licenses/LICENSE +0 -0
|
@@ -590,6 +590,9 @@ class ExperimentHandler:
|
|
|
590
590
|
"""
|
|
591
591
|
Set the experiment's status to Completed. Makes a webservice call to update the experiment. Checks if the
|
|
592
592
|
experiment is already completed, and does nothing if so.
|
|
593
|
+
|
|
594
|
+
NOTE: This will cause the usual process tracking logic to run as if you'd clicked the "Complete Experiment"
|
|
595
|
+
toolbar button. This includes moving the in process samples forward to the next step in the process.
|
|
593
596
|
"""
|
|
594
597
|
if not self.experiment_is_complete():
|
|
595
598
|
self._protocol.complete_protocol()
|
|
@@ -600,9 +603,11 @@ class ExperimentHandler:
|
|
|
600
603
|
Set the experiment's status to Canceled. Makes a webservice call to update the experiment. Checks if the
|
|
601
604
|
experiment is already canceled, and does nothing if so.
|
|
602
605
|
|
|
603
|
-
NOTE: This will
|
|
604
|
-
|
|
605
|
-
|
|
606
|
+
NOTE: This will cause the usual process tracking logic to run as if you'd clicked the "Cancel Experiment"
|
|
607
|
+
toolbar button. This includes moving the in process samples back into the process queue for the current step.
|
|
608
|
+
|
|
609
|
+
On version 24.12 and earlier, this was not the case, as the process tracking logic was tied to the button
|
|
610
|
+
instead of being on the experiment status change.
|
|
606
611
|
"""
|
|
607
612
|
if not self.experiment_is_canceled():
|
|
608
613
|
self._protocol.cancel_protocol()
|
|
@@ -10,8 +10,7 @@ class SapioNavigationLinker:
|
|
|
10
10
|
Given a URL to a system's webservice API (example: https://company.exemplareln.com/webservice/api), construct
|
|
11
11
|
URLs for navigation links to various locations in the system.
|
|
12
12
|
"""
|
|
13
|
-
|
|
14
|
-
webservice_url: str
|
|
13
|
+
base_url: str
|
|
15
14
|
|
|
16
15
|
def __init__(self, url: str | SapioUser | SapioWebhookContext):
|
|
17
16
|
"""
|
|
@@ -22,14 +21,7 @@ class SapioNavigationLinker:
|
|
|
22
21
|
url = url.user.url
|
|
23
22
|
elif isinstance(url, SapioUser):
|
|
24
23
|
url = url.url
|
|
25
|
-
self.
|
|
26
|
-
self.client_url = url.rstrip("/").replace('webservice/api', 'veloxClient')
|
|
27
|
-
|
|
28
|
-
def homepage(self) -> str:
|
|
29
|
-
"""
|
|
30
|
-
:return: A URL for navigating to the system's homepage.
|
|
31
|
-
"""
|
|
32
|
-
return self.client_url + "/#view=homepage"
|
|
24
|
+
self.base_url = url.rstrip("/").replace('webservice/api', 'veloxClient')
|
|
33
25
|
|
|
34
26
|
def data_record(self, record_identifier: RecordIdentifier, data_type_name: DataTypeIdentifier | None = None) -> str:
|
|
35
27
|
"""
|
|
@@ -47,7 +39,7 @@ class SapioNavigationLinker:
|
|
|
47
39
|
if not data_type_name:
|
|
48
40
|
raise SapioException("Unable to create a data record link without a data type name. "
|
|
49
41
|
"Only a record ID was provided.")
|
|
50
|
-
return self.
|
|
42
|
+
return self.base_url + f"/#dataType={data_type_name};recordId={record_id};view=dataRecord"
|
|
51
43
|
|
|
52
44
|
def experiment(self, experiment: ExperimentIdentifier) -> str:
|
|
53
45
|
"""
|
|
@@ -55,4 +47,4 @@ class SapioNavigationLinker:
|
|
|
55
47
|
object, experiment protocol, or a notebook ID.
|
|
56
48
|
:return: A URL for navigating to the input experiment.
|
|
57
49
|
"""
|
|
58
|
-
return self.
|
|
50
|
+
return self.base_url + f"/#notebookExperimentId={AliasUtil.to_notebook_id(experiment)};view=eln"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: sapiopycommons
|
|
3
|
-
Version: 2025.3.
|
|
3
|
+
Version: 2025.3.27a461
|
|
4
4
|
Summary: Official Sapio Python API Utilities Package
|
|
5
5
|
Project-URL: Homepage, https://github.com/sapiosciences
|
|
6
6
|
Author-email: Jonathan Steck <jsteck@sapiosciences.com>, Yechen Qiao <yqiao@sapiosciences.com>
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
sapiopycommons/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
sapiopycommons/ai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
sapiopycommons/ai/tool_of_tools.py,sha256=zYmQ4rNX-qYQnc-vNDnYZjtv9JgmQAmVVuHfVOdBF3w,46984
|
|
4
2
|
sapiopycommons/callbacks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
3
|
sapiopycommons/callbacks/callback_util.py,sha256=sz76LzD9sVLPMcoOpmzPe1aILGXcpHfyZ-qex8oR11c,130849
|
|
6
4
|
sapiopycommons/callbacks/field_builder.py,sha256=p2XacN99MuKk3ite8GAqstUMpixqugul2CsC4gB83-o,38620
|
|
@@ -17,7 +15,7 @@ sapiopycommons/datatype/attachment_util.py,sha256=N-nhsJ0oxa_Ft6Y6VWeNFYLzfuQqsj
|
|
|
17
15
|
sapiopycommons/datatype/data_fields.py,sha256=pczUlEcE0TeHEDU0Gkvu7voacSLPXCB7l9UbI1Tb6V0,5656
|
|
18
16
|
sapiopycommons/datatype/pseudo_data_types.py,sha256=6TG7aJxgmUZ8FQkWBcgmbK5oy7AFFNtKOPpi1w1OOYA,27657
|
|
19
17
|
sapiopycommons/eln/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
-
sapiopycommons/eln/experiment_handler.py,sha256=
|
|
18
|
+
sapiopycommons/eln/experiment_handler.py,sha256=d99KHi9AV_sFTXH2jbm3OQhUeAUygzxJRSnOnHdEL2U,123667
|
|
21
19
|
sapiopycommons/eln/experiment_report_util.py,sha256=NNNNPVD3_2ZAjoOqCMOnlnmPD0SCjDcgYi453ATSJBs,37027
|
|
22
20
|
sapiopycommons/eln/experiment_tags.py,sha256=7-fpOiSqrjbXmWIJhEhaxMgLsVCPAtKqH8xRzpDVKoE,356
|
|
23
21
|
sapiopycommons/eln/plate_designer.py,sha256=ix2cflz13PAHyu4deS3d5Qd3kQXk0C7IQxBQ2Dm9fEM,13692
|
|
@@ -38,9 +36,8 @@ sapiopycommons/general/audit_log.py,sha256=KQq0PsvukUoE3l6TQb3-vpu5-MbSINpWlnQ9e
|
|
|
38
36
|
sapiopycommons/general/custom_report_util.py,sha256=NwwmejSQLwSbrndEk1gPyFNYk9GZoS7Wrp9ab9moFgw,18014
|
|
39
37
|
sapiopycommons/general/directive_util.py,sha256=7SeQrd2Ye5JHlXZtJZaVGgtaSLdq_Vm9EObuxf44Pz8,3905
|
|
40
38
|
sapiopycommons/general/exceptions.py,sha256=aPlzK1cvxeMU5UsokYlLrIBGltUfJZ7LH8zvLh9DxpI,3233
|
|
41
|
-
sapiopycommons/general/html_formatter.py,sha256=HE3OeGgwOw6x53zGSc4-UzP4-JoOmQIz3pX-DzNVg94,17138
|
|
42
39
|
sapiopycommons/general/popup_util.py,sha256=HKILegU1uCL_6abNlNL0Wn3xgX2JNa_kJeq7e5CZu6Q,31923
|
|
43
|
-
sapiopycommons/general/sapio_links.py,sha256=
|
|
40
|
+
sapiopycommons/general/sapio_links.py,sha256=o9Z-8y2rz6AI0Cy6tq58ElPge9RBnisGc9NyccbaJxs,2610
|
|
44
41
|
sapiopycommons/general/storage_util.py,sha256=ovmK_jN7v09BoX07XxwShpBUC5WYQOM7dbKV_VeLXJU,8892
|
|
45
42
|
sapiopycommons/general/time_util.py,sha256=jU1urPoZRv6evNucR0-288EyT4PrsDpCr-H1-7BKq9A,12363
|
|
46
43
|
sapiopycommons/multimodal/multimodal.py,sha256=PFaGJPbKvW__tnxb8KkgkJZOKjQdgxF_kGfD5chet1s,6779
|
|
@@ -60,7 +57,7 @@ sapiopycommons/webhook/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
|
|
|
60
57
|
sapiopycommons/webhook/webhook_context.py,sha256=D793uLsb1691SalaPnBUk3rOSxn_hYLhdvkaIxjNXss,1909
|
|
61
58
|
sapiopycommons/webhook/webhook_handlers.py,sha256=L0HetSm43NvA5KyW3xbLpGFh2DbAaeZJVtXIEl2fvV8,39689
|
|
62
59
|
sapiopycommons/webhook/webservice_handlers.py,sha256=Y5dHx_UFWFuSqaoPL6Re-fsKYRuxvCWZ8bj6KSZ3jfM,14285
|
|
63
|
-
sapiopycommons-2025.3.
|
|
64
|
-
sapiopycommons-2025.3.
|
|
65
|
-
sapiopycommons-2025.3.
|
|
66
|
-
sapiopycommons-2025.3.
|
|
60
|
+
sapiopycommons-2025.3.27a461.dist-info/METADATA,sha256=RtSeg9hG0LT9gTvcfMwuBBLsZ2DwtKy9EudHL6-h1oQ,3143
|
|
61
|
+
sapiopycommons-2025.3.27a461.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
|
|
62
|
+
sapiopycommons-2025.3.27a461.dist-info/licenses/LICENSE,sha256=HyVuytGSiAUQ6ErWBHTqt1iSGHhLmlC8fO7jTCuR8dU,16725
|
|
63
|
+
sapiopycommons-2025.3.27a461.dist-info/RECORD,,
|
sapiopycommons/ai/__init__.py
DELETED
|
File without changes
|