Skip to content
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

Feat/eip articulation #9

Draft
wants to merge 112 commits into
base: origin-master
Choose a base branch
from
Draft

Conversation

meowsbits
Copy link

Damn, looks like I merged in a lot of shit I don't want... but the conflict resolutions w/ upstream (the important and tedious part) should be valid no matter.

Maybe need to pick some cherries and use the force.

WIP.

sorpaas and others added 30 commits October 19, 2018 12:35
Add ESN support

Update params/bootnodes.go
Renames archive multi-geth-xxx -> ethoxy-multi-geth-xxx
for namespacing clarity
This also makes globbing for the deploy steps
easier, so we can just use one.
- travis: fix extra hyphen during deploy file globbing
add distribution archives for all tools
Refactors chain configuration and respective feature
implementations to use EIP definitions and methods,
instead of HardFork names, whenever possible. Doing so
attempts to address ambiguity and complexity in chain
configuration and feature implementation.

Signed-off-by: Isaac Ardis ([email protected])
* NOTE: This is a cherry-picked commit, and has undergone
some manual merge conflict resolution. It may not be perfectly
perfect yet.

The original commit body:

Refactors chain configuration and respective feature
implementations to use EIP definitions and methods,
instead of HardFork names, whenever possible. Doing so
attempts to address ambiguity and complexity in chain
configuration and feature implementation.

Signed-off-by: Isaac Ardis ([email protected])

consensus: fix wrong numbers for blockreward eips

IDK how these got off-by-one'd. Weird.

params: alphabetize ecip blocks

Because I'm anal like that.

consensus/ethash: fix mysterious off-by-one reward

Same as where the EIP number got incremented down. Weird.

params: note about json tag for eip160(F)Block

This is a bit of a sticky situation. Solves are either:
- use without 'F' here, break pattern, stay backwards
compatible for existing multi-geth clients, but incompatible
with ETH if they accept proposed changes as-is
- use with 'F' here, break backwards compatibility with
existing multi-geth clients, but be compatible with ETH as proposed
- push change without 'F' to ETH for review, keeping
in mind that it makes no sense for them to tangle their
code b/c of an establish multi-geth pattern
- push change without 'F' for any of the EIP160,161,170 to
eth. still breaks pattern for them

The root cause of this is that EIP158 namespace was used
to symbolize 3 separate EIPs... none of which ended up being
named 'EIP158'. Yea.

params: fix comment to be right

consensus/ethash: fix another damn offbyone increment

... these happened during the cherry-pick. wtf.
This is the remaining not-backwards-compatible Homestead
EIP not yet 'feature-fied'.

The EIP itself specifies a diverse set of changes, those
will be configuration-implemented in the next commit.
This allows for the potential for opcode mechanisms to
be defined differently even if they share the same bytecode.
This is akin to 257cf96, allowing variability in precompiled
contract mechanisms across network configurations.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants