¿OptionParser está en conflicto con la esfinge?

Estoy tratando de escribir una documentación para mi proyecto en la esfinge y cada vez que la esfinge se encuentra con OptionParser en mi módulo, me da:

sphinx-build: error: no such option: -b 

Pensé que es imposible, así que escribí un módulo simple para verificar esto:

 from optparse import OptionParser """some comment here""" parser = OptionParser(conflict_handler='resolve') parser.add_option('', '--force', action='store_true', dest='force', default=False, help='gqdel will skip asking questions, and delete them all.'); parser.add_option('', '--verbose', action='store_true', dest='verbose', default=False, help='Report additional information from gqdel') (options, args) = parser.parse_args() """and here""" print "foo" 

Y me da el mismo error. Mi primer aspecto es el siguiente:

 some title ========== .. automodule:: test :members: 

Esto es lo que creo que sucede:

Cuando se ejecuta Sphinx, autodoc importa su módulo y se ejecuta el código de nivel superior en el módulo. Se crea una instancia de OptionParser, y procesa los argumentos de la línea de comandos y las opciones pasadas a sphinx-build, una de las cuales es -b . Su OptionParser no permite esta opción.

Yo pondría el código OptionParser en una función para que no se ejecute cuando se importa el módulo.

Esto hizo el truco para mí, agregue esto en la parte inferior.

 if __name__ == '__main__': parser = optparse.OptionParser()