#!/usr/bin/env python """ Sphinx documentation style checker. This is a very thin wrapper around doc8, that adds support for sphinx-specific RST directives. NOTE: We require sphinx>1.5 in order to avoid automatically registering all 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 def main(): # NOTE: Registering sphinx.directives.other causes a failure in parsing # later. # 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() if __name__ == "__main__": sys.exit(main())