We propose an upgrade to the smart contracts of the Venus Core pool on BNB Chain, specifically aimed at updating the version of the Solidity programming language used in key components of the protocol.
What’s Being Proposed
We plan to upgrade the Solidity version from 0.5.16 → 0.8.25 in the following contracts:
- Core Market Contracts (vTokens, other than vBNB)
- Comptroller (including the Facets)
- VAIController
No functional changes to the protocol logic will be introduced in this upgrade. This is a technical upgrade only, focused on aligning with the modern Solidity toolchain.
Why This Upgrade
- Modern, Secure Language Version: Solidity 0.8.25 includes many improvements in safety, performance, and readability, and comes with built-in overflow checks, which remove the need for third-party libraries like
SafeMath
. - Proven Stability: This version has been battle-tested across the Ethereum ecosystem since its release in 2024. It’s already in use across multiple parts of Venus, including the Oracles.
- Developer Efficiency: Standardizing on a modern version of Solidity will make it easier for developers to maintain, audit, and extend the protocol going forward.
Next Steps
- Develop the required changes
- Audit the changes and implement necessary mitigations
- Deploy the updated contracts to BNB testnet for community testing after confirmation
- Schedule the upgrade for production release, pending governance approval via VIP
We invite the community to share feedback, ask questions, and participate in the discussion as we take this step toward modernizing our contract base.