Make `ignore_pos_arg_names=False` for overrides when using `--extra-checks`
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 20.6k
- Fork
- 3.3k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
Feature
We can check positional argument names for overriding functions.
class A:
def f(self, x: int) -> None:
pass
class B(A):
def f(self, _x: int) -> None: # this *should* error, but doesn't currently
pass
Pitch
Well, ignoring positional arguments is obviously not type safe. It's annoying, sure, but in my mind that's the class of checks that --extra-checks encompasses (technically correct but annoying).
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia tracciando il controllo degli override e la gestione dei nomi degli argomenti posizionali quando --extra-checks è abilitato. Conferma il comportamento esistente con l’esempio A e B, quindi aggiungi una copertura che dimostri che i nomi posizionali differenti vengono segnalati con --extra-checks e che il controllo continua a essere ignorato negli altri casi.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- compilers
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 42/100