python / python/mypy

Composing multiple configuration files

Offen
#9,620 7 Kommentare 40 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature topic-configuration
Vorherrschende Sprache
Python
Sterne
20.6k
Forks
3.3k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Feature

Ability to specify a base configuration file and another one to override/extend behavior.

Pitch

We have a monorepo with Gradle. There are a few different Python projects and each of them define their linters either fully duplicated or only with slight differences. I'd like to standardize this. For mypy, I'd like to have a base configuration file where I define common settings, and then make it possible to have projects overriding/extending behavior.

For instance, one project uses Django, and it has django-stubs plugin for mypy. If I put this into the base config, then mypy complains on the non-Django projects as the plugin becomes unusable. I do know that I can override some configuration behavior through command line arguments ("Settings override mypy’s built-in defaults and command line flags can override settings.") but I'm not sure if it's possible for plugin settings anyways.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Das Issue nennt keine Implementierungsdateien oder Tests. Beginne damit, die bestehende Verarbeitung von Konfigurationsdateien und das Verhalten von Befehlszeilenüberschreibungen in mypy zu lesen, mit besonderem Augenmerk auf Plugin-Einstellungen. Erledigt wäre die Aufgabe, wenn es eine definierte und getestete Möglichkeit gibt, eine Basiskonfiguration mit projektspezifischen Überschreibungen zu kombinieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
tooling
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.