Releases: Cardinal-Cryptography/aleph-node
AlephNode Release 14.0.0
This is a major release.
Testnet deployment
Status: Deployed on 30.12.2024
Node upgrade deadline: 07.01.2025 11:00 AM UTC
Mainnet deployment
Status: pending
Node upgrade deadline: pending
Changelog
- Substrate dependencies (including all pallets) upgraded from version polkadot-v1.2.0 to polkadot-v1.6.0
- New block sync protocol fully included and old one disabled
- New AlephBft version
- 1024 nominator limit on single validator has been lifted.
API changes
-
Pallet
System
changes- Extrinsics:
authorize_upgrade
addedauthorize_upgrade_without_checks
addedapply_authorized_upgrade
added
- Storage:
AuthorizedUpgrade
added
- Extrinsics:
-
Pallet
Balances
changes- Constants:
MaxFreezes
changed from 4 -> 50
- Constants:
-
Pallet
Staking
changes-
Extrinsics:
-
chill_other
signature change (non breaking change - rename first argument) -
payout_stakers_by_page
added -
update_payee
added -
deprecate_controller_batch
added -
Constants:
MaxExposurePageSize
addedMaxNominatorRewardedPerValidator
removed
-
Storages:
ClaimedRewards
removedErasStakersOverview
removedErasStakersPaged
removed
-
-
Pallet
Treasury
changes:- Extrinsics:
spend
changedspend_local
addedpayout
addedcheck_status
addedvoid_spend
added
- Constants:
PayoutPeriod
added
- Storages:
SpendCount
addedSpends
added
- Extrinsics:
-
Pallet
Vesting
changes:- Extrinsics:
force_remove_vesting_schedule
added
- Extrinsics:
-
Pallet
Sudo
changes:- Extrinsics:
remove_key
added
- Extrinsics:
-
Pallet
NominationPools
changes:- Extrinsics:
adjust_pool_deposit
addedset_commission_claim_permision
added
- Constants:
MaxUnbounding
added, set to 8
- Storages:
TotalValueLocked
added
- Extrinsics:
-
Pallet
Identity
changes:- Extrinsics:
set_identity
signature changedset_fields
signature changedadd_username_authority
addedremove_username_authority
addedset_username_for
addedaccept_username
addedremove_expired_approval
addedset_primary_username
addedremove_dangling_username
added
- Constants:
ByteDeposit
addedMasSuffixLenght
addedMaxUsernameLength
addedFieldDeposit
removedMaxAdditionalFields
removed
- Storages:
AccountOfUsername
addedPendingUsernames
addedUsernameAuthorities
added
- Extrinsics:
-
New pallets TxPause and SafeMode
Docker image
public.ecr.aws/p6e8q1z1/aleph-node:r-14.0.0
Runtime migrations
- NominationPools from v6 to v8
- Staking to v14
- Identity to v1
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.