JoinColony / colonyNetwork

Colony Network smart contracts
https://colony.io/
GNU General Public License v3.0
438 stars 106 forks source link

Add some hardhat niceties #1255

Closed area closed 3 months ago

area commented 3 months ago

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.