Fix slow clearml package import
Some checks failed
CodeQL / Analyze (python) (push) Has been cancelled

This commit is contained in:
clearml 2025-04-25 16:14:47 +03:00
parent 1a2d4749ad
commit 95baa6ba16
7 changed files with 18 additions and 18 deletions

View File

@ -167,7 +167,7 @@ class ScalarEvent(MetricsEventAdapter):
self._value = self._convert_np_nan_inf(value) self._value = self._convert_np_nan_inf(value)
super(ScalarEvent, self).__init__(metric=metric, variant=variant, iter=iter, **kwargs) super(ScalarEvent, self).__init__(metric=metric, variant=variant, iter=iter, **kwargs)
def get_api_event(self) -> events.MetricsScalarEvent: def get_api_event(self) -> "events.MetricsScalarEvent":
return events.MetricsScalarEvent(value=self._value, **self._get_base_dict()) return events.MetricsScalarEvent(value=self._value, **self._get_base_dict())
@ -180,7 +180,7 @@ class ConsoleEvent(MetricsEventAdapter):
self._worker = worker self._worker = worker
super(ConsoleEvent, self).__init__(metric=None, variant=None, iter=0, **kwargs) super(ConsoleEvent, self).__init__(metric=None, variant=None, iter=0, **kwargs)
def get_api_event(self) -> events.TaskLogEvent: def get_api_event(self) -> "events.TaskLogEvent":
return events.TaskLogEvent( return events.TaskLogEvent(
task=self._task, task=self._task,
timestamp=self._timestamp, timestamp=self._timestamp,
@ -197,7 +197,7 @@ class VectorEvent(MetricsEventAdapter):
self._values = [self._convert_np_nan_inf(v) for v in values] self._values = [self._convert_np_nan_inf(v) for v in values]
super(VectorEvent, self).__init__(metric=metric, variant=variant, iter=iter, **kwargs) super(VectorEvent, self).__init__(metric=metric, variant=variant, iter=iter, **kwargs)
def get_api_event(self) -> events.MetricsVectorEvent: def get_api_event(self) -> "events.MetricsVectorEvent":
return events.MetricsVectorEvent(values=self._values, **self._get_base_dict()) return events.MetricsVectorEvent(values=self._values, **self._get_base_dict())
@ -208,7 +208,7 @@ class PlotEvent(MetricsEventAdapter):
self._plot_str = plot_str self._plot_str = plot_str
super(PlotEvent, self).__init__(metric=metric, variant=variant, iter=iter, **kwargs) super(PlotEvent, self).__init__(metric=metric, variant=variant, iter=iter, **kwargs)
def get_api_event(self) -> events.MetricsPlotEvent: def get_api_event(self) -> "events.MetricsPlotEvent":
return events.MetricsPlotEvent(plot_str=self._plot_str, **self._get_base_dict()) return events.MetricsPlotEvent(plot_str=self._plot_str, **self._get_base_dict())
@ -219,7 +219,7 @@ class ImageEventNoUpload(MetricsEventAdapter):
self._key = urlunparse(("", "", parts.path, parts.params, parts.query, parts.fragment)) self._key = urlunparse(("", "", parts.path, parts.params, parts.query, parts.fragment))
super(ImageEventNoUpload, self).__init__(metric, variant, iter=iter, **kwargs) super(ImageEventNoUpload, self).__init__(metric, variant, iter=iter, **kwargs)
def get_api_event(self) -> events.MetricsImageEvent: def get_api_event(self) -> "events.MetricsImageEvent":
return events.MetricsImageEvent(url=self._url, key=self._key, **self._get_base_dict()) return events.MetricsImageEvent(url=self._url, key=self._key, **self._get_base_dict())
@ -481,7 +481,7 @@ class ImageEvent(UploadEvent):
**kwargs **kwargs
) )
def get_api_event(self) -> events.MetricsImageEvent: def get_api_event(self) -> "events.MetricsImageEvent":
return events.MetricsImageEvent(url=self._url, key=self._key, **self._get_base_dict()) return events.MetricsImageEvent(url=self._url, key=self._key, **self._get_base_dict())
@ -510,5 +510,5 @@ class MediaEvent(UploadEvent):
**kwargs **kwargs
) )
def get_api_event(self) -> events.MetricsImageEvent: def get_api_event(self) -> "events.MetricsImageEvent":
return events.MetricsImageEvent(url=self._url, key=self._key, **self._get_base_dict()) return events.MetricsImageEvent(url=self._url, key=self._key, **self._get_base_dict())

View File

@ -109,7 +109,7 @@ class Model(IdObjectBase, AsyncManagerMixin, _StorageUriMixin):
) )
) )
def _reload(self) -> Optional[models.Model]: def _reload(self) -> Optional["models.Model"]:
"""Reload the model object""" """Reload the model object"""
if self._offline_mode: if self._offline_mode:
return models.Model() return models.Model()

View File

@ -63,7 +63,7 @@ class HyperParams(object):
self, self,
iterables: Union[ iterables: Union[
Mapping[str, Union[str, Dict, None]], Mapping[str, Union[str, Dict, None]],
Iterable[Union[Dict, tasks.ParamsItem]], Iterable[Union[Dict, "tasks.ParamsItem"]],
], ],
replace: Optional[str] = None, replace: Optional[str] = None,
default_section: Optional[str] = None, default_section: Optional[str] = None,
@ -93,7 +93,7 @@ class HyperParams(object):
if not tasks.ReplaceHyperparamsEnum.has_value(replace): if not tasks.ReplaceHyperparamsEnum.has_value(replace):
replace = None replace = None
def make_item(value: Union[tasks.ParamsItem, dict, tuple], name: Optional[str] = None) -> tasks.ParamsItem: def make_item(value: Union["tasks.ParamsItem", dict, tuple], name: Optional[str] = None) -> "tasks.ParamsItem":
if isinstance(value, tasks.ParamsItem): if isinstance(value, tasks.ParamsItem):
a_item = value a_item = value
elif isinstance(value, dict): elif isinstance(value, dict):
@ -150,7 +150,7 @@ class HyperParams(object):
return False return False
def delete_hyper_params( def delete_hyper_params(
self, *iterables: Iterable[Union[dict, Iterable[str], tasks.ParamKey, tasks.ParamsItem]] self, *iterables: Iterable[Union[dict, Iterable[str], "tasks.ParamKey", "tasks.ParamsItem"]]
) -> bool: ) -> bool:
""" """
Delete hyper-parameters for this task. Delete hyper-parameters for this task.

View File

@ -63,7 +63,7 @@ class BackgroundLogService(BackgroundMonitor):
# flush all leftover events # flush all leftover events
self.send_all_records() self.send_all_records()
def _send_events(self, a_request: events.AddBatchRequest) -> None: def _send_events(self, a_request: "events.AddBatchRequest") -> None:
if not a_request or not a_request.requests: if not a_request or not a_request.requests:
return return
@ -143,7 +143,7 @@ class BackgroundLogService(BackgroundMonitor):
if buffer: if buffer:
self._send_records(buffer) self._send_records(buffer)
def _record_to_event(self, record: LogRecord) -> events.TaskLogEvent: def _record_to_event(self, record: LogRecord) -> "events.TaskLogEvent":
timestamp = int(record.created * 1000) timestamp = int(record.created * 1000)
if timestamp == self._last_timestamp: if timestamp == self._last_timestamp:
timestamp += self.counter timestamp += self.counter

View File

@ -1654,7 +1654,7 @@ class Task(IdObjectBase, AccessMixin, SetupUploadMixin):
else: else:
return self._get_task_property("execution.docker_cmd", raise_on_error=False, log_on_error=False) return self._get_task_property("execution.docker_cmd", raise_on_error=False, log_on_error=False)
def set_artifacts(self, artifacts_list: Sequence[tasks.Artifact] = None) -> Optional[List[tasks.Artifact]]: def set_artifacts(self, artifacts_list: Sequence["tasks.Artifact"] = None) -> Optional[List["tasks.Artifact"]]:
""" """
List of artifacts (tasks.Artifact) to update the task List of artifacts (tasks.Artifact) to update the task
@ -1675,7 +1675,7 @@ class Task(IdObjectBase, AccessMixin, SetupUploadMixin):
self._edit(execution=execution) self._edit(execution=execution)
return execution.artifacts or [] return execution.artifacts or []
def _add_artifacts(self, artifacts_list: Sequence[tasks.Artifact]) -> Optional[List[tasks.Artifact]]: def _add_artifacts(self, artifacts_list: Sequence["tasks.Artifact"]) -> Optional[List["tasks.Artifact"]]:
""" """
List of artifacts (tasks.Artifact) to add to the task List of artifacts (tasks.Artifact) to add to the task
If an artifact by the same name already exists it will overwrite the existing artifact. If an artifact by the same name already exists it will overwrite the existing artifact.

View File

@ -120,7 +120,7 @@ class Artifact(object):
""" """
return self._preview return self._preview
def __init__(self, artifact_api_object: tasks.Artifact) -> None: def __init__(self, artifact_api_object: "tasks.Artifact") -> None:
""" """
construct read-only object from api artifact object construct read-only object from api artifact object
@ -929,7 +929,7 @@ class Artifacts(object):
# create summary # create summary
self._summary = self._get_statistics() self._summary = self._get_statistics()
def _add_artifact(self, artifact: tasks.Artifact) -> None: def _add_artifact(self, artifact: "tasks.Artifact") -> None:
if not self._task: if not self._task:
raise ValueError("Task object not set") raise ValueError("Task object not set")
with self._task_edit_lock: with self._task_edit_lock:

View File

@ -5343,7 +5343,7 @@ class Task(_Task):
) )
@classmethod @classmethod
def __get_task_api_obj(cls, task_id: str, only_fields: Optional[List[str]] = None) -> Optional[tasks.Task]: def __get_task_api_obj(cls, task_id: str, only_fields: Optional[List[str]] = None) -> Optional["tasks.Task"]:
if not task_id or cls._offline_mode: if not task_id or cls._offline_mode:
return None return None