Changelog
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.
- Add variable benchmarks to NFT pallet
- 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
- Updated Partner Attribution pallet
- Add Partner Attribution Pallet
- Dependency update for Grandpa fix
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
- 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
- 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
- XRPL NFT Bridging
- Introduce pallet-migration for multiblock migrations.
- Improve transact error handling
- Add standard PR template
- 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
- 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
- Adds support for token bridging from XRPL to TRN
- 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
- 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
- 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
- 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
- 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.
- 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
- Added Crowdsale pallet (
pallet-crowdsale
)
- Added SFT transfer event when a marketplace SFT listing is sold
- Added cargo doc automation script
- 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.
- 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
anddestinationTag
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.
- Updated root_human.json
- Updated the bootnodes list for both Root and Porcini
- Fixed a few bugs in the VortexDistribution pallet
- 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.
- 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.
- 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.
Was this page helpful?