Fix sphinx8 script used by pep8

We wrap doc8 to register the directives we use in our documentation.
Previously the 'app' argument was passed as None, however sphinx has
started to use the argument.

This change uses a mock object since we don't need to use the
application object.

Change-Id: Id9e8d5f6d09f14d294cd493538780456f98c7dbe
This commit is contained in:
Mark Goddard 2020-02-13 11:32:50 +00:00
parent cc219bc0b5
commit 2fcdff101f
1 changed files with 7 additions and 3 deletions

View File

@ -13,6 +13,7 @@ directives when any of the directives modules are imported.
import sys
import doc8.main
import mock
import sphinx.directives
import sphinx.directives.code
import sphinx.directives.patches
@ -21,9 +22,12 @@ import sphinx.directives.patches
def main():
# NOTE: Registering sphinx.directives.other causes a failure in parsing
# later.
sphinx.directives.setup(None)
sphinx.directives.code.setup(None)
sphinx.directives.patches.setup(None)
# Sphinx expects an 'app' argument to these functions. Use a mock since we
# don't need to use the application object.
app = mock.Mock()
sphinx.directives.setup(app)
sphinx.directives.code.setup(app)
sphinx.directives.patches.setup(app)
return doc8.main.main()