Commit Graph

225 Commits

Author SHA1 Message Date
Afri Schoedon 360ecd3728 Add Musicoin and MCIP-3 UBI hardfork. (#6621)
* Add musicoin chain spec.

* Add musicoin to parity node

* Add musicoin to the wallet

* Add i18n for musicoin

* Align musicoin chain spec with 1.8, ref #6134

* Update musicoin bootnodes

* Prepare MCIP-3 in musicoin chain spec.

* Update musicoin chain spec with contract addresses for MCIP-3

* Extend ethash params by MCIP-3

* Fix musicoin chain spec json

* Use U256 for block rewards.

* Update musicoin registrar

* Fix merge leftovers

* Update musicoin chain spec for latest master

* Bestow MCIP-3 block reward(s).

* Update musicoin registry once and for all

* Align MCIP-3 block reward with go implementation

* Remove mcip3 test chain spec from repository

* Update MCIP-3 block rewards

* Musicoin homestead transition is at 1_150_000

* Expect mcip3 transtion to be properly defined in chain spec.

* Panic handling for mcip to default to regular block rewards if not specified

* Giving mcip3 rewards a useful default value.

* Fix ethjson tests.

* Update musicoin chain spec

* Fix tests 0:)

* Add musicoin mcip3 era test spec.

* Update musicoin chain spec(s)

* Add tests for mcip3 era block rewards

* Fix tests

* Disable byzantium for musicoin

* Pass miner reward to the tracer.

* Allow modifying blockreward in MCIP-3 transition.
2017-10-08 18:17:59 +02:00
arkpar 07c63c14f3
Byzantium fork block number 2017-10-06 09:47:04 +02:00
Robert Habermeier bc167a211b Generalize engine trait (#6591)
* move common forks and parameters to common params

* port specs over to new format

* fix RPC tests

* parity-machine skeleton

* remove block type

* extract out ethereum-specific methods into EthereumMachine

* beginning to integrate Machine into engines. dealing with stale transitions in Ethash

* initial porting to machine

* move block reward back into engine

* abstract block reward logic

* move last hash and DAO HF logic into machine

* begin making engine function parameters generic

* abstract epoch verifier and ethash block reward logic

* instantiate special ethereummachine for ethash in spec

* optional full verification in verify_block_family

* re-instate tx_filter in a way that works for all engines

* fix warnings

* fix most tests, further generalize engine trait

* uncomment nullengine, get ethcore tests compiling

* fix warnings

* update a bunch of specs

* re-enable engine signer, validator set, and transition handler

* migrate basic_authority engine

* move last hashes into executedblock

* port tendermint

* make all ethcore tests pass

* json-tests compilation

* fix RPC tests: change in gas limit for new block changed PoW hash

* fix minor grumbles

* validate chainspecs

* fix broken import

* fix transaction verification for pre-homestead
2017-09-26 14:19:08 +02:00
Arkadiy Paronyan 1b6d840ada Ropsten fork (#6533) 2017-09-18 11:12:42 +02:00
Arkadiy Paronyan 25b35ebddd Byzantium updates (#5855)
* EIP-211 updates

* benchmarks

* blockhash instruction gas cost updated

* More benches

* EIP-684

* EIP-649

* EIP-658

* Updated some tests

* Modexp fixes

* STATICCALL fixes

* Pairing fixes

* More STATICALL fixes

* Use paritytech/bn

* Fixed REVERTing of contract creation

* Fixed more tests

* Fixed more tests

* Blockchain tests

* Enable previously broken tests

* Transition test

* Updated tests

* Fixed modexp reading huge numbers

* Enabled max_code_size test

* Review fixes

* Updated pairing pricing

* missing commas (style)

* Update test.rs

* Small improvements

* eip161abc
2017-09-15 21:07:54 +02:00
Robert Habermeier 003eef982b Move more params to the common section. (#6134)
* move common forks and parameters to common params

* port specs over to new format

* fix RPC tests
2017-07-31 12:34:29 +02:00
arkpar 9ad0ff960e Place RETURNDATA behind block number gate 2017-07-19 14:34:59 +02:00
keorn f0a6b5d401 azure nodes (#6017) 2017-07-10 13:05:05 +02:00
Stewart Mackenzie d152fa3e85 Ethereum Classic Monetary Policy (#5741)
* Ethereum Classic Monetary Policy

Create a new parameter `ecip1017EraRounds`. When the block number
passes one era rounds, the reward is reduced by 20%.

See https://github.com/ethereumproject/ECIPs/blob/master/ECIPs/ECIP-1017.md

* Update rewards for uncle miners for ECIP1017

In the monetary policy, the rewards are changed from "up to 7/8 of the
reward" to "1/32 of the reward".

* Fix an off-by-one error in ECIP1017 era calculation

According to
https://github.com/ethereumproject/ECIPs/blob/master/ECIPs/ECIP-1017.md,
when in block number 5,000,000, it should still be in Era 1 (which in
our code `era == 0`). So we need to check whether the `rem` equals to
zero and act accordingly when calculating the era.

* `ecip1017_era_rounds` missing from EthashParams when run in build bot

* strip out ecip1017_eras_block_reward function and add unit test
2017-06-19 18:56:37 +02:00
Marek Kotewicz 575c51f5a0 eip214, #4833 (#4851) 2017-06-19 11:41:46 +02:00
Arkadiy Paronyan e6a31e7543 EIP-210 BLOCKHASH changes (#5505)
* EIP-210

* comment
2017-05-30 11:52:33 +02:00
Arkadiy Paronyan dd004aba9f EIP-140 (#5477) 2017-05-23 16:49:17 +03:00
keorn 945c1a9478 add monotonic transition to kovan (#5587) 2017-05-15 21:34:01 +01:00
Robert Habermeier 0768ce3600 Merge pull request #5307 from paritytech/eip-212
EIP-212 (bn128 curve pairing)
2017-04-21 13:10:57 +02:00
Arkadiy Paronyan b50fb71dd1 EIP-86 (#4697)
* EIP-86

* Disable EIP-86 auto activation for now
2017-04-19 14:30:00 +02:00
Arkadiy Paronyan 15ae24b541 New state tests (#5418)
* General state tests

* Allow dir name for a test
2017-04-12 13:33:49 +02:00
Christopher Franko 41700a6996 Update expanse json with fork at block 600000 (#5351)
* Update expanse json with fork at block 600000

* update exp chainID to 2
2017-04-03 09:59:08 +02:00
keorn 84abf5d84f Aura eip155 validation transition (#5362)
* add eip155 validation

* add transition block
2017-04-01 13:21:22 +02:00
NikVolf d34aec29ed finalize 2017-03-31 17:38:30 +03:00
Robert Habermeier d146ae7275 Merge pull request #4999 from paritytech/eip-213
EIP-213 (bn128 curve operations)
2017-03-31 14:54:07 +02:00
Jan Ziniewicz 5d6dac495e Add new seed nodes (#5345) 2017-03-30 14:49:11 +02:00
Arkadiy Paronyan c7d99c37fb Ropsten revival (#5302) 2017-03-28 10:47:21 +02:00
keorn a61b1567d0 Strict validation transitions (#4988)
* ability to make validation stricter

* fix consensus

* remove logger
2017-03-28 10:46:52 +02:00
NikVolf 434ed1b91c remove alt_ 2017-03-24 15:35:00 +03:00
NikVolf 5e34235a36 initial, fallable built-ins 2017-03-22 04:01:46 +03:00
Robert Habermeier 797a3e1cd9 EIP198 and built-in activation (#4926)
* EIP198 and built-in activation

* address review
2017-03-21 19:36:38 +03:00
Arkadiy Paronyan 43871e393c Additional kovan params (#4892) 2017-03-14 11:41:56 +01:00
Arkadiy Paronyan e0d554e0ca Recalculate receipt roots in close_and_lock (#4884) 2017-03-13 17:47:43 +01:00
Igor Artamonov 63bc942e41 update ETC bootnodes (#4794) 2017-03-07 05:34:48 +01:00
Jaco Greeff 495e5790e9 Support both V1 & V2 DataChanged events in registry (#4734)
* Add info on forks.

* Add new registry ABI

* Import registry2 & fix exports

* Select ABI based on code hash

* Render new event types (owner not available)

* New registry.

* Rename old chain.

* Fix test.

* Another fix.

* Finish rename.
2017-03-03 13:33:49 +01:00
Gav 40526c5270 Merge remote-tracking branch 'origin/master' into new-chains 2017-03-02 23:49:24 +01:00
Gav 71d3fa8707 Add registry. 2017-03-02 23:47:56 +01:00
Gav Wood 2862b3c21a New chains (#4720)
* Add Kovan chain.

* Fix up --testnet.

* Fix tests.

* Fix test.

* fix test

* Fix test.
2017-03-02 20:24:27 +01:00
Gav c662d1cb0a Add Kovan chain. 2017-03-02 14:33:59 +01:00
Arkadiy Paronyan c012dfc3ef EIP-98: Optional transaction state root (#4296)
* EIP98: Optional receipt state root

* Use if-else

* Fixing tests
2017-01-25 20:22:48 +01:00
Konstantin 9d0278e0f8 added 3 warpnodes for ropsten (#4289)
* added 3 warpnodes for ropsten

* Fixed indentation
2017-01-24 14:35:52 +01:00
Arkadiy Paronyan cdc525449a Ropsten fork detection (#4163) 2017-01-13 14:28:10 +01:00
Igor Artamonov be75cbfaaa set CHAIN_ID for Classic (#3934)
* configurable CHAIN_ID

* set CHAIN_ID for Ethereum Classic
2016-12-22 13:10:58 +01:00
arkpar ddb242c969 Fixed upgrading keys on the first run 2016-12-19 17:41:55 +01:00
Gav Wood b89d10239b
Update tests, gitlabci 2016-12-16 15:12:35 +01:00
Gav Wood 72f278efed Merge pull request #3868 from ethcore/new-dirs
Base directory option
2016-12-16 13:04:31 +01:00
arkpar e2371632c5 Base dir option 2016-12-15 21:56:45 +01:00
Gav Wood d455ac4a40
Merge remote-tracking branch 'origin/master' into dapps-accounts-rpc 2016-12-15 17:12:18 +01:00
Gav Wood 590428e7f2
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-15 15:12:09 +01:00
Gav Wood 69eec105a7
Change default back to permissive for now. 2016-12-15 13:40:44 +01:00
Gav Wood bf7fb84937
Don't put sha3s. 2016-12-14 21:59:00 +01:00
Jaco Greeff 2588aea6b2 Merge branch 'master' into check-updates 2016-12-14 14:37:38 +01:00
arkpar be5fefe772 Merge branch 'master' of github.com:ethcore/parity into new-dirs 2016-12-14 00:04:11 +01:00
Igor Artamonov e61d14d7f7 reuse Morden for Classic Testnet 2016-12-12 19:50:32 +00:00
arkpar 6601fde328 New data paths with upgrade 2016-12-12 16:51:07 +01:00
Igor Artamonov 6742b080f5 use decimals for block numbers in config 2016-12-11 20:38:37 +06:00
Igor Artamonov 4e3c49c809 revert ETC to correct Network ID 2016-12-11 20:34:46 +06:00
Igor Artamonov aed633d7df Testnet for Ethereum Classic 2016-12-11 19:25:02 +06:00
Igor Artamonov 7b5bc115e9 EIP-160 configuration for Ethereum Classic 2016-12-11 18:29:40 +06:00
Igor Artamonov 592ff53bab EIP-155 configuration for Ethereum Classic 2016-12-11 18:28:37 +06:00
Gav Wood 0a494962e4
Merge remote-tracking branch 'origin/master' into check-updates 2016-12-11 02:13:52 +01:00
arkpar 02c788a403 Network connectivity fixes 2016-12-10 14:20:34 +01:00
Gav Wood 90a20a217f
Merge branch 'master' into check-updates 2016-12-04 09:01:50 -08:00
Gav Wood 1dd13372b6
Merge remote-tracking branch 'origin/master' into rpc-middleware 2016-12-01 19:43:31 -08:00
Gav Wood ce3f4911a2
Merge remote-tracking branch 'origin/master' into check-updates 2016-11-27 15:01:17 +01:00
arkpar ffa123c949 Set default tx price to 0.0025 USD 2016-11-25 15:13:51 +01:00
Gav Wood d0312b89ad Update test, fix number. (#3612) 2016-11-25 13:03:15 +01:00
Gav Wood befb0bf2bd
Merge branch 'fix-number' into check-updates 2016-11-25 12:17:58 +01:00
Gav Wood 45017c599a
Update test, fix number. 2016-11-24 19:11:29 +01:00
Gav Wood 735df6c30f
More work. 2016-11-24 17:19:48 +01:00
Jaco Greeff af0db9f80e New registry contract address for ropsten (#3549)
* New registry for ropsten

* Registry address

* Registry with payable modifier
2016-11-21 18:14:23 +01:00
Arkadiy Paronyan efd1d9bd0e Ropsten network (#3539)
* Ropsten network

* Sorted premine

* Comas

* Removed trailing coma
2016-11-20 16:38:45 +01:00
Konstantin d870b71636 updated the european warp bootnode addresses (#3528) 2016-11-18 19:41:39 +01:00
Tomasz Drwięga e45fa62ed5 Fixing tests, fixing refreshing precompiled (#3483)
* Fixing tests, fixing refreshing precompiled

* Commit only js and Cargo.lock

* Moving commands to the right place

* Adding js content as well
2016-11-17 10:58:07 +01:00
GitLab Build Bot a7574a1108 [ci skip] js-precompiled 20161116-161024 2016-11-16 16:12:55 +00:00
arkpar be4311540d Set HF block number 2016-11-15 22:04:25 +01:00
Gav Wood b5704f8056 Update max code size. 2016-11-15 17:58:29 +01:00
Gav Wood 30ea921329 Introduce the actual max code size. 2016-11-15 17:58:28 +01:00
GitLab Build Bot d1848117ef [ci skip] js-precompiled 20161113-131856 2016-11-13 13:20:20 +00:00
GitLab Build Bot 5a259be290 [ci skip] js-precompiled 20161113-131228 2016-11-13 13:13:54 +00:00
Arkadiy Paronyan 6ffaab15a3 Disarm the HF and add more bootnodes (#3323)
* Disarm the HF

* More bootnodes

* Updated tests
2016-11-10 11:28:27 +01:00
GitLab Build Bot 29aecc2cff [ci skip] js-precompiled 20161109-171832 2016-11-09 17:19:59 +00:00
Gav Wood 4712b882e5 New transaction tests (#3313)
* Add new transaction tests.

* Add new test.
2016-11-09 18:02:24 +01:00
Igor Artamonov 2a19c33b8d delay bomb for Classic (ECIP-1010) (#3179)
* delay bomb for classic (ECIP-1010)

* formatting fix after core review, rel [e6b5093]
2016-11-04 23:09:23 +01:00
Gav Wood d3de475205 EIPs 155, 160, 161 (#2976)
* The front-end for each hard-fork, also EIP-160.

* Address EIP161 a/c

* Include EIP-161b

* EIP-161 part d.

* Fix test build.

* Fix one test, add another.

* Fix use of bloom & renaming.

* Initial groundwork for EIP-155

* Fix minor bug.

* Fix all tests finally.

* Rest of EIP-155.

* Add tests for EIP-155 algorithm.

Update transaction tests validation.

* Minor reformat.

* Address grumbles.

* Remove unused code.

* Fix SUICIDE gas mechanism and add consensus tests.

* Remove commented code.

* Set Frontier hardfork block number

* Fix warning.

* Transaction tests,
2016-11-03 22:22:25 +01:00
Tomasz Drwięga 956a059a06 Updating bootnodes for ETC (#2938) 2016-10-28 16:02:23 +02:00
Arkadiy Paronyan 55efa16e42 More bootnodes (#2926) 2016-10-28 12:00:01 +02:00
Arkadiy Paronyan f024acd329 More snapshot fixes and optimizations (#2883)
* More snapshot fixes and optimizations

* db drop
2016-10-26 16:14:13 +02:00
Arkadiy Paronyan 6f7b7638f4 Resolve morden fork (#2773) 2016-10-21 19:23:05 +02:00
Arkadiy Paronyan 906dcd7bfe Block import optimization (#2748)
* Block import optimization

* whitespace

[ci:none]
2016-10-20 14:49:12 +02:00
Tomasz Drwięga 9869a85ed5 Bumping json tests 2016-10-19 16:31:51 +02:00
Jaco Greeff 57f33c45cc Update Registry.sol address (mainnet) (#2713) 2016-10-19 12:35:56 +02:00
Arkadiy Paronyan 487dfb0208 Snapshot sync part 2 (#2098)
* Split block downloader into a module

* Snapshot sync progress

* Warp sync CLI option

* Increased snapshot chunk and ping timeouts

* Fixed an issue with delayed writes

* Updated bootnodes

* Don't run pending IO tasks on shutdown

* Optional first_block; removed insert_snapshot_block

* Fixing expect calls

* Fixed stalled sync

* style and docs

* Update block_sync.rs

[ci:skip]
2016-10-18 18:16:00 +02:00
Gav Wood b5c65e3df5 Fix up ETC EIP-150 transition to 2,500,000. (#2636) 2016-10-16 13:44:56 +02:00
Gav Wood 85eeb3ea6e EIP150.1c (#2591)
* EIP150.1b first part.

* Add documentation.

[ci:skip]

* Tweak comment

* Fix some tests.

* Fix create

* Add the new EIP150 test. (#2563)

* Fix create some more.

* Another fix for create.

* Final fixes.

* Enable EIP150 test.

* Revert the costly suicides to respect EIP150.1b.

* Fixups for EIP150.1c

* Update tests.

* Updating tests

* Adding state tests

* Updating tests

* Updating HF block

* Removing flushln [ci:skip]

* Commenting out suicide test

* New tests.

* Switch to EIP tests.

* Rename some stuff, combine transition tests.

* Fix U256 overflows.

* Name cleanups and an effort to fix tests.

* Rename back for clarity.

* Fix non-EIP-150 OOG CALLs

* New transition block number & additional EIP150 tests

* Morden transition block set; Tests updated

* Added missing test
2016-10-15 14:39:15 +02:00
keorn 8ad1582208 enable suicide json test (#2626) 2016-10-14 14:28:02 +02:00
keorn 0189096caf Update json test suite (#2574)
* update json test suite

* comment out the incomplete test
2016-10-12 10:06:23 +02:00
Jaco Greeff b1d8b84eb9 update Morden registry address (#2417) 2016-10-01 15:16:23 +02:00
Gav Wood 15a14a5f49 Expanse compatibility (#2369)
* Add support for Expanse.

* Fix build.

* Refactor to be able to alter the eth subprotocol name

* Fix JSON.

* Support exp hardfork.

* Fix exp json again.

* Fixed test

* Fix tests.
2016-09-28 14:21:59 +02:00
Gav Wood ccdf80f4dc Fix several RPCs (#1926)
* Fix up pending receipts details.

* Add support for additional params and registry over RPC.

* Fix tests.

* Add test, additional fix.

Fixes #1932.

* Fix up tests.

* Fix test.

* Fix test.
2016-08-17 19:25:02 +02:00
Marek Kotewicz 08f30fc1a8 updated classic JSON spec with classic bootnodes, fixes #1842 (#1847) 2016-08-05 09:51:57 +02:00
Arkadiy Paronyan 6b1e722a6b Disconnect peers on a fork (#1738) 2016-07-27 21:38:22 +02:00
Gav Wood e734810293 Ethereum classic (#1706)
* Add Ethereum Classic support

(Rename homestead-dogmatic -> classic)

* Additional change needed.

* More needed changes.

* Separate database path for known forks.

* Address minor grumble.
2016-07-25 10:20:22 +02:00
Gav Wood 799c69c8d5 DAO hard-fork (#1483)
* Minor additions to allow resetting of code.

* Add test.

* Provisional DAO hard-fork proposal.

* Change to reflect latest HF spec.

* Include extradata restrictions and overrides.

* Introduce new tests.

* Update tests to new spec format.

* Allow JSON chain spec fields to be optional.

* Remove superfluous definitions. Fix overflow risk.

* Fix build.

* Add missing file.

* Remove old flag.

* Update to latest address set.

* Update tests and test spec to latest.

Change the mining default to release only on own transactions.
2016-07-16 13:02:56 +02:00
Gav Wood 488ff88562 Remove soft-fork stuff. 2016-07-05 18:18:35 +02:00
Gav Wood 5ceb1b084c Add missing args and some new JSONs for testing. 2016-06-19 14:49:06 +02:00
Gav Wood 2245baaaab Provide CLI options to disable aspects of soft-fork.
Soft-fork will remain default behaviour, but you can now disable
either the whole mechanism (you'll lose money if you mine with this
when the majority network doesn't) or just vote against it but
otherwise go with the flow.
2016-06-19 13:20:14 +02:00
Gav Wood b17581d7de VM tracing and JSON RPC endpoint for it. (#1169)
* Groundwork for basic VM tracing.

* RPC endpoint for VM tracing and ser/de types ready.

* Create VMTracer trait.

* Rearchitected VM tracing to reflect existing tracing.

Should more or less work now.

* Integrated VM tracing into JSONRPC.

* Fix ethcore module tests.

* Add tests for VM tracing.

* Fix consensus test code.

* Fix mock tests.

* Added VM trace information for post-execution stuff.

* Fix max-value calls and add "creates" field to getTransaction.

* Tests for VM tracing.

* Don't implement the trait with unimplemented.

* Remove invlaid comment.

* Fix tests.
2016-06-02 12:40:31 +02:00
Gav Wood 75d0606bc0 More bootnodes for morden. 2016-05-25 11:37:19 +02:00
Gav Wood ac73b2628a Basic Authority (#991)
* Firt commit.

* First non-functional but correct implementation of BasicAuthority.

Still needs:
- Sealing infrastructure.

* Punch a hole to give miner access to key store.

* Fix test built.

* Basic version of synchronous mining.

This will seal a block whenever a new transaction comes through.
To be made better we need a timer which will wait for one second after the
last block before sealing a new one - better still would be to cooperatively
interleave blocks with other sealing nodes.

* Add tests.

* Fix minor issues from repotting.

* Address grumbles.
2016-05-03 17:23:53 +02:00
Marek Kotewicz 373284ca0a spec loading cleanup (#858)
* spec loading cleanup in progress

* changed engine field in json spec

* refactored engine params

* polishing spec loading refactor

* fixed compiling json tests

* fixed compiling parity

* removed warnings

* removed commented out code

* fixed failing test

* bringing back removed TODO in spec.
2016-04-09 10:20:35 -07:00
arkpar 67d04c5952 Fixed bootnode URL and error message 2016-04-02 19:01:41 +02:00
debris a76aad2e12 fixed invalid json files 2016-03-18 23:56:51 +01:00
debris 79aa8570d0 pricing { linear: {} } 2016-03-18 22:54:36 +01:00
debris 3b8c6a1ab2 linear -> pricing 2016-03-18 19:08:57 +01:00
debris 0621da8535 ethjson spec submodule 2016-03-17 13:41:11 +01:00
Gav Wood 628a53ccec Update tests. Fix our tests. 2016-03-01 20:02:59 +01:00
Gav Wood 6197b3ee60 New provisional Homestead block. 2016-02-29 12:47:34 +01:00
Gav Wood be4b0472c8 Morden switch to Homestead rules at #494,000. 2016-02-29 10:33:57 +01:00
arkpar 8bd052b986 Fixed warnings 2016-02-20 11:54:12 +01:00
Gav Wood 425350aa65 Add Morden bootnode. 2016-02-16 10:53:28 +01:00
Gav Wood 38a568e426 Use 1100000 as the homestead transition, fix build instructions. 2016-02-15 13:49:44 +01:00
Gav Wood b821412f72 Delay in test frontier file. 2016-02-14 12:02:44 +01:00
Gav Wood 48f657c031 Delay Homestead transition from 1,000,000. 2016-02-14 12:01:18 +01:00
Gav Wood 7bc340956f Correct node id for bootnode. 2016-02-08 16:57:57 +01:00
Gav Wood a531229076 Back to 30303. 2016-02-08 14:06:49 +01:00
Gav Wood b27a7e0387 30304 for bootnode. 2016-02-08 13:55:49 +01:00
Gav Wood 047731b11d Add parity-node-zero.ethcore.io to boot nodes. 2016-02-08 13:39:06 +01:00
arkpar 048c27237a Counters in JournalDB 2016-02-04 21:33:30 +01:00
debris 02f5004161 moving around dirs 2016-01-31 11:08:04 +01:00