Skip to content

Commit

Permalink
Merge pull request #44 from onflow/migration-guide-update
Browse files Browse the repository at this point in the history
Update Migration Guide
  • Loading branch information
Aliserag authored Feb 16, 2024
2 parents eb113d9 + f6475c2 commit 7710940
Showing 1 changed file with 54 additions and 11 deletions.
65 changes: 54 additions & 11 deletions docs/cadence_migration_guide/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,62 @@ sidebar_label: Cadence 1.0 Migration Guide

# Cadence 1.0 Migration Guide

Coming in 2024, the network will be upgrading to the Cadence 1.0. This means that all applications will need to prepare and migrate their existing Cadence smart contracts, scripts, and transactions for the update. If you do not update your code, your applications will become non-functional after the network upgrade. The specific upgrade date will be announced later.
Coming in 2024, the network will be upgrading to [Cadence 1.0](https://flow.com/upgrade/cadence-1). This means that all applications will need to prepare and migrate their existing Cadence smart contracts, scripts, and transactions for compatibility with the update. If you do not update your contracts, your applications will become non-functional after the network upgrade. Read more about the roadmap [here](https://flow.com/upgrade/cadence-1).

We have created several resources to help developers update their applications. Use the following links to start upgrading your contracts and to understand how the network upgrade will affect your application:
### Upgrading Contracts

- [Understand the upgrade, the timeline, and how it affects you](https://forum.flow.com/t/cadence-1-0-upgrade-plan/5477)
- [Learn how Cadence will be changing for 1.0](https://forum.flow.com/t/update-on-cadence-1-0/5197)
- [Learn how to update your Flow CLI to test against Cadence 1.0](https://forum.flow.com/t/update-on-cadence-1-0/5197/7)
- [Learn how to update your Non-Fungible Token contracts for Cadence 1.0](./nft-guide.mdx)
- [Learn how to update your Fungible Token contracts for Cadence 1.0](./ft-guide.mdx)
- [Check out the Cadence language 1.0 docs](https://cadencelang.dev/docs/1.0/)
To ensure your contracts are fully operational with Cadence 1.0, follow these essential steps:

1. **Understand the Changes:** Start by familiarizing yourself with the [changes](https://forum.flow.com/t/update-on-cadence-1-0/5197) to identify how they might affect your code.
2. **Modify Your Code:** Update your contracts, transactions, and scripts in accordance with the new changes.
3. **Test Your Code:** The latest emulator [release](https://github.com/onflow/flow-cli/releases/tag/v1.12.0-cadence-v1.0.0-M4-2) includes all updated standards and core contracts. Check out this [video](https://www.loom.com/share/4467610b7beb4ebbaabed6b430dc25c4?sid=14ecb3e7-e933-409c-a6a4-add40c6971d0) from the Flow team on how to install and use the Cadence 1.0 emulator. The code can be accessed with:

       Linux/macOS

```bash

sudo sh -ci "$(curl -fsSL https://raw.githubusercontent.com/onflow/flow-cli/master/install.sh)" -- v1.12.0-cadence-v1.0.0-M4-2

```

        Windows (in PowerShell):

```
iex "& { $(irm 'https://raw.githubusercontent.com/onflow/flow-cli/master/install.ps1') } v1.12.0-cadence-v1.0.0-M4-2
```

4. **Stage**: A new **_Staging process_** will be released in the coming weeks that checks if your updated code is compatible with Cadence 1.0. Complete this [form](https://docs.google.com/forms/d/e/1FAIpQLSfprZJLPSEAS6H7_oL0j6bzetDzkHPmDZHYAGgqAAOAdLDKqw/viewform) to stay informed about updates and receive recommendations tailored to your code.

## Get Help With Migrating Your Dapp to Cadence 1.0
### Resources

If you have any questions related to Cadence 1.0 migration, or if you need help, please contact the Flow development community on [developer-questions Discord channel](https://discord.com/channels/613813861610684416/621847426201944074). Please use “C1.0 upgrade” at the beginning of the message to help us categorize questions related to Cadence 1.0.
**Guides & Docs**

The Flow team has started hosting regular "Cadence 1.0 upgrade office hours" events anyone can join to ask questions and get help with their dapp upgrade. These sessions are scheduled in [Flow Webinars & Events calendar](https://calendar.google.com/calendar/u/0?cid=Y180Nzk3OGY1Y2Q5ZGE2MzZjYWRjNmI4NDczMTAyYjUwOTJjMWE4NjVkZDAxMDU1ODM5M2VjYjdmOWZkMGM5YWQwQGdyb3VwLmNhbGVuZGFyLmdvb2dsZS5jb20) and announced on [flow-events Discord channel](https://discord.com/channels/613813861610684416/1050190147100102787).
For assistance with the most common updates developers will face, explore these resources:

- Cadence 1.0 [Beginner Course](https://academy.ecdao.org/en/catalog/courses/learn-cadence-beginner-1.0)
- Upgrading [Capabilities](https://academy.ecdao.org/en/catalog/tutorials/capability-controllers)
- Upgrading [Entitlements](https://academy.ecdao.org/en/catalog/tutorials/entitlements)
- Migration Guide for [Fungible Tokens](./ft-guide.mdx)
- Migration Guide for [NFTs](./nft-guide.mdx)
- Migration Guide for [Core Contracts](./core-contracts-guide.mdx)

**Helper Tools**

- **Cadence 1.0 Migration Helper CustomGPT:** An experimental tool currently exclusive to ChatGPT Pro users. [Try it here](https://chat.openai.com/g/g-wMnnHS2Md-flow-cadence-1-0-migration-helper).

**In-Person Support**

- Attend the weekly live [Cadence 1.0 Developer Office hours](https://calendar.google.com/calendar/ical/c_47978f5cd9da636cadc6b8473102b5092c1a865dd010558393ecb7f9fd0c9ad0%40group.calendar.google.com/public/basic.ics) happening every Thursday to ask questions you’re stuck on
- Shoot a message in the [developer Discord](https://discord.com/channels/613813861610684416/621847426201944074) channel. Please use “C1.0 upgrade” at the beginning of the message to help us categorize questions related to Cadence 1.0
- Send us a request in the Developer [Help Center](https://support.flow.com/hc/en-us/requests/new)

### Dive Deeper

Enhance your understanding of the network upgrade and its possible implications on your app:

- [Learn how Cadence will be changing for 1.0](https://forum.flow.com/t/update-on-cadence-1-0/5197)
- [Understand the upgrade, the timeline, and how it affects you](https://forum.flow.com/t/cadence-1-0-upgrade-plan/5477)
- [Learn how to update your Flow CLI to test against Cadence 1.0](https://forum.flow.com/t/update-on-cadence-1-0/5197/7)
- [Check out the Cadence language 1.0 docs](https://cadencelang.dev/docs/1.0/)
- [Learn about Contract Staging](https://forum.flow.com/t/updates-to-cadence-1-0-contract-staging/5642)

0 comments on commit 7710940

Please sign in to comment.