Skip to content

Bump JS Packages - #1642

Open
pr-bot-solana-mobile[bot] wants to merge 1 commit into
mainfrom
changeset-release/main
Open

pr-bot-solana-mobile[bot] wants to merge 1 commit into
mainfrom
changeset-release/main

Conversation

@pr-bot-solana-mobile

@pr-bot-solana-mobile pr-bot-solana-mobile Bot commented Aug 28, 2026 •

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@solana-mobile/mobile-wallet-adapter-protocol@2.4.0

Minor Changes

  • c258ef8: Declare react-native as an optional peer dependency.

    It was previously a required peer dependency, which npm 7 and later install automatically, so browser-only consumers were pulling the entire React Native toolchain into node_modules — roughly 32 MB of react-native itself, plus metro and the transitive advisories it carries — even though no browser code path imports it. React Native is reached only through the react-native export condition, so nothing about which code runs where has changed; only the manifest was wrong.

    React Native consumers are unaffected: they already depend on react-native directly, and an optional peer dependency resolves identically for them.

Patch Changes

  • e9f68c2: Support Solana v1 transactions.

    wallet-standard-mobile

    • The local wallet now advertises the supportedTransactionVersions the connected MWA wallet reports, instead of always ['legacy', 0]. The remote wallet already did this.

    • A wallet that reports 1 is now advertised as supporting v1 transactions. A wallet that reports only legacy is no longer advertised as supporting v0.

      mobile-wallet-adapter-protocol

    • supported_transaction_versions is typed with SolanaTransactionVersion from @solana/wallet-standard-features instead of TransactionVersion from @solana/web3.js, so it includes 1.

    • Requires @solana/wallet-standard-features ^1.5.0 (also bumped in wallet-standard-mobile and wallet-adapter-mobile).

    • Dropped the unused @solana/web3.js devDependency.

  • 784619b: Accept @solana/kit v8 alongside v7.

    mobile-wallet-adapter-protocol-kit widens its @solana/kit peer dependency and its @solana/transaction-messages / @solana/transactions dependencies to ^7.0.0 || ^8.0.0, and mobile-wallet-adapter-protocol widens its @solana/kit dependency the same way. Apps on kit 8 previously ended up with a duplicate kit 7 tree in node_modules (and a peer-dependency conflict on @solana/kit); with the widened ranges everything dedupes against the app's kit tree, whichever major it uses. Every kit API these packages touch is unchanged between v7 and v8, so no code changes were needed.

@solana-mobile/mobile-wallet-adapter-protocol-kit@2.4.0

Minor Changes

  • 1de01bd: Align the package version with @solana-mobile/mobile-wallet-adapter-protocol and @solana-mobile/mobile-wallet-adapter-protocol-web3js. The three protocol packages are now released together as a fixed group, so from this release onward they always share the same version number. This is a versioning change only; there are no code or API changes in this package beyond those listed separately.

Patch Changes

  • 784619b: Accept @solana/kit v8 alongside v7.

    mobile-wallet-adapter-protocol-kit widens its @solana/kit peer dependency and its @solana/transaction-messages / @solana/transactions dependencies to ^7.0.0 || ^8.0.0, and mobile-wallet-adapter-protocol widens its @solana/kit dependency the same way. Apps on kit 8 previously ended up with a duplicate kit 7 tree in node_modules (and a peer-dependency conflict on @solana/kit); with the widened ranges everything dedupes against the app's kit tree, whichever major it uses. Every kit API these packages touch is unchanged between v7 and v8, so no code changes were needed.

  • Updated dependencies [c258ef8]

  • Updated dependencies [e9f68c2]

  • Updated dependencies [784619b]

    • @solana-mobile/mobile-wallet-adapter-protocol@2.4.0

@solana-mobile/wallet-adapter-mobile@2.4.0

Minor Changes

  • c258ef8: Declare react-native and @react-native-async-storage/async-storage as optional peer dependencies, moving async-storage out of optionalDependencies and widening its accepted range to ^1.17.7 || ^2.0.0, and load async-storage lazily.

    react-native was a required peer dependency and async-storage sat in optionalDependencies, both of which package managers install by default, so browser-only consumers were pulling the entire React Native toolchain — including metro and the transitive advisories it carries — into node_modules. Both packages are reached only through the react-native export condition, so which code runs where is unchanged; a browser-only install no longer contains react-native, metro, or async-storage.

    Action required for React Native consumers that use the default authorization result cache. If you call createDefaultAuthorizationResultCache(), add @react-native-async-storage/async-storage to your own app dependencies — it is no longer installed transitively. The release also adds runtime validation: async-storage is now resolved lazily, on first use, and createDefaultAuthorizationResultCache() throws a descriptive error when it is missing or unusable (such as when its native module has not been linked) instead of failing silently into an inert cache. Apps that pass their own authorizationResultCache never load async-storage and do not need it installed; the lazy require sits inside a try block, which Metro's default allowOptionalDependencies configuration treats as an optional dependency, so their builds keep working without it.

Patch Changes

  • e9f68c2: Support Solana v1 transactions.

    wallet-standard-mobile

    • The local wallet now advertises the supportedTransactionVersions the connected MWA wallet reports, instead of always ['legacy', 0]. The remote wallet already did this.

    • A wallet that reports 1 is now advertised as supporting v1 transactions. A wallet that reports only legacy is no longer advertised as supporting v0.

      mobile-wallet-adapter-protocol

    • supported_transaction_versions is typed with SolanaTransactionVersion from @solana/wallet-standard-features instead of TransactionVersion from @solana/web3.js, so it includes 1.

    • Requires @solana/wallet-standard-features ^1.5.0 (also bumped in wallet-standard-mobile and wallet-adapter-mobile).

    • Dropped the unused @solana/web3.js devDependency.

  • Updated dependencies [f72388e]

  • Updated dependencies [c258ef8]

  • Updated dependencies [e9f68c2]

  • Updated dependencies [c258ef8]

  • Updated dependencies [50ccaca]

  • Updated dependencies [784619b]

    • @solana-mobile/wallet-standard-mobile@0.7.0
    • @solana-mobile/mobile-wallet-adapter-protocol@2.4.0
    • @solana-mobile/mobile-wallet-adapter-protocol-web3js@2.4.0

@solana-mobile/wallet-standard-mobile@0.7.0

Minor Changes

  • c258ef8: Move @react-native-async-storage/async-storage from optionalDependencies to an optional peer dependency, widen the accepted range to ^1.17.7 || ^2.0.0, and load it lazily.

    optionalDependencies are installed by default by every package manager — "optional" means only that a failed install is tolerated, not that the package is skipped — so browser-only consumers were pulling async-storage and, through its own peer dependency on react-native, the entire React Native toolchain into node_modules. Together with the matching fix in @solana-mobile/mobile-wallet-adapter-protocol, a browser-only install of this package drops from about 207 MB to about 42 MB and from 334 packages to 93, and the seven high-severity metro advisories it used to surface in npm audit go away entirely. Downstream lockfiles will shrink substantially on the next update; that is this change taking effect, not packages going missing.

    Action required for React Native consumers that use the default authorization cache. If you call createDefaultAuthorizationCache(), add @react-native-async-storage/async-storage to your own app dependencies — it is no longer installed transitively. The release also adds runtime validation: async-storage is now resolved lazily, on first use, and createDefaultAuthorizationCache() throws a descriptive error when it is missing or unusable (such as when its native module has not been linked) instead of failing silently into an inert cache. Apps that pass their own authorizationCache never load async-storage and do not need it installed; the lazy require sits inside a try block, which Metro's default allowOptionalDependencies configuration treats as an optional dependency, so their builds keep working without it.

  • 50ccaca: Make authorizationCache, chainSelector and onWalletNotFound optional in registerMwa and the wallet constructors, defaulting to createDefaultAuthorizationCache(), createDefaultChainSelector() and createDefaultWalletNotFoundHandler() respectively. The config shapes are now exported as SolanaMobileWalletAdapterWalletConfig, with LocalSolanaMobileWalletAdapterWalletConfig, RemoteSolanaMobileWalletAdapterWalletConfig and NostrSolanaMobileWalletAdapterWalletConfig extending it. Existing callers that pass all properties are unaffected.

Patch Changes

  • f72388e: Fix connection deadlock on loopback-origin dapps (localhost dev via adb reverse). Local Network Access only gates requests that cross into a more private address space, so a page served from localhost, *.localhost, 127.0.0.0/8, or [::1] fetching loopback is exempt — the browser never shows the permission prompt and the permission state can never leave "prompt", which left the connection hanging until the association timeout. Loopback origins now skip the permission gate entirely and go straight to the association intent; non-loopback origins keep the existing prompt flow.

  • e9f68c2: Support Solana v1 transactions.

    wallet-standard-mobile

    • The local wallet now advertises the supportedTransactionVersions the connected MWA wallet reports, instead of always ['legacy', 0]. The remote wallet already did this.

    • A wallet that reports 1 is now advertised as supporting v1 transactions. A wallet that reports only legacy is no longer advertised as supporting v0.

      mobile-wallet-adapter-protocol

    • supported_transaction_versions is typed with SolanaTransactionVersion from @solana/wallet-standard-features instead of TransactionVersion from @solana/web3.js, so it includes 1.

    • Requires @solana/wallet-standard-features ^1.5.0 (also bumped in wallet-standard-mobile and wallet-adapter-mobile).

    • Dropped the unused @solana/web3.js devDependency.

  • Updated dependencies [c258ef8]

  • Updated dependencies [e9f68c2]

  • Updated dependencies [784619b]

    • @solana-mobile/mobile-wallet-adapter-protocol@2.4.0

@solana-mobile/mobile-wallet-adapter-protocol-web3js@2.4.0

Patch Changes

  • Updated dependencies [c258ef8]
  • Updated dependencies [e9f68c2]
  • Updated dependencies [784619b]
    • @solana-mobile/mobile-wallet-adapter-protocol@2.4.0

@solana-mobile/mobile-wallet-adapter-walletlib@1.4.6

Patch Changes

  • 35fc89f: Stop advertising a CommonJS build that is never produced.

    The node condition declared "require": "./lib/cjs/index.js", but this package builds ESM only — tsdown.config.ts emits format: 'esm' into lib/esm, and postbuild writes only the lib/esm type marker. Nothing has produced lib/cjs since the build moved to tsdown, so the file was absent from the published tarball and require('@solana-mobile/mobile-wallet-adapter-walletlib') failed with MODULE_NOT_FOUND naming a path that had never existed.

    The node condition now points at the ESM build that is actually shipped. Importers are unaffected; require callers on Node 22.12 and later load it through require(esm), and on older versions get a plain "cannot require an ES module" error instead of a missing-file one.

@coderabbitai

coderabbitai Bot commented Sep 10, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 619a8c3d-87ca-4105-9177-d93073f0fbbe

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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

@pr-bot-solana-mobile
pr-bot-solana-mobile Bot force-pushed the changeset-release/main branch 2 times, most recently from e24449f to feb9288 Compare September 15, 2026 21:29

This branch has not been deployed

No deployments
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.

0 participants