Open semsion opened 2 years ago
I back up this issue! I ran into the same issue on my own projects and also the one mentioned by @semsion
smartcontractkit/chainlink-brownie-contracts@1.1.1 was working fine over the last 2/3 weeks but on Sunday I started getting the error too. I first got this issue while trying to use the new versioning system of chainlink: smartcontractkit/chainlink-brownie-contracts@0.2.2.
**WARNING**: Unable to compile smartcontractkit/chainlink-brownie-contracts@0.2.2 due to a NamespaceCollision - you may still be able to import sources from the package, but will be unable to load the package directly.
Switching back to 1.1.1 gave me the same error log.
I then tried compiling the chainlink repo and here is the error log
chainlink-brownie-contracts@1.1.1 % brownie compile
Brownie v1.17.1 - Python development framework for Ethereum
File "brownie/_cli/__main__.py", line 64, in main
importlib.import_module(f"brownie._cli.{cmd}").main()
File "brownie/_cli/compile.py", line 50, in main
proj = project.load()
File "brownie/project/main.py", line 751, in load
return Project(name, project_path)
File "brownie/project/main.py", line 183, in __init__
self.load()
File "brownie/project/main.py", line 193, in load
self._sources = Sources(contract_sources, interface_sources)
File "brownie/project/sources.py", line 58, in __init__
raise NamespaceCollision(
NamespaceCollision: Multiple contracts or interfaces with the same name
ChainlinkClient: contracts/src/v0.4/ChainlinkClient.sol, contracts/src/v0.5/ChainlinkClient.sol, contracts/src/v0.6/ChainlinkClient.sol, contracts/src/v0.7/ChainlinkClient.sol
Migrations: contracts/src/v0.4/Migrations.sol, contracts/src/v0.5/Migrations.sol
Oracle: contracts/src/v0.4/Oracle.sol, contracts/src/v0.5/Oracle.sol, contracts/src/v0.6/Oracle.sol
Chainlink: contracts/src/v0.4/Chainlink.sol, contracts/src/v0.5/Chainlink.sol, contracts/src/v0.6/Chainlink.sol, contracts/src/v0.7/Chainlink.sol
Consumer: contracts/src/v0.4/tests/Consumer.sol, contracts/src/v0.5/tests/Consumer.sol, contracts/src/v0.6/tests/Consumer.sol, contracts/src/v0.7/tests/Consumer.sol
MaliciousRequester: contracts/src/v0.4/tests/MaliciousRequester.sol, contracts/src/v0.5/tests/MaliciousRequester.sol
MaliciousConsumer: contracts/src/v0.4/tests/MaliciousConsumer.sol, contracts/src/v0.5/tests/MaliciousConsumer.sol
BasicConsumer: contracts/src/v0.4/tests/BasicConsumer.sol, contracts/src/v0.5/tests/BasicConsumer.sol, contracts/src/v0.6/tests/BasicConsumer.sol
MaliciousChainlink: contracts/src/v0.4/tests/MaliciousChainlink.sol, contracts/src/v0.5/tests/MaliciousChainlink.sol
GetterSetter: contracts/src/v0.4/tests/GetterSetter.sol, contracts/src/v0.5/tests/GetterSetter.sol
Ownable: contracts/src/v0.4/vendor/Ownable.sol, contracts/src/v0.5/vendor/Ownable.sol, contracts/src/v0.6/vendor/Ownable.sol
Buffer: contracts/src/v0.4/vendor/Buffer.sol, contracts/src/v0.5/vendor/Buffer.sol
SignedSafeMath: contracts/src/v0.4/vendor/SignedSafeMath.sol, contracts/src/v0.5/vendor/SignedSafeMath.sol, contracts/src/v0.6/SignedSafeMath.sol
SafeMathChainlink: contracts/src/v0.4/vendor/SafeMathChainlink.sol, contracts/src/v0.5/vendor/SafeMathChainlink.sol, contracts/src/v0.6/vendor/SafeMathChainlink.sol, contracts/src/v0.7/vendor/SafeMathChainlink.sol
CBOR: contracts/src/v0.4/vendor/CBOR.sol, contracts/src/v0.5/vendor/CBOR.sol
ENSResolver: contracts/src/v0.4/vendor/ENSResolver.sol, contracts/src/v0.5/vendor/ENSResolver.sol, contracts/src/v0.6/vendor/ENSResolver.sol, contracts/src/v0.7/vendor/ENSResolver.sol
LinkTokenReceiver: contracts/src/v0.5/LinkTokenReceiver.sol, contracts/src/v0.6/LinkTokenReceiver.sol, contracts/src/v0.7/dev/LinkTokenReceiver.sol
AggregatorProxy: contracts/src/v0.6/AggregatorProxy.sol, contracts/src/v0.7/dev/AggregatorProxy.sol
VRFRequestIDBase: contracts/src/v0.6/VRFRequestIDBase.sol, contracts/src/v0.7/dev/VRFRequestIDBase.sol
Median: contracts/src/v0.5/Median.sol, contracts/src/v0.6/Median.sol
VRFConsumerBase: contracts/src/v0.6/VRFConsumerBase.sol, contracts/src/v0.7/dev/VRFConsumerBase.sol
MultiWordConsumer: contracts/src/v0.6/tests/MultiWordConsumer.sol, contracts/src/v0.7/tests/MultiWordConsumer.sol
MockV3Aggregator: contracts/src/v0.6/tests/MockV3Aggregator.sol, contracts/src/v0.7/tests/MockV3Aggregator.sol
MedianTestHelper: contracts/src/v0.5/tests/MedianTestHelper.sol, contracts/src/v0.6/tests/MedianTestHelper.sol
MockV2Aggregator: contracts/src/v0.6/tests/MockV2Aggregator.sol, contracts/src/v0.7/tests/MockV2Aggregator.sol
BufferChainlink: contracts/src/v0.6/vendor/BufferChainlink.sol, contracts/src/v0.7/vendor/BufferChainlink.sol
CBORChainlink: contracts/src/v0.6/vendor/CBORChainlink.sol, contracts/src/v0.7/vendor/CBORChainlink.sol
Hello, I have the same issue, did you find a solution ?
--
I've noticed an issue while compiling a brownie project, which is throwing the error: 'WARNING: Unable to compile smartcontractkit/chainlink-brownie-contracts@1.1.1 due to a NamespaceCollision'.
This is while working with the following repository: https://github.com/smartcontractkit/full-blockchain-solidity-course-py
This issue was created off the back of a discussion at the above repository: https://github.com/smartcontractkit/full-blockchain-solidity-course-py/discussions/304
Below is the full output: