Primeiro de tudo, parabéns à equipe do Discourse pelo novo ESR, e obrigado pelo trabalho que foi feito nele. Seis meses de lançamentos chegando em um único ponto de verificação suportado é MUITA engenharia, e o fato de agora haver um site de lançamento e um changelog para explorar tornou essa pesquisa muito mais fácil do que nos últimos 4 anos.
Estou na versão 2026.1.5 ESR. Passei de lançamento em lançamento antes de tentar encontrar uma configuração onde as atualizações ocorram da forma mais suave possível.
Revisti tudo entre 2026.1.5 e 2026.7.0 antes de tocar em qualquer coisa, e achei que as notas seriam úteis para qualquer outra pessoa que esteja na versão 2026.1 agora, tentando decidir: aplicar patch agora, ou pular agora?
Aplicarei o patch para 2026.1.6 hoje pelas correções de segurança, e migrarei para 2026.7.0 na primeira semana do próximo mês, quando tiver tempo para testar adequadamente meus componentes de tema e outras coisas.
A pegadinha do version: stable!
Se, como o meu, seu app.yml diz:
version: stable
…então sua próxima reconstrução o colocará na versão 2026.7.0, quer você tenha pretendido ou não. stable é um alias de compatibilidade retroativa para esr, e esr sempre aponta para o ESR mais recente, que mudou hoje.
Não há caminho de downgrade que eu conheça, então, se você reconstruir apenas para pegar a correção de segurança, você recebe o salto de seis meses junto com ele!
Para permanecer na versão 2026.1 e obter apenas patches de segurança, fixe explicitamente:
version: release/2026.1
Para migrar para o novo ESR e não ser movido novamente automaticamente em seis meses:
version: release/2026.7
A versão 2026.1 é suportada até setembro de 2026. A versão 2026.7 roda até março de 2027. Então o salto está chegando independentemente, é apenas uma questão de se isso acontece no seu cronograma.
Pré-requisitos
PostgreSQL 15 é agora o mínimo. Verifique o seu de dentro do container:
cat /shared/postgres_data/PG_VERSION
O meu retornou 15, então estou tranquilo. Se você estiver na versão 13 ou 14, acredito que seja uma atualização separada a ser feita antes do salto de versão.
Vale notar: a imagem do container agora vem com PG 18 junto com o 15, mas estou recusando isso por enquanto, uma variável de cada vez.
Tempo de inatividade?
Faça um backup primeiro e bloqueie os fóruns com o modo de manutenção.
Sem tempo de inatividade, mas eles não são instantâneos em um fórum maduro:
A reconstrução levou < 5 minutos no meu VPS, planeje por ~ 10 minutos na maioria dos provedores de hospedagem, mas também depende muito da contagem de posts do seu fórum, então planeje uma janela de 30 a 45 minutos.
Segurança: a que você está exposto na versão 2026.1.5
17 avisos se aplicam se você estiver na versão 2026.1.5. Tudo publicado antes de 30 de junho já estava corrigido na sua compilação. Todos os 17 estão corrigidos tanto na 2026.1.6 quanto na 2026.7.0, o que torna a opção de aplicar patch primeiro uma alternativa legítima.
- 1 crítico - envenenamento de cache / XSS via cookies de esquema de cores
- 2 altos - RCE via arquivo HEIF malformado; XSS armazenado via nome de usuário de transcrição de chat não escapado no editor de texto rico
- 13 médios, 1 baixo - XSS armazenado na fila de revisão, logs de ações de staff, ações de post e datas locais; vazamento de nome e descrição de tags ocultas; títulos de tópicos restritos expostos via URLs canônicos; vazamento de título/resumo de rascunhos compartilhados; bypass da lista de bloqueio de domínios onebox via comparação sensível a maiúsculas/minúsculas; escuta de conversação de bot de IA; conteúdo de PM acessível através de revisáveis de IA; incompatibilidade de ID de canal/thread no onebox de chat; resumo do primeiro post oculto emitido no JSON-LD de Q&A
Se você estiver aplicando apenas patches, release/2026.1 + reconstrução fecha todos eles.
Minha irritação pessoal: Coisas que mudarão sem você pedir
Esta é a seção que mais queria nos últimos anos. No salto para 2026.7, estas são algumas das mudanças de comportamento que chegam sozinhas:
-
Reações do Discourse habilitadas por padrão para todos os sites. A implementação chegou ao
stableem 21 de julho. Se você não usa Reações hoje, elas estão chegando. -
A categoria “Sem Categoria” está sendo removida. Três configurações serão ocultadas do admin (
allow_uncategorized_topics,suppress_uncategorized_badge,uncategorized_category_id) e serão removidas completamente quando a mudança se tornar permanente. Gerenciada como uma opção de saída por enquanto. -
A configuração do site
rich_editordesapareceu. O editor rico agora é incondicional. A preferência decomposition_modepor usuário é a única maneira restante de escolher entre markdown e texto rico. O interruptor de pré-visualização Markdown também foi removido - o interruptor de modo MD/RTE o substitui. -
Assuntos de e-mail mais simples. Atualmente em beta. Aviso: habilitar isso sobrescreve sua configuração do site
email_subject, e desabilitá-lo reverte para o padrão. Então qualquer personalização que você tenha lá pode ser perdida. Verifique essa configuração antes de alternar qualquer coisa. -
Cartões de tópico de alto contexto Horizon chegaram ao
stableem junho. Relevante apenas se você estiver usando o Horizon, e há uma configuração de tema para reverter para cartões simples.
A boa notícia: todas essas agora chegam através do sistema de Mudanças Futuras, o que significa que não está na versão 2026.1.5. Você recebe uma página de configuração, aviso prévio, opção de saída por mudança e uma correção (#39279) que especificamente impede que uma implementação sobrescreva uma configuração que você já personalizou.
Se, como eu, você ficou frustrado com configurações mudando entre lançamentos, esse sistema é a resposta, e permanecer na versão 2026.1 mantém você na compilação que antecede isso. A primeira coisa que farei após o salto é revisar as Mudanças Futuras e definir cada item pendente deliberadamente, antes que qualquer coisa se promova sozinha.
Se você usa temas ou componentes personalizados
É aqui que espero gastar meu tempo de teste, e parte do motivo pelo qual não estou pulando hoje:
- Avisos de admin agora estão habilitados para todas as depreciações pendentes. Espere que seus componentes personalizados comecem a exibir avisos de admin se usarem qualquer coisa legada. Melhor saber, mas é uma revisão.
- Novas depreciações para extensões de arquivo
.hbse.js.es6. Verifique a nomenclatura dos arquivos do seu componente. - Shims de widgets legados removidos, junto com os caminhos de depreciação para
discourse.breadcrumbs.*,add-flag-property,add-header-panelebootbox. - Saídas de plugin agora podem ser aliasadas e depreciadas em vez de quebrar silenciosamente. Uma mudança genuinamente boa. Saídas renomeadas avisam em vez de simplesmente desaparecerem.
- Configurações de tema movidas do bundle JS para dados de pré-carregamento, o que muda quando elas estão disponíveis na inicialização. Vale a pena verificar se seu componente lê configurações cedo.
- Configurações de site de modo móvel legado removidas, e as folhas de estilo core vazias de móvel/desktop removidas. Se seu CSS visa móvel e desktop separadamente, teste em um telefone real após a atualização.
Por baixo dos panos: Ember 6.6 → 6.10, ember-cli 6.9 → 7.0.1, a migração Rolldown concluída, suporte TypeScript adicionado para temas e plugins, e muito jQuery removido em todo o lugar.
Usuários de House Ads: JS inline agora é bloqueado em house ads, e a interface de admin foi reconstruída em FormKit. house_ads_after_nth_root também é agora respeitado na visualização de respostas aninhadas.
Novos recursos notáveis
37 recursos foram destacados nestes seis meses. Aqueles que acho mais importantes para um fórum de comunidade geral:
- Mudanças Futuras - a página de configuração e o sistema de implementação descritos acima.
- Respostas aninhadas - visualização de tópico em árvore/thread experimental, configurável por tópico e por categoria, com habilitação em massa na lista de tópicos e experiência móvel reformulada.
- Login e cadastro com código de e-mail único (
enable_local_logins_via_code) - sem senha, atualmente em alpha. Cadastro requer apenas um e-mail mais um código. - Nova página de gerenciamento de categorias do admin mais criação de categorias simplificada. Um diretório completo de categorias e seus tipos.
- Ações em massa em toda parte - gerenciamento de tags em massa (adicionar/remover/substituir), fixar/desfixar em massa e suspensão em massa para usuários não ativados, junto com um novo filtro de status de ativação em Admin → Usuários. Essa última combinação é excelente para limpar ondas de registro de spam.
Também vale a pena mencionar: uma configuração de página inicial padrão explícita, grupos de emojis fixados com importação/exportação em massa de emojis personalizados, pontos agora permitidos em nomes de tags, uma página dedicada de edição de tags, modo de aplicativo completo para incorporação, sincronização de grupo para OAuth2 e OpenID Connect, e ícones de status de PR ao vivo em oneboxes inline do GitHub.
Por que apliquei patch primeiro
Nada acima é um motivo para não migrar para 2026.7. O sistema de Mudanças Futuras sozinho já vale a pena, e eu vou na primeira ou segunda semana do próximo mês.
Mas as correções de segurança estão disponíveis em ambas as branches, o que significava que eu poderia desacoplar a parte urgente da parte que precisa de teste. Como o editor rico agora é incondicional. Tenho certeza que, lendo pelos fóruns, encontrarei um caminho rápido, espero.
Aplicar patch hoje fechou todos os avisos. O salto agora recebe uma janela adequada onde posso revisar Mudanças Futuras deliberadamente e verificar meus componentes de tema em desktop e móvel sem correr contra um CVE crítico.
Se você estiver na versão 2026.1 e com pouco tempo esta semana, sugiro o mesmo. Se você tiver tempo, vá direto para release/2026.7, apenas fixe-o explicitamente e verifique sua versão do Postgres.
Obrigado novamente à equipe. O site de changelog tornou essa investigação muito menos dolorosa do que teria sido há um ano.
Divulgação: Usei IA para me ajudar a estruturar esta postagem; caso contrário, não teria tempo para postar isso. Por favor, aponte qualquer coisa que eu precise adicionar, remover ou mudar.

