Versione minima della politica delle dipendenze #

Ai fini di questo documento, 'versione minore' è nel senso di SemVer (maggiore, minore, patch) e include sia il rilascio principale che quello secondario. Per i progetti che utilizzano il controllo delle versioni basato sulla data, ogni versione è una "versione secondaria".

Matplotlib segue NEP 29 .

Python e NumPy #

Matplotlib supporta:

  • Tutte le versioni secondarie di Python rilasciate 42 mesi prima del progetto e almeno le due ultime versioni secondarie.

  • Tutte le versioni secondarie di numpyrilasciate nei 24 mesi precedenti al progetto e almeno le ultime tre versioni secondarie.

In setup.py, la python_requiresvariabile deve essere impostata sulla versione minima supportata di Python. Tutte le versioni minori supportate di Python dovrebbero essere nella matrice di test e avere artefatti binari creati per il rilascio.

Il supporto della versione minima di Python e NumPy dovrebbe essere regolato verso l'alto su ogni versione principale e secondaria, ma mai su una versione patch.

Vedere anche l' elenco delle versioni delle dipendenze .

Dipendenze Python #

Per le dipendenze Python dovremmo supportare almeno:

con estensioni compilate

versioni secondarie inizialmente rilasciate nei 24 mesi precedenti alla data di rilascio pianificata o le più vecchie che supportano il nostro minimo Python + NumPy

senza estensioni compilate

versioni secondarie inizialmente rilasciate nei 12 mesi precedenti la data di rilascio pianificata o la più vecchia che supporta il nostro Python minimo.

Elimineremo queste dipendenze solo quando avremo bisogno di nuove funzionalità o le vecchie versioni non supportano più il nostro minimo NumPy o Python.

Dipendenze di test e documentazione #

Poiché questi pacchetti sono necessari solo per testare o creare i documenti e non sono necessari agli utenti finali, possiamo essere più aggressivi nell'abbandonare il supporto per le vecchie versioni. Tuttavia, dobbiamo stare attenti a non sovraccaricare ciò che supportano i pacchetti downstream (poiché la maggior parte esegue i test e crea la documentazione come parte del processo di creazione dei pacchetti).

Supporteremo almeno le versioni secondarie delle dipendenze di sviluppo rilasciate nei 12 mesi precedenti il ​​rilascio pianificato.

Li elimineremo solo se necessario o le versioni non supportano più il nostro minimo Python e NumPy.

Dipendenze di sistema e C #

Per le dipendenze di sistema o C (FreeType, framework GUI, LaTeX, Ghostscript, FFmpeg) supporto tanto vecchio quanto pratico. Questi possono essere difficili da installare per gli utenti finali e vogliamo che siano utilizzabili su quanti più sistemi possibile. Li sbatteremo caso per caso.

Elenco delle versioni di dipendenza #

L'elenco seguente mostra le versioni minime delle dipendenze Python e NumPy per diverse versioni di Matplotlib. Segui i collegamenti per la specifica completa delle dipendenze.

Matplotlib

Pitone

NumPy

3.6

3.8

1.19.0

3.5

3.7

1.17.0

3.4

3.7

1.16.0

3.3

3.6

1.15.0

3.2

3.6

1.11.0

3.1

3.6

1.11.0

3.0

3.5

1.10.0

2.2

2.7, 3.4

1.7.1

2.1

2.7, 3.4

1.7.1

2.0

2.7, 3.4

1.7.1

1.5

2.7, 3.4

1.6

1.4

2.6, 3.3

1.6

1.3

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