Releases: etcdv3/etcd-client
v0.18.0
What's Changed
- Simplify authentication (with interceptor) by @belltoy in #106
- Re-design watch stream API by @belltoy in #108
- Expose more protobuf structs to make transactions testable and mockable by @g-murzik in #25
- fix: return error instead of panic when connect_with_balanced_channel by @belltoy in #78
Breaking Changes
Upgrade from pre 0.17 to 0.18
Since 0.18, the WatchClient API has changed to support watch stream error handling precisely.
The WatchClient is not a high level watcher, it is just a watch API stub. So it should be only
responsible for sending requests and receiving responses. Let the high level watcher decide what
to do if received an unexpected response.
- WatchClient::watch(key: impl Into<Vec<u8>>, options: Option<WatchOptions>) -> Result<(WatchResponse, Watcher, WatchStream)>
+ WatchClient::watch(key: impl Into<Vec<u8>>, options: Option<WatchOptions>) -> Result<WatchStream>The new WatchStream is different from the old version. It represents underlying bidirectional
watch stream (HTTP 2 stream). So it can be used to send requests and receive responses and events.
It's the user's responsibility to check the received response is a response or an event, if it is
created successfully or not, or if it is a cancel response.
See watch.rs for example.
Full Changelog: v0.17.0...v0.18.0
v0.17.0
v0.16.1
v0.16.0
v0.15.0
What's Changed
- Use
{RwLock/Mutex}::clear_poison()to remove{RwLock/Mutex}::unwrap()by @davidli2010 in #94 - fix: change MSRV badge to 1.80 by @nmooscisco in #96
- fix: make doctests in openssl_tls::transport compile by @nmooscisco in #97
- feat: add support for requiring a leader by @nmooscisco in #95
- feat(ci): run cargo clippy with all feature combinations by @nmooscisco in #99
- feat: add the ability to build a server by @nmooscisco in #101
New Contributors
- @nmooscisco made their first contribution in #96
Full Changelog: v0.14.1...v0.15.0
v0.14.1
Happy Chinese New Year! 🎉
- Enhance the example which showcases the snapshot maintenance operation. by @renormalize in #83
- lease keep alive return lease not found error by @messense in #87
v0.14.0
- Upgrade tonic to 0.12
- Upgrade prost to 0.13
- Upgrade http to 1.1