You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
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
Describe the bug
Connection with any wallet is not working on
https:
protocol.
On localhost still everything works fine.
Modal opens with no console Errors, but after I scan a QR code with Metamask / Trust wallets, this error occurred and nothing else happens. Modal remains open, in wallet no response. Just an error in our web dApp:
And also tried to connect to dev environment on your
https://react-wallet.walletconnect.com/walletconnect
:
SDK Version (if relevant)
"next": "^12.2.2",
"@walletconnect/modal": "^2.6.1",
"@walletconnect/sign-client": "^2.10.0",
To Reproduce
As described in following issue. I have updated to the latest version of the sign-client. But there is another bug in connection.
#3492
Expected behavior
Connection between our web dApp and any wallet, at least Metamask, is working on
https:
protocol.
Desktop:
OS: [macOS, iOS]
Browser [Chrome]
Version [Version 115.0.5790.170 (Official Build) (arm64)]
Smartphone:
Device: [iPhoneX]
OS: [iOS 16.5.1]
devon-n, BulletproofProductions, amcs99, AtelyPham, TonyBobins, OkponkoXchange, and Melancholism reacted with thumbs up emoji
DudleDev and msilucifer reacted with eyes emoji
All reactions
In Explorer tab in cloud.walletconnect.com I have filled in a Homepage and a Web App fields with the same url to our dev website.
Turn on the switch for the sign client v2 support.
The project itself is still in Draft version. And as I understood wallet connect must be working at this point.
Is there anything, that I am missing in configuration on cloud website?
We haven't released this feature on prod yet. Because we have no opportunity to test it on dev.
So, I am not secure what will happen on production.
Okay, with
swcMinify: false
we are moving forward a little bit. But transactions are not working.
The connection is processed, even if there is still this verify error in the console. The
personal_sign
also is working now, but again with verify error in the console.
But, when I am opening a modal to make the transaction,
eth_sendTransaction
, Metamask is able to make a connection, I am approving it, and when we, as a dApp, request the transaction - nothing is happening. No errors in metamask, no new errors in console.
I might have add, that we start every time a new session. And after transaction's success/error - we disconnect the session.
After a while, we just receive this error in the console:
Yep, sure. I will share an example in a while.
And I didn't catch what to check on labs, that you have provided?
There are modals, btw "With Ethers Wagmi" opens 404.
So I have checked "With Wagmi" modal. I can connect to it from my iphone with Metamask. But there is not button to check a transaction.
P.S. on our dev Trust wallet works for transaction. The question is about transactions in Metamask.
swcMinify: true
issue is unrelated to the verify error, latest version of Next uses swc under the hood which is supported by WalletConnect.
The verify error should not affect the functionality of your app, if there's an issue might be related to something else, feel free to open an
GitHub discussion
on the topic.
We use the WalletConnect SDK as part of our
Beacon SDK
. After updating to
^2.9.0
(previously
2.7.0
), we had some projects complain about this error.
The verify error should affect the functionality of your app
Did you mean to say that it should
not
affect the functionality of our app?
@glitch-txs
Seeing the same behavior after upgrading WalletConnect dependencies. The console errors will appear about 5 seconds after the
WalletConnectConnector
in
[email protected]
is initialized, before calling connect or requesting the URI. I believe our deployment is properly whitelisted with WalletConnect Cloud.
I can confirm that this error disappears after downgrading to 2.7.0. And I can also confirm that WC2 (on 2.9.0) still works, despite this error.
However, I would like to have some clarification around what is happening. We have released our beacon-sdk with a reference to version 2.9.0, which means dApps will get that error and might not upgrade because of it. Depending on what the underlying issue is, we can either downgrade to 2.7.0 again and release a new version of our beacon-sdk until you release a new version that fixes it, or if its a serverside fix that you are working on, we can keep the current version and tell our users that it will be fixed.
Thanks a lot for the help.
Update:
To add a little bit of context: We've integrated
Verify API
recently which prevents Wallets from connecting to unverified domains. So this error will show whenever a domain wasn't verified on cloud or when runnning on localhost (since localhost wasn't verified either - and it shouldn't).
To minimize the confusion we've changed this message from
error
to
info
when logged - see PR
#3626
And we are working on a way to suppress it or minimize it for local environment.
{context: 'core'} {context: 'core/verify-api'} 'Verify iframe failed to load: https://verify.walletconnect.org'
wevm/wagmi#2998
problem is that the link in
Verify iframe failed to load: https://verify.walletconnect.org
is dead.
for me downgrading from version
"@walletconnect/sign-client": "^2.10.0"
to
"@walletconnect/sign-client": "^2.9.2",
worked
I dropped web3modal/react and web3modal/ethereum down to 2.7.0 that uses 2.7.0 across the board and it now works, but that in turn opens up a whole new set of problems like missing
#3230
which is causing the socket to be stalled randomly. Feel like the best approach here is to avoid web3modal/react altogether until 3.0.0 is done and implemented in web3modal and try implementing directly from core. 🤷♂️
@glitch-txs
thoughts?
EDIT:
I have to dig in a lot more. In using Frame, when injecting Frame as-is, the verify iframe problem comes back, but injecting as metamask (with Frame) removes it, but then socket stalls. I'm doing a refactor to finally migrate from v1 and this will take a substantially larger re-write to fix. I'll relay more when I hopefully get around to fixing this.
"@wagmi/connectors": "2.6.6",
"@walletconnect/utils": "2.9.0",
"@walletconnect/core": "2.9.0",
"@walletconnect/ethereum-provider": "2.9.0",
"@web3modal/ethereum": "^2.7.1",
"@web3modal/react": "^2.7.1",
"viem": "^1.5.3",
"ethers": "^6.7.0",
Also needed this fix.
hirosystems/stacks.js#1096 (comment)
overrides: {
from: address,
value: ethers.parseEther(inputValue),
value: ethers.parseEther(inputValue),
Pretty frustrating. The only way I can get WC to work on localhost is to create a new project and use a fresh projectId. Then a few hours later I start to get the "Refused to frame 'https://verify.walletconnect.com/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors" error
Still getting the iframe error with:
"@wagmi/core": "^1.4.2",
"@web3modal/ethereum": "^2.7.1",
"@web3modal/html": "^2.7.1",
"viem": "^1.10.14"
This *is blocking because it throws an error, not an info.
Appreciate the help @glitch-txs
Trying to follow: https://docs.walletconnect.com/2.0/web3modal/html/wagmi/installation