-
Notifications
You must be signed in to change notification settings - Fork 264
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
Support for arrays of variable length types is broken #93
Comments
Thanks @Arachnid - I wish all bug reports were this detailed! 😀 The good news is that this came up already, so it looks like the change is nearly merged in #92. I marked that PR as closing this issue, so there will be an update when it's merged. If you'd like, I can also ping you when web3.py gets deployed with the eth-abi version that includes #92. |
Also, I believe that @davesque is going to be submitting a PR to |
Unfortunately, I just realized that this was built into the master (v2) branch which isn't stable, or ready for inclusion into the stable Web3.py release. I'll see if I can backport it. |
…sion bump sphinx version and set py version rtd uses to 3.8
Here's the canonical way (per Solidity, at least) to encode
(bytes[]("0xf8a8fd6d", "0xf8a8fd6d"))
:Broken down:
This is most easily thought of as a recursive encoding: The tail data for the first (and in this case, only) element of the ABI is the entire ABI encoding of that element.
In contrast, this library presently produces the current output:
The head element, and the length of the array are correct, but then array elements are packed tightly, without the correct head/tail recursive encoding.
The text was updated successfully, but these errors were encountered: