You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Feb 26, 2024. It is now read-only.
Ganache in fork mode should allow for deployment of contracts and subsequent querying via EXTCODESIZE, but this is currently broken, as pointed by @elenadimitrova in #652 (comment). I have seen the same behavior in my personal experiments with ganache forking mode for testing mainnet deployments.
Expected Behavior
EXTCODESIZE on newly deployed contracts should work as expected.
Current Behavior
EXTCODESIZE on newly deployed contracts returns 0.
Finally looked into this one, @niklasb (cc @elenadimitrova - this should fix your related bug too). The issue is that forking's getCode implementation is not currently aware of the VM's internal cache, and only aware of the currently committed state. We have an a fix which passes your EXTCODESIZE test and all of our other tests, but it removes a whole lot of our existing code that apparently does nothing at all or just was never actually being tested in the first place. Either way, we'll need to take some time to validate this code before merging and shipping.
We hope to tackle all these forking-related bugs over the next few weeks ahead of DevCon 5!
Ganache in fork mode should allow for deployment of contracts and subsequent querying via EXTCODESIZE, but this is currently broken, as pointed by @elenadimitrova in #652 (comment). I have seen the same behavior in my personal experiments with ganache forking mode for testing mainnet deployments.
Expected Behavior
EXTCODESIZE on newly deployed contracts should work as expected.
Current Behavior
EXTCODESIZE on newly deployed contracts returns 0.
Steps to Reproduce (for bugs)
See https://github.com/niklasb/ganache-fork-bugs for an example and reproduction setup.
Context
This pretty much renders fork mode useless to test or replay live transactions that involve contract deployments.
The text was updated successfully, but these errors were encountered: