Since Solidity 0.6.8, the compiler started throwing warnings if a contract isn't annotated with a SPDX license identifier:
// SPDX-License-Identifier: MIT
contract MyContract {
...
}
Suppose that I'm importing third-party contracts, like those from OpenZeppelin or the UnorderedKeySet library built by Rob Hitchens. I will eventually want to verify the source code of my contracts on Etherscan, and it's common to flatten the contracts before doing that. How should I handle the SPDX identifiers in this case?
It it ok for a flattened file to contain multiple SPDX identifiers?