We want to let you know that there will be a breaking change to the FlowIDTableStaking
smart contract that will impact all development teams who query certain information from the staking contract. This is an important upgrade.
This change will go into effect on the following dates:
- CanaryNet: Wednesday, May 12th
- Testnet: Wednesday, May 19th
- Mainnet: Wednesday, May 26th
Why This Change Happened
- Refactoring certain functions to eliminate excessive gas usage
- Preparing the contract for new protocol contracts like
FlowEpoch
andStakingCollection
- Making the contract more efficient
- BREAKING CHANGE: Consolidating node and delegator metadata into a single struct to make querying staking information more straightforward.
Action Required
- These changes do not affect any transactions or active interactions with the Staking contract
- You only need to take action if you are using some of the existing scripts to query information from the staking contract.
- If you are using either of these scripts:
- Or calling any of these public functions:
FlowIDTableStaking.getNodeCommittedBalanceWithoutDelegators()
FlowIDTableStaking.getNodeCommittedBalanceWithDelegators()
FlowIDTableStaking.getNodeStakedBalanceWithDelegators()
- You will need to update them to the latest versions of the scripts in the PR mentioned below, which will be merged to master when we perform the upgrade.
These scripts now use the consolidatedNodeInfo
andDelegatorInfo
objects to query staking information, as all callers should use from now on.
Please go to the upgrade PR to find all key information regarding this breaking change.
If you have any questions regarding this breaking change, please ask our team on Discord in the #staking channel for further assistance.