sapiopycommons 2025.9.23a765__tar.gz → 2025.10.1a770__tar.gz
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-2025.9.23a765 → sapiopycommons-2025.10.1a770}/PKG-INFO +1 -1
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/pyproject.toml +1 -1
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/server.py +7 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/tool_service_base.py +15 -0
- sapiopycommons-2025.9.23a765/src/sapiopycommons/ai/tool_of_tools.py +0 -917
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/.gitignore +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/LICENSE +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/README.md +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/converter_service_base.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/fielddefinitions/fields_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/fielddefinitions/fields_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/fielddefinitions/fields_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/fielddefinitions/velox_field_def_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/fielddefinitions/velox_field_def_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/fielddefinitions/velox_field_def_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/converter/converter_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/converter/converter_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/converter/converter_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/item/item_container_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/item/item_container_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/item/item_container_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/script/script_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/script/script_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/script/script_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/step_output_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/step_output_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/step_output_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/step_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/step_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/step_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/tool/entry_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/tool/entry_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/tool/entry_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/tool/tool_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/tool/tool_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/plan/tool/tool_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/session/sapio_conn_info_pb2.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/session/sapio_conn_info_pb2.pyi +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protoapi/session/sapio_conn_info_pb2_grpc.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/protobuf_utils.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/test_client.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/callbacks/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/callbacks/callback_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/callbacks/field_builder.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/chem/IndigoMolecules.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/chem/Molecules.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/chem/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/customreport/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/customreport/auto_pagers.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/customreport/column_builder.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/customreport/custom_report_builder.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/customreport/term_builder.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/datatype/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/datatype/attachment_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/datatype/data_fields.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/datatype/pseudo_data_types.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/experiment_cache.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/experiment_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/experiment_report_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/experiment_step_factory.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/experiment_tags.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/plate_designer.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/eln/step_creation.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/assay_plate_reader.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/complex_data_loader.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_bridge.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_bridge_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_data_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_text_converter.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_validator.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/file_writer.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/files/temp_files.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/flowcyto/flow_cyto.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/flowcyto/flowcyto_data.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/accession_service.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/aliases.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/audit_log.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/custom_report_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/data_structure_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/directive_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/exceptions.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/html_formatter.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/popup_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/sapio_links.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/storage_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/general/time_util.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/multimodal/multimodal.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/multimodal/multimodal_data.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/processtracking/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/processtracking/custom_workflow_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/processtracking/endpoints.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/recordmodel/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/recordmodel/record_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/rules/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/rules/eln_rule_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/rules/on_save_rule_handler.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/samples/aliquot.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/sftpconnect/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/sftpconnect/sftp_builder.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/webhook/__init__.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/webhook/webhook_context.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/webhook/webhook_handlers.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/webhook/webservice_handlers.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/AF-A0A009IHW8-F1-model_v4.cif +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/_do_not_add_init_py_here +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/accession_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/aliquot_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/assay_plate_reader/BMGLabtech96.txt +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/assay_plate_reader/assay_plate_processing_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/bio_reg_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/chem_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/chem_test_curation_queue.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/curation_queue_test.sdf +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/data_type_models.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/file_compression_tests.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/flowcyto/8_color_ICS.wsp +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/flowcyto_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/kappa.chains.fasta +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/mafft_test.py +0 -0
- {sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/tests/test.gb +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: sapiopycommons
|
|
3
|
-
Version: 2025.
|
|
3
|
+
Version: 2025.10.1a770
|
|
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>
|
{sapiopycommons-2025.9.23a765 → sapiopycommons-2025.10.1a770}/src/sapiopycommons/ai/server.py
RENAMED
|
@@ -127,6 +127,13 @@ class SapioGrpcServer:
|
|
|
127
127
|
print(f"Registering Tool service: {service.__class__.__name__}")
|
|
128
128
|
add_ToolServiceServicer_to_server(service, server)
|
|
129
129
|
|
|
130
|
+
from grpc_health.v1 import health_pb2, health_pb2_grpc
|
|
131
|
+
from grpc_health.v1.health import HealthServicer
|
|
132
|
+
health_servicer = HealthServicer()
|
|
133
|
+
health_servicer.set("", health_pb2.HealthCheckResponse.ServingStatus.SERVING)
|
|
134
|
+
health_servicer.set("ScriptService", health_pb2.HealthCheckResponse.ServingStatus.SERVING)
|
|
135
|
+
health_pb2_grpc.add_HealthServicer_to_server(health_servicer, server)
|
|
136
|
+
|
|
130
137
|
server.add_insecure_port(f"[::]:{self.port}")
|
|
131
138
|
await server.start()
|
|
132
139
|
print(f"Server started, listening on {self.port}")
|
|
@@ -1097,3 +1097,18 @@ class ToolBase(ABC):
|
|
|
1097
1097
|
elif value is not None:
|
|
1098
1098
|
ret_val.append(value)
|
|
1099
1099
|
return ret_val
|
|
1100
|
+
|
|
1101
|
+
@staticmethod
|
|
1102
|
+
def flatten_text(text_data: list[str]) -> list[str]:
|
|
1103
|
+
"""
|
|
1104
|
+
From a list of strings that come from a text input, flatten the list by splitting each string on newlines and
|
|
1105
|
+
stripping whitespace. Empty lines will be removed.
|
|
1106
|
+
|
|
1107
|
+
:param text_data: The text data to flatten.
|
|
1108
|
+
:return: A flattened list of strings.
|
|
1109
|
+
"""
|
|
1110
|
+
ret_val: list[str] = []
|
|
1111
|
+
for entry in text_data:
|
|
1112
|
+
lines: list[str] = [x.strip() for x in entry.splitlines() if x.strip()]
|
|
1113
|
+
ret_val.extend(lines)
|
|
1114
|
+
return ret_val
|