No se pueden subir imágenes con Safari

Hace aproximadamente un mes, no he podido subir ninguna imagen en Discourse. Obtengo la información de progreso típica debajo del panel de composición: 20%, 40%, 100% subido. Pero una vez que eso termina, el panel de composición muestra algo en esta línea (lo ingresé como texto preformateado para que todo se mostrara):

[Subiendo: Screen Shot 2022-06-14 at 10.58.16 AM.png…]()

y el panel de mensaje final para lo mismo mostrará:

Subiendo: Screen Shot 2022-06-14 at 10.58.16 AM.png…

Pero en ese momento, la actividad de subida aún no está en curso. Obviamente, el contenido que se supone que está entre paréntesis no se está subiendo. Esperar horas no cambia nada.

Esto ocurre en un Mac con macOS v10.15.7 y Safari Versión 15.5 (15613.2.7.1.9, 15613). Cuando se accede a Discourse en la misma máquina a través de Firefox, todo funciona normalmente.

1 me gusta

¿Aparece algo en la consola de las Herramientas para desarrolladores del navegador cuando esto sucede?

1 me gusta

¿Hay alguna extensión habilitada en Safari? ¿Puedes deshabilitarlas temporalmente?

Soy novato en ese sentido. Por favor, indíqueme dónde buscar. En mi versión de Safari, solo veo un encabezado de menú Desarrollar en la barra superior.

No. Esta es solo la instalación estándar.

¡Sí, este sería! ¿Creo que este video aleatorio en YouTube cubre cómo llegar a la consola? https://www.youtube.com/watch?v=kRRK3hZGw7I

2 Me gusta

Lo siento, pero ese video fue tan mal producido que no pude seguirlo. Sin embargo, creo que encontré la “Consola”. Si intento subir una imagen JPG llamada Joss-Main al mensaje que estoy componiendo actualmente en Safari, este es el resultado:

Subiendo: Joss-Main.jpg…

Iniciando sesión a través de Firefox y continuando con el mismo tema, puedo subir una captura de pantalla de la ventana de la Consola de Safari. Todo en la ventana de la Consola apareció después de arrastrar esa imagen al panel de composición (mientras estaba en Safari). Como puedes ver, la imagen de la captura de pantalla se sube perfectamente en Firefox:

¿Qué más puedo hacer para ayudar a resolver esto?

1 me gusta

Dado que estás utilizando un navegador muy reciente, podemos intentar reproducirlo aquí. Lo asignaremos internamente a los defensores técnicos para que podamos ver si alguien más puede reproducir el problema en Safari 15.5. Por el momento, ni siquiera puedo probarlo en BrowserStack, es tan reciente (aunque 100% compatible).

¿Puedes subir la imagen del problema aquí, o es cualquier imagen?

2 Me gusta

Son todas las imágenes que he probado. PNG, JPG, PDF…. El tipo y tamaño de archivo no importan.

2 Me gusta

Los miembros de mi comunidad tienen el mismo problema, parece que Safari es el principal problema, intentaré averiguar el problema por usted.

1 me gusta

¿Alguna novedad, @Noah?

Hemos intentado una reproducción sencilla pero desafortunadamente no hemos podido replicarla hasta ahora. Hubo otro tema similar donde el problema resultó ser algo relacionado con una extensión del navegador ClearURL, pero ¿no estoy seguro de que eso sea útil aquí? MacOS Firefox image upload error - #16 by jimkleiber

4 Me gusta

Existen diferencias clave entre mi problema y el reportado por @jimkleiber:

  • Su problema era en Firefox. Firefox funciona para mí.
  • Tenía una extensión del navegador que finalmente se identificó como el problema. Yo no tengo ninguna.
  • Vio un mensaje de error. En mi caso, Discourse se comporta como si la carga de la imagen hubiera sido exitosa.
2 Me gusta

Hola @JammyDodger, disculpa la lentitud en responder. Estoy a punto de realizar una prueba en la versión de Safari de un amigo para ver si aparece algo. @tut, ¿por curiosidad, qué dispositivo estás usando?

1 me gusta

Screen Shot 2022-07-13 at 3.15.04 PM

Una máquina que se acerca al final de su vida útil, de ahí la limitación a macOS v10.15.7.

Oh @david, me parece que está relacionado con execCommand según: [BUG] Share > Copy link broken in Safari · Issue #1716 · opensearch-project/OpenSearch-Dashboards · GitHub

Supongo que de alguna manera esta versión de Safari tiene errores con él. ¿Esta API marcada como “obsoleta” está causando todo tipo de problemas porque los navegadores tienden a romperla un poco?

No usamos execCommand al pasar de marcadores de posición de carga a URLs, así que no creo que esa sea la causa aquí. (No podemos cambiar fácilmente, porque execCommand("insertText") requiere que el área de texto tenga el foco, y las cargas pueden terminar cuando no tienes el área de texto enfocada).

Las cargas todavía usan el método set("value", ...) que hemos estado usando durante años

Técnicamente está obsoleta según los estándares web, pero todavía no hay alternativa para el comando insertText. De MDN:

La API del Portapapeles se puede usar en lugar de execCommand en muchos casos, pero execCommand sigue siendo útil en ocasiones. En particular, la API del Portapapeles no reemplaza el comando insertText, que puedes usar para reemplazar programáticamente texto en el cursor mientras preservas el búfer de deshacer (historial de edición) en elementos textarea y input de texto plano.

Dado el uso generalizado, parece increíblemente improbable que los navegadores dejen de admitir esto sin proporcionar primero una alternativa y un período de advertencia de obsolescencia.

4 Me gusta

@tut Acabo de añadir información de depuración adicional aquí en Meta para que podamos intentar averiguar qué está sucediendo. Por favor, ¿puedes intentar lo siguiente?:

  1. Abre Meta en Safari
  2. Abre la consola de desarrollador
  3. Intenta subir un archivo
  4. Haz clic en la consola de desarrollador
  5. Cmd + a para seleccionar todos los registros
  6. Haz clic derecho → guardar selección
  7. Guarda el archivo de texto en algún lugar y luego súbelo aquí (usando Firefox, supongo)
2 Me gusta

@david, aquí está mi intento de cargar una imagen JPEG llamada Joss-Main.jpg mientras estaba en Safari:

Cargando: Joss-Main.jpg…

Como era de esperar, la carga no se completó.


Ahora he cambiado a Firefox y he continuado redactando el mismo mensaje.

Console.txt (4,1 KB)

1 me gusta

Vaya, ¡esto es extraño! Safari está reemplazando los ... (tres puntos) con un carácter de elipsis . Eso luego impide nuestro intento posterior de reemplazar el marcador de posición con la URL real.

@tut ¿puedes abrir tus preferencias del sistema -\u003e Teclado -\u003e Texto y ver si tienes alguna sustitución configurada allí? Si agrego una sustitución de ... -\u003e , entonces puedo reproducir el mismo problema en Safari en mi máquina:

(el tuyo puede verse ligeramente diferente debido a la versión anterior de macOS)

Así que sí, esto parece bastante probable. Lamento haber descartado esa idea antes, @sam :sweat_smile:. Parece que Safari está aplicando sustituciones de texto a nivel del sistema operativo al texto que agregamos a través de execCommand("insertText",. Me pregunto si esto es algo nuevo en Safari 15.5, o si siempre ha sido así y simplemente no nos habíamos dado cuenta :thinking:

5 Me gusta

@david, no tengo ninguna sustitución configurada en las preferencias del teclado. Ahora que sé qué buscar, puedo confirmar que la sustitución ocurre. De hecho, puedo verlo suceder mientras escribo. Y puedo verificarlo usando la flecha hacia atrás. Cuando llego al carácter de elipsis, el cursor salta sobre los tres puntos que se ingresaron como caracteres separados.

Lo mismo ocurre en Notas, Vista previa, Mensajes y Correo, pero no en Calendario, Mapas, Fotos o (obviamente) Firefox. Por lo tanto, parece ser algo específico de la aplicación, no a nivel del sistema.

2 Me gusta