Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    jannikluhn
    @jannikluhn
    @zilm13 the current release and the one before include Vector already
    Dmitry S.
    @zilm13
    @jannikluhn this one not https://github.com/ethereum/eth2.0-test-generators/pull/34/files#diff-10153377b1e735f1ff7066fd8b51f0b7R2
    ohhh I see 2 new releases, need just to change versions
    Dmitry S.
    @zilm13
    As I understand https://github.com/ethereum/eth2.0-test-generators/ is abandoned now and all generators will be in spec.
    What about generated tests https://github.com/ethereum/eth2.0-tests ? closing too?
    Mamy Ratsimbazafy
    @mratsim
    The big tests will be put in git LFS because github is not really suitable for 1 million lines YAML files anyway
    Eth2.0-tests will stay for issues, project management and maybe handcrafted tests of some edge cases.
    Dmitry S.
    @zilm13
    is there an url for git LFS already?
    we are going to move to the new tests, but I don't understand, should we build them from generators or there will be generated like in the past
    Mamy Ratsimbazafy
    @mratsim
    Not yet, I suppose it will be at the same time as 0.6
    Dmitry S.
    @zilm13
    Got it. Thank you!
    Gregory Markou
    @GregTheGreek
    Git LFS doesn't change the repo url
    It just allows the current repo to support really large files
    Dmitry S.
    @zilm13
    So everything will be pushed to eth2.0-tests? Just a matter of time for CI setup
    Gregory Markou
    @GregTheGreek
    I would assume so
    But as mamy said theyre planning to release the new tests with 0.6
    Mamy Ratsimbazafy
    @mratsim
    @protolambda, you said to contact you on Monday to use the test generators in eth2.0 specs, was off yesterday but available now and the rest of the week. Any tests you would like to target in particular?
    If it was up to me I'd like the SSZ/SOS PR merged to generates some test vectors from there.
    Diederik Loerakker
    @protolambda
    Hey
    At airport now, will be back online for eth2 things in ~12h or so
    Goal is to get more input/contributions from implementers in spec testing (others are working on network testing etc).
    We have some tooling in place to write tests. A POC spec based deposits test. (There's an ongoing effort to unify setup of test scenarios between pytests and yaml gen, do others are on hold for a bit), and then we have updated shuffling + ssz tests
    Diederik Loerakker
    @protolambda
    Also, looking to deprecate old tests repo, to just have LFS from the start, and not have non-LFS yaml files in git history forever.
    And there's a good chance the spec-generators focus on spec tests, and we'll have network, execution, and other test types coming from elsewhere in the future. So it makes sense to not force a single tests repo
    Mamy Ratsimbazafy
    @mratsim
    sounds good to me
    specs tests is quite largeanyway:
    • state tests
    • BLS
    • shuffling
    • SSZ
    • fork choice
    Mamy Ratsimbazafy
    @mratsim
    Are the SSZ tests updated with SOS in https://github.com/ethereum/eth2.0-spec-tests?
    Diederik Loerakker
    @protolambda
    No, nog with SOS yet. But hashing is the same.
    Mamy Ratsimbazafy
    @mratsim
    oh, nice
    Diederik Loerakker
    @protolambda
    Will get to SOS + better SSZ typing in spec later this week. SOS was merged a bit too short before release 🙃
    Mamy Ratsimbazafy
    @mratsim
    it's fine :)
    Mamy Ratsimbazafy
    @mratsim

    I'm looking into the shuffling tests and realized that they were not in sync with the latest spec as they used get_permuted_index instead of get_shuffled_index: https://github.com/ethereum/eth2.0-specs/search?q=get_permuted_index&unscoped_q=get_permuted_index

    It seems like ethereum/eth2.0-specs#1045 was not complete @protolambda

    Diederik Loerakker
    @protolambda
    Yup, but fixed it when generating the tests, just a rename. Fix is on the v06x branch now I believe, where we work for 0.6 improvements, effectively 'dev' with non-breaking changes
    Also, see specs pr 1052, lots of state transition tests incoming
    Mamy Ratsimbazafy
    @mratsim
    aah so I put my fix on the wrong branch
    Mamy Ratsimbazafy
    @mratsim
    So the shuffling tests work fine on my side. At first I thought that I had long hours ahead, until I realized that we still were using keccak :sweat_smile: .
    Jacek Sieka
    @arnetheduck
    lol, feel you perfectly :)
    Mamy Ratsimbazafy
    @mratsim
    actually the most puzzling was this speed trick: https://github.com/status-im/nim-beacon-chain/pull/263/files#diff-9835c951698318fa2842b822ed8ac5c1L39 keccak256 context is initialized to an array of zero before hashing, and I forgot to do the init of SHA256 at first as well
    Jacek Sieka
    @arnetheduck
    oh yeah. I'd prefer we fixed nimcrypto there to be easier to work with in that regard
    Mamy Ratsimbazafy
    @mratsim
    I don't think there is an issue in nimcrypto for that, it's either init+update+finish or use digest.
    Jacek Sieka
    @arnetheduck
    well there was, sort of.. the need, or lack thereof, of init is an abstraction leak..
    Mamy Ratsimbazafy
    @mratsim
    If we can push the constructor discussion forward it would be solved ;)
    Diederik Loerakker
    @protolambda
    Current status and pain-points before getting full state-transition tests released: ethereum/eth2.0-specs#1074
    Mamy Ratsimbazafy
    @mratsim

    Some feedback on the presets. On Nim side it's very easy to use them at compile-time. We pass a compile-time switch to the compiler to tell it to import one preset or the other: status-im/nim-beacon-chain#269.

    We are passing the shuffling official shuffling minimal and mainnet shuffling tests for example

    Dmitry S.
    @zilm13

    We've finished adoption of latest github tests harmony-dev/beacon-chain-java#144 . There are still two cases which we ignore, but first is definitely minor, the other one is more about infrastructure and isn't associated with particular test case, so I could say we are passing all tests from https://github.com/ethereum/eth2.0-spec-tests now.

    I've found several issues with our spec implementation during adoption of tests, so the core goal of any tests is reached here! Thanks @protolambda for a big amount of work in tests development and building skeletons/core classes to simplify tests development.

    Dmitry S.
    @zilm13

    @protolambda

    5. Running tests in bitvector/invalid/bitvec_2_zero_3... FAILED

    serialized.ssz: 0x00
    size should be 2 as bitvec_2
    so what's wrong with it? it should be a valid case. looks like wrong fill

    works when 111 filled, but with 000 still valid
    plus several similar cases
    Diederik Loerakker
    @protolambda
    2 bits fits in one byte no?
    Oh I see, one zero case that's off due to no delimiting and same valid byte size. Will look into it more tomorrow, thanks
    Dmitry S.
    @zilm13
    :+1: