Commit Graph

696 Commits

Author SHA1 Message Date
Arkadiy Paronyan
2f52425387 Unlock account with timeout for geth compatibility (#1854)
* Unlock account with timeout for geth compatibility

* Fixed test
2016-08-05 23:33:14 +02:00
Robert Habermeier
76a7246369 Snapshot creation and restoration (#1679)
* to_rlp takes self by-reference

* clean up some derefs

* out-of-order insertion for blockchain

* implement block rebuilder without verification

* group block chunk header into struct

* block rebuilder does verification

* integrate snapshot service with client service; flesh out implementation more

* initial implementation of snapshot service

* remove snapshottaker trait

* snapshot writer trait with packed and loose implementations

* write chunks using "snapshotwriter" in service

* have snapshot taking use snapshotwriter

* implement snapshot readers

* back up client dbs when replacing

* use snapshot reader in snapshot service

* describe offset format

* use new get_db_path in parity, allow some errors in service

* blockchain formatting

* implement parity snapshot

* implement snapshot restore

* force blocks to be submitted in order

* fix bug loading block hashes in packed reader

* fix seal field loading

* fix uncle hash computation

* fix a few bugs

* store genesis state in db. reverse block chunk order in packed writer

* allow out-of-order import for blocks

* bring restoration types together

* only snapshot the last 30000 blocks

* restore into overlaydb instead of journaldb

* commit version to database

* use memorydbs and commit directly

* fix trie test compilation

* fix failing tests

* sha3_null_rlp, not H256::zero

* move overlaydb to ref_overlaydb, add new overlaydb without on-disk rc

* port archivedb to new overlaydb

* add deletion mode tests for overlaydb

* use new overlaydb, check state root at end

* share chain info between state and block snapshotting

* create blocks snapshot using blockchain directly

* allow snapshot from arbitrary block, remove panickers from snapshot creation

* begin test framework

* blockchain chunking test

* implement stateproducer::tick

* state snapshot test

* create block and state chunks concurrently, better restoration informant

* fix tests

* add deletion mode tests for overlaydb

* address comments

* more tests

* Fix up tests.

* remove a few printlns

* add a little more documentation to `commit`

* fix tests

* fix ref_overlaydb test names

* snapshot command skeleton

* revert ref_overlaydb renaming

* reimplement snapshot commands

* fix many errors

* everything but inject

* get ethcore compiling

* get snapshot tests passing again

* instrument snapshot commands again

* fix fallout from other changes, mark snapshots as experimental

* optimize injection patterns

* do two injections

* fix up tests

* take snapshots from 1000 blocks efore

* address minor comments

* fix a few io crate related errors

* clarify names about total difficulty

[ci skip]
2016-08-05 17:00:46 +02:00
keorn
b6f827e3c8 fix deprecated typo 2016-08-05 11:06:01 +02:00
Arkadiy Paronyan
05bfdc508e Split IO and network crates (#1828)
* Abort on panic

* Split IO and network crates

* Restore panic handler

* Fixed doc tests
2016-08-05 10:32:04 +02:00
debris
5da24e5dc3 fixed parsing export params, fixes #1826 2016-08-04 09:22:54 +02:00
Tomasz Drwięga
deceb5fd56 Bumping clippy & fixing warnings (#1823)
* Bumping clippy

* Fixing clippy warnings

* Cargo.lock (latest nightly?)
2016-08-03 19:01:48 +02:00
Tomasz Drwięga
40a304b177 Fixing account naming (#1810)
* Fixing account naming

* Using geth format for files. Avoid re-importing existing keys with different names.

* Adding expect for time format
2016-08-03 17:58:22 +02:00
Tomasz Drwięga
c5ffb5af79 No block number in get work while in geth-compat mode. (#1821) 2016-08-03 15:31:00 +02:00
Tomasz Drwięga
0c7ab34c32 Development mode for Signer UI (#1788)
* Development mode for Signer

* CLI option for signer-dev

* Renaming CLI option

* Make obvious that CLI option is insecure.

[ci:skip]

* Additional warning over security
2016-08-02 17:53:53 +01:00
Tomasz Drwięga
b165059327 Fixing unlock parsing (#1802) 2016-08-02 06:12:33 -07:00
Arkadiy Paronyan
9e5e57fdcd Fix block body migration (#1777) 2016-07-30 17:33:08 -07:00
Marek Kotewicz
bcf8cd6dc0 cache manager and clearing tracing cache (#1769)
* removed configure_cache method

* generic cache_manager struct

* fixed #1743, tracing caches are cleared

* removed deadlocks in garbage_collect, implemented HeapSizeOf for traces

* trace cache config

* fixed carbage typo
2016-07-30 15:19:27 -07:00
arkpar
8c47240248 Min and Max peers setting 2016-07-29 17:30:02 +02:00
Arkadiy Paronyan
57faa37623 Disable WAL (#1765)
* Disable WAL

* Make WAL optional

* Fix tests.

* Update cli.rs
2016-07-29 15:36:00 +02:00
keorn
29e07755e9 add new line when printing start strings (#1766) 2016-07-29 13:35:27 +02:00
Gav Wood
24c6561bc1 Add test. 2016-07-29 10:48:05 +02:00
Gav Wood
a44ef73b33 Whitespacey lines are not invalid in reserved peers file.
Fixes #1622
2016-07-29 10:22:51 +02:00
Gav Wood
360ed1a1f1 Remove bad error message.
Closes #1759
2016-07-29 10:04:05 +02:00
Gav Wood
4304f4a2a4 Minor tweak to logging. Fix CLI help. 2016-07-29 00:22:46 +02:00
Tomasz Drwięga
e4f0c0b215 Single DB (#1741)
* Consolidation migration

* Started db amalgamation

* Using client constants for columns

* Adding with_columns constructor

* Migrating to single db

* Fixing tests.

* test.sh without verbose

* Fixing warnings

* add migration tests that catch the bug

* make multiple migrations more robust

* add moved v9

* Merge branch 'noop-migrations' into single-db

* spurious line

* clean up migrations ordering

* update comment [ci skip]

* Bumping default number of max_open_files & re-ordering columns.

* fix merge

* fix ignored analysis tests

* Caching best block content

* Faster best_block_header

* Adding progress to v8 migration

* clean up warnings

* Separate hashes and bodies in the DB

* Separate hashes and bodies in the DB

* Fixed tests
2016-07-28 23:46:24 +02:00
Marek Kotewicz
f33cd60dc2 compaction profile used during migration, fixes #1750 (#1751)
* compaction profile used during migration, fixes #1750

* whitespace

[ci:skip]
2016-07-28 20:29:58 +02:00
Marek Kotewicz
80a7e4b964 handle keys deserialization errors, fixes #1592 (#1701)
* handle keys deserialization errors, fixes #1592

* warning on unsuccesfull geth accounts import
2016-07-28 20:26:07 +02:00
Arkadiy Paronyan
6b1e722a6b Disconnect peers on a fork (#1738) 2016-07-27 21:38:22 +02:00
keorn
02cf48681d Blocks and snapshot compression (#1687)
* new Compressible rlp trait

* new Compressible rlp trait

* make compressed rlp iterable

* make compressed rlp iterable

* invalid rlp slice swapper

* switch compress to swapper, add reverse swapper test case

* add basic account compression test

* add new rlp trait

* new Compressible rlp trait

* make compressed rlp iterable

* invalid rlp slice swapper

* invalid rlp slice swapper

* switch compress to swapper, add reverse swapper test case

* switch compress to swapper, add reverse swapper test case

* add account compress/ decompress test

* make compressor cleaner, use hashmaps for swapper

* improve compression tests

* add a DecompressingDecoder, change Decoder to take refernce

* separate rlp compression related stuff

* new Compressible rlp trait

* new Compressible rlp trait

* new Compressible rlp trait

* make compressed rlp iterable

* make compressed rlp iterable

* make compressed rlp iterable

* invalid rlp slice swapper

* invalid rlp slice swapper

* invalid rlp slice swapper

* switch compress to swapper, add reverse swapper test case

* switch compress to swapper, add reverse swapper test case

* switch compress to swapper, add reverse swapper test case

* add basic account compression test

* add new rlp trait

* add account compress/ decompress test

* make compressor cleaner, use hashmaps for swapper

* improve compression tests

* add a DecompressingDecoder, change Decoder to take refernce

* separate rlp compression related stuff

* DecompressingDecoder test

* initial compressing HashDB wrapper

* remove unused test

* change CompressedDB to struct wrapper with overlay

* simplify compressor

* failed RefCell attempt

* use denote to return reference

* compiled compresseddb

* compressdb test, add overlay emplace

* fix overlay reference count handling

* add immutable compresseddb, make account use hashdb

* simplify using trait objects

* enable hashdb for account

* initial state compression attempt

* wrap state db

* add tests for analyzing db

* add account predicate

* try to compress data fields as rlp too

* remove compression for storage trie

* add a compressing migration

* more compression stats tests

* fix migration import

* nested encoding compression test

* fix decompression, move db stats tests to rlpcompression

* added malformed rlp tests, cover a few edge cases

* new CompressingEncoder struct

* extend migrations to state

* first version working on the whole db

* clean up Compressible impl

* tests cleanup

* add a testing migration

* refactor deep compression using option, add simple compression

* put tests in a module

* fix compressed overlay loading

* simple compression for snapshots

* remove unused DecompressingDecoder

* add a general compressing migration

* add more common rlps to compress

* use static slices for swapper

* add precomputed hashes and invalid rlps

* make decoder private again

* cover more cases with tests

* style

* fix weird indentation

* remove possible panic in payload_info

* make prefix checking safe

* fix db existence check

* remove db dir from test

* pass usize by value [ci skip]

* Improve comment on panic removal.

* add common blocks db rlps

* add compression to blockchain db

* add blocks db migration

* fix the migrations

* remove state compression

* add a separate snapshot swapper

* ability to use different swappers and traversal

* update tests to new interface

* clean up code ordering

* update usage

* fix compilation

* remove unnecessary changes

* move methods to functions to reduce interface

* move test to module

* update common rlps to blocks db

* move tests to tests modules

* remove redundant &
2016-07-27 17:11:41 +02:00
Tomasz Drwięga
3f41186b2e Fixing some clippy warnings (#1728)
* Fixing warnings

* Fixing unnecessary ref

* Removing unnecessary operation
2016-07-26 20:31:25 +02:00
Arkadiy Paronyan
6c15a47acc Fix importing blocks from a pipe file (#1724) 2016-07-26 10:44:01 +02:00
Nikolay Volf
f614a69929 moving to the single binary (#1710) 2016-07-26 00:21:08 +02:00
Gav Wood
856657e39a Log a chain-reorg. (#1715)
* Log a chain-reorg.

* Nicer output

* Use imported rather than enacted.

Enacted can include previously imported blocks which makes the
info incorrect.
2016-07-26 00:20:37 +02:00
Arkadiy Paronyan
431ba5e260 Restore new block informant message (#1716) 2016-07-26 00:19:37 +02:00
Gav Wood
b220e07feb Fix broken internal names. (#1711) 2016-07-25 17:45:55 +02:00
Marek Kotewicz
226fe8e0bb cli overhaul (#1600)
* cli commands

* cleanup parity/signer

* cleanup parity/signer

* remove redundant import of signer crate from main.rs

* cli cleanup in progress

* cli cleanup in progress

* moved few commonly used functions to separate methods with tests

* cleaning up blockchain import in progress

* cleaning up blockchain import in progress2

* cleaning up blockchain import in progress3

* tests for database compaction profile parsing

* cleaning up blockchain import in progress4

* cleaning up blockchain import in progress5

* blockchain import

* export blockchain in progress

* cleanup execute_export

* Configuration::to_duration cleaned up

* removed unused code, tests for to_duration

* cleanup Configuration::mode function

* parsing some of the cli params in params.rs

* rpc and signer are no longer optional

* move importing extern crates to main.rs file

* swipe dies from rpc module

* swipe dies from dapps

* finding deprecated

* several tests and fixes for parity

* parity cleanup in progress

* cleanup price parsing

* parity cleanup in progress

* swiped all dies

* parity cleanup in progress

* replace usages of from_str with parse() in parity/params.rs

* removed few more from_str

* split parity/params.rs into params and helpers

* removed wildcard import from configuration.rs

* cleanup directories/path creation

* cleaning up run cmd

* moved LoggerConfig

* defaults for cli params

* fixed indention in raise_fd_limit

* tests for rpc_apis

* tests for default ipc and rpc settings

* ipc socket

* cleanup in progress

* account service

* cleanup miner config

* BlockChain commands use Directiores structure now

* client_config

* network settings and dapps configuration

* removing warnings

* default logger config

* fixed client_path

* overhaul

* fixing export && import

* default export DataFormat

* import and export also upgrade db

* fixed export && import

* polishing pr

* polishing pr

* fixed custom bootnodes

* fixed daemonize on windows

* fixed setting up enable network

* finished pr

* fixed compiling on windows

* Fixed warning; windows build

* Better cache management

* Fixed tests on windows

* Fixed test

* Restored pruning method names

* --cache alias

* Fixed more tests

* Ensure default options actually listed as valid

[ci:skip]
2016-07-25 16:09:47 +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
9cdd2d265a Informant tidyup. (#1699)
* Informant tidyup.

Clean indent.
Don't skip skipping.

* Move string to right place

[ci:skip]
2016-07-24 17:38:29 +02:00
Gav Wood
3f841cc578 Name and meta in accounts (#1695)
* Introduce persistent name() and meta() in SecretStore.

* Quick stash.

* Fix build.

* Add ethcore_set methods.

* Bug fixes for default values.

* Move to personal to ensure set API exposed.

* Add UUID to accounts info.

* Add tests.
2016-07-24 17:38:21 +02:00
Arkadiy Paronyan
247495fba2 Prevent syncing to ancient blocks (#1693)
* Don't try to sync to ancient blocks

* Fixed test
2016-07-23 17:27:23 +02:00
Tomasz Drwięga
10bdfe6926 Disabling signer when in geth-compatibility mode (#1676) 2016-07-22 14:47:31 +02:00
Nikolay Volf
8ab56ea3d1 IPC (feature-gated) (#1654)
* moving ipc deriving to trait

* refactoring of the client

* all compiled

* proved all working

* warnings purged

* allow hypervisor to specify initialization payload in two ways

* using binary initialisation payload for sync

* some docs

* logger to separate crate

* log settings for sync bin

* forwarding logging arguments to the sync
2016-07-20 18:13:56 +02:00
Arkadiy Paronyan
b007770ba8 Moved syncing log out of the client (#1670) 2016-07-20 12:36:20 +02:00
Tomasz Drwięga
0cba70fba3 Host validation (again) (#1666)
* Revert "Revert "Validating Host headers in RPC requests" (#1663)"

This reverts commit 3cc3dbef66.

* Fixing binding on MacOS
2016-07-20 12:34:17 +02:00
gregg dourgarian
d67369a01c fix typos (#1644) 2016-07-19 20:42:23 +02:00
Gav Wood
3cc3dbef66 Revert "Validating Host headers in RPC requests" (#1663) 2016-07-19 13:15:25 +02:00
Tomasz Drwięga
6e79a36ef6 Validating Host headers in RPC requests (#1658)
* Validating Host headers in RPC requests

* Fixing convention [ci skip]

* Remove extra indent.

[ci:skip]
2016-07-19 12:53:58 +02:00
Tomasz Drwięga
038862fa9d Fixing clippy warnings (#1660) 2016-07-19 09:25:51 +02:00
Arkadiy Paronyan
4e447ccc68 More performance optimizations (#1649)
* Use tree index for DB

* Set uncles_hash, tx_root, receipts_root from verified block

* Use Filth instead of a bool

* Fix empty root check

* Flush block queue properly

* Expunge deref
2016-07-19 09:23:53 +02:00
NikVolf
028d6f6853 Merge branch 'master' into sync-svc 2016-07-18 15:20:57 +02:00
NikVolf
6a47fd176b remove import glob 2016-07-18 15:20:25 +02:00
Gav Wood
0d2f516ad7 Multi-mode logging. (#1643)
* Multi-mode logging.

Better for miners (they get immediate notification of new block).
Better for general use (less superfluous information shown).

* Remove comment.

[ci:skip]

* Minor string change

[ci:skip]

* Minor message tweak.

* Minor tweaks and indentation fix.
2016-07-17 23:00:57 +02:00
NikVolf
a44e95b0ec hashing secret on the sync side 2016-07-17 10:39:35 +02:00
NikVolf
9eed51ed20 comments - 2016-07-16 19:25:28 +02:00
NikVolf
c3ef5c10a3 got rid of the generic parameter for ipc interface 2016-07-16 19:24:45 +02:00
NikVolf
77bbab009e got rid of Arc<T> dispatch 2016-07-16 19:09:14 +02:00
NikVolf
8e26977693 review fixes 2016-07-16 18:51:06 +02:00
NikVolf
be25e930e5 Merge branch 'master' into sync-svc 2016-07-16 15:57:30 +02:00
NikVolf
4cb1c906b0 rpc dependencies relayout 2016-07-16 15:51:06 +02:00
NikVolf
98ddff1326 dependancies layout 2016-07-16 14:24:57 +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
keorn
78007cf80b Die if the DB is newer than the one supported. (#1630)
* die on DB from the future

* use error type to print messages, print db path
2016-07-16 10:41:09 +02:00
NikVolf
4a9d57d2ce flush work 2016-07-15 17:39:59 +02:00
NikVolf
507a4ea26c basic layout of sync executable and minor fixes in the api 2016-07-15 15:32:29 +02:00
Gav Wood
d14b6871a5 Cleanup of colour code. Use is_a_tty. (#1621)
* Cleanup of colour code. Use is_a_tty.

* Fix test build.

* Another fix.
2016-07-15 10:11:14 +02:00
NikVolf
c60e02d151 fix rwlock 2016-07-14 12:32:55 +02:00
NikVolf
2310ecb480 sorting out the multi-interface dispatch scenario 2016-07-14 12:29:05 +02:00
Nikolay Volf
44bc8a08fb Sync IPC interface (#1584)
* chain notify trait

* replaced network service with io service

* fix ethcore crate warnings

* refactored network service without generic

* ethcore fix

* ethsync refactoring

* proper linking of notify

* manage network interface

* rpc crate rebinding

* full rewire

* sync internal io service

* fix deadlock

* fix warnings and removed async io

* sync imported message propagation

* fix rpc warnings

* binart warnings

* test fixes

* rpc mocks and tests

* fix util doctest

* fix message name and removed empty notifier

* pointers mess & dark mode fixed

* fixed sync doctest

* added few warnings

* fix review

* new convention match

* fix error unwraps

* doctest fix

* basic library re-layout

* missing files to relayout

* duplicating network config on sync level

* binary serializers for config

* ipc endpoint for manage

* ipc endpoint for sync

* handshake sorting out

* sorting out the multi-interface dispatch scenario

* fixing tests

* fix doctest
2016-07-14 12:07:33 +02:00
Robert Habermeier
36d3d0d7d7 replace synchronization primitives with those from parking_lot (#1593)
* parking_lot in cargo.toml

* replace all lock invocations with parking_lot ones

* use parking_lot synchronization primitives
2016-07-13 19:59:59 +02:00
Tomasz Drwięga
e0f6709f05 Merge branch 'master' into noui
Conflicts:
	Cargo.toml
2016-07-13 11:48:04 +02:00
Tomasz Drwięga
29076da4b7 UI feature 2016-07-13 11:10:43 +02:00
Gav Wood
3abe3e1fbc Fix logging (#1590)
* Strip colour for everywhere except the terminal.

* Log to file.

Fixes #1560.

* Fix indentation.

[ci:skip]

* Remove unnecessary clone()ing.

* Update setup_log.rs

* remove unnecessary mutex in logging (#1601)
2016-07-13 09:05:26 +02:00
Tomasz Drwięga
11cae70cdd No-ui compilation feature 2016-07-12 20:15:36 +02:00
Robert Habermeier
60302acb94 merge with master 2016-07-12 13:09:42 +02:00
Robert Habermeier
c26627d968 Merge branch 'master' into migration_progress 2016-07-12 12:46:34 +02:00
Robert Habermeier
7200cfcbc9 expunge &Vec<T> pattern (#1579)
* expunge &Vec<T> pattern

* fix travis
2016-07-12 10:28:35 +02:00
Robert Habermeier
7e13ce6185 v7 migration progress 2016-07-11 19:39:06 +02:00
Marek Kotewicz
c5ed363bba cleaned up parity/signer (#1551)
* cleanup parity/signer

* remove redundant import of signer crate from main.rs

* rpc and signer are no longer optional

* move importing extern crates to main.rs file
2016-07-11 17:11:49 +02:00
Nikolay Volf
d3695d0b72 Major sync <-> client interactions refactoring (#1572)
* chain notify trait

* replaced network service with io service

* fix ethcore crate warnings

* refactored network service without generic

* ethcore fix

* ethsync refactoring

* proper linking of notify

* manage network interface

* rpc crate rebinding

* full rewire

* sync internal io service

* fix deadlock

* fix warnings and removed async io

* sync imported message propagation

* fix rpc warnings

* binart warnings

* test fixes

* rpc mocks and tests

* fix util doctest

* fix message name and removed empty notifier

* pointers mess & dark mode fixed

* fixed sync doctest

* added few warnings

* fix review

* new convention match

* fix error unwraps

* doctest fix
2016-07-11 17:02:42 +02:00
Robert Habermeier
bdf4446173 have AccountDB use address hash for uniqueness (#1533)
* partially done alternate migration scheme

* finish altering migration framework

* migrate tests to new migration framework

* address comments

* remove superfluous newline
[ci skip]

* TempIdx -> TempIndex
[ci skip]

* modify account_db to work on address hash, not address

* add a database migration for new accountdb

* preserve first 96 bits of keys when combining

* handle metadata keys in migration and preserve first 96 bits

* fix comments and hash address instead of hash

* different migrations based on pruning

* migrations mutably borrow self

* batch abstraction for migration

* added missing licence headers

* overlay recent v7 migration

* better error handling, migrate version key as well

* fix migration tests

* commit final batch and migrate journaled insertions

* two passes on journal to migrate all possible deleted keys
2016-07-11 09:46:33 +02:00
Tomasz Drwięga
d7caae2241 Fixing clippy warnings (#1568)
* Fixing clippy warnings

* Fixing more warnings
2016-07-10 13:18:33 +02:00
Nikolay Volf
ae757afe15 Merge pull request #1570 from ethcore/dynamic-gas-price
Miner's gas price gets updated dynamically
2016-07-10 00:08:29 +02:00
Nikolay Volf
32a4a060d6 bringing hypervisor as a crate in ipc dir (#1565)
* resurrecting hypervisor in ipc namespace

* get rid of the quotes

* target: hypervisor
2016-07-09 17:18:34 +02:00
Gav Wood
d4d63a5688 Merge branches 'kill_unwraps' and 'dynamic-gas-price' of github.com:ethcore/parity into dynamic-gas-price 2016-07-09 12:29:06 +02:00
Gav Wood
9afbc9816d Merge branch 'master' into kill_unwraps 2016-07-08 17:31:30 +02:00
Gav Wood
25e6b2b827 Initial implementation of dynamic gas pricer. 2016-07-08 17:26:06 +02:00
Gav Wood
57c14eedfa Place ideal peers in the log output. (#1563) 2016-07-07 15:25:58 +02:00
Gav Wood
43d931de12 Minor indent fix. (#1561) 2016-07-07 13:18:09 +02:00
Gav Wood
3b662c285f Switch out .X().unwrap() for .unwrapped_X 2016-07-07 09:37:31 +02:00
Gav Wood
456ad9e21b Remove .lock().unwrap() idiom into locked(). 2016-07-06 19:52:34 +02:00
Gav Wood
cd7b046d80 Fix and add info messages (#1552)
* Display information on journal database on startup.

* Minor restyling.

* Client handles the enode message to avoid repeats.

* Avoid unneeded copies *and* reduce code.

* Fix up typo.
2016-07-06 18:28:11 +02:00
Robert Habermeier
f8b56317b4 Merge pull request #1548 from ethcore/remove-soft
Remove soft-fork stuff.
2016-07-06 13:05:43 +02:00
Robert Habermeier
b7d243368b Extend migration framework (#1546)
* partially done alternate migration scheme

* finish altering migration framework

* migrate tests to new migration framework

* address comments

* remove superfluous newline
[ci skip]

* TempIdx -> TempIndex
[ci skip]
2016-07-06 12:05:23 +02:00
Gav Wood
488ff88562 Remove soft-fork stuff. 2016-07-05 18:18:35 +02:00
Gav Wood
c26cfc1c5a Silent running operating modes (#1477)
* Command=line options.

* Keep alive for the eth protocol.

* Wire up final pieces.

* No network when dark.

* Passive and dark mode work.

* Ensure all RPCs keep alive.

* Fix tests.

* Fix minor bug.

* Minor whitespace.

* Split out some of the sleep-state.

* Fix help text.
2016-07-05 17:50:46 +02:00
Nikolay Volf
a2b4997888 Merge pull request #1525 from ethcore/client-api-refact2
Client API refactoring - limiting errors to crate-level error types
2016-07-05 12:15:38 +04:00
arkpar
24f09de60e Fixed public address config 2016-07-04 18:21:22 +02:00
Nikolay Volf
bb36a594c5 creating ethereum dir while in geth mode (#1530)
* creating ethereum dir while in geth mode

* fix warning

* more descriptive error
2016-07-04 11:53:21 +02:00
Gav Wood
1aee197d79 Make signer default as long as --unlock isn't used. (#1524) 2016-07-03 17:11:31 +01:00
Nikolay Volf
ff7fcd0992 add client timeout (#1526) 2016-07-02 10:16:31 +01:00
petevine
316fae2cc4 Fix error message. (#1527) 2016-07-02 07:58:32 +02:00
NikVolf
43027b36ea Merge branch 'master' into client-api-refact2 2016-07-01 22:43:51 +03:00
NikVolf
0f7b66f557 fixed compilation & warnings 2016-07-01 22:40:54 +03:00
Marek Kotewicz
d8a4cca817 Fatdb integration with CLI (#1464)
* fatdb integration

* --fat-db

* rerun with --pruning=archive comment
2016-07-01 19:29:56 +01:00
Arkadiy Paronyan
24e73f3aec Merge pull request #1497 from ethcore/clone-work
Optionally clone block behind work-package
2016-06-30 15:50:27 +02:00
Gav Wood
6ae467252c Fix no colour on windows. (#1498) 2016-06-30 15:49:00 +02:00
Gav Wood
9c58ebf2d2 Merge branch 'master' into clone-work 2016-06-30 13:16:48 +02:00
Gav Wood
9c07e5c355 Optionally clone block behind work-package. 2016-06-30 12:56:58 +02:00
Gav Wood
93a89049ed More colour! 2016-06-30 08:20:34 +02:00
Gav Wood
92edf7f511 Safe coloured logging. 2016-06-30 08:20:34 +02:00
arkpar
b3f37f3cb4 HTTP work notifier 2016-06-29 20:07:21 +02:00
Gav Wood
e24f9c9936 Add CLI option and route to MinerOptions. 2016-06-29 20:06:03 +02:00
Gav Wood
5d1ff3d7ba Introduce options for fine-grained management of work queue. (#1484)
* Introduce options for fine-grained management of work queue.

- Minimum reseal period between non-mandatory (transaction) reseals.
- Maximum historical cached block size.

Defaults changed to reflect real-world scenarios (2s, 20 blocks).

* Fix test bug.

* 50 -> 20.
2016-06-29 16:26:19 +02:00
Gav Wood
e3214c63c6 Rearrange fork CLI options. (#1476)
* Rearrange fork CLI options.

* Fixed compilation
2016-06-29 09:28:56 +02:00
Gav Wood
599a6104b7 Minor renaming. 2016-06-28 10:40:35 +02:00
Gav Wood
31de739122 U256 instead of Option<U256>. Fix up tests. 2016-06-28 10:21:29 +02:00
Gav Wood
af935df553 Merge branch 'master' into miner-improvements 2016-06-28 10:02:33 +02:00
Gav Wood
ff788e4199 Fix another typo
[ci:skip]
2016-06-27 21:06:40 +02:00
Gav Wood
5919c660e5 Fix typo
[ci:skip]
2016-06-27 21:06:10 +02:00
Gav Wood
10aa32b0f5 Include RPC configurability for max tx gas limit.
Also Move the gas limit into the transaction queue from the miner.
2016-06-27 20:19:01 +02:00
Gav Wood
dc79e63db7 Update configuration.rs 2016-06-27 19:22:54 +02:00
Gav Wood
7b5eeb1dd7 Update cli.rs
[ci:skip]
2016-06-27 19:22:28 +02:00
Gav Wood
a102015ecf Fix doc test. 2016-06-27 19:16:26 +02:00
Gav Wood
2a51a30d41 Fix up the pending set stuff. 2016-06-27 19:06:54 +02:00
Gav Wood
1667808ecb More miner options.
- Optional limit for the amount of gas transactions may have;
- option to restruct transactions returned/queried to only those
which have been executed.
2016-06-27 18:27:06 +02:00
Gav Wood
6c1802e412 Allow configuration of when to reseal blocks. 2016-06-27 17:23:54 +02:00
Nikolay Volf
f9f25fd147 cli config 2016-06-27 14:25:50 +02:00
Nikolay Volf
2e5d5f12dd ethcore client config 2016-06-27 13:58:12 +02:00
Tomasz Drwięga
2bd0c5ebcb Unwrap or default 2016-06-26 22:48:09 +02:00
Tomasz Drwięga
6bbaced3cd Merge branch 'master' into miner-no-default
Conflicts:
	ethcore/src/miner/miner.rs
	parity/main.rs
2016-06-26 22:44:34 +02:00
Gav Wood
516b015325 Don't mine without --author (#1436)
Requires --author to be set before mining is allowed to happen.
2016-06-26 22:02:17 +02:00
Gav Wood
2574d000a3 Revert the rescuedao extradata. 2016-06-25 14:35:43 +02:00
Arkadiy Paronyan
313d9048bf Merge pull request #1417 from ethcore/ui
Signer enabled by default for UI
2016-06-24 16:31:14 +02:00
Arkadiy Paronyan
29e2ba91a7 Merge pull request #1415 from ethcore/removebadpruningoptions
Remove experimental pruning options.
2016-06-24 16:16:48 +02:00
Gav Wood
bf11fb6633 Fix up selection. 2016-06-24 16:12:15 +02:00
arkpar
3e7edb2665 More cases 2016-06-24 14:29:15 +02:00
arkpar
568dc90769 Signer enabled by default for UI 2016-06-24 14:20:39 +02:00
Arkadiy Paronyan
b9649c0e78 Merge pull request #1414 from ethcore/uifix
Fixing interface and port for parity ui
2016-06-24 14:08:06 +02:00
Arkadiy Paronyan
4e0d6f735a Merge pull request #1405 from ethcore/sfedgecase
Configurable gas limit cap.
2016-06-24 13:36:40 +02:00
Gav Wood
44d6e1f443 Remove experimental pruning options. 2016-06-24 13:32:43 +02:00
Tomasz Drwięga
653a368783 Changing macos impl 2016-06-24 12:30:54 +02:00
Tomasz Drwięga
566bb030ec Fixing detecting if dapps are off 2016-06-24 12:21:21 +02:00
Tomasz Drwięga
23732fa516 Fixing interface and port for parity ui 2016-06-24 12:10:36 +02:00
Tomasz Drwięga
6edb981bfa Merge branch 'master' into miner-no-default
Conflicts:
	sync/src/lib.rs
2016-06-23 21:18:43 +02:00
Arkadiy Paronyan
416781a8d4 Tweaked cli options (#1407) 2016-06-23 18:57:42 +02:00
Gav Wood
bca9e1f31a Merge branch 'master' into sfedgecase 2016-06-23 14:43:42 +02:00
Gav Wood
8fcec20398 Gas limit ceiling option. 2016-06-23 14:29:16 +02:00
Tomasz Drwięga
5bf906625b Fixing warnings 2016-06-23 12:19:38 +02:00
Robert Habermeier
9ac30ad409 Merge pull request #1400 from ethcore/ipc-rpc-api-fix
rpc api by default for ipc
2016-06-23 10:32:25 +02:00
Gav Wood
8a867262ad Build fix. 2016-06-23 02:42:56 +02:00
Tomasz Drwięga
9a1e1b7c89 Signer with Unlocked Account (#1398) 2016-06-22 21:32:26 +02:00
Gav Wood
e346cbc7f9 Make --signer default. (#1392) 2016-06-22 21:32:17 +02:00
NikVolf
cc7038383a rpc api by default for ipc 2016-06-22 20:51:36 +03:00
debris
927ffa7e9c Merge branch 'master' into presale_wallet 2016-06-22 16:14:02 +02:00
Robert Habermeier
f947a9cb71 Optional gas price in transactions come from statistics (#1388)
* use gas price statistics for default transaction gas price

* create new signing queue client properly

* replace one more usage of sensible_gas_price

* fill_optional_fields as a free function

* keep test client alive
2016-06-22 15:55:07 +02:00
Gav Wood
353b9e91e6 Update SF to latest spec (#1386)
* Introduce whitelist for softfork

* Use extradata for fork id.

* Fix condition.
2016-06-22 15:37:25 +02:00
Arkadiy Paronyan
7c94b1495e Merge pull request #1329 from ethcore/softforktrigger
Install trigger for DAO-rescue soft-fork.
2016-06-21 22:25:24 +02:00
debris
bbe5cd001a presale wallet cli for parity 2016-06-21 17:50:22 +02:00
arkpar
3aaf938add Fixed build 2016-06-21 15:24:17 +02:00
Tomasz Drwięga
a8bc86151e Merge branch 'master' into txcount-rpc
Conflicts:
	rpc/src/v1/tests/mocked/ethcore.rs
2016-06-21 15:13:41 +02:00
Tomasz Drwięga
7cfb9a2b0b RPC for number of unconfirmed transactions 2016-06-21 14:57:35 +02:00
Robert Habermeier
951512f9c9 Reserved peers rpc API (#1360)
* reserved peers: lock them, use a hashset, and provide to networkcontext

* adding and removing reserved peer service API

* add NonReservedPeerMode, and setters in host

* setting non reserved mode, restriction accepted connections

* implement RPC apis

* fix deadlock

* fix rpc tests
2016-06-21 13:56:33 +02:00
Gav Wood
70db48961a Fix up flag struct. 2016-06-21 13:18:07 +02:00
Gav Wood
d2057a3f72 Make names slightly less contentious. 2016-06-21 11:30:30 +02:00
debris
7aa73f300a fixed migration of empty pruning dir 2016-06-20 22:35:59 +02:00
Arkadiy Paronyan
855ae91c4c Merge pull request #1354 from ethcore/warnings-fix
Fixing clippy warnings
2016-06-20 21:21:51 +02:00
Tomasz Drwięga
beedbd5126 Merge pull request #1356 from ethcore/clean_parity_start
removed unnecessary logs
2016-06-20 21:15:32 +02:00
Arkadiy Paronyan
5f7bdc028d Merge pull request #1350 from ethcore/revert-1349-revert-1347-reserved-peers
Reopen "reserved peers and reserved-only flag"
2016-06-20 17:29:39 +02:00
Arkadiy Paronyan
8b845e56da Merge pull request #1348 from ethcore/db-cache-size
Configurable rocksdb cache size
2016-06-20 17:29:18 +02:00
debris
7b9db37d84 removed unnecessary logs 2016-06-20 16:29:04 +02:00
Tomasz Drwięga
da7b30628b Fixing warnings 2016-06-20 15:20:55 +02:00
Robert Habermeier
7a6fa97d98 Revert "Revert "Reserved peers, reserved-only flag"" 2016-06-20 14:13:33 +02:00
Robert Habermeier
3d3041d418 Revert "Reserved peers, reserved-only flag" 2016-06-20 14:09:41 +02:00
Marek Kotewicz
a6713467a7 Merge pull request #1347 from rphmeier/reserved-peers
Reserved peers, reserved-only flag
2016-06-20 14:03:47 +02:00
Nikolay Volf
deb20c6249 fix docopt 2016-06-20 14:02:09 +03:00
Arkadiy Paronyan
a4b35180d1 Merge pull request #1334 from ethcore/givetoken
Provide a signer UI token by default.
2016-06-20 12:53:42 +02:00
Robert Habermeier
8d61c0298c indentation fix
[ci skip]
2016-06-20 12:48:00 +02:00
Nikolay Volf
7e452ab2e0 configurable cache size 2016-06-20 13:42:04 +03:00
Robert Habermeier
06a3557e3e reserved_only CLI flag 2016-06-20 12:17:06 +02:00
Tomasz Drwięga
a2f24a0083 Removing Default from Miner 2016-06-20 10:28:38 +02:00
arkpar
4b3f23f0ac Fixed network service dispose 2016-06-20 01:16:15 +02:00
Gav Wood
3ee3171b8c Merge branch 'master' into softforktrigger 2016-06-20 00:37:40 +02:00
Marek Kotewicz
6b074e8fb2 secret store separated from util (#1304)
* bump rust-crypto

* initial version of account provider utilizing secret store

* update lazy_static to latest version

* AccountProvider accounts method

* new AccountProvider tests in progress

* basic tests for new AccountProvider

* ethcore compiles with new account provider and secret store

* ethcore-rpc build now compiling with new AccountProvider

* most rpc tests passing with new accounts_provider

* fixed basic_authority tests

* fixed eth_transaction_count rpc test

* fixed mocked/eth.rs tests

* fixed personal tests

* fixed personal signer rpc tests

* removed warnings

* parity compiling fine with new sstore

* fixed import direction

* do not unlock temporarily when we have the password

* removed TODO in account import

* display warning on auto account import failure

* fixed compiling of ethstore on windows

* ethstore as a part of parity repo

* added ethkey
2016-06-20 00:10:34 +02:00
Robert Habermeier
ab4561b5bc fix compilation errors 2016-06-19 21:34:02 +02:00
Robert Habermeier
a4dacca262 CLI option and network configuration 2016-06-19 15:59:12 +02:00
Gav Wood
08522eec37 --geth prevent getTransactionReceipt from using pending. (#1325)
This mimics the fucntionality of Geth and the current unratified
JSONRPC spec (but not the functionality of eth and the ratified
spec).
2016-06-19 14:51:51 +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
7430cf72e2 Minor typo. 2016-06-19 12:29:39 +02:00
Gav Wood
46d588dcae CLI option and colour. 2016-06-19 12:28:24 +02:00
Gav Wood
d416e5d9bc Merge branch 'master' into renamefield 2016-06-18 15:05:43 +02:00
Gav Wood
c9f8eff92d Change CLI default for gas floor target. 2016-06-18 14:59:52 +02:00
Tomasz Drwięga
5e1e3ce857 Filling-in optional fields of TransactionRequest... (#1305)
* More meaningful errors when sending transaction

* Fixing returned value

* Consolidating all RPC error codes

* Fixed loosing peers on incoming connections. (#1293)

* Deactivate peer if it has no new data

* Fixed node table timer registration

* Fixed handshake timeout expiration

* Extra trace

* Fixed session count calculation

* Only deactivate incapable peers in ChainHead state

* Timer registration is not needed

* x64 path

* firewall rules

* Fix read-ahead bug.

Re-ahead 8 bytes rather than 3 to ensure large blocks import fine.

* Refactor to use a const.

* Update README.md

* Gas price statistics. (#1291)

* Gas price statistics.

Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.

Closes #1265

* Fix a bug in eth_gasPrice

* Fix tests.

* Revert minor alteration.

* Tests for gas_price_statistics.

- Tests;
- Additional infrastructure for generating test blocks with
transactions.

* Key load avoid warning (#1303)

* avoid warning with key

* fix intendations

* more intendation fix

* ok() instead of expect()

* Filling-in optional fields of TransactionRequest.

* Adding reference to miner
2016-06-18 14:55:46 +02:00
Tomasz Drwięga
e957565144 Disabling ethcore_set* APIs by default (+ Status page update) (#1315)
* More meaningful errors when sending transaction

* Fixing returned value

* Consolidating all RPC error codes

* Fixed loosing peers on incoming connections. (#1293)

* Deactivate peer if it has no new data

* Fixed node table timer registration

* Fixed handshake timeout expiration

* Extra trace

* Fixed session count calculation

* Only deactivate incapable peers in ChainHead state

* Timer registration is not needed

* x64 path

* firewall rules

* Fix read-ahead bug.

Re-ahead 8 bytes rather than 3 to ensure large blocks import fine.

* Refactor to use a const.

* Update README.md

* Gas price statistics. (#1291)

* Gas price statistics.

Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.

Closes #1265

* Fix a bug in eth_gasPrice

* Fix tests.

* Revert minor alteration.

* Tests for gas_price_statistics.

- Tests;
- Additional infrastructure for generating test blocks with
transactions.

* Key load avoid warning (#1303)

* avoid warning with key

* fix intendations

* more intendation fix

* ok() instead of expect()

* Appveyor config for windows build+installer (#1302)

* appveyor

* proper dist name

* quote

* win-build config

* proper build section

* tests in release

* plugin dir

* cache binaries

* quotes

* escaped quotes

* forces user dir

* fixes

* syntax

* proper cahce dir

* quotes?

* root nsis instead of bin

* submodules init

* artifact path fix

* no submodule

* raw link here

* another way to force cargo cache

* include vc++ 2015 redist

* fix name of the dist

* ETHCORE -> Ethcore

* Disabling ethcore_set* APIs (+ Status page)
2016-06-18 12:33:45 +02:00
Arkadiy Paronyan
591fa9625d Merge pull request #1313 from ethcore/net
Network start/stop
2016-06-18 11:04:24 +02:00
Gav Wood
335bce85e8 Gas price statistics. (#1291)
* Gas price statistics.

Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.

Closes #1265

* Fix a bug in eth_gasPrice

* Fix tests.

* Revert minor alteration.

* Tests for gas_price_statistics.

- Tests;
- Additional infrastructure for generating test blocks with
transactions.
2016-06-18 10:52:50 +02:00
Gav Wood
d6701065ea Refactor to use a const. 2016-06-18 10:52:50 +02:00
Gav Wood
da058d0e86 Fix read-ahead bug.
Re-ahead 8 bytes rather than 3 to ensure large blocks import fine.
2016-06-18 10:52:50 +02:00
arkpar
c340d8a34f Tests 2016-06-17 18:26:54 +02:00
arkpar
b38488dd07 Network shutdown 2016-06-17 12:58:28 +02:00
Gav Wood
88b03580ff Gas price statistics. (#1291)
* Gas price statistics.

Affects eth_gasPrice.
Added ethcore_gasPriceStatistics.

Closes #1265

* Fix a bug in eth_gasPrice

* Fix tests.

* Revert minor alteration.

* Tests for gas_price_statistics.

- Tests;
- Additional infrastructure for generating test blocks with
transactions.
2016-06-16 12:44:08 +02:00
Gav Wood
80e56cb8d7 Refactor to use a const. 2016-06-15 23:12:43 +02:00
Gav Wood
9603597da7 Fix read-ahead bug.
Re-ahead 8 bytes rather than 3 to ensure large blocks import fine.
2016-06-15 21:31:19 +02:00
Arkadiy Paronyan
71131c41e5 Security audit issues fixed (#1279)
* Restrict network key file permissions

* Check for overflow in str to bigint conversion

* RLP decoder overflow check
2016-06-15 00:58:08 +02:00
Tomasz Drwięga
b562480173 Fixing origin/host validation (#1273) 2016-06-15 00:57:49 +02:00
Nikolay Volf
91bb6c5d43 final fix 2016-06-14 18:26:40 +03:00