python / python/mypy

Type `mypy/config_parser.py` without `Any`

Aperta
#19,566 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

topic-developer
Lingua principale
Python
Stelle
20.6k
Fork
3.3k
Metriche di merge delle PR
Metriche PR in attesa

Descrizione

We could try to get all the Anys out of mypy/config_parser.py, which would prevent other configuration-file type-error crashes. (We will presumably still error, but could emit a friendlier message, as in https://github.com/python/mypy/pull/19494 and its GitHub issue.) You know... static typing :)

Semi-related: https://github.com/hukkin/tomli/issues/261

Originally posted by @wyattscarpenter in https://github.com/python/mypy/pull/19494#discussion_r2249050998

This might be very easy if the ini parser knows/declares what types it gives us (primarily strings?)... could be prohibitively difficult otherwise, or perhaps best addressed in typeshed stubs. I haven't looked into it much yet; I imagine it will be easiest to investigate with an IDE that does type inference and display, and I'm on a bus right now (the opposite situation).

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Leggi mypy/config_parser.py e il comportamento discusso nella pull request #19494. Analizza quali tipi fornisce il parser INI, incluso se gli stub di typeshed siano rilevanti. Il lavoro è completato quando vengono rimossi i tipi Any applicabili, mantenendo la gestione degli errori di configurazione e prevenendo i crash dovuti a errori di tipo.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
devtools
Tipo di issue
Refactoring
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.