python / python/typeshed

stub_uploader: verify external stub packages require runtime

Aperta
#14,045 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

project: infrastructure
Lingua principale
Python
Stelle
5.1k
Fork
2.1k
Merge medio
1g 19h
PR unite (30g)
82

Descrizione

We currently have a check in stub_uploader that external stubs packages require their runtime package:

https://github.com/typeshed-internal/stub_uploader/blob/de903bfb39be09084b72ceee6854ecae40ef2db0/stub_uploader/metadata.py#L335

This breaks for the suggested pydbus stubs (#13921), which depend on PyGObject-stubs, but PyGObject-stubs doesn't depend on PyGObject:

https://github.com/python/typeshed/actions/runs/14886712852/job/41808156011?pr=13921#step:6:206

Does anyone remember or know why we have this check? And what should we do about it?

  1. Remove the check, because it doesn't serve a known purpose?
  2. Add an exception list to the check?
  3. Remove the dependency on PyGObject-stubs from pydbus and use Any or stub protocols instead?

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

Inizia con il controllo della dipendenza da stub esterni in stub_uploader/metadata.py intorno alla riga collegata, quindi esamina il contesto di pydbus e PyGObject-stubs nella issue #13921 e il fallimento di CI collegato. Determina perché esiste il controllo e scegli se rimuoverlo, aggiungere eccezioni o modificare la dipendenza da pydbus; il lavoro è completato quando la policy e il comportamento del pacchetto di stub interessato sono risolti.

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

Valutazione

Stack tecnologico
python
Ambito
tooling
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.