Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rule SIM222 cause autofix error #7127

Open
qarmin opened this issue Sep 4, 2023 · 1 comment · May be fixed by #15405
Open

Rule SIM222 cause autofix error #7127

qarmin opened this issue Sep 4, 2023 · 1 comment · May be fixed by #15405
Labels
bug Something isn't working fuzzer Surfaced via fuzzing.

Comments

@qarmin
Copy link

qarmin commented Sep 4, 2023

Ruff 0.0.287 (latest changes from main branch)

ruff  *.py --select SIM222 --no-cache --fix

file content(at least simple cpython script shows that this is valid python file):

def interpolate_nodes(
    data: "numpy array (n, 3)", mode: "'spline' or 'linear'", interval: float, *, direction: bool = 1
) -> "numpy array (n, 3)":
        return data

error

/home/rafal/test/tmp_folder/8279128.py:2:40: SIM222 Use `"spline"` instead of `"spline" or ...`
Found 1 error.

error: Autofix introduced a syntax error. Reverting all changes.

This indicates a bug in `ruff`. If you could open an issue at:

    https://github.com/astral-sh/ruff/issues/new?title=%5BAutofix%20error%5D

...quoting the contents of `/home/rafal/test/tmp_folder/8279128.py`, the rule codes SIM222, along with the `pyproject.toml` settings and executed command, we'd be very appreciative!

python_compressed.zip

@MichaReiser MichaReiser added bug Something isn't working fuzzer Surfaced via fuzzing. labels Sep 4, 2023
@dhruvmanila
Copy link
Member

This seems to be caused because the surrounding quotes aren't being considered while generating the fix. So, "'spline' or 'linear'" is getting replaced with ""spline"".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working fuzzer Surfaced via fuzzing.
Projects
None yet
3 participants