Explore
Cadence 1.0
Elevated Developer Experience
View functions transform your code with enhanced reliability and safety. Clearly distinguish between state-changing and state-preserving functions, and anotate for better predictability.
Improved Safety and Security
With the Cadence 1.0, it streamline the usage of Capabilities and introducing Entitlements to make Cadence secure by default and removes previously confusing “foot-guns”.
Faster & Easier Composability
With composability at the heart of Cadence, “Attachments” make standard, and permissionless composability native on Flow.
And Many More Foundational Improvements...
Roadmap
Cadence 1.0 Contract Staging Enabled
Testnet Migration Environment Live
Mainnet Migration Environment Live
Crescendo Upgrade on Flow Testnet
Crescendo Upgrade on Flow Mainnet
Connect
with the Community
FAQ
How does this affect me?
I am a developer
Immediate actions
- Learn & ReviewLearn about what is changing in Cadence 1.0: Update on Cadence 1.0,
- Start working on upgrading your dappYou can use Emulator release based on Cadence 1.0 RC1 now!
❗ IMPORTANT NOTE ABOUT AVOIDING CHANGES IN BUSINESS LOGIC
Cadence 1.0 introduces breaking changes. Updating your Cadence contracts, transactions and scripts to Cadence 1.0 is required to ensure your app continues to work when Crescendo is released. The on-chain data migration logic relies on assumption that the updated contracts uploaded by dapp developers limits updates to the minimum changes required by the Cadence 1.0 version - in other words, the updated contract should be behaviour-preserving.
If the contract upgrade to Cadence 1.0 also includes changes to business logic, the on-chain data migration won’t work as expected and might result in security vulnerabilities in the migrated on-chain data.
Immediate actions
- Learn & Review. Learn about what is changing in Cadence 1.0: Update on Cadence 1.0, start working on upgrading your dapp using Emulator release based on Cadence 1.0 RC1.
Soon
Decide if you want to wait until Flow completes the upgrade to Cadence 1.0, or if you want to deploy sooner, on Cadence version 0.42 (currently running on Testnet and Mainnet).
Future actions
- If you plan to deploy your dapp to Testnet / Mainnet before it is upgraded to Cadence 1.0, make sure you are prepared to upgrade it to Cadence 1.0.
I am a node operator
The network upgrade to Cadence 1.0 will follow the usual process and will include a migration of execution state. For that reason it is likely to require a longer network outage than usual.
Future actions
- (ETA) 1st May 2024 Mainnet network upgrade to Cadence 1.0.
I am not (yet) a developer/builder, but I am interested in building on Flow
You can start learning about Cadence 1.0: and start building with Cadence 1.0 using Emulator release based on Cadence 1.0 RC1.
I am a user of a app on Flow
We expect that in almost all cases, you won’t need to do anything! The dapp team should handle everything without a need for an end user to move their assets or sign transactions. But, if you’re not sure, you can reach out to the team behind the dapp and ask them about their plans to upgrade to Cadence 1.0.