14
0
Files
python-APScheduler/python-APScheduler.spec
Matej Cepl 8c252a93db Accepting request 1240027 from home:glaubitz:branches:devel:languages:python
- Update to 3.11.0
  * Dropped support for Python 3.6 and 3.7
  * Added support for ZoneInfo time zones and deprecated support
    for pytz time zones
  * Added CalendarIntervalTrigger, backported from the 4.x series
  * Added the ability to export and import jobs via
    scheduler.export_jobs() and scheduler.import_jobs(),
    respectively
  * Removed the dependency on six
  * Changed ProcessPoolExecutor to spawn new subprocesses from scratch
    instead of forking on all platform
  * Fixed AsyncIOScheduler inadvertently creating a defunct event loop at
    start, leading to the scheduler not working at all
  * Fixed ProcessPoolExecutor not respecting the passed keyword arguments
    when a broken pool was being replaced
- Adjust upstream source name in spec file
- Switch build system from setuptools to pyproject.toml
  * Add python-pip and python-wheel to BuildRequires
  * Replace %python_build with %pyproject_wheel
  * Replace %python_install with %pyproject_install

OBS-URL: https://build.opensuse.org/request/show/1240027
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-APScheduler?expand=0&rev=56
2025-01-25 22:00:14 +00:00

111 lines
3.5 KiB
RPMSpec

#
# spec file for package python-APScheduler
#
# Copyright (c) 2025 SUSE LLC
#
# 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 https://bugs.opensuse.org/
#
%{?sle15_python_module_pythons}
Name: python-APScheduler
Version: 3.11.0
Release: 0
Summary: In-process task scheduler with Cron-like capabilities
License: MIT
URL: https://github.com/agronholm/apscheduler
Source: https://files.pythonhosted.org/packages/source/a/apscheduler/apscheduler-%{version}.tar.gz
BuildRequires: %{python_module SQLAlchemy >= 1.4}
BuildRequires: %{python_module Twisted}
BuildRequires: %{python_module gevent}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module pytest-tornado}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module pytz}
BuildRequires: %{python_module setuptools >= 36.2.7}
BuildRequires: %{python_module setuptools_scm >= 1.7.0}
BuildRequires: %{python_module six >= 1.4.0}
BuildRequires: %{python_module tornado}
BuildRequires: %{python_module tzlocal >= 2.0}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-pytz
Requires: python-six >= 1.4.0
Requires: python-tzlocal >= 2.0
Recommends: python-SQLAlchemy >= 1.4
Recommends: python-Twisted
Recommends: python-gevent
Suggests: python-kazoo
Suggests: python-pymongo >= 3.0
Suggests: python-redis
Suggests: python-tornado >= 4.3
BuildArch: noarch
%if %{with python2}
BuildRequires: python-funcsigs
BuildRequires: python-futures
BuildRequires: python-mock
BuildRequires: python-trollius
%endif
%ifpython2
Requires: python-funcsigs
Requires: python-futures
Requires: python-trollius
%endif
%python_subpackages
%description
Advanced Python Scheduler (APScheduler) is an in-process task
scheduler that lets you schedule jobs (functions or any python callables) to be
executed at any time of your choosing.
This can be an alternative to externally run cron scripts for
long-running applications (e.g. web applications), as it is platform neutral
and can access the application's variables and functions.
APscheduler provides multiple job stores.
* Configurable scheduling mechanisms (triggers):
* Cron-like scheduling
* Delayed scheduling of single run jobs (like the UNIX "at" command)
* Interval-based (run a job at specified time intervals)
* Multiple, simultaneously active job stores:
* RAM
* File-based simple database (shelve)
* SQLAlchemy (any supported RDBMS works)
* MongoDB
%prep
%setup -q -n apscheduler-%{version}
sed -i 's/--cov//' setup.cfg
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
# https://github.com/agronholm/apscheduler/issues/601
%pytest -k 'not test_broken_pool'
%files %{python_files}
%license LICENSE.txt
%doc README.rst
%doc examples/
%{python_sitelib}/apscheduler
%{python_sitelib}/APScheduler-%{version}*-info
%changelog