Skip to content

Releases: etcdv3/etcd-client

v0.18.0

18 Jan 05:37
v0.18.0
6a3be2f

Choose a tag to compare

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

20 Sep 03:53
v0.17.0
1b40271

Choose a tag to compare

What's Changed

  • tonic: upgrade to tonic 0.14 (#112)

Full Changelog: v0.16.1...v0.17.0

v0.16.1

15 Jul 07:27
v0.16.1
56ee4d6

Choose a tag to compare

What's Changed

  • Fix Client (Channel) Sync (#110)

Full Changelog: v0.16.0...v0.16.1

v0.16.0

13 Jul 01:29
v0.16.0
fbb11f7

Choose a tag to compare

What's Changed

  • Update tonic to 0.13.1 and tower to 0.5
  • Set large-error-threshold to 256 (#105)
  • feat: allow caller to initialize the channel (#93)
  • feat: make channel creation more flexible (#98)

Full Changelog: v0.15.0...v0.16.0

v0.15.0

11 Apr 16:59

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.14.1...v0.15.0

v0.14.1

28 Jan 13:59

Choose a tag to compare

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

10 Jul 17:20

Choose a tag to compare

  • Upgrade tonic to 0.12
  • Upgrade prost to 0.13
  • Upgrade http to 1.1

v0.13.0

01 Jun 04:20

Choose a tag to compare

  • Support manually in-place authentication token update (#65 )
  • Upgrade tonic to 0.11
  • Bump tokio to 1.38

v0.12.4

01 Jan 03:30

Choose a tag to compare

  • Implement namespace APIs (#71)
  • Support tcp keepalive (#73)

v0.12.3

21 Nov 16:52

Choose a tag to compare

  • Add GetResponse::take_kvs() & KeyValue::into_key_value()(#70)