Le cycle de publication de Python est plus rapide!

introduction

Il y a à peine un mois et demi, la nouvelle que le créateur de Python Guido van Rossum a quitté Dropbox, où il a travaillé pendant six ans et demi .. On dit qu'il ne changera pas d'emploi et qu'il prendra sa retraite tel quel. 63 ans. Merci pour votre travail acharné pendant longtemps. Il y a déjà plus d'un an, j'étais absent du BDFL de Python (* Benevolent Dictator For Life *), et cela n'a pas un grand impact sur le développement de Python, mais je suis un peu seul.

Il a commencé à fabriquer Python en décembre 1989, il y a exactement 30 ans. Il voulait programmer son passe-temps pendant les vacances de Noël, et il a décidé de créer un langage d'interprétation, qui est devenu Python maintenant.

Python, qui a été publié en tant que 0.9.0 en 1991, a également été mis à niveau, 2.0 a été publié en 2000 et 3.0 a été publié en 2008. Python2 et Python3 sont développés en parallèle, et actuellement 2.7.17 et 3.8.0 Sont venus à Le support de Python2 prendra fin à la fin de cette année, donc seul Python3 sera maintenu et mis à jour à l'avenir. Cependant, le cycle de cette version va changer! J'ai inventé l'histoire, alors j'écrirai un peu à ce sujet.

L'histoire originale est PEP (Python Enhancement Proposition) appelée PEP 602 --Annual Release Cycle for Python.

Cycle de sortie jusqu'à présent

Lorsque j'écris 3.1.0 ou version ultérieure, qui a un intervalle de publication stable, cela ressemble à ceci.

Version Release Date
3.1 2009-06-27
3.2 2011-02-20
3.3 2012-09-29
3.4 2014-03-16
3.5 2015-09-13
3.6 2016-12-23
3.7 2018-06-27
3.8 2019-10-14

Il y a quelques différences, mais à première vue, il semble qu'ils soient publiés dans un cycle d'environ un an et demi. Et comme le développement d'une certaine version a commencé avec la sortie de la version bêta de la version précédente, il a fallu près de deux ans depuis le début du développement dans son ensemble. C'est un peu trop long, donc une nouvelle proposition de cycle de publication a été proposée et adoptée.

Nouveau cycle de sortie

Tout d'abord, le point culminant de ce cycle de publication est "** chaque année ** une nouvelle version de Python est publiée". Ce qui était autrefois un cycle d'un an et demi est maintenant un cycle d'un an, et une nouvelle version est publiée chaque octobre. Par conséquent, la planification est comme ça.

Phase période
développement de 5 mois (chevauchement avec la période β / RC précédente)
version α 7 mois
Version bêta Trois mois
Version RC Deux mois

Le développement chevauche la version précédente, et la période de α + β + RC n'est que de 12 mois, de sorte qu'il peut être publié chaque année. En d'autres termes, dès que la version officielle de la version précédente sortira, la prochaine version de α sortira! Jusqu'à présent, cela fait plus d'un an et demi depuis la sortie précédente, donc c'est assez incroyable.

Cela peut être difficile à comprendre, donc cela ressemble à ceci sur la figure. スクリーンショット 2019-12-15 9.22.37.png

Et la période de support après la sortie est également clairement décidée et ce sera comme ça.

Python 3.9 ressemble à ceci

Le calendrier pour Python 3.9 est déjà décidé dans PEP-596 et cela ressemble à ceci.

3.9 Développement commencé: 2019-06-04 (terminé) 3.9.0 alpha 1: 2019-11-19 (terminé) 3.9.0 alpha 2: 2019-12-16 3.9.0 alpha 3: 2020-01-14 3.9.0 alpha 4: 2020-02-17 3.9.0 alpha 5: 2020-03-16 3.9.0 alpha 6: 2020-04-13 3.9.0 beta 1: 2020-05-18 (aucune nouvelle fonctionnalité ajoutée après cela) 3.9.0 beta 2: 2020-06-08 3.9.0 beta 3: 2020-06-29 3.9.0 beta 4: 2020-07-20 3.9.0 candidate 1: 2020-08-10 3.9.0 candidate 2: 2020-09-14 3.9.0 final: 2020-10-05

Comme vous pouvez le voir, la première version alpha est déjà sortie. Et, jusqu'à présent, il n'y avait que quatre versions α, mais maintenant il y en a six, ce qui semble compenser le raccourcissement de la période de développement. Je pense que c'est un bon changement d'avoir une approche dite agile, dans laquelle des fonctions sont progressivement ajoutées tout en étant publiées en version alpha et utilisées.

Résumé

Voici un résumé des nouveaux cycles de publication introduits dans Python 3.9. Je suis heureux que le cycle soit raccourci et que de nouvelles fonctions puissent être utilisées en temps opportun.

Recommended Posts

Le cycle de publication de Python est plus rapide!
Python est facile
Qu'est-ce que python
Python est une instance
Qu'est-ce qui est le plus rapide, le mélange Python ou l'échantillon?
Qu'est-ce que Python
python int est infini
@ Est plus rapide que dot
[Python] Qu'est-ce que Pipeline ...
[Python] Qu'est-ce que virtualenv
[Petite histoire] En Python, i = i + 1 est légèrement plus rapide que i + = 1.
Le rond de Python n'est pas strictement rond
[Python] Débogage plus efficace!
Comment utiliser __dict__ en Python
Python est douloureux. Mais utilisez
Python est un langage pour adultes
La liste Python n'est pas une liste
[Python] * args ** Qu'est-ce que kwrgs?
Accélérer le chargement des images Python
Identité et équivalence: is et == en Python
Cours de base Python (1 Qu'est-ce que Python)
[Memo for Python competition professional] Le cache LRU est plus rapide que la conversion de mémo dans le programme
[Python] Qu'est-ce qu'une fonction zip?
[Python] Qu'est-ce qu'une instruction with?
Remarque Python: à propos de la comparaison en utilisant is
ppa: jonathonf / python-3.6 est maintenant privé
Différence entre == et est en python
Golang vs Python - Golang est-il meilleur que Python?
Python est UnicodeEncodeError dans le menu fixe CodeBox
[Python] Qu'est-ce que @? (À propos des décorateurs)
Quel est le meilleur, PyPy ou Python?
sympy.Mul est beaucoup plus rapide que sympy.prod
Python pour la déclaration ~ Qu'est-ce qui est itérable ~
Que faire avec la sortie de PYTHON?
Erreur python d'aujourd'hui: l'image est vide
Accélérer le calcul de la séquence de Fibonacci (version Python)
À quoi sert le trait de soulignement Python (_)?
Déterminer le système d'exploitation exécutant Python
Python> Qu'est-ce qu'une tranche étendue?
Python in est aussi un opérateur
Code Python qui complète les séquences d'ADN Quelle méthode est la plus rapide?