Commit Graph

544 Commits

Author SHA1 Message Date
romanman 1f3a25f4f6 finalization process:
new block stateRoot calc
2014-06-06 20:04:13 +01:00
romanman 3380dff118 small defects from the last merge 2014-06-06 19:50:12 +01:00
romanman 9f70c014a1 preparing for state finalization 2014-06-06 15:16:44 +01:00
romanman 3f7891ff36 merge conflict 2014-06-06 15:10:07 +01:00
nicksavers 6ec5dd9d12 Calculate txTrieRoot from actual transactions in a block and move block header to separate class 2014-06-06 15:30:24 +02:00
romanman 72f7e18d7a The right way to encode [transactionsTrie] for block header 2014-06-06 04:23:36 +01:00
romanman b9d551d2fa VM impl:
+ SDIV, SMOD, MOD, SLT, SGT ops implemented and unittested
+ Gas calculation for memory & storage
2014-06-05 12:36:36 +03:00
romanman 517bb2cec1 Gas Ledger introduced
+ latest merge
+ some GUI adjustments
2014-06-05 06:49:19 +03:00
romanman 991d9770cb Merge branch 'master' of https://github.com/romanman/ethereumj 2014-06-05 06:37:16 +03:00
nicksavers d12e079b64 Continue from last block in DB 2014-06-05 01:05:05 +02:00
romanman 8677b77def balance subtraction bug , found in the movie :) 2014-06-04 16:12:57 +03:00
nicksavers 4868ecfc0e Remove array length check from DataWord and use better test 2014-06-04 07:57:31 +02:00
nicksavers de0f67ae3b Impl faster ADD 2014-06-03 23:35:53 +02:00
romanman e5e65b48d3 play button on contract submit draft integration 2014-06-03 20:52:48 +03:00
romanman 64cb2898aa tiny fix 2014-06-03 20:09:29 +03:00
romanman 2a3a548339 VM impl: SHA3 op implemented and unit tested 2014-06-03 20:07:10 +03:00
romanman da62dfd514 cancel nio noisy messages 2014-06-03 19:38:12 +03:00
romanman 9bec5d6885 VM impl, go on:
ADDRESS, BALANCE, ORIGIN, CALLER, CALLVALUE, CALLDATALOAD, CALLDATASIZE,
CALLDATACOPY, CODESIZE, CODECOPY implementation and unittest
2014-06-03 19:30:34 +03:00
romanman d348b552b3 Small fix for edge cases in HelloMessage 2014-06-03 12:35:11 +03:00
romanman dbc2bbc7f2 test fix 2014-06-03 09:28:14 +03:00
romanman ced9ec0543 MEMSIZE to MSIZE reformat 2014-06-03 09:15:45 +03:00
nicksavers fb01b3a177 Fix typo and remove some unused imports 2014-06-02 21:40:17 +02:00
romanman 926aa6f17f VM impl go on:
ADD, MULL,  SUB, DIV, EXP, MEMSIZE, STOP ops implemented and unit tested
2014-06-02 22:02:27 +03:00
romanman c44920edd2 ProgramPlayDialog draft GUI improved 2014-06-02 18:24:10 +03:00
romanman a49f8b5e5c A draft for ProgramPlayDialog 2014-06-02 18:00:24 +03:00
romanman 63e217e630 VM impl: MSTORE8, SSTORE, SLOAD, JUMP, JUMPI, PC ops implemented and unit tested 2014-06-02 14:56:01 +03:00
romanman b561a7890d VM impl: POP, DUP , MSTORE, MLOAD ops implemented & unit tested 2014-06-02 11:16:22 +03:00
romanman d8ebe45f38 VM impl: NET, LT, GT, EQ, NOT, BYTE ops implemented & unit tested 2014-06-01 22:43:02 +03:00
romanman 953acf417f VM impl: AND, OR, XOR ops implemented 2014-06-01 19:39:06 +03:00
romanman 79bc9bb28a Skeleton for VM implementation and PUSH_N logic 2014-06-01 19:06:54 +03:00
romanman 6726c8dcf9 SerpentCompiler: minor array compilation bug 2014-06-01 10:44:24 +03:00
romanman 13ae5387dd Serpent - basic array support introduced:
1. a = [1, 2, 3]
 2. b = a[0]
 3. a[1] = 90
2014-05-31 22:17:55 +03:00
romanman 24f2903ef4 Serpent editor add Ctrl + Shift + S for change saving file 2014-05-31 16:31:21 +03:00
romanman 90962d0db1 OpCode minor fixes:
1. new SGT, SLT ops
   2. LT operators order fix
2014-05-31 10:37:25 +03:00
romanman 4a98b7ccfa minor fixes 2014-05-31 08:38:30 +03:00
romanman 711e55203a closing db on exit 2014-05-31 00:42:23 +03:00
romanman e46f504f4c small fixes to the last merge 2014-05-31 00:16:01 +03:00
romanman 97c5b61860 BlockChain ordered fetch and some small fixes to the SerpentCompiler 2014-05-30 23:47:04 +03:00
nicksavers aadb7b0608 Upgrade to protocol 19 2014-05-30 22:37:47 +02:00
nicksavers 01ccfeb0fa Remove merge conflict in system.properties 2014-05-29 22:08:41 +02:00
nicksavers 1edf4ad278 Merge after merge 2014-05-29 22:06:14 +02:00
nicksavers 6b22137c05 Merge pushes from romanman/master 2014-05-29 21:52:18 +02:00
romanman bb9e0d1bee minor changes:
1. fixed un-toggle button on toolbar when by X window closed
2. introduced property for connection
2014-05-29 17:51:59 +03:00
romanman 0e62e5b58f Serpent editor to support save/load files 2014-05-29 16:24:37 +03:00
nicksavers af86249019 Initial usage of LevelDB - still needs lots of work 2014-05-29 11:30:54 +02:00
romanman 0be061fddf Redesign SerpentEditors controls
1. Introduced side vertical toolbar
2. 5  tool actions included (Open/Save file, Compile/Deploy/Call contract)
3. Convenient shortcuts ctrl + o, ctrl +s, ctrl + F9, ctrl + shift + F9, ctrl  + F8
2014-05-29 12:05:18 +03:00
romanman 2504cec497 Major change to Serpent compiler:
1. support for [init] [code] blocks
2. wrap the code before send with VM runnable header
3. GUI adjustments for new changes
2014-05-29 09:18:56 +03:00
romanman dc5cda4ddb Header for Contract VM runnable structure 2014-05-28 20:20:46 +03:00
romanman 71e185d9eb Fixing bug in RLP 2014-05-28 19:34:05 +03:00
romanman a175dc699f Adding new functions to the serpent grammar 2014-05-28 17:03:10 +03:00
nicksavers cb5d611b10 Various line/import cleanup and move AddressState to core-package 2014-05-28 15:57:26 +02:00
nicksavers e768d03ca1 Clean and update documentation Transaction class 2014-05-28 15:37:18 +02:00
nicksavers bcb934bed7 Fix warning for unchecked operation in TransactionExecutor 2014-05-28 15:01:17 +02:00
nicksavers b2b95b189b Add run script for linux 2014-05-28 14:39:44 +02:00
nicksavers aeca671328 Add version for maven-jar-plugin 2014-05-28 14:39:22 +02:00
nicksavers aa5b942f87 Format timestamp for Block details 2014-05-28 09:58:08 +02:00
romanman 2b25736cc8 [asm asm] block fixing bugs and setting color style 2014-05-28 09:11:24 +03:00
romanman 47bc05f4d7 Serpent compiler progress + bug fixing:
1. Serpent: added asm block and msg function.
2. Bug: in case of transaction timeout it wasn't canceled from the pending.
3. BlockChain table the option to copy value after mouse click
2014-05-27 23:30:44 +03:00
romanman 656733985e misc
1. PayoutDialog validation
2. Transaction execution after fail bug
2014-05-27 13:29:21 +03:00
romanman 2e2e7f128c Fix auto scroll in ConnectionConsole 2014-05-27 11:50:11 +03:00
romanman 3f0fea6a08 minor 2014-05-27 10:25:45 +03:00
romanman 7262f13181 Merge branch 'master' of https://github.com/nicksavers/ethereumj
Conflicts:
	src/main/java/org/ethereum/manager/MainData.java
2014-05-27 10:21:53 +03:00
romanman 51d3ed57e3 Packaging the application for production structure 2014-05-27 10:17:11 +03:00
nicksavers c94ff5bfa2 Clean up formatting of some classes 2014-05-26 23:49:33 +02:00
nicksavers 4c65678296 Fix bug of negative blocknumbers 2014-05-26 23:49:01 +02:00
romanman 28f8fe4101 Label encoding bug 2014-05-26 23:24:51 +03:00
romanman 905239b139 Call contract GUI & functionality 2014-05-26 21:59:14 +03:00
romanman 3f6c813ce1 Transaction data/init refactoring
-- One field is enough for new spec
2014-05-26 21:25:17 +03:00
romanman 28086ce09e Contract address calc & field on the dialog 2014-05-26 20:17:35 +03:00
romanman 6f75a25379 The functions for contract call data encodeing 2014-05-26 19:44:44 +03:00
romanman 99e141f667 After the first contract creation succeed 2014-05-26 19:06:55 +03:00
nicksavers 5eca3059f7 Replace Trie.cmp() now using RootHash instead of DeepEquals 2014-05-25 23:43:50 +02:00
nicksavers b2b69fc5a4 Fix Trie to generate the expected rootHash 2014-05-25 23:33:28 +02:00
romanman c141dd98a6 Integrating ContractCreationDialog (now sending tx yet) 2014-05-25 23:12:12 +03:00
romanman e5f4515cb1 Draft_1 for compile assembly to a machine code 2014-05-25 21:39:47 +03:00
romanman dbbfe450e5 PendingTransaction mechanism introduced:
1. the dialog put a pending transaction on the list
 2. the dialog send the transaction to a net
 3. wherever the transaction got for the wire in will change to approve state
 4. only after the approve a Wallet state changes

 5. After the block is received with that tx the pending been clean up
2014-05-25 14:52:45 +03:00
romanman 0c01a4fde6 ContractSubmitDialog prototype 2014-05-25 12:43:35 +03:00
nicksavers 8b57d3facb Move clientName to SystemProperties 2014-05-24 19:54:20 +02:00
nicksavers c61569bf69 Fix tx encoding without signature, Add txTests, Fix Message tests 2014-05-24 19:36:50 +02:00
nicksavers eba6a048b6 Fix case-sensitivity GeoDB file 2014-05-24 18:29:37 +02:00
nicksavers 9949fbe8ef Add test for ECKey.hashcode() 2014-05-24 18:12:54 +02:00
nicksavers 1ff207fe71 Fix failing RLPTest.test() depended on unused method 2014-05-24 15:43:22 +02:00
nicksavers 898d20d218 Remove direct ECKey dependency on Guava 2014-05-24 15:32:40 +02:00
nicksavers 86618f9eb8 Remove unused utility methods 2014-05-24 15:17:47 +02:00
nicksavers d0fc754f55 Fix null key in Transaction.getSender() Update Log version and removed unused imports 2014-05-24 13:34:26 +02:00
romanman 7bd236db23 Nice looking dialog for pay transaction introduced 2014-05-23 18:31:37 +03:00
romanman a24496115a minor fix 2014-05-22 23:14:04 +03:00
romanman 7aaf35c770 wire loggin adjustment 2014-05-22 21:33:17 +03:00
romanman 60a385742b Fix for peer discovery thread pool config 2014-05-22 21:10:52 +03:00
romanman 4c19299167 Cosmetics:
1. Clean logging for peer discovery.
2. Filter peer discovery from the output.
2014-05-22 21:01:12 +03:00
romanman 567e2e4f8a log4j support introduced 2014-05-22 20:26:01 +03:00
romanman 537f614442 Merge pull request #11 from nicksavers/master
Fix bug in hash calculation Tx
2014-05-22 19:51:26 +03:00
romanman 6c5680a92d More properties introduced 2014-05-22 19:49:54 +03:00
romanman 9483936a2b Properties file introduced 2014-05-22 19:44:16 +03:00
nicksavers a41b0c9a21 Fix bug in hash calculation Tx 2014-05-22 17:11:39 +02:00
romanman 23250da8eb prepare application to deploy as a jar with lib of dependencies 2014-05-22 16:56:30 +03:00
romanman cff3395b78 Merge branch 'master' of https://github.com/romanman/ethereumj 2014-05-22 15:31:02 +03:00
romanman 17af20ab50 minor 2014-05-22 15:30:38 +03:00
romanman 571c1916a2 Merge pull request #10 from nicksavers/master
Cleaner way to calculate with exponents
2014-05-22 15:22:51 +03:00
romanman 50c5ad8576 minor 2014-05-22 14:51:25 +03:00
romanman b20b95e4ea Peer discovery full support:
1. Thread pool that manage number of workers to get
   the info if a peer is a live.
2. New peers discovered are auto backed by the workers
   to auto check them as well.
3. GUI got auto update from the repository
2014-05-22 14:43:59 +03:00
Nick Savers c34714cbe8 Fix denom base 2014-05-22 10:49:10 +02:00
nicksavers dd45965240 Nicer code to calculate power of 2014-05-22 10:42:56 +02:00
romanman 0a4272fc49 Get rid of Address.java 2014-05-22 10:28:16 +03:00
romanman 09219f4860 cosmetic 2014-05-22 09:58:18 +03:00
nicksavers a0922f625c Revert move from PeerTaster 2014-05-21 23:07:52 +02:00
nicksavers 145dbaed24 Move legacy PeerTaster to test package 2014-05-21 21:16:11 +02:00
nicksavers f26b113607 Fix genesis hash (again...) 2014-05-21 21:16:10 +02:00
nicksavers 232b04932f Use Genesis.getHash() again instead of static value 2014-05-21 21:16:10 +02:00
romanman 2f73b98614 Fix for transaction process RLP and nonce update on block 2014-05-21 20:39:23 +03:00
romanman b52da2cf4a minor 2014-05-21 20:08:15 +03:00
romanman da85fa993b Merge branch 'master' of https://github.com/romanman/ethereumj
Conflicts:
	src/main/java/org/ethereum/core/Transaction.java
2014-05-21 19:50:29 +03:00
romanman d495f1e992 minor 2014-05-21 19:42:23 +03:00
romanman 46eab0c807 Proceed sender value from the tx 2014-05-21 18:16:21 +03:00
romanman 0e239b58ef Transaction.sender() fix 2014-05-21 18:14:29 +03:00
nicksavers 1399a4425a Expand Genesis block test 2014-05-21 17:12:30 +02:00
nicksavers e05da31238 Use correct GENESIS_HASH 2014-05-21 16:23:03 +02:00
nicksavers 37abf479fb Merge conflicts 2014-05-21 15:54:54 +02:00
nicksavers 5326de29b8 Fix RLP decode long list, TransactionTest and cleaning Utils/ByteUtil 2014-05-21 15:52:55 +02:00
nicksavers 6b5b592595 Fix RLP decode long list, TransactionTest and cleaning Utils/ByteUtil 2014-05-21 15:33:51 +02:00
romanman a16fa04e59 Updating the wallet to work with:
1) AddressState
2) The PayOutDialog works for real now
2014-05-21 14:19:49 +03:00
romanman 6dabaad525 Peer discovery work sequentially
1) Next step will be redesign for ThreadWorkers
 2) Fixed for the new genesis hash
2014-05-21 01:57:12 +03:00
romanman a16728d6a2 negative value in the tx fix 2014-05-21 01:27:43 +03:00
romanman 2fcb00d3b5 Merge branch 'master' of https://github.com/romanman/ethereumj
Conflicts:
	src/main/java/org/ethereum/gui/PayOutDialog.java
2014-05-21 01:16:03 +03:00
romanman 7e7ec683df peer discovery continue 2014-05-21 01:14:03 +03:00
romanman 36e0bc5397 Merge pull request #7 from nicksavers/master
Fix sending Transaction to CPP client
2014-05-21 01:14:01 +03:00
nicksavers e2be467535 Fix sending Transaction to CPP client 2014-05-21 00:11:05 +02:00
romanman c3af234b38 Merge branch 'master' of https://github.com/romanman/ethereumj 2014-05-21 00:49:42 +03:00
romanman 5b4cf4b44e Working on peer discovery and sync mechanism 2014-05-21 00:49:09 +03:00
romanman 17aff88a4b Working on peer discovery mechanism 2014-05-21 00:48:27 +03:00
nicksavers 91db5c8b22 Fix Transaction RLP encoding 2014-05-20 23:43:35 +02:00
romanman e1747c8740 Merge branch 'master' of https://github.com/romanman/ethereumj
Conflicts:
	src/main/java/org/ethereum/gui/ConnectionConsoleWindow.java
2014-05-20 21:43:21 +03:00
romanman 31e81840e7 merge for last pull 2014-05-20 21:42:07 +03:00
nicksavers c1bc0ffafd Update for new Genesis and cleanup Transaction and other old code 2014-05-20 20:32:44 +02:00
nicksavers d7145ddc09 Update denominations 2014-05-20 19:24:08 +02:00
romanman cf82f9b459 Transactions, RLP, and more cool stuff... 2014-05-20 19:16:07 +03:00
romanman 4c1d3e79eb Bunch of small adjustments 2014-05-19 23:41:47 +03:00
romanman 5326356fec Small fixes:
1. Toggle button on/off for toolbar window
2. Timer for GET_CHAIN request goes to 10 sec if we have
all the blocks and geting 1 block each time.
3. Wallet sum pannel in sync
2014-05-19 00:10:29 +03:00
romanman 7affbd26c8 Add new address to a GUI wallet 2014-05-18 18:49:16 +03:00
romanman e7b2fd7d19 Ethereum Wallet Prototype
Added GUI for future wallet,
to run it one can run ToolBar
and click on the wallet icon.
2014-05-17 15:18:49 +03:00
romanman 1f00205a14 Now it's possible to find data in the BlockChain table
by ctrl+f function and copy it by ctrl+c
2014-05-17 11:45:24 +03:00
romanman abafc215e8 Merge branch 'master' of https://github.com/romanman/ethereumj
Conflicts:
	src/main/java/org/ethereum/core/Block.java
2014-05-17 09:54:37 +03:00
romanman 5108f8d797 Merge with pull req#4 2014-05-17 09:47:27 +03:00
nicksavers a4b919a989 Add initial Transaction encoding code - fix parseRLP for cpp compatibility 2014-05-16 00:30:03 +02:00
nicksavers 0c9e304b90 Merge back block encoding now using rlpData as byte[] and bugfix for encodeElement of null 2014-05-15 16:13:19 +02:00
romanman 1e8697ae8b Merge branch 'master' of https://github.com/romanman/ethereumj
Conflicts:
	src/main/java/org/ethereum/core/Block.java
2014-05-15 16:06:12 +03:00
romanman 2a037eb5db Downloading the full block chain, and a first model for the chain table
dialog.
2014-05-15 15:55:05 +03:00
nicksavers 662f341ad3 Fix for encodeLength() fix 2014-05-15 14:12:58 +02:00
nicksavers 02bce31d63 Add genesis block and block encoding 2014-05-15 14:03:30 +02:00
nicksavers 41862c44a1 Fix bugs in encodeBigInteger() and RLP.encodeLength() 2014-05-15 14:03:13 +02:00
romanman c1d619bc92 Fixed BlockMessage parsing for POC-5 2014-05-14 22:04:59 +03:00
romanman 812a2c224e Fixed some small wire adjustments 2014-05-14 20:53:16 +03:00
romanman b72cc89b6f More testing on Serpent compiler, some operand order fixes: 2014-05-14 19:45:02 +03:00
nicksavers 22d0de022e Add performance test for RLP decoding 2014-05-14 15:27:25 +02:00
nicksavers 260aae5881 Fix bug in toInt() and refactor RLPList to extend ArrayList 2014-05-14 14:42:20 +02:00
nicksavers 7eaf9f0dba Merge RLP classes and tests but needs more scrutiny 2014-05-14 10:47:45 +02:00
romanman f50703f69c Adding track for ANTLR4 generated files 2014-05-13 22:40:12 +03:00
romanman 85c8b38b4e More complex example for SerpentEditor 2014-05-13 22:37:52 +03:00
romanman 20740beac2 Merge pull request #1 from nicksavers/master
Start with testing of genesis block
2014-05-13 22:05:35 +03:00
romanman ea0a0bc754 Major redesign of Serpent compiler 2014-05-13 22:00:08 +03:00
nicksavers 99004b211d Add partial tests for genesis block 2014-05-13 19:36:48 +02:00
nicksavers 808105dce2 Rename to lowercase artifactId 2014-05-13 19:36:48 +02:00
romanman f1d292a2b4 Deleting old Serpent compiler implementation 2014-05-13 19:31:02 +03:00
romanman 53e456556e Changing back previous git test 2014-05-13 19:28:29 +03:00
romanman 1bb6557a26 git testing 2014-05-13 19:23:54 +03:00
romanman 5992eb67a1 testing git 2014-05-13 19:22:41 +03:00
nicksavers 86fb7b2152 Remove test-scope from cedarsoft to fix Value.cmp() 2014-05-07 10:14:16 +02:00
nicksavers 395be5d95e Merge cleanup changes 2014-05-05 19:38:35 +02:00
nicksavers d3cafc2731 Document and clean RLP and some others 2014-05-05 19:09:32 +02:00
nicksavers 4e08b4ee65 Move ReasonCode to enum 2014-05-05 15:01:37 +02:00
nicksavers b7d827a87a Add sign function to Transaction 2014-05-05 12:55:25 +02:00
nicksavers f57bb68e06 Remove unused exception class 2014-05-05 12:30:17 +02:00
nicksavers 01a9fcc7e2 Add Trie datastructure, utility classes and leveldb dependency 2014-05-05 04:10:38 +02:00
nicksavers 6fca92b62f Document Transaction and Block and add VM OpCode enum 2014-05-05 03:38:09 +02:00
nicksavers 1f3455f5c6 Use ECDSASignature wrapper for Transaction signature 2014-05-05 03:00:49 +02:00
nicksavers 96773417ff Cleanup code 2014-05-05 02:53:56 +02:00
nicksavers 3a660658a2 Clean and use ReasonCode enum 2014-05-05 02:29:41 +02:00
nicksavers f4ae933ab3 Change website in pom.xml 2014-05-05 01:07:44 +02:00
nicksavers 45bc55cf9e Cleanup formatting and re-use Command enum 2014-05-05 00:51:21 +02:00
nicksavers 288e361043 Update test to remove Bitcoin message signing 2014-05-05 00:43:03 +02:00
nicksavers 2e6b8769d7 Remove Bitcoin message signing 2014-05-05 00:40:44 +02:00
nicksavers 348ae7617a Overhaul crypto/hash, removed samples and switch to spongycastle 2014-05-04 23:26:06 +02:00
romanman cde33d30bf Merge RLP.java 2014-05-05 00:03:41 +03:00
romanman 48939608c1 Merge pom.xml 2014-05-05 00:02:46 +03:00
romanman abd9625ca8 Merge branch 'master' of https://github.com/romanman/EthereumJ
Conflicts:
	src/main/java/org/ethereum/gui/ConnectionConsole.java
	src/main/java/org/ethereum/net/client/EthereumProtocolHandler.java
2014-05-04 23:39:24 +03:00
romanman dd8b57cb15 PeerMessage decoding fix 2014-05-04 23:27:02 +03:00
nicksavers 2c1c17f8f1 Use Command enum for Protocol 2014-05-04 21:37:11 +02:00
nicksavers 1f55856067 Merge branch 'master' into cleanup 2014-05-04 21:25:14 +02:00
romanman 62c39f783e PeerMessage decoding fix 2014-05-04 22:08:17 +03:00
nicksavers 2c96ec86c9 Getting rid of empty lines and unused imports 2014-05-02 15:28:53 +02:00
romanman b9bfa9a5c8 Initial Merge
1) wire
2) GUI
   - Serpent Editor
   - Network Overview
   - Connection Console
3) Serpent Compiler
2014-05-02 10:40:47 +03:00
romanman 88108d4197 Initial Merge
1) wire
2) GUI
   - Serpent Editor
   - Network Overview
   - Connection Console
3) Serpent Compiler
2014-05-02 10:07:01 +03:00
romanman b191dca9bf Initial Merge
1) wire
2) GUI
   - Serpent Editor
   - Network Overview
   - Connection Console
3) Serpent Compiler
2014-05-02 10:04:43 +03:00
romanman af1adefecb Initial Merge
1) wire
2) GUI
   - Serpent Editor
   - Network Overview
   - Connection Console
3) Serpent Compiler
2014-05-02 10:03:53 +03:00