Open
Description
Take test.py
:
import os
print(f"foo -> {os.path.join("bar", "baz")}")
python3 test.py
runs successfully and produces foo -> bar/baz
yapf test.py
crashes with:
Traceback (most recent call last):
File "yapf/yapf/yapflib/yapf_api.py", line 198, in FormatCode
tree = pytree_utils.ParseCodeToTree(unformatted_source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "yapf/yapf/pytree/pytree_utils.py", line 113, in ParseCodeToTree
tree = parser_driver.parse_string(code, debug=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".local/lib/python3.12/site-packages/yapf_third_party/_ylib2to3/pgen2/driver.py", line 187, in parse_string
return self.parse_tokens(tokens, debug)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".local/lib/python3.12/site-packages/yapf_third_party/_ylib2to3/pgen2/driver.py", line 156, in parse_tokens
if p.addtoken(type, value, (prefix, start)):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".local/lib/python3.12/site-packages/yapf_third_party/_ylib2to3/pgen2/parse.py", line 230, in addtoken
return self._addtoken(ilabel, type, value, context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".local/lib/python3.12/site-packages/yapf_third_party/_ylib2to3/pgen2/parse.py", line 313, in _addtoken
raise ParseError('bad input', type, value, context)
yapf_third_party._ylib2to3.pgen2.parse.ParseError: bad input: type=1, value='bar', context=('', (2, 32))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "yapf/yapf/__init__.py", line 238, in _FormatFile
reformatted_code, encoding, has_change = yapf_api.FormatFile(
^^^^^^^^^^^^^^^^^^^^
File "yapf/yapf/yapflib/yapf_api.py", line 88, in FormatFile
reformatted_source, changed = FormatCode(
^^^^^^^^^^^
File "yapf/yapf/yapflib/yapf_api.py", line 201, in FormatCode
raise errors.YapfError(errors.FormatErrorMsg(e))
^^^^^^^^^^^^^^^^^^^^^^^^
File "yapf/yapf/yapflib/errors.py", line 37, in FormatErrorMsg
return '{}:{}:{}: {}'.format(e.args[1][0], e.args[1][1], e.args[1][2], e.msg)
~~~~~~^^^
IndexError: tuple index out of range
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "yapf/yapf/__main__.py", line 18, in <module>
yapf.run_main()
File "yapf/yapf/__init__.py", line 377, in run_main
sys.exit(main(sys.argv))
^^^^^^^^^^^^^^
File "yapf/yapf/__init__.py", line 136, in main
changed = FormatFiles(
^^^^^^^^^^^^
File "yapf/yapf/__init__.py", line 214, in FormatFiles
changed |= _FormatFile(filename, lines, style_config, no_local_style,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "yapf/yapf/__init__.py", line 248, in _FormatFile
raise errors.YapfError(errors.FormatErrorMsg(e))
^^^^^^^^^^^^^^^^^^^^^^^^
File "yapf/yapf/yapflib/errors.py", line 37, in FormatErrorMsg
return '{}:{}:{}: {}'.format(e.args[1][0], e.args[1][1], e.args[1][2], e.msg)
~~~~~~^^^
IndexError: tuple index out of range
Metadata
Assignees
Labels
No labels
Activity