Skip to content

chore: upgrade to ENSv2 (Universal Resolver) - #411

Closed
Dhaiwat10 wants to merge 3 commits into
ethereumfollowprotocol:mainfrom
ens-integrations:ensv2-upgrade
Closed

chore: upgrade to ENSv2 (Universal Resolver)#411
Dhaiwat10 wants to merge 3 commits into
ethereumfollowprotocol:mainfrom
ens-integrations:ensv2-upgrade

Conversation

@Dhaiwat10

@Dhaiwat10 Dhaiwat10 commented May 11, 2026

Copy link
Copy Markdown

Hey! I'm Dhaiwat from the DevRel team at ENS Labs. We're working on getting active repos and libraries across the ecosystem ready for ENSv2.

Summary

Upgrades this repo to be ENSv2-ready by routing ENS resolution through the Universal Resolver (0xeeeeeeee14d718c2b47d9923deab1335e144eeee) instead of the legacy ENS Registry.

Changes

  • Upgrade viem from ^2.27.3^2.48.11

viem is used for ENS here at src/utils/ens.ts.

Why

The current path returns stale results for names managed by the new Universal Resolver. For example, ur.integration-tests.eth should resolve to 0x2222222222222222222222222222222222222222; legacy resolution returns incorrect values.

More details: https://docs.ens.domains/web/ensv2-readiness

Verification

  • ur.integration-tests.eth0x2222222222222222222222222222222222222222

Summary by CodeRabbit

  • Chores
    • Updated core blockchain interaction library to a newer compatible version for improved stability, performance, and bug fixes.
    • Added a cryptographic/hash library to enhance signing, validation, and security-related operations.

Review Change Stack

@Dhaiwat10
Dhaiwat10 requested a review from encryptedDegen as a code owner May 11, 2026 04:40
@vercel

vercel Bot commented May 11, 2026

Copy link
Copy Markdown

Someone is attempting to deploy a commit to the EFP Team on Vercel.

A member of the Team first needs to authorize it.

@coderabbitai

coderabbitai Bot commented May 11, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

package.json now adds @noble/hashes@1.8.0 and updates viem from ^2.27.3 to ^2.48.11 in the dependencies block.

Changes

Dependency updates

Layer / File(s) Summary
package.json dependency edits
package.json
Added @noble/hashes: "1.8.0" and updated viem from ^2.27.3 to ^2.48.11 in dependencies.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 A tiny hop to package.json's lair,
I tuck in a hash and polish viem with care,
Versions aligned, the build breathes anew,
A carrot for CI, and a sky-blue review.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'chore: upgrade to ENSv2 (Universal Resolver)' accurately describes the main change: upgrading to ENSv2 by routing through the Universal Resolver, which aligns with the dependency updates to viem and addition of @noble/hashes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@package.json`:
- Line 62: The package.json bump to "viem": "^2.48.11" may not actually add
ENSv2/Universal Resolver support; confirm whether this version bump was intended
to enable ENSv2 features and either revert or update the dependency to a viem
release that explicitly documents ENSv2/Universal Resolver support. Also confirm
whether accompanying code changes to src/utils/ens.ts (e.g., any functions or
classes that interact with ENS/Universal Resolver) are missing from this PR; if
ENSv2 functionality is expected, add the necessary changes to src/utils/ens.ts
to use the correct viem APIs or update the package.json to the correct version
and note which ENS functions (in src/utils/ens.ts) rely on the newer viem
behavior so reviewers can validate them.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 5560b9c1-ccf1-42d9-9a10-863dfcd6986f

📥 Commits

Reviewing files that changed from the base of the PR and between 3081ec4 and db10cff.

⛔ Files ignored due to path filters (1)
  • bun.lockb is excluded by !**/bun.lockb
📒 Files selected for processing (1)
  • package.json

Comment thread package.json

@encryptedDegen encryptedDegen left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

looks good

@vercel

vercel Bot commented May 25, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
app Error Error May 25, 2026 6:06pm

Request Review

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
package.json (1)

21-21: @noble/hashes@1.8.0 is not a viem peer dependency; viem@2.48.11 already depends on it

  • viem@2.48.11 lists only typescript under peerDependencies (no @noble/hashes).
  • viem@2.48.11 has @noble/hashes@1.8.0 in its regular dependencies, so 1.8.0 matches what viem expects.
  • No npm security advisories were returned for @noble/hashes by the query.
  • If the app doesn’t import @noble/hashes directly, removing it from package.json (line 21) would be optional since viem will pull it transitively.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@package.json` at line 21, The dependency "`@noble/hashes`": "1.8.0" in
package.json is redundant because viem@2.48.11 already depends on that version;
remove the explicit "`@noble/hashes`" entry from package.json (or only keep it if
your code imports it directly), then run your package manager install to update
the lockfile (npm install / yarn install) and re-run tests/lint to ensure
nothing breaks; if you do need it, keep the exact version but otherwise delete
the "`@noble/hashes`" entry to avoid duplicate direct dependency declarations.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@package.json`:
- Line 21: The dependency "`@noble/hashes`": "1.8.0" in package.json is redundant
because viem@2.48.11 already depends on that version; remove the explicit
"`@noble/hashes`" entry from package.json (or only keep it if your code imports it
directly), then run your package manager install to update the lockfile (npm
install / yarn install) and re-run tests/lint to ensure nothing breaks; if you
do need it, keep the exact version but otherwise delete the "`@noble/hashes`"
entry to avoid duplicate direct dependency declarations.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 137857cc-f4da-4e9e-ba5d-50829262bf5d

📥 Commits

Reviewing files that changed from the base of the PR and between db10cff and 087be5c.

⛔ Files ignored due to path filters (1)
  • bun.lockb is excluded by !**/bun.lockb
📒 Files selected for processing (1)
  • package.json

@encryptedDegen

encryptedDegen commented May 25, 2026

Copy link
Copy Markdown
Member

Updated to the later version directly on main (+ had to made some other fixes in order for builds to pass), so I am closing the PR. Thank you for reminding us to do that @Dhaiwat10 , much appreciated

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.

3 participants