Tag Info

Metamask uses web3 to talk to Ethereum nodes. Metamask also injects the web3 into the browser for any application running to use to connect to a node (selected in metamask by the user).
Metamask has the user generated private keys in browser storage which when the user agrees are used to sign any transaction that can be submitted to the nodes. The signing, ...

You need to choose the right compiler version.
On the right sidebar you can see your current compiler version.
The compiler version must match the number used in the pragma solidity!
Expand the dropdown and choose 0.5.12 nightly.
You should probably downgrade to a full commit version like 0.5.11 commit.
I hope this helps!