ruff 0.17.1
- Source
- https://github.com/astral-sh/ruff
- Tag scanned
0.17.1- Compared with
0.17.0(1 signals introduced since)- Files
- 6737 scanned, 4449 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 6 warn · 604 info
- Scan time
- 111.3 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): the 126 most severe of 132 warn and critical signals (126 with a verdict); 126 demoted to info. The rest are unreviewed.
- Disclude version
- 4.1.0
- Scanned (UTC)
- 2026-10-22 00:57
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
ERROR pandas/io/parsers/readers.py:914:5-15: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer' -
ERROR pandas/io/parsers/readers.py:924:5-15: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer' -
ERROR pandas/io/parsers/readers.py:934:5-15: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer' -
pandas/core/array_algos/datetimelike_accumulations.py:38:22: error[invalid-argument-type] Method `__getitem__` of type `bound method dict[(bound method _UFunc_Nin2_Nout1[Literal["maximum"], Literal[21], None].accumulate(array: _Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | ... omit -
pandas/core/array_algos/masked_accumulations.py:56:22: error[invalid-argument-type] Method `__getitem__` of type `bound method dict[Overload[(a: _SupportsArray[dtype[numpy.bool[builtins.bool]]] | _NestedSequence[_SupportsArray[dtype[numpy.bool[builtins.bool]]]] | builtins.bool | _NestedSequence[builtins.bool], axis: Su -
torch/_dynamo/polyfills/itertools.py:314:1: error[invalid-argument-type] Argument is incorrect: Expected `Overload[[_T1, _T_co](iter1: Iterable[_T1], /, *, fillvalue: object = None) -> zip_longest[tuple[_T1]] | zip_longest[tuple[_T1@__new__ | Any, _T2@__new__ | Any]] | zip_longest[tuple[_T1@__new__ | _T@__new__, _T2@__ -
# For a specific version. |likely benign README instructions for a pinned ruff version via curl-to-sh and PowerShell irm|iex.Reasoning
Pinned-version installer from the same official astral.sh domain, plus a PowerShell irm|iex line for Windows. This is standard, documented installation for the project.
-
likely benign CI step runs the built package's module name from an env variable to smoke-test the install.
Reasoning
Shell variable used as command name in a CI smoke test; the value comes from workflow env set by the repo itself. Standard release-workflow pattern, not malicious.
-
IMPORTS_FILE="/ruff-coff-imports.txt" if ; thenlikely benign Windows build step locates llvm-readobj and inspects ruff.exe's COFF imports.Reasoning
LLVM_READOBJ is assigned from tool discovery (llvm-readobj path) and used to inspect PE imports of the built ruff.exe for a vcruntime check. Runtime-determined command but consistent with build tooling; no download-and-execute or obfuscation visible.
-
likely benign CI smoke test runs the installed module's help command using a variable name.
Reasoning
Same benign smoke-test pattern with MODULE_NAME from workflow env, installing the freshly built wheel.
-
likely benign CI job installs the built package and runs its help command via a variable.
Reasoning
Same benign install-and-smoke-test pattern repeated across platform jobs.
-
likely benign CI job installs the built package and runs its help command via a variable.
Reasoning
Same benign install-and-smoke-test pattern.
-
likely benign CI job runs the venv-installed entry point's help command via a variable.
Reasoning
Same benign pattern invoking a venv-installed entry point by configured name.
-
likely benign CI job runs the venv-installed entry point's help command via a variable.
Reasoning
Same benign pattern as the other smoke tests.
-
|likely benign CI step installs the pinned cargo-hawk tool by piping its release installer script to sh.Reasoning
Pipes a curl download from the official astral-sh GitHub release, pinned by version variable, into sh. Piping an installer script to sh is a risky practice but it is from the project's own release host over HTTPS with TLS 1.2 enforced; common for installer bootstraps in CI.
-
if: ${{ always() && needs.plan.result == 'success' && needs.plan.outputs.publishing == 'true' && needs.sign-release-binaries.result == 'success' && needs.generate-checksum-manifest.result == 'success' && (needs.build-global-artifacts.result == 'skipped' || needs.build-global-artifacts.result == 'success') && (needs -
filikely benign Release workflow installs the signed ruff wheel and runs version and help checks.Reasoning
Array-expanded python command used to install the signed wheel and run ruff; the python array is set earlier in the same workflow. Benign release verification.
-
likely benign Release workflow runs ruff module help check via the python array.
Reasoning
Benign help check using the locally defined python array.
-
if () { }dismissed PowerShell step sets ErrorActionPreference to Stop before locating the signed wheel.Reasoning
PowerShell preference variable assignment, a standard setting, flagged only because the scanner misparsed it as a command.
-
if () { }likely benign PowerShell step locates the single signed ruff wheel and installs it with pip.Reasoning
$wheel is a result of Get-ChildItem for the signed wheel, validated to exactly one match before pip install. Benign, parser artifact flagged as command invocation.
-
if () { }likely benign PowerShell step in a release workflow that installs a signed ruff wheel.Reasoning
The block is PowerShell in a workflow (Get-ChildItem, $LASTEXITCODE, throw), not bash. The scanner misread PowerShell variables as command names. It installs a signed wheel and checks the exit code, which is a normal release-verification step.
-
if () if ()likely benign Exit-code check after installing the signed wheel in a PowerShell release step.Reasoning
Same PowerShell block; $LASTEXITCODE is a PowerShell automatic variable checked after the install. The flag comes from parsing PowerShell as bash.
-
if () if ()likely benign Smoke test of the signed ruff executable in a release workflow.Reasoning
Same PowerShell pattern: running the signed ruff executable and checking $LASTEXITCODE. Nothing suspicious is shown.
-
if () if ()likely benign Smoke test of python -m ruff in a release workflow.Reasoning
Same PowerShell pattern: testing that the module invocation works. This is a verification step with no network fetch or obfuscation.
-
if ()likely benign Exit-code check after python -m ruff in a release workflow.Reasoning
Same PowerShell pattern: an exit-code check after module invocation. Benign release verification.
-
1.likely benign Documentation line telling contributors to install uv via the official curl-to-sh script.Reasoning
This is the official uv installer one-liner shown in contributor docs. curl | sh is a common install pattern. It points to the project's own domain, and no obfuscation is present.
-
# On macOS and Linux. | # On Windows.likely benign README install instructions for ruff via the official astral.sh curl-to-sh script.Reasoning
This is the documented official ruff installer from astral.sh, matching the project's install instructions. The pipe-to-shell pattern is a known convention with no hidden payload.
-
- -
-
err.to_string, "Unknown HTML comment `snpshotttt-digggggnosstic` -- possibly a typo? \ (Add to `HTML_COMMENT_ALLOWLIST` if this is a false positive)", ); -
warn_user_once!; } -
-
info
whitespace-anomalycrates/ruff_annotate_snippets/tests/color/multiline_removal_suggestion.rs:2:1use ; -
| ___________^ 4 | | 5 | | ] | |_^ annotation -
| ___________^ 4 | | 5 | | ] | |_^ annotation -
│ ┏━━━━━━━━━━━┛ 4 │ ┃ 5 │ ┃ ] ╰╴┗━┛ annotation -
│ ┏━━━━━━━━━━━┛ 4 │ ┃ 5 │ ┃ ] ╰╴┗━┛ annotation -
��|�\u!5�cc\u\u�Ӻi��WWj�ȥ�'�}�\u�J�ȉ��W�\uO�@����\uw�V���LO����\u -
| 1 | �|�␂!5�cc␕␂�Ӻi��WWj�ȥ�'�}�␒�J�ȉ��W�␞O�@����␜w�V���LO����␔ -
│ 1 │ �|�␂!5�cc␕␂�Ӻi��WWj�ȥ�'�}�␒�J�ȉ��W�␞O�@����␜w�V���LO����␔ -
-
info
warn→ info by reviewwhitespace-anomalycrates/ruff_annotate_snippets/tests/rustc_tests.rs:4533:3let s = c"foo\ ⟨U+00A0⟩ bar "; //~^^^ WARNING whitespace symbol '\u{a0}' is not skippeddismissed Rust test fixture that deliberately contains a non-breaking space to check whitespace diagnostics.Reasoning
The NBSP is inside a test string literal and the adjacent comment expects a WARNING for '\u{a0}'. It is a deliberate test case for whitespace handling, not code that hides anything.
-
= 1 # print('hello') -
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_async/ASYNC22x.py:73:5# if mode is given, and is not os.P_WAIT: ASYNC220 # ASYNC220 # ASYNC220 # ASYNC220dismissed Linter test case calling os.spawnl with a P_NOWAIT mode, annotated with the expected rule code.Reasoning
This is a linter test fixture. The os.spawnl calls exist to trigger rule ASYNC220 and carry matching expectation comments. The flagged call is test input, not runtime execution.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_async/ASYNC22x.py:74:5# ASYNC220 # ASYNC220 # ASYNC220 # ASYNC220dismissed Linter test case for os.spawnl with mode arguments, expecting ASYNC220.Reasoning
Same linter test fixture with ASYNC220 expectation comments. The spawn calls are inputs for static-analysis tests.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_async/ASYNC22x.py:81:5# if it is P_WAIT, ASYNC221 # ASYNC221 # ASYNC221 # ASYNC221dismissed Linter test case for os.spawnl with P_WAIT mode, expecting ASYNC221.Reasoning
Linter test fixture for ASYNC221 with explicit expectation comments. The os.spawnl calls only exercise the rule's detection logic.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_async/ASYNC22x.py:86:5# other weird cases: ASYNC220 # ASYNC220 # ASYNC220 # ASYNC220dismissed Linter test case covering unusual os.spawnl arguments, expecting ASYNC220.Reasoning
Linter test fixture with literal and call arguments to os.spawnl, marked with ASYNC220 expectations. It is a rule-coverage case and not a real spawn.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_async/ASYNC22x.py:87:5# ASYNC220 # ASYNC220 # ASYNC220likely benign Test fixture calling os.spawnl to exercise the ASYNC220 lint rule.Reasoning
This is a linter test fixture (ruff) exercising os.spawnl detection with literal and dynamic arguments; the calls are inert test cases, not malicious.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_async/ASYNC22x.py:88:5# ASYNC220 # ASYNC220 # ASYNC222likely benign Test fixture containing os.spawnl with a non-literal path to exercise lint rules.Reasoning
The critical severity is driven by a non-literal argument, but the file is a ruff linter test fixture with commented expectations; the call is never meant to run.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:8:1# Check all shell functions.likely benign Test fixture calling os.system and os.popen with literal commands.Reasoning
Ruff's flake8-bandit S605 test fixture enumerating shell-invoking functions with literal arguments; benign test data.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:9:1likely benign Test fixture calling os.popen with a literal command.Reasoning
Same S605 bandit test fixture; literal os.popen call exists to test detection rules.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:20:1likely benign Test fixture calling subprocess.getoutput with a literal command.Reasoning
Bandit rule test fixture for subprocess shell helpers with literal strings; no malicious behaviour.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:21:1likely benign Test fixture calling subprocess.getstatusoutput with a literal command.Reasoning
Bandit rule test fixture for subprocess shell helpers; literal arguments in a linter test.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:26:1=likely benign Test fixture calling os.system with variable arguments.Reasoning
Non-literal os.system calls appear in a ruff S605 test fixture to check that dynamic commands are flagged; not deployed code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:27:1likely benign Test fixture calling os.system with variable and list arguments.Reasoning
Linter fixture repeating os.system variants to test rule coverage.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S605.py:28:1likely benign Test fixture calling os.system with list arguments.Reasoning
Linter fixture for os.system argument shapes; benign test code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:12:1likely benign Test fixture calling os.execvpe with a literal path.Reasoning
Bandit S606 test fixture listing os.spawn-family calls with literal strings; benign test data.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:13:1likely benign Test fixture calling os.spawnle with a literal path.Reasoning
S606 linter test fixture; no real spawn behaviour of concern.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:14:1likely benign Test fixture calling os.spawnlp with a literal path.Reasoning
S606 linter test fixture enumerating spawn functions; benign.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:15:1likely benign Test fixture calling os.spawnlpe with a literal path.Reasoning
S606 linter test fixture; benign test code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:16:1likely benign Test fixture calling os.spawnv with a literal path.Reasoning
S606 linter test fixture; benign test code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:17:1likely benign Test fixture calling os.spawnve with a literal path.Reasoning
S606 linter test fixture; benign test code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:18:1likely benign Test fixture calling os.spawnvp with a literal path.Reasoning
S606 linter test fixture; benign test code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S606.py:19:1likely benign Test fixture calling os.spawnvpe with a literal path.Reasoning
S606 linter test fixture; benign test code.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:9:1dismissed Test fixture calling os.system with a literal harmless command "true".Reasoning
The file is a test fixture for ruff's bandit S607 rule, with a regression reference to a ruff issue. The literal "true" command is a harmless placeholder used to exercise the linter, not a payload.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:10:1dismissed Test fixture calling os.popen with a literal harmless command "true".Reasoning
This is a linter test fixture for the S607 rule. The os.popen call uses the literal placeholder "true", so it is a legitimate pattern in a test file.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:29:1dismissed Test fixture calling os.spawnl with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:30:1dismissed Test fixture calling os.spawnle with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:31:1dismissed Test fixture calling os.spawnlp with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:32:1dismissed Test fixture calling os.spawnlpe with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:33:1dismissed Test fixture calling os.spawnv with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:34:1dismissed Test fixture calling os.spawnve with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:35:1dismissed Test fixture calling os.spawnvp with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:36:1dismissed Test fixture calling os.spawnvpe with a literal placeholder binary path.Reasoning
Part of the S607 test fixture exercising os.spawn* variants with a placeholder literal. No obfuscation or malicious intent is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:40:1# Check it does not fail for full paths.dismissed Test fixture calling os.system with the literal full path /bin/ls.Reasoning
Test fixture for the S607 rule checking that full paths are handled. The literal /bin/ls is a benign, expected pattern in a linter test.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:41:1dismissed Test fixture calling os.system with literal ls commands.Reasoning
Test fixture for the S607 rule with benign literal ls commands. No obfuscation or malicious behavior is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:42:1dismissed Test fixture calling os.system with literal ls and Windows path strings.Reasoning
Test fixture for the S607 rule with benign literal commands and a raw Windows path. No obfuscation or malicious behavior is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:43:1dismissed Test fixture calling os.system with literal command lists.Reasoning
Test fixture for the S607 rule with benign literal command lists. No obfuscation or malicious behavior is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S607.py:44:1# Regression for https://github.com/astral-sh/ruff/issues/24075dismissed Test fixture calling os.system with a literal ls command list.Reasoning
Test fixture for the S607 rule with a benign literal command list and a reference to a ruff issue. No malicious behavior is present.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S609.py:4:1dismissed Test fixture calling os.popen and subprocess.Popen with literal wildcard-argument commands.Reasoning
Test fixture for the S609 wildcard-injection rule. The os.popen and subprocess calls use literal benign commands in a linter test file, not an attack.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S609.py:5:1likely benign Test fixture calling subprocess.Popen with shell=True and a literal command.Reasoning
The file is a ruff linter test fixture for bandit rule S609. The shell=True calls exist so the rule can fire on them, and the commands are literal, not built from untrusted input.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S609.py:6:1likely benign Test fixture calling subprocess.Popen with shell=True and a literal chown command.Reasoning
Same S609 test fixture. The shell=True call uses a fixed literal command string with no attacker-controlled input.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/flake8_bandit/S609.py:8:1likely benign Test fixture calling os.system and subprocess with a literal shell command.Reasoning
Part of the S609 linter test fixture, which deliberately includes os.system and shell= variants to exercise the rule. The commands are static literals.
-
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/flake8_comprehensions/C403.py:1:1 -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/flake8_comprehensions/C408.py:1:1 -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/flake8_implicit_str_concat/ISC.py:1:1 -
info
whitespace-anomalycrates/ruff_linter/resources/test/fixtures/flake8_implicit_str_concat/ISC.py:6:1= \ = -
# [no-else-return] = 1 return -
= = -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:162:26# SIM110 return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:162:41# SIM110 return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:162:56# SIM110 return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:162:71# SIM110 return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:170:26# OK (too long) return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:170:41# OK (too long) return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:170:56# OK (too long) return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM110.py:170:71# OK (too long) return True -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:178:26# SIM111 return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:178:41# SIM111 return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:178:56# SIM111 return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:178:71# SIM111 return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:186:26# OK (too long) return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:186:41# OK (too long) return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:186:56# OK (too long) return False -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM111.py:186:71# OK (too long) return False -
: -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:95:19# SIM117 (auto-fixable) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:95:34# SIM117 (auto-fixable) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:96:23 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:96:38 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:100:19# SIM117 (not auto-fixable too long) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:100:34# SIM117 (not auto-fixable too long) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:101:23 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM117.py:101:38 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:43:33= # SIM401 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:43:48= # SIM401 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:43:63= # SIM401 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:43:78= # SIM401 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:62:33= # OK (false negative) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:62:48= # OK (false negative) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:62:63= # OK (false negative) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:62:78= # OK (false negative) -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/flake8_simplify/SIM401.py:62:93= # OK (false negative) -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/flake8_use_pathlib/PTH210_1.py:1:1 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:6:31# The next import fits on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ # The next import doesn't fit on one line. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:6:46# The next import fits on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ # The next import doesn't fit on one line. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:6:61# The next import fits on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ # The next import doesn't fit on one line. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:6:76# The next import fits on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ # The next import doesn't fit on one line. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:6:91# The next import fits on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ # The next import doesn't fit on one line. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:6:106# The next import fits on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ # The next import doesn't fit on one line. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:8:31# The next import doesn't fit on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:8:46# The next import doesn't fit on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:8:61# The next import doesn't fit on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:8:76# The next import doesn't fit on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:8:91# The next import doesn't fit on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/fit_line_length_comment.py:8:106# The next import doesn't fit on one line. # 012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9012ß9💣2ℝ9 -
info
warn→ info by reviewunicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/length_sort_non_ascii_members.py:7:5, , , ,likely benign Identifier in a sorting test fixture that mixes Greek and Latin letters.Reasoning
This is an isort test fixture for sorting non-ASCII names. The identifier mixes Greek and Latin letters on purpose to test sort ordering, not to hide code from a reader.
-
info
warn→ info by reviewunicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/length_sort_non_ascii_modules.py:8:8likely benign Import name in a sorting test fixture that mixes Greek and Latin letters.Reasoning
Same isort non-ASCII fixture. The mixed-script import name exists to test length-based sorting of unicode module names and is not used to disguise a call.
-
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/isort/sort_similar_imports.py:1:1 -
info
warn→ info by reviewunicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/isort/unicode.py:4:17= 2 * *likely benign Import alias in a unicode test fixture mixing Latin and Greek letters.Reasoning
This is an isort unicode test fixture. The mixed-script alias is an intentional case for the sorter, and the identifier is only bound to an import with no dangerous use.
-
# No error -
#: E111 E117 -
pass #: E273 True and False -
pass # end -
# aaaaa # a # a # aa -
'''File starts with a tab multiline string with tab in it''' -
= 12 #: W291:2:35 '''multiline -
#!/usr/bin/env python3 """Here's a top-level ß9💣2ℝing that's over theß9💣2ℝ.""" -
"""Here's a ß9💣2ℝing that's also over theß9💣2ℝ.""" = 1 # Here's a comment that's over theß9💣2ℝ, but it's not standalone. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/pycodestyle/W505_utf_8.py:15:79 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/pycodestyle/W505_utf_8.py:18:36 -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/pycodestyle/W505_utf_8.py:22:36"""Here's a multi-line ß9💣2ℝing. It's over theß9💣2ℝ on this line, which isn't the first line in the ß9💣2ℝing. -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/pycodestyle/W505_utf_8.py:24:86in 💣2ℝing. """ -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/pycodestyle/W505_utf_8.py:29:36"""Here's a multi-line ß9💣2ℝing. It's over theß9💣2ℝ on this line, which isn't the first line in the ß9💣2ℝing.""" -
info
unicode-mixed-scriptcrates/ruff_linter/resources/test/fixtures/pycodestyle/W505_utf_8.py:31:86in 💣2ℝing. -
info
warn→ info by reviewwhitespace-anomalycrates/ruff_linter/resources/test/fixtures/pydocstyle/D.py:723:4⟨U+00A0⟩ ⟨U+00A0⟩ : """likely benign Non-breaking space in the indentation of a docstring in a pydocstyle fixture.Reasoning
A non-breaking space in docstring indentation within a pydocstyle test fixture. It is a cosmetic whitespace artifact with no code effect.
-
info
warn→ info by reviewwhitespace-anomalycrates/ruff_linter/resources/test/fixtures/pydocstyle/D208.py:9:9: ⟨U+00A0⟩ ⟨U+00A0⟩ : """likely benign Non-breaking space in docstring indentation in a pydocstyle fixture.Reasoning
A non-breaking space in a docstring indentation inside a pydocstyle test fixture. It is a whitespace quirk that exists to test D208 and does not change behavior.
-
info
warn→ info by reviewwhitespace-anomalycrates/ruff_linter/resources/test/fixtures/pydocstyle/D208.py:15:1""" ⟨U+3000⟩⟨U+3000⟩⟨U+3000⟩参数含义:precision:精确到小数点后几位 """likely benign Ideographic space in the indentation of a Chinese docstring in a fixture.Reasoning
An ideographic space inside a Chinese-language docstring in a pydocstyle fixture. This is ordinary CJK typography and is confined to a string literal.
-
pass -
# See: https://github.com/astral-sh/ruff/issues/22554 # should detect -------------------------vvvvvvvvvvvvv -
info
critical→ info by reviewunicode-bidicrates/ruff_linter/resources/test/fixtures/pylint/bidirectional_unicode.py:2:16# E2502 # E2502likely benign Bidirectional formatting control character inside a string in a linter test fixture.Reasoning
The file is a pylint E2502 test fixture for bidi characters. The pop-directional mark is deliberately placed to exercise the rule, and it sits in a string literal. The snippet matches the Trojan Source pattern, but the context is a test.
-
info
critical→ info by reviewunicode-bidicrates/ruff_linter/resources/test/fixtures/pylint/bidirectional_unicode.py:11:25# E2502 # Check if admin ⟨U+2069⟩⟨U+2066⟩' and access_level != 'userlikely benign Right-to-left override control character in a test fixture comparison line.Reasoning
This is the E2502 test fixture. The right-to-left override sits in a comment-adjacent string and is a deliberate test case for the rule. The same Trojan Source shape would be dangerous in real code, but here the file is a test fixture.
-
info
critical→ info by reviewunicode-bidicrates/ruff_linter/resources/test/fixtures/pylint/bidirectional_unicode.py:11:28# E2502 # Check if admin ⟨U+2069⟩⟨U+2066⟩' and access_level != 'userlikely benign Left-to-right isolate control character in a bidi linter test fixture.Reasoning
Part of the same deliberate E2502 test fixture. The isolate character is placed to trigger the bidi rule and belongs to test data.
-
info
critical→ info by reviewunicode-bidicrates/ruff_linter/resources/test/fixtures/pylint/bidirectional_unicode.py:11:52# E2502 # Check if admin ⟨U+2069⟩⟨U+2066⟩' and access_level != 'userlikely benign Pop-directional isolate control character in a bidi linter test fixture.Reasoning
Same E2502 fixture. The pop-isolate character is an intentional test artifact used to check bidi detection.
-
info
critical→ info by reviewunicode-bidicrates/ruff_linter/resources/test/fixtures/pylint/bidirectional_unicode.py:11:55# E2502 # Check if admin ⟨U+2069⟩⟨U+2066⟩' and access_level != 'userlikely benign Left-to-right isolate control character in a bidi linter test fixture.Reasoning
Same E2502 fixture. The second left-to-right isolate is another deliberate bidi test character and does not alter any shipped code.
-
info
critical→ info by reviewunicode-bidicrates/ruff_linter/resources/test/fixtures/pylint/bidirectional_unicode.py:17:46"""Subtract funds from bank account then ⟨U+2067⟩""" return -=likely benign Right-to-left isolate control character in a docstring in a bidi linter test fixture.Reasoning
Same E2502 fixture. The right-to-left isolate inside a docstring is a deliberate test case for detecting bidi characters in documentation text.
-
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/pylint/boolean_chained_comparison.py:1:1 -
info
whitespace-anomalycrates/ruff_linter/resources/test/fixtures/pylint/boolean_chained_comparison.py:9:1# [boolean-chained-comparison] pass = -
info
warn→ info by reviewunicode-homoglyphcrates/ruff_linter/resources/test/fixtures/pylint/empty_comment.py:57:1= 1 #likely benign Greek letter alpha used as an identifier in a ruff test fixture.Reasoning
Greek alpha used as a variable name in a linter test fixture for empty comments. The homoglyph is a deliberate test input, not a deceptive identifier in shipped code.
-
info
warn→ info by reviewunicode-homoglyphcrates/ruff_linter/resources/test/fixtures/pylint/empty_comment.py:58:1= 1 #likely benign Greek letter alpha identifier in a ruff pylint test fixture.Reasoning
Same Greek alpha identifier in the same test fixture. It is a lint test case, not an attack.
-
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/pylint/global_variable_not_assigned.py:1:1 -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/pylint/repeated_keyword_argument.py:1:1 -
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/pylint/subprocess_run_without_check.py:5:1likely benign Test fixture calling subprocess.run with shell=True on a literal command.Reasoning
subprocess.run with shell=True and a fixed literal command 'ls' in a linter fixture. No untrusted input reaches the shell, and the file exists to test a lint rule about check=.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/pylint/subprocess_run_without_check.py:15:1# Not a subprocess.run call.likely benign Test fixture variants of subprocess.run with literal commands.Reasoning
Several variants of subprocess.run with a literal 'ls' command, including a deliberate non-subprocess foo.run control line. This is lint test data.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/pylint/subprocess_run_without_check.py:16:1# Not a subprocess.run call. # Not a subprocess.run call.likely benign Test fixture variants of subprocess.run with literal commands.Reasoning
Same fixture with a literal command and no dynamic input. The comment marks it as a test of the check= argument.
-
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/pylint/too_many_arguments.py:1:1 -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/pylint/too_many_boolean_expressions.py:1:1 -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/pylint/too_many_positional_arguments.py:1:1 -
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/pylint/useless_else_on_loop.py:121:14breaklikely benign Test fixture reading its own source file inside a for loop.Reasoning
open(__file__) inside a loop checking for a marker string is a contrived control-flow test for the useless-else rule. It is not a real payload extractor in shipped code.
-
""".encode( "utf-8" ) ( -
... -
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/ruff/RUF028.py:103:12assert ==likely benign Test helper using eval on a parametrized input in a ruff fixture.Reasoning
eval of a test input inside a test helper, in a ruff rule fixture. It is a normal test assertion pattern.
-
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/ruff/RUF031_prefer_parens.py:1:1 -
⟨U+000C⟩ ⟨U+000C⟩ -
info
warn→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/ruff/RUF100_0.py:113:5# Disabled - check redirects are reported correctly # noqa: PGH001likely benign Fixture line calling eval with a noqa directive.Reasoning
eval(command) with a noqa comment in a ruff noqa-handling fixture. The code exists to test directive parsing.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/ruff/RUF100_0.py:128:5# Allow code redirects = # noqa: PGH001, S307 = # noqa: S307, PGH001, S307, S307, S307 = # noqa: PGH001, S307, PGH001likely benign Repeated eval lines with varying noqa comments in a ruff fixture.Reasoning
Module-scope eval repeated across lines that only vary noqa comments. The repetition is intentional test input for the unused-noqa rule, not a dropper.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/ruff/RUF100_0.py:129:5= # noqa: PGH001, S307 = # noqa: S307, PGH001, S307, S307, S307 = # noqa: PGH001, S307, PGH001 = # noqa: PGH001, S307, PGH001, S307likely benign Repeated module-scope eval lines in a ruff noqa test fixture.Reasoning
Same repeated module-scope eval fixture for noqa parsing. Severity is high only because the detector ignores the test context.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/ruff/RUF100_0.py:130:5= # noqa: S307, PGH001, S307, S307, S307 = # noqa: PGH001, S307, PGH001 = # noqa: PGH001, S307, PGH001, S307likely benign Module-scope eval lines varying noqa directives in a ruff fixture.Reasoning
Same noqa-variant fixture with eval on an undefined name. This is lint test data.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_linter/resources/test/fixtures/ruff/RUF100_0.py:131:5= # noqa: PGH001, S307, PGH001 = # noqa: PGH001, S307, PGH001, S307likely benign Module-scope eval line in a ruff noqa test fixture.Reasoning
Final variant of the same noqa test fixture. Nothing indicates a real payload.
-
= = -
"""Here's a docstring with a greek rho: ρ""" # And here's a comment with a greek alpha: ∗ ... -
= = -
# contains ASCII. = # The two characters should be flagged here. The first character is a "word" -
# contains ASCII. = # The two characters should be flagged here. The first character is a "word" -
# boundary" (whitespace) that it itself ambiguous. = # Same test cases as above but using f-strings instead: -
# Same test cases as above but using f-strings instead: = f = f = f -
= f = f = f -
= f = f = f -
= f = f # Nested f-strings -
# Nested f-strings = f # Comments inside f-strings -
# Nested f-strings = f # Comments inside f-strings -
# Implicit string concatenation = f -
# Implicit string concatenation = f -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/semantic_errors/global_parameter.py:1:1 -
info
identifier-low-lengthcrates/ruff_linter/resources/test/fixtures/semantic_errors/nonlocal_parameter.py:1:1 -
Args: ⟨U+00A0⟩ ⟨U+00A0⟩ Returns: """ "#;likely benign Docstring-style raw string containing a non-breaking space in indentation.Reasoning
A non-breaking space in indentation inside a raw string docstring example. It is most likely test or documentation text, though a stray NBSP is a plausible copy-paste artifact.
-
-
/// /// let locator = Locator::new("α"); /// /// assert_eq!( -
&LinterSettings -
unresolved_target_version: PY313.into, allowed_confusables: from_iter, ..for_rules -
unresolved_target_version: PY314.into, allowed_confusables: from_iter, ..for_rules -
preview: Enabled, allowed_confusables: from_iter, ..for_rules -
/// ```python /// print("Ηello, world!") # "Η" is the Greek eta (`U+0397`). /// ``` /// -
info
unicode-mixed-scriptcrates/ruff_linter/src/rules/ruff/rules/ambiguous_unicode_character.rs:37:12/// ```python /// print("Ηello, world!") # "Η" is the Greek eta (`U+0397`). /// ``` /// -
/// ```python /// print("Ηello, world!") # "Η" is the Greek eta (`U+0397`). /// ``` /// -
info
unicode-homoglyphcrates/ruff_linter/src/rules/ruff/rules/ambiguous_unicode_character.rs:145:14/// ```python /// foo() # nоqa # "о" is Cyrillic (`U+043E`) /// ``` /// -
info
unicode-mixed-scriptcrates/ruff_linter/src/rules/ruff/rules/ambiguous_unicode_character.rs:145:14/// ```python /// foo() # nоqa # "о" is Cyrillic (`U+043E`) /// ``` /// -
info
unicode-homoglyphcrates/ruff_linter/src/rules/ruff/rules/ambiguous_unicode_character.rs:145:24/// ```python /// foo() # nоqa # "о" is Cyrillic (`U+043E`) /// ``` /// -
-
use -
-
x =likely benign Raw string Python snippet with non-breaking spaces in indentation.Reasoning
NBSP in indentation inside a raw Python snippet used as test input for the stylist's indentation detection. The character is probably deliberate test data.
-
⟨U+00A0⟩1, ⟨U+00A0⟩2, ⟨U+00A0⟩3, )likely benign Test snippet with non-breaking spaces in indentation.Reasoning
Same NBSP-indented test snippet in the stylist tests. It is probably deliberate input for indentation detection.
-
⟨U+00A0⟩2, ⟨U+00A0⟩3, ) ";likely benign Test snippet with non-breaking spaces in indentation.Reasoning
Same NBSP-indented test snippet in the stylist tests. Benign test data.
-
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/black/cases/docstring.py:2:1""" Multiline class docstring """ -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/generics_wrapping.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/import_comments.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/pep_570.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/pep_572_py310.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/pep_646.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/percent_precedence.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/black/cases/power_op_spacing_long.py:1:1 -
info
warn→ info by reviewnarrow-file-charsetcrates/ruff_python_formatter/resources/test/fixtures/black/cases/power_op_spacing_long.py:1:1= 1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1 = 1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1**1 = 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1 ** 1likely benign Formatter test fixture with repeated exponentiation expressions.Reasoning
This is a formatter test fixture containing long chains of power operators on literal 1s; the narrow charset comes from the trivial content of a test case, not obfuscation.
-
info
high-complexitycrates/ruff_python_formatter/resources/test/fixtures/black/cases/preview_long_strings.py:311:12 -
info
warn→ info by reviewhigh-complexitycrates/ruff_python_formatter/resources/test/fixtures/black/cases/preview_long_strings__east_asian_width.py:5:10= =likely benign Plain CJK string literals used to test line-width formatting.Reasoning
Ordinary Korean and Chinese string literals in a formatter test about east-asian width handling; the compression ratio flag is a false positive on natural text.
-
info
critical→ info by reviewdynamic-executioncrates/ruff_python_formatter/resources/test/fixtures/black/cases/preview_long_strings__regression.py:20:9likely benign Test fixture calling os.system with a formatted string inside a function that is never run.Reasoning
This is a formatter regression fixture; os.system is called with a str.format result on a literal template with placeholder arguments inside a test file that is never executed. Flagged only because the command is not a plain literal.
-
info
high-complexitycrates/ruff_python_formatter/resources/test/fixtures/black/cases/preview_long_strings__regression.py:235:17= f = f -
info
warn→ info by reviewunicode-invisiblecrates/ruff_python_formatter/resources/test/fixtures/black/cases/tricky_unicode_symbols.py:4:2= 3 x⟨U+E0100⟩ = 4 មុ = 1 Q̇_per_meter = 4likely benign Unicode identifier test fixture containing a variation selector supplement character.Reasoning
The file is a formatter test for unicode identifiers, and the variation selector sits in an identifier used to test tricky unicode handling. Such characters in a test fixture are deliberate test input, though an invisible character in an identifier is worth noting.
-
""" content\ """ return -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/docstring_code_examples.py:12:1""" Do cool stuff. -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/docstring_tab_indentation.py:7:1""" Arguments: arg1: super duper arg with 2 tabs in front -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/attribute.py:1:1 -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/lambda.py:27:1# Trailing -
info
warn→ info by reviewdynamic-executioncrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/lambda.py:845:5likely benign Formatter test fixture using subprocess.check_call with shell=True on an f-string command.Reasoning
This is a formatter fixture for lambda expressions; the shell=True call is never executed and the command is a formatting test case, not a real attack payload.
-
info
warn→ info by reviewdynamic-executioncrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/lambda.py:858:5# Regression test for https://github.com/astral-sh/ruff/issues/25397likely benign Formatter test fixture with a shell=True subprocess call containing nested lambdas.Reasoning
Same formatter lambda fixture as the neighboring finding; the shell call is syntax-only test input and is not executed.
-
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/nested_string_quote_style.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/tstring.py:1:1 -
= -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/expression/unary.py:2:1pass = True -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/fmt_on_off/mixed_space_and_tab.py:2:1# fmt: off -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/ruff/fmt_on_off/off_on_off_on.py:1:1 -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/fmt_skip/compound_one_liners.py:15:1# fmt: skip # Multiple statements in body (should not apply - multiline) -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/ruff/parentheses/nested.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_formatter/resources/test/fixtures/ruff/statement/delete.py:1:1 -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/statement/match.py:3:1: # dangling match comment : pass -
info
whitespace-anomalycrates/ruff_python_formatter/resources/test/fixtures/ruff/statement/type_alias.py:42:1\ = \ = -
info
identifier-low-lengthcrates/ruff_python_parser/resources/inline/err/different_match_pattern_bindings.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_parser/resources/inline/err/duplicate_type_parameter_names.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_parser/resources/inline/err/invalid_annotation_function.py:1:1 -
info
unicode-mixed-scriptcrates/ruff_python_parser/resources/inline/err/invalid_byte_literal.py:1:6b rb b -
info
unicode-mixed-scriptcrates/ruff_python_parser/resources/inline/err/invalid_byte_literal.py:2:4b rb b -
info
unicode-mixed-scriptcrates/ruff_python_parser/resources/inline/err/invalid_byte_literal.py:3:8rb b -
info
identifier-low-lengthcrates/ruff_python_parser/resources/inline/ok/ambiguous_lpar_with_items_binary_expr.py:1:1 -
info
identifier-low-lengthcrates/ruff_python_parser/resources/inline/ok/non_duplicate_type_parameter_names.py:1:1 -
\ = \ = -
-
// test_err invalid_byte_literal // b'123a𝐁c' // rb"a𝐁c123" // b"""123a𝐁c""" -
// b'123a𝐁c' // rb"a𝐁c123" // b"""123a𝐁c""" Bytes -
// rb"a𝐁c123" // b"""123a𝐁c""" Bytes -
\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\likely benign Parser test string literal enumerating byte escapes.Reasoning
This is a Rust parser test string enumerating all byte values as escapes, used to test escape handling; the hex escapes are the expected content of a unit test.
-
NOPQRSTUVWXYZ^_`abcdefghijklmnopqrstuvwxyz~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xlikely benign Parser test string literal with a long run of high-byte hex escapes.Reasoning
Continuation of the same parser test byte-escape table; it is deliberate test data for the string parser.
-
\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\likely benign Second parser test string enumerating byte escapes.Reasoning
Same parser test pattern repeated in a second test string; it enumerates byte values to exercise escape parsing.
-
NOPQRSTUVWXYZ^_`abcdefghijklmnopqrstuvwxyz~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xlikely benign Parser test string with long run of high-byte hex escapes.Reasoning
Continuation of the repeated parser test byte-escape table; expected test data in a Rust string parser.
-
-
assert!; assert!; assert!; assert!; -
/// assert!(is_lowercase("_")); /// assert!(is_lowercase("αbc")); /// assert!(!is_lowercase("αBC")); /// assert!(!is_lowercase("Ωbc")); -
/// assert!(is_lowercase("_")); /// assert!(is_lowercase("αbc")); /// assert!(!is_lowercase("αBC")); /// assert!(!is_lowercase("Ωbc")); -
/// assert!(is_lowercase("αbc")); /// assert!(!is_lowercase("αBC")); /// assert!(!is_lowercase("Ωbc")); /// ``` -
/// assert!(is_lowercase("αbc")); /// assert!(!is_lowercase("αBC")); /// assert!(!is_lowercase("Ωbc")); /// ``` -
/// assert!(!is_lowercase("αBC")); /// assert!(!is_lowercase("Ωbc")); /// ``` -
/// assert!(is_uppercase("_")); /// assert!(is_uppercase("ΩBC")); /// assert!(!is_uppercase("Ωbc")); /// assert!(!is_uppercase("αBC")); -
/// assert!(is_uppercase("ΩBC")); /// assert!(!is_uppercase("Ωbc")); /// assert!(!is_uppercase("αBC")); /// ``` -
/// assert!(!is_uppercase("Ωbc")); /// assert!(!is_uppercase("αBC")); /// ``` -
/// assert!(!is_uppercase("Ωbc")); /// assert!(!is_uppercase("αBC")); /// ``` -
# which could be confused for "-", "p", and "*", respectively. allowed-confusables = "# )] -
r#" b"123a𝐁<CURSOR>c" "#, ) -
1 | / 2 | | b"123a𝐁c" | |__________^ -
| 2 | b"123a𝐁c" | ^^^^^^^^^ "#); -
info
warn→ info by reviewlong-linecrates/ty_python_semantic/resources/corpus/03_dict_unpack_huge.py:1:1likely benign Very long dict-unpacking expression used as a type-checker test case.Reasoning
A long single-line dict literal built from unpacking is a stress test corpus input for a type checker; no obfuscation or malicious behavior is evident.
-
info
identifier-low-lengthcrates/ty_python_semantic/resources/corpus/06_funcall_varargs_kwargs_mixed.py:1:1 -
info
critical→ info by reviewbuiltins-writecrates/ty_python_semantic/resources/corpus/98_ann_assign_annotation_future_annotations.py:5:1: =likely benign Test fixture that assigns builtins.__import__ with an annotation.Reasoning
This is a test corpus file for annotation handling; assigning builtins.__import__ is a deliberate semantic fixture, not an attack in this repo context, though the pattern itself is what a real supply-chain patch would look like.
-
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/annotations/intersection_types.md:195:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/annotations/new_types.md:525:1 -
info
critical→ info by reviewdynamic-importcrates/ty_python_semantic/resources/mdtest/call/dunder_import.md:33:17# revealed: Literal["sys", "os"] # revealed: ModuleTypelikely benign Documentation test calling __import__ on a variable to check revealed type.Reasoning
Markdown mdtest of how the type checker reveals types for __import__ on a non-literal; it is a documented test case, not a dropper.
-
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/call/functools_partial.md:385:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/call/functools_partial.md:977:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/call/functools_partial.md:1691:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/comparison/instances/rich_comparison.md:236:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/comparison/instances/rich_comparison.md:500:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/diagnostics/semantic_syntax_errors.md:565:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/diagnostics/semantic_syntax_errors.md:637:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/diagnostics/unknown_argument.md:23:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/directives/assert_type.md:161:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/directives/assert_type.md:246:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/exhaustiveness_checking.md:516:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/callables.md:965:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/functions.md:1534:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/functions.md:1703:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/functions.md:1986:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/variables.md:312:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/variables.md:1458:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/variance.md:25:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/variance.md:107:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/legacy/variance.md:220:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/aliases.md:734:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/callables.md:1299:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/classes.md:112:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/classes.md:949:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/functions.md:1671:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/functions.md:1830:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/functions.md:1970:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/functions.md:2153:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/functions.md:2738:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/paramspec.md:46:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/paramspec.md:524:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/paramspec.md:862:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:232:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:468:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:572:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:587:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:608:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:619:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:1088:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:1442:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variables.md:1532:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:32:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:111:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:219:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:295:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:624:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:647:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:834:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:865:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:1262:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:1783:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/generics/pep695/variance.md:2322:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/implicit_type_aliases.md:798:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/implicit_type_aliases.md:2554:1 -
info
critical→ info by reviewbuiltins-writecrates/ty_python_semantic/resources/mdtest/import/builtins.md:329:1= 123 = 456 # error: [unresolved-attribute] = 789 # error: [invalid-assignment]likely benign Test case assigning attributes on builtins module with expected errors.Reasoning
Embedded python in a type-checker mdtest exercising error reporting for builtins assignments; the lines carry expected-error comments.
-
info
critical→ info by reviewbuiltins-writecrates/ty_python_semantic/resources/mdtest/import/builtins.md:330:1= 123 = 456 # error: [unresolved-attribute] = 789 # error: [invalid-assignment] = # error: [invalid-assignment]likely benign Test case assigning builtins.bar with expected error.Reasoning
Same mdtest fixture with inline error expectations; it validates diagnostics, not real patching.
-
info
critical→ info by reviewbuiltins-writecrates/ty_python_semantic/resources/mdtest/import/builtins.md:331:1= 456 # error: [unresolved-attribute] = 789 # error: [invalid-assignment] = # error: [invalid-assignment] = 10likely benign Test case assigning builtins.baz with expected error.Reasoning
Same mdtest fixture with inline error expectations; it validates diagnostics, not real patching.
-
info
critical→ info by reviewbuiltins-writecrates/ty_python_semantic/resources/mdtest/import/builtins.md:332:1= 789 # error: [invalid-assignment] = # error: [invalid-assignment] = 10likely benign Test case reassigning builtins.chr with expected error.Reasoning
Same mdtest fixture; the assignment to builtins.chr is annotated with an expected invalid-assignment error.
-
info
critical→ info by reviewbuiltins-writecrates/ty_python_semantic/resources/mdtest/import/builtins.md:333:1= # error: [invalid-assignment] = 10likely benign Second builtins.chr reassignment in the mdtest fixture.Reasoning
Same mdtest fixture; repeated builtins.chr assignment is part of the diagnostic test.
-
info
warn→ info by reviewunicode-mixed-scriptcrates/ty_python_semantic/resources/mdtest/import/star.md:1023:1= ```likely benign Identifier with mixed script used in a star-import test.Reasoning
A Latin/other script mix in an identifier is a deliberate homoglyph test in a star-import mdtest; it is a test of unicode handling rather than an attack in this context.
-
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/narrow/aliased_conditions.md:168:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/narrow/complex_target.md:131:1 -
# In this case, it may seem like we can narrow it down to `int`, # but different values ⟨U+200B⟩⟨U+200B⟩may be reassigned to `x` and `y` in another place. # revealed: int | None -
# In this case, it may seem like we can narrow it down to `int`, # but different values ⟨U+200B⟩⟨U+200B⟩may be reassigned to `x` and `y` in another place. # revealed: int | None -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/narrow/conditionals/eq.md:586:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/narrow/conditionals/nested.md:77:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/narrow/conditionals/nested.md:122:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/narrow/conditionals/nested.md:310:1 -
info
critical→ info by reviewdynamic-executioncrates/ty_python_semantic/resources/mdtest/pep613_type_aliases.md:818:28# typing conformance cases: : = # error: [invalid-type-form] : = # error: [invalid-type-form] : = # error: [invalid-type-form]likely benign eval call inside a PEP 613 conformance test case.Reasoning
eval used in a typing conformance test case expecting an invalid-type-form error; it is a test fixture with a literal string argument.
-
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/type_properties/constraints.md:1090:1 -
info
warn→ info by reviewunicode-mixed-scriptcrates/ty_python_semantic/resources/mdtest/type_properties/quantification.md:19:20likely benign Mathematical subscript identifier in a documentation table.Reasoning
Subscript Unicode letters in a markdown table of quantifier notation; mathematical notation, not identifiers used for evasion.
-
info
warn→ info by reviewunicode-mixed-scriptcrates/ty_python_semantic/resources/mdtest/type_properties/quantification.md:19:35likely benign Mathematical subscript identifier in a documentation table.Reasoning
Same notation table; subscript letter is mathematical typography in documentation.
-
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/type_qualifiers/classvar.md:12:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/type_qualifiers/classvar.md:145:1 -
info
identifier-low-lengthcrates/ty_python_semantic/resources/mdtest/type_qualifiers/classvar.md:289:1 -
info
warn→ info by reviewunicode-zero-widthcrates/ty_python_semantic/resources/mdtest/typed_dict.md:368:23likely benign Zero-width space in prose text of a markdown document.Reasoning
A zero-width space in prose in a markdown test doc is a typographic artifact, not code hiding anything.
-
info
warn→ info by reviewunicode-zero-widthcrates/ty_python_semantic/resources/mdtest/typed_dict.md:368:26likely benign Stray zero-width space in a markdown documentation sentence about TypedDict inference.Reasoning
A zero-width space appears in prose inside a markdown test file, likely a stray typo from editing. It is not used to hide code or evade detection, and the surrounding text is ordinary documentation.
-
/// You must provide the `inherited_generic_context` that we should use for the `__new__` or /// `__init__` member. This is inherited from the containing class -⟨U+00AD⟩but importantly, from the /// class that the lookup is being performed on, and not the class containing the (possibly /// inherited) member. -
) -
) -
// Given constraints `α ≤ T` and `T ≤ β`, `α ≤ β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. (α and U won't be bare typevars, // since those will be modeled by `TypeVarRange` bounds.) // -
// To handle all of these cases, we perform a constraint set assignability check to see // when `α ≤ β`. This gives us a constraint set, which should be the rhs of the sequent // implication. (That is, this check directly encodes `(α ≤ T) ∧ (T ≤ β) → (α ≤ β)` as an -
// when `α ≤ β`. This gives us a constraint set, which should be the rhs of the sequent // implication. (That is, this check directly encodes `(α ≤ T) ∧ (T ≤ β) → (α ≤ β)` as an // implication.) -
// when `α ≤ β`. This gives us a constraint set, which should be the rhs of the sequent // implication. (That is, this check directly encodes `(α ≤ T) ∧ (T ≤ β) → (α ≤ β)` as an // implication.) -
) -
) -
) -
) -
) -
) -
) -
) -
// Given `α ≤ T` and `U ≤ β`, if α contains U contravariantly, substitute β for U: // // (Contra[U] ≤ T) ∧ (U ≤ β) ⇒ (Contra[β] ≤ T) -
// Given `α ≤ T` and `U ≤ β`, if α contains U contravariantly, substitute β for U: // // (Contra[U] ≤ T) ∧ (U ≤ β) ⇒ (Contra[β] ≤ T) -
// If β contains T contravariantly, substitute α for T: // // (α ≤ T) ∧ (U ≤ Contra[T]) ⇒ (U ≤ Contra[α]) -
// // (α ≤ T) ∧ (U ≤ Contra[T]) ⇒ (U ≤ Contra[α]) if upper .bound -
// // (α ≤ T) ∧ (U ≤ Contra[T]) ⇒ (U ≤ Contra[α]) if upper .bound -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
) -
// (β ≤ α) ⇒ ((α ≤ T) ⇒ (β ≤ T)) if other_lower.is_constraint_set_subtype_of -
// (β ≤ α) ⇒ ((α ≤ T) ⇒ (β ≤ T)) if other_lower.is_constraint_set_subtype_of -
// (α ≤ β) ⇒ ((β ≤ T) ⇒ (α ≤ T)) if lower.is_constraint_set_subtype_of -
// (α ≤ β) ⇒ ((β ≤ T) ⇒ (α ≤ T)) if lower.is_constraint_set_subtype_of -
// `(α ≤ T) ∧ (β ≤ T)` is equivalent to `(α | β) ≤ T`. We do not create lower bounds that // are unions, so only add sequents when the union simplifies away. let combined = possibly_reversed_union; -
// `(α ≤ T) ∧ (β ≤ T)` is equivalent to `(α | β) ≤ T`. We do not create lower bounds that // are unions, so only add sequents when the union simplifies away. let combined = possibly_reversed_union; -
) -
) -
// `(α ≤ T) ∧ (T ≤ β)` simplifies to `T = α` when `α = β`. For ordinary typevars, only // simplify when the materialized bounds are the same `Type`; checking semantic equivalence // can recursively expand protocol members. ParamSpec bounds still need the semantic check -
// `(α ≤ T) ∧ (T ≤ β)` simplifies to `T = α` when `α = β`. For ordinary typevars, only // simplify when the materialized bounds are the same `Type`; checking semantic equivalence // can recursively expand protocol members. ParamSpec bounds still need the semantic check -
// `(α ≤ T) ∧ (T ≤ β)` simplifies to `T = α` when `α = β`. For ordinary typevars, only // simplify when the materialized bounds are the same `Type`; checking semantic equivalence // can recursively expand protocol members. ParamSpec bounds still need the semantic check -
// because callable types with different return types can represent the same parameter list. // (We don't need to add the projection implication `(T = α) ⇒ (α ≤ T)`, since anything we // can derive from `α ≤ T` we can also derive from `T = α`.) -
// because callable types with different return types can represent the same parameter list. // (We don't need to add the projection implication `(T = α) ⇒ (α ≤ T)`, since anything we // can derive from `α ≤ T` we can also derive from `T = α`.) -
// (We don't need to add the projection implication `(T = α) ⇒ (α ≤ T)`, since anything we // can derive from `α ≤ T` we can also derive from `T = α`.) let lower = self.bound.bottom_materialization; let upper = other.bound.top_materialization; -
// (We don't need to add the projection implication `(T = α) ⇒ (α ≤ T)`, since anything we // can derive from `α ≤ T` we can also derive from `T = α`.) let lower = self.bound.bottom_materialization; let upper = other.bound.top_materialization; -
) -
) -
// (α ≤ β) ⇒ ((T = β) ⇒ (α ≤ T)) if self .bound -
// (α ≤ β) ⇒ ((T = β) ⇒ (α ≤ T)) if self .bound -
// Given constraints `α ≤ T` and `T = β`, `α ≤ β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. add_sequents_for_range; -
// Given constraints `α ≤ T` and `T = β`, `α ≤ β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. add_sequents_for_range; -
) -
) -
// We can infer sequents from `α ≤ T` and `S ≤ U` if α _contains_ U. add_covariant_lower_weakened_sequent; add_contravariant_lower_weakened_sequent; -
// We can infer sequents from `α ≤ T` and `S ≤ U` if α _contains_ U. add_covariant_lower_weakened_sequent; add_contravariant_lower_weakened_sequent; -
) -
) -
// We can infer sequents from `α ≤ T` and `S ≤ U` if α _contains_ U. map.add_grouped_sequents -
// We can infer sequents from `α ≤ T` and `S ≤ U` if α _contains_ U. map.add_grouped_sequents -
) -
) -
// (α ≤ β) ⇒ ((T ≤ α) ⇒ (T ≤ β)) if upper.is_constraint_set_subtype_of -
// (α ≤ β) ⇒ ((T ≤ α) ⇒ (T ≤ β)) if upper.is_constraint_set_subtype_of -
// (β ≤ α) ⇒ ((T ≤ β) ⇒ (T ≤ α)) if other_upper.is_constraint_set_subtype_of -
// (β ≤ α) ⇒ ((T ≤ β) ⇒ (T ≤ α)) if other_upper.is_constraint_set_subtype_of -
// `(T ≤ α) ∧ (T ≤ β)` is equivalent to `T ≤ (α & β)`. We do not create upper bounds that // are intersections, so only add sequents when the intersection simplifies away. let combined = possibly_reversed_intersection; -
// `(T ≤ α) ∧ (T ≤ β)` is equivalent to `T ≤ (α & β)`. We do not create upper bounds that // are intersections, so only add sequents when the intersection simplifies away. let combined = possibly_reversed_intersection; -
) -
) -
// (β ≤ α) ⇒ ((T = β) ⇒ (T ≤ α)) if other .bound -
// (β ≤ α) ⇒ ((T = β) ⇒ (T ≤ α)) if other .bound -
// Given constraints `T ≤ α` and `T = β`, `α ≤ β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. add_sequents_for_range; -
// Given constraints `T ≤ α` and `T = β`, `α ≤ β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. add_sequents_for_range; -
) -
) -
// We can infer sequents from `T ≤ α` and `S ≤ U` if α _contains_ S. add_covariant_upper_weakened_sequent; add_contravariant_upper_weakened_sequent; -
// We can infer sequents from `T ≤ α` and `S ≤ U` if α _contains_ S. add_covariant_upper_weakened_sequent; add_contravariant_upper_weakened_sequent; -
) -
) -
// We can infer sequents from `T ≤ α` and `S = U` if α _contains_ S. map.add_grouped_sequents -
// We can infer sequents from `T ≤ α` and `S = U` if α _contains_ S. map.add_grouped_sequents -
) -
) -
) -
// Given `T = α` and `T = β`, if α and β are equivalent (but not _identical_), we can infer // either from the other. if self.bound == other.bound -
// Given `T = α` and `T = β`, if α and β are equivalent (but not _identical_), we can infer // either from the other. if self.bound == other.bound -
// Given constraints `T = α` and `T = β`, `α = β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. add_sequents_for_equivalence; -
// Given constraints `T = α` and `T = β`, `α = β` must also hold. If those bounds contain // other typevars, we can infer additional constraints. add_sequents_for_equivalence; -
) -
) -
// Given constraints `T = α` and `U ≤ T`, `U ≤ α` must also hold. // The retained equality likewise makes this an equivalent replacement for `U ≤ T`. if self.typevar.is_same_typevar_as -
// Given constraints `T = α` and `U ≤ T`, `U ≤ α` must also hold. // The retained equality likewise makes this an equivalent replacement for `U ≤ T`. if self.typevar.is_same_typevar_as -
// We can infer sequents from `T = α` and `S ≤ U` if α _contains_ S or U. add_covariant_lower_weakened_sequent; add_covariant_upper_weakened_sequent; -
// We can infer sequents from `T = α` and `S ≤ U` if α _contains_ S or U. add_covariant_lower_weakened_sequent; add_covariant_upper_weakened_sequent; -
) -
) -
// We can infer sequents from `T = α` and `S = U` if α _contains_ U. map.add_grouped_sequents -
// We can infer sequents from `T = α` and `S = U` if α _contains_ U. map.add_grouped_sequents -
// // (α | β) ≤ T ⇔ (α ≤ T) ∧ (β ≤ T) match bound -
// // (α | β) ≤ T ⇔ (α ≤ T) ∧ (β ≤ T) match bound -
// // T ≤ (α & β) ⇔ (T ≤ α) ∧ (T ≤ β) // T ≤ (¬α & ¬β) ⇔ (T ≤ ¬α) ∧ (T ≤ ¬β) match bound -
// // T ≤ (α & β) ⇔ (T ≤ α) ∧ (T ≤ β) // T ≤ (¬α & ¬β) ⇔ (T ≤ ¬α) ∧ (T ≤ ¬β) match bound -
// T ≤ (α & β) ⇔ (T ≤ α) ∧ (T ≤ β) // T ≤ (¬α & ¬β) ⇔ (T ≤ ¬α) ∧ (T ≤ ¬β) match bound -
// T ≤ (α & β) ⇔ (T ≤ α) ∧ (T ≤ β) // T ≤ (¬α & ¬β) ⇔ (T ≤ ¬α) ∧ (T ≤ ¬β) match bound -
//! ```text //! μF. λT. tuple[T, F[list[T]] | None] //! ``` //! -
//! //! Here `μF` binds the recursive constructor, and `λT` binds its type parameter. //! The occurrence `F[list[T]]` is stored as `RecursiveVar` with the constructor's //! `RecursiveCycle` and unspecialized arguments `[list[T]]`. -
//! ```text //! unfold((μF. λT. tuple[T, F[list[T]] | None])[int]) //! = tuple[int, (μF. λT. tuple[T, F[list[T]] | None])[list[int]] | None] //! = tuple[int, Tree[list[int]] | None] -
//! unfold((μF. λT. tuple[T, F[list[T]] | None])[int]) //! = tuple[int, (μF. λT. tuple[T, F[list[T]] | None])[list[int]] | None] //! = tuple[int, Tree[list[int]] | None] //! ``` -
/// If the value ⟨U+200B⟩⟨U+200B⟩is defined recursively, widening is performed from fewer literal elements, /// resulting in faster convergence of the fixed-point iteration. const MAX_RECURSIVE_UNION_LITERALS: usize = 5; -
/// If the value ⟨U+200B⟩⟨U+200B⟩is defined recursively, widening is performed from fewer literal elements, /// resulting in faster convergence of the fixed-point iteration. const MAX_RECURSIVE_UNION_LITERALS: usize = 5; -
const MAX_RECURSIVE_UNION_LITERALS: usize = 5; /// If the value ⟨U+200B⟩⟨U+200B⟩is defined non-recursively, the fixed-point iteration will converge in one go, /// so in principle we can have as many literal elements as we want. /// We set a large limit for union and enum literals. -
const MAX_RECURSIVE_UNION_LITERALS: usize = 5; /// If the value ⟨U+200B⟩⟨U+200B⟩is defined non-recursively, the fixed-point iteration will converge in one go, /// so in principle we can have as many literal elements as we want. /// We set a large limit for union and enum literals. -
|likely benign Documentation showing the official curl-pipe-to-sh install command for ruff.Reasoning
This is the standard documented installer one-liner for the ruff project, served from its official domain. Piping to sh is a common, transparent install method in documentation, not hidden malicious behavior.
-
|likely benign Documentation showing a versioned curl-pipe-to-sh install command for ruff.Reasoning
Same official ruff installer pattern with a pinned version, shown in user-facing docs. Legitimate install instructions.
-
|likely benign Installation docs with the official ruff curl-pipe-to-sh command.Reasoning
Official installation documentation for ruff using the standard astral.sh installer. Transparent and expected in install docs.
-
|likely benign Installation docs with a pinned-version curl-pipe-to-sh command.Reasoning
Versioned official installer command in installation docs, matching the common pattern for this project. Legitimate.
-
] returnlikely benign Dev script evaluates the output of a helper command to produce a set of module names.Reasoning
eval is applied to the output of a command run by a dev script, which is a code-generation tool. This is poor practice and risky if the command output is untrusted, but in a maintainer script the input is controlled by the repo, so it is most likely benign.
-
# Primer install commands are trusted project metadata and may use shell syntax. # ruff: ignore[subprocess-popen-with-shell-equals-true] # Install listed dependencies (matching primer's setup())likely benign Setup script runs trusted project install commands through a shell.Reasoning
shell=True runs install commands from a project's metadata, which the code comment describes as trusted. It is a supply-chain-relevant pattern, but it is a maintainer setup script for a known third-party benchmark project and the comment and linter suppression show it is intentional.
-
likely benign README listing the official uv curl-pipe-to-sh installer.
Reasoning
Standard uv installation instructions in a benchmark README, using the official astral.sh domain. Normal documentation.
-
<CWD>/src/black/__init__.py:1018:15 - error: Cannot access attribute "detach" for class "AnsiToWin32" ⟨U+00A0⟩⟨U+00A0⟩Attribute "detach" is unknown (reportAttributeAccessIssue) <CWD>/src/black/__init__.py:1072:11 - error: Cannot access attribute "detach" for class "AnsiToWin32" -
<CWD>/discord/abc.py:123:9 - error: "pinned" overrides symbol of same name in class "Message" ⟨U+00A0⟩⟨U+00A0⟩Variable is mutable so its type is invariant ⟨U+00A0⟩⟨U+00A0⟩⟨U+00A0⟩⟨U+00A0⟩Override type "Literal[True]" is not the same as base type "bool" (reportIncompatibleVariableOverride) <CWD>/discord/activity.py -
<CWD>/homeassistant/auth/__init__.py:137:12 - error: Could not access item in TypedDict ⟨U+00A0⟩⟨U+00A0⟩"type" is not a required key in "AuthFlowResult", so access may result in runtime exception (reportTypedDictNotRequiredAccess) <CWD>/homeassistant/auth/__init__.py:141:23 - error: Could not access item in TypedDict -
info
warn→ info by reviewlong-linescripts/ty_benchmark/snapshots/homeassistant_Pyright.txt:19250:1<CWD>/homeassistant/components/lg_thinq/sensor.py:429:81 - error: Type "dict[str, tuple[SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, SensorEntityDescription, Sensolikely benign Long generated type-error line in a benchmark snapshot file.Reasoning
A very long line in a generated type-checker output snapshot. Long type signatures are expected in this kind of output and no obfuscation is present.
-
<CWD>/homeassistant/components/lg_thinq/switch.py:41:86 - error: Type "dict[str, tuple[ThinQSwitchEntityDescription, ThinQSwitchEntityDescription, ThinQSwitchEntityDescription, ThinQSwitchEntityDescription] | tuple[ThinQSwitchEntityDescription, ThinQSwitchEntityDescription, ThinQSwitchEntityDescription] | tuple[ThinQ -
<CWD>/isort/main.py:520:32 - error: Cannot access attribute "__members__" for class "Enum" ⟨U+00A0⟩⟨U+00A0⟩Attribute "__members__" is unknown (reportAttributeAccessIssue) <CWD>/isort/main.py:521:50 - error: Cannot access attribute "__members__" for class "Enum" -
<CWD>/src/jinja2/async_utils.py:91:25 - error: Cannot access attribute "__aiter__" for class "Iterable[V@auto_aiter]" ⟨U+00A0⟩⟨U+00A0⟩Attribute "__aiter__" is unknown (reportAttributeAccessIssue) <CWD>/src/jinja2/async_utils.py:93:41 - error: No overloads for "iter" match the provided arguments (reportCallIssue) -
ERROR pandas/io/parsers/readers.py:317:5-13: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer'likely benign Long generated diagnostic line in a benchmark snapshot.Reasoning
Long generated diagnostic line from a type checker output snapshot. Expected for long signatures.
-
ERROR pandas/io/parsers/readers.py:327:5-13: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer'likely benign Long generated diagnostic line in a benchmark snapshot.Reasoning
Same kind of long generated type-checker diagnostic in a snapshot file. No malicious content.
-
ERROR pandas/io/parsers/readers.py:337:5-13: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer'likely benign Long generated diagnostic line in a benchmark snapshot.Reasoning
Long generated type-checker diagnostic in a snapshot file, with no obfuscation.
-
ERROR pandas/io/parsers/readers.py:347:5-13: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer'likely benign Long generated diagnostic line in a benchmark snapshot.Reasoning
Long generated type-checker diagnostic in a snapshot file, consistent with the other lines from the same output.
-
ERROR pandas/io/parsers/readers.py:904:5-15: Implementation signature `(filepath_or_buffer: PathLike[str] | ReadCsvBuffer[bytes] | ReadCsvBuffer[str] | str, *, sep: _NoDefault | str | None = _NoDefault.no_default, delimiter: _NoDefault | str | None = None, header: Literal['infer'] | Sequence[int] | int | None = 'infer'dismissed A long line in a text snapshot of a Pyrefly type-checker output for pandas, containing an ordinary function signature error message.Reasoning
The finding is a raw-pass long-line warning on a plain-text benchmark snapshot file. The snippet is a type-checker error message wrapping a long function signature, which is a normal artifact of tool output, not obfuscation or malicious content. Raw-pass findings have a high false-positive rate, and nothing here suggests intent.
-
⟨U+00A0⟩⟨U+00A0⟩Parameter 2 name mismatch: base parameter is named "y_", override parameter is named "other" (reportIncompatibleMethodOverride) <CWD>/pandas/_libs/sparse.pyi:45:9 - error: Method "make_union" overrides class "SparseIndex" in an incompatible manner -
⟨U+00A0⟩⟨U+00A0⟩"TTLCache[_KT2@__init__, _VT2@__init__, float]" is not assignable to "TTLCache[frozenset[str], bool, float]" ⟨U+00A0⟩⟨U+00A0⟩⟨U+00A0⟩⟨U+00A0⟩Type parameter "_KT@TTLCache" is invariant, but "_KT2@__init__" is not the same as "frozenset[str]" -
⟨U+00A0⟩⟨U+00A0⟩Argument types: ((**_InputT@compile) -> _RetT@compile, bool, bool | None, str | ((...) -> Unknown), str | None, dict[str, str | int | bool | ((...) -> Unknown)] | None, str | None, bool, int | None, bool, Any | None) (reportCallIssue) -
<CWD>/torch/_functorch/_aot_autograd/graph_compile.py:2614:55 - error: Type "None" is not assignable to declared type "(compiled_bw_func: (...) -> Any, bw_module: GraphModule, _fw_metadata: ViewAndMutationMeta, aot_config: AOTConfig) -> (GenericAOTAutogradResult[Any, Any] | None)" -
⟨U+00A0⟩⟨U+00A0⟩Type "None" is not assignable to type "(compiled_bw_func: (...) -> Any, bw_module: GraphModule, _fw_metadata: ViewAndMutationMeta, aot_config: AOTConfig) -> (GenericAOTAutogradResult[Any, Any] | None)" (reportAssignmentType) -
<CWD>/torch/_functorch/_aot_autograd/graph_compile.py:2689:36 - error: Type "None" is not assignable to declared type "(compiled_bw_func: (...) -> Any, bw_module: GraphModule, _fw_metadata: ViewAndMutationMeta, aot_config: AOTConfig) -> (GenericAOTAutogradResult[Any, Any] | None)" -
⟨U+00A0⟩⟨U+00A0⟩Type "None" is not assignable to type "(compiled_bw_func: (...) -> Any, bw_module: GraphModule, _fw_metadata: ViewAndMutationMeta, aot_config: AOTConfig) -> (GenericAOTAutogradResult[Any, Any] | None)" (reportAssignmentType) -
mypy.ini: note: unused section(s): [mypy-torch.for_onnx.onnx], [mypy-torch.ao.quantization.pt2e._affine_quantization], [mypy-test_torch], [mypy-torch.testing._internal.hypothesis_utils.*], [mypy-torch.testing._internal.common_quantization.*], [mypy-torch.testing._internal.generated.*], [mypy-torch.multiprocessing.pool]
Reproduce This Scan
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
&&