Python 3.15.0 arrive dans GitHub Actions : la matrice de tests peut être mise à jour

Le dépôt actions/python-versions inclut désormais la version stable de Python 3.15.0. L'action setup-python y puise ses distributions : il suffit donc d'inscrire la version "3.15" dans la matrice GitHub Actions pour lancer les tests sur la nouvelle version. Le développeur Simon Willison attendait ce commit depuis plusieurs jours. Il a chargé ChatGPT d'exécuter un git pull toutes les heures et de le prévenir dès l'apparition de la 3.15. • Python 3.15.0 stable est désormais disponible dans GitHub Actions. • La version doit être écrite sous forme de chaîne entre guillemets : "3.15". • Plusieurs jours se sont écoulés entre la sortie sur python.org et l'arrivée dans la CI.

Traité par IA depuis Simon Willison ; édité par Hamidun News
Python 3.15.0 arrive dans GitHub Actions : la matrice de tests peut être mise à jour
Source : Simon Willison. Collage: Hamidun News.
Écouter l'article
Fiche synthèse et chiffres clés
ParamètreDonnées
Source primaireSimon Willison ↗
Rédacteur en chef
Chiffre clé #1Python 3.15.0 stable est désormais disponible dans GitHub Actions.
Chiffre clé #2La version doit être écrite sous forme de chaîne entre guillemets : "3.15".
Chiffre clé #3Plusieurs jours se sont écoulés entre la sortie sur python.org et l'arrivée dans la CI.

Un commit ajoutant la version stable de Python 3.15.0 vient d'apparaître dans le dépôt actions/python-versions. L'annonce est modeste, mais pour des milliers de projets GitHub, c'est un signal : on peut ajouter "3.15" à la matrice de tests et vérifier son code sur un interpréteur récent, sans le compiler soi-même. Le développeur Simon Willison attendait ce moment depuis plusieurs jours. Il a même chargé ChatGPT de cloner le dépôt, d'exécuter un git pull toutes les heures et de le prévenir dès que la 3.15 stable serait enfin disponible.

Pourquoi la sortie de

Python et sa disponibilité en CI ne coïncident pas

Quand une nouvelle version sort sur python.org, GitHub Actions ne la reçoit pas instantanément. L'action setup-python récupère les builds prêts à l'emploi de l'interpréteur depuis le manifeste du dépôt actions/python-versions. Tant que ce manifeste ne contient aucune entrée pour 3.15.0, la commande `python-version: "3.15"` cherche uniquement parmi les préversions, ou ne trouve aucune version adaptée. Les mainteneurs doivent compiler les distributions pour Linux, macOS et Windows, lancer les vérifications, puis commiter la mise à jour.

Willison attendait précisément cette étape. La version était déjà sortie et la page existait sur python.org, mais la CI ne pouvait pas encore l'utiliser. Ce décalage gêne les auteurs de bibliothèques : les utilisateurs installent le nouveau Python dès les premiers jours, et mieux vaut détecter un bug de compatibilité avant eux.

Comment ChatGPT s'est retrouvé en sentinelle de dépôt

Le prompt de Willison ressemble presque à une tâche cron en langage naturel : cloner https://github.com/actions/python-versions, exécuter un git pull toutes les heures jusqu'à l'ajout de la 3.15 stable, puis le prévenir. Il a publié le lien de la conversation. C'est un exemple du quotidien de scénario agentique : le modèle accède à un environnement avec git, répète une action selon un calendrier et revient de lui-même avec le résultat lorsque la condition est remplie.

La tâche est mineure, mais révélatrice. Auparavant, on réglait ce genre de besoin avec un abonnement aux releases, un flux RSS ou un script sur un serveur. Il suffit désormais de décrire la condition avec des mots. L'inconvénient est tout aussi évident : la fiabilité d'une telle sentinelle dépend de la manière dont le produit de chat planifie et lance les vérifications répétées. Un abonnement aux notifications GitHub ou un workflow planifié donnent un résultat plus prévisible. La note de Willison ne mentionne pas le résultat de la vérification : impossible donc d'évaluer l'efficacité de cette approche.

Ce qu'il faut savoir sur la configuration

  • La version s'écrit sous forme de chaîne : `"3.15"`. Sans guillemets, YAML peut lire le nombre comme un float, et `3.10` devient `3.1`. Ce piège est connu de longue date.
  • Source des builds : le manifeste du dépôt actions/python-versions, utilisé par setup-python.
  • Page de la release : python.org/downloads/release/python-3150.
  • Tags de la note : GitHub, Python, GitHub Actions, ChatGPT.

En pratique : que faire dès aujourd'hui

Si vous maintenez une bibliothèque ou un service en Python, ajoutez `"3.15"` à la matrice, par exemple `python-version: ["3.13", "3.14", "3.15"]`. Mieux vaut marquer la première exécution comme non bloquante avec `continue-on-error`. Ainsi, les dépendances cassées qui contiennent des extensions natives n'arrêteront pas le pipeline principal. Les wheels pour la nouvelle version n'apparaissent pas tout de suite pour les paquets populaires, et les premiers builds rouges s'expliquent souvent par cela, et non par votre code.

Il vaut aussi la peine de passer en revue les avertissements de dépréciation émis par Python sur les versions précédentes. Il est plus simple de les corriger en amont, avant la suppression de l'ancienne API. Si vous avez des builds nocturnes ou des vérifications sur des images Docker, ajoutez-y aussi la 3.15.

Enfin, si vous attendez un événement dans le dépôt de quelqu'un d'autre, inutile de le demander à un chatbot. Un abonnement aux releases ou un simple workflow planifié est plus fiable ; le chatbot convient quand la condition est difficile à décrire de façon formelle.

Dossier

Questions clés sur cet article

Pourquoi la sortie de Python et sa disponibilité en CI ne coïncident pas?

Quand une nouvelle version sort sur python.org, GitHub Actions ne la reçoit pas instantanément. L'action setup-python récupère les builds prêts à l'emploi de l'interpréteur depuis le manifeste du dépôt actions/python-versions. Tant que ce manifeste ne contient aucune entrée pour 3.15.0, la commande `python-version: "3.15"` cherche uniquement parmi les préversions, ou ne trouve aucune version adaptée. Les mainteneurs doivent compiler les distributions pour Linux, macOS et Windows, lancer les vérifications, puis commiter la mise à jour. Willison attendait précisément cette ét

Comment ChatGPT s'est retrouvé en sentinelle de dépôt?

Le prompt de Willison ressemble presque à une tâche cron en langage naturel : cloner https://github.com/actions/python-versions, exécuter un git pull toutes les heures jusqu'à l'ajout de la 3.15 stable, puis le prévenir. Il a publié le lien de la conversation. C'est un exemple du quotidien de scénario agentique : le modèle accède à un environnement avec git, répète une action selon un calendrier et revient de lui-même avec le résultat lorsque la condition est remplie. La tâche est mineure, mais révélatrice. Auparavant, on réglait ce genre de besoin avec un abonnement aux re

Que sait-on sur Ce qu'il faut savoir sur la configuration ?

La version s'écrit sous forme de chaîne : `"3.15"`. Sans guillemets, YAML peut lire le nombre comme un float, et `3.10` devient `3.1`. Ce piège est connu de longue date. Source des builds : le manifeste du dépôt actions/python-versions, utilisé par setup-python. Page de la release : python.org/downloads/release/python-3150. Tags de la note : GitHub, Python, GitHub Actions, ChatGPT.

ZK
Zhemal Khamidun — CPO d'Alpina Digital, product manager d'AlpinaGPT. Conçoit des produits IA depuis 2019. Hamidun News est un projet personnel devenu un agrégateur en production avec plus de 6 000 lecteurs.
✦ Hands-On AI Engineering

Build & Ship Production AI Apps with Vibe Coding

Join Zhemal Khamidun's hands-on Vibe Coding Intensive at hamidun.com/vibecoding — master Claude Code, Cursor, and autonomous agentic workflows.

Explore Vibe Coding →Vibe Academy Platform
Qu'en pensez-vous ?
Chargement des commentaires…