-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Add fuels-types
minimal crate for declaring serializable ABI types. Resolves the cycle between fuels-rs
and sway
repos.
#219
Conversation
By moving these from `sway-types` upstream to the `fuels-rs` repo, we can resolve the remainder of the cyclic dependency between the `sway` and `fuels-rs` repositories. I think semantically it also makes more sense for these VM-specific types to be declared upstream, and for Sway to depend on these rather than vice versa.
Also removes the unused `sway-types` dependency from the `fuels-contract` crate.
fuels-rs
and sway
repos.fuels-types
minimal crate for declaring serializable ABI types. Resolves the cycle between fuels-rs
and sway
repos.
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.
utACK. Nice one
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.
Nice, looks like this finally breaks the circular dependency! I'll defer to @digorithm
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.
GG! There will be a corresponding PR for Sway if I understand correctly? To make it import from this new crate?
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 stuff, thanks for doing this @mitchmindtree!
…s_types` See FuelLabs/fuels-rs#219 for context.
…s_types` See FuelLabs/fuels-rs#219 for context.
…s_types` See FuelLabs/fuels-rs#219 for context.
…s_types` See FuelLabs/fuels-rs#219 for context.
…s_types` (#1337) See FuelLabs/fuels-rs#219 for context.
This moves the
JsonABI
type along with the associatedFunction
andProperty
types fromsway-types
into a new minimalfuels-types
crate.By moving these from
sway-types
upstream to thefuels-rs
repo, we can resolve the remainder of the cyclic dependency between thesway
andfuels-rs
repositories.I think also semantically it makes a little more sense for the Rust representation of these ABI-specific types to be declared under the Rust SDK, and for Sway to depend on these rather than vice versa.
The
fuels-core
crate now depends on these types via the newfuels-types
crate. The unusedsway-utils
dependency has been removed.As an immediate follow-up to
fuels-types
landing and getting published to crates.io, we should remove these types from thesway-types
crate and instead depend onfuels-types
as necessary throughout thesway
repo.This is one of the blockers for FuelLabs/sway#1321.