Discourse não carrega em navegadores legados

Se não me engano, isso era essencial para alguns navegadores (IE < 10?) porque é impossível acessar tags <noscript> via JavaScript após fazer a detecção de recursos. Acho que o @dan trabalhou nesse problema há alguns anos?

Note que existem dois ‘modos’ de fallback no momento:

  1. Servir a visualização do rastreador. Nenhum JS é necessário. Isso é controlado por browser_update_user_agents.

  2. Servir o aplicativo completo, detectar recursos e fazer fallback movendo o conteúdo <noscript> para <body>. Isso não é baseado no agente do usuário.

O problema aqui é que (2) não está funcionando no celular, porque o servidor não está renderizando nenhum conteúdo <noscript>. Precisamos corrigir isso, sem quebrar (1) para navegadores mega-antigos.

7 curtidas

Isso está correto. O IE antigo não permite a leitura do conteúdo de <noscript>.

5 curtidas

Sugiro que atualizemos as etapas para:

Como você estava pensando em implementar (2) @sam? Manter uma lista de correspondências de user agents ‘modernos’ no core? E então nós os atualizamos como parte do ciclo de lançamento estável?

5 curtidas

Sim, algo assim, para ser honesto, esta semana não parece muito promissora para mim, não consigo dedicar muito tempo à programação

Provavelmente vou passar este trabalho adiante, seu plano de ação alterado soa ótimo

2 curtidas

Por favor, desculpe minha falta de conhecimento… Tentei procurar a resposta, mas não encontrei nada…

Com uma solicitação de pull como a acima, quanto tempo até que ela seja “mesclada”?

Significando que entrarei no meu painel de administração do Discourse, ele solicitará uma atualização e o acima será implementado.

Parece que há alguns comentários para resolver, mas provavelmente será mesclado nas próximas 24 horas. Atualizaremos aqui quando isso acontecer. Em seguida, assumindo que você está em tests-passed, poderá visitar /admin/upgrade em seu fórum e aplicar a alteração.

5 curtidas

Não tenho certeza do que é isso, mas acho que estou :woozy_face:

Incrível e obrigado @david

2 curtidas

Interessantemente, em um iPhone 5 no BrowserStack, fazendo proxy para o local, estou vendo uma página em branco mesmo depois de mexer com include_crawler_content? e defini-lo como true.

Pode haver algumas coisas que o Ember CLI está fazendo localmente para quebrar este teste.

Certamente parece quebrado como projetado no iOS 7 em produção. (sem conteúdo porque não o enviamos)

Será razoavelmente complicado testar a correção, mas acho que posso simular algumas coisas localmente.


Pensando alto sobre

O que é um navegador móvel moderno?

  • iOS 14+
  • Android + Chrome 88+
  • Android + Firefox 85+

Isso deve cobrir cerca de 95% de todo o nosso tráfego móvel, então a economia de carga útil é significativa e o risco extremamente baixo.

@Falco, estou esquecendo algum navegador? O Firefox é como uma gota no oceano para o Android, a vasta maioria está simplesmente no Chrome, ao que parece.

5 curtidas

3 posts foram divididos em um novo tópico: Suporte para ‘Adblock Browser’

Isso parece ter quebrado novamente ontem. Estou recebendo uma página em branco sem mensagem de erro pelo meu navegador e o aplicativo nos mesmos dois de três fóruns

1 curtida

No meta (neste site) também?

Sim, meta.discourse.org retorna uma página em branco, assim como community.jenkins.io, o mesmo que a reclamação original. Posso confirmar que começou em algum momento na quarta-feira.

3 curtidas

Opa, vamos resolver isso rapidamente, obrigado por levantar a questão.

3 curtidas

Este foi um efeito colateral não intencional da remoção do IE11 de nossos alvos de build de JS. Deve ser corrigido por:\n\nhttps://github.com/discourse/discourse/pull/16745\n\nIrei mesclar e implantar isso o mais rápido possível

8 curtidas

Isso agora foi implantado no Meta, e a maioria dos nossos clientes hospedados (incluindo http://community.jenkins.io/). Os sites agora devem carregar novamente no iOS 12. Obrigado por relatar o problema, @wake e @Ian_W!

8 curtidas

Ótimas notícias por vê-lo funcionando novamente. Agradeço todos os seus esforços.

Apenas uma observação estranha agora. Eu digito a URL, pressiono Enter e a barra de progresso completa lentamente. Então, inicialmente, acabo com uma página em branco, mas cerca de 6-7 segundos depois, o conteúdo aparece! Isso costumava levar apenas cerca de um segundo (então não era realmente perceptível antes). Estranho.

Este é um Firefox.

Este tópico foi automaticamente fechado após 2 dias. Novas respostas não são mais permitidas.