Releases: ensdomains/ens-contracts
Releases · ensdomains/ens-contracts
v1.7.0
v1.7.0 Release Notes
Base: v1.6.0
Head: staging (9b03493)
For reference: v1.6.0 deployed contracts
Newly Deployed Contracts
Mainnet (L1)
| Contract | Networks |
|---|---|
ArbitrumReverseResolver |
mainnet |
BaseReverseResolver |
mainnet |
LineaReverseResolver |
mainnet |
OptimismReverseResolver |
mainnet |
ScrollReverseResolver |
mainnet |
DefaultReverseRegistrar |
mainnet, sepolia, holesky |
DefaultReverseResolver |
sepolia, holesky |
BatchGatewayProvider |
mainnet, sepolia, holesky |
MigrationHelper (deploy utility) |
mainnet, sepolia, holesky |
L2 Chains — L2ReverseRegistrar
| Network | Testnet |
|---|---|
| Arbitrum | Arbitrum Sepolia |
| Base | Base Sepolia |
| Optimism | Optimism Sepolia |
| Linea | Linea Sepolia |
| Scroll | Scroll Sepolia |
Redeployed Contracts (modified source)
| Contract | Networks |
|---|---|
ETHRegistrarController |
mainnet, sepolia, holesky |
PublicResolver |
mainnet, sepolia, holesky |
UniversalResolver |
mainnet, sepolia, holesky |
DefaultReverseResolver |
mainnet (modified) |
StaticBulkRenewal |
mainnet, sepolia, holesky |
ExponentialPremiumPriceOracle |
holesky |
StaticMetadataService |
sepolia, holesky |
TestUnwrap (test contract) |
sepolia, holesky |
v1.7.0 Changes
215 files changed, ~14k additions, ~11k deletions
New Features / Contracts
- Security Controllers: Added
RegistrarSecurityControllerandRootSecurityControllerwith deploy scripts and tests - P256 Precompile: Replaced
EllipticCurve.solwith EIP-7951P256Precompile.solfor Algorithm 13 (#509) - ShuffledGatewayProvider: New gateway provider
ShuffledGatewayProvider.solwith tests (#472) - ResolverCaller: New utility
ResolverCaller.solfor resolver interactions (#470) - ERC7996 support: Added
IERC7996.solinterface (renamed fromIFeatureSupporter) (#508) - ICompositeExtendedResolver / IVerifiableResolver: New resolver interfaces
ICompositeResolver.sol,IVerifiableResolver.sol(#497) - LibMem / LibABI: New utility libraries
LibMem.sol,LibABI.sol - ENSIP-24 DataResolver: Added
DataResolver.solandSupportedDataKeys.solfor arbitrary data resolution (#503) - CCIPBatcher: Fix to respect
LookupwithFLAG_DONEinCCIPBatcher.sol(#499)
Infrastructure / Build System
- Hardhat v3 + Rocketh migration: Major migration from Hardhat v2 (
hardhat.config.cts) to Hardhat v3 (hardhat.config.ts) with Rocketh (#444) - Test framework: Migrated tests to Vitest (
.test.tssuffix), addedvitest.config.tsandtest/setup.ts - Deploy scripts: All rewritten for Rocketh/HH3 compatibility
- Tasks: Converted from
.ctsto.ts, removedesm_fixandetherscan-multichain
Bug Fixes
- Fixed
NameCodernextLabellogic (#496) - Fixed
NameWrapperdeploy script dependencies (#490) - Fixed forked tests (#485)
- Various deploy script fixes (multicall, shared deploys)
Docs / Misc
- Synchronized
UniversalResolverdocstrings with ENSIP-23 (#466) - Fixed typos in comments and docs (#533)
- Added stale bot workflow
- Reverse resolver introspection improvements (#498)
Version Bumps
v1.6.1andv1.6.2version commits are included
Pull Requests
- #444 — Migrate deployment scripts to Hardhat v3 + Rocketh (2025-09-04)
- #469 — Deploy UR update (2025-08-18)
- #470 — Rename
IERC7996and AddResolverCaller(2025-09-15) - #472 — Add
ShuffledGatewayProviderand tests (2025-09-15) - #474 — Fixed deploy scripts (2025-08-28)
- #479 — Fix deploy script hooks (2025-09-10)
- #484 — Fix tests after merges (2025-09-15)
- #485 — Fix forked tests (2025-09-25)
- #489 — Add
LibMemand UpdateNameCoder(2025-10-13) - #490 — Fix
NameWrapperDeploy Script Dependencies (2025-10-01) - #494 — Fix deploy Multicall (2025-10-06)
- #495 — Fix allow shared deploys (2025-10-09)
- #496 — Fix nextLabel logic (2025-10-15)
- #497 — Add ICompositeExtendedResolver and IVerifiableResolver (2025-10-21)
- #498 — Improve Reverse Resolver Introspection (2025-12-08)
- #499 — Make
CCIPBatcherrespectLookupw/FLAG_DONE(2025-10-29) - #504 — Bump buffer (2025-11-26)
- #506 — Add
VerifierChangedtoIVerifiableResolver(2025-12-08) - #507 — Add
IExtendedDNSResolvertoResolverCaller(2025-12-08) - #508 — Add IERC7996 support w/o features (2026-01-05)
- #509 — Replace EllipticCurve with EIP-7951 P-256 precompile for Algorithm 13 (2026-01-26)
- #513 — Update hardhat to 3.1.4 (2026-01-20)
- #517 — Security council contracts (2026-02-03)
- #518 — Security controller migrations (2026-02-05)
- #526 — Deploy RegistrarSecurityController and RootSecurityController (2026-03-10)
- #532 — Stale bot (2026-03-10)
- [#533](https://github.com/ensdomains/ens-contracts/pull...
v1.6.0
What's Changed
- add
DefaultReverseResolver,ETHReverseResolver, redesignChainReverseResolverby @adraffy in #432 - feat: new controller by @TateB in #438
- feature(crosschain resolver): simplify reverse resolver by @TateB in #379
- fix: controller updates by @TateB in #450
- Add
IFeatureSupporterandresolve(multicall)support by @adraffy in #451 - Refactor
BytesUtilsand other tests by @adraffy in #457 - Add
RegistryUtilsby @adraffy in #462 - Make
IDNSGatewayImportable by @adraffy in #463 NameCoderHelpers by @adraffy in #459- Add
GatewayProviderby @adraffy in #465 - deploy(mainnet/l2): L2ReverseRegistrar by @TateB in #454
- Change
GatewayProviderto OZv5 by @adraffy in #468
Full Changelog: v1.5.2...v1.6.0
v1.5.2
v1.5.1
What's Changed
- Conslidate
BytesUtilsandNameCoderImplementations by @adraffy in #423 - fix:
UniversalResolver.supportsInterface()by @adraffy in #426 - fix: NameCoder disallow literal-0 hashed label by @adraffy in #428
- Relax
HexUtilsto support unpadded, addENSIP19.parse()by @adraffy in #436 - Refactor UR into AUR w/
findResolver()+ Forward Fallback by @adraffy in #427 - Add
AbstractUniveralResolver.findResolver()toIUniversalResolverby @adraffy in #440 - chore: deploy new ur by @TateB in #439
Full Changelog: v1.4.0...v1.5.1
v1.4.0
What's Changed
- Update mainnet from staging by @Arachnid in #377
- don't use bunx in postinstall scripts by @talentlessguy in #381
- return abi.encoded values from extended dns resolver by @mdtanrikulu in #382
- Initial revision of MigrationHelper by @Arachnid in #387
- fixup postinstall by running patch-package as a dep by @talentlessguy in #403
- bug:
BytesUtils.compare()Arithmetic Overflow by @adraffy in #420 - chore: use triple slash natspec by @TateB in #422
- UniversalResolver w/CCIPBatcher by @adraffy in #421
- Add new deployment of the Universal Resolver by @Arachnid in #424
- fix: mainnet batch gateway urls on UR by @TateB in #425
New Contributors
Full Changelog: v1.1.6...v1.4.0
v1.3.0-testnet
- feat: Updated BulkRenewal contract with fixed duration, fixed item price, and target expiry options
v1.1.6-testnet
- feat: New ExtendedDNSResolver with support for multiple record types
v1.1.6
v1.1.5
v1.1.5-testnet
What's Changed
Full Changelog: v1.1.4...v1.1.5-testnet