Processo e regole di release¶
Nuovo nella versione v2.6.2.
Dalla prima release successiva alla v2.6.2
, le regole che seguono verranno
usate per aiutare il core team di Requests a produrre una nuova release.
Major Release¶
Una major release include dei cambiamenti non retrocompatibili. Quando ad essa
viene data una versione, il suo formato è vX.0.0
. Ad esempio, se la release
precedente fosse la v10.2.7
, la successiva sarebbe la v11.0.0
.
I cambiamenti non retrocompatibili distruggono la compatibilità con le versioni
precedenti. Se nel progetto si modificasse l’attributo text
di una
Response
o di un metodo, questo sarebbe possibile solamente in una major
release.
Le major release possono anche includere risoluzioni a vari bachi e aggiornamenti a package di vendor esterni. Gli sviluppatori del core team di Requests si impegnano per offrire una buona user experience: ciò significa che ci impegnamo anche a mantenere la retrocompatibilità il più possibile. Le major release saranno poco frequenti e richiederanno delle ottime giustificazioni prima di essere considerate.
Minor Release¶
Una minor release è priva di modifiche non retrocompatibili ma può includere
risoluzioni a vari bachi e aggiornamenti a package di vendor esterni. Ad esempio,
se la release precedente fosse la v10.2.7
, una minor release sarebbe
versionata come v10.3.0
.
Le minor release saranno retrocompatibili con le releease che hanno lo stesso
numero di versione major. Altrimenti detto, tutte le versioni che iniziano con
v10.
dovrebbero essere compatibili tra di loro.
Hotfix Release¶
Una hotfix release include solo risoluzioni a bachi che non erano state incluse
quando è stata rilasciata la versione precedente del progetto. Se la versione
precedente di Requests fosse la v10.2.7
, una hotfix release sarebbe
versionata come v10.2.8
.
Dalla versione v2.6.2
, le hotfix release non includono aggiornamenti a
package di vendor esterni.
Ragionamento¶
Nelle serie di release 2.5 e 2.6, il core team di Requests ha aggiornato le dipendenze esterne, causando a se stesso e agli utenti di bei mal di testa. Per evitare questo genere di situazioni, stiamo costruendo un corpo di regole per stabilire concretamente le aspettative sulle release.