Commit Graph

194 Commits

Author SHA1 Message Date
ChronosX88
445fbf44f0
Fix infinity loop when syncing mempool 2021-07-30 01:53:48 +03:00
ChronosX88
e8b220455e
Fix sync/race issues in consensus, refactor accepted blocks sorting 2021-07-29 00:48:01 +03:00
ChronosX88
cd671e6165
Change temporarily pubsub engine to FloodSub 2021-07-29 00:47:09 +03:00
ChronosX88
1670a6b287
Add Etherscan plugin for Hardhat 2021-07-28 21:52:10 +03:00
ChronosX88
b9c39ac7ba
Fix DioneOracle unit test 2021-07-28 21:13:43 +03:00
ChronosX88
7e8e4ccc41
Separate secrets to another file, add some Dione-related tasks to hardhat project 2021-07-28 21:13:30 +03:00
ChronosX88
225c84e8a8
Implement creating necessary directories when creating private key file 2021-07-27 02:03:12 +03:00
ChronosX88
d179ffcd76
Implement consensus state change watching to fix stage race conditions 2021-07-27 02:00:15 +03:00
ChronosX88
430a994a76
Return reward to stake balance instead of node's token balance 2021-07-22 01:02:42 +03:00
ChronosX88
6d73e1103d
Merge pull request #15 from Secured-Finance/refactor/fx
Integrate Uber's Fx DI framework
2021-07-22 01:02:36 +03:00
ChronosX88
5e0c7f02fa
Integrate Uber's Fx DI framework, refactor node init code massively 2021-07-22 00:56:58 +03:00
ChronosX88
550d69fb26
Fix approve count for PREPARE state in consensus 2021-07-20 01:40:49 +03:00
ChronosX88
cbce24fdce
Ignore block validation for genesis block 2021-07-20 01:39:14 +03:00
ChronosX88
ed9fa658ed
Make block hash more random 2021-07-20 01:38:55 +03:00
ChronosX88
a6cf757fcf
Implement handler for NewBlock message in SyncManager, refactor block validation architecture 2021-07-19 23:19:06 +03:00
ChronosX88
f59aaa6cf2
Fix issue when node creates tx with different hash but with the same content (because of slightly diffeent timestamp) 2021-07-19 21:41:42 +03:00
ChronosX88
bb3bf032d5
Update go-libp2p-pex dependency to v1.1.2 2021-07-15 23:55:06 +03:00
ChronosX88
13951d5c32
Implement event bus for cross-communication between Dione components, overhaul logging part 2021-07-15 23:51:22 +03:00
ChronosX88
d7a1e87939
Make blockchain finally working! 2021-07-12 02:23:00 +03:00
ChronosX88
6c18edd471
Update .gitignore 2021-07-11 03:33:28 +03:00
ChronosX88
2845a04704
Fix small bugs/mistakes/typos 2021-07-11 03:32:58 +03:00
ChronosX88
5aadbab600
Refactor dispute manager to new blockchain architecture 2021-07-11 03:08:03 +03:00
ChronosX88
956de703e8
Implement submission for dione task from block transaction 2021-07-11 01:07:35 +03:00
ChronosX88
5645d1951b
Fix some typos 2021-07-11 01:07:04 +03:00
ChronosX88
2952983c94
Fix some minor mistakes in various places 2021-06-15 00:45:35 +03:00
ChronosX88
29c38e80b7
Add missing send to ready channel in consensus state when mining new block 2021-06-11 14:43:48 +03:00
ChronosX88
ea9ceaeda9
Implement block validation at PREPREPARE stage 2021-06-11 14:40:39 +03:00
ChronosX88
de5d9cf664
Implement making RPC request & creating DioneTask for holding result of oracle request in transaction payload 2021-06-10 23:32:39 +03:00
ChronosX88
ac2bf637a8
Simplify validation process of beacon entries 2021-06-10 23:31:44 +03:00
ChronosX88
ad45e0c554
Fix validation for PREPARE/COMMIT messages 2021-06-09 00:39:48 +03:00
ChronosX88
4e7294e046
Do massive overhaul of consensus part due to new architecture with blockchain, implement chain selection 2021-06-09 00:30:23 +03:00
ChronosX88
012d4a68c3
Rename BlockPool to BlockChain 2021-06-05 00:19:45 +03:00
ChronosX88
34c88a8d01
Fix LatestBeaconRound in Drand 2021-06-05 00:14:24 +03:00
ChronosX88
2eae45ca38
Add watching new DRAND entries and fix drand entry validation 2021-06-05 00:07:04 +03:00
ChronosX88
8445baafdb
Implement handling new transactions announced on network in SyncManager 2021-06-04 00:21:14 +03:00
ChronosX88
025bb9a6d1
Refactor pubsub package again, make it more flexible 2021-06-04 00:15:32 +03:00
ChronosX88
0695d23866
Refactor pubsub package 2021-06-03 00:19:52 +03:00
ChronosX88
809c5f2a23
Fix mempool init in SyncManager 2021-06-02 22:48:56 +03:00
ChronosX88
2afe85853f
Implement mempool synchronization 2021-06-02 22:45:55 +03:00
ChronosX88
c0e69ff1d0
Implement GetAllTxs function in mempool 2021-05-31 22:24:07 +03:00
ChronosX88
00b041fbb0
Use gob encoding for struct marshalling in redis cache 2021-05-27 22:30:52 +03:00
ChronosX88
3366a71ac1
Change backend for in-memory cache to patrickmn/go-cache 2021-05-27 22:30:11 +03:00
ChronosX88
43871c6141
Add validation of tx hash when syncing 2021-05-27 00:29:37 +03:00
ChronosX88
b51a5ffe75
Implement sync manager, node p2p network rpc service, initial sync algorithm 2021-05-27 00:06:46 +03:00
ChronosX88
1759ecbc8f
Add blockchain config to Config struct 2021-05-26 23:59:05 +03:00
ChronosX88
155fe7bc71
Implement fetching block header by height in blockpool 2021-05-26 23:58:31 +03:00
ChronosX88
fb84ab8ad6
Add merkle proof of last block hash to BlockHeader, add merkle proof of tx hash to Transaction 2021-05-26 23:57:54 +03:00
ChronosX88
dde32e11dc
Implement indexes for blockpool database and auto maintaining of it 2021-05-25 18:32:06 +03:00
ChronosX88
6d50f37a12
Implement storing latest block hash in blockpool storage 2021-05-20 00:53:58 +03:00
ChronosX88
5e48c0d176
Move blockchain-related code into separate package 2021-05-19 23:55:00 +03:00