This is a thread which brings over a conversation from Telegram:
The minimum they are talking about is actually the provider. They are still going to inject the provider — instead of calling it web3.currentProvider, it will be called ethereum (we already support both).
Check these out:
Like I was trying to communicate previously:
web3.js works as 2 parts. The dapp browser provides web3.js version W and the provider P.
The dapp gets P (which provides the RPC node access) and can provide their own web3.js version D or just use the one provided by the dapp browser, W. In both cases plug P into W or D.
MetaMask has been talking about this change for a long time. The change is to remove W. P is still going to be around. Dapps will have to bring their own version of web3.js (or Ether.js) D.
And this is why customizing the bundled version of web3.js is the wrong approach.
The posts and issues also hints at why it was never a good idea for dapps to use W — incompatibility
ok. I had a quick look at the Uniswap source code. A few things - as you would suspect they have their own chain comms system backend, the other interesting thing they statically link the same icon source we use (Trust repo). The dapp is written in TypeScript. And there's a lot of it - consistent with implementing a full ethereum backend. It would be interesting to see how much of web3.js they use - probably only the wallet hooks.