Releases: Cardinal-Cryptography/aleph-node
AlephNode Release 13.4
This is a runtime-only release.
Testnet deployment
Status: Done on 09.10.2024
Node upgrade deadline: Not mandatory (runtime-only release).
Mainnet deployment
Status : In progress on 14.10.2024
Node upgrade deadline: Not mandatory (runtime-only release).
Changelog
- New inflation calculation model (520 mln AZERO cap, first year emission 27 mln AZERO)
API changes
- Pallet Aleph changes:
- Calls:
- set_inflation_parameters
- Storage:
AzeroCap
addedExponentialInflationHorizon
added
- Calls:
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-13.4
Runtime migrations
- None
AlephNode Release 13.3
This is a major release.
Testnet deployment
Status : Deployed on 10.04.2024
Node upgrade deadline: N/A - already done
Mainnet deployment
Status : Deployed on 16.04.2024
Node upgrade deadline: 11:00 CET 23.04.2024
Changelog
- Pruning enabled by default
- Addition of pallet Proxy
- Substrate dependencies (including all pallets) upgraded from version
polkadot-v1.0.0
topolkadot-v1.2.0
(significant API changes! See below) - New AlephBFT version with better resilience to crashes and new finality protocol
- New normal sync mechanism:
- Periodic request
- Remove legacy block requests
- Forest memory limitations
- New metrics
- Fixed false positive equivocations panics
- Fixed underflow of consumers counter
- Fixed gas overcharging for contract calls performing cross-contract calls
- Added
staking.nominations_quota
runtime API - Increased
Balances.HoldReasons
to 50 - Decrease chain transaction fee
- Fix consumers underflow for controller accounts that have different stash account
- Increase the space in block for normal transactions
API changes
- Pallet Balances changes:
- Extrinsics:
- [BREAKING]
transfer
removed - [BREAKING]
set_balance_deprecated
removed
- [BREAKING]
- Storage:
Holds
return type changed
- Constants:
MaxHolds
changed from 0 to 50MaxReserves
changed from 0 to 50
- Extrinsics:
- Pallet Staking changes:
- Constants
- [BREAKING]
MaxNominations
removed
- [BREAKING]
- Constants
- Pallet Contracts changes:
- Storage:
ContractInfoOf
return type changed
- Constants:
- Changed
Schedule
- updated call weights - New:
CodeHashLockupDepositPercent
- New:
Environment
- New:
MaxDelegateDependencies
- Changed:
MaxCodeLen
from 131072 to 262144
- Changed
- Storage:
- Added
staking.nominations_quota
runtime API
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-13.3
Runtime migrations
- Contracts:
v12
->v15
AlephNode Release 13.2
Testnet deployment
Status : deployed on 19.03.2024
Node upgrade deadline: Runtime only release - update voluntary
Mainnet deployment
Status : pending
Node upgrade deadline: pending
Changelog
- Decrease chain transaction fee
- Fix consumers underflow for controller accounts that have different stash account
API changes
- None
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-13.2
Runtime migrations
- no runtime migrations
AlephNode Hotifx Release 12.3
This is a hotfix release (runtime only).
Mainnet deployment
Status : Deployed on 12.03.24
Node upgrade deadline: Runtime only release - update voluntary
Changelog
- Fixed gas overcharging for contract calls performing cross-contract calls
API changes
- N/A
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-12.3
Runtime migrations
- no runtime migrations
AlephNode Release 13.1
This is a hotfix release.
Testnet deployment
Status : deployed on 05.03.2024
Node upgrade deadline: 12.03.2024
Mainnet deployment
Status : pending
Node upgrade deadline:
Changelog
- Fixed false positive equivocations panics
- Fixed underflow of consumers counter
- Fixed gas overcharging for contract calls performing cross-contract calls
- Added
staking.nominations_quota
runtime API - Increased
Balances.HoldReasons
to 50
API changes
- Pallet balances changes:
- Constants:
MaxHolds
changed from 2 to 50
- Constants:
- Added
staking.nominations_quota
runtime API
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-13.1
Runtime migrations
- no runtime migrations
AlephNode Release 13.0
This is a major release.
Testnet deployment
Status : deployed on 22.02.2024
Node upgrade priority: critical
Mainnet deployment
Status : pending
Node upgrade priority: critical
Changelog
- Pruning enabled by default (tutorials for: aleph-node-runner building from source)
- Addition of pallet Proxy
- Substrate dependencies (including all pallets) upgraded from version
polkadot-v1.0.0
topolkadot-v1.2.0
(significant API changes! See below) - New AlephBFT version with better resilience to crashes and new finality protocol
- New normal sync mechanism:
- Periodic request
- Remove legacy block requests
- Forest memory limitations
- New metrics
API changes
- Pallet Balances changes:
- Extrinsics:
- [BREAKING]
transfer
removed - [BREAKING]
set_balance_deprecated
removed
- [BREAKING]
- Storage:
Holds
return type changed
- Constants:
MaxHolds
changed from 0 to 2MaxReserves
changed from 0 to 50
- Extrinsics:
- Pallet Staking changes:
- Constants
- [BREAKING]
MaxNominations
removed
- [BREAKING]
- Constants
- Pallet Contracts changes:
- Storage:
ContractInfoOf
return type changed
- Constants:
- Changed
Schedule
- updated call weights - New:
CodeHashLockupDepositPercent
- New:
Environment
- New:
MaxDelegateDependencies
- Changed:
MaxCodeLen
from 131072 to 262144
- Changed
- Storage:
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-13.0
Runtime migrations
- Contracts:
v12
->v15
AlephNode Release 12.2
Note: this page describes changes introduced cumulatively by releases 12.0 (the major release), 12.1 and 12.2.
This is a major release.
Testnet deployment
Status : deployed on 29.11.2023
Node upgrade priority: high
Mainnet deployment
Status : deployed on 25.01.2024
Node upgrade priority: high
Changelog
- Separate controller accounts in staking are deprecated. Existing controller accounts will keep working as usual, but new users who join staking will be forced to use a single account for staking (in other words - their stash and controller accounts will be the same account)
- New version of contracts pallet. Smart contracts written in ink! should be compiled with
cargo contract
version 3.2.0 - Separate port for RPC requests is removed. Now both WebSocket and RPC traffic is handled on the same port
- All Substrate dependencies (including all pallets!) upgraded from version
polkadot-v0.9.38
to versionpolkadot-v1.0.0
(significant API changes! See below) - Native execution of runtime removed - all execution is handled by the on-chain WASM runtime now
- Changes to internal block sync request mechanism
- (added in 12.1) fixed a bug where the node would sometimes not finalize blocks during a major sync
- (added in 12.1) made it possible to start a node with a DB that contains a lot of non-finalized blocks
- (added in 12.2) To match the previous behavior the
seal_balance
call inpallet_contracts
has been changed to output the balance free to spend instead of just free balance. In particular callingenv().balance()
on a freshly-instantiatedink!
contract returns0
instead of the existential deposit.
API changes
- [BREAKING] The default port for RPC over HTTP is no longer 9933. The default RPC port (for both WS and HTTP) is now 9944
- [BREAKING]
Staking->bond
extrinsic no longer acceptscontroller
argument - [BREAKING]
Staking->set_controller
extrinsic no longer acceptscontroller
argument - New RPC call
alephNode_ready
- New RPC call
alephNode_getBlockAuthor
- New runtime call
AlephSessionApi
->predict_session_committee
- Pallet Balances changes:
- Extrinsics:
set_balance
renamed toset_balance_deprecated
- New:
force_set_balance
,transfer_allow_death
- Storage:
Account
return type changed- New:
Freezes
,Holds
- Constants:
- New:
MaxFreezes
,MaxHolds
- New:
- Extrinsics:
- Pallet NominationPools changes:
- Extrinsics:
set_config
extended with new argumentglobal_max_commission
- New:
bond_extra_other
,claim_commission
,set_claim_permission
,set_commission
,set_commission_change_rate
,set_commission_max
,claim_payout_other
- Storage:
BondedPools
return type changedRewardPools
return type and argument changed- New:
ClaimPermissions
,GlobalMaxCommission
- RuntimeApi:
- New:
points_to_balance
,balance_to_points
- New:
- Extrinsics:
- Pallet Contracts changes:
- Extrinsics:
- New:
migrate
- New:
- Storage:
- Removed:
CodeStorage
,OwnerInfoOf
ContractInfoOf
return type changedDeletionQueue
return type and argument changed- New:
CodeInfoOf
,DeletionQueueCounter
,MigrationInProgress
- Removed:
- Constants:
- Removed:
DeletionQueueDepth
,DeletionWeightLimit
- New:
DefaultDepositLimit
- Removed:
- RuntimeAPI:
call
andinstantiate
performed in dry-run mode now return a list of events that would be emitted
- Extrinsics:
- Pallet
System
storage queryAccount
return type changed
CLI changes
- [BREAKING]
--ws-port replaced
by--rpc-port
- [BREAKING]
--ws-max-connections replaced
by--rpc-max-connections
- [BREAKING]
--ws-external
replaced by--rpc-external
- [BREAKING]
--unsafe-ws-external
replaced by--unsafe-rpc-external
- [BREAKING]
--rpc-http
and--rpc-ws
replaced by--rpc-addr
- [BREAKING]
--rpc-max-payload
replaced by--rpc-max-request-size
and--rpc-max-response-size
- [BREAKING]
--ws-max-out-buffer-capacity
removed - [BREAKING]
--ipc-path
removed - The following arguments have no effect and are DEPRECATED:
--execution-syncing
,--execution-import-block
,--execution-block-construction
,--execution-offchain-worker
,--execution-other
,--execution
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-12.0
Runtime migrations
- Nomination pools:
v3
->v5
- Contracts:
v9
->v12
Node upgrade instructions
aleph-node-runner
To accommodate for changes in the aleph-node
, the Aleph Node Runner was also significantly changed and improved. To get the newest changes you will need to EITHER:
- do a
git pull
- delete the whole repo and
git clone
it again
In either case, please make sure to back up any configuration changes you made to your setup.
The new node runner will automatically detect the aleph-node
version to run, so every time you restart it from now on, it will be on the correct version for the network you're targeting (Testnet or Mainnet).
Building from source
In most cases, the only difference from the usual procedure will be that you will need to modify the environment variables:
- remove
WS_PORT
andWS_MAX_CONNECTIONS
- set
RPC_PORT=9944
andRPC_MAX_CONNECTIONS=100
See the changelog above if you're running any non-standard config: you might need to change some more variables accordingly.
AlephNode release 12.1
Hotfix release. Host code change only.
- fixed a bug where the node would sometimes not finalize blocks during a major sync
- made it possible to start a node with a DB that contains a lot of non-finalized blocks
Aleph Node 12.0
This is a major release.
Testnet deployment
Status : Deployed on 24.10
Node upgrade priority: high
Mainnet deployment
Status : Abandoned
Changelog
- Separate controller accounts in staking are deprecated. Existing controller accounts will keep working as usual, but new users who join staking will be forced to use a single account for staking (in other words - their stash and controller accounts will be the same account)
- New version of contracts pallet. Smart contracts written in ink! should be compiled with
cargo contract
version 3.2.0 - Separate port for RPC requests is removed. Now both WebSocket and RPC traffic is handled on the same port
- All Substrate dependencies (including all pallets!) upgraded from version
polkadot-v0.9.38
to versionpolkadot-v1.0.0
(significant API changes! See below) - Native execution of runtime removed - all execution is handled by the on-chain WASM runtime now
- Changes to internal block sync request mechanism
API changes
- [BREAKING] The default port for RPC over HTTP is no longer 9933. The default RPC port (for both WS and HTTP) is now 9944
- [BREAKING]
Staking->bond
extrinsic no longer acceptscontroller
argument - [BREAKING]
Staking->set_controller
extrinsic no longer acceptscontroller
argument - New RPC call
alephNode_ready
- New RPC call
alephNode_getBlockAuthor
- New runtime call
AlephSessionApi
->predict_session_committee
- Pallet Balances changes:
- Extrinsics:
set_balance
renamed toset_balance_deprecated
- New:
force_set_balance
,transfer_allow_death
- Storage:
Account
return type changed- New:
Freezes
,Holds
- Constants:
- New:
MaxFreezes
,MaxHolds
- New:
- Extrinsics:
- Pallet NominationPools changes:
- Extrinsics:
set_config
extended with new argumentglobal_max_commission
- New:
bond_extra_other
,claim_commission
,set_claim_permission
,set_commission
,set_commission_change_rate
,set_commission_max
,claim_payout_other
- Storage:
BondedPools
return type changedRewardPools
return type and argument changed- New:
ClaimPermissions
,GlobalMaxCommission
- RuntimeApi:
- New:
points_to_balance
,balance_to_points
- New:
- Extrinsics:
- Pallet Contracts changes:
- Extrinsics:
- New:
migrate
- New:
- Storage:
- Removed:
CodeStorage
,OwnerInfoOf
ContractInfoOf
return type changedDeletionQueue
return type and argument changed- New:
CodeInfoOf
,DeletionQueueCounter
,MigrationInProgress
- Removed:
- Constants:
- Removed:
DeletionQueueDepth
,DeletionWeightLimit
- New:
DefaultDepositLimit
- Removed:
- RuntimeAPI:
call
andinstantiate
performed in dry-run mode now return a list of events that would be emitted
- Extrinsics:
- Pallet
System
storage queryAccount
return type changed
CLI changes
- [BREAKING]
--ws-port replaced
by--rpc-port
- [BREAKING]
--ws-max-connections replaced
by--rpc-max-connections
- [BREAKING]
--ws-external
replaced by--rpc-external
- [BREAKING]
--unsafe-ws-external
replaced by--unsafe-rpc-external
- [BREAKING]
--rpc-http
and--rpc-ws
replaced by--rpc-addr
- [BREAKING]
--rpc-max-payload
replaced by--rpc-max-request-size
and--rpc-max-response-size
- [BREAKING]
--ws-max-out-buffer-capacity
removed - [BREAKING]
--ipc-path
removed - The following arguments have no effect and are DEPRECATED:
--execution-syncing
,--execution-import-block
,--execution-block-construction
,--execution-offchain-worker
,--execution-other
,--execution
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-12.0
Runtime migrations
- Nomination pools:
v3
->v5
- Contracts:
v9
->v12
Node upgrade instructions
aleph-node-runner
To accommodate for changes in the aleph-node
, the Aleph Node Runner was also significantly changed and improved. To get the newest changes you will need to EITHER:
- do a
git pull
- delete the whole repo and
git clone
it again
In either case, please make sure to back up any configuration changes you made to your setup.
The new node runner will automatically detect the aleph-node
version to run, so every time you restart it from now on, it will be on the correct version for the network you're targeting (Testnet or Mainnet).
Building from source
In most cases, the only difference from the usual procedure will be that you will need to modify the environment variables:
- remove
WS_PORT
andWS_MAX_CONNECTIONS
- set
RPC_PORT=9944
andRPC_MAX_CONNECTIONS=100
See the changelog above if you're running any non-standard config: you might need to change some more variables accordingly.
AlephNode Release 11.4
Bump runtime transaction_version
from 14 to 16 to restore compatibility with the Ledger app. This has no impact whatsoever unless you depend on transaction_version
in your app.