Changelog
1.0.0rc3 (2026-05-01)
Relax protobuf dependency version as it passes all tests
1.0.0rc2 (2026-05-01)
Move the packaging machinery to pyproject.toml
Use a modern way of building packages
1.0.0rc1 (2026-04-30)
Add support for Python up to 3.14
Compile proto files with a bit relaxed compatibility
Fix obsolete RTD configuration
1.0.0a4 (2023-05-24)
Dependencies
Remove pifpaf from dependencies
1.0.0a3 (2023-05-24)
Improvements
Use monotonic timer in locks implementation
Limit client connect and close waiting time
Support lease in replace operation (#21)
Replace sync subprocess call with async version (#25)
Add UnauthenticatedError
Add Python 3.11 support
Add duplicate lease exception (#22)
Add 3.4 and 3.5 ETCD versions to CI matrix (#26)
Set timeout for tests job on CI (#27)
Add keepalive ETCD client settings in integration tests (#28)
Fix test for serializable read
Bugfixes
Fix Connect and Watch iterator
Dependencies
Bump packaging dependencies: pip 23.0, setuptools 67.3.2, wheel 0.38.4
Bump twine to 4.0.2
Bump flake8 to 6.0.0 and update related plugins
Bump pytest-asyncio to 0.20.3
Bump pytest to 7.2.1
Bump pytest-cov to 4.0.0
Bump pytest-mock to 3.10.0
Bump sphinx to 6.1.3 and sphinx_rtd_theme to 1.2.0
Bump grpcio to 1.51.1 and protobuf to 4+
1.0.0a2 (2022-01-14)
Features
grpclibwas replaced withgrpc.aioNow the API are only accepting bytes
Get, put, delete and watch operations are wrapped into friendlier result types
Implementation of
delete_rangemethod (#14)All
grpcexceptions are now wrapped byClientErrorLocking implementation is now in-sync with upstream version
Add Python 3.10 support
Bugfixes
Fix
client.watch()raisingConnectionTimeoutErrorerrors on client timeout (#13)Correctly shutdown the watcher on RPC stream termination
Documentation
The project documentation was reorganized, all API types and methods are now on a single page
Many methods and types were documented, in sync with
etcddocumentation
Dependencies
The only runtime dependencies now are
grpcioandprotobuf
Internals
Tests were refactored into separate modules divided into two groups: unit and integration
Use the latest upstream version of
etcdfor tests, instead of a system-packaged oneFixed broken tests
Removed dead code
1.0.0a1 (2021-12-26)
API changes
Rename the package to aetcd
Remove client helper and rename
Etcd3ClienttoClientRename
Client.opentoClient.connect, this is a more appropriate nameRefactor exception names and provide them via base package imports, see the docs for details
Internals
Bump the project dependencies
Update proto files from upstream etcd 3.5.1
0.1.0a7 (2021-04-29)
Internals
Update proto files from upstream etcd 4.3.15
Move proto files out of aetcd package
Improved documentation
Setup quotes and import linting
Code cleanup
0.1.0a6 (2021-04-27)
Internals
Build packages only on the latest supported python version
0.1.0a5 (2021-04-27)
Bugfixes
Await for stream end
Internals
Support for aiofiles 0.6.x
Bump setup dependencies: pip 21.1, setuptools 56.0.0
Bump test dependencies: pytest 6.2.3, pytest-asyncio 0.15.1
Bump dev dependencies: flake8 3.9.1, grcpio-tools 1.37.0
Get rid of tox
Manage everything via provided Makefile, use CI to upload tagged packages
0.1.0a4 (2021-03-26)
Bump setuptools_scm to 0.6.1
0.1.0a3 (2021-03-26)
Bump grpclib version ranges to fix incompatibility with h2
Bump packaging, dev and test dependencies to recent versions
Get rid of python 3.7 support
0.1.0a2 (2020-06-22)
Add Python 3.7 support
Coverage reports
Run tests on CI
0.1.0a1 (2020-06-09)
First release on PyPI.