pycco-docs / pycco

Literate-style documentation generator.

Home Page:https://pycco-docs.github.io/pycco/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Parsing bug on triple quotes

turicas opened this issue · comments

Hi! First of all, thanks for creating this project. :)

I've found a parsing bug related to triple quotes. This is how to reproduce:

If I create a file named test.py with the following contents:

def test():
    """this is a test
    this line will break parsing because triple quotes finish here, not the next line."""
    pass

Then, run:

pycco test.py

And open docs/test.html in the browser, I'll get:

pycco-parsing-bug

If I change the file to:

def test():
    """this is a test
    this line will break parsing because triple quotes finish here, not the next line.
    """
    pass

Then the output will be:

pycco-parsing-2

Though i agree scenarios like these could also be handled by the application, i don't think this can be technically defined as a bug. The reason is the PEP 257 specifies that:

Unless the entire docstring fits on a line, place the closing quotes on a line by themselves

... and that's the convention Pycco follows.

@gabpalves, the code I've posted as a test to reproduce the bug is valid Python code (it's PEP257-invalid though). I think pycco should work with any (valid) Python code, even if not following the PEP suggestions (they're just suggestions, not a mandatory thing).