Utilities

async yadisk.utils.async_auto_retry(func: Callable[[], T] | Callable[[], Awaitable[T]], n_retries: int | None = None, retry_interval: int | float | None = None) T[source]

Attempt to perform a request with automatic retries. A retry is triggered by RequestError or RetriableYaDiskError.

Parameters:
  • func – function to run, must not require any arguments

  • n_retriesint, maximum number of retries

  • retry_intervalint or float, delay between retries (in seconds)

Returns:

return value of func()

yadisk.utils.auto_retry(func: Callable[[], T], n_retries: int | None = None, retry_interval: int | float | None = None) T[source]

Attempt to perform a request with automatic retries. A retry is triggered by RequestError or RetriableYaDiskError.

Parameters:
  • func – function to run, must not require any arguments

  • n_retriesint, maximum number of retries

  • retry_intervalint or float, delay between retries (in seconds)

Returns:

return value of func()

yadisk.utils.get_exception(response: Response | AsyncResponse, error: ErrorObject | None) YaDiskError[source]

Get an exception instance based on response, assuming the request has failed.

Parameters:
Returns:

an exception instance, subclass of YaDiskError