Skip to content

Releases: Cardinal-Cryptography/aleph-node

AlephNode Release 14.0.0

30 Dec 09:22
0788bc5
Compare
Choose a tag to compare
Pre-release

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 added
      • authorize_upgrade_without_checks added
      • apply_authorized_upgrade added
    • Storage:
      • AuthorizedUpgrade added
  • Pallet Balances changes

    • Constants:
      • MaxFreezes changed from 4 -> 50
  • 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 added
      • MaxNominatorRewardedPerValidator removed
    • Storages:

      • ClaimedRewards removed
      • ErasStakersOverview removed
      • ErasStakersPaged removed
  • Pallet Treasury changes:

    • Extrinsics:
      • spend changed
      • spend_local added
      • payout added
      • check_status added
      • void_spend added
    • Constants:
      • PayoutPeriod added
    • Storages:
      • SpendCount added
      • Spends added
  • Pallet Vesting changes:

    • Extrinsics:
      • force_remove_vesting_schedule added
  • Pallet Sudo changes:

    • Extrinsics:
      • remove_key added
  • Pallet NominationPools changes:

    • Extrinsics:
      • adjust_pool_deposit added
      • set_commission_claim_permision added
    • Constants:
      • MaxUnbounding added, set to 8
    • Storages:
      • TotalValueLocked added
  • Pallet Identity changes:

    • Extrinsics:
      • set_identity signature changed
      • set_fields signature changed
      • add_username_authority added
      • remove_username_authority added
      • set_username_for added
      • accept_username added
      • remove_expired_approval added
      • set_primary_username added
      • remove_dangling_username added
    • Constants:
      • ByteDeposit added
      • MasSuffixLenght added
      • MaxUsernameLength added
      • FieldDeposit removed
      • MaxAdditionalFields removed
    • Storages:
      • AccountOfUsername added
      • PendingUsernames added
      • UsernameAuthorities added
  • 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

08 Oct 12:47
b072940
Compare
Choose a tag to compare

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 added
      • ExponentialInflationHorizon added

Docker image

public.ecr.aws/p6e8q1z1/aleph-node:r-13.4

Runtime migrations

  • None

AlephNode Release 13.3

10 Apr 09:08
87ebe7c
Compare
Choose a tag to compare

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 to polkadot-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
    • Storage:
      • Holds return type changed
    • Constants:
      • MaxHolds changed from 0 to 50
      • MaxReserves changed from 0 to 50
  • Pallet Staking changes:
    • Constants
      • [BREAKING]MaxNominations removed
  • 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
  • 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

19 Mar 11:54
3b21ef4
Compare
Choose a tag to compare
Pre-release

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

12 Mar 09:04
f51a330
Compare
Choose a tag to compare

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

05 Mar 10:10
02b83f6
Compare
Choose a tag to compare
Pre-release

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
  • 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

22 Feb 10:17
ebd98ce
Compare
Choose a tag to compare
Pre-release

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 to polkadot-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
    • Storage:
      • Holds return type changed
    • Constants:
      • MaxHolds changed from 0 to 2
      • MaxReserves changed from 0 to 50
  • Pallet Staking changes:
    • Constants
      • [BREAKING]MaxNominations removed
  • 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

Docker image

public.ecr.aws/p6e8q1z1/aleph-node:r-13.0

Runtime migrations

  • Contracts: v12 -> v15

AlephNode Release 12.2

29 Nov 10:11
337ac41
Compare
Choose a tag to compare

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 version polkadot-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 in pallet_contracts has been changed to output the balance free to spend instead of just free balance. In particular calling env().balance() on a freshly-instantiated ink! contract returns 0 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 accepts controller argument
  • [BREAKING] Staking->set_controller extrinsic no longer accepts controller 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 to set_balance_deprecated
      • New: force_set_balance, transfer_allow_death
    • Storage:
      • Account return type changed
      • New: Freezes, Holds
    • Constants:
      • New: MaxFreezes, MaxHolds
  • Pallet NominationPools changes:
    • Extrinsics:
      • set_config extended with new argument global_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 changed
      • RewardPools return type and argument changed
      • New: ClaimPermissions, GlobalMaxCommission
    • RuntimeApi:
      • New: points_to_balance, balance_to_points
  • Pallet Contracts changes:
    • Extrinsics:
      • New: migrate
    • Storage:
      • Removed: CodeStorage, OwnerInfoOf
      • ContractInfoOf return type changed
      • DeletionQueue return type and argument changed
      • New: CodeInfoOf, DeletionQueueCounter, MigrationInProgress
    • Constants:
      • Removed: DeletionQueueDepth, DeletionWeightLimit
      • New: DefaultDepositLimit
    • RuntimeAPI:
      • call and instantiate performed in dry-run mode now return a list of events that would be emitted
  • Pallet System storage query Account 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 and WS_MAX_CONNECTIONS
  • set RPC_PORT=9944 and RPC_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

07 Nov 10:09
aef947a
Compare
Choose a tag to compare
Pre-release

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

24 Oct 08:07
1a00a8f
Compare
Choose a tag to compare
Aleph Node 12.0 Pre-release
Pre-release

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 version polkadot-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 accepts controller argument
  • [BREAKING] Staking->set_controller extrinsic no longer accepts controller 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 to set_balance_deprecated
      • New: force_set_balance, transfer_allow_death
    • Storage:
      • Account return type changed
      • New: Freezes, Holds
    • Constants:
      • New: MaxFreezes, MaxHolds
  • Pallet NominationPools changes:
    • Extrinsics:
      • set_config extended with new argument global_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 changed
      • RewardPools return type and argument changed
      • New: ClaimPermissions, GlobalMaxCommission
    • RuntimeApi:
      • New: points_to_balance, balance_to_points
  • Pallet Contracts changes:
    • Extrinsics:
      • New: migrate
    • Storage:
      • Removed: CodeStorage, OwnerInfoOf
      • ContractInfoOf return type changed
      • DeletionQueue return type and argument changed
      • New: CodeInfoOf, DeletionQueueCounter, MigrationInProgress
    • Constants:
      • Removed: DeletionQueueDepth, DeletionWeightLimit
      • New: DefaultDepositLimit
    • RuntimeAPI:
      • call and instantiate performed in dry-run mode now return a list of events that would be emitted
  • Pallet System storage query Account 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 and WS_MAX_CONNECTIONS
  • set RPC_PORT=9944 and RPC_MAX_CONNECTIONS=100
    See the changelog above if you're running any non-standard config: you might need to change some more variables accordingly.