Releases: frequenz-floss/frequenz-resampling-python
Releases · frequenz-floss/frequenz-resampling-python
v0.1.0
Immutable
release. Only release title and notes can be modified.
Frequenz Resampling Release Notes
Summary
This release introduces Rust-backed Python bindings for resampling and migrates
the Python package to the frequenz.resampling namespace.
The project now builds via maturin, includes a PyO3 extension module, and has
expanded tests and CI to validate the compiled package workflow.
Upgrading
- Update imports from
resamplingtofrequenz.resampling.- Old:
from resampling import Resampler - New:
from frequenz.resampling import Resampler
- Old:
- The implementation is now provided by a Rust extension module
(frequenz.resampling._rust_backend) built withmaturin. - If you maintain tooling around docs/linting/test discovery, note that Python
source paths now targetfrequenz/and pytest collection targetstests/.
New Features
- Add Rust crate wrapper for
frequenz-resamplingusing PyO3. - Expose Python API in
frequenz.resamplingwith:Resamplerresample()ResamplingFunctionClosedLabel
- Add type stubs for the extension module (
_rust_backend.pyi). - Add comprehensive Python binding tests.
- Update CI packaging flow to better support compiled distribution builds across
environments. - Expand repository docs (
README.md,AGENTS.md) for the new architecture.
Build Changes
- Switch from a single abi3-compatible wheel to per-Python-version wheels
(cp311,cp312,cp313,cp314). This removes theabi3-py311PyO3
feature so each supported Python version gets its own compiled wheel.
Bug Fixes
- Fix docs and tooling source path assumptions from
src/tofrequenz/for
mkdocs/mkdocstrings and related generation scripts. - Apply formatting and cleanup updates around the new bindings and tests.
What's Changed
- Bump the patch group with 4 updates by @dependabot[bot] in #1
- Bump the compatible group with 5 updates by @dependabot[bot] in #2
- Bump pytest-asyncio from 1.1.0 to 1.3.0 by @dependabot[bot] in #6
- Bump nox from 2025.5.1 to 2026.4.10 by @dependabot[bot] in #8
- Bump setuptools from 80.9.0 to 82.0.1 by @dependabot[bot] in #9
- Bump pytest from 8.4.1 to 9.0.3 by @dependabot[bot] in #13
- Bump async-solipsism from 0.8 to 0.9 by @dependabot[bot] in #7
- Bump pydoclint from 0.6.10 to 0.8.3 by @dependabot[bot] in #11
- Bump mkdocs-gen-files from 0.5.0 to 0.6.1 by @dependabot[bot] in #12
- Bump setuptools-scm from 8.1.0 to 10.0.5 by @dependabot[bot] in #10
- Bump pylint from 3.3.8 to 4.0.5 by @dependabot[bot] in #15
- Bump the minor group across 1 directory with 7 updates by @dependabot[bot] in #5
- Bump frequenz-floss/gh-action-setup-python-with-deps from 0d0d77eac3b54799f31f25a1060ef2c6ebdf9299 to e4d0b2ef8f5a1612d7827f3abaef17c931d2b946 by @dependabot[bot] in #4
- Add binding by @phillip-wenig-frequenz in #17
- Bump black from 25.1.0 to 26.3.1 by @dependabot[bot] in #14
- build(cargo): remove abi3-py311 feature from PyO3 by @phillip-wenig-frequenz in #18
New Contributors
- @dependabot[bot] made their first contribution in #1
- @phillip-wenig-frequenz made their first contribution in #17
Full Changelog: https://github.com/frequenz-floss/frequenz-resampling-python/commits/v0.1.0