Hello,

I just noticed that a misformatted glossary makes sphinx 1.1 crash.

Here is an example of misformatted glossary, (notice that the second term 
indentation is wrong) 

.. glossary::

   First

       First or 1st is the ordinal form of the number one.

  Second

       2 (number), as an ordinal (also written as 2:sup:`nd`, 2d or 2nd).

   ThirdA

       3 (number), such as the 3rd of something.


The traceback is 

# Sphinx version: 1.1
# Python version: 2.7.1+
# Docutils version: 0.7 release
# Jinja2 version: 2.5.5
Traceback (most recent call last):
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/cmdline.py",
 
line 189, in main
    app.build(force_all, filenames)
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/application.py",
 
line 204, in build
    self.builder.build_update()
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/builders/__init__.py",
 
line 196, in build_update
    'out of date' % len(to_build))
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/builders/__init__.py",
 
line 216, in build
    purple, length):
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/builders/__init__.py",
 
line 120, in status_iterator
    for item in iterable:
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/environment.py",
 
line 613, in update_generator
    self.read_doc(docname, app=app)
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/environment.py",
 
line 761, in read_doc
    pub.publish()
  File "/usr/lib/pymodules/python2.7/docutils/core.py", line 203, in publish
    self.settings)
  File "/usr/lib/pymodules/python2.7/docutils/readers/__init__.py", line 69, 
in read
    self.parse()
  File "/usr/lib/pymodules/python2.7/docutils/readers/__init__.py", line 75, 
in parse
    self.parser.parse(self.input, document)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/__init__.py", line 
157, in parse
    self.statemachine.run(inputlines, document, inliner=self.inliner)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
170, in run
    input_source=document['source'])
  File "/usr/lib/pymodules/python2.7/docutils/statemachine.py", line 233, in 
run
    context, state, transitions)
  File "/usr/lib/pymodules/python2.7/docutils/statemachine.py", line 454, in 
check_line
    return method(match, context, next_state)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2706, in underline
    self.section(title, source, style, lineno - 1, messages)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
329, in section
    self.new_subsection(title, lineno, messages)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
398, in new_subsection
    node=section_node, match_titles=1)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
284, in nested_parse
    node=node, match_titles=match_titles)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
195, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
  File "/usr/lib/pymodules/python2.7/docutils/statemachine.py", line 233, in 
run
    context, state, transitions)
  File "/usr/lib/pymodules/python2.7/docutils/statemachine.py", line 454, in 
check_line
    return method(match, context, next_state)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2283, in explicit_markup
    self.explicit_list(blank_finish)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2314, in explicit_list
    match_titles=self.state_machine.match_titles)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
321, in nested_list_parse
    node=node, match_titles=match_titles)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
195, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
  File "/usr/lib/pymodules/python2.7/docutils/statemachine.py", line 233, in 
run
    context, state, transitions)
  File "/usr/lib/pymodules/python2.7/docutils/statemachine.py", line 454, in 
check_line
    return method(match, context, next_state)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2587, in explicit_markup
    nodelist, blank_finish = self.explicit_construct(match)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2293, in explicit_construct
    return method(self, expmatch)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2035, in directive
    directive_class, match, type_name, option_presets)
  File "/usr/lib/pymodules/python2.7/docutils/parsers/rst/states.py", line 
2086, in run_directive
    result = directive_instance.run()
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/domains/__init__.py",
 
line 190, in run
    return BaseDirective.run(self)
  File 
"/home/sbarthelemy/.local/lib/python2.7/site-packages/Sphinx-1.1-py2.7.egg/sphinx/domains/std.py",
 
line 268, in run
    entries[-1][1].append(line[indent_len:], source, lineno)
IndexError: list index out of range


Regards,

-- Sébastien

-- 
You received this message because you are subscribed to the Google Groups 
"sphinx-dev" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sphinx-dev/-/UGwxweW1Y-IJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sphinx-dev?hl=en.

Reply via email to