Skip to content

Latest commit

 

History

History
354 lines (217 loc) · 7.75 KB

File metadata and controls

354 lines (217 loc) · 7.75 KB

Changelog

0.8.11

Bugfix

  • Issues#20 Fix handling of zoneinfo.ZoneInfo timezones.

0.8.10

Bugfix

  • Issues#29 Fix misconfigured setuptools build.

0.8.9

Misc

0.8.8

Misc

  • Type hint Scheduler.once() args as a variadic generic tuple. (Thanks @sanurielf), PR #9
  • Python 3.13 support.

0.8.7

  • Version bump to fix CI/CD process

0.8.6

Bugfix

  • Fixed misue of tags argument (was dict where it should have been set) and allowed to pass as Iterable.

Misc

  • Fix a number of type annotations
    • BaseScheduler is now generic
    • BaseJob is now generic
    • Fixed annotations for Coroutines in asyncio scheduler
    • Disable mypy's strict mode for now (ignores **kwargs typing for now)
  • Added type annotations into testing code
  • Migrate from setup.py to pyproject.toml

0.8.5

Misc

0.8.4

Bugfix

0.8.3

Misc

0.8.2

Misc

  • Add CONTRIBUTING.md.
  • Include pre-commit config.

Bugfix

  • Fix deadlock bug Issue#15.
  • Fix displaying of DeprecationWarning for the delay flag.

0.8.1

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.0

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 match argument in pytest.raises.
  • Bugfix in PKGBUILD's package() function.

0.7.4

Misc

  • formatting of README.md
  • CI file correction for coverage report

0.7.3

Testing

  • test_readme.py now uses monkeypatched datetime.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.2

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 / alias and spaces
  • additional alias example
  • corrected alias_text
  • tag & parameters - remove unneeded doctest:+ELLIPSIS instruction
  • note added on tags

0.7.1

Misc

  • Bump version in PKGBUILD.
  • Fix image for release stage.

0.7.0

Features

  • Added a scheduler for asyncio under the import path scheduler.asyncio.Scheduler.

Bugfixes

  • The deletion of an unscheduled Job with the scheduler.Scheduler.delete_job method raised a KeyError. This was corrected and it will now raise a SchedulerError.

Misc

  • Refactoring of the internal code structure.
  • New namespace conventions.
  • Revision of the setup.py file.
  • Revision of the README.md.
  • Documentation updated.
  • The documentation now uses the furo theme.

Deprecation warnings

  • The delay argument used when scheduling jobs of different types will be removed in a future release.

Known issues

  • Some mypy errors arise due to implementation details regarding the inheritance of the BaseJob and BaseScheduler.

0.6.3

Bugfixes

  • Fix the missing lock acquiring in the JobTimer described as bug in the issue #10.

Misc

  • Fix the version of mistune in the requirement.txt to prevent pipeline failure (m2r2 dependency, not fixed there).

0.6.2

API changes

  • Scheduler instanciation and Scheduler.once arguments 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

0.6.1

Misc

  • Revision of the README.md for the first release on PyPI.org

0.6.0

Features

  • Jobs can be tagged and filtered by sets of string identifiers

API changes

  • Job: params renamed to kwargs and introduced args keyword analog to sched library
  • delete_all_jobs replaced and implemented within delete_jobs
  • Weekday implemented as abstract class in scheduler.trigger.core instead of Enum in scheduler.util. Now with time attribute.
  • Scheduler.once and Scheduler.weekly no longer accept a tuple of Weekday, datetime.time for the timing argument.

Misc

  • Job refactoring
  • Documentation updated

0.5.2

API changes

  • Extended Job API by params, skip_missing and delay.

Misc

  • Refactoring of scheduling functions using **kwargs
  • General documentation improvements

0.5.1

Features

  • Threading support, scheduler is now thread safe.
  • Added n_threads argument to Scheduler for parallel Job execution.

Misc

  • Improved examples and docs.

0.5.0

API changes

  • Job batching limited to distinct timings
  • Job batching limited to minutely(), hourly(), daily() and weekly()

Bugfixes

  • Behaviour of skip_missing adjusted

Misc

  • Improved documentation (mostly formatting)

0.4.0

  • Switched to LGPLv3 License

Features

  • Delete all scheduled Jobs using a single command.
  • Added __repr__ and __str__ methods to Job and Scheduler
  • Execute all scheduled Jobs regardless of when they are scheduled.
  • Added optional Job flag: Discard missed executions befor the last pending execution
  • Jobs can be passed to Scheduler.__init__
  • Job exposes property tzinfo
  • Jobs support a start and stop datetime
  • Improved Exception handling
  • Extensive documentation rework

API changes

  • Completely overhauled Scheduler API

Bugfixes

  • Fixed infinite recursion in JobTimer of calc_next_exec

Misc

  • Improved examples and docs.
  • Added Guides and FAQ

0.3.0

Features

  • Allowed parameters to be passed to the function handled by Job

Misc

  • Improved examples and docs
  • Full test coverage :)

0.2.0

API changes

  • Switched Scheduler arguments max_exec and tzinfo.

Features

  • A weight_function can be passed to Scheduler for customizable Job weighting.

Misc

  • Added a changelog
  • Revision of setup.py
  • Fixed readthedocs configuration
  • Small optimizations in README.md and docs
  • README.md embedded within sphinx documentation.
  • Provide a secrets.py to support local PyPI caching
  • Improved test coverage

0.1.0

  • Initial beta release