diff --git a/CHANGELOG.md b/CHANGELOG.md index 0907bc736..8a793a0ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,60 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + + +## [v0.12.0](https://github.com/faust-streaming/faust/releases/tag/v0.12.0) - 2026-07-19 + +[Compare with v0.11.3](https://github.com/faust-streaming/faust/compare/v0.11.3...v0.12.0) + + + +### Added +- Re-add the confluent-kafka transport driver (`confluent://`, install with the + `faust[ckafka]` extra), rewritten and tested against the released + `confluent-kafka` API. +- Support Python 3.13 and 3.14 (tested with and without the Cython extensions). +- `on_clear` handlers on `(Global)Table` and `ChangeloggedSet` (#645). +- Live-broker integration test harness: CI now starts a real Kafka broker and + round-trips messages through both the aiokafka and confluent-kafka client + libraries (#706). + +### Changed +- **Dropped support for Python 3.8 and 3.9** (#650); the minimum supported + version is now Python 3.10. +- Replaced the unmaintained `aredis` with `redis-py` for the Redis store and + leader (#635). +- Support recent `aiokafka` releases: handle 0.13.0 removing the `api_version` + parameter (#674), and guard aiokafka metadata/admin calls by the negotiated + protocol-API version while keeping the Faust partition assignor for changelog + tables (#682). +- Modernize CI and wheel building: updated wheel runners, Windows wheels, a + refreshed `cibuildwheel`, and an updated test matrix (#690). +- Pin `black`/`isort` and update the `click` constraint for reproducible CI + (#677, #680). + +### Fixed +- Fix release-artifact upload/download for `upload-artifact@v4` (#684). + +### Dependencies +- Runs on the maintained mode fork `mode-streaming >= 0.4.0`. +- `aiokafka >= 0.10.0`, now compatible with recent aiokafka releases + (0.13.x / 0.14.x) — see #674 and #682. +- Adds `confluent-kafka >= 2.0.0`, required by the optional `faust[ckafka]` + transport driver. +- The `faust[cchardet]` extra now uses the maintained `faust-cchardet` fork in + place of the unmaintained `cchardet`. + ## [v0.8.10](https://github.com/faust-streaming/faust/releases/tag/v0.8.10) - 2022-09-14 [Compare with v0.8.9](https://github.com/faust-streaming/faust/compare/v0.8.9...v0.8.10) diff --git a/docs/conf.py b/docs/conf.py index 58a0687a0..5f2a03ed5 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,16 +1,24 @@ # -*- coding: utf-8 -*- import sys from contextlib import suppress + +import faust from sphinx_celery import conf extensions = [] # set by build_config sys.path.append('.') +# Derive the documented version (major.minor) from the installed package, which +# setuptools_scm resolves from the git tag. Keeping this dynamic means the +# published docs always report the real version instead of a hardcoded string +# that silently goes stale between releases. +_docs_version = '.'.join(faust.__version__.lstrip('v').split('.')[:2]) + globals().update(conf.build_config( 'faust', __file__, project='Faust', - version_dev='1.1', - version_stable='1.0', + version_dev=_docs_version, + version_stable=_docs_version, canonical_url='https://faust-streaming.github.io/faust', webdomain='', github_project='faust-streaming/faust',