Skip to content

chore(deps): upgrade the OpenZeppelin adapters and UI packages - #416

Merged
pasevin merged 1 commit into
mainfrom
chore/bump-adapters-v4
Aug 21, 2026
Merged

chore(deps): upgrade the OpenZeppelin adapters and UI packages#416
pasevin merged 1 commit into
mainfrom
chore/bump-adapters-v4

Conversation

@pasevin

@pasevin pasevin commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Why

The adapters went through two majors while this repo stayed on ^2.x:

  • 3.0.0 — WalletConnect support removed
  • 4.0.0 — package licences corrected to AGPL-3.0

Caret ranges don't cross a major, so the builder kept resolving adapter 2.x: code that still registers the walletConnect connector, still asks for a WalletConnect projectId, and still declares MIT.

Adapter bumps

Package Before After
@openzeppelin/adapter-evm ^2.3.0 ^4.0.0
@openzeppelin/adapter-midnight ^2.0.1 ^4.0.0
@openzeppelin/adapter-polkadot ^2.0.2 ^3.0.0
@openzeppelin/adapter-solana ^2.0.0 ^4.0.0
@openzeppelin/adapter-stellar ^2.0.2 ^4.0.0
@openzeppelin/adapters-vite ^2.0.0 ^11.0.0

adapter-polkadot stops at 3.0.0 — it didn't take the AGPL major, having already declared AGPL-3.0.

The UI packages had to move with them

The first attempt failed 34 tests:

[@openzeppelin/adapter-evm] Incompatible @openzeppelin/ui-types version.

adapter-evm@4 peer-requires @openzeppelin/ui-types ^3.5.0, while pnpm-workspace.yaml pinned it to exactly 3.3.0. Both the app's ranges and the workspace overrides needed bumping — the overrides pin exact versions and would otherwise force the app's ranges straight back down:

Package Before After
ui-types 3.3.0 3.5.1
ui-utils 3.3.0 4.0.0
ui-components 3.8.0 3.8.2
ui-react 3.3.0 3.3.1
ui-renderer 3.4.0 3.4.1
ui-storage ^1.2.2 ^1.2.4

adapters-vite crosses nine majors and ui-utils one. Both are pre-existing drift rather than something this work introduced — the pins had simply stopped tracking the packages. That is the part most worth a reviewer's eye.

Exported apps

versions.ts needed no change: #413 already synced the exported-app pins to the same 4.x line. So the builder's own dependencies and its exported apps now agree on the adapter major — the mismatch flagged in #414 is closed.

Verification

  • typecheck clean
  • 47 test files pass (34 were failing before the UI packages were bumped)
  • production build succeeds
  • lint and format:check clean
  • pnpm install --frozen-lockfile passes
  • dependency licence guard: zero @trezor/*, @reown/*, @walletconnect/*

The adapters went through two majors while this repo stayed on ^2.x: 3.0.0 removed
WalletConnect support, and 4.0.0 corrected the package licences to AGPL-3.0. Caret
ranges do not cross a major, so the builder kept resolving adapter 2.x -- code that
still registers the walletConnect connector, still asks for a WalletConnect
projectId, and still declares MIT.

- @openzeppelin/adapter-evm       ^2.3.0 -> ^4.0.0
- @openzeppelin/adapter-midnight  ^2.0.1 -> ^4.0.0
- @openzeppelin/adapter-polkadot  ^2.0.2 -> ^3.0.0  (no AGPL major; already AGPL)
- @openzeppelin/adapter-solana    ^2.0.0 -> ^4.0.0
- @openzeppelin/adapter-stellar   ^2.0.2 -> ^4.0.0
- @openzeppelin/adapters-vite     ^2.0.0 -> ^11.0.0

The UI packages had to move with them. adapter-evm@4 peer-requires
@openzeppelin/ui-types ^3.5.0, while pnpm-workspace.yaml pinned it to exactly 3.3.0,
so the first attempt failed 34 tests with:

  [@openzeppelin/adapter-evm] Incompatible @openzeppelin/ui-types version.

Both the app's ranges and the workspace overrides needed bumping -- the overrides
pin exact versions and would otherwise force the app's ranges straight back down:

- ui-types 3.3.0 -> 3.5.1, ui-utils 3.3.0 -> 4.0.0, ui-components 3.8.0 -> 3.8.2,
  ui-react 3.3.0 -> 3.3.1, ui-renderer 3.4.0 -> 3.4.1, ui-storage ^1.2.2 -> ^1.2.4

adapters-vite crosses nine majors and ui-utils one. Both are pre-existing drift
rather than something this work introduced; the pins had stopped tracking the
packages.

versions.ts needed no change: #413 already synced the exported-app pins to the same
4.x line, so the builder's own dependencies and its exported apps now agree.

Verified: typecheck clean, 47 test files pass (34 were failing before the UI
packages were bumped), production build succeeds, lint and format:check clean,
`pnpm install --frozen-lockfile` passes, and the dependency licence guard still
reports zero @trezor/*, @reown/* and @walletconnect/* entries.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@pasevin
pasevin requested a review from a team as a code owner August 21, 2026 02:18
@pasevin
pasevin merged commit a34a880 into main Aug 21, 2026
13 checks passed
@pasevin
pasevin deleted the chore/bump-adapters-v4 branch August 21, 2026 08:33
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.

1 participant