Skip to content

chore: remove evm-core-ts and move it to ts-sdk#2423

Merged
Unique-Divine merged 1 commit intomainfrom
chore/remove-emv-core-ts
Nov 3, 2025
Merged

chore: remove evm-core-ts and move it to ts-sdk#2423
Unique-Divine merged 1 commit intomainfrom
chore/remove-emv-core-ts

Conversation

@cgilbe27
Copy link
Copy Markdown
Contributor

@cgilbe27 cgilbe27 commented Nov 3, 2025

Relates to NibiruChain/ts-sdk#414

The above must be merged first

@cgilbe27 cgilbe27 requested a review from a team as a code owner November 3, 2025 14:31
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Nov 3, 2025

📝 Walkthrough

Walkthrough

This PR deletes the entire evm-core-ts package, including configuration files, build automation, package metadata, TypeChain-generated contract bindings, precompile interface definitions, ethers.js helpers, and utility constants. All autogenerated contract types, factories, ABIs, and public API exports are removed.

Changes

Cohort / File(s) Change Summary
Configuration & Build Files
.gitignore, CHANGELOG.md, README.md, go.mod, justfile, package.json, prettier.config.js, tsconfig.json
Deleted project configuration, documentation, build automation, and TypeScript/NPM package metadata.
TypeChain Contract Interfaces
src/ethers/typechain/ChainLinkAggregatorV3Interface.ts, src/ethers/typechain/ERC20.ts, src/ethers/typechain/ERC20Minter.ts, src/ethers/typechain/ERC20MinterWithMetadataUpdates.ts, src/ethers/typechain/ErisEvm.ts, src/ethers/typechain/IFunToken.ts, src/ethers/typechain/INibiruEvm.ts, src/ethers/typechain/IOracle.ts, src/ethers/typechain/IWasm.ts, src/ethers/typechain/NibiruOracleChainLinkLike.ts, src/ethers/typechain/WNIBI.ts
Deleted autogenerated TypeChain contract binding interfaces with all typed methods, events, encoding/decoding helpers, and contract interaction surfaces.
TypeChain Factory Classes
src/ethers/typechain/factories/ChainLinkAggregatorV3Interface__factory.ts, src/ethers/typechain/factories/ERC20__factory.ts, src/ethers/typechain/factories/ERC20Minter__factory.ts, src/ethers/typechain/factories/ERC20MinterWithMetadataUpdates__factory.ts, src/ethers/typechain/factories/ErisEvm__factory.ts, src/ethers/typechain/factories/IFunToken__factory.ts, src/ethers/typechain/factories/INibiruEvm__factory.ts, src/ethers/typechain/factories/IOracle__factory.ts, src/ethers/typechain/factories/IWasm__factory.ts, src/ethers/typechain/factories/NibiruOracleChainLinkLike__factory.ts, src/ethers/typechain/factories/WNIBI__factory.ts
Deleted factory classes for contract instantiation with static abi, createInterface(), and connect() methods.
TypeChain Common Types & Exports
src/ethers/typechain/common.ts, src/ethers/typechain/index.ts, src/ethers/typechain/factories/index.ts
Deleted shared TypeChain typing utilities (TypedContractEvent, TypedContractMethod, typed listeners) and all re-exports of contract types and factories.
Precompile Definitions
src/precompile/funtoken.ts, src/precompile/oracle.ts, src/precompile/wasm.ts, src/precompile/precompile.ts, src/precompile/index.ts
Deleted precompile address constants and ABI definitions for FunToken, Oracle, and Wasm precompiles; removed HexAddr type.
Ethers Helpers & Constants
src/ethers/index.ts, src/const.ts, src/index.ts
Deleted ethers.js contract runner factories (wasmPrecompile, oraclePrecompile, funtokenPrecompile, chainlinkLike, etc.), address constants (ADDR_WNIBI, ADDR_ERIS_EVM, ERIS_CONST), and module re-exports.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20–30 minutes

Possibly related PRs

Suggested labels

x: evm

Suggested reviewers

  • Unique-Divine
  • k-yang
  • onikonychev

Poem

🐰 The typechain bindings fade to dust,
Precompiles packed away with trust,
Constants vanish, exports go,
A clean slate's all we need to know.

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description check ⚠️ Warning The pull request description is incomplete and lacks essential information required by the template. While it includes a reference to a related PR in ts-sdk (#414), it does not include an Abstract section, does not explain why this change is being made, does not provide a summary of changes, and does not describe the testing approach or rationale. The description only mentions that the related PR must be merged first but provides minimal context about the actual removal and migration. Expand the pull request description to include all sections from the template. Add an Abstract section explaining the purpose and scope of removing evm-core-ts, provide a clear Summary of Changes that outlines what is being removed and why, document the Testing Approach to ensure the migration is successful, and explain the rationale for this solution. Include details about the impact of these changes and confirmation that dependencies have been properly updated in the ts-sdk repository.
✅ Passed checks (1 passed)
Check name Status Explanation
Title check ✅ Passed The pull request title 'chore: remove evm-core-ts and move it to ts-sdk' accurately describes the primary change in the changeset. The summary clearly communicates that the evm-core-ts directory and its contents are being removed as part of a reorganization to consolidate the code in the ts-sdk repository. The title is specific, concise, and directly related to the main objective of the PR.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/remove-emv-core-ts

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4abe140 and ad8f96f.

⛔ Files ignored due to path filters (1)
  • evm-core-ts/bun.lock is excluded by !**/*.lock
📒 Files selected for processing (41)
  • evm-core-ts/.gitignore (0 hunks)
  • evm-core-ts/CHANGELOG.md (0 hunks)
  • evm-core-ts/README.md (0 hunks)
  • evm-core-ts/go.mod (0 hunks)
  • evm-core-ts/justfile (0 hunks)
  • evm-core-ts/package.json (0 hunks)
  • evm-core-ts/prettier.config.js (0 hunks)
  • evm-core-ts/src/const.ts (0 hunks)
  • evm-core-ts/src/ethers/index.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/ChainLinkAggregatorV3Interface.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/ERC20.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/ERC20Minter.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/ERC20MinterWithMetadataUpdates.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/ErisEvm.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/IFunToken.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/INibiruEvm.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/IOracle.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/IWasm.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/NibiruOracleChainLinkLike.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/WNIBI.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/common.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/ChainLinkAggregatorV3Interface__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/ERC20MinterWithMetadataUpdates__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/ERC20Minter__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/ERC20__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/ErisEvm__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/IFunToken__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/INibiruEvm__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/IOracle__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/IWasm__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/NibiruOracleChainLinkLike__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/WNIBI__factory.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/factories/index.ts (0 hunks)
  • evm-core-ts/src/ethers/typechain/index.ts (0 hunks)
  • evm-core-ts/src/index.ts (0 hunks)
  • evm-core-ts/src/precompile/funtoken.ts (0 hunks)
  • evm-core-ts/src/precompile/index.ts (0 hunks)
  • evm-core-ts/src/precompile/oracle.ts (0 hunks)
  • evm-core-ts/src/precompile/precompile.ts (0 hunks)
  • evm-core-ts/src/precompile/wasm.ts (0 hunks)
  • evm-core-ts/tsconfig.json (0 hunks)
💤 Files with no reviewable changes (41)
  • evm-core-ts/src/precompile/oracle.ts
  • evm-core-ts/src/precompile/index.ts
  • evm-core-ts/prettier.config.js
  • evm-core-ts/src/precompile/funtoken.ts
  • evm-core-ts/src/const.ts
  • evm-core-ts/src/precompile/wasm.ts
  • evm-core-ts/tsconfig.json
  • evm-core-ts/justfile
  • evm-core-ts/src/index.ts
  • evm-core-ts/src/precompile/precompile.ts
  • evm-core-ts/src/ethers/typechain/factories/ERC20Minter__factory.ts
  • evm-core-ts/src/ethers/typechain/factories/IFunToken__factory.ts
  • evm-core-ts/src/ethers/index.ts
  • evm-core-ts/src/ethers/typechain/factories/ERC20MinterWithMetadataUpdates__factory.ts
  • evm-core-ts/CHANGELOG.md
  • evm-core-ts/src/ethers/typechain/factories/index.ts
  • evm-core-ts/src/ethers/typechain/ERC20.ts
  • evm-core-ts/src/ethers/typechain/ChainLinkAggregatorV3Interface.ts
  • evm-core-ts/src/ethers/typechain/factories/WNIBI__factory.ts
  • evm-core-ts/package.json
  • evm-core-ts/src/ethers/typechain/factories/ErisEvm__factory.ts
  • evm-core-ts/src/ethers/typechain/factories/IWasm__factory.ts
  • evm-core-ts/src/ethers/typechain/factories/ERC20__factory.ts
  • evm-core-ts/src/ethers/typechain/IOracle.ts
  • evm-core-ts/README.md
  • evm-core-ts/src/ethers/typechain/index.ts
  • evm-core-ts/src/ethers/typechain/ErisEvm.ts
  • evm-core-ts/src/ethers/typechain/ERC20Minter.ts
  • evm-core-ts/src/ethers/typechain/factories/ChainLinkAggregatorV3Interface__factory.ts
  • evm-core-ts/src/ethers/typechain/IWasm.ts
  • evm-core-ts/src/ethers/typechain/NibiruOracleChainLinkLike.ts
  • evm-core-ts/.gitignore
  • evm-core-ts/go.mod
  • evm-core-ts/src/ethers/typechain/IFunToken.ts
  • evm-core-ts/src/ethers/typechain/WNIBI.ts
  • evm-core-ts/src/ethers/typechain/factories/IOracle__factory.ts
  • evm-core-ts/src/ethers/typechain/factories/NibiruOracleChainLinkLike__factory.ts
  • evm-core-ts/src/ethers/typechain/factories/INibiruEvm__factory.ts
  • evm-core-ts/src/ethers/typechain/ERC20MinterWithMetadataUpdates.ts
  • evm-core-ts/src/ethers/typechain/INibiruEvm.ts
  • evm-core-ts/src/ethers/typechain/common.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: e2e-evm

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request is a refactoring effort to remove the evm-core-ts package, which is being migrated to the ts-sdk repository. The changes exclusively involve the deletion of all files and subdirectories under evm-core-ts/. The deletions are comprehensive and align with the stated objective of the pull request. Since this PR only contains removals, there are no code changes to assess for quality or correctness. My approval is based on the understanding that the functionality has been successfully transferred and will be maintained in the ts-sdk repository as per the related PR.

@Unique-Divine Unique-Divine merged commit e1401f6 into main Nov 3, 2025
10 checks passed
@Unique-Divine Unique-Divine deleted the chore/remove-emv-core-ts branch November 3, 2025 17:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants