Notas de lançamento do Discourse 2.5.0.beta5

Novos recursos na versão 2.5.0.beta5

Miniaturas de Tópicos e Modificadores de Tema

A capacidade de exibir miniaturas de tópicos para os tópicos foi um recurso solicitado há muito tempo. Historicamente, para exibir essas imagens, era necessário um plugin. Na beta5, adicionamos suporte a modificadores de tema, incluindo miniaturas de tópicos, ícones SVG e trechos de tópicos. Desenvolvedores de temas podem aproveitar essas novas opções ao desenvolver ou atualizar seus temas. Para mais detalhes sobre Modificadores de Tema, veja: Theme modifiers: A brief introduction.

Suporte a Atalhos de Aplicativo

O Discourse agora suporta o novo Menu de Atalhos de Aplicativo, um recurso futuro dos navegadores relacionado a PWAs instaladas. Os Atalhos de Aplicativo são atualmente suportados no Android e no Windows.

Clicando com o botão direito ou pressionando por um longo período em plataformas com toque no ícone da PWA da sua instância do Discourse, será exibido um menu de acesso rápido com atalhos úteis:

Para mais detalhes e capturas de tela, veja App Shortcut Menu support

Remoção de Webhooks Descontinuados

No ano passado (Discourse 2.3.0.beta7), lançamos a Fila de Revisão, uma visão única para todos os itens revisáveis, como bandeiras, usuários, postagens e tópicos. Webhooks existentes, incluindo flag e queued post, permaneceram, mas foram duplicados pelo webhook reviewable. Agora removemos os webhooks mais antigos em favor do único webhook reviewable.

Seletor de Ícones e Carregador de Imagens para Flair de Avatar

Para facilitar ainda mais a adição de flair de avatar, substituímos o campo de URL da imagem por opções para selecionar um ícone do Font Awesome ou fazer upload de uma imagem diretamente.

Mensagem Pessoal quando a Membro de Grupo é Aceita

Os usuários atualmente recebem uma notificação quando sua solicitação para entrar em um grupo privado é aceita. Agora, enviamos uma MP (mensagem pessoal), para que os usuários que não acessam o site também recebam um e-mail. O texto padrão da MP é:

Sua solicitação para entrar em @group_name foi aceita e você agora é um membro.

Como em todo texto no Discourse, isso pode ser personalizado pelos administradores do site conforme necessário.

Suporte ao PostgreSQL 12

Nossa imagem base foi atualizada para suportar o PostgreSQL 12. O PostgreSQL 12 traz muitas melhorias que serão automaticamente aproveitadas pelo Discourse. Para atualizar seu site para o PostgreSQL 12, serão necessárias duas reconstruções consecutivas. Para mais detalhes, incluindo informações sobre espaço em disco necessário, atualização de instalações de dois contêineres e atualizações manuais, veja PostgreSQL 12 update.

Lançamento do Discourse 2.5 no final do próximo mês - Fim do suporte ao IE 11

O suporte ao Internet Explorer 11 terminará em breve. Planejamos lançar o Discourse 2.5 ainda este mês, permitindo que sites com usuários ainda presos ao IE11 tenham uma versão completa para fazer a transição. O Discourse 2.6.beta1 e futuras versões não suportarão o IE11.

35 curtidas

Ainda mais!

Mas espere, há mais! Fazemos o nosso melhor para destacar novos recursos e mudanças para você, mas sempre há muitas alterações para detalhar. Para uma lista completa de novos recursos, correções de bugs, melhorias de UX e muito mais, certifique-se de revisar os Recursos e Correções Adicionais listados abaixo.

Atualizações de Segurança

Esta versão beta inclui 4 correções de segurança para problemas relatados pela nossa comunidade e pelo HackerOne.

  • Re-adiciona commit acidentalmente revertido:
  • Garante que embed_url contenha URI http(s) válida
  • Execução de ERB em Estilo de E-mail personalizado
  • Atualiza o jquery para a versão 3.5.0

Melhorias nos Plugins

Muitos Plugins

  • Adiciona rubocop-discourse
  • Correções de bugs
    • Corrigimos inúmeros bugs em muitos dos nossos plugins

Encrypt

  • Remove instruções de resposta por e-mail das notificações de MP criptografadas — a resposta não é suportada

Policy

  • As notificações de lembrete de política agora são de alta prioridade — usam o ícone de notificação verde em vez do azul

Font Awesome Pro

Integração de Chat

  • Adiciona o GroupMe como um provedor de chat suportado

Knowledge Explorer

  • Exibe se um tópico está fechado em não listados

Affiliate

  • Adiciona suporte para URLs de busca

Data Explorer

  • Adiciona consultas adicionais

Assign

  • As notificações de atribuição agora são de alta prioridade — usam o ícone de notificação verde em vez do azul
  • Exibe o avatar atribuído no botão e no menu suspenso

Subscriptions

  • Usa modelos para armazenar dados
    • Isso permite que o plugin mostre apenas informações de assinatura geradas no Discourse. O armazenamento de dados de assinatura é limitado aos identificadores externos gerados pelo Stripe, para que possamos interagir com a API.

Zoom

  • Adiciona opção de usar URL de participação em vez do SDK
  • Adiciona capacidade de atualizar título/data de entradas de webinars passados

Voting

  • Move votos arquivados ao mesclar tópicos

Code Review

  • Adiciona opção para silenciar por padrão novas categorias criadas pelo plugin
  • Adiciona opção para definir uma categoria pai para novas categorias criadas pelo plugin

Discourse Hub App (Android e iOS)

  • Adiciona suporte para novas notificações de alta prioridade (ou seja, favoritos com lembretes)
  • Melhora a acessibilidade dos botões
  • Corrige um problema com tela em branco em alguns casos raros ao retornar ao aplicativo do plano de fundo

Recursos e Correções Adicionais

Clique para expandir

Novos Recursos

  • Adiciona configuração para desativar a instalação automática de regras CORS em buckets S3
  • Links permanentes para tags
  • Configuração de categoria para filtro de lista padrão.
  • Atualiza o resumo do tópico quando o OP é rebaked
  • Adiciona configuração de site para comprimento máximo do resumo do tópico
  • Adiciona opção de cookie ‘None’ para o mesmo site para possibilitar sistemas entre domínios
  • Expõe Composer.serializeToTopic na API de plugin do lado do cliente.
  • Estende a duração permitida para download
  • Adiciona endpoint para ícones SVG individuais
  • Adiciona dados estruturados para seguir as diretrizes do Google
  • Introduz uma chave de substituição apenas para equipe para discourse-presence.
  • Adiciona cabeçalho noindex às páginas de tags
  • Permite autenticação por parâmetro para UserApiKeys
  • Permite que plugins registrem um callback para ignorar DraftSequence.
  • URL canônica padrão
  • Passa instância de revisor para o DiscourseEvent post_edited.
  • Adiciona cabeçalho noindex a emblemas, grupos e páginas /my
  • Permite que o Google indexe páginas para que possa removê-las
  • Adiciona cabeçalho no_index se os robôs estiverem desativados
  • Filtra configurações por plugin
  • Aperta as regras de limitação de taxa para esqueci minha senha
  • Exclui categorias silenciadas da lista de tópicos “top”.
  • Opcionalmente exclui o favorito quando o lembrete é enviado
  • Inclui a posição da categoria ao exportar categorias
  • Onebox de vídeo do Reddit
  • Onebox de vídeo do Facebook
  • Nokogumbo

Correções de Bugs

  • Melhora o script de redimensionamento de imagem
  • Retorna falso se a URL de upload for um link mailto inválido
  • Revisão editorial para o aviso de tópico dominante
  • Bug de concorrência ao criar miniaturas de tópicos
  • Não responde com erro 500 se o domínio for inválido ao adicionar domínio de associação automática
  • Não permite tag com nome ‘none’
  • Proíbe adequadamente usuários não humanos do sistema de rascunhos
  • Inclui lazyYT-container no HTML do post cozido
  • A documentação estava usando a função incorreta
  • Estilos de E-mail foram avaliados fora de ordem
  • Ao criar novo MP, nome de usuário/grupo deve ser insensível a maiúsculas/minúsculas
  • Não há necessidade de converter para minúsculas pela segunda vez
  • Ignora trabalho único para grupos com URL de flair inválida.
  • Não volta para a coluna flair_url
  • Mantém título do compositor e resposta ao alternar para MP
  • A destruição de um usuário falhou quando tinha título
  • Cartão de grupo não exibido se o usuário não puder ver seus membros.
  • Chama o método getURL explicitamente para evitar substituição de contexto this.
  • Alinhamento duplo de botão no mobile
  • Melhor alinhamento de botões de rodapé de tópico entre navegadores
  • Não criamos um objeto Post se o post em fila for rejeitado. Precisamos contar os itens de revisão diretamente.
  • Recarregamento ao vivo de CSS em desenvolvimento
  • Remove a chave estrangeira do post de controle de acesso dos uploads
  • A entrada de tag diz que as tags são opcionais quando são obrigatórias
  • Permite que o client_id do app do GitHub seja usado para configuração OAuth
  • Garante que o seletor de categoria seja insensível a maiúsculas/minúsculas
  • Adiciona tags ausentes ao cabeçalho da página publicada
  • O concededor de emblema estava desativado por padrão.
  • O Sidekiq está usando _forim_session
  • Mostra contadores de equipe se a contagem de posts rejeitados for o único valor a mostrar
  • As solicitações não estavam sendo registradas corretamente
  • O caminho deve ser addon e não app
  • Permite que a descontinuação funcione com o Ember CLI
  • Select-kit estava no lugar errado
  • Atualiza default_template.html
  • guidFor não faz parte de Ember.Object
  • Não parametriza tag_id
  • Não explode ao tentar analisar URLs inválidas ou não ASCII
  • Emite web hooks para bandeiras
  • Não define um valor padrão para web hooks sem eventos
  • Migrações não devem falhar quando o banco de dados está parcialmente migrado
  • Altera o discobot para puxar o avatar do gravatar.
  • Remove todos os dados associados na exclusão de usuário
  • O S3 store has_been_uploaded? não estava levando em conta o caminho do bucket S3
  • A restauração de backups poderia falhar para dumps de banco de dados > 8GiB
  • Verifica backtrace e backtrace_locations antes de tentar imprimir um erro
  • A descrição para a categoria ‘uncategorized’ estava em branco
  • Mostra uma mensagem útil quando iniciar um plugin falha sem um backtrace
  • GroupArchivedMessage pertence ao Grupo, não ao Usuário
  • Aplica flex em topic-footer-main-buttons
  • Junta migração de favoritos em usuários para evitar registros de usuário ausentes
  • Randomiza o nome do arquivo quando criado a partir de fixtures
  • Usa a pasta /tmp/pid para manter arquivos de fixture
  • Atualiza a versão do rack de 2.0.8 para 2.2.2
  • A restauração de backup não limpou as substituições de tradução em cache
  • Reverter múltiplas substituições de tradução não limpou o cache
  • Melhora e corrige uma regressão com o seletor de categoria
  • Carregamento de date-picker mais resiliente/consistente
  • Garante que nenhum download de imagem ocorra durante a serialização de miniaturas de tópicos
  • Permite remover um temporizador de tópico com delete_replies como tipo
  • Garante que hide seja chamado quando o cartão é destruído
  • Não remove palavras de parada ao usar o locale inglês
  • Extrai reset_last_seen_cache! em user_spec
  • Alternar ação do compositor não atualiza o conteúdo das ações do compositor
  • O componente ainda estava sendo usado pelo data explorer
  • Inclui ativos CSS do plugin ao pré-visualizar temas
  • Exibe um título no cabeçalho sk se nenhum nome selecionado
  • Correto aumento da versão da API do plugin.
  • Usa URLs do CDN para miniaturas de tópicos
  • Permite migrações de post usando #change para realizar migração insegura
  • Sempre retorna 0 para DraftSequence atual de usuário não humano.
  • A emissão de WebAPK estava quebrada devido aos ícones de atalho
  • Falha aleatória de user_spec
  • Solução alternativa para bug do servidor WebAPK com imagens sem tamanhos
  • Não calcula rascunho para bots na rota de índice de categorias
  • Aplica citação de código sem realce de sintaxe
  • Usa ícones apropriados para o menu de atalho do App
  • Executa testes de cookie apenas após o login
  • Permite que miniaturas lazy-yt sejam buscadas por pull_hotlinked_images
  • Excluindo migração antiga
  • Não calcula rascunho para (ro)bots :robot: na lista de tópicos
  • Erro de e-mail específico para respostas a e-mails de resumo
  • Detecta Wayback Machine usando user agent
  • Carrega locale primeiro no aplicativo de assistente
  • Atualiza mini racer para dumps de heap corretos
  • Nunca salva rascunho enquanto está salvando
  • Não publica presença de digitação se o compositor não estiver aberto.
  • Impede que o Safari role ao fechar o compositor
  • Impede que SvgSprite.bundle consulte o ThemeField duas vezes
  • A presença do compositor mostra o usuário como editando ao responder.
  • Limita a função de digitação em discourse-presence.
  • Altera a URL /bookmarks de volta para a lista de tópicos e adiciona avatares de postadores de favoritos
  • Lida com provedor ausente retornando URL sso
  • Previne conflitos de nome de coluna no código reviewable
  • Garante que a pré-visualização esteja calculando corretamente o fuso horário para o usuário atual
  • Adiciona tipo aos ícones do menu de atalho
  • Não lança uma exceção se um TopicLink não puder ser criado
  • Adiciona rotas rss ausentes à whitelist de parâmetros da API
  • Mostra botão de Configurações se o plugin tiver configurações
  • Salvar rascunhos incondicionalmente aumenta a sequência
  • Remove barras diagonais desnecessárias na regex
  • Adiciona tabindex=-1 em links de post tabLoc
  • Melhora a acessibilidade da navegação de rodapé no mobile
  • Define um título para o botão de notificações
  • Múltiplas melhorias do schema.org
  • O título deve tentar fazer fallback para label antes de name
  • Lida com um tópico excluído na geração de miniatura
  • Mostra nome da categoria na pré-visualização de emblema na edição
  • Impede a renderização de topic-category se vazio
  • Para de limpar título por engano
  • Padrão para título em branco na abertura
  • Resolve problemas com a próxima segunda-feira para favoritos não funcionando em certos locales
  • CurrentUser agora deve ser passado para resolveTimezone e problemas de hora local do cartão de usuário
  • ESC para descartar compositor de tópico de rascunho vazio
  • Entrada do Modal de Favoritos
  • Suporta transpilação de js em plugins com uma pasta de admin raiz
  • Alguns ajustes para a UI da tabela
  • Não dispara o evento user_updated para usuários de bot.
  • Remove URI.escape descontinuado
  • Não permite opções nulas para o gerenciador de favoritos
  • Migração para definir coluna NOT NULL para delete_when_reminder_sent em favoritos
  • Classe CSS incorreta
  • Parênteses estavam errados, resultando em uma expressão sempre verdadeira
  • preload-store foi removido
  • Melhora o posicionamento de sk no mobile quando dentro de um modal
  • Mostra o botão Favorito para tópicos de MP
  • Melhora a lógica de cálculo da linha do tempo do tópico
  • Corrige nome de usuário de notificação de edição para PMs
  • Usar o default_locale em fallbacks de locale causou problemas
  • Torna can_invite_to_forum robusto contra interferência de plugin
  • Exibe data de fechamento da enquete em hora local
  • Preload-store foi movido
  • A data final de intervalos na pré-visualização html estava incorreta
  • Altera o cálculo total de notificações não lidas no e-mail de resumo do usuário
  • O Discobot não foi criado com nosso avatar personalizado.
  • Preserva blocos de código ao citar
  • Testes instáveis. Devido às transições de CSS, a opacidade pode não ser 0 ainda.
  • Corrige o envolvimento de botões com botões maiores
  • Evita usar uma tabela temporária na migração de banco de dados de URL de imagem
  • Resolve problemas de validação do Schema.org
  • Aplica mesmoWidth a partir de largura de tela de 450px
  • Pré-seleciona Mais Tarde Hoje na edição de favorito se o horário for o mesmo
  • O fallback do PostgreSQL estava quebrado devido ao Rails mascarando a exceção
  • Melhora o estilo do e-mail de resumo no Outlook 2016
  • Reverte para usar um observador para suportar o carregamento de mais notificações

Mudanças de UX

  • Remove pré-visualização de tema ao vivo em favor de atualização
  • Nome de usuário em vez de username para título do link de perfil
  • Adiciona título para link de perfil de usuário
  • Estilos de banner/alerta mobile mais consistentes, limpeza de css
  • Move editFirstPost em Pms taggáveis no menu suspenso no mobile
  • Remove texto dos botões de favorito e compartilhar de MP
  • Renomeia “Editar Mensagem” para “Editar”
  • Remove negrito do texto do emblema de categoria
  • Melhora o comportamento de carregamento do botão de notificações do tópico
  • Adiciona feedback visual ao alterar o nível de notificações do tópico
  • Remove a seta do botão de notificações.
  • Permite que URLs de mídia segura sejam armazenadas em cache por um curto período de tempo
  • Mostra a seta apenas nos caixas de seleção de menu suspenso dos botões de rodapé do tópico
  • Permite que dropdown-select-box exiba uma seta
  • Busca miniaturas do YouTube de maior resolução onde disponíveis
  • Foca no nome da categoria ao editar categoria
  • Adiciona texto copiado ao clicar no botão copiar
  • Melhor ícone de ação do compositor ao criar novo tópico.
  • Adiciona símbolo no relatório TL3 se a contagem de respostas do tópico estiver limitada
  • Não usa imagens onebox pequenas como imagens de post/tópico
  • Limita alterações de teclado modal do iOS ao compositor
  • Introduz ações do compositor ao editar um post.
  • Não desativa o botão “criar conta” e exibe mensagem de erro para campos obrigatórios.
  • Corrige valor fixo na descrição do emblema Crazy in Love
  • Melhora a exibição da mensagem de validação de configuração de site.
  • Remove sublinhado dos elementos del e ins
  • Previne sobreposição da linha do tempo sobre os botões de rodapé do tópico
  • Melhora o alinhamento e a consistência do botão de fechar de banner e alerta
  • Corrige o posicionamento do modal quando o teclado do iOS está visível
  • Ajusta o menu de administrador para se encaixar melhor em visualizações curtas (horizontais)
  • Remove o preenchimento superior da descrição do onebox do reddit
  • Remove negrito para desvalorizar nomes de categorias em tópicos visitados
  • Corrige o alinhamento de tempo nas páginas de atividade do usuário
  • Adiciona propriedade prefixada para que o Firefox também obtenha abas de 4 espaços no código
  • Tenta ter um melhor uso do espaço disponível com sk
  • Ajustes na remoção de favoritos
  • Melhora a UI do segundo fator

Desempenho

  • Evita percorrer o DOM em loadScript
  • Remove chaves estrangeiras de favoritos
  • Garante que executemos GC completo em contextos
  • Desmaterializa topic_reply_count
  • Evita condições de corrida ao criar links de tópico
  • Evita executar a mesma consulta duas vezes.
  • Evita acessar o banco de dados ao buscar a sequência de rascunho de usuário de bot.
  • Reduz bloqueio exclusivo ao alterar tabelas
  • Move a busca de avatar para hijack para certificado do discobot
33 curtidas