Pantalla en blanco para el tema en la web móvil: TypeError en la consola de administración

iOS vs13.3.1
Mobile Chrome v80.0.3987.95

Visité un tema en nuestro foro y solo se cargó la cabecera (en un caso, dos veces; ver capturas de pantalla después de la salida del error a continuación), lo que efectivamente resultó en una página en blanco. En ese momento, no había iniciado sesión. Intenté actualizar, abrir una nueva página y recargar, así como cerrar la aplicación y volver a cargar, pero ninguno de estos pasos resolvió el problema. Es muy difícil diagnosticarlo desde un dispositivo móvil.

No pude reproducir el problema en mi escritorio.

Gracias a mis registros de errores de administrador, pude correlacionar dos errores ocurridos en el mismo momento:


# PRIMER ERROR 8:09 p. m.

TypeError: undefined is not a function (near '...l.replace...') Url: https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js Line: 1 Col

https://community.redwoodjs.com/assets/pretty-text-bundle-b028b1d5eed228f191f4f25757a12c99d1209f6a9ce91f98c6d378dd3589df7d.js:1:88120
https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:1218167
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:112413
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:419530
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:409113
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:422544
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:422239
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:415154
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:449567
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:449160
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:449067
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:474873
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:142193
V@https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:187610
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:145561
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:145879
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:145269
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:144382
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:144109
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:490070
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:489056
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:491075
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:496504
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:493039
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:497040
e@https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:29468
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:29788

# SEGUNDO ERROR 8:51 p. m.

TypeError: undefined is not an object (evaluating 'e.position().top') Url: https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js Line:

l@https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:208270
t@https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:208295
scrolled@https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:1095126
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:490059
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:489056
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:491075
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:496504
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:493039
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:497862
[código nativo]

Por favor, avíseme si hay alguna información adicional que pueda proporcionar o pasos para ayudar a evaluar el problema.

Por ahora, lo traslado a Support hasta que podamos encontrar pasos para reproducirlo en otros sitios. Si es reproducible aquí o en try.discourse.org, entonces se puede tratar como un bug. He intentado navegar por el tema en cuestión en tu sitio desde mi móvil y no pude reproducir la página en blanco en absoluto.

La primera pregunta es siempre: ¿funciona en modo seguro? RedwoodJS Community

Si es así, es probable que se trate de una personalización del sitio, aunque si fuera así, habría esperado haberlo visto también.

1 me gusta

Gracias @Stephen. Intenté reproducir el error tanto en modo seguro como fuera de él, pero lamentablemente no lo logré. Sospecho que solo ocurre cuando un usuario no ha iniciado sesión. Quizás, al iniciar sesión, se restableció la caché, etc., y por eso “solucioné” el error.

Se me olvidó mencionar cómo ocurrió el error en primer lugar:

  1. En la aplicación de Slack, usamos la integración con Discourse. Hice clic en un enlace de tema desde el bot de integración, que se abre en mi navegador Chrome en el móvil.
  2. No había iniciado sesión en mi navegador Chrome. Recibí la página en blanco mencionada anteriormente.

Tengo la aplicación Discourse Hub en mi teléfono. Por lo general, la abro directamente para acceder al foro y a los temas.

Hemos recibido informes crecientes de este problema por parte de usuarios que visitan el sitio como invitados en diversos temas. Creo que los registros de errores del administrador están relacionados con alguna variación de TypeError: X no es una función para el activo pretty-text-bundle o ember_jquery (igual que el error del mensaje original).

→ Acabo de actualizar a 2.5.0.beta3 y reportaré si esto parece resolver el problema.

Reproducción

No pude reproducir este error usando el Modo Seguro. Si activaba el Modo Seguro, el error desaparecía. Pero luego, si “desactivaba” el Modo Seguro, tampoco pude reproducir el error nuevamente.

Este tema estaba reproduciendo el error durante un tiempo mediante acceso de invitado en un navegador web:
:rocket: RWJS v0.6.0 ya está disponible

Un usuario reportó la salida de https://community.redwoodjs.com/logs/report_js_error, que mostraba:
Rate Limited

Pude reproducir este error y el correspondiente Rate Limited en mi Mac como invitado en Safari. Sin embargo, el mismo tema se cargó correctamente en Firefox (nuevamente como invitado).

Configuración del sitio / Alojamiento

Nuestro sitio utiliza dos plugins:

Alojado en DigitalOcean con una configuración muy similar a las instrucciones de instalación proporcionadas.

¿Probablemente algo en tus temas si desaparece en modo seguro?

Es posible, pero bastante genérico por ahí…

Seguiré intentándolo. Es que cada vez que creo tener un ejemplo reproducible, se resuelve.

¿Podría ser un problema de caché? ¿Cómo podría verificarlo?

Si no puedes reproducirlo aquí, es 100% algo en tu configuración, de una forma u otra.

Entendido. Y de hecho lo experimenté aquí en meta.discourse.org cuando configuré nuestro sitio en marzo. Estaba buscando en Google información sobre la configuración de la integración con Slack, hice clic en un enlace a un tema y terminé con una pantalla en su mayor parte en blanco con el encabezado del título repetido varias veces (véase la segunda captura de pantalla en mi publicación original aquí). En ese momento, lo solucioné usando la versión en caché de la búsqueda de Google y desde entonces no lo he vuelto a experimentar. Además, pude visitar otros temas y la página de inicio sin problemas.

Qué extraño.

Seguiré investigando esto y definitivamente les informaré. Con un poco de suerte, quizás se haya resuelto de alguna manera con la actualización beta3. :crossed_fingers:

Por último, estamos realmente, realmente contentos con Discourse y con lo rápido que nuestra comunidad ha ido tomando forma en solo 6 semanas. Me siento inspirado y solo puedo soñar que algún día la gente diga lo mismo de RedwoodJS una vez que tenga tiempo de madurar un poco.

Gracias.

2 Me gusta

¿Tienes algún proxy o alguna configuración inusual?

Actualización
La actualización a Beta3 parece haber eliminado el problema para la mayoría de los usuarios que reportaron incidencias. ¡Esperemos que así sea!

Re: Proxies/Configuración
Uso Cloudflare 1.1.1.1 para el DNS de mi red, pero nada personalizado en lo demás.

Me preguntaba si podría estar relacionado con un bloqueador de anuncios; por ejemplo, algunas personas reportaron que funcionaba bien en el modo incógnito de Chrome pero no fuera de él.

Sigo dándole vueltas a la cabeza…

1 me gusta