-
Notifications
You must be signed in to change notification settings - Fork 45
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
Truffle Decoupling #117
Truffle Decoupling #117
Conversation
… into truffle_decoupling
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.
Looks good, although I don't 100% understand how you broke the truffle dependency. You basically lifted the ABI module into common namespace, right?
src/contract.rs
Outdated
/// `Deployments` implementation for an `Instance`. This type is not intended to | ||
/// be used directly but rather through the `Instance::deployed` API. | ||
#[derive(Debug, Clone)] | ||
pub struct Networks { |
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.
I find this name a bit confusing. Why would a network have a field called ABI? Maybe Deployments is a better name?
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.
Definitely a better name!
use crate::truffle::abi::Result as AbiResult; | ||
use crate::truffle::{Abi, Artifact, Bytecode}; | ||
use ethcontract_common::abi::Result as AbiResult; | ||
use ethcontract_common::truffle::Network; |
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.
Is this still truffle specific or should this also be lifted into common?
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.
It is truffle specific.
@fleupold So, we are still very much dependent on Truffle artifacts for generating code. The important decoupling is that deployment (so
While the |
This PR decouples the deployment futures from truffle. This accomplishes two things:
Test Plan
CI - This is mostly a refactoring and adding new abstractions