15
0

Accepting request 605859 from devel:languages:python:misc

Keep running python function until condition is met

OBS-URL: https://build.opensuse.org/request/show/605859
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-backoff?expand=0&rev=1
This commit is contained in:
Todd R
2018-05-09 18:29:03 +00:00
committed by Git OBS Bridge
commit 72cb4b398d
5 changed files with 103 additions and 0 deletions

64
python-backoff.spec Normal file
View File

@@ -0,0 +1,64 @@
#
# spec file for package python-backoff
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%bcond_without test
Name: python-backoff
Version: 1.5.0
Release: 0
License: MIT
Summary: Function decoration for backoff and retry
Url: https://github.com/litl/backoff
Group: Development/Languages/Python
Source: https://files.pythonhosted.org/packages/source/b/backoff/backoff-%{version}.tar.gz
BuildRequires: python-rpm-macros
BuildRequires: %{python_module devel}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildArch: noarch
%python_subpackages
%description
This module provides function decorators which can be used to wrap a
function such that it will be retried until some condition is met. It
is meant to be of use when accessing unreliable resources with the
potential for intermittent failures i.e. network resources and external
APIs. Somewhat more generally, it may also be of use for dynamically
polling resources for externally generated content.
Decorators support both regular functions for synchronous code and
`asyncio <https://docs.python.org/3/library/asyncio.html>`_'s coroutines
for asynchronous code.
%prep
%setup -q -n backoff-%{version}
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%files %{python_files}
%defattr(-,root,root,-)
%doc README.rst
%license LICENSE
%{python_sitelib}/*
%changelog