RELEASE-NOTES-3.1.0.md
1 # About this release 2 3 [This][this-release] is a maintenance release. 4 It: 5 * Improves scheduling of Ping:s - make sure we keep/restart pinging after synchronization is done. 6 * Adds support for responding of `ping` messages in State Channels' WebSocket 7 protocol. Because of browser compatibility issues, the keep alive 8 functionality is being built on data frames instead of using the control 9 frames. 10 * Enhances the HTTP endpoint for channel creation transaction to accept an optional list of delegates. 11 * Introduces State Channel fsm-assisted solo-close and slash, and continuous chain monitoring. 12 * The state channel chain watcher now watches the chain continuously. 13 * The state channel FSM stays open during the closing phase. 14 * Client WS API for solo-closing, slash and settle. 15 * SC FSM automatically detects when a slash is needed. 16 * SC FSM reports to client any time the on-chain channel state changes. 17 * The SC watcher is now fork-aware. 18 19 [this-release]: https://github.com/aeternity/aeternity/releases/tag/v3.1.0 20 21 This release is backward compatible with the previous v3.0.1 release. 22 23 Please join the mainnet by following the instructions below, and let us know if you have any problems by [opening a ticket](https://github.com/aeternity/aeternity/issues). 24 Troubleshooting of common issues is documented [in the wiki](https://github.com/aeternity/aeternity/wiki/Troubleshooting). 25 26 The instructions below describe: 27 * [How to retrieve the released software for running a node](#retrieve-the-software-for-running-a-node); 28 * [How to install a node](#install-node); 29 * [How to join the mainnet](#join-the-mainnet). 30 * [How to join the testnet](#join-the-testnet). 31 32 ## Retrieve the software for running a node 33 34 You can run a node by either: 35 * Installing the published [release binary][this-release] corresponding to your platform; or 36 * Running the published [Docker image `aeternity/aeternity`][docker]; or 37 * [Building a release binary from source][build]. 38 39 [docker]: https://github.com/aeternity/aeternity/blob/v3.1.0/docs/docker.md 40 [build]: https://github.com/aeternity/aeternity/blob/v3.1.0/docs/build.md 41 42 The instructions for configuring the node using the Docker image are in [the dedicated separate document][docker]. 43 44 The node user API is documented: 45 * HTTP API endpoints are specified [online in swagger.yaml][swagger-yaml]; 46 * A JSON version of the same specification is located in the node at path `lib/aehttp-*/priv/swagger.json` (you will need to amend the wildcard `*` placeholder in the path with the version). 47 * The JSON version can be obtained from a running node using the endpoint `/api`. 48 * An interactive visualization of the same specification is available [online][swagger-ui]. 49 * WebSocket API endpoints are [specified online][api-doc]; 50 * The intended usage of the user API (HTTP and WebSocket) is [documented online][api-doc]. 51 52 [swagger-yaml]: https://github.com/aeternity/aeternity/blob/v3.1.0/config/swagger.yaml 53 [swagger-ui]: https://aeternity.github.io/api-docs/?config=https://raw.githubusercontent.com/aeternity/aeternity/v3.1.0/apps/aehttp/priv/swagger.json 54 [api-doc]: https://github.com/aeternity/protocol/blob/aeternity-node-v3.1.0/node/api/README.md 55 56 ## Install node 57 58 The instructions for installing a node using a release binary are in [the dedicated separate document](../../docs/installation.md). 59 60 For installation of a node using the Docker image, please refer to [its documentation online][docker]. 61 62 ## Join the mainnet 63 64 ### Mainnet seed nodes 65 66 The release package comes preconfigured with seed nodes. Here is example subset of the seed nodes: 67 68 * aenode://pp_2L8A5vSjnkLtfFNpJNgP9HbmGLD7ZAGFxoof47N8L4yyLAyyMi@18.136.37.63:3015 69 * aenode://pp_2gPZjuPnJnTVEbrB9Qgv7f4MdhM4Jh6PD22mB2iBA1g7FRvHTk@52.220.198.72:3015 70 * aenode://pp_tVdaaX4bX54rkaVEwqE81hCgv6dRGPPwEVsiZk41GXG1A4gBN@3.16.242.93:3015 71 * aenode://pp_2mwr9ikcyUDUWTeTQqdu8WJeQs845nYPPqjafjcGcRWUx4p85P@3.17.30.101:3015 72 * aenode://pp_2CAJwwmM2ZVBHYFB6na1M17roQNuRi98k6WPFcoBMfUXvsezVU@13.58.177.66:3015 73 * aenode://pp_7N7dkCbg39MYzQv3vCrmjVNfy6QkoVmJe3VtiZ3HRncvTWAAX@13.53.114.199:3015 74 * aenode://pp_22FndjTkMMXZ5gunCTUyeMPbgoL53smqpM4m1Jz5fVuJmPXm24@13.53.149.181:3015 75 * aenode://pp_Xgsqi4hYAjXn9BmrU4DXWT7jURy2GoBPmrHfiCoDVd3UPQYcU@13.53.164.121:3015 76 * aenode://pp_vTDXS3HJrwJecqnPqX3iRxKG5RBRz9MdicWGy8p9hSdyhAY4S@13.53.77.98:3015 77 78 ### Inspect the mainnet 79 80 Here are example nodes that can be used to inspect current top block and see information about e.g. height or target: 81 82 * http://18.136.37.63:3013/v2/blocks/top 83 * http://52.220.198.72:3013/v2/blocks/top 84 * http://13.53.114.199:3013/v2/blocks/top 85 * http://13.53.149.181:3013/v2/blocks/top 86 87 ## Join the testnet 88 89 This section describes how to run a node as part of the testnet - the public test network of nodes - by using the release binary. 90 91 For running a node as part of the testnet by using the Docker image, please consult [its documentation][docker] in addition to this section. 92 93 ### Testnet seed nodes 94 95 In order to join testnet reconfigure seed nodes in the release package: 96 97 * aenode://pp_QU9CvhAQH56a2kA15tCnWPRJ2srMJW8ZmfbbFTAy7eG4o16Bf@52.10.46.160:3015 98 * aenode://pp_27xmgQ4N1E3QwHyoutLtZsHW5DSW4zneQJ3CxT5JbUejxtFuAu@13.250.162.250:3015 99 * aenode://pp_DMLqy7Zuhoxe2FzpydyQTgwCJ52wouzxtHWsPGo51XDcxc5c8@13.53.161.215:3015 100 101 ### Inspect the testnet 102 103 The core nodes of the public test network are accessible from the Internet. 104 105 Information, e.g. height, of the top block of the longest chain as seen by these core nodes of the testnet can be obtained by opening in the browser any of the following URLs: 106 * http://52.10.46.160:3013/v2/blocks/top 107 * http://13.250.162.250:3013/v2/blocks/top 108 * http://13.53.161.215:3013/v2/blocks/top 109 110 ### Setup your node 111 112 Setting up your node consists of: 113 * Configuring your node - see instructions in [the dedicated separate document](../../docs/configuration.md); 114 * Starting your node and verifying it works as expected - see instructions in [the dedicated separate document](../../docs/operation.md).