pybiolib 1.2.517__tar.gz → 1.2.520__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.
- {pybiolib-1.2.517 → pybiolib-1.2.520}/PKG-INFO +1 -1
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/jobs/job.py +39 -1
- {pybiolib-1.2.517 → pybiolib-1.2.520}/pyproject.toml +1 -1
- {pybiolib-1.2.517 → pybiolib-1.2.520}/LICENSE +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/PYPI_README.md +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_data_record/data_record.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/data_record/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/data_record/data_record.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/data_record/push_data.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/data_record/remote_storage_endpoint.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/file_utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/fuse_mount/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/fuse_mount/experiment_fuse_mount.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/http_client.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/lfs/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/lfs/cache.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/libs/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/libs/fusepy/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/push_application.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/runtime.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/app.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/data_record.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/experiment.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/file_node.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/resource.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/resource_version.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/types/typing.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/utils/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/utils/multinode.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_runtime/runtime.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/api/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/api/client.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/app/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/app/app.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/app/search_apps.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/api_client.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/app_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/auth.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/biolib_app_api.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/biolib_job_api.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/common_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/job_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/lfs_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_api_client/user_state.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/base_bbf_package.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/file_in_container.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/module_input.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/module_output_v2.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/remote_endpoints.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/remote_stream_seeker.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/saved_job.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/stdout_and_stderr.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/system_exception.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/system_status_update.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_binary_format/utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_docker_client/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_download_container.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_errors.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/biolib_logging.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/auth.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/data_record.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/download_container.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/init.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/lfs.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/push.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/run.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/runtime.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/cli/start.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/.gitignore +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/cloud_utils/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/cloud_utils/cloud_utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/cache_state.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/cache_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/docker_image_cache.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/docker_executor.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/docker_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/tars/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/job_legacy_input_wait_timeout_thread.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/job_max_runtime_timer_thread.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/job_storage.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/job_worker.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/large_file_system.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/mappings.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/utilization_reporter_thread.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/remote_host_proxy.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/socker_listener_thread.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/socket_sender_thread.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/gunicorn_flask_application.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/webserver.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/webserver_types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/webserver_utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/worker_thread.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/experiments/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/experiments/experiment.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/jobs/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/jobs/job_result.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/jobs/types.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/py.typed +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/runtime/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/sdk/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/tables.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/templates/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/templates/example_app.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/typing_utils.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/user/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/user/sign_in.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/utils/__init__.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/utils/app_uri.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/utils/cache_state.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/utils/multipart_uploader.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/utils/seq_util.py +0 -0
- {pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/utils/zip/remote_zip.py +0 -0
@@ -230,7 +230,35 @@ class Job:
|
|
230
230
|
except Exception as error:
|
231
231
|
raise BioLibError(f'Failed to rename job {self._uuid} due to: {error}') from error
|
232
232
|
|
233
|
-
def recompute(
|
233
|
+
def recompute(
|
234
|
+
self,
|
235
|
+
app_uri: Optional[str] = None,
|
236
|
+
machine: Optional[str] = None,
|
237
|
+
blocking: bool = True,
|
238
|
+
arguments: Optional[List[str]] = None,
|
239
|
+
) -> 'Job':
|
240
|
+
"""Recompute the job with the same input files but potentially different arguments.
|
241
|
+
|
242
|
+
Args:
|
243
|
+
app_uri (Optional[str], optional): The URI of the app to use for recomputation.
|
244
|
+
If None, uses the original app URI. Defaults to None.
|
245
|
+
machine (Optional[str], optional): The machine to run the job on.
|
246
|
+
If None, uses the original requested machine. Defaults to None.
|
247
|
+
blocking (bool, optional): Whether to block until the job completes.
|
248
|
+
If True, streams logs until completion. Defaults to True.
|
249
|
+
arguments (Optional[List[str]], optional): New arguments to use for the job.
|
250
|
+
If None, uses the original arguments. Defaults to None.
|
251
|
+
|
252
|
+
Returns:
|
253
|
+
Job: A new Job instance for the recomputed job.
|
254
|
+
|
255
|
+
Example::
|
256
|
+
>>> job = biolib.get_job("job_id")
|
257
|
+
>>> # Recompute with the same arguments
|
258
|
+
>>> new_job = job.recompute()
|
259
|
+
>>> # Recompute with different arguments
|
260
|
+
>>> new_job = job.recompute(arguments=["--new-arg", "value"])
|
261
|
+
"""
|
234
262
|
app_response = BiolibAppApi.get_by_uri(uri=app_uri or self._job_dict['app_uri'])
|
235
263
|
|
236
264
|
job_storage_input = RemoteJobStorageEndpoint(
|
@@ -241,6 +269,16 @@ class Job:
|
|
241
269
|
http_response = HttpClient.request(url=job_storage_input.get_remote_url())
|
242
270
|
module_input_serialized = http_response.content
|
243
271
|
|
272
|
+
# If arguments are provided, deserialize the module input, update the arguments, and serialize it again
|
273
|
+
if arguments is not None:
|
274
|
+
module_input = ModuleInput(module_input_serialized)
|
275
|
+
module_input_dict = module_input.deserialize()
|
276
|
+
|
277
|
+
# Create a new ModuleInput with updated arguments
|
278
|
+
module_input_serialized = ModuleInput().serialize(
|
279
|
+
stdin=module_input_dict['stdin'], arguments=arguments, files=module_input_dict['files']
|
280
|
+
)
|
281
|
+
|
244
282
|
original_requested_machine = (
|
245
283
|
self._job_dict['requested_machine'] if self._job_dict['requested_machine'] else None
|
246
284
|
)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/_internal/data_record/remote_storage_endpoint.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/docker_executor.py
RENAMED
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/docker_types.py
RENAMED
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/executors/tars/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/job_max_runtime_timer_thread.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/job_worker/utilization_reporter_thread.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pybiolib-1.2.517 → pybiolib-1.2.520}/biolib/compute_node/webserver/gunicorn_flask_application.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|