FAQ

  1. I'm seeing a syntax error in a docstring where there is no annotation. What gives?

Scribble tries extract potential annotations out of unstructured text. As such whenever it sees one of the keywords if_succeeds, if_updated, invariant and define as the first word on a new line, it will assume an annotations is starting. Since invaraint and define are also common words, its possible that they are more commonly the first word in a docstring. For now, if possible please re-word the docstrign so that the keyword is not the first word on a line. If thats not possible (e.g. the problem occurs in a 3rd party library), please open up an issue on https://github.com/ConsenSys/scribble/issues and we will see if there is some way to address your use case. Note that in the future this will be less of a problem, as we are collaborating with Solidity devs to migrate to using natspec.

2. I'm getting an error "TypeError: Variable ... is defined in the new context in ... but used in an old() expression"

See this section for help.