* Tue Nov 28 2017 sean.marlow@suse.com
- Fix six version requirement. >= 1.4.0.
* Mon Nov 27 2017 sean.marlow@suse.com
- Futures is only required for python2.
* Thu Sep 07 2017 sean.marlow@suse.com
- Funcsigs is only required for python2.
* Mon Aug 28 2017 bear454@opensuse.org
- Clarify requirement of 'tzlocal' dependency
* Wed Jul 12 2017 jengelh@inai.de
- Ensure neutrality of description, and remove unspecific mention
of Quartz' features.
* Wed Jul 12 2017 tbechtold@suse.com
update to version 3.3.1
* Updated the gevent test dependency to 1.1 final
* Simplified the tox.ini structure a little
* Zookeeper jobstore support (#144)
* rethinkdb_store.py edited online with Bitbucket
* Renamed pytest section in setup.cfg to avoid the warning
* All test for python 2.7 are now passing.
* Don't try to test rethinkdb on Python 3
* Install PyQt5 when testing on Python 3.5
* Shortened the ID column of the apscheduler_jobs table in the SQLAlchemy job store to accommodate MySQL limitations (again).
* Moved rethinkdb to common test requirements since it now works with Python 3
* Added time zone to the output of CronTrigger and IntervalTrigger
* Fixed compatibility with pymongo 3.0
* Fixed the asyncio scheduler example on Python < 3.3
* Fixed scheduler loop breaking if the job store fails (fixes #109)
* fix CronTrigger.get_next_fire_time() bug: calculate start_date problem
* Fixed the MongoDB job store repr() test to work with newer versions of PyMongo
* Fixed incorrect DateTrigger run time with run_date=None and a non-local timezone
* Small test cleanups
* Added the ability to pause and resume job processing in the scheduler
* Added tox.ini to MANIFEST.in
* All test completed
* Set a minimum version for tzlocal to prevent CentOS related issue reports
* Migrated to a more modern way for specifying conditional dependencies for wheels
* Reconfigured IRC notification settings to produce less noise
* Fixed a copy paste error in asyncio scheduler example docstring (#153)
* Fixed @scheduled_job not playing nice with persistent job stores (fixes #150)
* Restored backwards compatibility in the MongoDB job store and updated the version history
* add some CronTrigger tests
* Added an explicit note about the effects of misfire_grace_time
* Updated tox.ini to properly work with the latest versions of dependencies
* Re-enabled Python 3.3 testing on Travis
* Reverted the setuptools dependency bump
* Made "funcsigs" a mandatory dependency on Python 2
* Fixed wrong import in the triggers documentation
* Implemented __getstate__ and __setstate__ for trigger classes (fixes #121)
* Added the virtualenv directory to py.test excludes
* Fixed inconsistencies with __slots__
* Dropped PyPy3 tests/support
* Bumped up version to indicate development status
* Updated the changelog
* Store the test SQLite database in a temporary directory
* Improved the error message that comes when the local timezone cannot be determined (only on CentOS?) (fixes #87)
* Improved the IntervalTrigger's dst change test
* Updated jobstore related documentation and examples
* Added coroutine support for asyncio and Tornado executors (fixes #96, #98)
* Renamed ZookeeperJobStore to ZooKeeperJobStore
* Removed unnecessary port mappings for ZooKeeper
* Disabled Travis testing on Python 3.3 due to strange RethinkDB test failures
* Added missing py35 entry to tox's envlist
* Fixed _run_job_error() being called with the wrong number of arguments in most executors
* Allow unicode function references for jobs on Python 2
* Travis now has a recent enough PyPy that failures on it should no longer be tolerated
* Added example code for creating an RPC service around APScheduler
* Improved the test for ref_to_obj()
* Working on test
* Fixed a memory leak in the base executor class (thanks Stefan Nordhausen)
* Fixed minor issues with tests
* Corrected date strings in the interval example
* Changed cleanup requests in fixtures into yield_fixtures
* Fixed wrong job sort order in some job stores and a related exception in the redis store (fixes #86)
* Moved the connection logic in job stores to the start() method
* Documented the migration and the scheduler states
* Fixed BlockingScheduler, BackgroundScheduler and GeventScheduler incorrectly waiting MAX_WAIT_TIME when wait_seconds is 0
* Rearranged .gitignore and added "virtualenv"
* Added version history note for the MongoDB JobLookupError fix
* Upgraded setuptools requirement (fixes #123)
* Improve module import from ref (#149)
* Re-enabled coverage testing
* Use MongoDB through Docker as the mongodb service does not work as advertised
* Fixed endless loop with CronTrigger on computers with low clock resolution
* Initial commit for new rethinkdb jobstore for apscheduler 3.0
* Fixed start date getting set too far in the future in IntervalTrigger (fixes #70)
* Acquire locks before shutting down executors and job stores in shutdown() (fixes #104)
* Add license to MANIFEST.in
* Added tests for the import fix in ref_to_obj()
* Replace pytest's norecursedirs with testpaths in setup.cfg
* Fixed CronTrigger's range expression allowing values outside of the range
* Added missing EVENT_ALL_JOBS_REMOVED to EVENT_ALL
* Cleanup to fix flake8 tests
* Migrated to setuptools_scm
* Added rethinkdb to setup.py
* All tests are passing on python 2.7 except for the 3 same tests.
* Added .mailmap
* Fixed off-by-1-hour bug in cron trigger while crossing the DST threshold (fixes #115)
* PyPy/PyPy3 versions on Travis are very old so they should be allowed to fail
* Further simplified tox.ini
* Added tests and classifier for Python 3.6
* Modified get_callable_name() to work with a wider variety of callables
* Added Travis PyPI deploy configuration
* Migrated code to Github
* Added conditional dependencies to extras_require
* Fixed timezone in debug logging when displaying the next wakeup time
* Don't install Twisted on CPython 3.2 (needs unicode prefix support for string literals)
* Modified tox configuration to pass through arbitrary arguments to py.test
* Replaced custom log capture fixture with pytest-catchlog
* Added Travis and Coveralls badges to README
* Added EVENT_JOB_SUBMITTED and EVENT_JOB_MAX_INSTANCES events
* Rethinkdb Jobstore added
* Fixed positional weekday position expressions failing on Python 3
* Require a new enough version of setuptools for entry points to work properly
* Corrected contributor name
* Improved PEP 8 and PEP 257 compliancy
* Fixed flake8 complaints
* Fix typo in userguide.rst
* Removed redundant entries from tox.ini
* Fixed ValueError when the target callable has a default keyword argument that wasn't overridden
* Corrected the author name in setup.py
* Removed Python 3.2 test environment
* Fixed passing start_time and/or end_time to CronTrigger and IntervalTrigger as strings (fixes #164)
* Fixed infinite loop in the cron trigger if an expression only contained values out of range of the target field (fixes #105)
* Raise exception when attempting to serialize a job that doesn't have func_ref filled in
* Cleanups and fixes for the rethinkdb job store
* Specifying the gevent version isn't really necessary
* Added references to the trigger types to the user guide
* Added requirements.txt for building documentation
* Move the wakeup() call directly to BaseScheduler.start()
* Removed unused import
* Removed py.test harness and the conditional dependencies in install_requires
* Fixed wrong lock being used when removing executors
* Moved the badges to the top of README
* Updated tox-travis configuration syntax
* Replaced six.u('') with u''
* fixes add_executor while scheduler is running.
* Removed (official) Python 2.6 support
* Fixed next_run_time parser
* Removed Python 2.6 from the testing matrix
* Added pickling tests for triggers
* Cleaned up imports
* Finished up the pause/resume scheduler feature w/ docs
* Added Travis configuration
* moved rethinkdb.py to rethink_db.py because of conflicts of rethinkdb driver
* Fixed str(job) or unicode(job) raising an exception for pending jobs (fixes #67)
* Moved testing dependencies to extras from tox.ini
* Added rethinkdb to test suite
* Backtracked on enum use
* Skip missing interpreters when running tox
* Fixed MongoDB job store using id() instead of job id in JobLookupError
* Added support for rethinkdb
* Fixed flake8 error
* Use the official ZooKeeper image in Travis tests
* Removed erroneous changelog entry
* Added method chaining for some Job methods and related methods in the scheduler
* Update super call to support Python 2.7 (#171)
* Updated version history
* Wed Jul 12 2017 ms@suse.com
- Implement single-spec version
* Mon Sep 14 2015 ms@suse.com
- Package required in SLE12 due to fate#319400
* Sun Mar 29 2015 rjschwei@suse.com
- Update to version 3.0.2
+ Add new upstream dependencies:
~ python-futures
~ python-pytz
~ python-six
~ python-tzlocal
+ Contains incompatible changes to previous version
+ Fixed ValueError when the target callable has a default keyword
argument that wasn’t overridden
+ Fixed wrong job sort order in some job stores
+ Fixed exception when loading all jobs from the redis job store when
there are paused jobs in it
+ Fixed AttributeError when printing a job list when there were pending jobs
+ Added setuptools as an explicit requirement in install requirements
+ A wider variety of target callables can now be scheduled so that the
jobs are still serializable (static methods on Python 3.3+, unbound
methods on all except Python 3.2)
+ Attempting to serialize a non-serializable Job now raises a helpful
exception during serialization. Thanks to Jeremy Morgan for pointing
this out.
+ Fixed table creation with SQLAlchemyJobStore on MySQL/InnoDB
+ Fixed start date getting set too far in the future with a timezone
different from the local one
+ Fixed _run_job_error() being called with the incorrect number of
arguments in most executors
+ Added support for timezones (special thanks to Curtis Vogt for help
with this one)
+ Split the old Scheduler class into BlockingScheduler and
BackgroundScheduler and added integration for asyncio (PEP 3156), Gevent,
Tornado, Twisted and Qt event loops
+ Overhauled the job store system for much better scalability
+ Added the ability to modify, reschedule, pause and resume jobs
+ Dropped the Shelve job store because it could not work with the new
job store system
+ Dropped the max_runs option and run counting of jobs since it could
not be implemented reliably
+ Adding jobs is now done exclusively through add_job() – the shortcuts
to triggers were removed
+ Added the end_date parameter to cron and interval triggers
+ It is now possible to add a job directly to an executor without
scheduling, by omitting the trigger argument
+ Replaced the thread pool with a pluggable executor system
+ Added support for running jobs in subprocesses (via the processpool
executor)
+ Switched from nose to py.test for running unit tests
* Fri Jan 31 2014 p.drouand@gmail.com
- Update to version 2.1.2
+ No changelog available
* Wed Sep 25 2013 p.drouand@gmail.com
- Update to version 2.1.1
+ Fixed shutdown() in standalone mode
+ Fixed the default value of the "db" parameter in the redis job store
+ Switched to PyPy 2.0 for PyPy compatibility testing
* Tue Dec 18 2012 saschpe@suse.de
- Disable failing datetime tests for now
* Fri Jun 22 2012 saschpe@suse.de
- Update to version 2.0.3:
+ The scheduler now closes the job store that is being removed, and all job stores on shutdown() by default
+ Added the last expression in the day field of CronTrigger (thanks rcaselli)
+ Raise a TypeError when fields with invalid names are passed to CronTrigger (thanks Christy O?Reilly)
+ Fixed the persistent.py example by shutting down the scheduler on Ctrl+C
+ Added PyPy 1.8 and CPython 3.3 to the test suite
+ Dropped PyPy 1.4 - 1.5 and CPython 3.1 from the test suite
+ Updated setup.cfg for compatibility with distutils2/packaging
+ Examples, documentation sources and unit tests are now packaged in the source distribution
* Tue Aug 16 2011 cfarrell@novell.com
2.0.2
---
* Removed the unique constraint from the "name" column in the SQLAlchemy
job store
* Fixed output from Scheduler.print_jobs() which did not previously output
a line ending at the end
2.0.1
---
* Fixed cron style jobs getting wrong default values
2.0.0
---
* Added configurable job stores with several persistent back-ends
(shelve, SQLAlchemy and MongoDB)
* Added the possibility to listen for job events (execution, error, misfire,
finish) on a scheduler
* Added an optional start time for cron-style jobs
* Added optional job execution coalescing for situations where several
executions of the job are due
* Added an option to limit the maximum number of concurrenctly executing
instances of the job
* Allowed configuration of misfire grace times on a per-job basis
* Allowed jobs to be explicitly named
* All triggers now accept dates in string form (YYYY-mm-dd HH:MM:SS)
* Jobs are now run in a thread pool; you can either supply your own PEP 3148
compliant thread pool or let APScheduler create its own
* Maximum run count can be configured for all jobs, not just those using
interval-based scheduling
* Fixed a v1.x design flaw that caused jobs to be executed twice when the
scheduler thread was woken up while still within the allowable range of their
previous execution time (issues #5, #7)
* Changed defaults for cron-style jobs to be more intuitive -- it will now
default to all minimum values for fields lower than the least significant
explicitly defined field
1.3.1
---
* Fixed time difference calculation to take into account shifts to and from
daylight saving time
1.3.0
---
* Added __repr__() implementations to expressions, fields, triggers, and jobs
to help with debugging
* Added the dump_jobs method on Scheduler, which gives a helpful listing of
all jobs scheduled on it
* Fixed positional weekday (3th fri etc.) expressions not working except in
some edge cases (fixes #2)
* Removed autogenerated API documentation for modules which are not part of
the public API, as it might confuse some users
.. Note:: Positional weekdays are now used with the **day** field, not
* *weekday**.
1.2.1
---
* Fixed regression: add_cron_job() in Scheduler was creating a CronTrigger with
the wrong parameters (fixes #1, #3)
* Fixed: if the scheduler is restarted, clear the "stopped" flag to allow
jobs to be scheduled again
1.2.0
---
* Added the ``week`` option for cron schedules
* Added the ``daemonic`` configuration option
* Fixed a bug in cron expression lists that could cause valid firing times
to be missed
* Fixed unscheduling bound methods via unschedule_func()
* Changed CronTrigger constructor argument names to match those in Scheduler
1.01
Version: 3.10.4-bp156.1.1
* Mon Sep 18 2023 Dirk Müller <dmueller@suse.com>
- update to 3.10.4:
* Fixed incorrect module name being generated for references to
class methods via a subclass where the subclass does not
override the method
* Fixed ``TypeError`` related to entry point iteration on
Python 3.9
* Ensured consistent support for both PySide and PyQt (v6 to
v2) on QtScheduler
* Replaced uses of the deprecated ``pkg_resources`` module with
``importlib.metadata``
* Fixed scheduling class methods like ``B.methodname`` where
the ``B`` class inherits from class ``A`` and ``methodname``
is a class method of class ``A``
* Fixed scheduler sleeping for too long (and thus jobs missing
their scheduled run times) if its wakeup cycle takes too much
time
* Wed Aug 16 2023 ecsos <ecsos@opensuse.org>
- Add %{?sle15_python_module_pythons}
* Tue Mar 14 2023 Dirk Müller <dmueller@suse.com>
- update to 3.10.1:
* Fixed ``TypeError: arguments did not match any overloaded
call:`` in QtScheduler due to ``wait_time`` being float
and not an integer which QT needs it to be
* Thu Feb 23 2023 Dirk Müller <dmueller@suse.com>
- update to 3.10.0:
* Fixed compatibility with SQLAlchemy 2.0 and bumped minimum
supported version to 1.4
* Dropped support for Python versions older than 3.6
* Thu Dec 01 2022 Yogalakshmi Arunachalam <yarunachalam@suse.com>
- version update to 3.9.1.post1
* Dropped Python 2.7 from the list of supported Python versions
Relates to #666.
* Tue Mar 01 2022 pgajdos@suse.com
- version update to 3.9.1
3.9.1
- ----
* Removed a leftover check for pytz ``localize()`` and ``normalize()`` methods
3.9.0
- ----
* Added support for PySide6 to the Qt scheduler
* No longer enforce pytz time zones (support for others is experimental in the 3.x series)
* Fixed compatibility with PyMongo 4
* Fixed pytz deprecation warnings
* Fixed RuntimeError when shutting down the scheduler from a scheduled job
* Sat Jan 22 2022 Ben Greiner <code@bnavigator.de>
- Unpin pytest<6
* Tue Oct 26 2021 Dirk Müller <dmueller@suse.com>
- update to 3.8.1:
* Allowed the use of tzlocal v4.0+ in addition to v2.*
* Sat Oct 16 2021 Dirk Müller <dmueller@suse.com>
- update to 3.8.0:
* Allowed passing through keyword arguments to the underlying stdlib executors in the
thread/process pool executors (PR by Albert Xu)
* Mon Feb 01 2021 Dirk Müller <dmueller@suse.com>
- update to 3.7.0:
* Dropped support for Python 3.4
* Added PySide2 support (PR by Abdulla Ibrahim)
* Pinned ``tzlocal`` to a version compatible with pytz
* Ensured that jitter is always non-negative to prevent triggers from firing
more often than intended
* Changed ``AsyncIOScheduler`` to obtain the event loop in ``start()``
instead of ``__init__()``,
to prevent situations where the scheduler won't run because it's using a
different event loop than then one currently running
* Made it possible to create weak references to ``Job`` instances
* Made the schedulers explicitly raise a descriptive ``TypeError`` when serialization is attempted
* Fixed Zookeeper job store using backslashes instead of forward slashes for paths
on Windows
* Fixed deprecation warnings on the MongoDB job store and increased the minimum PyMongo
* Fixed ``BlockingScheduler`` and ``BackgroundScheduler`` shutdown hanging after the user has
erroneously tried to start it twice
* Fixed memory leak when coroutine jobs raise exceptions
* Fixed inability to schedule wrapped functions with extra arguments when the wrapped function
cannot accept them but the wrapper can (original PR by Egor Malykh)
* Fixed potential ``where`` clause error in the SQLAlchemy job store when a subclass uses more than
one search condition
* Fixed a problem where bound methods added as jobs via textual references were called with an
unwanted extra ``self`` argument (PR by Pengjie Song)
* Fixed ``BrokenPoolError`` in ``ProcessPoolExecutor`` so that it will automatically replace the
broken pool with a fresh instance
* Fri Jan 22 2021 Markéta Machová <mmachova@suse.com>
- Add missing buildrequirement