Commit Graph

405 Commits

Author SHA1 Message Date
Felix Lange 67effb94b6 cmd/geth, cmd/utils: make chain importing interruptible
Interrupting import with Ctrl-C could cause database corruption
because the signal wasn't handled. utils.ImportChain now checks
for a queued interrupt on every batch.
2015-05-28 01:09:26 +02:00
Felix Lange 705beb4c25 cmd/utils: print errors only once if stdout and stderr are the same file 2015-05-28 01:09:26 +02:00
Felix Lange 74706a0f02 cmd/geth, cmd/utils: rename utils.Get* -> utils.Make*
The renaming should make it clearer that these functions create a new
instance for every call. @obscuren suggested this renaming a while ago.
2015-05-28 01:09:26 +02:00
Felix Lange 3b9808f23c cmd/geth, cmd/utils: don't use Ethereum for import, export and upgradedb
The blockchain commands don't need the full stack. With this change,
p2p, miner, downloader, etc are no longer started for blockchain
operations.
2015-05-28 01:09:26 +02:00
Péter Szilágyi e1a0ee8fc5 cmd/geth, cmd/utils, eth, p2p: pass and honor a no discovery flag 2015-05-26 19:07:24 +03:00
zelig bed80133e0 automatic DAG pregeneration for smooth epoch transitions
- backend: AutoDAG bool flag passed from cli/eth.Config to ethereum, autoDAG loop started if true
- backend: autoDAG loop start/stop, remove previous DAG
- cli: AutoDAG bool flag, off by default, but automatically ON if mining
- admin jsre: add startAutoDAG stopAutoDAG and makeDAG in miner section
- switch on/off DAG autogeneration when miner started/stopped on console
2015-05-21 15:53:42 +01:00
zelig 22b694ee1e solc now in ethereum, fixes solc path setting; setSolc() didnt work 2015-05-20 02:47:13 +01:00
Jeffrey Wilcke bd0c0a633b Merge pull request #1022 from obscuren/parallel_nonce_checks
Parallelise nonce checks
2015-05-18 11:13:53 -07:00
Taylor Gerring 0864f1fc8e Remove unused confirm() method 2015-05-18 12:25:33 -05:00
Taylor Gerring f14feea436 Refactor user prompts into utils 2015-05-18 12:24:30 -05:00
obscuren c67424ecc8 core: parallelise nonce checking when processing blocks
ChainManager now uses a parallel approach to block processing where all
nonces are checked seperatly from the block processing process. This
speeds up the process by about 3 times on my i7
2015-05-18 13:59:22 +02:00
obscuren 7ea76fcf99 core, cmd/geth, cmd/mist: cleanup. bump version 0.9.21 2015-05-16 00:26:36 +02:00
Felix Lange 5f706cd7f5 cmd/utils: print messages from package log through glog
Some of the dependencies use package log. This change ensures that the
log output looks uniform and respects glog flags.
2015-05-14 12:56:37 +02:00
Gustav Simonsson e389585f1f Change default keystore dir 2015-05-12 18:33:04 +02:00
Bas van Kervel 95773b9673 removed redundant newlines in import block 2015-05-12 15:20:53 +02:00
Bas van Kervel b79dd188d9 replaced several path.* with filepath.* which is platform independent 2015-05-12 14:24:11 +02:00
obscuren cb1fa523e4 cmd/geth, cmd/mist, eth, flags: renamed loglevel to verbosity 2015-05-09 12:00:51 +02:00
Felix Lange e45d9bb29d cmd/utils: bump default maxpeers to 25
This should improve ethereum block propagation times since
we're not not broadcasting blocks to 100% of peers.
2015-05-08 16:09:55 +02:00
Jeffrey Wilcke 23454dcfcb Merge pull request #840 from karalabe/throttled-dialing
p2p: throttled handshakes
2015-05-08 06:53:40 -07:00
Péter Szilágyi 4d5a719f25 cmd, eth, p2p: introduce pending peer cli arg, add tests 2015-05-07 15:30:56 +03:00
zelig 009b221692 solidity compiler and contract metadocs integration
* common/compiler: solidity compiler + tests
* rpc: eth_compilers, eth_compileSolidity + tests
* fix natspec test using keystore API, notice exp dynamically changes addr, cleanup
* resolver implements registrars and needs to create reg contract (temp)
* xeth: solidity compiler. expose getter Solc() and paths setter SetSolc(solcPath)
* ethereumApi: implement compiler related RPC calls using XEth - json struct tests
* admin: make use of XEth.SetSolc to allow runtime setting of compiler paths
* cli: command line flags solc to set custom solc bin path
* js admin api with new features debug and contractInfo modules
* wiki is the doc https://github.com/ethereum/go-ethereum/wiki/Contracts-and-Transactions
2015-05-07 12:58:21 +02:00
Gustav Simonsson b1cc9cdc74 Integrate new ethash API and change geth makedag cmd 2015-05-05 08:24:15 +02:00
obscuren 735b029db9 core: return the index of the block that failed when inserting a chain 2015-04-29 14:00:24 +02:00
Jeffrey Wilcke 8d09f95bc7 Merge pull request #805 from obscuren/download_improvements
eth, eth/downloader: improve downloader and remove asynchronousness
2015-04-24 15:56:17 -07:00
obscuren 405720b218 xeth, core, cmd/utils: Transaction can not be over block gas limit
Transactions will be invalidated when the tx.gas_limit > block.gas_limit
2015-04-24 17:48:13 +02:00
zelig c5e9a0a71c cli: correct bootnodes flag usage help line 2015-04-24 12:46:53 +01:00
zelig 6512b23b98 cli: fatal error if rpc could not be started 2015-04-24 12:45:11 +01:00
zelig 7b2f25b578 cli: clean up flag descriptions, usage docs, account list uses primary and indexes, add help line to account subcnd usage 2015-04-24 12:45:11 +01:00
Jeffrey Wilcke 3d7c1b8194 Merge pull request #755 from karalabe/command-flags-cleanup
cmd/geth, cmd/utils: add cli flags for pprof and whisper
2015-04-20 09:17:04 -07:00
Péter Szilágyi 3b008723db cmd/geth, cmd/utils: invert --pprof once more 2015-04-20 19:14:49 +03:00
Péter Szilágyi c8e2b3710c cmd/geth, cmd/utils: use pprof disable flag, start globally 2015-04-20 18:59:41 +03:00
Péter Szilágyi 8830403acf cmd/geth, cmd/utils: add cli flags for pprof and whisper. 2015-04-20 18:45:37 +03:00
zsfelfoldi bb793c829f fixed incomplete merge 2015-04-19 20:57:49 +01:00
zsfelfoldi c4b7d4d3f7 NatSpec cli option, resolver tests passing 2015-04-19 20:57:49 +01:00
obscuren 8f3a7e41de Merge branch 'rlp-size-validation' of https://github.com/fjl/go-ethereum into fjl-rlp-size-validation
Conflicts:
	eth/protocol.go
2015-04-19 17:07:40 +02:00
obscuren 03b4cf74a2 geth: added identity flag which allows to set a custom node name 2015-04-18 23:53:30 +02:00
Felix Lange 56a48101dc cmd/rlpdump, cmd/utils, eth, p2p, whisper: use rlp input limit 2015-04-17 14:45:09 +02:00
Bas van Kervel 49a513bdeb Added blockchain DB versioning support, closes #650 2015-04-13 10:13:52 +02:00
Jeffrey Wilcke 4de1e1609a Merge pull request #682 from bas-vk/issue_567
bugfix as a result of PR 671
2015-04-09 23:42:17 +02:00
Bas van Kervel dc2b9fd458 bugfix as a result of PR 671 2015-04-09 20:06:27 +02:00
Jeffrey Wilcke 79cc3cc98e Merge pull request #671 from bas-vk/issue_567
Add path expansion support for command line arguments, closes 567
2015-04-09 11:31:04 +02:00
Bas van Kervel 6da5b2fc5f reformat code with goimports 2015-04-09 10:26:26 +02:00
obscuren 6e2f78ebdd Default log to stderr 2015-04-08 22:18:16 +02:00
Bas van Kervel 5304f43067 Add path expansion support for command line arguments, closes 567 2015-04-08 15:43:55 +02:00
obscuren 688d118c7e Updated logging 2015-04-07 14:57:04 +02:00
obscuren a0e44e3281 basic glog 2015-04-04 12:40:11 +02:00
obscuren 36452afd4e glog wip 2015-04-03 17:09:11 +02:00
Taylor Gerring 04a7c4ae1e Abstract http into rpc package
New RpcConfig object to pass growing config
2015-03-29 21:26:47 +02:00
Taylor Gerring 24fc1f073d Add flag to control CORS header #394
* Disabled on CLI
* http://localhost on Mist
2015-03-29 21:21:14 +02:00
obscuren eb102bf4bb Etherbase => etherbase 2015-03-27 12:14:00 +01:00
Jeffrey Wilcke 0b4b2b81f9 Merge pull request #580 from ethersphere/frontier/cli-key
settable etherbase
2015-03-27 12:12:05 +01:00
Taylor Gerring e29396b691 Use ExtraDB for storage. Fixes #577 2015-03-27 09:36:18 +01:00
zelig b375bbee5f settable etherbase
- etherbase flag for block reward destination
- coinbase => etherbase
- CLI- eth Config -> eth, xeth -> RPC / Miner
- use primary instead of coinbase as the unlock magic wildcard
- accounts: firstAddr/Coinbase -> Primary
2015-03-26 21:52:22 +00:00
zelig 7577d12614 max paranoia mode to UNsupport unencrypted keys entirely
- remove account export functionality from CLI
- remove accountExport method,
- remove unencrypted-keys flag from everywhere
- improve documentation
2015-03-26 19:00:18 +00:00
zelig 34d5a6c156 cli: help formatting 2015-03-26 19:00:18 +00:00
zelig c4ea921876 import/export accounts
- cli: add passwordfile flag
- cli: change unlock flag only takes account
- cli: with unlock you are prompted for password or use passfile with password flag
- cli: unlockAccount used in normal client start (run) and accountExport
- cli: getPassword used in accountCreate and accountImport
- accounts: Manager.Import, Manager.Export
- crypto: SaveECDSA (to complement LoadECDSA) to save to file
- crypto: NewKeyFromECDSA added (used in accountImport and New = generated constructor)
2015-03-26 19:00:18 +00:00
obscuren 88b9bc40d7 Godep issue? 2015-03-26 01:03:03 +01:00
Gustav Simonsson 33c5186fd0 In blocktest cmd, disable network and add RPC flag 2015-03-23 16:32:20 +01:00
zelig 78cff9e3a4 independent flag for json structured logging
- logjson flag remove logformat flag
- passed to eth Config
- logsystem not a field of Ethereum
- LogSystem does not need to expose GetLogLevel/SetLogLevel
- message struct just implements more generic LogMsg interface
- LogMsg is a fmt.Stringer with Level()
- jsonMsg ([]byte) implements LogMsg
- remove "raw" systems
- move level logic inside StdLogSystem
- logsystems only print their kind of msg: jsonLogSystem prints jsonMsg, StdLogSystem prints stdMsg
2015-03-22 02:16:54 +00:00
obscuren f0bb136099 Merge branch 'develop' into conversion 2015-03-18 18:42:01 +01:00
Felix Lange 064279c0ec cmd/ethereum, cmd/utils: partial fix for chain import 2015-03-18 14:04:44 +01:00
Felix Lange d15f90645d Merge remote-tracking branch 'ethereum/conversion' into conversion 2015-03-18 13:39:01 +01:00
Felix Lange b5b83db450 core: use package rlp to encode blocks
This also changes the chain export format so there is no
enclosing list around the blocks, which enables streaming export.
2015-03-18 13:36:48 +01:00
zelig b6aa88c099 private network support
- protocolversion, networkid global int flags to cli and mist
- fix bug with protocolversion check using wrong db
- log protocolversion & networkid in backend
2015-03-18 14:44:58 +07:00
zelig 5e7702fd05 Merge remote-tracking branch 'upstream/develop' into frontier/js
Conflicts:
	cmd/ethereum/js.go
	javascript/types.go
2015-03-16 22:46:29 +07:00
obscuren b523441361 Moved ethutil => common 2015-03-16 11:27:38 +01:00
zelig 7279a485c2 CLI:
- js subcommand for vm
- console for Frontier console interactive REPL
- jspath in cli
- integrate jeth apiBindings
2015-03-15 13:31:40 +07:00
obscuren d9966d6158 merge 2015-03-14 23:37:21 +01:00
Felix Lange 58d9d98daf cmd/utils: GetEthereum -> MakeEthConfig
This allows changing the config before starting Ethereum
with it.
2015-03-13 18:41:09 +01:00
Taylor Gerring 485e37e889 Move MakeName to ethutil 2015-03-11 14:29:07 -05:00
obscuren 629f4b1d3c merge 2015-03-11 17:46:58 +01:00
obscuren 6b63759ded Reverted global 2015-03-11 16:33:04 +01:00
Felix Lange 99bc44cf52 cmd/ethereum: add a flag to switch to unencrytped keystore
This is mostly for automated tests. The tests can use the following
commands to start the node:

    ethereum --unencrypted-keys account new
    ...
    ethereum --unencrypted-keys
2015-03-11 13:58:01 +01:00
obscuren 7e0ccc9de5 Merge branch 'develop' into rpcfrontier
Conflicts:
	rpc/api.go
	rpc/args.go
2015-03-11 01:08:42 +01:00
Felix Lange 269cfbb8ac Merge branch origin/develop into accounts-integration
Conflicts:
	cmd/blocktest/main.go
	cmd/mist/debugger.go
	cmd/utils/cmd.go
2015-03-10 17:14:31 +01:00
Felix Lange 972e2c1e31 cmd/utils: improve CLI help templates
Help for a specific command now shows available subcommands.
2015-03-10 16:44:48 +01:00
Felix Lange 0bb7377ebe cmd/ethereum: show more helpful message if no accounts exist 2015-03-10 15:44:05 +01:00
Felix Lange c3f94a4341 cmd/utils: remove extra space in fatal error message 2015-03-10 15:42:25 +01:00
Jeffrey Wilcke 0542df941f Merge pull request #449 from Gustav-Simonsson/add_blockchain_tests2
Add empty total difficulty to test blocks and clean up stopping the node
2015-03-10 12:07:34 +01:00
Jeffrey Wilcke c9b6d268b4 Merge pull request #438 from ethersphere/poc9/cli
Poc9/cli (exportchain)
2015-03-10 11:24:47 +01:00
Felix Lange 487f68ec48 accounts: add {Timed,}Unlock, remove SignLocked 2015-03-10 00:19:01 +01:00
Felix Lange 9bf513e993 Merge ethereum/poc-9 into accounts-integration
Conflicts:
	cmd/utils/cmd.go
	cmd/utils/flags.go
	core/manager.go
	eth/backend.go
	rpc/http/server.go
	xeth/xeth.go
2015-03-09 23:25:46 +01:00
Felix Lange cd51860bf0 cmd/utils: delete InitConfig, KeyTasks 2015-03-09 23:08:47 +01:00
Felix Lange a11f1d6a7e rpc: add dataDir parameter and JSON-RPC handler 2015-03-09 23:08:46 +01:00
Felix Lange 73d1ebe244 cmd/utils: add NewApp 2015-03-09 23:08:46 +01:00
Gustav Simonsson 27c42ea934 Add empty total difficulty to test blocks and clean up stopping the node 2015-03-09 18:03:35 +01:00
obscuren 20741a96ac Updated xeth instances to take extra param for ui.Interface
Please be aware that if any of the instances on xeth.frontend are called
the program will crash due to the default, temporarily, frontend
interface.
2015-03-09 13:50:05 +01:00
zelig 51eed7964e add export blockchain subcommand, remove BlockDo 2015-03-08 22:44:48 +07:00
Felix Lange fb53a9362e accounts: AccountManager -> Manager 2015-03-08 01:58:35 +01:00
Felix Lange a2810c06d7 cmd/ethereum: add account commands 2015-03-07 12:39:52 +01:00
obscuren cd856cb213 Separated block db from state db. Partial fix for #416 2015-03-06 18:26:16 +01:00
obscuren ed84b58af5 Debug option for VM & command line flag 2015-03-06 16:58:52 +01:00
Felix Lange bae7e93a9c cmd/ethereum: improve command line interface
The ethereum command line interface is now structured using subcommands.
These separate the different tasks it can perform.

Almost all flag names are backwards compatible.

The key tasks have not been ported to subcommands since they will be
replaced by the new accounts infrastructure very soon.
2015-03-06 03:57:13 +01:00
obscuren bb152612e0 Merge branch 'develop' into poc-9
Conflicts:
	cmd/utils/cmd.go
2015-03-03 20:34:48 +01:00
obscuren 40ff3cac39 merge 2015-03-03 17:56:36 +01:00
obscuren 313fe3861b fixed pow stuff 2015-03-03 17:55:23 +01:00
Taylor Gerring 4cb0bfe939 Merge branch 'develop' of github.com:ethereum/go-ethereum into removews
Conflicts:
	cmd/ethereum/flags.go
	cmd/mist/flags.go
2015-03-02 07:06:08 -06:00
Taylor Gerring cfe0370280 Remove Websockets RPC transport 2015-03-01 16:19:06 +01:00
Taylor Gerring f6e821fd33 Add flag to set RPC port 2015-02-28 01:00:42 +01:00
Taylor Gerring 739b7cc2ac Cleanup imports 2015-02-26 02:36:06 +01:00
Taylor Gerring d5aed82b11 DRY DefaultAssetPath() 2015-02-26 02:32:27 +01:00
Taylor Gerring 8eeab7ea3f Update osext import path 2015-02-26 02:24:20 +01:00
obscuren 483d96a89d Added eth_logs & fixed issue with manual log filtering
* Implemented `eth_logs`
* Fixed issue with `filter.Find()` where logs were appended to an
  incorrect, non-returned slice resulting in no logs found
2015-02-22 13:12:01 +01:00
Maran 5aff8bfb59 Implement command line argument to set the amount of agents created by the miner
Defaults to the amount of cores available on the CPU
2015-02-19 10:38:36 +01:00
Felix Lange 028775a086 cmd/ethereum, cmd/mist: add flag for discovery bootstrap nodes 2015-02-07 00:52:49 +01:00
Felix Lange 56f777b2fc cmd/ethereum, cmd/mist, core, eth, javascript, xeth: fixes for new p2p API 2015-02-06 00:03:59 +01:00
obscuren 2f30a27b2b Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop 2015-02-05 12:22:44 -08:00
Jeffrey Wilcke 99a1551b20 Merge pull request #287 from ethereum/system-testing
Seednode CLI param updates
2015-02-05 11:09:13 -08:00
Taylor Gerring 07590196a5 Merge branch 'develop' of github.com:tgerring/go-ethereum into develop 2015-02-03 17:18:20 -06:00
Taylor Gerring 1f4ed49b4c Move hardcoded seed node address to app flag
Replaces functionality `-seed=true` with `-seed="ip:port"`
2015-02-02 13:04:00 -06:00
Taylor Gerring b2b42f759c Update signature for rpc websockets 2015-02-02 07:37:44 -06:00
obscuren d52878c744 Removed some VMEnv & Added VmType() to vm.Environment 2015-02-01 15:29:57 +01:00
Taylor Gerring 726852e3d3 Remove old websocket implementation 2015-01-28 21:39:49 -06:00
obscuren 872b249711 further cleaned up xeth interface 2015-01-28 18:36:23 +01:00
Taylor Gerring dd3f38fe5b Rename transport to ws
Cleanup object naming for clarity
2015-01-27 14:16:34 -06:00
Taylor Gerring 5f50fe7a4a Update CLI to use new Websocket RPC
Use “wsport” flag to change default port
2015-01-27 12:29:08 -06:00
Taylor Gerring d790229a33 Move HTTP transport to sub package of RPC 2015-01-27 12:29:07 -06:00
Taylor Gerring 0c77a96249 Move websockets out of cmd/util 2015-01-20 13:40:24 -06:00
obscuren 7e6b72cb5c removed accidental qt dep 2015-01-10 18:09:57 +01:00
obscuren e3da85faed Implemented filter for ws + fixes
* proper 0xhex
* filters fixed
* start of filter manager
* accounts for ws. Closes #246
2015-01-10 00:51:56 +01:00
obscuren fed3e6a808 Refactored ethutil.Config.Db out 2015-01-07 13:17:48 +01:00
obscuren 117f66e823 Added license headers 2015-01-06 12:13:57 +01:00
obscuren a26aecdfdb Updated WS API. Fixes #219. Closes #220 2015-01-06 11:44:22 +01:00
obscuren f16810c48e added shh back in 2015-01-05 17:12:52 +01:00
obscuren c1dee15144 BlockManager => BlockProcessor 2015-01-05 00:18:44 +01:00
obscuren 09841b1c9b Cleaned up some of that util 2015-01-04 14:20:16 +01:00
obscuren ca1b2a1a91 Changed prev_hash to block_hash, state transition now uses vm env
* PREVHASH => BLOCKHASH( N )
* State transition object uses VMEnv as it's query interface
* Updated vm.Enviroment has GetHash( n ) for BLOCKHASH instruction
* Added GetHash to xeth, core, utils & test environments
2015-01-03 17:18:43 +01:00
obscuren 4dc7ee9087 Closure => Context 2015-01-02 16:14:12 +01:00
obscuren 804af9658a merge 2014-12-24 11:31:45 +01:00
obscuren 780abaec98 Switched to new trie 2014-12-23 18:35:36 +01:00
obscuren f468a9a0e2 Enable websockets for mist. Closes #218 2014-12-23 15:47:08 +01:00
obscuren 1054c155db Moved import to utils 2014-12-23 15:37:03 +01:00
obscuren 4cd79d8ddd Refactored block & Transaction
* Includes new rlp decoder
2014-12-23 13:48:44 +01:00
obscuren 6e24b1587d Merge branch 'develop' into poc8 2014-12-19 00:19:02 +01:00
obscuren 59ef6e3693 Cleaned up objects 2014-12-19 00:18:52 +01:00
zelig 72290f67fe resolve merge conflict hell 2014-12-14 20:57:29 +00:00
zelig 61940b2275 adapt cmd/cli to new backend
- new flag nat for nat support UPNP|PMP
- new flag pmp for PMP gateway IP
- add NatType to utils/cmd to get p2p.NAT from nat type string
- obsolete usepnp flag
- get rid of IsUpToDate and sleep in miner start
- ethereum constructor takes nat type, port, maxpeer
- add pubkey arg to client identity
2014-12-14 20:52:28 +00:00
zelig ae7c1e3e55 adapt to new backend
- eth p2p pkgs
- new Ethereum initialiser
- no caps param
- use nat type
- add NatType func to map nat type string to p2p.NAT
- add pubkey to client identity
2014-12-14 20:30:56 +00:00
zelig 50e1dcc43a import eth pkg 2014-12-14 20:30:56 +00:00
obscuren 085f604b27 Show newly created private key during startup. Closes #126 2014-12-04 17:09:47 +01:00
obscuren 3043b233ea Log is now interface 2014-12-04 12:35:23 +01:00
obscuren f298ffdbb8 Renamed State => StateDB 2014-12-04 11:40:20 +01:00
obscuren 9008b155d3 Renamed `chain` => `core` 2014-12-04 10:28:02 +01:00
obscuren 6d99c03d91 Updated environments according to the new interface set 2014-12-03 17:22:26 +01:00
obscuren 6095edac58 merge 2014-12-03 13:50:51 +01:00
obscuren f778922086 Set proper message value 2014-12-02 22:37:45 +01:00
obscuren a1b6a9ac29 Begin of moving objects to types package
* Block(s)
* Transaction(s)
2014-11-18 16:58:22 +01:00
obscuren 6c9e503eb8 Removed all implicit logging. Fixed gas issues and jump errors 2014-11-11 22:52:27 +01:00
obscuren 429dd2a100 Implemented new miner w/ ui interface for merged mining. Closes #177
* Miner has been rewritten
* Added new miner pane
* Added option for local txs
* Added option to read from MergeMining contract and list them for
  merged mining
2014-11-07 12:18:48 +01:00
obscuren f59a3b67f6 StateManager => BlockManager 2014-11-04 10:57:02 +01:00
obscuren 5af4ff985d ethminer => miner 2014-10-31 14:56:42 +01:00
obscuren 4914a78c8c ethwire => wire 2014-10-31 14:53:42 +01:00
obscuren af8f5f0b69 ethstate => state 2014-10-31 14:43:14 +01:00
obscuren 0ed1a8b50a ethpipe => xeth (eXtended ETHereum) 2014-10-31 14:30:08 +01:00
obscuren 8826e9694c Moved utils to cmd 2014-10-31 14:20:11 +01:00