Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
296 commits
Select commit Hold shift + click to select a range
404c3d3
fixes after review part 1 + added limitation on the number of inner txs
sstanculeanu May 2, 2024
afbe7c5
fixes after review part 2
sstanculeanu May 7, 2024
d23be9c
fix tests
sstanculeanu May 7, 2024
6975c19
moved the test with chain simulator in the proper package
sstanculeanu May 8, 2024
8c60601
Merge branch 'rc/v1.7.next1' into overwritable-configs-map
miiu96 May 8, 2024
68a95a1
further fixes after review
sstanculeanu May 13, 2024
253f920
fix linter
sstanculeanu May 13, 2024
1da2106
improved integration test to check events as well
sstanculeanu May 13, 2024
c91444b
cleanup proposal misses
AdoAdoAdo May 14, 2024
2bb0754
added missing config
sstanculeanu May 15, 2024
dea63b1
Merge branch 'rc/v1.7.next1' into unjail-cleanup
gabi-vuls May 15, 2024
63008bb
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu May 15, 2024
637df8d
fix after merge + updated core-go
sstanculeanu May 15, 2024
ab49574
Merge pull request #6171 from multiversx/merge_rc17next1_into_feat/re…
AdoAdoAdo May 16, 2024
9de586c
Merge branch 'feat/relayedv3' of https://github.com/multiversx/mx-cha…
sstanculeanu May 16, 2024
3da7174
update-core-go after merge
sstanculeanu May 16, 2024
9980a4f
fix simulator tests after merge
sstanculeanu May 16, 2024
0b00ad1
append log events + new chain simulator integration test
sstanculeanu May 16, 2024
9a3d0a2
added missing file
sstanculeanu May 17, 2024
288012b
add activation flag for unjail cleanup backwards compatibility
AdoAdoAdo May 21, 2024
77a77ca
fix indentation
sstanculeanu May 24, 2024
c2da37d
added extra check for multiple relayed types in the same tx + added C…
sstanculeanu May 27, 2024
89e9fad
display inner transactions on response of transaction endpoint
sstanculeanu May 28, 2024
f3a89fc
fixes after first review
sstanculeanu May 29, 2024
2f6c0ed
Merge branch 'rc/v1.7.next1' into overwritable-configs-map
gabi-vuls May 30, 2024
e347114
do not add relayed v3 to the bad tx forwarder
sstanculeanu Jun 3, 2024
b810441
updated core-go
sstanculeanu Jun 4, 2024
78831c6
fixes after review
sstanculeanu Jun 6, 2024
d2cf3c5
Merge branch 'multiple_inner_transactions' of https://github.com/mult…
sstanculeanu Jun 6, 2024
6e3ff41
fixes after branch update
sstanculeanu Jun 6, 2024
14f4e0f
fixed error on withKeys
raduchis Jun 7, 2024
3dc4427
fixed error also when data trie is nil
raduchis Jun 7, 2024
06328f8
todo + fixes after review
sstanculeanu Jun 10, 2024
19079e6
Merge branch 'multiple_inner_transactions' of https://github.com/mult…
sstanculeanu Jun 10, 2024
b3d4207
moved ComputeRelayedTxFees from relayedTxV3Processor to economicsData
sstanculeanu Jun 11, 2024
a58c95f
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
raduchis Jun 12, 2024
627a72d
fix after review
raduchis Jun 12, 2024
3169fd5
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
raduchis Jun 12, 2024
75ef263
updated the fix for relayed fee be active only on move balance + adde…
sstanculeanu Jun 12, 2024
3b45189
Merge pull request #6118 from multiversx/multiple_inner_transactions
sstanculeanu Jun 13, 2024
4d8c8a4
Merge branch 'feat/relayedv3' into append_log_events
sstanculeanu Jun 13, 2024
f3f3a6b
Merge branch 'append_log_events' of https://github.com/multiversx/mx-…
sstanculeanu Jun 13, 2024
edaa9a5
fixes after review: replaced AppendLog functionality with a new compo…
sstanculeanu Jun 14, 2024
b52afea
reverted change not needed
sstanculeanu Jun 14, 2024
e715284
Merge branch 'append_log_events' of https://github.com/multiversx/mx-…
sstanculeanu Jun 17, 2024
a40f03c
fix after review
sstanculeanu Jun 17, 2024
d8f413b
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jun 18, 2024
e89eabd
fix after merge
sstanculeanu Jun 18, 2024
0a10c15
Merge pull request #6265 from multiversx/merge_rc_17next1_into_feat_r…
sstanculeanu Jun 18, 2024
22fb0bb
Merge branch 'feat/relayedv3' into append_log_events
sstanculeanu Jun 18, 2024
cf040ff
Merge branch 'append_log_events' of https://github.com/multiversx/mx-…
sstanculeanu Jun 18, 2024
4fdf47d
fix test after merge
sstanculeanu Jun 18, 2024
65251ab
Merge pull request #6176 from multiversx/append_log_events
sstanculeanu Jun 19, 2024
ec42b2b
Merge branch 'feat/relayedv3' of https://github.com/multiversx/mx-cha…
sstanculeanu Jun 19, 2024
9d62f1c
fix linter after merge
sstanculeanu Jun 19, 2024
4191a89
fix after review
sstanculeanu Jun 19, 2024
e194feb
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jun 19, 2024
2052fc2
fix after merge
sstanculeanu Jun 19, 2024
df88635
Merge pull request #6269 from multiversx/merge_rc_17next1_into_feat_r…
sstanculeanu Jun 19, 2024
0e7618a
Merge branch 'feat/relayedv3' into relayedv3_fixes
sstanculeanu Jun 19, 2024
a0958c2
Merge pull request #6252 from multiversx/relayedv3_fixes
sstanculeanu Jun 20, 2024
f1577c1
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jun 20, 2024
a011673
Merge pull request #6270 from multiversx/merge_rc17next1_into_feat_re…
sstanculeanu Jun 20, 2024
49397f8
proper fix for relayed base cost + renamed FixRelayedMoveBalanceFlag …
sstanculeanu Jun 21, 2024
e019c78
fix after review
sstanculeanu Jun 21, 2024
51434d2
fix after second review
sstanculeanu Jun 21, 2024
c2997ad
Merge pull request #6274 from multiversx/rename_flag_and_proper_fix
sstanculeanu Jun 21, 2024
fb89c15
fixed processTxFee for inner tx after base cost fix
sstanculeanu Jun 25, 2024
a480aab
Merge pull request #6278 from multiversx/relayedv3_fix_processTxFee
sstanculeanu Jun 25, 2024
116f2b6
further fixes on inner tx fee
sstanculeanu Jun 25, 2024
b9c4a4d
fix economicsData too
sstanculeanu Jun 25, 2024
8005207
Merge branch 'feat/relayedv3' into relayedv3_further_fixes
sstanculeanu Jun 25, 2024
e10c4fb
Fix keygenerator Dockerfile
danidrasovean Jun 25, 2024
fc1d704
adapted scenarios to work with all tokens
ssd04 Jun 26, 2024
cfb5568
Remove redundant code
danidrasovean Jun 26, 2024
45cdfac
Merge branch 'master' into fix-keygen-dockerfile
danidrasovean Jun 26, 2024
a5d1509
Updated to support multi-arch docker builds
danidrasovean Jun 26, 2024
c2bf800
fix economicsData too
sstanculeanu Jun 26, 2024
53ca509
fix modify creator test
ssd04 Jun 26, 2024
7a5a074
added func for chain simulator with dynamic nfts enabled
ssd04 Jun 26, 2024
093c6db
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jun 26, 2024
9b13406
fix test after merge
sstanculeanu Jun 26, 2024
c4dc47d
change to dynamic old tokens scenario
ssd04 Jun 26, 2024
2bb9d44
Merge pull request #6285 from multiversx/merge_rc17next1_into_feat_re…
sstanculeanu Jun 26, 2024
eb31410
Merge branch 'feat/relayedv3' into relayedv3_further_fixes
sstanculeanu Jun 26, 2024
5139fa9
fix after review, use real txTypeHandler with a setter
sstanculeanu Jun 26, 2024
ae49232
increased the coverage
sstanculeanu Jun 26, 2024
e4f88e3
remove refund scr added for v3 inner tx move balance, not needed anymore
sstanculeanu Jun 27, 2024
ed5d580
fix change to dynamic old tokens scenario
ssd04 Jun 27, 2024
6572d02
Merge pull request #6281 from multiversx/fix-keygen-dockerfile
danidrasovean Jun 27, 2024
c3d558f
fix change to dynamic old tokens scenario - add updateTokenID
ssd04 Jun 27, 2024
bdcea1d
cleanup changes
ssd04 Jun 27, 2024
ddf28ba
added more scenarios
ssd04 Jun 28, 2024
c117809
Merge branch 'rc/v1.7.next1' into esdt-improvements-integration-tests-p3
ssd04 Jun 28, 2024
f731647
update sft metaesdt modify creator scenario
ssd04 Jul 1, 2024
d10c396
refactor modify creator tx
ssd04 Jul 1, 2024
025be07
cleanup changes
ssd04 Jul 1, 2024
2b5f7fa
fix modify creator cross shard test
ssd04 Jul 1, 2024
7847e2e
update change metadata test
ssd04 Jul 1, 2024
dcb8d79
fixes after review
sstanculeanu Jul 1, 2024
80218b6
fixes after review, use gas price modifier in tests
sstanculeanu Jul 2, 2024
33bdd46
Merge pull request #6280 from multiversx/relayedv3_further_fixes
sstanculeanu Jul 3, 2024
f1286c4
updated core-go
sstanculeanu Jul 3, 2024
409d243
Merge pull request #6289 from multiversx/update_core_go
sstanculeanu Jul 3, 2024
9c2bf28
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jul 3, 2024
c6eb449
extend log events for claimRewards and reDelegate
miiu96 Jul 3, 2024
3500daa
Merge branch 'rc/v1.7.next1' into extend-delegation-log-events
miiu96 Jul 3, 2024
1f17971
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jul 3, 2024
d6f4f4a
update mx-chain-core-go after merge
sstanculeanu Jul 3, 2024
5d53ac0
Merge pull request #6291 from multiversx/merge_rc_17next1_into_feat_r…
sstanculeanu Jul 3, 2024
3c26154
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jul 4, 2024
56aa201
fixes after merge
sstanculeanu Jul 4, 2024
cbe8914
Merge pull request #6294 from multiversx/merge_rc_17next1_into_feat_r…
sstanculeanu Jul 4, 2024
83695fc
latest indexer version
miiu96 Jul 4, 2024
6f00bb3
Merge branch 'refs/heads/rc/v1.7.next1' into extend-delegation-log-ev…
miiu96 Jul 4, 2024
0eb2890
added more integration tests for non-executable inner tx + small fix …
sstanculeanu Jul 5, 2024
3cff169
Merge pull request #6297 from multiversx/fix_logs_of_non_executable_i…
sstanculeanu Jul 8, 2024
2dc5d99
Merge branch 'rc/v1.7.next1' into overwritable-configs-map
axenteoctavian Jul 8, 2024
7afeb06
Merge pull request #6116 from multiversx/overwritable-configs-map
axenteoctavian Jul 8, 2024
36ca3e5
change receivers ids
miiu96 Jul 8, 2024
320cc58
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
raduchis Jul 9, 2024
82025ce
Merge branch 'rc/v1.7.next1' into esdt-improvements-integration-tests-p3
ssd04 Jul 9, 2024
189c060
remove metadata test with fungible token
ssd04 Jul 9, 2024
a318cbc
updated mx-chain-vm-go to latest rc/v1.7.next1
sstanculeanu Jul 10, 2024
5b283ae
multi transfer
miiu96 Jul 11, 2024
43a4041
fix imports
miiu96 Jul 11, 2024
96fb9cf
Merge branch 'rc/v1.7.next1' into extend-delegation-log-events
miiu96 Jul 11, 2024
0e64a75
new indexer version
miiu96 Jul 11, 2024
133f521
added egld with multi transfer scenario
ssd04 Jul 12, 2024
b36554d
Merge pull request #6309 from multiversx/update_vm-go
sstanculeanu Jul 12, 2024
6f009da
Merge branch 'feat/relayedv3' into fixes-inner-txs-relayed-v3
miiu96 Jul 12, 2024
7796a54
Merge branch 'rc/v1.7.next1' into extend-delegation-log-events
miiu96 Jul 12, 2024
3919cc1
check account received balance
ssd04 Jul 12, 2024
ac70201
check egld log event
ssd04 Jul 12, 2024
3d878ba
issue token with egld ticker
ssd04 Jul 12, 2024
48212f9
Merge pull request #6292 from multiversx/extend-delegation-log-events
miiu96 Jul 12, 2024
3952387
retured always blockInfo
raduchis Jul 12, 2024
bfe1eaf
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
raduchis Jul 12, 2024
e520f75
if error return empty blockInfo
raduchis Jul 12, 2024
1560338
Merge branch 'rc/v1.7.next1' into egld-multi-transfer-integration-test
ssd04 Jul 15, 2024
c0c5019
proper update of vm-go
sstanculeanu Jul 15, 2024
2ff7e6c
fix log messages
ssd04 Jul 15, 2024
51f530b
update dependencies
BeniaminDrasovean Jul 15, 2024
7d12600
Merge pull request #6317 from multiversx/integrate-refactor-esdt-impr…
BeniaminDrasovean Jul 16, 2024
8a18616
Merge branch 'rc/v1.7.next1' into proper_vm_integration
sstanculeanu Jul 16, 2024
205eb81
Merge branch 'rc/v1.7.next1' into egld-multi-transfer-integration-test
ssd04 Jul 16, 2024
0695fcb
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
raduchis Jul 16, 2024
9862508
Merge branch 'egld-multi-transfer-integration-test' of github.com:Elr…
ssd04 Jul 16, 2024
02ddd51
Merge branch 'rc/v1.7.next1' into esdt-improvements-integration-tests-p3
ssd04 Jul 16, 2024
1f0c028
Merge pull request #6314 from multiversx/proper_vm_integration
sstanculeanu Jul 16, 2024
1620b72
Merge branch 'rc/v1.7.next1' into egld-multi-transfer-integration-test
ssd04 Jul 16, 2024
b5fdc84
update test error check
ssd04 Jul 16, 2024
f9f2c8f
Merge branch 'rc/v1.7.next1' into esdt-improvements-integration-tests-p3
miiu96 Jul 16, 2024
93ece5d
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
raduchis Jul 16, 2024
0a13356
added more scenarios
ssd04 Jul 16, 2024
6b9f696
Merge pull request #6284 from multiversx/esdt-improvements-integratio…
ssd04 Jul 16, 2024
5ad4afb
Merge branch 'rc/v1.7.next1' into egld-multi-transfer-integration-test
ssd04 Jul 16, 2024
e778090
Merge branch 'rc/v1.7.next1' into MX-15556-Bugfix-Account-WithKeys
miiu96 Jul 17, 2024
00dbb5e
Merge branch 'rc/v1.7.next1' into unjail-cleanup
AdoAdoAdo Jul 17, 2024
382a6b8
extra parameter chain simulator
miiu96 Jul 17, 2024
5c065c7
fixes after review
ssd04 Jul 17, 2024
3f3e5c4
Merge pull request #6247 from multiversx/MX-15556-Bugfix-Account-With…
raduchis Jul 17, 2024
4a5b391
Merge branch 'rc/v1.7.next1' into egld-multi-transfer-integration-test
ssd04 Jul 17, 2024
872a0ee
Optimize DisplayProcessTxDetails. Early exit if log level is not TRACE.
andreibancioiu Jul 17, 2024
7a5b2ac
Merge branch 'rc/v1.7.next1' into chain-simulator-extra-argument-star…
miiu96 Jul 17, 2024
7a25a80
Merge branch 'rc/v1.7.next1' into unjail-cleanup
AdoAdoAdo Jul 17, 2024
930ed33
invalid tx value field scenario
ssd04 Jul 17, 2024
aa19325
Merge pull request #6313 from multiversx/egld-multi-transfer-integrat…
miiu96 Jul 18, 2024
1985b1d
Merge branch 'rc/v1.7.next1' into chain-simulator-extra-argument-star…
miiu96 Jul 18, 2024
c907b0e
Merge pull request #6302 from multiversx/fixes-inner-txs-relayed-v3
miiu96 Jul 18, 2024
e8dee2b
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jul 18, 2024
8cecafc
proper deps after merge
sstanculeanu Jul 18, 2024
ad2257c
Merge pull request #6324 from multiversx/merge_rc17next1_into_feat_re…
sstanculeanu Jul 18, 2024
3b72d10
Merge branch 'rc/v1.7.next1' into optimize-display-process-tx-details
miiu96 Jul 18, 2024
06c2254
Merge branch 'rc/v1.7.next1' into unjail-cleanup
AdoAdoAdo Jul 18, 2024
317f2f6
Merge pull request #6161 from multiversx/unjail-cleanup
AdoAdoAdo Jul 18, 2024
8f24b6a
Merge branch 'rc/v1.7.next1' into optimize-display-process-tx-details
miiu96 Jul 18, 2024
0a51235
Merge branch 'rc/v1.7.next1' into chain-simulator-extra-argument-star…
miiu96 Jul 19, 2024
a6d3565
Merge pull request #6322 from multiversx/optimize-display-process-tx-…
danidrasovean Jul 19, 2024
9ed17d2
Merge branch 'rc/v1.7.next1' into chain-simulator-extra-argument-star…
miiu96 Jul 19, 2024
462b14e
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Jul 19, 2024
c8235f2
Merge pull request #6326 from multiversx/merge_rc17next1_into_feat_re…
miiu96 Jul 19, 2024
60a7475
fixed tests by using real FailedTxLogsAccumulator
sstanculeanu Jul 19, 2024
599170a
Merge pull request #6328 from multiversx/fix_tests
sstanculeanu Jul 19, 2024
215571b
Merge pull request #5741 from multiversx/feat/relayedv3
sstanculeanu Jul 19, 2024
89437ff
Merge branch 'rc/v1.7.next1' into chain-simulator-extra-argument-star…
miiu96 Jul 19, 2024
dacdcd2
Merge pull request #6320 from multiversx/chain-simulator-extra-argume…
miiu96 Jul 19, 2024
c90ae5b
fix white list handler for txs on source
miiu96 Jul 19, 2024
7939a64
Merge branch 'rc/v1.7.next1' into refactor-white-list-data-verifier-c…
miiu96 Jul 19, 2024
427ae45
Merge branch 'master' of https://github.com/multiversx/mx-chain-go in…
sstanculeanu Jul 25, 2024
768ec0d
updated deps after merge
sstanculeanu Jul 25, 2024
b100b84
Merge pull request #6331 from multiversx/merge_master_into_rc17next1_…
sstanculeanu Jul 25, 2024
5564501
Merge branch 'rc/v1.7.next1' into refactor-white-list-data-verifier-c…
miiu96 Jul 25, 2024
e014521
fix lint
sstanculeanu Jul 25, 2024
0d44327
fixes
miiu96 Jul 25, 2024
1608549
Merge pull request #6332 from multiversx/fix_rc_lint
sstanculeanu Jul 25, 2024
1657f8a
fix node dockerfile
danidrasovean Jul 25, 2024
4b4eccf
fix node dockerfile
danidrasovean Jul 25, 2024
6a74338
Merge branch 'rc/v1.7.next1' into refactor-white-list-data-verifier-c…
miiu96 Jul 25, 2024
620538d
fix termui dockerfile
danidrasovean Jul 25, 2024
268f82f
Merge pull request #6333 from multiversx/fix-node-dockerfile
danidrasovean Jul 25, 2024
eb1b250
Merge branch 'rc/v1.7.next1' into refactor-white-list-data-verifier-c…
miiu96 Jul 25, 2024
8098d3b
new flag for multi transfer and execute by user
sasurobert Jul 26, 2024
397439f
fixes
miiu96 Jul 26, 2024
ee15920
fix test
sasurobert Jul 26, 2024
28f517a
new vm
sasurobert Jul 26, 2024
12e7f54
fixes after review
miiu96 Jul 26, 2024
552fbac
Merge pull request #6334 from multiversx/multiTransfer_execute_by_user
sstanculeanu Jul 29, 2024
8fd393c
updated deps
sstanculeanu Jul 29, 2024
c7616eb
Merge pull request #6336 from multiversx/update_deps
sstanculeanu Jul 29, 2024
590f161
Merge branch 'rc/v1.7.next1' into refactor-white-list-data-verifier-c…
miiu96 Jul 29, 2024
c9e292c
use setSpecialRole function in tests
ssd04 Jul 29, 2024
e46a815
fix linter issues
ssd04 Jul 30, 2024
2b97908
fix missing ESDTRoleNFTUpdate role
ssd04 Jul 30, 2024
18baf55
fix nonce var linter
ssd04 Jul 30, 2024
01aa23c
fix linter issue
ssd04 Jul 30, 2024
52b26d4
Merge branch 'rc/v1.7.next1' into esdt-improvements-integration-tests-p4
ssd04 Jul 30, 2024
c5975d8
refactor to use setSpecialRole in all tests
ssd04 Jul 30, 2024
5087af1
update getAllRolesForTokenType
ssd04 Jul 30, 2024
1521c98
fix linter issues
ssd04 Jul 30, 2024
06b165b
fix - only transfer role for second address
sasurobert Jul 30, 2024
3bb84e7
fix linter issues
ssd04 Jul 30, 2024
9e9ecda
fix - only transfer role for second address
sasurobert Jul 31, 2024
f7483c6
Fix workflow matrix.
andreibancioiu Jul 31, 2024
b6f3e88
Merge pull request #6350 from multiversx/esdt-improvements-integratio…
sstanculeanu Jul 31, 2024
9bb9cb2
Merge branch 'rc/v1.7.next1' into refactor-white-list-data-verifier-c…
miiu96 Jul 31, 2024
1eefd6f
legacy indexer chain simulator
miiu96 Jul 31, 2024
fe8f6a9
check roles which has to be singular
ssd04 Jul 31, 2024
d2a504f
check roles which has to be singular - update test + fix
ssd04 Jul 31, 2024
223bfb5
remove debug messages
ssd04 Jul 31, 2024
f9aadac
update change metadata test
ssd04 Jul 31, 2024
a369185
Merge pull request #6330 from multiversx/refactor-white-list-data-ver…
miiu96 Jul 31, 2024
411a3e3
Merge branch 'rc/v1.7.next1' into dynamic-roles-singular
miiu96 Jul 31, 2024
afe7915
even newer wasmer
sasurobert Aug 1, 2024
867b9c8
Merge pull request #6357 from multiversx/dynamic-roles-singular
ssd04 Aug 1, 2024
3da197f
even newer wasmer
sasurobert Aug 1, 2024
ce9b283
even newer wasmer
sasurobert Aug 2, 2024
77d133c
even newer wasmer
sasurobert Aug 6, 2024
ecb7bdc
Merge pull request #6365 from multiversx/new-wasmer-build-1.7.next1
sstanculeanu Aug 6, 2024
abf2376
tags
sasurobert Aug 6, 2024
55b7954
tags
sasurobert Aug 6, 2024
7cab1a5
Merge pull request #6356 from multiversx/new-faster-wasmer
sstanculeanu Aug 7, 2024
73c9880
Merge branch 'master' of https://github.com/multiversx/mx-chain-go in…
sstanculeanu Aug 8, 2024
a94af2a
updated deps after merge
sstanculeanu Aug 8, 2024
f894d55
use macos-13 instead of latest
sstanculeanu Aug 8, 2024
6671aa7
Merge pull request #6380 from multiversx/merge_master_into_rc17next1_…
sstanculeanu Aug 9, 2024
edfc0a0
fix linter issue
ssd04 Aug 12, 2024
e608d64
Merge pull request #6384 from multiversx/merge-rc-1.7.next1-to-rc-1.8.0
ssd04 Aug 14, 2024
0cf55cd
Merge branch 'rc/v1.8.0' into merge-rc-1.8.0-into-consensus-size-changes
ssd04 Aug 14, 2024
028ced7
fix merge conflicts
ssd04 Aug 14, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
build:
strategy:
matrix:
runs-on: [ubuntu-latest, macos-13-xlarge]
runs-on: [ubuntu-latest, macos-13, macos-13-xlarge]
runs-on: ${{ matrix.runs-on }}
name: Build
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/create_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
build:
strategy:
matrix:
runs-on: [ubuntu-latest, macos-13-xlarge]
runs-on: [ubuntu-latest, macos-13, macos-13-xlarge]
runs-on: ${{ matrix.runs-on }}
name: Build
steps:
Expand Down
3 changes: 3 additions & 0 deletions api/errors/errors.go
Original file line number Diff line number Diff line change
Expand Up @@ -174,3 +174,6 @@ var ErrGetWaitingManagedKeys = errors.New("error getting the waiting managed key

// ErrGetWaitingEpochsLeftForPublicKey signals that an error occurred while getting the waiting epochs left for public key
var ErrGetWaitingEpochsLeftForPublicKey = errors.New("error getting the waiting epochs left for public key")

// ErrRecursiveRelayedTxIsNotAllowed signals that recursive relayed tx is not allowed
var ErrRecursiveRelayedTxIsNotAllowed = errors.New("recursive relayed tx is not allowed")
193 changes: 115 additions & 78 deletions api/groups/transactionGroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -182,27 +182,23 @@ func (tg *transactionGroup) simulateTransaction(c *gin.Context) {
return
}

txArgs := &external.ArgsCreateTransaction{
Nonce: ftx.Nonce,
Value: ftx.Value,
Receiver: ftx.Receiver,
ReceiverUsername: ftx.ReceiverUsername,
Sender: ftx.Sender,
SenderUsername: ftx.SenderUsername,
GasPrice: ftx.GasPrice,
GasLimit: ftx.GasLimit,
DataField: ftx.Data,
SignatureHex: ftx.Signature,
ChainID: ftx.ChainID,
Version: ftx.Version,
Options: ftx.Options,
Guardian: ftx.GuardianAddr,
GuardianSigHex: ftx.GuardianSignature,
innerTxs, err := tg.extractInnerTransactions(ftx.InnerTransactions)
if err != nil {
c.JSON(
http.StatusBadRequest,
shared.GenericAPIResponse{
Data: nil,
Error: fmt.Sprintf("%s: %s", errors.ErrTxGenerationFailed.Error(), err.Error()),
Code: shared.ReturnCodeRequestError,
},
)
return
}
start := time.Now()
tx, txHash, err := tg.getFacade().CreateTransaction(txArgs)
logging.LogAPIActionDurationIfNeeded(start, "API call: CreateTransaction")

if len(innerTxs) == 0 {
innerTxs = nil
}
tx, txHash, err := tg.createTransaction(&ftx, innerTxs)
if err != nil {
c.JSON(
http.StatusBadRequest,
Expand All @@ -215,7 +211,7 @@ func (tg *transactionGroup) simulateTransaction(c *gin.Context) {
return
}

start = time.Now()
start := time.Now()
err = tg.getFacade().ValidateTransactionForSimulation(tx, checkSignature)
logging.LogAPIActionDurationIfNeeded(start, "API call: ValidateTransactionForSimulation")
if err != nil {
Expand Down Expand Up @@ -272,26 +268,23 @@ func (tg *transactionGroup) sendTransaction(c *gin.Context) {
return
}

txArgs := &external.ArgsCreateTransaction{
Nonce: ftx.Nonce,
Value: ftx.Value,
Receiver: ftx.Receiver,
ReceiverUsername: ftx.ReceiverUsername,
Sender: ftx.Sender,
SenderUsername: ftx.SenderUsername,
GasPrice: ftx.GasPrice,
GasLimit: ftx.GasLimit,
DataField: ftx.Data,
SignatureHex: ftx.Signature,
ChainID: ftx.ChainID,
Version: ftx.Version,
Options: ftx.Options,
Guardian: ftx.GuardianAddr,
GuardianSigHex: ftx.GuardianSignature,
innerTxs, err := tg.extractInnerTransactions(ftx.InnerTransactions)
if err != nil {
c.JSON(
http.StatusBadRequest,
shared.GenericAPIResponse{
Data: nil,
Error: fmt.Sprintf("%s: %s", errors.ErrTxGenerationFailed.Error(), err.Error()),
Code: shared.ReturnCodeRequestError,
},
)
return
}
start := time.Now()
tx, txHash, err := tg.getFacade().CreateTransaction(txArgs)
logging.LogAPIActionDurationIfNeeded(start, "API call: CreateTransaction")

if len(innerTxs) == 0 {
innerTxs = nil
}
tx, txHash, err := tg.createTransaction(&ftx, innerTxs)
if err != nil {
c.JSON(
http.StatusBadRequest,
Expand All @@ -304,7 +297,7 @@ func (tg *transactionGroup) sendTransaction(c *gin.Context) {
return
}

start = time.Now()
start := time.Now()
err = tg.getFacade().ValidateTransaction(tx)
logging.LogAPIActionDurationIfNeeded(start, "API call: ValidateTransaction")
if err != nil {
Expand Down Expand Up @@ -370,25 +363,23 @@ func (tg *transactionGroup) sendMultipleTransactions(c *gin.Context) {
var start time.Time
txsHashes := make(map[int]string)
for idx, receivedTx := range ftxs {
txArgs := &external.ArgsCreateTransaction{
Nonce: receivedTx.Nonce,
Value: receivedTx.Value,
Receiver: receivedTx.Receiver,
ReceiverUsername: receivedTx.ReceiverUsername,
Sender: receivedTx.Sender,
SenderUsername: receivedTx.SenderUsername,
GasPrice: receivedTx.GasPrice,
GasLimit: receivedTx.GasLimit,
DataField: receivedTx.Data,
SignatureHex: receivedTx.Signature,
ChainID: receivedTx.ChainID,
Version: receivedTx.Version,
Options: receivedTx.Options,
Guardian: receivedTx.GuardianAddr,
GuardianSigHex: receivedTx.GuardianSignature,
innerTxs, errExtractInnerTransactions := tg.extractInnerTransactions(receivedTx.InnerTransactions)
if errExtractInnerTransactions != nil {
c.JSON(
http.StatusBadRequest,
shared.GenericAPIResponse{
Data: nil,
Error: fmt.Sprintf("%s: %s", errors.ErrTxGenerationFailed.Error(), err.Error()),
Code: shared.ReturnCodeInternalError,
},
)
return
}

if len(innerTxs) == 0 {
innerTxs = nil
}
tx, txHash, err = tg.getFacade().CreateTransaction(txArgs)
logging.LogAPIActionDurationIfNeeded(start, "API call: CreateTransaction")
tx, txHash, err = tg.createTransaction(&receivedTx, innerTxs)
if err != nil {
continue
}
Expand Down Expand Up @@ -499,26 +490,23 @@ func (tg *transactionGroup) computeTransactionGasLimit(c *gin.Context) {
return
}

txArgs := &external.ArgsCreateTransaction{
Nonce: ftx.Nonce,
Value: ftx.Value,
Receiver: ftx.Receiver,
ReceiverUsername: ftx.ReceiverUsername,
Sender: ftx.Sender,
SenderUsername: ftx.SenderUsername,
GasPrice: ftx.GasPrice,
GasLimit: ftx.GasLimit,
DataField: ftx.Data,
SignatureHex: ftx.Signature,
ChainID: ftx.ChainID,
Version: ftx.Version,
Options: ftx.Options,
Guardian: ftx.GuardianAddr,
GuardianSigHex: ftx.GuardianSignature,
innerTxs, errExtractInnerTransactions := tg.extractInnerTransactions(ftx.InnerTransactions)
if errExtractInnerTransactions != nil {
c.JSON(
http.StatusBadRequest,
shared.GenericAPIResponse{
Data: nil,
Error: fmt.Sprintf("%s: %s", errors.ErrTxGenerationFailed.Error(), errExtractInnerTransactions.Error()),
Code: shared.ReturnCodeInternalError,
},
)
return
}
start := time.Now()
tx, _, err := tg.getFacade().CreateTransaction(txArgs)
logging.LogAPIActionDurationIfNeeded(start, "API call: CreateTransaction")

if len(innerTxs) == 0 {
innerTxs = nil
}
tx, _, err := tg.createTransaction(&ftx, innerTxs)
if err != nil {
c.JSON(
http.StatusInternalServerError,
Expand All @@ -531,7 +519,7 @@ func (tg *transactionGroup) computeTransactionGasLimit(c *gin.Context) {
return
}

start = time.Now()
start := time.Now()
cost, err := tg.getFacade().ComputeTransactionGasLimit(tx)
logging.LogAPIActionDurationIfNeeded(start, "API call: ComputeTransactionGasLimit")
if err != nil {
Expand Down Expand Up @@ -728,6 +716,33 @@ func (tg *transactionGroup) getTransactionsPoolNonceGapsForSender(sender string,
)
}

func (tg *transactionGroup) createTransaction(receivedTx *transaction.FrontendTransaction, innerTxs []*transaction.Transaction) (*transaction.Transaction, []byte, error) {
txArgs := &external.ArgsCreateTransaction{
Nonce: receivedTx.Nonce,
Value: receivedTx.Value,
Receiver: receivedTx.Receiver,
ReceiverUsername: receivedTx.ReceiverUsername,
Sender: receivedTx.Sender,
SenderUsername: receivedTx.SenderUsername,
GasPrice: receivedTx.GasPrice,
GasLimit: receivedTx.GasLimit,
DataField: receivedTx.Data,
SignatureHex: receivedTx.Signature,
ChainID: receivedTx.ChainID,
Version: receivedTx.Version,
Options: receivedTx.Options,
Guardian: receivedTx.GuardianAddr,
GuardianSigHex: receivedTx.GuardianSignature,
Relayer: receivedTx.Relayer,
InnerTransactions: innerTxs,
}
start := time.Now()
tx, txHash, err := tg.getFacade().CreateTransaction(txArgs)
logging.LogAPIActionDurationIfNeeded(start, "API call: CreateTransaction")

return tx, txHash, err
}

func validateQuery(sender, fields string, lastNonce, nonceGaps bool) error {
if fields != "" && lastNonce {
return errors.ErrFetchingLatestNonceCannotIncludeFields
Expand Down Expand Up @@ -825,6 +840,28 @@ func (tg *transactionGroup) getFacade() transactionFacadeHandler {
return tg.facade
}

func (tg *transactionGroup) extractInnerTransactions(
innerTransactions []*transaction.FrontendTransaction,
) ([]*transaction.Transaction, error) {
innerTxs := make([]*transaction.Transaction, 0, len(innerTransactions))
if len(innerTransactions) != 0 {
for _, innerTx := range innerTransactions {
if len(innerTx.InnerTransactions) != 0 {
return innerTxs, errors.ErrRecursiveRelayedTxIsNotAllowed
}

newInnerTx, _, err := tg.createTransaction(innerTx, nil)
if err != nil {
return innerTxs, err
}

innerTxs = append(innerTxs, newInnerTx)
}
}

return innerTxs, nil
}

// UpdateFacade will update the facade
func (tg *transactionGroup) UpdateFacade(newFacade interface{}) error {
if newFacade == nil {
Expand Down
62 changes: 62 additions & 0 deletions api/groups/transactionGroup_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,7 @@ func TestTransactionGroup_sendTransaction(t *testing.T) {
expectedErr,
)
})
t.Run("recursive relayed v3 should error", testRecursiveRelayedV3("/transaction/send"))
t.Run("should work", func(t *testing.T) {
t.Parallel()

Expand Down Expand Up @@ -520,6 +521,7 @@ func TestTransactionGroup_computeTransactionGasLimit(t *testing.T) {
expectedErr,
)
})
t.Run("recursive relayed v3 should error", testRecursiveRelayedV3("/transaction/cost"))
t.Run("should work", func(t *testing.T) {
t.Parallel()

Expand Down Expand Up @@ -640,6 +642,7 @@ func TestTransactionGroup_simulateTransaction(t *testing.T) {
expectedErr,
)
})
t.Run("recursive relayed v3 should error", testRecursiveRelayedV3("/transaction/simulate"))
t.Run("should work", func(t *testing.T) {
t.Parallel()

Expand Down Expand Up @@ -1127,3 +1130,62 @@ func getTransactionRoutesConfig() config.ApiRoutesConfig {
},
}
}

func testRecursiveRelayedV3(url string) func(t *testing.T) {
return func(t *testing.T) {
t.Parallel()

facade := &mock.FacadeStub{
CreateTransactionHandler: func(txArgs *external.ArgsCreateTransaction) (*dataTx.Transaction, []byte, error) {
txHash, _ := hex.DecodeString(hexTxHash)
return nil, txHash, nil
},
SendBulkTransactionsHandler: func(txs []*dataTx.Transaction) (u uint64, err error) {
return 1, nil
},
ValidateTransactionHandler: func(tx *dataTx.Transaction) error {
return nil
},
}

userTx1 := fmt.Sprintf(`{"nonce": %d, "sender":"%s", "receiver":"%s", "value":"%s", "signature":"%s"}`,
nonce,
sender,
receiver,
value,
signature,
)
userTx2 := fmt.Sprintf(`{"nonce": %d, "sender":"%s", "receiver":"%s", "value":"%s", "signature":"%s", "innerTransactions":[%s]}`,
nonce,
sender,
receiver,
value,
signature,
userTx1,
)
tx := fmt.Sprintf(`{"nonce": %d, "sender":"%s", "receiver":"%s", "value":"%s", "signature":"%s", "innerTransactions":[%s]}`,
nonce,
sender,
receiver,
value,
signature,
userTx2,
)

transactionGroup, err := groups.NewTransactionGroup(facade)
require.NoError(t, err)

ws := startWebServer(transactionGroup, "transaction", getTransactionRoutesConfig())

req, _ := http.NewRequest("POST", url, bytes.NewBuffer([]byte(tx)))
resp := httptest.NewRecorder()
ws.ServeHTTP(resp, req)

txResp := shared.GenericAPIResponse{}
loadResponse(resp.Body, &txResp)

assert.Equal(t, http.StatusBadRequest, resp.Code)
assert.True(t, strings.Contains(txResp.Error, apiErrors.ErrRecursiveRelayedTxIsNotAllowed.Error()))
assert.Empty(t, txResp.Data)
}
}
3 changes: 3 additions & 0 deletions cmd/node/config/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -951,3 +951,6 @@
# MaxRoundsOfInactivityAccepted defines the number of rounds missed by a main or higher level backup machine before
# the current machine will take over and propose/sign blocks. Used in both single-key and multi-key modes.
MaxRoundsOfInactivityAccepted = 3

[RelayedTransactionConfig]
MaxTransactionsAllowed = 50
12 changes: 12 additions & 0 deletions cmd/node/config/enableEpochs.toml
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,18 @@
# CryptoOpcodesV2EnableEpoch represents the epoch when BLSMultiSig, Secp256r1 and other opcodes are enabled
CryptoOpcodesV2EnableEpoch = 4

# UnjailCleanupEnableEpoch represents the epoch when the cleanup of the unjailed nodes is enabled
UnJailCleanupEnableEpoch = 4

# RelayedTransactionsV3EnableEpoch represents the epoch when the relayed transactions V3 will be enabled
RelayedTransactionsV3EnableEpoch = 7

# FixRelayedBaseCostEnableEpoch represents the epoch when the fix for relayed base cost will be enabled
FixRelayedBaseCostEnableEpoch = 7

# MultiESDTNFTTransferAndExecuteByUserEnableEpoch represents the epoch when enshrined sovereign cross chain opcodes are enabled
MultiESDTNFTTransferAndExecuteByUserEnableEpoch = 9999999

# BLSMultiSignerEnableEpoch represents the activation epoch for different types of BLS multi-signers
BLSMultiSignerEnableEpoch = [
{ EnableEpoch = 0, Type = "no-KOSK" },
Expand Down
Loading