support for easy limiting of literals to entrypoint names and/or the entrypoint lookup value
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- Ø Merge
- 1 T. 18 Std.
- Gemergte PRs (30 T.)
- 54
Beschreibung
Feature
for utilities where names/types match to entry-pints, it would be really nice to be able to do that without making a plugin each time
example
class MyPlugin:
pass
PluginName = Typevar("PluginName", EntrypointLiteral["myapp.plugin"]
class MyApp:
def __getattr__(self, name: PluginName) -> InstanceOfEntrypoint[PluginName]:
...
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit den vorgeschlagenen EntrypointLiteral- und InstanceOfEntrypoint-Formen sowie dem getattr-Beispiel. Kläre, wie Entrypoint-Namen und Lookup-Werte ohne ein Plugin eingeschränkt werden sollten, und definiere anschließend das erwartete Typisierungsverhalten für das gezeigte MyPlugin- und MyApp-Beispiel. Als erledigt gilt die Aufgabe, wenn der Umfang und das Verhalten des Features ausreichend spezifiziert sind, um die Implementierung und Tests anzuleiten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- devtools
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100