pybiolib 1.2.494__tar.gz → 1.2.500__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.
Files changed (124) hide show
  1. {pybiolib-1.2.494 → pybiolib-1.2.500}/PKG-INFO +1 -1
  2. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/resource.py +4 -0
  3. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/experiments/experiment.py +6 -6
  4. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/jobs/job.py +13 -0
  5. {pybiolib-1.2.494 → pybiolib-1.2.500}/pyproject.toml +1 -1
  6. {pybiolib-1.2.494 → pybiolib-1.2.500}/LICENSE +0 -0
  7. {pybiolib-1.2.494 → pybiolib-1.2.500}/PYPI_README.md +0 -0
  8. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/__init__.py +0 -0
  9. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_data_record/data_record.py +0 -0
  10. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/__init__.py +0 -0
  11. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/data_record/__init__.py +0 -0
  12. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/data_record/data_record.py +0 -0
  13. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/data_record/push_data.py +0 -0
  14. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/data_record/remote_storage_endpoint.py +0 -0
  15. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/file_utils.py +0 -0
  16. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/fuse_mount/__init__.py +0 -0
  17. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/fuse_mount/experiment_fuse_mount.py +0 -0
  18. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/http_client.py +0 -0
  19. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/lfs/__init__.py +0 -0
  20. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/lfs/cache.py +0 -0
  21. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/libs/__init__.py +0 -0
  22. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/libs/fusepy/__init__.py +0 -0
  23. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/push_application.py +0 -0
  24. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/runtime.py +0 -0
  25. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/__init__.py +0 -0
  26. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/app.py +0 -0
  27. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/data_record.py +0 -0
  28. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/experiment.py +0 -0
  29. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/file_node.py +0 -0
  30. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/resource_version.py +0 -0
  31. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/types/typing.py +0 -0
  32. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/utils/__init__.py +0 -0
  33. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_internal/utils/multinode.py +0 -0
  34. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/_runtime/runtime.py +0 -0
  35. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/api/__init__.py +0 -0
  36. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/api/client.py +0 -0
  37. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/app/__init__.py +0 -0
  38. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/app/app.py +0 -0
  39. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/app/search_apps.py +0 -0
  40. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/__init__.py +0 -0
  41. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/api_client.py +0 -0
  42. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/app_types.py +0 -0
  43. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/auth.py +0 -0
  44. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/biolib_app_api.py +0 -0
  45. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/biolib_job_api.py +0 -0
  46. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/common_types.py +0 -0
  47. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/job_types.py +0 -0
  48. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/lfs_types.py +0 -0
  49. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_api_client/user_state.py +0 -0
  50. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/__init__.py +0 -0
  51. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/base_bbf_package.py +0 -0
  52. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/file_in_container.py +0 -0
  53. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/module_input.py +0 -0
  54. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/module_output_v2.py +0 -0
  55. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/remote_endpoints.py +0 -0
  56. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/remote_stream_seeker.py +0 -0
  57. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/saved_job.py +0 -0
  58. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/stdout_and_stderr.py +0 -0
  59. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/system_exception.py +0 -0
  60. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/system_status_update.py +0 -0
  61. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_binary_format/utils.py +0 -0
  62. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_docker_client/__init__.py +0 -0
  63. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_download_container.py +0 -0
  64. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_errors.py +0 -0
  65. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/biolib_logging.py +0 -0
  66. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/__init__.py +0 -0
  67. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/auth.py +0 -0
  68. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/data_record.py +0 -0
  69. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/download_container.py +0 -0
  70. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/init.py +0 -0
  71. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/lfs.py +0 -0
  72. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/push.py +0 -0
  73. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/run.py +0 -0
  74. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/runtime.py +0 -0
  75. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/cli/start.py +0 -0
  76. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/.gitignore +0 -0
  77. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/__init__.py +0 -0
  78. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/cloud_utils/__init__.py +0 -0
  79. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/cloud_utils/cloud_utils.py +0 -0
  80. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/__init__.py +0 -0
  81. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/cache_state.py +0 -0
  82. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/cache_types.py +0 -0
  83. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/docker_image_cache.py +0 -0
  84. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/executors/__init__.py +0 -0
  85. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/executors/docker_executor.py +0 -0
  86. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/executors/docker_types.py +0 -0
  87. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/executors/tars/__init__.py +0 -0
  88. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/executors/types.py +0 -0
  89. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/job_legacy_input_wait_timeout_thread.py +0 -0
  90. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/job_max_runtime_timer_thread.py +0 -0
  91. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/job_storage.py +0 -0
  92. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/job_worker.py +0 -0
  93. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/large_file_system.py +0 -0
  94. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/mappings.py +0 -0
  95. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/utilization_reporter_thread.py +0 -0
  96. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/job_worker/utils.py +0 -0
  97. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/remote_host_proxy.py +0 -0
  98. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/socker_listener_thread.py +0 -0
  99. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/socket_sender_thread.py +0 -0
  100. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/utils.py +0 -0
  101. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/webserver/__init__.py +0 -0
  102. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/webserver/gunicorn_flask_application.py +0 -0
  103. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/webserver/webserver.py +0 -0
  104. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/webserver/webserver_types.py +0 -0
  105. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/webserver/webserver_utils.py +0 -0
  106. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/compute_node/webserver/worker_thread.py +0 -0
  107. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/experiments/__init__.py +0 -0
  108. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/jobs/__init__.py +0 -0
  109. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/jobs/job_result.py +0 -0
  110. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/jobs/types.py +0 -0
  111. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/runtime/__init__.py +0 -0
  112. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/sdk/__init__.py +0 -0
  113. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/tables.py +0 -0
  114. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/templates/__init__.py +0 -0
  115. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/templates/example_app.py +0 -0
  116. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/typing_utils.py +0 -0
  117. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/user/__init__.py +0 -0
  118. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/user/sign_in.py +0 -0
  119. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/utils/__init__.py +0 -0
  120. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/utils/app_uri.py +0 -0
  121. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/utils/cache_state.py +0 -0
  122. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/utils/multipart_uploader.py +0 -0
  123. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/utils/seq_util.py +0 -0
  124. {pybiolib-1.2.494 → pybiolib-1.2.500}/biolib/utils/zip/remote_zip.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pybiolib
3
- Version: 1.2.494
3
+ Version: 1.2.500
4
4
  Summary: BioLib Python Client
5
5
  License: MIT
6
6
  Keywords: biolib
@@ -9,6 +9,10 @@ class ResourceDict(TypedDict):
9
9
  uri: str
10
10
  name: str
11
11
  created_at: str
12
+ description: str
13
+
14
+
15
+ class ResourceDetailedDict(ResourceDict):
12
16
  app: Optional[AppSlimDict]
13
17
  data_record: Optional[DataRecordSlimDict]
14
18
  experiment: Optional[ExperimentSlimDict]
@@ -22,8 +22,8 @@ class Experiment:
22
22
  }
23
23
  )
24
24
 
25
- def __init__(self, uri: str, _resource_dict: Optional[_types.ResourceDict] = None):
26
- self._resource_dict: _types.ResourceDict = _resource_dict or self._get_or_create_resource_dict(uri)
25
+ def __init__(self, uri: str, _resource_dict: Optional[_types.ResourceDetailedDict] = None):
26
+ self._resource_dict: _types.ResourceDetailedDict = _resource_dict or self._get_or_create_resource_dict(uri)
27
27
 
28
28
  def __enter__(self):
29
29
  Experiment._BIOLIB_EXPERIMENTS.append(self)
@@ -75,7 +75,7 @@ class Experiment:
75
75
  @staticmethod
76
76
  def get_by_uri(uri: str) -> 'Experiment':
77
77
  query_param_key = 'uri' if '/' in uri else 'name'
78
- resource_dict: _types.ResourceDict = api.client.get('/resource/', params={query_param_key: uri}).json()
78
+ resource_dict: _types.ResourceDetailedDict = api.client.get('/resource/', params={query_param_key: uri}).json()
79
79
  if not resource_dict['experiment']:
80
80
  raise ValueError(f'Resource {uri} is not an experiment')
81
81
 
@@ -197,15 +197,15 @@ class Experiment:
197
197
  self._refetch()
198
198
 
199
199
  @staticmethod
200
- def _get_resource_dict_by_uuid(uuid: str) -> _types.ResourceDict:
201
- resource_dict: _types.ResourceDict = api.client.get(f'/resources/{uuid}/').json()
200
+ def _get_resource_dict_by_uuid(uuid: str) -> _types.ResourceDetailedDict:
201
+ resource_dict: _types.ResourceDetailedDict = api.client.get(f'/resources/{uuid}/').json()
202
202
  if not resource_dict['experiment']:
203
203
  raise ValueError('Resource from URI is not an experiment')
204
204
 
205
205
  return resource_dict
206
206
 
207
207
  @staticmethod
208
- def _get_or_create_resource_dict(uri: str) -> _types.ResourceDict:
208
+ def _get_or_create_resource_dict(uri: str) -> _types.ResourceDetailedDict:
209
209
  response_dict = api.client.post(path='/experiments/', data={'uri' if '/' in uri else 'name': uri}).json()
210
210
  return Experiment._get_resource_dict_by_uuid(uuid=response_dict['uuid'])
211
211
 
@@ -217,6 +217,19 @@ class Job:
217
217
  except Exception as error:
218
218
  logger.error(f'Failed to cancel job {self._uuid} due to: {error}')
219
219
 
220
+ def rename(self, name: str) -> None:
221
+ try:
222
+ api.client.patch(
223
+ path=f'/jobs/{self._uuid}/main_result/',
224
+ headers={'Job-Auth-Token': self._auth_token} if self._auth_token else None,
225
+ data={'result_name_prefix': name},
226
+ )
227
+ self._refetch_job_dict(force_refetch=True)
228
+ updated_name = self.get_name()
229
+ logger.info(f'Job {self._uuid} renamed to "{updated_name}"')
230
+ except Exception as error:
231
+ raise BioLibError(f'Failed to rename job {self._uuid} due to: {error}') from error
232
+
220
233
  def recompute(self, app_uri: Optional[str] = None, machine: Optional[str] = None, blocking: bool = True) -> 'Job':
221
234
  app_response = BiolibAppApi.get_by_uri(uri=app_uri or self._job_dict['app_uri'])
222
235
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pybiolib"
3
- version = "1.2.494"
3
+ version = "1.2.500"
4
4
  description = "BioLib Python Client"
5
5
  readme = "PYPI_README.md"
6
6
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes