You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 3, 2023. It is now read-only.
I have been experiencing a weird bug, and this is the most minimal example I have been able to come up with
test.py:
"""Minimal example of pydocstyle bug."""
class Bug:
"""Seems to only happen with method inside of a class."""
def do_something(x):
"""Do something.
Args:
x: some value
"""
print(f"""{x}
""")
If I run pydocstyle test.py
I get
$ pydocstyle test.py
Traceback (most recent call last):
File "ENVIRONMENT_PATH/bin/pydocstyle", line 8, in <module>
sys.exit(main())
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/cli.py", line 68, in main
sys.exit(run_pydocstyle())
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/cli.py", line 45, in run_pydocstyle
ignore_decorators=ignore_decorators))
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 969, in check
ignore_decorators):
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 123, in check_source
for error in errors:
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 917, in check_docstring_sections
yield from self._check_google_sections(lines, definition, docstring)
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 903, in _check_google_sections
yield from self._check_google_section(docstring, definition, ctx)
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 796, in _check_google_section
yield from cls._check_args_section(docstring, definition, context)
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 748, in _check_args_section
yield from ConventionChecker._check_missing_args(docstring_args, definition)
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 762, in _check_missing_args
function_args = get_function_args(definition.source)
File "ENVIRONMENT_PATH/lib/python3.7/site-packages/pydocstyle/checker.py", line 1002, in get_function_args
function_arg_node = ast.parse(textwrap.dedent(function_string)).body[0].args
File "ENVIRONMENT_PATH/lib/python3.7/ast.py", line 35, in parse
return compile(source, filename, mode, PyCF_ONLY_AST)
File "<unknown>", line 1
def do_something(x):
^
IndentationError: unexpected indent
But the file parses fine by the Python interpreter, and it goes away if I either omit the multiline string literal, omit the Args: block of my docstring, or add a Returns: or Raises: block after the Args: block (adding other stuff there does not seem to fix the issue).
My environment details
Python 3.7.7 on Linux (though have also seen on other versions)
I have been experiencing a weird bug, and this is the most minimal example I have been able to come up with
test.py:
If I run
pydocstyle test.py
I get
But the file parses fine by the Python interpreter, and it goes away if I either omit the multiline string literal, omit the
Args:
block of my docstring, or add aReturns:
orRaises:
block after theArgs:
block (adding other stuff there does not seem to fix the issue).My environment details
Python 3.7.7 on Linux (though have also seen on other versions)
The text was updated successfully, but these errors were encountered: