Skip to content

Commit 65a3c98

Browse files
matthiasmattCopilotUnique-Divinecoderabbitai[bot]k-yang
authored
feat(evm): add "eth.evm.v1.MsgConvertEvmToCoin" tx for ERC20 to bank coin conversions with a non-Ethereum transaction (#2345)
* feat: add convertEvmToCoin * chore: changelog * feat: revert gitignore changes * Update x/evm/keeper/msg_server.go Co-authored-by: Copilot <[email protected]> * Revert "Update x/evm/keeper/msg_server.go" This reverts commit 335862b. * fix: lint * refactor: lint, fmt, and name consistency with FunToken type * docs(CHANGELOG): slightly more descriptive changelog entry * fix: revert version update to golangci-lint back to v6 * docs(changelog): typos in URLs * fix(evm): remove ERC20 approval requirement by switching from transferFrom to transfer This change simplifies the `ConvertEvmToCoin` flow for ERC20-originated tokens by replacing the use of `transferFrom` with `transfer`. As a result, token approvals are no longer needed prior to conversion. * Update CHANGELOG.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(evm): add CanonicalWnibi to the evm params * feat(evm): add canonical WNIBI logic and get tests passing * finish adding the WNIBI case * add a way to update the params with x/sudo * merge changes * fix(golangci-lint): use v8 * test(tokenfactory-cli): impl CLI tests * chore: changelog * fix: include template functinoality in tokenfactory cli * impl upgrade handler * wip!: impl WNIBI integration for FunToken conversion tx msgs * return to working state with all passing tests and improved robustness * feat: complete the feature with test suites * linter fixes and more tests * refactor: simplify, add docs, and test event emission * docs(CHANGELOG): fix entry for current PR * linter and typo fix * fix: changes from PR comments * refactor: address more PR comments from coderabbitai * fix(genesis-test): bug related to mutation of test deps --------- Co-authored-by: Copilot <[email protected]> Co-authored-by: Unique Divine <[email protected]> Co-authored-by: Unique Divine <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Kevin Yang <[email protected]>
1 parent 828bddf commit 65a3c98

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+6641
-1325
lines changed

.gitignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,6 @@ web_modules/
115115
# Yarn Integrity file
116116
.yarn-integrity
117117

118-
119-
120118
# dotenv environment variable files
121119
.env
122120
.env.development.local

CHANGELOG.md

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
3939
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
4040

4141
## [Unreleased]
42-
<!--
43-
NOTE: The brackets around the word "Unreleased" are required to pass the [CI test
42+
43+
<!--
44+
NOTE: The brackets around the word "Unreleased" are required to pass the CI test
4445
that checks if we updated the changelog. This is a convention from the [keep a
45-
changelog format](https://keepachangelog.com/en/1.0.0/).
46+
changelog format](https://keepachangelog.com/en/1.0.0/).
4647
See https://github.com/dangoslen/changelog-enforcer.
4748
-->
4849

50+
- [#2345](https://github.com/NibiruChain/nibiru/pull/2345) - feat(evm): add
51+
"eth.evm.v1.MsgConvertEvmToCoin" tx for ERC20 to bank coin conversions with a
52+
non-Ethereum transaction. This change introduces new message types, CLI commands,
53+
and keeper logic to cover both directions of conversion, including special-case
54+
handling for NIBI via WNIBI.
4955
- [#2353](https://github.com/NibiruChain/nibiru/pull/2353) - refactor(oracle): remove dead code from asset registry
5056
- [#2371](https://github.com/NibiruChain/nibiru/pull/2371) - feat(evm): fix UnmarshalJSON to accept ASCII hex strings
5157
- [#2372](https://github.com/NibiruChain/nibiru/pull/2372) - feat(tokenfactory-cli): add CLI commands for set denom functions
@@ -57,17 +63,18 @@ See https://github.com/dangoslen/changelog-enforcer.
5763
## [v2.6.0](https://github.com/NibiruChain/nibiru/releases/tag/v2.6.0) - 2025-08-05
5864

5965
- [#2331](https://github.com/NibiruChain/nibiru/pull/2331) - test(evm-e2e): WNIBI tests for deposit, transfer and total supply
60-
- [#2334](https://gittub.com/NibiruChain/nibiru/pull/2334) - feat(evm-embeds): Publish new version for `@nibiruchain/[email protected]`, which updates `NibiruOracleChainLinkLike.sol` to have additional methods used by Aave.
66+
- [#2334](https://github.com/NibiruChain/nibiru/pull/2334) - feat(evm-embeds): Publish new version for `@nibiruchain/[email protected]`, which updates `NibiruOracleChainLinkLike.sol` to have additional methods used by Aave.
6167
- [#2340](https://github.com/NibiruChain/nibiru/pull/2340) - fix: evm indexer proper parsing of the start block
62-
- [#2344](https://gittub.com/NibiruChain/nibiru/pull/23344) - feat(evm): Add some evm messages into the evm codec.
63-
- [#2346](https://gittub.com/NibiruChain/nibiru/pull/2346) - fix(buf-gen-rs): improve Rust proto binding generation script robustness and get it to work with a forked Cosmos-SDK dependency and exit correctly on failure
68+
- [#2344](https://github.com/NibiruChain/nibiru/pull/2344) - feat(evm): Add some evm messages into the evm codec.
69+
- [#2346](https://github.com/NibiruChain/nibiru/pull/2346) - fix(buf-gen-rs): improve Rust proto binding generation script robustness and get it to work with a forked Cosmos-SDK dependency and exit correctly on failure
6470
- [#2348](https://github.com/NibiruChain/nibiru/pull/2348) - fix(oracle): max expiration a label rather than an invalidation for additional query liveness
6571
- [#2350](https://github.com/NibiruChain/nibiru/pull/2350) - fix(simapp): sim tests with empty validator set panic
6672
- [#2352](https://github.com/NibiruChain/nibiru/pull/2352) - chore(token-registry): Add bank coin versions of USDC and USDT from Stargate and LayerZero, and update ErisEvm.sol to fix redeem
6773
- [#2354](https://github.com/NibiruChain/nibiru/pull/2354) - chore: linter upgrade to v2
6874
- [#2357](https://github.com/NibiruChain/nibiru/pull/2357) - fix: proper statedb isolation in nibiru bank_extension
6975

7076
### Dependencies
77+
7178
- Bump `form-data` from 4.0.1 to 4.0.4 ([#2347](https://github.com/NibiruChain/nibiru/pull/2347))
7279
- Bump `golang.org/x/oauth2` from 0.16.0 to 0.27.0 ([#2342](https://github.com/NibiruChain/nibiru/pull/2342))
7380
- Bump `undici` from 5.28.5 to 5.29.0 ([#2310](https://github.com/NibiruChain/nibiru/pull/2310))

0 commit comments

Comments
 (0)