by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jun 02 19:46
    ralexstokes synchronize #1933
  • Jun 02 19:23
    ralexstokes synchronize #1933
  • Jun 02 19:12
    ralexstokes synchronize #1933
  • Jun 02 18:54
    ralexstokes synchronize #1933
  • Jun 02 16:53

    carver on v0.3.0-alpha.17

    (compare)

  • Jun 02 16:53

    carver on master

    Compile release notes Bump version: 0.3.0-alpha.16 → … (compare)

  • Jun 02 16:42
    ralexstokes synchronize #1933
  • Jun 02 16:31

    carver on master

    Raise BlockNotFound if txns or … Revive the speed of batching th… Release notes #1943 and 1 more (compare)

  • Jun 02 16:31
    carver closed #1943
  • Jun 02 16:23
    carver edited #1943
  • Jun 02 16:23
    carver synchronize #1943
  • Jun 02 16:14
    carver edited #1943
  • Jun 02 16:14
    carver synchronize #1943
  • Jun 02 13:24
    cburgdorf synchronize #1939
  • Jun 02 09:59
    cburgdorf closed #1944
  • Jun 02 09:59
    cburgdorf commented #1944
  • Jun 02 07:39
    Lilith1410 commented #1944
  • Jun 02 07:39
    Lilith1410 commented #1944
  • Jun 02 07:38
    Lilith1410 commented #1944
  • Jun 01 22:53
    carver synchronize #1943
Voith Mascarenhas
@voith
Just learnt that the old blake2b library has been replaced by a better performing one:
ethereum/py-evm#1854.
But the tests will still need to be marked slow
Jason Carver
@carver
@veox that faster blake2b implementation is in a newer release of py-evm. I highly recommend upgrading to that as part of the branch
Noel Maersk
@veox
@carver Thanks, didn't notice.
Jason Carver
@carver
:+1:
Noel Maersk
@veox
Test passes, but still takes minutes. Will re-visit SLOWEST_TESTS list later (files have changed names). (94.68s call says CircleCI.)
Voith Mascarenhas
@voith
Yeah, some tests were moved to LegacyTests
Voith Mascarenhas
@voith
@veox Ethereum tests has a new release for istanbul: https://github.com/ethereum/tests/releases/tag/v7.0.0-beta.1
Noel Maersk
@veox
It's the cursed RIPEMD160 precompile again: https://github.com/ethereum/py-evm/issues/1857#issuecomment-538433394
... but it seems that geth is not as stringent as py-evm on when this should happen. We only do it if computation.is_origin_computation.
Noel Maersk
@veox
Not 100% sure this is the culprit, though - still looking...
Noel Maersk
@veox
Yup, that's it. yield THREE (unconditional) passes the test. So, just need to cherry-pick the conditions, so that other tests don't all fail...
Noel Maersk
@veox

OK, I can't figure out how to do this without a double-pass through the nested computations, or ugly hacks - not today, at least, and got to run anyway.

I liked it more when aleth was filling the tests. :/

Tan
@tanmaster
hi, i kinda feel stupid for asking this, but is there a way to set the code of an address with vm.state.setCode() and then persist it without getting a validation error when mining the block?
Tan
@tanmaster
nevermind, i solved it: i extended the IstanbulVM class and the MiningChain class, overrid mine_block in both and commented out the lines in which the validation happens.
Voith Mascarenhas
@voith
@veox nice work! With my current knowledge it would have taken me ages to figure that out 😅
Noel Maersk
@veox
veox/py-evm@6c6db73 - supposed fix (for 4 of 6 failures).
Noel Maersk
@veox
I'm relatively certain that the branch will now pass all the tests (i.e. fixed the remaining 2).
Noel Maersk
@veox
@voith and all: should I submit the fixes as a PR for PR #1852, or roll a new PR including everything?..
Y'all' be at devcon, so there won't be anyone to review/merge it anyway...
Voith Mascarenhas
@voith
@veox do anything that is convenient for you. I have no problem closing the PR that I've opened.
Jason Carver
@carver
Yeah, I'm not checking github notifications regularly, but if you @ mention me in here, I'll get to it soon-ish @veox
Chris Calderon
@SerpentChris
Tried install py-evm on PPC64 Linux today and it failed :( . One of the dependencies, blake2b-py fails to build because it's dependency, marturin, fails to build because it's rust dependency ring v0.16.9, fails to build.
Chris Calderon
@SerpentChris
Is there some reason blake2b-py is used instead of the blake functions in hashlib? They are standard starting with python version 3.6
Chris Calderon
@SerpentChris
OH, it looks like you switched to this module because it is "560x" faster about 21 days ago.
Chris Calderon
@SerpentChris
For now I think I can just checkout the commit before the merge. Unrelatedly, there is another problem that stops me from being able to easily use py-evm on PPC64 big endian Linux, which is that the pyethash version this depend on seems to have a problem compiling on big endian platforms. This issue was fixed in the pyethash repo but I don't think that fix was put onto pypi, so the version pip tries to install fails.
Chris Calderon
@SerpentChris
I've made an issue with ring, so maybe they can fix the build failure.
Jason Carver
@carver

For now I think I can just checkout the commit before the merge.

Yup, this is a reasonable solution for now. It is possible to make the blake2b-py install optional and maintain the pure python implementation as a backup. It's probably not top priority for us, but if you open an issue or want to work on it yourself I'm happy to guide on the necessary steps.

the pyethash version this depend on seems to have a problem compiling on big endian platforms. This issue was fixed in the pyethash repo but I don't think that fix was put onto pypi, so the version pip tries to install fails.

Can you link to the issue or the fix in the repo? I can push out a release, just want to make sure I understand the change you need so I can verify it's working, before release.

@SerpentChris
Chris Calderon
@SerpentChris
On my big endian system, when I recently tried to install ethash via pip it complained about the issue that was fixed by this commit.
Chris Calderon
@SerpentChris
I think I found the issue? PyPI has an ehtash package and a pyethash package. The ethash package installs fine but py-evm tries to install the pyethash package which is broken.
Honestly I'm a bit confused here. These packages are all on PyPI: ethash, pyethash, and eth-hash.
Bryant Eisenbach
@fubuloubu
was there any change in how selfdestruct is being handled for Istanbul?
IIRC there was not, but we are experiencing some issues: ethereum/vyper#1657
Voith Mascarenhas
@voith
@fubuloubu I just had a look at the test failures and it seems like the transactions need more gas.
Bryant Eisenbach
@fubuloubu
The gas cost of SELFDESTRUCT wasn't changed though, was it?
Voith Mascarenhas
@voith
I just went through the Istanbul meta EIP and it doesn’t seem like the gas cost of SELFDESTRUCT was changed.
Bryant Eisenbach
@fubuloubu
yup
I forgot that this has nothing to do with Istanbul because the issue gets introduced when we use eth-tester v0.2b1+
(which uses py-evm 0.2.0a43+ under the hood)
Istanbul was only introduced in eth-tester v0.2b3 I believe
Voith Mascarenhas
@voith
Hmmm, yeah. But istanbul could break some tests, specially ethereum/EIPs#2200
Bryant Eisenbach
@fubuloubu
I replaced in our test cases SELFDESTRUCT with a simple send that replicates the same result, and it passes
Voith Mascarenhas
@voith
:+1:
Bryant Eisenbach
@fubuloubu
btw @carver the CHANGELOG for eth-tester still says v0.2.0b3 is unreleased
Noel Maersk
@veox
We should probably change 7_000_000 to 5_000_000 (same as Constantinople/Petersburg) on this line, if there is to be no difficulty bomb reset for Istanbul. (And looks like there won't be.) (EDIT: Or use the petersburg function altogether.)
I've done some slackjob calculations, and (given no changes in net-wide hashrate, a big given) the bomb won't make 10% of the difficulty for ~500 more days.