-
Notifications
You must be signed in to change notification settings - Fork 156
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
Detect MultiSend addresses #299
Conversation
Pull Request Test Coverage Report for Build 2656170144
💛 - Coveralls |
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 like it does the trick! Would be really cool if the build_tx_data
was reachable without a real NODE_URL
.
I suppose if the contract ABI were exported I could just encode the function call with a dummy web3 on my own.
gnosis/safe/multi_send.py
Outdated
"%s proxy factory address not valid" % address | ||
) | ||
def __init__( | ||
self, ethereum_client: EthereumClient, address: Optional[ChecksumAddress] = None |
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 know its probably too much to ask, but you think we can also pass along a Dummy EthereumClient
here? I am just hoping for some way of encoding the function call build_tx_data(transactions)
.
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.
Done
assert fast_is_checksum_address(address), ( | ||
"%s proxy factory address not valid" % address | ||
) |
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.
Probably off topic, but is there any reason you don't enforce that the address input is a ChecksumAddress
?
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'm already checking if it's a ChecksumAddress
4d41101
to
3f6f9d5
Compare
3f6f9d5
to
a4aa663
Compare
MULTISEND_ADDRESSES = ( | ||
"0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761", | ||
"0x998739BFdAAdde7C933B942a68053933098f9EDa", | ||
) |
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.
There is any reason to use Tuple instead List?
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's not very relevant, but Tuple
is inmutable and in this case we don't plan on modifying it
address
field Optional #283