Version mensuelle de juillet 2026

Pour plus d’informations sur toutes les modifications publiées dans la version 2026.7, consultez :

Des versions correctives pour les autres versions prises en charge ont également été publiées :

3 « J'aime »

Cela devient-il la version « esr » actuelle, ou ai-je mal compris quelque chose ?

En effet, je n’arrive pas à comprendre ce qui s’est passé. Pour cette mise à jour (très urgente en raison de Cache poisoning/XSS via color scheme cookies · Advisory · discourse/discourse · GitHub), une reconstruction était nécessaire, mais comme il y avait un journal des modifications v2026.1.5 → v2026.1.6, j’ai supposé qu’il s’agirait d’une mise à jour mineure de version. Mais non, je suis maintenant sur la v2026.7.0. Pour autant que je sache, mon forum est configuré pour être sur esr :

params:
  db_default_text_search_config: "pg_catalog.english"

  ## Fixez db_shared_buffers à un maximum de 25 % de la mémoire totale.
  ## sera défini automatiquement par bootstrap en fonction de la RAM détectée, ou vous pouvez le remplacer
  db_shared_buffers: "2048MB"

  ## peut améliorer les performances de tri, mais augmente l'utilisation de la mémoire par connexion
  db_work_mem: "40MB"

  ## Réduire la taille maximale des téléchargements
  upload_size: 1m

  ## Quelle révision Git ce conteneur doit-il utiliser ? (par défaut : tests-passed)
  version: esr

J’ai également été assez surpris de voir toute une série de requêtes post-mise à jour comme celles-ci :

== 20260421061908 AddCoveringIndexOnChatMessagesThreadId: migration en cours ===========
-- remove_index(:chat_messages, {name: "idx_chat_messages_thread_id_id_user_id_not_deleted", algorithm: :concurrently, if_exists: true})2026-07-28 16:02:43.673 UTC [544] discourse@discourse LOG:  durée : 16903.716 ms  instruction : CREATE INDEX CONCURRENTLY "index_posts_on_updated_at_for_localization" ON "posts" ("updated_at" DESC) WHERE deleted_at IS NULL AND user_id > 0 AND locale IS NOT NULL
2026-07-28 16:02:59.214 UTC [544] discourse@discourse LOG:  durée : 15529.318 ms  instruction : CREATE INDEX CONCURRENTLY "index_posts_on_updated_at_for_locale_detection" ON "posts" ("updated_at" DESC) WHERE deleted_at IS NULL AND user_id > 0 AND locale IS NULL
2026-07-28 16:03:00.031 UTC [544] discourse@discourse LOG:  durée : 798.943 ms  instruction : CREATE INDEX CONCURRENTLY "index_topics_on_updated_at_for_locale_detection" ON "topics" ("updated_at" DESC) WHERE deleted_at IS NULL AND user_id > 0 AND locale IS NULL
2026-07-28 16:03:00.186 UTC [544] discourse@discourse LOG:  durée : 143.500 ms  instruction : CREATE INDEX CONCURRENTLY "index_topics_on_updated_at_for_localization" ON "topics" ("updated_at" DESC) WHERE deleted_at IS NULL AND user_id > 0 AND locale IS NOT NULL
2026-07-28 16:03:01.251 UTC [544] discourse@discourse LOG:  durée : 1051.872 ms  instruction : UPDATE posts
	SET raw = regexp_replace(
	  raw,
	  '\\+([_*~|`])(?=[^\]\[]*\]\(upload://)',
	  '\1',
	  'g'
	)
	WHERE id >= 1
	  AND id < 10001
	  AND raw ~ '\\+[_*~|`][^\]\[]*\]\(upload://'
	
2026-07-28 16:03:01.910 UTC [544] discourse@discourse LOG:  durée : 658.965 ms  instruction : UPDATE posts
	SET raw = regexp_replace(
	  raw,
	  '\\+([_*~|`])(?=[^\]\[]*\]\(upload://)',
	  '\1',
	  'g'
	)
	WHERE id >= 10001
	  AND id < 20001
	  AND raw ~ '\\+[_*~|`][^\]\[]*\]\(upload://'
2 « J'aime »

Oui, c’est le cas !

Cette version est une nouvelle version ESR, donc vous y avez basculé lors de votre mise à jour.

2 « J'aime »

Pourrait-on rendre cela moins confus à l’avenir ? Peut-être que c’est juste moi, mais si une mise à jour est appliquée à la branche ESR sur laquelle je me trouve actuellement, je suppose que c’est parce que la version majeure actuelle de cette branche est toujours prise en charge.

1 « J'aime »

La version 2026.1 est toujours prise en charge, et vous pouvez figer votre installation sur cette version en définissant version: release/2026.1 dans votre fichier app.yml. Dans ce cas, une reconstruction aurait intégré la mise à jour de sécurité sur la branche 2026.1.

Je suppose que vous utilisiez version: esr ? Dans ce cas, vous suivez la version « esr la plus récente », qui est maintenant la 2026.7.

Vous trouverez des informations sur les périodes de prise en charge, ainsi que les chevauchements entre les prises en charge ESR, sur https://releases.discourse.org/

Malheureusement, il n’est pas possible de rétrograder Discourse. Mais si vous souhaitez éviter cela à l’avenir, vous pouvez figer la version sur release/2026.7 (et veiller à mettre à jour ce paramètre manuellement avant que la version 2026.7 ne sorte de sa période de prise en charge).

1 « J'aime »

Merci. Je suppose que je cherche la méthode la plus infaillible/automatisée pour rester définitivement sur la version la plus ancienne encore prise en charge, c’est-à-dire le chemin de développement le plus lent.

1 « J'aime »

Idem, et je pense que l’esr (presque) fait cela. Toutes les quelques mois, il y a un nouvel esr et vous passez à celui-ci, ce qui vient d’arriver. Mais en réalité, l’ancien esr a encore deux mois de durée de vie maintenue, donc vous vous attendiez à rester sur cet esr précédent. (Je pense que c’est une chose raisonnable de vouloir faire. Avons-nous besoin d’un label esr-maintenu ??)

1 « J'aime »