Skip to content

Releases: near/nearcore

1.32.1

23 Mar 14:10
Compare
Choose a tag to compare

Notice

This release of nearcore is a security release. It fixes a vulnerability in block outcome root validation and a vulnerability in total supply validation. These vulnerabilities, if exploited, could lead to state corruption and potentially loss of funds and other undesirable outcomes.

All node operators who updgraded to 1.32.0 must upgrade to 1.32.1 immediately.

This release contains no additional code or code changes beyond the patch that addresses the security vulnerability.

Fixes

  • address a vulnerability in block outcome root validation
  • address a vulnerability in total supply validation
CODE_COLOR: CODE_RED_MAINNET
RELEASE_VERSION: 1.32.1
PROTOCOL_UPGRADE: FALSE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: TRUE

1.32.0-rc.2

23 Mar 14:53
Compare
Choose a tag to compare
1.32.0-rc.2 Pre-release
Pre-release

Notice

This release of nearcore is a security release. It fixes a vulnerability in block outcome root validation and a vulnerability in total supply validation. These vulnerabilities, if exploited, could lead to state corruption and potentially loss of funds and other undesirable outcomes.

All testnet node operators must upgrade to 1.32.0-rc.2 immediately.

This release contains no additional code or code changes beyond the patch that addresses the security vulnerability.

Fixes

  • address a vulnerability in block outcome root validation
  • address a vulnerability in total supply validation
CODE_COLOR: CODE_RED_TESTNET
RELEASE_VERSION: 1.32.0-rc.2
PROTOCOL_UPGRADE: FALSE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: TRUE

1.32.0

22 Mar 09:10
Compare
Choose a tag to compare

1.32.0

CODE_COLOR: CODE_YELLOW_MAINNET
RELEASE_VERSION: 1.32.0
PROTOCOL_UPGRADE: TRUE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: FALSE

Protocol Changes

  • Stabilize ed25519_verify feature: introducing a host function to verify ed25519 signatures efficiently.
    #8098
    NEP-364
  • Added STUN-based self-discovery to make configuration of TIER1 network easier in the simplest validator setups.
    #8472
  • Stabilize zero balance account feature: allows account to not hold balance under certain conditions and enables a more smooth onboarding experience where users don't have to first acquire NEAR tokens to pay for the storage of their accounts.
    #8378
    NEP-448
  • Stabilize meta transactions on the protocol level.
    NEP-366,
    Tracking issue #8075,
    Stabilization #8601

Non-protocol Changes

  • /debug page now has client_config linked. You can also check your client_config directly at /debug/client_config

  • Added cold store loop - a background thread that copies data from hot to cold storage and a new json rpc endpoing - split_storage_info - that exposes debug info about the split storage.
    #8432

  • ClientConfig can be updated while the node is running. dyn_config.json is no longer needed as its contents were merged into config.json.
    #8240

Protocol Upgrade Voting

This release contains a protocol upgrade. Voting for upgrading to protocol version 59 will start on 2023-03-26 15:00:00 UTC

Database Upgrade

This release does not contain a database upgrade.

Config update note

This release does not contain any config changes that need to be applied manually.

Breaking changes in Near Lake Framework

Meta Transactions

The Near Protocol is soon releasing Meta transactions across its various chains. This update will introduce a new action type that enables third-party accounts to initiate and pay transaction fee on behalf of the account. A more in depth explanation can be found in NEP-366 and release schedule found below.

Release schedule

	Testnet - 2023-03-06
	Mainnet - 2023-03-20

Upgrading

In anticipation of this release, we have prepared new versions of the JavaScript and Rust Lake Frameworks. It is important that consumers of these libraries upgrade to the latest version of the libraries, failing to do so will result in unexpected behaviour or even errors when encountering the new action within your indexer.

With both libraries, upgrading requires installing the required versions, and ensuring you are handling the new Delegate type correctly. Required versions and relevant types for each library can be found below.

JavaScript

Rust

1.32.0-rc.1

06 Mar 11:43
Compare
Choose a tag to compare
1.32.0-rc.1 Pre-release
Pre-release

1.32.0-rc-1

CODE_COLOR: CODE_YELLOW_TESTNET
RELEASE_VERSION: 1.32.0-rc.1
PROTOCOL_UPGRADE: TRUE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: FALSE

Protocol Changes

  • Stabilize ed25519_verify feature: introducing a host function to verify ed25519 signatures efficiently.
    #8098
    NEP-364
  • Added STUN-based self-discovery to make configuration of TIER1 network easier in the simplest validator setups.
    #8472
  • Stabilize zero balance account feature: allows account to not hold balance under certain conditions and enables a more smooth onboarding experience where users don't have to first acquire NEAR tokens to pay for the storage of their accounts.
    #8378
    NEP-448
  • Stabilize meta transactions on the protocol level.
    NEP-366,
    Tracking issue #8075,
    Stabilization #8601

Non-protocol Changes

  • /debug page now has client_config linked. You can also check your client_config directly at /debug/client_config

  • Added cold store loop - a background thread that copies data from hot to cold storage and a new json rpc endpoing - split_storage_info - that exposes debug info about the split storage.
    #8432

  • ClientConfig can be updated while the node is running. dyn_config.json is no longer needed as its contents were merged into config.json.
    #8240

Protocol Upgrade Voting

This release contains a protocol upgrade. Voting for upgrading to protocol version 59 will start on 2023-03-13 15:00:00 UTC

Database Upgrade

This release does not contain a database upgrade.

Config update note

This release does not contain any config changes that need to be applied manually.

Breaking changes in Near Lake Framework

Meta Transactions

The Near Protocol is soon releasing Meta transactions across its various chains. This update will introduce a new action type that enables third-party accounts to initiate and pay transaction fee on behalf of the account. A more in depth explanation can be found in NEP-366 and release schedule found below.

Release schedule

    Testnet - 2023-03-06
    Mainnet - 2023-03-20

Upgrading

In anticipation of this release, we have prepared new versions of the JavaScript and Rust Lake Frameworks. It is important that consumers of these libraries upgrade to the latest version of the libraries, failing to do so will result in unexpected behaviour or even errors when encountering the new action within your indexer.

With both libraries, upgrading requires installing the required versions, and ensuring you are handling the new Delegate type correctly. Required versions and relevant types for each library can be found below.

JavaScript

Rust

1.31.1

14 Feb 17:33
Compare
Choose a tag to compare

Notice

This release of nearcore is a security release. It fixes a vulnerability in block outcome root validation and a vulnerability in total supply validation. These vulnerabilities, if exploited, could lead to state corruption and potentially loss of funds and other undesirable outcomes.

Prior to publishing this release, over 2/3 of mainnet block producers silently deployed the same patch that is incorporated into this release, thus securing mainnet from attacks related to the vulnerability.

It is strongly recommended that all node operators who have not directly patched their nodes do so immediately.

This release contains no additional code or code changes beyond the patch that addresses the security vulnerability.

Fixes

  • address a vulnerability in block outcome root validation
  • address a vulnerability in total supply validation
CODE_COLOR: CODE_YELLOW_MAINNET
RELEASE_VERSION: 1.31.1
PROTOCOL_UPGRADE: FALSE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: TRUE

1.31.0

07 Feb 10:56
Compare
Choose a tag to compare

Protocol Changes

  • An empty protocol upgrade to facilitate migration of the network interfaces in the next version.

Non-protocol changes

  • Enable TIER1 network. Participants of the BFT consensus (block & chunk producers) now can establish direct TIER1 connections
    between each other, which will optimize the communication latency and minimize the number of dropped chunks.
    To configure this feature, see advanced_configuration/networking. #8141, #8085, #7759
  • /status response has now two more fields: node_public_key and
    validator_public_key. The node_key field is now deprecated and should not
    be used since it confusingly holds validator key. #7828
  • Added near_node_protocol_upgrade_voting_start Prometheus metric whose value
    is timestamp when voting for the next protocol version starts. #7877
  • neard cmd can now verify proofs from JSON files. #7840
  • In storage configuration, the value trie_cache_capacities now is no longer
    a hard limit but instead sets a memory consumption limit. For large trie nodes,
    the limits are close to equivalent. For small values, there can now fit more
    in the cache than previously. #7749
  • New options store.trie_cache and store.view_trie_cache in config.json
    to set limits on the trie cache. Deprecates the never announced
    store.trie_cache_capacities option which was mentioned in previous change. #7578
  • New option store.background_migration_threads in config.json. Defines
    number of threads to execute background migrations of storage. Currently used
    for flat storage migration. Set to 8 by default, can be reduced if it slows down
    block processing too much or increased if you want to speed up migration. #8088,
  • Tracing of work across actix workers within a process: #7866, #7819, #7773.
  • Scope of collected tracing information can be configured at run-time: #7701.
  • Attach node's chain_id, node_id, and account_id values to tracing
    information: #7711.
  • Change exporter of tracing information from opentelemetry-jaeger to
    opentelemetry-otlp: #7563.
  • Tracing of requests across processes: #8004.

Protocol Upgrade Voting

Voting for upgrading to protocol version 58 will start on 2023-02-13 15:00:00 UTC

Database Upgrade

The release needs a database upgrade, which takes about 1 minute for an RPC node, and about 2 hour and 10 minutes for an Archival node.

Config update note

Please note that you may need to update config.json file.
Please ensure that config.json doesn't mention fields db_migration_snapshot_path or use_db_migration_snapshot.
Recommended to enable DB-migration snapshots like this:

"store": {
    "migration_snapshot": true
}
CODE_COLOR: CODE_YELLOW_MAINNET
RELEASE_VERSION: 1.31.0
PROTOCOL_UPGRADE: TRUE
DATABASE_UPGRADE: TRUE
SECURITY_UPGRADE: FALSE

1.31.0-rc.4

02 Feb 11:39
Compare
Choose a tag to compare
1.31.0-rc.4 Pre-release
Pre-release

Fixes

  • Security fix from 1.30.1
  • Rollback #8440 to fix the issue of validators missing chunks

This release doesn't have a protocol upgrade, but 1.31.0-rc.3 introduced a protocol upgrade which is scheduled to start after 2023-02-02 15:00:00 UTC.

CODE_COLOR: CODE_YELLOW_TESTNET
RELEASE_VERSION: 1.31.0-rc.4
PROTOCOL_UPGRADE: FALSE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: TRUE

1.30.1

01 Feb 17:54
Compare
Choose a tag to compare

Notice

This release of nearcore is a security release. It incorporates a patch that addresses a vulnerability related to slashing of stake, which was disabled by design, but imperfectly implemented. The vulnerability, if exploited, could have caused mainnet to crash and its state to be corrupted.

Prior to publishing this release, over 2/3 of mainnet block producers silently deployed the same patch that is incorporated into this release, thus securing mainnet from attacks related to the vulnerability.

It is strongly recommended that all node operators who have not directly patched their nodes do so immediately.

This release contains no additional code or code changes beyond the patch that addresses the security vulnerability.

Fixes

address a vulnerability related to slashing of stake

CODE_COLOR: CODE_YELLOW_MAINNET
RELEASE_VERSION: 1.30.1
PROTOCOL_UPGRADE: FALSE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: TRUE

1.31.0-rc.3

30 Jan 15:24
Compare
Choose a tag to compare
1.31.0-rc.3 Pre-release
Pre-release

Fixes

  • Exit with nonzero code on init cmd error (#8334)
  • Add back support for receiving StateResponse (#8377)
  • Revert "Tx status query not waiting for refunds" (#8388)
  • Fixed broadcasting AccountData after node restart. (#8407)

Protocol Upgrades

  • Protocol upgrade doesn't introduce new features, but makes it possible to deprecate some network messages in the next protocol version.

Voting for the protocol upgrade is scheduled to start after 2023-02-02 15:00:00 UTC.

CODE_COLOR: CODE_YELLOW_TESTNET
RELEASE_VERSION: 1.31.0-rc.3
PROTOCOL_UPGRADE: TRUE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: FALSE

1.31.0-rc.2

11 Jan 10:01
Compare
Choose a tag to compare
1.31.0-rc.2 Pre-release
Pre-release

Fixes

  • Un-deprecate AnnounceAccounts (undo #8182 )
CODE_COLOR: CODE_GREEN_TESTNET
RELEASE_VERSION: 1.31.0-rc.2
PROTOCOL_UPGRADE: FALSE
DATABASE_UPGRADE: FALSE
SECURITY_UPGRADE: FALSE