This post provides feedback on the process of verifying deployed contracts on the IoTeX network, highlighting several areas for improvement.
1. Explorer Redirection Issues:
- Currently, developers are required to leave the default explorer (iotexscan.io) to verify contracts using iotexscout.io/verifyContract.
- Testnet.iotexscan.io redirect links lead to the mainnet explorer on iotexscout.io, causing verification failures.
2. OpenZeppelin Library Compatibility:
- The latest OpenZeppelin libraries require solc 0.8.20 and above, which is currently not supported by IoTeX.
- This makes it difficult for developers who rely on OpenZeppelin for their contracts.
- Prioritize support for solc 0.8.20 and above on the IoTeX network to ensure compatibility with the latest OpenZeppelin libraries.
- Provide alternative solutions for developers who cannot upgrade their solc versions due to dependencies.
3. API Support for Explorers:
- Lack of API support for iotex explorers makes contract verification cumbersome.
- Developers need to manually flatten their source codes and select appropriate compilation parameters, which can be time-consuming and error-prone.
4. License mismatch Events:
- Also noticed that the license option selected on the first page of the verification form doesn’t get applied when the second page is submitted often causing a mismatch on license specified on the explorer vs license specified in the source code
- Ensure that the license option selected in the first page is applied to the final page of the form before the form is submitted as the submitted data can not be modified by the user after it is submitted or provide a means to rectifier such mismatch events
- Provide clear documentation or tutorials on the dev portal for developers trying to verifying contracts on the IoTeX network.
- Consider offering support on discord to developers facing challenges with contract verification.