Solidity error handling was recently implemented into the coding language
It lets you display an error message when something will go wrong according to your code
Example: require(X > 5, “X is not bigger than 5!”)
This makes it so you can tell the user why something will go wrong. A side effect of this error handling is the high gas error, which asks the user to attach a ridiculous amount of gas to go on a transaction that will fail.
Metamask will stop you from submitting a transaction that will fail, but it will not tell you why it will fail.
This can be important, like if you’re on an NFT marketplace and you try buying an item that was already bought, metamask will give the high gas error, but not tell you why it resulted in an error.
The error handling and explanation is in the code, it would be nice for metamask to display it when there is an error.