Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow namespace collision between interfaces #734

Merged
merged 2 commits into from
Aug 27, 2020

Conversation

iamdefinitelyahuman
Copy link
Member

What I did

Lessen the namespace collision restrictions.

Closes #729

How I did it

When looking for collisions, allow multiple uses of the same name so long as only one of the objects is a contract. This way projects using interfaces with the same name as the actual contract will now compile.

How to verify it

Try to compile https://github.com/compound-finance/compound-protocol using Brownie

@iamdefinitelyahuman iamdefinitelyahuman merged commit e34951a into master Aug 27, 2020
@iamdefinitelyahuman iamdefinitelyahuman deleted the fix-interface-namespace-collision branch August 27, 2020 20:39
@priyankaj1910
Copy link

priyankaj1910 commented Oct 5, 2022

I am getting this error - NamespaceCollision: Multiple contracts or interfaces with the same name
SimpleStorage: contracts/arbitrum/SimpleStorage.sol, contracts/ethereum/SimpleStorage.sol

I checked the network list .but there is nothing duplicated. It was working fine, but when I added one network and deleted that after that brownie compile stopped working with this error

Can any one please help. I have tried un installing python and brownie and reinstalling, but same error

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Name collision for interfaces in Compound finance contracts prevents brownie from compiling
2 participants