Keep track of every change to The Root Network.

This changelog lists all additions and updates to the The Root Network API, in chronological order.

2025-02-12
Update
v10.68.0
  • Add variable benchmarks to NFT pallet
2025-03-03
v10.67.0
  • Updated the FeeProxy pallet to allow partners to accumulate fees via the PartnerAttribution pallet - if the partner has a fee percentage set (by an admin account).
  • Update the nft and sft pallets to support issuing of soulbound tokens, and update the ERC721 and ERC1155 precompiles to support the ERC5484 interface.
  • Removes the sort function from NFT.add_user_tokens
  • Use the Futurepass balance for the Proxy ROOT deposit when calling add_delegate_with_signature
2025-02-20
v10.66.0
  • Updated Partner Attribution pallet
2025-02-04
v10.65.0
  • Add Partner Attribution Pallet
  • Dependency update for Grandpa fix
2025-01-17
v9.64.0

Add nft_collectionDetails RPC call

  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add a check for NFI Data before emitting event on burn
  • Add set_token_name extrinsic to the SFT pallet
  • Introduce Sylo Data Verification Pallet
  • Update nft burn event to include a signer
2025-01-17
v9.64.0
  • Add nft_collectionDetails RPC call
  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add a check for NFI Data before emitting event on burn
  • Add set_token_name extrinsic to the SFT pallet
  • Introduce Sylo Data Verification Pallet
  • Update nft burn event to include a signer
2024-12-06
v8.63.0
  • Add multi-chain support to NFI pallet
  • Add ERC-165 support for the ERC-721 precompile
  • Remove unused dependencies
  • Remove storage getters from pallets in preparation for Substrate Upgrade
  • Add Destination tag to XRPL alt token bridge
  • Tidy up codebase to remove unwrap() and fix clippy warnings
2024-11-07
v8.62.0
  • XRPL NFT Bridging
  • Introduce pallet-migration for multiblock migrations.
  • Improve transact error handling
  • Add standard PR template
2024-10-17
v8.61.0
  • Fix for runtime migration to deploy EIP-2470 and Universal deployer via a runtime upgrade. A bugfix is included as a commit to remove additional checks which prevent internal migration code from executing; this also reduces migration weight
2024-09-18
v8.59.0
  • Adds SFT support to the marketplace precompile
  • Fixes bug that lets simple offers be made on non-existent tokens
  • Allows payment delay to be set on individual assets in XRPL bridge
2024-09-04
v8.58.0
  • Adds support for token bridging from XRPL to TRN
2024-08-27
v8.57.0
  • Adds NFI pallet which can be used to enable NFI compatibility for any NFT or SFT collection
  • Adds ECAdd, ECMul and ECPairing precompiles
  • Adds additional utility flags to NFT and SFT collections that allow the prevention of minting, transferring, and burning
2024-08-07
v8.56.0
  • Upgrade Substrate to v1.0.0
  • Update MAXIMUM_BLOCK_WEIGHT to 1s
  • Update BLOCK_GAS_LIMIT to 15 Million
  • Update the build toolchain to stable 1.80.0
2024-05-16
v7.54.0
  • Fixes validator set issue on authorities change
  • Fixes eth paused on authorities set change bug
  • Optimises ethy on_initialise functionality
  • Add benchmarks to Ethy pallet
2024-04-30
v7.53.0
  • Fixed a bug with XRPL transact mempool validation; incorrect tx origin may be used for FuturePass based extrinsics
  • Add a toggle to enable/disable the delay mechanism for either deposit or withdraw
  • Remove deprecated Futurepass Migration code
  • Adds XRPL transaction signing support for ed25519
  • Fixes token lock bug for closed auctions
  • Update Ethy and ERC20-Peg to FrameV2
2024-04-24
v7.52.0
  • Ethy gadget Witness message pruning based on the finalized block number
  • Redundant network gossip activity should be significantly reduced.
  • Should provide fixes for the current peer drop issue.
  • All the existing gossip Witness messages would be discarded due to the new format
  • There is a chance of discarding witnesses before they can form the proof if goes out of the live window. A separate mechanism to handle these scenarios will be introduced later.
  • Ensure at least 66% of the active validators are upgraded to the new image to avoid halting the proof formation.
2024-03-19
v5.52.0
  • Adds a total contributors parameter to the SaleInfo Struct within pallet-crowdsale that keeps track of total unique contributors
  • Adds fix that disallows public mint enabled collections to be crowdsale initialised
  • Adds proxy_vault_call extrinsic to crowdsale pallet which allows admin access to NFT collection info
  • Adds optional parameters to set custom name and symbol to voucher asset when initialising crowdsale
2024-03-08
v5.51.0
  • Added Crowdsale pallet (pallet-crowdsale)
2024-03-05
v5.50.0
  • Added SFT transfer event when a marketplace SFT listing is sold
  • Added cargo doc automation script
2024-02-22
v5.49.0
  • Prefix Futurepass precompile revert messages
  • Adds BlockNumber field to xrplBridge.WithdrawDelayed event
  • Adds pallet-xrpl which allows for the submission of signed XRPL transactions
  • Adds pallet-doughnut which adds support for permissioned doughnut based transaction execution
  • Adds SFT token support to the native marketplace pallet.
2024-01-23
v5.48.0
  • Introduced NFT marketplace precompile, enabling the trading of NFTs on the marketplace via Solidity interface at 0x00000000000000000000000000000000000006CD.
  • Unified RPC call to get balance for Root and other assets.
  • Added the ability to include sourceTag and destinationTag for XRPL withdraw (bridging TRN->XRPL).
  • Added ability to burn ERC721 assets via precompile.
  • Implemented fixes for tate fork script.
  • Updated self-contained call interfaces (future PR pre-req)
  • Fixed ERC20 precompile to validate maintenance mode restrictions.
  • Added a delay mechanism for large XRPL bridging transactions.
  • Updated bootnode list for Porcini and Root in the chainspec.
  • Optimized gas required for contract deployment by removing fees
  • Added a fix for ERC20 precompile asset existence verification.
2023-12-19
Archived
v4.47.1
  • Updated root_human.json
  • Updated the bootnodes list for both Root and Porcini
2023-12-07
Archived
v4.47.0
  • Fixed a few bugs in the VortexDistribution pallet
2023-12-05
Archived
v4.46.0
  • Optimised XRPL pruning by moving pruning logic into on_idle.
  • Reduced the collection royalty entitlements limit from 8 to 6. Caution: This change does not migrate any existing collections. However, if collections contain royalties with more than 6 entitlements, it is advised to reduce this number to avoid issues with marketplace support.
  • Added maintenance mode pallet which allows the sudo key to block calls, pallets, accounts, EVM addresses, or enter the whole chain into maintenance mode.
  • Added some helpful extrinsics to AssetsExt for mint, transfer and burn which route to the balances or assets pallet based on the AssetId.
  • Added the ability to set the asset deposit for creating a new asset at runtime.
  • Restricted Asset decimals to maximum 18 DP when creating a new asset.
  • Reverted dual staking functionality in favor of a more generic single-token staking mechanism.
  • Continuous improvements to our test environment, which should increase the speed at which we can write unit tests.
2023-11-15
Archived
v4.45.0
  • Changed pay_unsigned to mint directly to the vault account. This simplification streamlines the distribution process by eliminating intermediate steps.
  • Removed the requirement to specify an amount when creating a new vortex distribution. The TotalVortex will now be utilized to manage the aggregated reward pool dynamically.
  • The price parameter has been temporarily deprecated as it is not currently utilized in the distribution logic.
  • Removed the vault parameter from the function signature. The vault will now be funded manually prior to reward distribution.
  • Removed the obsolete get_vault_account function, as account management will be handled more efficiently with the new logic.
  • Consolidated root and multisig operations, simplifying the administrative process.
  • Set root vault and fee vault addresses to fixed values to ensure consistency and security across transactions.
2023-11-15
Archived
v4.44.0
  • Fixed an issue in gas calculation of the ERC-20 precompile. It now charges the correct amount:
    • transfer should cost ~ 317,060 drops
    • transferFrom should cost ~ 358,396 drops
  • Added an admin extrinsic set_length_multiplier, allowing control of the gas scaling by the length of the transaction.
  • Introduced public mint functionalities for NFT and SFT pallets enabling any account to mint tokens from the enabled collections:
    • Disabled by default, it needs to be enabled with the toggle_public_mint extrinsic.
    • Mint fee can be set using the set_mint_fee extrinsic.
  • Added Vortex token distribution pallet, facilitating the distribution of Vortex tokens at the end of a 90 day cycle:
    • Asset prices are calculated off-chain and provided with the use of an admin function set_asset_prices.
    • Token distribution amounts can be specified per account using the admin function register_rewards.
    • Vortex distribution is calculated, and tokens are minted through the admin function trigger_vtx_distribution.
    • Vortex payout is enabled through the use of an admin function start_vtx_dist.
    • Users can manually claim their tokens through the extrinsic, redeem_tokens_from_vault.
  • Enabled bridging of ROOT token through existing ERC20-Peg. This differs from standard ERC20 bridging, as it transfers tokens to and from the erc20-peg pallet address rather than burning/minting on demand.
  • Disabled submit_challenge extrinsic on the ETH bridge.

Keep track of every change to The Root Network.

This changelog lists all additions and updates to the The Root Network API, in chronological order.

2025-02-12
Update
v10.68.0
  • Add variable benchmarks to NFT pallet
2025-03-03
v10.67.0
  • Updated the FeeProxy pallet to allow partners to accumulate fees via the PartnerAttribution pallet - if the partner has a fee percentage set (by an admin account).
  • Update the nft and sft pallets to support issuing of soulbound tokens, and update the ERC721 and ERC1155 precompiles to support the ERC5484 interface.
  • Removes the sort function from NFT.add_user_tokens
  • Use the Futurepass balance for the Proxy ROOT deposit when calling add_delegate_with_signature
2025-02-20
v10.66.0
  • Updated Partner Attribution pallet
2025-02-04
v10.65.0
  • Add Partner Attribution Pallet
  • Dependency update for Grandpa fix
2025-01-17
v9.64.0

Add nft_collectionDetails RPC call

  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add a check for NFI Data before emitting event on burn
  • Add set_token_name extrinsic to the SFT pallet
  • Introduce Sylo Data Verification Pallet
  • Update nft burn event to include a signer
2025-01-17
v9.64.0
  • Add nft_collectionDetails RPC call
  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add ERC-165 support ERC-20 and ERC-1155 EVM precompiles
  • Add a check for NFI Data before emitting event on burn
  • Add set_token_name extrinsic to the SFT pallet
  • Introduce Sylo Data Verification Pallet
  • Update nft burn event to include a signer
2024-12-06
v8.63.0
  • Add multi-chain support to NFI pallet
  • Add ERC-165 support for the ERC-721 precompile
  • Remove unused dependencies
  • Remove storage getters from pallets in preparation for Substrate Upgrade
  • Add Destination tag to XRPL alt token bridge
  • Tidy up codebase to remove unwrap() and fix clippy warnings
2024-11-07
v8.62.0
  • XRPL NFT Bridging
  • Introduce pallet-migration for multiblock migrations.
  • Improve transact error handling
  • Add standard PR template
2024-10-17
v8.61.0
  • Fix for runtime migration to deploy EIP-2470 and Universal deployer via a runtime upgrade. A bugfix is included as a commit to remove additional checks which prevent internal migration code from executing; this also reduces migration weight
2024-09-18
v8.59.0
  • Adds SFT support to the marketplace precompile
  • Fixes bug that lets simple offers be made on non-existent tokens
  • Allows payment delay to be set on individual assets in XRPL bridge
2024-09-04
v8.58.0
  • Adds support for token bridging from XRPL to TRN
2024-08-27
v8.57.0
  • Adds NFI pallet which can be used to enable NFI compatibility for any NFT or SFT collection
  • Adds ECAdd, ECMul and ECPairing precompiles
  • Adds additional utility flags to NFT and SFT collections that allow the prevention of minting, transferring, and burning
2024-08-07
v8.56.0
  • Upgrade Substrate to v1.0.0
  • Update MAXIMUM_BLOCK_WEIGHT to 1s
  • Update BLOCK_GAS_LIMIT to 15 Million
  • Update the build toolchain to stable 1.80.0
2024-05-16
v7.54.0
  • Fixes validator set issue on authorities change
  • Fixes eth paused on authorities set change bug
  • Optimises ethy on_initialise functionality
  • Add benchmarks to Ethy pallet
2024-04-30
v7.53.0
  • Fixed a bug with XRPL transact mempool validation; incorrect tx origin may be used for FuturePass based extrinsics
  • Add a toggle to enable/disable the delay mechanism for either deposit or withdraw
  • Remove deprecated Futurepass Migration code
  • Adds XRPL transaction signing support for ed25519
  • Fixes token lock bug for closed auctions
  • Update Ethy and ERC20-Peg to FrameV2
2024-04-24
v7.52.0
  • Ethy gadget Witness message pruning based on the finalized block number
  • Redundant network gossip activity should be significantly reduced.
  • Should provide fixes for the current peer drop issue.
  • All the existing gossip Witness messages would be discarded due to the new format
  • There is a chance of discarding witnesses before they can form the proof if goes out of the live window. A separate mechanism to handle these scenarios will be introduced later.
  • Ensure at least 66% of the active validators are upgraded to the new image to avoid halting the proof formation.
2024-03-19
v5.52.0
  • Adds a total contributors parameter to the SaleInfo Struct within pallet-crowdsale that keeps track of total unique contributors
  • Adds fix that disallows public mint enabled collections to be crowdsale initialised
  • Adds proxy_vault_call extrinsic to crowdsale pallet which allows admin access to NFT collection info
  • Adds optional parameters to set custom name and symbol to voucher asset when initialising crowdsale
2024-03-08
v5.51.0
  • Added Crowdsale pallet (pallet-crowdsale)
2024-03-05
v5.50.0
  • Added SFT transfer event when a marketplace SFT listing is sold
  • Added cargo doc automation script
2024-02-22
v5.49.0
  • Prefix Futurepass precompile revert messages
  • Adds BlockNumber field to xrplBridge.WithdrawDelayed event
  • Adds pallet-xrpl which allows for the submission of signed XRPL transactions
  • Adds pallet-doughnut which adds support for permissioned doughnut based transaction execution
  • Adds SFT token support to the native marketplace pallet.
2024-01-23
v5.48.0
  • Introduced NFT marketplace precompile, enabling the trading of NFTs on the marketplace via Solidity interface at 0x00000000000000000000000000000000000006CD.
  • Unified RPC call to get balance for Root and other assets.
  • Added the ability to include sourceTag and destinationTag for XRPL withdraw (bridging TRN->XRPL).
  • Added ability to burn ERC721 assets via precompile.
  • Implemented fixes for tate fork script.
  • Updated self-contained call interfaces (future PR pre-req)
  • Fixed ERC20 precompile to validate maintenance mode restrictions.
  • Added a delay mechanism for large XRPL bridging transactions.
  • Updated bootnode list for Porcini and Root in the chainspec.
  • Optimized gas required for contract deployment by removing fees
  • Added a fix for ERC20 precompile asset existence verification.
2023-12-19
Archived
v4.47.1
  • Updated root_human.json
  • Updated the bootnodes list for both Root and Porcini
2023-12-07
Archived
v4.47.0
  • Fixed a few bugs in the VortexDistribution pallet
2023-12-05
Archived
v4.46.0
  • Optimised XRPL pruning by moving pruning logic into on_idle.
  • Reduced the collection royalty entitlements limit from 8 to 6. Caution: This change does not migrate any existing collections. However, if collections contain royalties with more than 6 entitlements, it is advised to reduce this number to avoid issues with marketplace support.
  • Added maintenance mode pallet which allows the sudo key to block calls, pallets, accounts, EVM addresses, or enter the whole chain into maintenance mode.
  • Added some helpful extrinsics to AssetsExt for mint, transfer and burn which route to the balances or assets pallet based on the AssetId.
  • Added the ability to set the asset deposit for creating a new asset at runtime.
  • Restricted Asset decimals to maximum 18 DP when creating a new asset.
  • Reverted dual staking functionality in favor of a more generic single-token staking mechanism.
  • Continuous improvements to our test environment, which should increase the speed at which we can write unit tests.
2023-11-15
Archived
v4.45.0
  • Changed pay_unsigned to mint directly to the vault account. This simplification streamlines the distribution process by eliminating intermediate steps.
  • Removed the requirement to specify an amount when creating a new vortex distribution. The TotalVortex will now be utilized to manage the aggregated reward pool dynamically.
  • The price parameter has been temporarily deprecated as it is not currently utilized in the distribution logic.
  • Removed the vault parameter from the function signature. The vault will now be funded manually prior to reward distribution.
  • Removed the obsolete get_vault_account function, as account management will be handled more efficiently with the new logic.
  • Consolidated root and multisig operations, simplifying the administrative process.
  • Set root vault and fee vault addresses to fixed values to ensure consistency and security across transactions.
2023-11-15
Archived
v4.44.0
  • Fixed an issue in gas calculation of the ERC-20 precompile. It now charges the correct amount:
    • transfer should cost ~ 317,060 drops
    • transferFrom should cost ~ 358,396 drops
  • Added an admin extrinsic set_length_multiplier, allowing control of the gas scaling by the length of the transaction.
  • Introduced public mint functionalities for NFT and SFT pallets enabling any account to mint tokens from the enabled collections:
    • Disabled by default, it needs to be enabled with the toggle_public_mint extrinsic.
    • Mint fee can be set using the set_mint_fee extrinsic.
  • Added Vortex token distribution pallet, facilitating the distribution of Vortex tokens at the end of a 90 day cycle:
    • Asset prices are calculated off-chain and provided with the use of an admin function set_asset_prices.
    • Token distribution amounts can be specified per account using the admin function register_rewards.
    • Vortex distribution is calculated, and tokens are minted through the admin function trigger_vtx_distribution.
    • Vortex payout is enabled through the use of an admin function start_vtx_dist.
    • Users can manually claim their tokens through the extrinsic, redeem_tokens_from_vault.
  • Enabled bridging of ROOT token through existing ERC20-Peg. This differs from standard ERC20 bridging, as it transfers tokens to and from the erc20-peg pallet address rather than burning/minting on demand.
  • Disabled submit_challenge extrinsic on the ETH bridge.