-
Notifications
You must be signed in to change notification settings - Fork 138
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve Cadence-1.0 contract update checker #3111
Conversation
…/contract-update-checker-1
0204d96
to
98c0c94
Compare
98c0c94
to
d00bb4d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validator.go
Outdated
Show resolved
Hide resolved
Could you please open an issue for adjusting the state migration in terms of the new |
Added in 74b1010 |
74b1010
to
08f8977
Compare
@SupunS Does this cover field type change too? (Ex: var vault: @fungibletoken.vault to var vault: @{fungibletoken.vault} ) |
@bluesign No, not in this PR |
f23a80b
to
fc35c38
Compare
Is it safe to allow this in general? For example, given the previous type requirement declaration contract interface CI {
resource R {}
} existing types might be of the form If we allow the change of the type declaration to contract interface CI {
resource interface R {}
} then all such types |
The static type migration already does that. i.e: wraps with an intersection type if the interface is not already residing within an intersection type. cadence/migrations/statictypes/statictype_migration.go Lines 288 to 290 in e60051d
|
Ah, I forgot that we added this general migration already for #3090, great! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work!
…/contract-update-checker-1
Cadence Benchstat comparisonThis branch with compared with the base branch onflow:master commit 5427692 Collapsed results for better readability
|
Work towards of #2865
Depends on #3069
Description
AnyStruct{I}
/AnyResource{I}
to be changed to{I}
, instead of dropping the{I}
.AnyStruct{}
/AnyResource{}
(empty set) toAnyStruct
/AnyResource
.master
branchFiles changed
in the Github PR explorer