Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exception from retrieve_project_info_for_auto #197

Closed
mikepurvis opened this issue Jun 12, 2015 · 2 comments
Closed

Exception from retrieve_project_info_for_auto #197

mikepurvis opened this issue Jun 12, 2015 · 2 comments

Comments

@mikepurvis
Copy link
Contributor

Error:

  File "/home/vagrant/lirp_ws/src/firmware_components/doc/breathe/breathe/directive/file.py", line 117, in run
    project_info = self.project_info_factory.retrieve_project_info_for_auto(self.options)
  File "/home/vagrant/lirp_ws/src/firmware_components/doc/breathe/breathe/project.py", line 275, in retrieve_project_info_for_auto
    return self.project_info_for_auto_store[name]
KeyError: 'auto'

Full stack trace: https://gist.github.com/anonymous/508e511aad2b3d53bceb

Doxyfile:

PROJECT_NAME     = "Firmware Components"
XML_OUTPUT       = doxyxml
GENERATE_LATEX   = NO
GENERATE_MAN     = NO
GENERATE_RTF     = NO
CASE_SENSE_NAMES = NO
INPUT            = ../firmware
RECURSIVE        = YES
QUIET            = YES
JAVADOC_AUTOBRIEF = YES
GENERATE_HTML = NO
GENERATE_XML = YES

conf.py (excerpt):

subprocess.call('doxygen', shell=True)

dirname = os.path.abspath(os.path.dirname(__file__))
sys.path.insert(0, os.path.join(dirname, "breathe"))
breathe_projects = { "firmware_components": os.path.join(dirname, "doxyxml") }
breathe_default_project = "firmware_components"

extensions = [
    'sphinx.ext.autodoc',
    'sphinx.ext.doctest',
    'sphinx.ext.viewcode',
    'breathe'
]

project = 'firmware_components'

Looks like breathe_projects and breathe_default_project are getting populated correctly; it's not clear to me what exactly that function does. Any guidance welcome.

Happens on master and 4.0.0.

@vitaut
Copy link
Contributor

vitaut commented Jun 12, 2015

Do you have Breathe in the project's directory? Since Sphinx processes .rst files in project's subdirectories it might get to autofile.rst from Breathe:

   .. autodoxygenfile:: auto_class.h
      :source: auto

causing the error.

If this is the case an easy solution is to exclude the directories you don't want to be processed:

exclude_patterns = ['breathe/*']

@mikepurvis
Copy link
Contributor Author

Oh duh, that was it of course. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants