Releases: AntelopeIO/leap
Leap v3.1.0-rc4
This is a RELEASE CANDIDATE for version 3.1.0. The latest STABLE release is v2.0.14.
This release contains several bug fixes, one small parameter update, and several changes to support the migration to the AntelopeIO organization. Please note that this release references changes committed in the EOS Network Foundation mandel repo.
Leap v3.1.0-rc4 Release Notes
Bug fixes and parameter adjustments
Reduce excessive logging of P2P handshake messages
In testing, it was discovered that when a node's full block log was not available that net plugin would unnecessarily send a handshake message for each unavailable block requested. Instead, the node will now disconnect from the peer with benign_other
and move on to a different peer to sync from. This mirrors the existing pattern for blk_send_branch
when a block is not available.
Increase default transaction-retry-max-expiration-sec
from 90 to 120
It was requested by the community to make a small parameter update to adjust the default transaction-retry-max-expiration-sec
to be aligned with the default values in eosio-core SDK when no expiration is specified.
Add missing file
package to list of installable packages for pinned builds
There was a minor omission in the installation scripts resulting in an error when file
package was not listed as an installable package.
Building, compatibility, and upgrading
New build procedure
The shell scripts previously recommended for building the software have been removed in favor of a build process entirely driven by CMake. Those wishing to build from source are now responsible for installing the necessary dependencies. The list of dependencies and the recommended build procedure are in the README.md
file. Instructions are also included for efficiently running the tests.
Ubuntu 18.04, 20.04, and 22.04 are the only build platforms that are supported. Other distributions, compilers, and platforms are known to work. Your mileage may vary.
Activating protocol features
The instructions below walk through how to activate the protocol features introduced in the 3.0 and 3.1 releases on a new Antelope blockchain, e.g. a new local test blockchain. Step 3 does not include the other protocol features introduced in prior releases that you can also activate; simply add additional cleos calls to activate them by the appropriate digest in a suitable order.
If activating the new protocol features on an existing blockchain, you will likely be able to jump ahead to step 3.
- Activate special protocol feature:
PREACTIVATE_FEATURE
All protocol features require a special protocol feature called PREACTIVATE_FEATURE
. If this has not already been activated, then first activate it by running:
curl --request POST \
--url http://<RPC_ENDPOINT_IP_PORT>/v1/producer/schedule_protocol_feature_activations \
-d '{"protocol_features_to_activate": ["0ec7e080177b2c02b278d5088611686b49d739925a92d9bfcacd7fc6b74053bd"]}'
- Install eosio.boot system contract
Activating other protocol features requires a privileged contract to call the appropriate host function to pre-activate the protocol feature. If the contract deployed on the eosio
account already has an activate
action, you will likely be able to skip this step and just use that action in the next step.
If you do not have any contract deployed on the eosio
account, as would be the case for a new blockchain, then you are recommended to deploy the system smart contract eosio.boot
to the eosio
account. To do this, run:
./cleos set contract eosio <EOS_SYSTEM_CONTRACTS_DIRECTORY>/contracts/eosio.boot/ eosio.boot.wasm eosio.boot.abi
- Activate remaining protocol features
Call the activate
action on the contract deployed on the eosio
account with a protocol feature's digest as an input to activate that protocol feature. Repeat this in the appropriate order for as many protocol features you wish to activate.
To get the a list of the digests of protocol features, run
curl -X POST http://<RPC_ENDPOINT_IP_PORT>/v1/producer/get_supported_protocol_features | jq .
and then look for feature_digest
field for each protocol feature.
New protocol features introduced in versions 3.0 and 3.1 do not have dependencies on other protocol features or each other. You can use any order to activate them. For example:
# ACTION_RETURN_VALUE
./cleos push action eosio activate '["c3a6138c5061cf291310887c0b5c71fcaffeab90d5deb50d3b9e687cead45071"]' -p eosio
# CONFIGURABLE_WASM_LIMITS2
./cleos push action eosio activate '["d528b9f6e9693f45ed277af93474fd473ce7d831dae2180cca35d907bd10cb40"]' -p eosio
# BLOCKCHAIN_PARAMETERS
./cleos push action eosio activate '["5443fcf88330c586bc0e5f3dee10e7f63c76c00249c87fe4fbf7f38c082006b4"]' -p eosio
# GET_CODE_HASH
./cleos push action eosio activate '["bcd2a26394b36614fd4894241d3c451ab0f6fd110958c3423073621a70826e99"]' -p eosio
# CRYPTO_PRIMITIVES
./cleos push action eosio activate '["6bcb40a24e49c26d0a60513b6aeb8551d264e4717f306b81a37a5afb3b47cedc"]' -p eosio
# GET_BLOCK_NUM
./cleos push action eosio activate '["35c2186cc36f7bb4aeaf4487b36e57039ccf45a9136aa856a5d569ecca55ef2b"]' -p eosio
Deprecations, removals, and dropped support
Dropped support
Ubuntu 16.04, Centos, and macOS
The only officially supported platforms are Ubuntu 18.04, 20.04 and 22.04. All others have been removed from binary package support and/or code level changes.
Developers using cleos
, nodeos
, etc. should look at DUNE which supports Windows 10 and 11, macOS, and any Linux that supports Docker.
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
- @heifner
- @766C6164
- @Lin2931
- @arhag
- @spoonincode
- @ClaytonCalabrese
Full list of changes since last release
PRs
- (mandel#791) [3.1] Reduce net_plugin handshake messages in case of unavailable blocks
- (mandel#807) [3.1] Added file package to the list of installable packages
- (mandel#809) [3.1] Increase default transaction-retry-max-expiration-sec from 90 to 120
- (2) Remove mandel and https://github.com/eosnetworkfoundation references in leap
- (4) bump wasm-spec-tests to latest antelope-main
- (5) Remove leap from deep-mind version logging; bump eos-vm and wasm-spec-tests versions
- (7) bump abieos to latest antelope-3.1
- (8) Migrate CI to ENF runners & new platform framework
- (9) fix package CONFLICTS
- (10) Update appbase submodule
- (12) change art to 🅻🅴🅰:parking:
- (11) [3.1] Antelope rename changes
Full Changelog: f63346e...v3.1.0-rc4