Recientemente actualicé mi Discourse, específicamente de 3.3.0beta1+645 a 3.3.0beta1+699 (mostrado como 3.3.0beta2-dev en el panel de administración de Discourse).
Sin embargo, después de la actualización, descubrí que Safari en iOS ya no puede abrir el foro de Discourse con éxito. Específicamente, se queda atascado en una página con cinco círculos parpadeantes que dicen “loading…” y no puede acceder al sitio.
Estoy seguro de que no es un problema de red de mi parte porque Chrome en Windows en la misma red local puede cargarlo normalmente.
Además, confío en que no es un problema con mi sitio de Discourse porque mi iPhone tampoco puede acceder a este sitio (meta.discourse.org), quedándose atascado de manera similar en esta página de carga.
Intenté activar y desactivar casi todos los interruptores en la configuración de iOS - Safari - Avanzado - Funciones experimentales (excepto el cargador de red experimental, ya que impide por completo que Discourse se abra. Algunos interruptores con “deshabilitar” o “bloquear” en sus nombres tampoco se activaron), pero el sitio web todavía no se puede acceder correctamente.
Sospecho que algunas funciones introducidas entre +645 y +699 no son compatibles con Safari en iOS 15.8.
El user-agent para iPhone es el siguiente:
Mozilla/5.0 (iPhone; CPU iPhone OS 15_8 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/124.0.6367.111 Mobile/15E148 Safari/604.1
Recuerdo que se mencionó en la página de compatibilidad de Discourse que Discourse será compatible con Safari en iOS 15.7. ¿Sigue planeando Discourse cumplir con este acuerdo? ¿O ya no se admitirá iOS 15?
Esta es también la situación que acabamos de experimentar en Chrome Versión 124.0.6367.119 en macOS Sonoma 14.4.
Veo los siguientes errores en la consola. Quizás sea un problema con la forma en que el JS intenta comportarse. Avísame si necesitas más información.
Uncaught ReferenceError: dt7948 is not defined
at 74476 (load-more.js:7:38)
at __webpack_require__ (bootstrap:19:1)
at 30920 (topic-list-item.js:389:3)
at __webpack_require__ (bootstrap:19:1)
at s.callback (discourse.js:976:50)
at s.exports (loader.js:106:1)
at requireModule (loader.js:27:1)
at header_1.js:2:28
Uncaught (in promise) ReferenceError: Cannot access 'components_topic_list' before initialization
at Module.default (topic-list-item.js:389:3)
at Resolver._extractDefaultExport (index.js:541:25)
at Resolver.resolveOther (index.js:163:32)
at Resolver.resolve (index.js:199:23)
at index.js:742:1
at f.resolve (index.js:523:1)
at f.resolve (index.js:525:1)
at o (index.js:237:1)
at i.factoryFor (index.js:184:1)
at PluginApi._resolveClass (plugin-api.js:162:39)
at PluginApi.modifyClass (plugin-api.js:189:29)
at disable-sort.js:12:1
at withPluginApi (plugin-api.js:2612:16)
at Object.initialize (disable-sort.js:11:1)
at initializer.initialize (app.js:209:28)
at index.js:145:1
at e.each (dag-map.js:191:1)
at e.walk (dag-map.js:120:1)
at e.each (dag-map.js:66:1)
at e.topsort (dag-map.js:72:1)
at e._runInitializer (index.js:158:1)
at e.runInstanceInitializers (index.js:143:1)
at u._bootSync (instance.js:86:1)
at e.didBecomeReady (index.js:602:1)
at invoke (backburner.js.js:280:1)
at h.flush (backburner.js.js:197:1)
at p.flush (backburner.js.js:358:1)
at B._end (backburner.js.js:798:1)
at B._boundAutorunEnd (backburner.js.js:523:1)
@tumbleweed gracias por el informe. Curiosamente, parece que empieza a funcionar tan pronto como se abren las herramientas de desarrollo del navegador. No eliminamos intencionadamente el soporte para iOS 15, así que lo solucionaremos lo antes posible