JoinColony / colonyNetwork

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

Doc generation should result in all functions that are on contract #1272

Open area opened 1 month ago

area commented 1 month ago

This issue has gotten worse now #1244 has been merged, but wasn't perfect before, either. The docs currently show functions that are explicitly defined in the interface file; they do not show functions that are present on the interface due to inheritance. This doesn't really obstruct the usefulness of the docs, as it's the explicitly defined functions that are usually of interest, but for completeness I think all functions should be present.

I would expect a solution to this to involve some combination of flattening the contract in question (npx hardhat flatten), and using the compiled ABI to work out which functions are actually visible on the contract, and then stitching together the comments from the source file as is currently done. I would find any solution that resulted in all functions that are callable on the contract being visible acceptable, though.