Add some hardhat niceties #1255
Merged
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.
After getting lucky and being bailed out by our existing checks in #1252, I went looking for a replacement for the smoke tests removed in #1196.
I found this plugin, which I have added. I've also added two checks in the circle pipeline; the first checks to see if anything has gone badly wrong (i.e. storage slots have been moved). The second checks whether the storage layouts commited in the repository need updating. This could happen if new storage slots have been added, or if the code has been changed resulting in the AST node IDs being changed. This latter possibility is a bit annoying, but would rather be vaguely annoyed than accidentally ruin our storage layouts again!
While I was looking at hardhat plugins, I've also added this one, which uploads all of our function signatures to https://www.4byte.directory/. I've had a lot of questions recently about what a particular transaction is doing and this will make it much easier for me to give a fast answer. Again, I've added doing that upload as part of the Circle build.