Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New chainId validations break evm chains that do not implement chain_id method #9683

Closed
danfinlay opened this issue Oct 22, 2020 · 11 comments
Closed

Comments

@danfinlay
Copy link
Contributor

TomoChain in particular does not support the chain_id method, and so version 8.1 breaks support for it, since we validate the user-entered value against the RPC.

This means TomoChain is currently broken on Firefox, and those users should use Chrome.

Proposed solution: If a user enters a custom RPC for a network that does not implement chain_id, we should trust the chain_id value entered by the user (ideally indicating to the user if it duplicates any known networks).

@danfinlay danfinlay added type-bug area-customNetworks Sev1-high High severity; partial loss of service with severe impact upon users, with no workaround. labels Oct 22, 2020
@rattrap
Copy link

rattrap commented Nov 5, 2020

Same problem when trying to connect to a https://www.kaleido.io/ node. They use basic auth.
Could not fetch chain ID. Is your RPC URL correct?
Worked with 8.0.10.

MetaMask Version: 8.1.3

@wbt
Copy link
Contributor

wbt commented Nov 12, 2020

I'm also seeing this break a dapp running with geth on a custom chainID even when the entered chain id matches the --networkid parameter to geth which also matches the config.chainId property in the genesis block. The error is "Could not fetch chain ID. Is your RPC URL correct?" Yes, it's the same RPC URL that worked with prior versions.

Forcing out breaking changes on all users without making it easy to revert to a version preceding the breaking changes is not cool.

@Hauleraway
Copy link

@afmfe-iul I am getting the same error when trying to create a Custom RPC in Metamask. I am unable to get the right chainId

@wbt
Copy link
Contributor

wbt commented Nov 19, 2020

In the dapp I observed, it was because the node being connected to was running too old a version of geth (due to other blockers), before eth_chainId. Still, with issues like this and #9421, I maintain that forcing out breaking changes on all users without making it easy to revert to a version preceding the breaking changes is not cool.

@Gudahtt Gudahtt added Sev2-normal Normal severity; minor loss of service or inconvenience. and removed Sev1-high High severity; partial loss of service with severe impact upon users, with no workaround. labels Jan 13, 2021
@MetaMask MetaMask deleted a comment from chrisfranko Mar 1, 2021
@MetaMask MetaMask deleted a comment from chrisfranko Mar 1, 2021
@MetaMask MetaMask deleted a comment from afmfe-iul Mar 1, 2021
@danfinlay
Copy link
Contributor Author

Deleted some outdated comments that touched unrelated issues.

@Myu-Unix
Copy link

So my fully sinced (local) Geth 1.10.2 node cannot be plugged to Metamask anymore as a custom RPC ? Is there any workarounds ?

@wbt
Copy link
Contributor

wbt commented Apr 20, 2021

@Myu-Unix You might consider making a full backup and then updating the Geth executable files, then starting up with the same data directory.

@gorgsenegger
Copy link

Are there any updates on this? I've got the same problem and haven't found a solution.

My local geth node in a private network is running under WSL on Windows 10. I can access it without problems from within WSL as well as using the geth Version for Windows. Network ID and Chain ID are both 1000.

When I try this within MetaMask in my browser, I keep getting the "Could not fetch chain ID. Is your RPC URL correct?" error.

@wbt
Copy link
Contributor

wbt commented May 20, 2021

@gorgsenegger Run a later version of geth. What version are you running?

@gorgsenegger
Copy link

@wbt - I'm using version 1.10.3-stable on both Windows and Ubuntu WSL

@rekmarks rekmarks removed type-bug Sev2-normal Normal severity; minor loss of service or inconvenience. labels Aug 31, 2021
@rekmarks
Copy link
Member

rekmarks commented Aug 31, 2021

We've really voted with our feet, here.

Users have been unable to use MetaMask to interact with EVM chains that don't support eth_chainId during the ~10 months since this issue was created, and we have no plans to change this in the future.

I will now close this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants