A simple in-process python scheduler library with asyncio, threading and timezone support.
Last release 6 months ago
15 Feb 2026
Release timing varies
gaps range from 2 weeks to 13 months
Nearly every release is documented
notes for 16 of 16 stable releases
1 version withdrawn
withdrawn after publishing
5 years old
17 releases · first in 2021
Release timeline
17 releases since 2021202120222023202420252026
20212026
One column per quarter.
Releases
- 0.8.1115 Feb 2026
Release notes2 sources agree
Open source →Bugfix
- Issues#20 Fix handling of zoneinfo.ZoneInfo timezones.
- 0.8.1013 Feb 2026
- 0.8.911 Feb 2026withdrawn: Partial not importable
Release notes2 sources agree
Open source →Misc
- Move documentation to https://scheduler.digon.io.
- Add support for Python 3.14.
- Drop support for Python 3.9. (end-of-life).
- 0.8.821 Jan 2025
Release notes2 sources agree
Open source →Misc
- Type hint Scheduler.once()
argsas a variadic generic tuple. (Thanks @sanurielf), PR #9 - Python 3.13 support.
- Type hint Scheduler.once()
- 0.8.79 Jun 2024
- 0.8.511 Dec 2023
Release notes2 sources agree
Open source →Misc
- Python 3.12 support.
- Issue#18 fixed (Thanks @bshakur8 (Bhaa Shakur), PR #7)
- Improved deprecation warnings (Thanks @bshakur8 (Bhaa Shakur), PR #6)
- 0.8.419 Mar 2023
- 0.8.39 Jan 2023
Release notes2 sources agree
Open source →Misc
- Migrate from ReadTheDocs to HostYourDocs.
- Custom docs colour theme.
- 0.8.25 Dec 2022
Release notes2 sources agree
Open source →Misc
- Add
CONTRIBUTING.md. - Include
pre-commitconfig.
Bugfix
- Fix deadlock bug Issue#15.
- Fix displaying of DeprecationWarning for the
delayflag.
- Add
- 0.8.116 Nov 2022
Release notes2 sources agree
Open source →Misc
- Python 3.11 support.
Testing
- The library is now also tested against python version 3.11.
- Update patches for other python versions.
- 0.8.026 Oct 2022
Release notes2 sources agree
Open source →Features
- Catching unhandled exceptions of scheduled functions
(Issue#13):
- Introduced logging for unhandled exceptions.
- The scheduler takes a custom logger instance as argument.
- Jobs are now counting the number of unhandled exceptions.
Misc
- Improved some exception messages.
- Minor documentation corrections.
- Minor README.md corrections and simplifications.
- Removed deprecated Prioritization code from
util.py.
Bugfix
- Some exception messages that previously were wrongly tested and therefore ignored.
are now matched using the
matchargument inpytest.raises. - Bugfix in PKGBUILD's package() function.
- Catching unhandled exceptions of scheduled functions
(Issue#13):
- 0.7.430 May 2022
Release notes2 sources agree
Open source →Misc
- formatting of README.md
- CI file correction for coverage report
- 0.7.328 May 2022
Release notes2 sources agree
Open source →Testing
test_readme.pynow uses monkeypatcheddatetime.now()- Tests are contained in their own modules therefore installation before testing is no longer necessary
- testing requirements now include
typeguard - coverage badge should work again
Misc
- sponsor Digon.IO added
- 0.7.211 May 2022
Release notes2 sources agree
Open source →Features
- aliases are now supported for Scheduler.once
Misc
- Skipping checksum in PKGBUILD (we do not know the hash in advance of pushing)
- Added missing checkdepends:
python-pytest-asyncio
Documentation
- String fixes:
function / aliasand spaces - additional alias example
- corrected alias_text
- tag & parameters - remove unneeded
doctest:+ELLIPSISinstruction - note added on tags
- 0.7.12 Apr 2022
Release notes2 sources agree
Open source →Misc
- Bump version in PKGBUILD.
- Fix image for release stage.
- 0.6.321 Dec 2021
Release notes2 sources agree
Open source →Bugfixes
- Fix the missing lock acquiring in the
JobTimerdescribed as bug in the issue #10.
Misc
- Fix the version of
mistunein therequirement.txtto prevent pipeline failure (m2r2dependency, not fixed there).
- Fix the missing lock acquiring in the
- 0.6.228 Oct 2021
Release notes2 sources agree
Open source →API changes
Schedulerinstanciation andScheduler.oncearguments are now keyword only.
Features
Jobs can be given a string alias for identification instead of defaulting to function name.
Misc
- Python version requirements added to
setup.py