Skip to content
This repository has been archived by the owner on Apr 17, 2024. It is now read-only.

Migration form Cairo 0.10 to 1.0? #45

Open
cwkang1998 opened this issue Feb 14, 2023 · 4 comments
Open

Migration form Cairo 0.10 to 1.0? #45

cwkang1998 opened this issue Feb 14, 2023 · 4 comments

Comments

@cwkang1998
Copy link
Contributor

As per the title, is there any plans for migration of the transpilation target from Cairo 0.10 to 1.0? If there's a plan, can you share how you would want to migrate / work on it so that we can help?

If we continue working on transpiling to Cairo 0.10, I feel like we might have to repeat that effort for Cairo 1.0. With that in mind, I feel that if we just directly work on Cairo 1.0 it'll reduce a lot more potential duplicate work. However, since 1.0 is currently under heavy development, there's potentially a high chance that the syntax would change drastically, but I think with the potential changes it'll still be easier than migrating 0.10 completely.

Given that Starknet 0.11 seems to be coming close as well, I think its time to consider starting migration.

@tserg
Copy link
Owner

tserg commented Feb 14, 2023

Thanks for opening this discussion! I agree with the points you made.

At this moment, I am thinking of the following steps:

  • Pause development on Cairo 0.10
  • Once Starknet v0.11 is released, and both ape-cairo and ape-starknet are updated to Cairo 1.0 and Starknet v0.11 respectively, upgrade the CI.
  • Migrate pass by pass to Cairo 1.0. Depending on the finalised syntax, we can then work out which passes should be migrated first.
  • The end goal is to have a ERC20 contract transpiled to Cairo 1.0.

Any thoughts on this?

@cwkang1998
Copy link
Contributor Author

That sounds good! Lets go with that.

@louisguthmannStarkWare
Copy link

Man that would be phenomenal :)
We need to discuss about it

@tserg
Copy link
Owner

tserg commented May 24, 2023

Some update on things:

  • Cairo 1 is still going through some breaking changes.
  • ape-starknet is not ready yet for Cairo 1.
  • Vyper 0.3.8 introduces some breaking changes in the vyper compiler API.

We can update the vyper compiler API first once v0.3.9 is released.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants