TechEt concrètement ?

SQLite 3.54 : le menu du 9 renvoie au plat 3a, l'addition du 16 a renuméroté

Le 9 octobre, la note 3.54.0 a treize plats et un renvoi vers l'item 3a, qui n'est pas sur la page. Le 16, la page d'historique numérote le correctif 1 et 2, et les empreintes 3 et 4. La note détaillée du même jour recolle le menu du 9, numérote le correctif 14 et 15, et les empreintes 16 et 17. Le dépassement de tas est écrit pour les builds 32 bits.

Le menu du 9 octobre a une ligne qui te renvoie à un autre plat. « See item 3a above. » Tu remontes la carte. L'item 3 est une phrase sur ALTER TABLE. Il n'a pas de sous-ligne a. L'addition du 16 octobre, la courte, recommence à 1. L'addition détaillée du même jour recolle tout le menu, et elle donne au correctif les numéros 14 et 15. Si tu commandes « la 3.54 », tu n'as pas encore dit laquelle des trois feuilles tu tiens.

SQLite 3.54.0 est datée 2026-10-09. SQLite 3.54.1 est datée 2026-10-16. La page d'historique se présente comme un résumé de haut niveau, et elle renvoie aux journaux Fossil pour le détail. Sa phrase d'intro, imprimée ainsi, dit de voir la chronologie « a succinct listing » des sorties. La note détaillée de la 3.54.1, elle, commence par Prior changes from version 3.54.0 (2026-10-09), et elle réimprime le menu. Puis un second titre : Changes in this specific patch release, version 3.54.1 (2026-10-16).

Le plat 1f pointe vers un 3a que le menu n'a pas

La ligne 1f est sur la note du 9, sur le bloc du 9 dans l'historique, et encore dans la réimpression du 16. La commande .mode gagne --rowcount on et --titles always. « --titles always » est maintenant le comportement par défaut, voir l'item 3a ci-dessus. L'ancien comportement se restaure avec -titles on. Un tiret. L'option nouvelle en a deux.

L'item 3, sur les mêmes pages, n'est pas une sous-ligne de la CLI. C'est ceci : la commande ALTER TABLE lève une erreur si on tente d'ajouter, de retirer ou de renommer une colonne qui s'appelle ROWID, ROWID ou OID. Pas de 3a. Le renvoi reste imprimé. Je ne le corrige pas en 1c, même si 1c est la ligne qui parle des en-têtes de colonnes quand la requête ne renvoie aucune ligne.

D'autres phrases sont imprimées telles quelles, et je les laisse. 1a : le prompt initial « is now be initialized » avec les variables SQLITE_PS1 et SQLITE_PS2, si elles existent. 1d : la commande .diskused s'appuie sur la nouvelle extension diskused(), et la phrase dit « The replaces » l'utilitaire séparé sqlite3_analyzer, maintenant déprécié. 1e : sur unix, la CLI préserve les octets nuls en « outputing » des valeurs BLOB non formatées. 8b : « Added the end of modifier. » La phrase s'arrête là. Je n'invente pas le nom du modificateur. 8a, juste au-dessus, est plus complet : la forme « weekday -N » du modificateur weekday. 10c : « This changes above only affects SQLite on Windows. »

L'item 10, lui, a une portée écrite : abandon du support de WindowsXP et des versions Windows plus anciennes, y compris WindowsCE. SQLite pour Windows demande maintenant Windows Vista (circa 2007) ou plus tard. Les builds pour Linux, Mac, BSD et les autres variantes unix ne sont pas affectés. Cette phrase est dans le menu du 9. Elle n'est pas dans le bloc court du 16, sur la page d'historique. Ce bloc-là ne réimprime pas le menu.

L'item 13 : environ 4 % plus rapide, mesuré en cycles CPU sur le benchmark speedtest1, avec le mot « preformance », sous valgrind, sur Linux x64. Environ 7,5 % plus rapide qu'il y a un an, la version 3.51.0. La page ajoute que le kilométrage varie selon la charge, les options de build, le CPU, le compilateur et le système. Je ne transforme pas les 4 % en promesse pour ta base.

L'addition courte numérote 1, l'addition longue numérote 14

Sur la page d'historique, le bloc 2026-10-16 (3.54.1) a deux lignes, puis les empreintes en 3 et 4.

La première : corriger un possible dépassement de tampon sur le tas sur les builds 32 bits. La parenthèse : les builds 64 bits ne sont pas affectés par ce problème. La seconde : corrige d'autres problèmes de la 3.54.0 signalés par les utilisateurs. Voir la chronologie des check-in pour le détail.

Les empreintes, numérotées 3 et 4 sur cette page courte : SQLITE_SOURCE_ID: 2026-10-16 14:45:20, puis 555e07ef33f69a0957d24d8e555b702464a131d6f1607f4c3c1e4551e8e6ca76. Le SHA3-256 de sqlite3.c : e2b869d3003b33c942b7dd7063604fbc53553e1b66609570df39b9b7b558ee81.

La note détaillée du 16 imprime les mêmes deux phrases de correctif, mais elle les numérote 14 et 15, après avoir recollé les items 1 à 13 du 9 octobre, y compris le renvoi vers 3a. Les empreintes y sont les items 16 et 17. Le texte du dépassement de tas est le même. Le numéro sur l'addition ne l'est pas.

La note du 9, et le bloc du 9 dans l'historique, numérotent leurs propres empreintes 14 et 15. SQLITE_SOURCE_ID: 2026-10-09 15:46:58, puis be8d059e9a49089ab2dce5ed26dd87aaf598fdc5fbe0b107c0dd758464bcd5e3. SHA3-256 : 8efd453d08a7cfc4c79de5923153036cdc4dcaa254d4f1e617be6a2a98828f9e. Le 16 octobre, sur la page courte, 14 et 15 ne sont plus des numéros d'empreinte. Ce sont les numéros que la page longue donne au correctif. Je ne fais pas une seule suite avec les deux feuilles.

« D'autres problèmes » ne sont pas écrits sur l'addition

La ligne 2 de la page courte, qui est la ligne 15 de la note longue, ne liste pas ces autres problèmes. Elle renvoie à la chronologie. Je ne l'ouvre pas pour inventer une troisième puce et la coller sur l'addition. Le dépassement de tas est la seule phrase technique du correctif, et sa parenthèse ne parle que des builds 32 bits et des builds 64 bits. Je ne l'étends pas à une troisième largeur.

diskused() est nommé deux fois dans le menu du 9 : comme extension derrière .diskused, et comme fonction SQL optionnelle, à l'item 4. La page courte du 16 ne répète ni l'un ni l'autre. Je ne lis pas ce silence comme un retrait. Le correctif ne mentionne pas la fonction. Le menu du 9, lui, la déprécie seulement pour l'utilitaire sqlite3_analyzer, pas pour la fonction.

✍️ À toi : la feuille que tu as ouverte, historique ou note détaillée, et le numéro imprimé en face de la ligne sur le 32 bits. Le correctif tient en une phrase. L'addition ne compte pas pareil.

Le 9 octobre, SQLite 3.54.0 imprime un menu dont la ligne 1f renvoie à un item 3a absent, abandonne WindowsXP au profit de Vista, et pose ses empreintes en 14 et 15. Le 16 octobre, la page d'historique isole deux lignes, numérotées 1 et 2 : un dépassement de tas limité aux builds 32 bits, et d'autres problèmes renvoyés à la chronologie. La note détaillée du même jour recolle le menu, y compris le 3a, et elle donne à ce correctif les numéros 14 et 15. Deux additions. Un plat qui n'est pas sur la carte.