Closed plotchy closed 1 year ago
Thanks for raising this issue.
You are right, the problem is with the IERC165Upgradeable
dependency.
file: contracts/CrossGovDAO.sol
import: @openzeppelin/contracts-upgradeable/interfaces/IERC165Upgradeable.sol
contract: CrossGovDAO
file: @openzeppelin/contracts-upgradeable/interfaces/IERC165Upgradeable.sol
import: ../utils/introspection/IERC165Upgradeable.sol
file: @openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol
interface: IERC165Upgradeable
sol2uml adds the file imports to the UML class in each file, but the @openzeppelin/contracts-upgradeable/interfaces/IERC165Upgradeable.sol
file doesn't produce any UML classes so the dependency to the IERC165Upgradeable
interface is broken.
I need to think about the best way to resolve this issue.
This should be fixed with the release v2.2.1
I ran into a bug while using
sol2uml flatten
and I believe it has to do with the topological sort implementation over the contract dependencies. This bug makes the contract fail to compile as the import is not defined before the usage of it.Command to reproduce
sol2uml flatten 0xd154D208cC753bCF8006577C350c1EE732ADAdfa -n polygon
Relevant File Info
Best Guess
It seems that
IERC165Upgradeable
may be getting duplicated in the dependency list somehow?There seems to be two entities of this contract:
I'm unsure of how this entity may be getting dupe'd, but if both are sorted to the top this would still be ok & compile :)