Changelong

0.4.0 - 2022-07-04

release-by: Lanqing Huang (@lqhuang)

This version is still major in refactoring and tuning. There are serveral breaking changes. Some notable changes including:

  1. on_init method of Service is removed from this version.

  2. want_seconds function do not accept None as input.

  3. This may most influenced changes: args loglevel, logfile, loghandlers of Worker has been renamed to log_level, log_file and log_handlers in order to follow PEP8 style.

  4. annotations function which is conflicting to same value in __future__ is renamed to reveal_annotations.

And after updates of Python version and mode-ng itself, ThreadService is probably not stable yet for now. Please carefully test your codes, if you’re using it in production.

Commits history

  • [breaking] Update logging time format to timezone aware and format extra field in logger

  • Make want_seconds raise TypeError when input is None

  • Reorg cases for unit tests

  • Update CoC guidelines and README

  • [breaking] Improve logging module and setup args loglevel has been rename to log_level

  • Improve implementations of singledispatch function

  • Improve type hints for signals.py and reformat for proxy.py

  • Fix circular imports and remove lazy importer

  • Improve type hints for worker, services, etc

  • [breaking] Remove on_init from now

  • Improve notes for lazy loading

  • Reconfig .bumpversion.cfg

  • Tune flake8 config and adjust requirements content

  • [breaking] Rename annotations to reveal_annotations due to conflict

  • [breaking] Replace Event lock to std (asyncio) version. Need more tests in async tasks running in multiple threads.

  • Remove contexts.py and improve type hints

  • Adjust docs location about installation

0.3.1 - 2022-06-27

release-by: Lanqing Huang (@lqhuang)

No features and bugs updates, only project scaffold is improved.

  • tests: Fix logging tests and simplified test requirements

  • chore: Use pyproject.toml to declare metadata

  • chore: Switch to src layout

0.3.0 - 2022-06-21

release-by: Lanqing Huang (@lqhuang)

Now you can output log to file and console simultaneously.

  • Remove redundant config files

  • Improve type hints

  • Cleanup asyncio future utilities

  • Improve code style and add an assertion

  • Fix logfile only accepts str type and deprecate sys.version < (3, 8)

  • Tune config for mypy and flake8

  • Unify setup.cfg and setup.py

0.2.0 - 2021-11-21

release-by: Lanqing Huang (@lqhuang)

  • Tune bumpversion config

  • Add more readme content

  • Deprecate custom cached_property

  • (1) Fix timer wait twice before execution; (2) Add optional arg to exectue immediately

  • Deprecate mode.utils.compat and mode.utils.contexts

  • Deprecate mode.utils.typing

0.1.0 - 2021-11-16

release-by: Lanqing Huang (@lqhuang)

  • Support python-3.10

  • Friendly fork of faust-streaming/mode: Initial release

  • Nothing changes yet

Previous release - 2021-10-14

release-by: Taybin Rutkin (@taybin), Thomas Sarboni (@max-k)

  • Support python-3.10

  • Format with black and isort

  • Add crontab timer from Faust (@lqhuang)

  • Friendly fork of ask/mode: Initial release

  • Move to new travis-ci.com domain

  • Add tests on Python 3.8.1-3.8.6

  • Fix broken tests

  • Add Python 3.9 support