fix: handle add deployment when source not in _source object #1290
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What I did
In some rare cases, the
_sources
attribute of a contract will be missing sources. When adding a contract to the cache, this results in an exception being thrown, even though the contract compiled successfully.Here I just handled the situation by reading in the source file at the path provided, instead of expecting it to be in the sources object.
Fixes: #1047
Related: #1269
How I did it
How to verify it
Everything should pass as normal, and one should be able to import this contract from etherscan
0xee8389d235e092b2945fe363e97cdbed121a0439
, you should have openzeppelin contracts version 3.2.0 installedbrownie pm install OpenZeppelin/[email protected]
Checklist