github casper-network/casper-node v1.3.1

latest releases: v1.5.6, v1.5.4, v1.5.3...
2 years ago

[1.3.1] - 2021-07-24

Casper Node (casper-node/node/)

Added

  • Add support for providing historical auction information via the addition of an optional block ID in the state_get_auction_info JSON-RPC.
  • Exclude inactive validators from proposing blocks.
  • Add validation of the [protocol] configuration on startup, to ensure the contained values make sense.
  • Add optional outgoing bandwidth limiter to the networking component, controllable via new [network][max_outgoing_byte_rate_non_validators] config option.
  • Add optional incoming message limiter to the networking component, controllable via new [network][max_incoming_message_rate_non_validators] config option.
  • Add optional in-memory deduplication of deploys, controllable via new [storage] config options [enable_mem_deduplication] and [mem_pool_prune_interval].
  • Add a new event stream to SSE server accessed via <IP:Port>/events/deploys which emits deploys in full as they are accepted.

Changed

  • Major rewrite of the network component, covering connection negotiation and management, periodic housekeeping and logging.
  • Exchange and authenticate Validator public keys in network handshake between peers.
  • Remove needless copying of outgoing network messages.
  • Move finality signatures to separate event stream and change stream endpoints to /events/main and /events/sigs.
  • Avoid truncating the state root hash when reporting node's status via JSON-RPC or REST servers.
  • The JSON-RPC server waits until an incoming deploy has been sent to storage before responding to the client.
  • Persist event stream event index across node restarts.
  • Separate transfers from other deploys in the block proposer.
  • Enable getting validators for future eras in EffectBuilder::get_era_validators().
  • Replace config option [block_propser][deploy_delay] (which specified a fixed delay before proposing a deploy) with a gossip-finished announcement.
  • Improve logging around stalled consensus detection.
  • Skip storage integrity checks if the node didn't previously crash.
  • Update pinned version of Rust to nightly-2021-06-17
  • Don't shut down by default anymore if stalled. To enable set config option shutdown_on_standstill = true in [consensus.highway].

Removed

  • Remove systemd notify support, including removal of [network][systemd_support] config option.

Fixed

  • Avoid redundant requests caused by the Highway synchronizer.
  • Update "current era" metric also for initial era.
  • Keep syncing until the node is in the current era, rather than allowing an acceptable drift.
  • Update the list of peers with newly-learned ones in linear chain sync.
  • Drain the joiner reactor queue on exit, to eliminate stale connections whose handshake has completed, but which live on the queue.
  • Shut down SSE event streams gracefully.
  • Limit the maximum number of clients connected to the event stream server via the [event_stream_server][max_concurrent_subscribers] config option.
  • Avoid emitting duplicate events in the event stream.
  • Change BlockIdentifier params in the Open-RPC schema to be optional.

Execution Engine (casper-node/execution_engine/)

Changed

  • Update pinned version of Rust to nightly-2021-06-17

Node Macros (casper-node/node_macros/)

Changed

  • Update pinned version of Rust to nightly-2021-06-17

Casper Types (casper-node/types/)

Changed

  • Restrict summarization when JSON pretty-printing to contiguous long hex strings.
  • Update pinned version of Rust to nightly-2021-06-17

Removed

  • Remove ability to clone SecretKeys.

Cargo Casper (casper-node/execution_engine_testing/cargo_casper)

Changed

  • Update pinned version of Rust to nightly-2021-06-17

Test Support (casper-node/execution_engine_testing/test_support)

Changed

  • Update pinned version of Rust to nightly-2021-06-17

Contract (casper-node/smart_contracts/contract)

Changed

  • Update pinned version of Rust to nightly-2021-06-17

Don't miss a new casper-node release

NewReleases is sending notifications on new releases.