-
Notifications
You must be signed in to change notification settings - Fork 94
tests: evm tools compatibility #287
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
66aa894
to
acd05af
Compare
aa4b7bc
to
abec6e8
Compare
6e590a1
to
eeb6cff
Compare
df6969d
to
2eb1207
Compare
f6641fa
to
30d7d15
Compare
8bca57f
to
893d36a
Compare
d917f8a
to
9a2f4f0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with some trivial comments
const { expect } = require("chai"); | ||
const tokenArtifact = require("./contractABI/TokenExample.json"); | ||
|
||
describe("Web3.js Compatibility Test", function () { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is file name typo
web3js_compata
bility.test.js -> web3js_compatibi
lity.test.js
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cloudgray
Applied in def7f8b
CUSTOM_RPC=http://127.0.0.1:8545 | ||
# private key for tx broadcast (PUBLIC TEST KEY - NOT A SECRET) | ||
# Split to avoid false positive secret detection | ||
PRIVATE_KEY_PART1=0x8a36c69d940a92fcea94b36d0f2928c7a0ee19a90 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think committing .env is not good idea altough the secrets in it is actually already written down in other scripts.
I think there are many alternatives.
For example, we can use .toml file instead, empty secrets, let developers set their secrets, or in case of github-ci job, we can use secrets set in github repo config.
If it is thought that it will take bunch of time, how about create issue instead and revisit?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cloudgray
I understand your concern, but in this case the .env
file is only used for testing, and we have made it clear in the comments what it contains. The usual reason .env
is considered a bad practice is when it contains sensitive production values, which is not the case here.
Since replacing it would require extra effort without clear benefit, I’m not sure I agree with making this change for this particular scenario.
…patibility # Conflicts: # .github/workflows/super-linter.yml # .gitmodules
@almk-dev |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@zsystm Could you take a look at the TestAllowedTxSize
failure?
Solution: - change address conversion in middleware fix build fix lint change erc20 callback Squashed commit of the following: commit d8e3baa Merge: f6b7337 ec57b96 Author: yihuang <[email protected]> Date: Mon Sep 1 14:43:35 2025 +0800 Merge branch 'main' into ibc-hex-address commit f6b7337 Author: yihuang <[email protected]> Date: Mon Sep 1 14:43:21 2025 +0800 cleanup commit 3f331c3 Author: yihuang <[email protected]> Date: Mon Sep 1 14:41:31 2025 +0800 fix GetTransferSenderRecipient commit ec57b96 Author: Antonio Pitasi <[email protected]> Date: Fri Aug 29 22:23:47 2025 +0200 fix: CometBlockResultByNumber when height is 0 (cosmos#416) * fix TendermintBlockResultByNumber when height is 0 Signed-off-by: Antonio Pitasi <[email protected]> * add changelog entry Signed-off-by: Antonio Pitasi <[email protected]> --------- Signed-off-by: Antonio Pitasi <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> commit 4be8aba Author: yihuang <[email protected]> Date: Sat Aug 30 04:22:35 2025 +0800 feat: AddPrecompileFn on stateObject not needed (cosmos#511) * Problem: AddPrecompileFn on stateObject not needed what is does is only add a journal entry, not related to the state object at all. Solution: - remove the method, move the logic to statedb directly. * remove unused parameter * changelog --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit 2a0eb3a Author: Vlad J <[email protected]> Date: Fri Aug 29 16:18:45 2025 -0400 perf: optimize gas estimation (cosmos#538) * Fix error semantics * changelog * Add benchmark (cosmos#542) Co-authored-by: Alex | Interchain Labs <[email protected]> --------- Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Eric Warehime <[email protected]> commit af53a0f Author: Vlad J <[email protected]> Date: Fri Aug 29 15:09:36 2025 -0400 docs(migration): boilerplate v0.5.0 migration docs with mempool migra… (cosmos#540) * docs(migration): boilerplate v0.5.0 migration docs with mempool migration * shorten line * Update docs/migrations/v0.4.0_to_v0.5.0_UNRELEASED.md --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit 2fff19e Author: Antonio Pitasi <[email protected]> Date: Fri Aug 29 20:58:21 2025 +0200 fix(evmd): remove pebble replace directive (cosmos#574) commit 5ffe3cc Author: mmsqe <[email protected]> Date: Sat Aug 30 02:52:41 2025 +0800 chore: check if mempool is not nil before accepting nonce gap error tx (cosmos#572) commit ce05fc6 Author: yihuang <[email protected]> Date: Fri Aug 29 10:35:22 2025 +0800 change erc20 callback commit 9d2c924 Author: yihuang <[email protected]> Date: Fri Aug 29 10:26:25 2025 +0800 fix lint commit abe2870 Author: yihuang <[email protected]> Date: Fri Aug 29 10:17:12 2025 +0800 fix build commit e12e02d Author: yihuang <[email protected]> Date: Fri Aug 29 10:09:52 2025 +0800 Problem: ibc transfer don't support hex address Solution: - change address conversion in middleware commit 3e37931 Author: Tyler <[email protected]> Date: Wed Aug 27 21:30:00 2025 -0700 add pr title job (cosmos#541) commit 83ae83d Author: Tyler <[email protected]> Date: Wed Aug 27 16:25:29 2025 -0700 docs: update contrib guide (cosmos#539) * update contrib guide * fix number commit 0032812 Author: Abdul Malek <[email protected]> Date: Wed Aug 27 11:32:19 2025 -0400 fix: allow mempool interrupt while it is still ongoing (cosmos#495) * add context cancel * simplify channel cases * add changelog * revert config change * add minimal change set for sigint * rename * offload server shutdown go goroutine * remove goroutine in favor of timeout * use short timeout commit 68436ec Author: mmsqe <[email protected]> Date: Wed Aug 27 23:07:02 2025 +0800 fix: allow value with slashes when query token_pairs (cosmos#509) * chore: allow value with slashes when query token_pairs * add doc --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit bcc17d4 Author: zchn <[email protected]> Date: Tue Aug 26 14:40:46 2025 -0400 refactor: replace TestEncodingConfig with production Config (cosmos#513) * refactor: replace TestEncodingConfig with production EncodingConfig Replace the usage of sdktestutil.TestEncodingConfig with a proper production-ready EncodingConfig struct. This removes the dependency on test utilities in production code while maintaining full compatibility. Changes: - Define custom EncodingConfig struct with same fields as TestEncodingConfig - Remove import of cosmos-sdk/types/module/testutil - Update MakeConfig return type to use the new production struct This improves code quality by avoiding test dependencies in production code. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]> * chore: fix golangci-lint errors - Fix import ordering (gci) - Rename EncodingConfig to Config to avoid stuttering (revive) The type name change from EncodingConfig to Config addresses the lint warning about stuttering (encoding.EncodingConfig). Since the struct is only used as a return value from MakeConfig(), this change maintains backward compatibility. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]> * test: update ledger tests to use encoding.Config Update the ledger test files to use the new encoding.Config type instead of sdktestutil.TestEncodingConfig, following the changes made to the encoding package. Changes: - Update encCfg variable type from TestEncodingConfig to Config - Update NewKeyringAndCtxs parameter type to use Config - Add encoding import to evmosd_suite_test.go - Remove unused sdktestutil import 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]> * docs: add CHANGELOG entry for encoding config refactor Add CHANGELOG.md entry documenting the replacement of TestEncodingConfig with production EncodingConfig in PR cosmos#513. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]> --------- Co-authored-by: Kevin Kz <[email protected]> Co-authored-by: Claude <[email protected]> commit 750d77d Author: mmsqe <[email protected]> Date: Tue Aug 26 02:23:56 2025 +0800 chore: cleanup deprecated BalanceChangeEntry (cosmos#506) * chore: align balance change reason for tracing for more info, https://github.com/ethereum/go-ethereum/blob/v1.16.2/core/evm.go#L143 * cleanup deprecated BalanceChangeEntry for more info, https://github.com/cosmos/evm/pull/201/files * Revert "chore: align balance change reason for tracing" This reverts commit 07a628c. commit 2d3df2b Author: Tyler <[email protected]> Date: Fri Aug 22 14:12:27 2025 -0700 ci: workflow fails when feat, fix, or refactor PRs do not have changelog entry (cosmos#499) * attempt fix * test * read granularity * remove all conditions * default af * some more * try this * making a change * ok this should make it pass * and if i change it back it should fail * remove all go code cahnges to see if wf passes * re adding go code changes should trigger it * only run on specific types of PRs * an update * revert that * when its edited too * revert go code change commit e01cc50 Author: Vlad J <[email protected]> Date: Fri Aug 22 16:37:40 2025 -0400 (chore):Simplify Mempool Config (cosmos#496) * refactor mempool initialization to accept configs instead of objects * clean * add changelog commit 48e3c83 Author: Tyler <[email protected]> Date: Fri Aug 22 13:35:52 2025 -0700 test: v0.4.1 -> main upgrade test (cosmos#498) * wip upgrade test * upgrade test complete * make script * fix the order * remove that * fixes * fetch tags commit 03083a8 Author: Abdul Malek <[email protected]> Date: Thu Aug 21 13:14:59 2025 -0400 fix: duplicate case switch to avoid empty execution block (cosmos#492) * duplicate switch * add changelog commit 4d93f2d Author: Abdul Malek <[email protected]> Date: Thu Aug 21 11:37:31 2025 -0400 feature: Add eth_createAccessList method and implementation (cosmos#346) * apply 3eb2135 * apply 4f9b8c2 * apply 0e7fd50 * apply 5cfe96d * apply 0e7fd50: fix lint workflow * apply 679305d * Fix middleware test * Format * apply 9fae984: fix conflicts * consolidate diverging test suite structures * apply 9fae984: fix conflicts * consolidate diverging test suite structures * apply b9a4d41 * apply 96ad38f * fix lint * apply b9a4d41 * apply 96ad38f * apply 578b346 * apply fd7badc * apply f7a3922 * apply 0e511d3 * apply 09e1895 * apply fb7e407 * apply 8cd184f * apply 9b96d1f * apply 029ed3b * apply e6fe094 * apply 76d8d10 * apply 0517dcf * apply af6f8d4 * apply 17cb0d5 * apply cb64292 * apply cbae613 * apply e57a44e * apply 66dd661 * apply 16ec2d0 * apply ec1a928 * apply 058eb6d * apply 82a7981 * apply 71d26cf * apply 4c27407 * apply bda7ad0 * apply bb811f4 * apply 6644e35 * apply 8d21baf * apply ebcaefa * apply 4913831 * apply 76819ba * apply cd9cd1a * apply 60a6cd2 * apply 2518c1b * apply bb9d02e * apply 5e7359e * apply a8112f4 * apply 388b5c0 * apply 727407e * apply a5ddd15 * apply 03ede6c * apply 9ad7d66 * apply e921750 * apply 17c65a7 * apply 9ddd976 * apply cffad65 * apply 6085578 * apply 099f44e * apply 2934281 * apply f9ca3ea * apply b826e3a * apply 5024129 * apply bfa2f05 * apply fb20472 * apply 4b0d478 * apply b065764 * apply ebc4b6c * apply 0f22f9f * clean up gh workflows * add-test-chain-id * pointer to precise bank keeper * cover all * apply balance handler patch * fix lint * fix solidity test * add evmd tests fix * add omitted fractional balance clear * fix lint * clean up panic message * try 16 core depot * try 8 core * Add debug flags to init-node.sh * More logging * Fix denom * Remove logging additions * default runner * update hardhat config * fix * re-opening branch to merge into main * add solidity to push group * regen contracts and fix solidity group * use default runner for solidity (again) * rebase and add stubs * add trace call with accesslist tracer config * fix lint: * conform to auto registration * revert tracer logic * fix signatures * fix nil pointer issues * rev local node pruning settings * remove custom pruning settings * rename var to be clearer * fix typo * remove unsigned tx logic from tests * group vars * add debug logs * update test pointer * fix nil gas * clean up traceTx conditional handling * fix vmerr * fix lint * add debug logs * add error and info logs * add test suite with actual backend mock * lint: add helper marker * standardize vars * remove unnecessary flag in run json compat * add back to exclusion * add godocs * add permalink * clarify auth checks * add changelog --------- Co-authored-by: Vlad J <[email protected]> Co-authored-by: Eric Warehime <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Aditya <[email protected]> Co-authored-by: Haber <[email protected]> Co-authored-by: Hyunwoo Lee <[email protected]> commit 642c8e9 Author: mmsqe <[email protected]> Date: Thu Aug 21 22:37:32 2025 +0800 fix: notify new block for mempool in time to avoid insufficient funds error (cosmos#471) * fix: avoid insufficient funds error when fund and send tx within same block get SpendableCoin from sdk ctx to reflect uncommitted balance change * wrong hash * fix test * cleanup doc * notify * revert * cleanup * doc * unsubscribe * lint * cleanup * align shutdown timeout to avoid stuck on closing JSON-RPC * cleanup * Apply suggestions from code review * Apply suggestions from code review * lint * lint --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit 2cf6593 Author: Facundo Medica <[email protected]> Date: Thu Aug 21 15:48:37 2025 +0200 feat: allow PostTxProcessing to run on failures and persist data (cosmos#479) * feat: allow PostProcessingTx to run on failures and persist data * linf fix * add check for hooks --------- Co-authored-by: Vlad J <[email protected]> commit 1f22f19 Author: yihuang <[email protected]> Date: Thu Aug 21 21:46:24 2025 +0800 Problem: IsStorageEmpty is not implemented (cosmos#490) * Problem: IsStorageEmpty is not implemented Closes: cosmos#486 * update deps commit 3991c2c Author: Haber <[email protected]> Date: Thu Aug 21 03:43:08 2025 +0900 tests: add revert error e2e tests for contract and precompile calls (cosmos#476) * update launch script path & remove duplicate We should use only one launch script. Managing both is extra un-necessary overhead * chore: add private keys info in local_node.sh * add bech32 and bank e2e tests * add undelegate test * faster local node and udpate delegate test * add create validator tc * update delegate tc include event checking also * update test codes added event checking to undelegate tc receipt has hash field instead of transactionHash * chore: remove un-used variable * add edit validator tc * add cancel unbonding tc * chore: format test files * add redelegate tc * skip gas estimation for faster tests * add redelegations query test * chore: refactor variable names * chore: change filename * add validators query test and fix gov interface * add set withdraw address tc * order test sequences and add withdraw delegator reward tc * add claim rewards tc * add withdraw validator commission * add fund community pool tc * add deposit validator rewards pool tc * add validator queries tc * chore: unify convention * add erc20 tc * update local node script it should contains every precompiles by default * fix slashing query and add e2e tests for it * fix: decode bech32 consensus address before converting to bytes The consensus address was previously used in its bech32-encoded form (a 52-character string), which is incorrect. This led to attempts to interpret a bech32 string directly as a 20-byte address, resulting in invalid conversions and data loss. This fix ensures the bech32 consensus address is properly decoded into its original 20-byte form before further processing, preserving the correct address representation expected in EVM-compatible byte format. * add gov tc * add more tcs to gov precompile (should fix cancel) * fix cancel proposal tc * add p256 tc * remove un-used variables * add werc20 tc * more timeout and verbose log * fix local_node.sh * add edgecase test for staking precompile and lint local node script * revert solidity test script change * chore: trim comments * p256 happy case * refactoring * refactor: make findEvent as common * check delegation shares and balance also * add checking user balance for withdraw delegator reward test * add checking user balance for claim rewards tc * strict balance check * add user balance check for fund community pool tc * add user balance check for deposit validator rewards pool tc * should use owner, not contract address itself * add event checks for erc20 precompile tc * add balance checks for werc20 tc * add balance check for gov deposit tc * add balance check for gov cancel proposal tc * add revert e2e test cases * lint: unused variable * chore(tests): set default evm chain id - 262144 * WIP: test: enhance revert test * WIP: test: enhance revert test * WIP: test: enhance revert test * test: enhance revert test * chore(tests): refine code * chore: update changelog * chore: add semi-colon --------- Co-authored-by: zsystm <[email protected]> Co-authored-by: Vlad J <[email protected]> Co-authored-by: Hyunwoo Lee <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> commit befde4f Author: LEE JUNSEO <[email protected]> Date: Thu Aug 21 01:25:25 2025 +0900 feat: Delete EVM instance in AnteHandler (cosmos#352) * test: adjusts GasTipCap to equal GasFeeCap when it exceeds the maximum fee cap * ensures adequate fees for bank msg send * Optimize CanTransfer AnteHandler * refactor(antehandler): remove stateDB allocation * chore: replace GlobalEVMMempool by passing to JSONRPC on initiate (cosmos#467) * chore: ensure SetGlobalEVMMempool is thread-safe and only set once keep singleton behavior on concurrent initialization * doc * keep reset * pass in mempool * cleanup --------- Co-authored-by: Vlad J <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> * Problem: eip-2935 is not implemented (cosmos#407) * Problem: eip-2935 is not implemented Solution: - adapt the implementation from geth * change BLOCKHASH opcode to query contract storage * commit statedb * fix panic * temp * just emulate the contract behavior with native code * fix test * fix lint * fix lint * revert unneeded changes * fix test * revert * only set contract storage if it's deployed * fix build * add history serve window parameter * cleanup * fix lint --------- Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Vlad J <[email protected]> * fix : EVMKeeper GetBalance missed when version upgrades * add CHANGELOG --------- Co-authored-by: mmsqe <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Vlad J <[email protected]> Co-authored-by: yihuang <[email protected]> commit 7451d9b Author: Alex | Interchain Labs <[email protected]> Date: Wed Aug 20 11:37:26 2025 -0400 set-up (cosmos#491) commit 8903f9d Author: yoosah <[email protected]> Date: Wed Aug 20 23:20:55 2025 +0900 refactor: decouple keeper using interface on precompile (cosmos#477) * refactor: decouple keeper using interface on precompile - Define a set of keeper interfaces in precompiles/common/interfaces.go that specify the exact methods required by the precompiles. - Update all precompile constructors and internal structs to use these new interfaces. - Modifie the precompile assembly in `evmd/precompiles.go` to inject the concrete `MsgServer` and `Querier` implementations, which satisfy the required interfaces. - Removed unnecessary keeper dependencies from the function signatures of several precompiles * docs: add changelog commit f164197 Author: yihuang <[email protected]> Date: Wed Aug 20 09:00:09 2025 +0800 Problem: eip-2935 is not implemented (cosmos#407) * Problem: eip-2935 is not implemented Solution: - adapt the implementation from geth * change BLOCKHASH opcode to query contract storage * commit statedb * fix panic * temp * just emulate the contract behavior with native code * fix test * fix lint * fix lint * revert unneeded changes * fix test * revert * only set contract storage if it's deployed * fix build * add history serve window parameter * cleanup * fix lint --------- Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Vlad J <[email protected]> commit aa9a834 Author: mmsqe <[email protected]> Date: Wed Aug 20 05:48:45 2025 +0800 chore: replace GlobalEVMMempool by passing to JSONRPC on initiate (cosmos#467) * chore: ensure SetGlobalEVMMempool is thread-safe and only set once keep singleton behavior on concurrent initialization * doc * keep reset * pass in mempool * cleanup --------- Co-authored-by: Vlad J <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> commit dda0fb1 Author: aljo242 <[email protected]> Date: Tue Aug 19 17:04:01 2025 -0400 add thanks commit a9cb401 Author: Cordt Hanson <[email protected]> Date: Tue Aug 19 14:17:19 2025 -0600 add erc20 migration guide (cosmos#485) commit 1d8b9e1 Author: Sujong Lee <[email protected]> Date: Wed Aug 20 02:30:07 2025 +0900 feat: remove allow-unprotected-txs(non eip-155) from x/vm params (cosmos#415) * feat: remove allow-unprotected-txs(non eip-155) from x/vm params * fix: build --------- Co-authored-by: Vlad J <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> commit 47b43b4 Author: Abdul Malek <[email protected]> Date: Tue Aug 19 13:18:44 2025 -0400 add comments (cosmos#489) commit 144922a Author: Cordt Hanson <[email protected]> Date: Tue Aug 19 08:28:41 2025 -0600 revert auto-fix for markdown linting (cosmos#483) commit 7dc893d Author: mmsqe <[email protected]> Date: Tue Aug 19 03:51:14 2025 +0800 fix: add pagination flags to token-pairs query (cosmos#468) * fix: add pagination flags to token-pairs query * doc --------- Co-authored-by: Vlad J <[email protected]> commit 909c8e2 Author: Vlad J <[email protected]> Date: Mon Aug 18 15:40:06 2025 -0400 (docs):Add SetClientCtx instructions to migration guide (cosmos#481) * fix annoying md lints * add setclientctx instructions w * Auto-fix markdown lint issues * improve the look of the comments --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit 29c1fac Author: Haber <[email protected]> Date: Tue Aug 19 03:57:24 2025 +0900 fix: precisebank & werc20 precompile (cosmos#457) * feat(x/precisebank): add FracionalBalanceChange event * feat(precmopile/common): Add FractionalBalanceChangeEvent to balanceHandler * feat(precompilse): apply changed balance handler * fix(precompiles/common): balance handler logic * test(precompiles): apply changed balance handler to evmd & integration test suite * test(precompiles/werc20): fix integration test * test(x/precisebank): fix integration tests * test(precompiles/werc20): fix integration tests * chore(x/precisebank): modify method name * chore: fix lint --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit ab1cd0c Author: Haber <[email protected]> Date: Tue Aug 19 03:15:57 2025 +0900 test(jsonrpc): add jsonrpc compatibility test (cosmos#419) * test(rpc-compat): add test simulator * refactor(tests): jsonrpc test * test(jsonprc): refactor test suite * test(jsonrpc): refactor test suite * test(jsonrpc): refactor test suite * test(jsonrpc): add network start/stop scripts of evmd and geth * test(jsonrpc): fix api counting in report * test(jsonrpc): refactor result format * test(jsonrpc): refactor * test(jsonrpc): add state generator * test(jsonrpc): refactor simulator * test(jsonrpc): refactor * test(jsonrpc): setup geth dev mode * test(jsonrpc): clean unused code * test(jsonrpc): setup initial state * test(jsonrpc): add tx metadata for test * WIP: test(jsonrpc): fix some failing tests of eth_ apis * test(jsonrpc): fix eth test * WIP: test(jsonrpc): fix debug api test cases * test(jsonrpc): set pruning config as nothing for testing * test(jsonrpc): enhance debug testing * test(jsonrpc): fix net test case * chore: update working history * test(jsonrpc): skip personal apis * test(jsonrpc): add websocket api test * jsonrpc(test): fix personal apis * test(jsonrpc): add missing debug apis * test(jsonrpc): update working history * test(jsonrpc): fix eth_sign / eth_signTransaction test * test(jsonrpc): refactor simulator * test(jsonrpc): refactor simulator * test(jsonrpc): refactor simulator * test(jsonrpc): refactor simulator * test(jsonrpc): refactor simulator * test(jsonrpc): refactor simulator * test(jsonrpc): refactor simulator * test(jsonrpc): update working history * WIP: add type check between responses from evmd and geth * WIP: add type check between responses from evmd and geth * WIP: test(jsonrpc): add type check between responses from evmd and geth * test(jsonrpc): modify test * test(jsonrpc): add debug apis * test(jsonrpc): fix failing tests * test(jsonrpc): fix failing test * test(jsonrpc): fix test * test(jsonrpc): fix test * test(jsonrpc): remove unnecessary files * chore: add compatibility test github ci job * chore: update github-ci job * chore: fix jsonrpc-compatibility test githib-ci job * test(jsonrpc): refactor test suite * test(jsonrpc): refactor test suite * test(jsonrpc): refactor test suite * test(jsonrpc): refactor * test(jsonrpc): refactor test suite * test(jsonrpc): refactor test suite * test(jsonrpc): fix github-ci * test(jsonrpc): refactor test suite * fix github-ci * fix github-ci * fix github-ci * fix: github-ci * fix: github-ci * test(jsonrpc): add eth tests * WIP: chore: debugging github-ci failure * fix: github-ci * test(jsonrpc): add missing debug tests * fix github-ci * test(jsonrpc): add eth_pendingtransaction test * fix: github-ci * test(jsonrpc): add missing debug tests * Revert "test(jsonrpc): add missing debug tests" This reverts commit 790cce7. * Revert "fix: github-ci" This reverts commit b3a777a. * fix: github-ci * fix: github-ci * WIP: fix: github-ci * WIP: fix github0-ci * test(jsonrpc): refactor test suite * fix: github-ci * chore: add debug code for github-ci * chore: add debug code for github-ci * fix: github-ci * fix: github-ci * test(jsonrpc): refactor test suite * test(jsonrpc): fix github-ci * fix: github-ci * fix: github-ci * fix: github-ci * fix: github-ci * fix: github-ci * fix: github-ci * fix github-ci * test(jsonrpc): fix eth_getProof api * fix eth_getProof api * fix: github-ci * fix: github-ci * fix: github-ci * test(jsonrpc): fix api test * fix: github-ci * fix: github-ci * fix: github-ci * fix: github-ci * fix: github-ci * fix: github-ci * test(jsonrpc): modify test script * fix: github-ci * test(jsonrpc): refactor test suite * test(jsonrpc): refactor test suite * test(jsonrpc): fix websocket api tests * chore: update README.md for jsonrpc test * chore: remove binary file --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit b9bdbe6 Author: Haber <[email protected]> Date: Tue Aug 19 01:02:44 2025 +0900 chore: update contracts-compile script (cosmos#475) Co-authored-by: Alex | Interchain Labs <[email protected]> commit 810e9ef Author: mmsqe <[email protected]> Date: Mon Aug 18 23:07:19 2025 +0800 Problem: query decimals get reverted when Display doesn't match with DenomUnit for ibc token (cosmos#397) * Problem: query decimals get reverted when Display doesn't match with DenomUnit for ibc token * add test --------- Co-authored-by: Vlad J <[email protected]> commit 39ddca4 Author: Tyler <[email protected]> Date: Mon Aug 18 07:17:31 2025 -0700 feat: local_node.sh upgrades (cosmos#470) * upgrade script * some comments * allow mnemonics file input * fix script * add in the dev0-dev3s info --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit 6492ef5 Author: yihuang <[email protected]> Date: Mon Aug 18 22:16:35 2025 +0800 feat: re-use tx validation rules from go-ethereum (cosmos#286) * feat: re-use tx validation rules from go-ethereum * fix format * fix lint * add missing gas rules * fix test * fix build * don't check tx gas --------- Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Vlad J <[email protected]> commit 1bdd7d2 Author: mmsqe <[email protected]> Date: Mon Aug 18 22:16:09 2025 +0800 chore: cleanup deprecated increaseAllowance and decreaseAllowance (cosmos#472) non-standard methods have been removed after audit commit 204ff4e Author: Hyunwoo Lee <[email protected]> Date: Mon Aug 18 05:19:32 2025 +0900 tests: evm tools compatibility (cosmos#287) * add foundry uniswap v3 deploy test cases * add gitignore for foundry * exclude sol files in compatibility dir * add verbose flag to debug * fix script and ci yml * remove verbose tag * fix ci * add checking logic at testing script * shfmt ci-foundry-uniswap * bash lint * add foundry tc * clean deps * revert version * add tc for cast * lint * lint * add sdk viem tc * fix viem workflow * add web3 tc * add hardhat tc * lint * refactor: script and action file names * clean up * chore: fix typo at filename * fix typo and update chain-id * udpate chain id in tc --------- Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Abdul Malek <[email protected]> commit a259976 Author: Tyler <[email protected]> Date: Fri Aug 15 00:15:39 2025 -0700 fix rpc accessability (cosmos#469) commit 384ea4a Author: Alex | Interchain Labs <[email protected]> Date: Thu Aug 14 14:40:31 2025 -0400 retract (cosmos#464) commit dd448d2 Author: Alex | Interchain Labs <[email protected]> Date: Thu Aug 14 14:14:03 2025 -0400 update-mergify (cosmos#463) commit 41199a7 Author: Vlad J <[email protected]> Date: Thu Aug 14 13:19:52 2025 -0400 Mempool Readme (cosmos#462) * initial doc * add diagram and description * add transaction flow diagram * reorganizing * Auto-fix markdown lint issues * add links to tools and an example script link * Warning callout --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit ae319ac Author: Alex | Interchain Labs <[email protected]> Date: Thu Aug 14 12:53:27 2025 -0400 chore: update log package to support go v1.25 (cosmos#459) * update log package * cl commit 491b574 Author: Cordt Hanson <[email protected]> Date: Thu Aug 14 08:53:17 2025 -0600 fix solidity examples in precompile readmes (cosmos#458) commit e2930f6 Author: mmsqe <[email protected]> Date: Thu Aug 14 22:16:12 2025 +0800 fix: avoid nil pointer by checking error in gov precompile FromResponse (cosmos#442) * fix: avoid nil pointer by checking error in gov precompile FromResponse * doc * add test --------- Co-authored-by: Alex | Interchain Labs <[email protected]> commit 43f1521 Author: Alex | Interchain Labs <[email protected]> Date: Thu Aug 14 10:10:14 2025 -0400 chore: add migration guide (cosmos#448) * add guide * callout * Auto-fix markdown lint issues * fix-nit diff --git c/docs/migrations/v0.3.0_to_v0.4.0.md i/docs/migrations/v0.3.0_to_v0.4.0.md index 222b9e2..a5308d1 100644 --- c/docs/migrations/v0.3.0_to_v0.4.0.md +++ i/docs/migrations/v0.3.0_to_v0.4.0.md @@ -33,7 +33,7 @@ Bump the `cosmos/evm` dependency in `go.mod` and tidy modules: ### 1.2 Transitive bumps (observed in `go.sum`) -Check for minor dependency bumps such as minor bumps (e.g., `google.golang.org/protobuf`, `github.com/gofrs/flock`, `github.com/consensys/gnark-crypto`). Run the following commands: +Check for minor dependency bumps (e.g., `google.golang.org/protobuf`, `github.com/gofrs/flock`, `github.com/consensys/gnark-crypto`). Run the following commands: ```bash go mod tidy --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit 11e8be0 Author: mmsqe <[email protected]> Date: Thu Aug 14 22:05:13 2025 +0800 fix: cleanup unused cancel function in filter (cosmos#452) * fix: cleanup unused cancel function in filter * doc * test --------- Co-authored-by: Vlad J <[email protected]> commit eb60af8 Author: mmsqe <[email protected]> Date: Thu Aug 14 21:33:58 2025 +0800 fix: apply multi decode functions instead of string contains check in HexAddressFromBech32String (cosmos#454) * fix: apply multi decode functions instead of string contains check in HexAddressFromBech32String * align for account, validator, and consensus addresses like sdk * https://github.com/cosmos/cosmos-sdk/blob/release/v0.53.x/client/debug/main.go#L262 * test commit 6acac06 Author: Hyunwoo Lee <[email protected]> Date: Thu Aug 14 22:03:09 2025 +0900 feat: remove deprecated apis (cosmos#456) * remove deprecated apis (removed from geth) * add changelog * chore: fix link commit 99abc7f Author: Vlad J <[email protected]> Date: Wed Aug 13 16:15:44 2025 -0400 (feat):Appside Mempool (cosmos#387) * wip * wip: iterator * nil check * wip: selectby * add todo * pointer * pointer 2 * remove impl, type assertions * add txpool locally * change statedb types to interface * fix tests * scaffold app setup * Add initial tests to ExtMempool * real priority nonce mempool + fixes * improve test for wrong denom ordering * move initialization to mempool * ok * Nonce gap tx test * revert * bloom parsing dumb * redundant * ignore this dir for markdown linting * Cleanup + Test SelectBy * implement blockchain * update systemtest test tag * add subscription * fix tests * wiring and bug fixes and todos and etc * wip * fix * WIP on vlad/mempool * Auto stash before checking out "origin/vlad/mempool" * rpc no error * clean up logging * verification * Add broadcasting * add retries to tx results * feature: Add txpool namespace stubs ahead of app-side mempool implementation (cosmos#344) * add txpool implementation stubs * update interface * fix lint --------- Co-authored-by: Alex | Interchain Labs <[email protected]> * txpool endpoint * wip refactor * do not allow block 1 submission * fix some tests * fix more tests * fix last remaining evmd test * add second registry for testing * wip: integration tests * wip: functional tests time to add more test cases * fix tests and chain * demo ready todo: fix removals * fix removals (out of gas errors should be skipped) * add gas to config * attempt to fix flakes * strict equalities * FIXED FLAKES * reformat tests into original structure * nonce gap tests * add demo test and fix prev system case * remove done todos and the other mempool * add instructions to remove mempool * remove mocks * lint fixes * review test cases * add some more test cases * fix scripts * add more backoff for testing * remove logs from simplesends * fix systest CI * skip test for now see if main one works * Update .markdownlintignore Co-authored-by: Alex | Interchain Labs <[email protected]> * Update evmd/tests/integration/create_app.go Co-authored-by: Eric Warehime <[email protected]> * Refactor: Rename 'nonce' to 'accountNonce' in IncrementNonce function * refactor app.go imports * extract atest to constant * fix nonce name test * use actual release * evmd use release tag * refactor ctx -> getCtxCallback * rename errors2 and types2 to sdkerrors and sdktypes * group vars in mempool init * privatize newBlockchain * enhance mempool init readability on nil checks * move txPool checks to right after initialization * use errors.Is for nonce gap errors in rpc * group vars * Update tests/systemtests/.gitignore * refactor iterator to make it more readable * refactor iterator to make it more readable * rename blocked -> queued and runnable -> pending * explain some questionable naming choices * add some status constants * add logging * move custom endblocker to vm * fix rpc error compare * fix system tests * lints * fixed from main merge * rename mempool to experimental * Auto-fix markdown lint issues * we tidy * overflow comment * add changelog entry * Update evmd/app.go Co-authored-by: Hyunwoo Lee <[email protected]> * remove comment * initialize txpool unconditionally * sort by effective gas tips instead of fees on cosmos * lints * small test cleanup --------- Co-authored-by: Tyler <[email protected]> Co-authored-by: Alex | Interchain Labs <[email protected]> Co-authored-by: Abdul Malek <[email protected]> Co-authored-by: Eric Warehime <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Hyunwoo Lee <[email protected]> commit 20dea4b Author: Alex | Interchain Labs <[email protected]> Date: Wed Aug 13 14:14:22 2025 -0400 chore: move `evmd` ante options to `evm` lib (cosmos#443) * fix * move-to-lib * godoc * cl * Auto-fix markdown lint issues * bump for ci * bump for ci * fix * fix * fix --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> commit a6d5dea Author: mmsqe <[email protected]> Date: Wed Aug 13 22:52:35 2025 +0800 feat: enforce app creator returning application implement AppWithPendingTxStream in build time (cosmos#440) * feat: enforce app creator returning application implementing AppWithPendingTxStream in build time * update application interface and app creator wiring for EVM server integration * use cosmosevmserver.Application interface instead of servertypes.Application with assertion * add new Application interface and AppCreator type to support pending tx stream * add doc commit c5ca267 Author: mmsqe <[email protected]> Date: Wed Aug 13 22:48:56 2025 +0800 fix: align precompiles map with available static check (cosmos#441) * fix: align precompiles map with available static check for more info, https://github.com/cosmos/evm/blob/be2c215481ef1466328811d878675be75c90edf3/x/vm/keeper/static_precompiles.go#L46 * add doc fix GetTransferSenderRecipient cleanup
Description
Closes: #104
Test Coverage
Foundry
--slow
flag for now. Full batch deployment will be possible once app-side mempool is implemented — tracked in Scope App-Side Mempool #214.eth_chainId
,net_version
, etc.)totalSupply
,balanceOf
, etc.)*.t.sol
)Hardhat
totalSupply
,balanceOf
)SDK
Author Checklist
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.
I have...
main
branchReviewers Checklist
All items are required.
Please add a note if the item is not applicable
and please add your handle next to the items reviewed
if you only reviewed selected items.
I have...
Unreleased
section inCHANGELOG.md