astral-sh/ruff

Avoid raising S310 if user explicitly checks for URL scheme

Open

#7.918 aberto em 11 de out. de 2023

Ver no GitHub
 (13 comments) (11 reactions) (0 assignees)Rust (2.088 forks)batch import
help wantedrule

Métricas do repositório

Stars
 (47.527 stars)
Métricas de merge de PR
 (Mesclagem média 3d 8h) (573 fundiu PRs em 30d)

Description

  • A minimal code snippet that reproduces the bug.
import urllib.request


def foo(url: str) -> None:
    if not url.startswith(("https://", "http://")):
        raise ValueError
    req = urllib.request.Request(
        url,
        headers=headers,
        data=data,
        method=method,
    )
    resp = urllib.request.urlopen(req)

Also it would be great if ruff could recognize asserts (like assert url.startswith(("https://", "http://")))

  • The command you invoked (e.g., ruff /path/to/file.py --fix), ideally including the --isolated flag.

ruff --isolated --select S t.py

  • The current Ruff settings (any relevant sections from your pyproject.toml).

No pyproject.toml

  • The current Ruff version (ruff --version).

ruff 0.0.292

Guia do colaborador