I am trying to verify a contract (yearn-strategy) that uses the openZeppelin library, other yearn files and a few interfaces for external contracts. The contract deploys just fine but the verification always fails.
I have tried to debug/ investigate further but nothing has worked:
On a related github issue I found "Make sure all your source files use the same compiler version, otherwise the verification will fail." openzeplin library files all say "pragma solidity ^0.6.0" but my files and the yearn libraries I am using have "pragma solidity 0.6.12", Could this be the issue ?
Etherscan shows a single solidity file "stitched" with all the imported files. How can I make such a file with brownie so I can manually verify on etherscan ?