Daniel Liu
ad0eea0f07
refactor(crypto): vendor in golang.org/x/crypto/sha3 #33323 ( #2046 )
...
The upstream libray has removed the assembly-based implementation of
keccak. We need to maintain our own library to avoid a peformance
regression.
---------
Co-authored-by: Felix Lange <fjl@twurst.com>
Co-authored-by: lightclient <lightclient@protonmail.com>
2026-02-28 17:23:57 +04:00
Wanwiset Peerapatanapokin
81416e008c
fix(consensus): use signer pubkey to check for unique signatures and optimize performance, close XFN-03 ( #1625 )
...
* use signer pubkey to check for unique signatures and optimize performance
* change waitgroup to errgroup
* optimize
* fix typo
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* format files
* after rebase new commits, refactor from snap.NextEpochCandidates to epochInfo.Masternodes
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-20 14:34:54 +07:00
Wanwiset Peerapatanapokin
6120def776
useful logging ( #1986 )
2026-02-06 17:42:26 +07:00
Daniel Liu
58c066f053
all: handle err from func rlp.Encode, close XFN-127 ( #1692 )
2025-11-03 12:45:19 +05:30
Daniel Liu
9d85990309
all: fix missing nil check, close XFN-114 ( #1695 )
2025-11-01 23:21:44 +05:30
wit liu
79460e4bfb
all: fix whitespace error of golangci-lint, remove extra empty lines ( #1624 )
2025-10-19 14:42:12 +08:00
Daniel Liu
8c101cd961
engine_v2: fix potential modulo by zero, close XFN-17 ( #1615 )
2025-10-08 13:21:33 +08:00
wit liu
d20f91057a
all: fix whitespace ( #1572 )
2025-09-24 07:58:40 +08:00
wgr523
5a6d25ec08
engine_v2: fix negative underflow in getBlockInfoByEpochNum ( #1481 )
2025-09-17 22:52:28 +08:00
wgr523
4ec4a5390f
Consecutive penalty upgrade ( #1053 )
...
* feat: penalty upgrade, consecutive epochs penalty
can be unpenalized
* feat: use binary search inside penalty hook
* style: modification on style
* feat: in penaltyHook change startRange
* fix: add lastPenalty condition in HookPenalty V2
2025-06-25 01:12:56 -07:00
benjamin202410
f8decab061
code refactor for performance ( #782 )
...
Co-authored-by: liam.lai <liam.lai@us>
2024-12-29 21:47:14 -08:00
Daniel Liu
82ff8c19a0
all: remove uses of untyped golang-lru
2024-12-21 14:39:26 +08:00
Daniel Liu
92fc843683
crypto: switch over to upstream sha3 package ( #18390 )
2024-12-09 17:48:59 +08:00
Daniel Liu
e18553b855
all: implement eip-1559 ( #22837 )
2024-11-01 11:36:52 +08:00
wgr523
71b9005f34
feat: add api xdpos_getBlockInfoByEpochNum ( #674 )
...
* feat: add api xdpos_getBlockInfoByEpochNum
* feat: add cache round2epochBlockInfo
* fix: round2epochBlockInfo contains round now
* feat: binary search in GetBlockByEpochNumber
* fix: change some code back, refine style
2024-10-28 00:14:30 -07:00
Daniel Liu
a79411fa06
all: fix staticcheck warning ST1005: incorrectly formatted error string
2024-10-24 09:48:20 +08:00
JukLee0ira
2d89951e5b
all: use errrors.New instead of empty fmt.Errorf
2024-06-14 19:19:21 +08:00
Liam
d76a573cf2
PPX-01 rename NextEpochMasterNodes to NextEpochCandidates ( #510 )
2024-03-31 07:27:13 +11:00
Banana-J
a54a645cda
fix: always check for error value and return nil, err where possible ( #426 )
...
Co-authored-by: wjrjerome <wjrjerome@babylonchain.io>
2024-02-11 20:32:24 +11:00
Jianrong
6740545358
change the API to be block num based
2023-12-28 15:13:05 +11:00
Jianrong
e28b550a24
Add a new API to help debug when there are missed rounds
2023-12-28 15:13:05 +11:00
Liam
938db0afcc
Bug Fix: V2 getSigner API ( #313 )
2023-08-20 10:56:08 +10:00
Liam
153f8d296d
Fix API penalty bug and add more info in api ( #262 )
...
* fix api bug
* remove cmd
2023-05-16 21:23:02 +10:00
Liam
7b657f0c4e
API: getMasternode and getPoolStatus ( #258 )
...
* API: getMasternode and getPoolStatus
* fix test
2023-05-01 23:01:39 +10:00
Jerome
2ca1d0461d
Fix issue when resync is not getting the right consensus config values ( #221 )
...
* Fix issue when resync is not getting the right consensus config values
* add test and fix log bug
* fix test
* delete temp file
Co-authored-by: Liam Lai <liam.icheng.lai@gmail.com>
2023-01-17 21:34:42 +08:00
Liam
c4f9a552e5
Multi config bug fix ( #216 )
...
* refactor multi config
remove pool cleaner
correct message and log level
2022-12-17 20:23:46 +08:00
Liam
6ffbd3e141
Xin 259 support multi v2 config ( #210 )
...
* update timeout period and waittime
* remove wrong comment
* update config for preparing test
2022-12-06 20:08:56 +08:00
Jerome
455cacc1b7
move XDC consensus types into core ( #93 )
2022-05-22 11:43:25 +10:00
Jerome
d55229677d
verify header including validator ( #71 )
...
* verify header including validator
* re-structure v1 v2 tests
* remove unused test function
* add test to check coinbase and validator address matches
* refactor engine v2 to group private functions into same file
2022-03-20 21:14:35 +11:00
Jerome
8363641b2c
check against master node list before sending out anything ( #67 )
...
* check against master node list before sending out anything
* remove duplicated signatures from QC
* add break when checking allowed to send
2022-03-08 09:12:52 +11:00
Jerome
e063f67f34
implement verify functions ( #43 )
...
* implement verify functions
* Use go routine to call verifyMsgSignature
* verify timeout msg shall use round from the msg
* add comment for verifyQC
2022-01-21 21:10:44 +11:00
Jerome
f8d3f9f8c6
Xin 113 is epoch switch ( #37 )
...
* add isEpochSwitch function and refactor utils
* fix broken first v2 epoch switch block
* use adaptor epoch switch function to determine v1 v2 epoch swtich block
* add test for the GetMasternodesByNumber and GetCurrentEpochSwitchBlock function
* add v2 test for isAuthroisedAddress
* Use GetCurrentEpochSwitchBlock in findNearestSignedBlock api
2022-01-14 21:38:38 +11:00