Metamask-extension: Update ENS resolving implementation to match what is defined in EIP-1577

Created on 13 Nov 2018  路  16Comments  路  Source: MetaMask/metamask-extension

What problem are you trying to solve?

Name resolution is done using the content and multihash fields right now, to try and find a better system @arachnid and I created EIP-1577 that allows for a better representation of network and content addresses.

Describe the solution you'd like

Implement resolution using the new multiaddr field when available.

L20-ENS T01-enhancement bounty worthy

Most helpful comment

ping @danfinlay @kumavis @decanus @Arachnid work done 鉁旓笍
review requested here

All 16 comments

There will be changes made to the EIP so implementation should be paused.

The EIP has been updated and should be good to go: https://eips.ethereum.org/EIPS/eip-1577

Pinging @PhyrexTsai in case he has bandwidth for this.

@danfinlay @bitpshr probably best to put this on pause, as we expect to update the spec again soon.

@danfinlay The EIP has been updated, work should be able to start on it now. https://eips.ethereum.org/EIPS/eip-1577

Cant connect blank screen at least 8hrs of nothing but blank

@Platinumwrist could you share your UI and background logs on issue https://github.com/MetaMask/metamask-extension/issues/4894 to help us debug. This issue is for something entirely different.

Instructions how to find those logs are here.

Hi ! I have wirtten a small JS lib to implement EIP1577 ! @decanus and the ENS team have used it for the ENS Manager dApp (issue), so I think it could also help in Metamask :)
Also it would be an honnor for me to contribute !

@pldespaigne that's fantastic! We would be incredibly grateful for the contribution, we want our ENS support to reflect the latest standard. Please let us know if you have any questions!

OK I will be working on it :grinning: ! Can you help me to find my way through the metamask codebase ?

I believe our current implementation is in this folder:
https://github.com/MetaMask/metamask-extension/tree/develop/app/scripts/lib/ens-ipfs

I was just made aware of this library, which may be useful for allowing us to resolve a variety of decentralized name services, although I need to look into it more (can it use our user's configured blockchain provider?)
https://github.com/unstoppabledomains/namicorn

namicorn looks okay, but I'm not sure of its value: The format of its returned data seems to depend on the provider, and it doesn't attempt to encode or decode the content hash data at all. I'm not sure it would save you any time over just using our libraries (or calling the contracts) directly.

Work in progress ;)

ping @danfinlay @kumavis @decanus @Arachnid work done 鉁旓笍
review requested here

Guys ? Is there anybody to review my PR ?
@danfinlay @kumavis @bdresser

Was this page helpful?
0 / 5 - 0 ratings