Skip to content

Release Notes

All notable changes to FluxQueue will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.3.0 - 2026-03-01

Added

  • Context Classes: New Context class for accessing task metadata and managing thread-persistent resources (#114)
  • @fluxqueue.task_with_context() decorator for tasks that need context access
  • Context.metadata property for accessing task execution information (task ID, retry count, etc.)
  • Context.thread_storage property for sharing resources across tasks in the same worker thread
  • Support for custom context classes by subclassing Context
  • Prevents event loop issues in multi-threaded environments (e.g., asyncpg "got future pending attached to a different loop" errors)
  • Works with both synchronous and asynchronous tasks
  • Client library version check before worker initialization (#128)
  • Tests to cover the context feature (#130)

Changed

  • Moved function calls to dispatcher (#116)
  • Improved executor startup speed (#117)
  • Made startup logs more clear (#118)
  • Improved examples documentation (#119)
  • Fixed worker installation instructions in README (#120)
  • Bumped pyo3 dependency versions (#121)
  • Improved client docstrings (#122)
  • Improved _run_async_task docstring for clarity (#126)
  • Various fixes and updates (#124)

Fixed

  • Fixed tasks with the base Context class (#123)
  • Fixed client library version check for older workers (#129)
  • Reverted disallowing _Context as context name (#127)

0.2.1 - 2026-02-21

Changed

  • Moved examples to docs (#110)
  • Moved core to crates directory (#111)
  • Renamed Rust core module (#112)
  • Improved task decorator type inference (#113)

0.2.0 - 2026-02-17

Added

  • Logs after task finishes (#80)
  • Python version badges in README and classifiers/keywords in pyproject.toml (#84)
  • Unit and integration tests (#90)
  • Support for Windows and macOS (#94)
  • Tests status badge in README (#92)

Changed

  • Updated way of running async task functions (#83)
  • Improved README clarity and documentation (#85, #86, #87)
  • Updated get_functions.py script to raise exception on duplication (#78)
  • Bumped worker version to 0.2.0-beta.4 (#95)
  • Updated pyproject description (#108)

Fixed

  • Fixed executors heartbeat flaw on startup (#82)
  • Fixed test_path_to_module_path to work on Windows (#93)
  • Fixed various workflow files (release-worker, build-worker, publish workflows) (#96, #97, #98, #99, #100, #101, #102, #105, #106)
  • Fixed license name in pyproject.toml (#107)
  • Fixed pyproject classifiers (#109)