fix: Add HDWalletLive to CryptoLive, remove artificial native gate#373
Open
enitrat wants to merge 1 commit intoevmts:mainfrom
Open
fix: Add HDWalletLive to CryptoLive, remove artificial native gate#373enitrat wants to merge 1 commit intoevmts:mainfrom
enitrat wants to merge 1 commit intoevmts:mainfrom
Conversation
HDWallet uses @scure/bip32 (pure JS) but was incorrectly gated behind the /native entry point. Users were forced to use CryptoLiveNative for HD wallet derivation despite no native/FFI/WASM dependency. - Export HDWallet from voltaire-ts crypto/index.ts and wasm/index.ts - Import HDWallet from @tevm/voltaire/HDWallet instead of /native in HDWalletLive - Add HDWalletLive to CryptoLive layer - Export HDWalletLive from HDWallet module index - Remove CryptoLiveNative (now redundant) - Clean up misleading "native FFI" comments
|
@enitrat is attempting to deploy a commit to the evmts Team on Vercel. A member of the Team first needs to authorize it. |
Contributor
|
Hmm I'm the one who put it in native because it was causing me issues. I'll have to manually test this in myt other project before I can merge this |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@scure/bip32) but was incorrectly gated behind the/nativeentry pointCryptoLiveNativefromvoltaire-effect/nativefor HD wallet derivation despite zero native/FFI/WASM dependency"HDWallet uses native FFI modules"incrypto/index.tswas simply wrongChanges
HDWalletfromvoltaire-tscrypto index and wasm index (was commented out with misleading note)HDWalletLiveimport from@tevm/voltaire/nativeto@tevm/voltaire/HDWalletHDWalletLivetoCryptoLivelayer — users get HD wallet withEffect.provide(CryptoLive)HDWalletLivefromvoltaire-effect/crypto/HDWalletmoduleCryptoLiveNative(now redundant — was justCryptoLive+HDWalletLive)Justification
Every HDWallet function wraps
@scure/bip32— a pure JavaScript, audited BIP-32 implementation by Paul Miller. Evidence:fromSeed.js:1—import { HDKey } from "@scure/bip32"deriveChild.js— callskey.deriveChild(index)on@scure/bip32objectsThe
/nativeentry point exists for genuinely native code (Keccak256 via Zig FFI). HDWallet was lumped in there by mistake, forcing users into an unnecessary import path.Before / After
Test plan
tsc --noEmit)@scure/bip32backing