Skip to content

Crash with preview style fix_fmt_skip_in_one_liners for function with annotated parameter and # fmt: skip on one line #4781

@dylwil3

Description

@dylwil3

Black 314f8c

Playground link

Options

--line-length=88
--safe
--preview

Input

def f(x: int): return x # fmt: skip

Output

(From CLI):

Traceback (most recent call last):
  File "src/black/__init__.py", line 900, in reformat_one
  File "src/black/__init__.py", line 1019, in format_stdin_to_stdout
  File "src/black/__init__.py", line 1083, in format_file_contents
  File "src/black/__init__.py", line 1212, in format_str
  File "src/black/__init__.py", line 1268, in _format_str_once
  File "src/black/nodes.py", line 175, in visit
  File "src/black/linegen.py", line 163, in visit_default
  File "src/black/nodes.py", line 181, in visit_default
  File "src/black/nodes.py", line 173, in visit
  File "src/black/linegen.py", line 285, in visit_funcdef
  File "src/black/nodes.py", line 175, in visit
  File "src/black/linegen.py", line 163, in visit_default
  File "src/black/nodes.py", line 181, in visit_default
  File "src/black/nodes.py", line 173, in visit
  File "src/black/linegen.py", line 416, in visit_tname
AssertionError
error: cannot format -:

Oh no! 💥 💔 💥
1 file failed to reformat.

Expected

def f(x: int): return x # fmt: skip

Metadata

Metadata

Assignees

No one assigned

    Labels

    C: crashBlack is crashingF: fmtskipfmt: skip implementation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions