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
update for latest Optional
spec
#46
Conversation
EIP-6475 was bumped to emit an additional `0x01` byte in the `Some` case of optionals to allow nesting `Optional` and `Optional[List]` and to provide compatibility with `Union` serialization. Note that the `None` case is still serialized as empty. https://eips.ethereum.org/EIPS/eip-6475 ethereum/EIPs#6945
OK, I have cherry-picked the explanatory comments that you added there. |
2ca1ad9
to
5d3eac5
Compare
In hindsight, cleaner if we simply merge your PR first. @tersec |
done |
It is interesting if the macOS timeout is a related issue to the failure in the other platforms. Either points to something salient:
|
I tried to build your minimal repro on macos to see if it exhibits the same behaviour, but I can't even build
Indeed, interesting, where the different behaviour for i386 Linux (works fine), macos C (timeout), and others (sigsegv) is coming from. 1-3 bugs (or possibly more). As long as it is just |
Yeah, agree it's not worth that much more effort as long as it's |
On Locally, same build issue as on devel.
|
Interesting, well, at least a build error is more dispositively correct or not. |
Any idea why in the CI, it hadn't seemed as necessary to prevent |
Back when the split into When PR #43 introduced Behaviour is also broken with ORC, but compared to |
Note that the new logic in ci.yml was updated to be more resilient against such bitrot, by inverting the condition so that if a new version is added, both |
Interesting that both changes are temporally correlated, but with opposite failure-valences. |
Yeah, I guess that Nim's own CI has more time-granular results for what commits changed the behaviour in |
I found that Nim commit Thus, probably both Edit: yeah, |
CI is now green, with these caveats:
These caveats have been enforced in |
EIP-6475 was bumped to emit an additional
0x01
byte in theSome
case of optionals to allow nestingOptional
andOptional[List]
and to provide compatibility withUnion
serialization. Note that theNone
case is still serialized as empty.https://eips.ethereum.org/EIPS/eip-6475
ethereum/EIPs#6945