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

EIP649 reward reduction and difficulty bomb delay #4338

Merged
merged 8 commits into from Aug 23, 2017

Conversation

Projects
None yet
5 participants
@pirapira
Member

pirapira commented Aug 15, 2017

The reward-reduction and difficulty bomb delay have been both implemented.

Tests are updated so that testeth with no options passes.

@winsvega

ok. we need a blockchain test that covers up this reward change and difficulty reduction.
a test in Transition tests (transition from EIP158TOByzantine) for difficulty bomb delay.

and change an expect section for Byzantine in already existing reward test

@pirapira pirapira changed the title from [WIP] EIP649 difficulty bomb delay and reward reduction to [WIP] EIP649 reward reduction part. Aug 17, 2017

@pirapira pirapira changed the title from [WIP] EIP649 reward reduction part. to [WIP] EIP649 reward reduction and difficulty bomb delay Aug 17, 2017

@pirapira

This comment has been minimized.

Show comment
Hide comment
@pirapira

pirapira Aug 17, 2017

Member

@winsvega shall these cases appear in the test case spreadsheet?

Member

pirapira commented Aug 17, 2017

@winsvega shall these cases appear in the test case spreadsheet?

@winsvega

This comment has been minimized.

Show comment
Hide comment
@winsvega

winsvega Aug 17, 2017

Contributor

I mean we could add the tests with this PR. that was the idea of a submodule.
to cover the PR changes with relevant tests

Contributor

winsvega commented Aug 17, 2017

I mean we could add the tests with this PR. that was the idea of a submodule.
to cover the PR changes with relevant tests

@pirapira

This comment has been minimized.

Show comment
Hide comment
@pirapira

pirapira Aug 17, 2017

Member

@winsvega I prefer a separate PR for adding new tests. We should deliver the fixed tests earlier, even without the new tests.

Member

pirapira commented Aug 17, 2017

@winsvega I prefer a separate PR for adding new tests. We should deliver the fixed tests earlier, even without the new tests.

@winsvega

This comment has been minimized.

Show comment
Hide comment
@winsvega

winsvega Aug 17, 2017

Contributor

if we have the tests at least we know the change on this PR is covered. that what is the point

Contributor

winsvega commented Aug 17, 2017

if we have the tests at least we know the change on this PR is covered. that what is the point

@pirapira

This comment has been minimized.

Show comment
Hide comment
@pirapira

pirapira Aug 17, 2017

Member

Let me see if I need to fix any fillers. If yes, we have the changes covered somehow.

Member

pirapira commented Aug 17, 2017

Let me see if I need to fix any fillers. If yes, we have the changes covered somehow.

@pirapira pirapira changed the title from [WIP] EIP649 reward reduction and difficulty bomb delay to EIP649 reward reduction and difficulty bomb delay Aug 22, 2017

@pirapira pirapira requested review from chfast and winsvega Aug 23, 2017

@pirapira

This comment has been minimized.

Show comment
Hide comment
@pirapira

pirapira Aug 23, 2017

Member

I had an ethereum/tests commit on my local machine, pushed that and used that as the submodule.

Member

pirapira commented Aug 23, 2017

I had an ethereum/tests commit on my local machine, pushed that and used that as the submodule.

@chfast

This comment has been minimized.

Show comment
Hide comment
@chfast

chfast Aug 23, 2017

Collaborator

At first look, I don't like how we manage chain configuration. Do we need to use JSON-like structure and constructs like "get u256 param" all the way to the bottom?

Collaborator

chfast commented Aug 23, 2017

At first look, I don't like how we manage chain configuration. Do we need to use JSON-like structure and constructs like "get u256 param" all the way to the bottom?

@pirapira

This comment has been minimized.

Show comment
Hide comment
@pirapira

pirapira Aug 23, 2017

Member

@chfast I believe we should do

_bc.chainParams().EIP158ForkBlock()

instead of

_bc.chainParams().u256Param("EIP158ForkBlock")

And, remove u256Param from the public interface of ChainParams.

I want to do it in a separate PR. Do you want it before this one?

Member

pirapira commented Aug 23, 2017

@chfast I believe we should do

_bc.chainParams().EIP158ForkBlock()

instead of

_bc.chainParams().u256Param("EIP158ForkBlock")

And, remove u256Param from the public interface of ChainParams.

I want to do it in a separate PR. Do you want it before this one?

@chfast

This comment has been minimized.

Show comment
Hide comment
@chfast

chfast Aug 23, 2017

Collaborator

After.

I'd like to review the chain config design later on...
For EVM-C single enum is enough. Also we can consider configs for chains + separated config for chain switches (hard forks).

Collaborator

chfast commented Aug 23, 2017

After.

I'd like to review the chain config design later on...
For EVM-C single enum is enough. Also we can consider configs for chains + separated config for chain switches (hard forks).

@chfast

Only 2 small nits. The rest is good.

Show outdated Hide outdated libethcore/EVMSchedule.h Outdated
Show outdated Hide outdated libethcore/ChainOperationParams.h Outdated
@codecov-io

This comment has been minimized.

Show comment
Hide comment
@codecov-io

codecov-io Aug 23, 2017

Codecov Report

Merging #4338 into develop will decrease coverage by <.01%.
The diff coverage is 96.55%.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #4338      +/-   ##
===========================================
- Coverage    67.69%   67.69%   -0.01%     
===========================================
  Files          307      307              
  Lines        23368    23386      +18     
===========================================
+ Hits         15819    15831      +12     
- Misses        7549     7555       +6
Impacted Files Coverage Δ
libethcore/SealEngine.h 75% <ø> (ø) ⬆️
libethcore/ChainOperationParams.h 100% <ø> (ø) ⬆️
libethcore/ChainOperationParams.cpp 100% <100%> (ø) ⬆️
libethereum/Block.cpp 87.79% <100%> (+0.06%) ⬆️
libethcore/EVMSchedule.h 100% <100%> (ø) ⬆️
test/tools/jsontests/BlockChainTests.cpp 30.6% <100%> (ø) ⬆️
libethcore/SealEngine.cpp 86.84% <100%> (+1.12%) ⬆️
libethereum/ChainParams.cpp 95.76% <100%> (ø) ⬆️
libethashseal/Ethash.cpp 85.16% <80%> (-0.27%) ⬇️
libp2p/NodeTable.cpp 39.52% <0%> (-0.6%) ⬇️
... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1e21ee1...b6617fe. Read the comment docs.

codecov-io commented Aug 23, 2017

Codecov Report

Merging #4338 into develop will decrease coverage by <.01%.
The diff coverage is 96.55%.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #4338      +/-   ##
===========================================
- Coverage    67.69%   67.69%   -0.01%     
===========================================
  Files          307      307              
  Lines        23368    23386      +18     
===========================================
+ Hits         15819    15831      +12     
- Misses        7549     7555       +6
Impacted Files Coverage Δ
libethcore/SealEngine.h 75% <ø> (ø) ⬆️
libethcore/ChainOperationParams.h 100% <ø> (ø) ⬆️
libethcore/ChainOperationParams.cpp 100% <100%> (ø) ⬆️
libethereum/Block.cpp 87.79% <100%> (+0.06%) ⬆️
libethcore/EVMSchedule.h 100% <100%> (ø) ⬆️
test/tools/jsontests/BlockChainTests.cpp 30.6% <100%> (ø) ⬆️
libethcore/SealEngine.cpp 86.84% <100%> (+1.12%) ⬆️
libethereum/ChainParams.cpp 95.76% <100%> (ø) ⬆️
libethashseal/Ethash.cpp 85.16% <80%> (-0.27%) ⬇️
libp2p/NodeTable.cpp 39.52% <0%> (-0.6%) ⬇️
... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1e21ee1...b6617fe. Read the comment docs.

pirapira added some commits Aug 15, 2017

@pirapira

This comment has been minimized.

Show comment
Hide comment
@pirapira

pirapira Aug 23, 2017

Member

@chfast removed the unnecessary initializations.

Member

pirapira commented Aug 23, 2017

@chfast removed the unnecessary initializations.

@chfast

chfast approved these changes Aug 23, 2017

@pirapira pirapira merged commit 55865c8 into develop Aug 23, 2017

6 checks passed

codecov/patch 96.55% of diff hit (target 50%)
Details
codecov/project Absolute coverage decreased by -<.01% but relative coverage increased by +28.85% compared to 1e21ee1
Details
codecov/project/app 62.95% (+0.01%) compared to 1e21ee1
Details
codecov/project/tests Absolute coverage decreased by -0.02% but relative coverage increased by +23.67% compared to 1e21ee1
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

@pirapira pirapira deleted the eip649 branch Aug 23, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment