As etcd features support is really uneven between client libraries, a compatibility matrix can be important. We will consider in detail only the features of clients supporting the v2 API. Clients still supporting the v1 API only are listed below.
The v2 API has a lot of features, we will categorize them in a few categories:
Legend F: Full support G: Good support B: Basic support Y: Feature supported -: Feature not supported
Sorted alphabetically on language/name
| Client | Language | HTTPS Auth | Re-connect | GET | PUT | POST | DEL | Mod Lock | Mod Leader |
|---|---|---|---|---|---|---|---|---|---|
| etcd-api | C | - | Y | B | G | - | B | - | - |
| etcdcpp | C++ | - | - | F | F | G | - | - | - |
| cetcd | Clojure | - | - | F | F | - | G | - | - |
| clj-etcd | Clojure | - | - | G | G | - | B | - | - |
| etcd-clojure | Clojure | - | - | F | F | F | F | - | - |
| go-etcd | go | Y | Y | F | F | F | F | - | - |
| jetcd | java | Y | - | B | B | - | B | - | - |
| Etcd.jl | Julia | - | - | F | F | F | F | Y | Y |
| etcetera | .net | - | - | F | F | F | F | - | - |
| node-etcd | nodejs | Y | - | F | F | - | F | - | - |
| nodejs-etcd | nodejs | Y | - | F | F | F | F | - | - |
| p5-etcd | perl | - | - | F | F | F | F | - | - |
| python-etcd | python | Y | Y | F | F | F | F | Y | - |
| python-etcd-client | python | Y | Y | F | F | F | F | Y | Y |
| etcd-ruby | ruby | - | - | F | F | F | F | - | - |
Clients supporting only the API version 1