> ## Documentation Index
> Fetch the complete documentation index at: https://docs.therootnetwork.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 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.

<Update label="2025-02-12" description="v10.68.0" tags={['Update']}>
  * Add variable benchmarks to NFT pallet
</Update>

<Update label="2025-03-03" description="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
</Update>

<Update label="2025-02-20" description="v10.66.0">
  * Updated Partner Attribution pallet
</Update>

<Update label="2025-02-04" description="v10.65.0">
  * Add Partner Attribution Pallet
  * Dependency update for Grandpa fix
</Update>

<Update label="2025-01-17" description="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
</Update>

<Update label="2025-01-17" description="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
</Update>

<Update label="2024-12-06" description="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
</Update>

<Update label="2024-11-07" description="v8.62.0">
  * XRPL NFT Bridging
  * Introduce pallet-migration for multiblock migrations.
  * Improve transact error handling
  * Add standard PR template
</Update>

<Update label="2024-10-17" description="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
</Update>

<Update label="2024-09-18" description="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
</Update>

<Update label="2024-09-04" description="v8.58.0">
  * Adds support for token bridging from XRPL to TRN
</Update>

<Update label="2024-08-27" description="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
</Update>

<Update label="2024-08-07" description="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`
</Update>

<Update label="2024-05-16" description="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
</Update>

<Update label="2024-04-30" description="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
</Update>

<Update label="2024-04-24" description="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.
</Update>

<Update label="2024-03-19" description="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
</Update>

<Update label="2024-03-08" description="v5.51.0">
  * Added Crowdsale pallet (`pallet-crowdsale`)
</Update>

<Update label="2024-03-05" description="v5.50.0">
  * Added SFT transfer event when a marketplace SFT listing is sold
  * Added cargo doc automation script
</Update>

<Update label="2024-02-22" description="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.
</Update>

<Update label="2024-01-23" description="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.
</Update>

<Update label="2023-12-19" description="v4.47.1" tags={['Archived']}>
  * Updated root\_human.json
  * Updated the bootnodes list for both Root and Porcini
</Update>

<Update label="2023-12-07" description="v4.47.0" tags={['Archived']}>
  * Fixed a few bugs in the VortexDistribution pallet
</Update>

<Update label="2023-12-05" description="v4.46.0" tags={['Archived']}>
  * 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.
</Update>

<Update label="2023-11-15" description="v4.45.0" tags={['Archived']}>
  * 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.
</Update>

<Update label="2023-11-15" description="v4.44.0" tags={['Archived']}>
  * 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.
</Update>
