Mindestversion der Abhängigkeitsrichtlinie #
Für die Zwecke dieses Dokuments ist „Nebenversion“ im Sinne von SemVer (Hauptversion, Nebenversion, Patch) und umfasst sowohl Haupt- als auch Nebenversionen. Bei Projekten, die eine datumsbasierte Versionierung verwenden, ist jede Version eine „Nebenversion“.
Matplotlib folgt NEP 29 .
Python und NumPy #
Matplotlib unterstützt:
Alle Nebenversionen von Python, die 42 Monate vor dem Projekt veröffentlicht wurden, und mindestens die beiden neuesten Nebenversionen.
Alle Nebenversionen von
numpy
, die in den 24 Monaten vor dem Projekt veröffentlicht wurden, und mindestens die letzten drei Nebenversionen.
In setup.py
sollte die python_requires
Variable auf die unterstützte Mindestversion von Python gesetzt werden. Alle unterstützten Nebenversionen von Python sollten sich in der Testmatrix befinden und über für die Veröffentlichung erstellte binäre Artefakte verfügen.
Die Mindestunterstützung für Python- und NumPy-Versionen sollte bei jeder Haupt- und Nebenversion nach oben angepasst werden, jedoch niemals bei einer Patch-Version.
Siehe auch Liste der Abhängigkeitsversionen .
Python-Abhängigkeiten #
Für Python-Abhängigkeiten sollten wir mindestens unterstützen:
- mit kompilierten Erweiterungen
Nebenversionen, die ursprünglich in den 24 Monaten vor unserem geplanten Veröffentlichungsdatum veröffentlicht wurden, oder die ältesten, die unsere Mindestversion von Python + NumPy unterstützen
- ohne kompilierte Erweiterungen
Nebenversionen, die ursprünglich in den 12 Monaten vor unserem geplanten Veröffentlichungsdatum veröffentlicht wurden, oder die ältesten, die unser Mindest-Python unterstützen.
Wir werden diese Abhängigkeiten nur erhöhen, wenn wir neue Funktionen benötigen oder die alten Versionen unser Mindest-NumPy oder Python nicht mehr unterstützen.
Test- und Dokumentationsabhängigkeiten #
Da diese Pakete nur zum Testen oder Erstellen der Dokumentation und nicht von Endbenutzern benötigt werden, können wir aggressiver vorgehen, wenn es darum geht, die Unterstützung für alte Versionen einzustellen. Wir müssen jedoch darauf achten, dass wir die Unterstützung von Downstream-Packagern nicht überschreiten (da die meisten die Tests ausführen und die Dokumentation als Teil des Paketierungsprozesses erstellen).
Wir werden mindestens Nebenversionen der Entwicklungsabhängigkeiten unterstützen, die in den 12 Monaten vor unserer geplanten Veröffentlichung veröffentlicht wurden.
Wir werden diese nur bei Bedarf erhöhen oder Versionen unterstützen unsere Mindestversionen von Python und NumPy nicht mehr.
System- und C-Abhängigkeiten #
Für System- oder C-Abhängigkeiten (FreeType, GUI-Frameworks, LaTeX, Ghostscript, FFmpeg) Unterstützung so alt wie praktisch. Diese können für Endbenutzer schwierig zu installieren sein und wir möchten auf so vielen Systemen wie möglich verwendbar sein. Wir werden diese von Fall zu Fall erhöhen.
Liste der Abhängigkeitsversionen #
Die folgende Liste zeigt die minimalen Versionen von Python- und NumPy-Abhängigkeiten für verschiedene Versionen von Matplotlib. Folgen Sie den Links für die vollständige Spezifikation der Abhängigkeiten.
Matplotlib |
Python |
NumPy |
---|---|---|
3.8 |
1.19.0 |
|
3.7 |
1.17.0 |
|
3.7 |
1.16.0 |
|
3.6 |
1.15.0 |
|
3.6 |
1.11.0 |
|
3.6 |
1.11.0 |
|
3.5 |
1.10.0 |
|
2.7, 3.4 |
1.7.1 |
|
2.7, 3.4 |
1.7.1 |
|
2.7, 3.4 |
1.7.1 |
|
2.7, 3.4 |
1.6 |
|
2.6, 3.3 |
1.6 |
|
2.6, 3.3 |
1.5 |
|
1.2 |
2.6, 3.1 |
1.4 |
1.1 |
2.4 |
1.1 |
1.0 |
2.4 |
1.1 |