openethereum / parity-ethereum

The fast, light, and robust client for Ethereum-like networks.
Other
6.81k stars 1.68k forks source link

Parity no longer compatible with expanse #7061

Closed wariner84 closed 6 years ago

wariner84 commented 6 years ago

Parity (1.8.2) is no longer compatible with expanse, since it is working on the wrong chain. Expanse forked at block 800’000.

5chdn commented 6 years ago

Is expanse no longer maintaining parity compatibility?

We should consider removing it then.

rphmeier commented 6 years ago

@5chdn is right. we only maintain specs for most chains up to the point that the developers for those chains are willing to maintain them

5chdn commented 6 years ago

Found the changes in here: https://github.com/expanse-org/go-expanse/releases/tag/v1.7.2

Expanse Changes 1.7.2

  • Upgrade Objectives:
  • Upgrade EXP to the latest ETH:Byzantium protocol.
  • Make EXP transactions faster
  • Decrease uncle inflation
  • Maintain Block Reward 8/min

Byzantium Objectives:

  • Addition of ‘REVERT’ opcode, which permits error handling without consuming all gas (EIP 140)
  • Transaction receipts now include a status field to indicate success or failure EIP 658)
  • Elliptic curve addition and scalar multiplication on alt_bn128 (EIP 196) and pairing checks (EIP 197), permitting
  • ZK-Snarks and other cryptographic mathemagic™
  • Support for big integer modular exponentiation (EIP 198), enabling RSA signature verification and other cryptographic applications
  • Support for variable length return values (EIP 211)
  • Addition of the ‘STATICCALL’ opcode, permitting non-state-changing calls to other contracts (EIP 214)
  • Changes to the difficulty adjustment formula to take uncles into account (EIP 100)

Important Information:

  • Fork Block Number: 800,000
  • New Block Target: 30 Seconds
  • New Block Reward: 4 EXP

Friendly ping to EXP dev @chrisfranko - could you comment on this? Is EXP support in Parity still desired? :)

chrisfranko commented 6 years ago

Yes we would still love parity support. When making the fork I didnt see where to make the corresponding changes to parity to submit the pr. If you could kindly point me to where i can make the Byzantium changes that would be awesome!

5chdn commented 6 years ago

I think most of the changes can be applied by adjusting the chain spec in

https://github.com/paritytech/parity/blob/master/ethcore/res/ethereum/expanse.json

I'm not quite understanding the complexity of the changes involved. Did you just enable Byzantium? Is the block target time and reward related to EIP649?

If yes, you can use eip649transition and reward, compare: 07c63c14f37a5be4f214dfe6acff033f3ec6f1c0

I'm happy to test if you come up with a chain spec. If there is anything on top of this, it might require additional code.

chrisfranko commented 6 years ago

Thanks 5chdn ill do this first thing in the AM, holliday stuff had me busy this weekend. ^_^

Serpent6877 commented 6 years ago

Any news on this? What happens to the coins that were mined after the fork on the old chain using Parity?

5chdn commented 6 years ago

No idea. You can start Expanse Classic :stuck_out_tongue:

Closing as there is nobody maintaining this anymore.

bjornwgnr commented 6 years ago

@chrisfranko FYI ^

5chdn commented 6 years ago

Happy to accept a PR with a working integration. For now it's urgent to remove it to avoid users getting stuck on the wrong fork.

chrisfranko commented 6 years ago

Except there is someone maintaining it and we were waiting on guidance because we updated everything we thought we were supposed to update.

5chdn commented 6 years ago

I'm sorry if this was due to a misunderstanding. Let's keep working on #7146 and I'll try to guide you.

chrisfranko commented 6 years ago

Thanks. So im pretty sure i got it right in the new commit. What I did was add a new param to the ethparams struct called EXPIP2 duration time and transition. Then below, checked to see if block.number > expip2 transition

Then updated the duration limit based on if that variable is true.

On 3 January 2018 at 17:06, Afri Schoedon notifications@github.com wrote:

I'm sorry if this was due to a misunderstanding. Let's keep working on

7146 https://github.com/paritytech/parity/pull/7146 and I'll try to

guide you.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/paritytech/parity/issues/7061#issuecomment-355141144, or mute the thread https://github.com/notifications/unsubscribe-auth/ADYQsR-_HFXV4B8SocgVXGIeGB5a4rzEks5tG_njgaJpZM4Qe7l3 .

chrisfranko commented 6 years ago

I'm not familiar with compiling rust so I havnt tested it yet, but it looks right.

On 4 January 2018 at 09:03, Christopher Franko chrisjfranko@gmail.com wrote:

Thanks. So im pretty sure i got it right in the new commit. What I did was add a new param to the ethparams struct called EXPIP2 duration time and transition. Then below, checked to see if block.number > expip2 transition

Then updated the duration limit based on if that variable is true.

On 3 January 2018 at 17:06, Afri Schoedon notifications@github.com wrote:

I'm sorry if this was due to a misunderstanding. Let's keep working on

7146 https://github.com/paritytech/parity/pull/7146 and I'll try to

guide you.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/paritytech/parity/issues/7061#issuecomment-355141144, or mute the thread https://github.com/notifications/unsubscribe-auth/ADYQsR-_HFXV4B8SocgVXGIeGB5a4rzEks5tG_njgaJpZM4Qe7l3 .