The new build is staged and ready to be installed at 10:30 am EST (15 mins). We’ll send out release notes once it is up and running.
Here’s the list of updates in this build:
** Major Updates **
. Networking stack replaced with HTTP / WebSockets based implementation. RPC calls (eg CatchUp) now standard HTTP GET requests.
. Participation keys now use our custom VRF implementation (based on draft spec) - removes dependency on libsodium package
. New rewards implementation in effect
** Other Updates **
. Added algokey tool for command-line private key manipulation
. Updated auctionmaster to use the same key encoding format (seed
instead of msgpack-encoded crypto.SignatureSecrets), and updated various
docs and scripts that used to invoke auctionmaster -initkey
.
. Added ping to gossip network for measuring latencies
. Created new partkeys for genesis accounts and made sure they work
. Added CORS header whitelist to kmd
. Upgraded to go 1.12
. Update.sh now cleans up temp files/folders, for servers that don’t regularly restart.
. Updated goal to support multiple data directories (use multiple -d <datadir> -d <datadir>)
. Created find-nodes.sh script to locate data directories under a given parent (dirs with genesis.json).
. Completed Raspberry Pi support (tested on rpi3) – unsupported
. Reduced some telemetry clutter, restored some missing events from network rewrite
. Removed lots of dead / obsolete code
. Added genesis ID to transactions to prevent possible cross-ledger replay attack
. Added algod REST API call to fetch suggested transaction params, including fee, protocol, genesis ID, and round number.
. Switched to new method for computing the block seed, improved defense for more attacks
. Optionally use mlockall for kmd (linux-only) - prevents swapping secrets to disk
. Lots of cleanup and correctness work in Agreement code to more closely match spec
. Significant increase in test coverage of Agreement code
. Added new Version property config.json to track config versions and support migration between versions
. Several performance optimizations around database access and ledger operations
. Fixed cleanup race in server shutdown for kmd
. Added more accurate txpool priority calculation
. Added -v switch to carpenter to show reason for rejected votes
. Added tabular format to carpenter with -table option
. Normalized some kmd api endpoints
. Fixed multisig delete endpoint
. Added optimization to cancel block validation when better blocks are received
. kmd now allows multisig signing with any wallet
. Added goal kmd start
and goal kmd stop
to start kmd and specify its timeout (edited)
Great, thanks for the info
Round for next consensus protocol is larger than Last committed block + 1. Is This normal?
./goal -d ./data node status
Last committed block: 11541
Time since last block: 2.7s
Sync Time: 0.0s
Last consensus protocol: v0
Next consensus protocol: v1
Round for next consensus protocol: 20300
Next consensus protocol supported: true
This is expected yes. This build includes a protocol upgrade that adds the genesis ID to transactions. That upgrade will take effect at round 20300.