github.com/sym3tri/etcd@v0.2.1-0.20140422215517-a563d82f95d6/Documentation/clients-matrix.md (about)

     1  # Client libraries support matrix for etcd
     2  
     3  As etcd features support is really uneven between client libraries, a compatibility matrix can be important.
     4  We will consider in detail only the features of clients supporting the v2 API. Clients still supporting the v1 API *only* are listed below.
     5  
     6  ## v1-only clients
     7  
     8  Clients supporting only the API version 1
     9  
    10  - [justinsb/jetcd](https://github.com/justinsb/jetcd) Java
    11  - [transitorykris/etcd-py](https://github.com/transitorykris/etcd-py) Python
    12  - [russellhaering/txetcd](https://github.com/russellhaering/txetcd) Python
    13  - [iconara/etcd-rb](https://github.com/iconara/etcd-rb) Ruby
    14  - [jpfuentes2/etcd-ruby](https://github.com/jpfuentes2/etcd-ruby) Ruby
    15  - [aterreno/etcd-clojure](https://github.com/aterreno/etcd-clojure) Clojure
    16  - [marshall-lee/etcd.erl](https://github.com/marshall-lee/etcd.erl) Erlang
    17  
    18  
    19  ## v2 clients
    20  
    21  The v2 API has a lot of features, we will categorize them in a few categories:
    22  
    23  - **HTTPS Auth**: Support for SSL-certificate based authentication
    24  - **Reconnect**: If the client is able to reconnect automatically to another server if one fails.
    25  - **Mod/Lock**: Support for the locking module
    26  - **Mod/Leader**: Support for the leader election module
    27  - **GET,PUT,POST,DEL Features**: Support for all the modifiers when calling the etcd server with said HTTP method.
    28  
    29  
    30  ### Supported features matrix
    31  
    32  | Client| [go-etcd](https://github.com/coreos/go-etcd) | [jetcd](https://github.com/diwakergupta/jetcd) | [python-etcd](https://github.com/jplana/python-etcd) | [python-etcd-client](https://github.com/dsoprea/PythonEtcdClient) | [node-etcd](https://github.com/stianeikeland/node-etcd) | [nodejs-etcd](https://github.com/lavagetto/nodejs-etcd) | [etcd-ruby](https://github.com/ranjib/etcd-ruby) | [etcd-api](https://github.com/jdarcy/etcd-api) | [cetcd](https://github.com/dwwoelfel/cetcd) |  [clj-etcd](https://github.com/rthomas/clj-etcd) | [etcetera](https://github.com/drusellers/etcetera)|
    33  | --- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
    34  | **HTTPS Auth**    | Y | Y | Y | Y | Y | Y | - | - | - | - | - |
    35  | **Reconnect**     | Y | - | Y | Y | - | - | - | Y | - | - | - |
    36  | **Mod/Lock**      | - | - | Y | Y | - | - | - | - | - | - | - |
    37  | **Mod/Leader**    | - | - | - | Y | - | - | - | - | - | - | - |
    38  | **GET Features**  | F | B | F | F | F | F | F | B | F | G | F |
    39  | **PUT Features**  | F | B | F | F | F | F | F | G | F | G | F |
    40  | **POST Features** | F | - | F | F | - | F | F | - | - | - | F |
    41  | **DEL Features**  | F | B | F | F | F | F | F | B | G | B | F |
    42  
    43  **Legend**
    44  
    45  **F**: Full support **G**: Good support **B**: Basic support
    46  **Y**: Feature supported  **-**: Feature not supported