github.com/MaynardMiner/ethereumprogpow@v1.8.23/cmd/clef/intapi_changelog.md (about)

     1  ### Changelog for internal API (ui-api)
     2  
     3  ### 3.0.0
     4  
     5  * Make use of `OnInputRequired(info UserInputRequest)` for obtaining master password during startup
     6  
     7  ### 2.1.0
     8  
     9  * Add `OnInputRequired(info UserInputRequest)` to internal API. This method is used when Clef needs user input, e.g. passwords.
    10  
    11  The following structures are used:
    12  ```golang
    13         UserInputRequest struct {
    14                 Prompt     string `json:"prompt"`
    15                 Title      string `json:"title"`
    16                 IsPassword bool   `json:"isPassword"`
    17         }
    18         UserInputResponse struct {
    19                 Text string `json:"text"`
    20         }
    21  
    22  ### 2.0.0
    23  
    24  * Modify how `call_info` on a transaction is conveyed. New format:
    25  
    26  ```
    27  {
    28    "jsonrpc": "2.0",
    29    "id": 2,
    30    "method": "ApproveTx",
    31    "params": [
    32      {
    33        "transaction": {
    34          "from": "0x82A2A876D39022B3019932D30Cd9c97ad5616813",
    35          "to": "0x07a565b7ed7d7a678680a4c162885bedbb695fe0",
    36          "gas": "0x333",
    37          "gasPrice": "0x123",
    38          "value": "0x10",
    39          "nonce": "0x0",
    40          "data": "0x4401a6e40000000000000000000000000000000000000000000000000000000000000012",
    41          "input": null
    42        },
    43        "call_info": [
    44          {
    45            "type": "WARNING",
    46            "message": "Invalid checksum on to-address"
    47          },
    48          {
    49            "type": "WARNING",
    50            "message": "Tx contains data, but provided ABI signature could not be matched: Did not match: test (0 matches)"
    51          }
    52        ],
    53        "meta": {
    54          "remote": "127.0.0.1:54286",
    55          "local": "localhost:8550",
    56          "scheme": "HTTP/1.1"
    57        }
    58      }
    59    ]
    60  }
    61  ```
    62  
    63  #### 1.2.0
    64  
    65  * Add `OnStartup` method, to provide the UI with information about what API version
    66  the signer uses (both internal and external) aswell as build-info and external api.
    67  
    68  Example call:
    69  ```json
    70  {
    71    "jsonrpc": "2.0",
    72    "id": 1,
    73    "method": "OnSignerStartup",
    74    "params": [
    75      {
    76        "info": {
    77          "extapi_http": "http://localhost:8550",
    78          "extapi_ipc": null,
    79          "extapi_version": "2.0.0",
    80          "intapi_version": "1.2.0"
    81        }
    82      }
    83    ]
    84  }
    85  ```
    86  
    87  #### 1.1.0
    88  
    89  * Add `OnApproved` method
    90  
    91  #### 1.0.0
    92  
    93  Initial release.
    94  
    95  ### Versioning
    96  
    97  The API uses [semantic versioning](https://semver.org/).
    98  
    99  TLDR; Given a version number MAJOR.MINOR.PATCH, increment the:
   100  
   101  * MAJOR version when you make incompatible API changes,
   102  * MINOR version when you add functionality in a backwards-compatible manner, and
   103  * PATCH version when you make backwards-compatible bug fixes.
   104  
   105  Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.