2026.7 でリリースされたすべての変更の詳細については、以下をご参照ください:
他のサポート対象バージョンのパッチリリースも公開されています:
2026.7 でリリースされたすべての変更の詳細については、以下をご参照ください:
他のサポート対象バージョンのパッチリリースも公開されています:
これで現在の「esr」リリースになりますか? それとも何か誤解していますか?
確かに、何が起きたのか理解できません。このアップデート(Cache poisoning/XSS via color scheme cookies · Advisory · discourse/discourse · GitHub により非常に緊急)には再ビルドが必要でしたが、v2026.1.5 → v2026.1.6 の変更ログがあったため、マイナーバージョンのアップグレードだと思っていました。しかし、実際には v2026.7.0 になっていました。私の知る限り、フォーラムは esr に設定されています:
params:
db_default_text_search_config: "pg_catalog.english"
## Set db_shared_buffers to a max of 25% of the total memory.
## will be set automatically by bootstrap based on detected RAM, or you can override
db_shared_buffers: "2048MB"
## can improve sorting performance, but adds memory usage per-connection
db_work_mem: "40MB"
## Reduce max upload size
upload_size: 1m
## Which Git revision should this container use? (default: tests-passed)
version: esr
また、以下のような大量のアップデート後のクエリが表示されたことにもかなり驚きました:
== 20260421061908 AddCoveringIndexOnChatMessagesThreadId: migrating ===========
-- 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: duration: 16903.716 ms statement: 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: duration: 15529.318 ms statement: 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: duration: 798.943 ms statement: 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: duration: 143.500 ms statement: 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: duration: 1051.872 ms statement: 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: duration: 658.965 ms statement: UPDATE posts
SET raw = regexp_replace(
raw,
'\\+([_*~|`])(?=[^\]\[]*\]\(upload://)',
'\1',
'g'
)
WHERE id >= 10001
AND id < 20001
AND raw ~ '\\+[_*~|`][^\]\[]*\]\(upload://'
はい、その通りです!
このリリースは新しい ESR リリースですので、アップデート時にこれに移行しました。
今後、これをもう少し分かりやすくすることは可能でしょうか? 私だけかもしれませんが、現在使用中の ESR ブランチにアップデートが適用された場合、そのブランチの現在のメジャーバージョンがまだサポートされているからだと想定します。
2026.1 は引き続きサポートされており、app.yml で version: release/2026.1 を設定することでインストールをそのバージョンに固定できます。その場合、再ビルドを実行すれば 2026.1 ブランチのセキュリティアップデートが適用されていたはずです。
おそらく version: esr を使用していたのでしょう。その場合、最新の ESR(Extended Support Release)バージョンを追跡することになり、現在は 2026.7 となっています。
サポート期間や ESR サポート間の重複に関する情報は、https://releases.discourse.org/ で確認できます。
残念ながら Discourse のダウングレードはできません。ただし、今後これを回避したい場合は release/2026.7 に固定し(2026.7 のサポート終了前に手動で固定値を更新するようにしてください)、アップデートを管理できます。
ありがとうございます。おそらく、まだサポートされている最も古いバージョンに確実に留まるための、最も確実で自動化された方法、つまり開発速度が最も遅いパスを探しているのでしょう。