Las notificaciones por correo asignan incorrectamente los archivos adjuntos a multipart/alternative

Al enviar notificaciones por correo electrónico con archivos adjuntos, la estructura MIME multipart resultante está malformada. Los archivos adjuntos se incluyen como una parte “alternative” en lugar de como una parte “mixed”. Como resultado, algunos clientes de correo, como Thunderbird, no muestran estos archivos adjuntos porque se interpretan simplemente como un formato alternativo del contenido del correo, similar a texto frente a HTML.

[La siguiente cita proviene de un informe de error esencialmente idéntico contra Mailer, que también depende del módulo Mail.]

lo que espero que sea la estructura del correo electrónico:

multipart/mixed
  multipart/alternative
    text/plain
    text/html
  application/pdf (es decir, en caso de adjunto PDF)

lo que estoy recibiendo:

multipart/alternative
  text/plain
  text/html
  application/pdf (es decir, en caso de adjunto PDF)

el efecto práctico:
Thunderbird muestra el cuerpo de texto correcto, según la preferencia del usuario (txt o html), pero no muestra el archivo adjunto como un archivo adjunto (sin embargo, está en el código fuente del correo como un bloque codificado en base64). El correo de iOS muestra un cuerpo de correo vacío y solo el archivo PDF adjunto, ya que es la última entrada y, aparentemente, el cliente de correo solo renderiza esto.

Hay varios informes de error posiblemente relacionados contra el módulo Mail del que depende Discourse. Algunos de estos informes están cerrados con la implicación no declarada de que proporcionar las partes de una manera específica resuelve el problema. No estoy seguro de cuál es el caso aquí, pero varios de esos informes están vinculados desde el informe que cité y enlazé anteriormente.

9 Me gusta

¡Gracias por reportar esto y por proporcionar una descripción clara del problema!

Esto ya debería estar corregido a partir de FIX: Notification emails with attachments are incorrectly structured · discourse/discourse@59578df · GitHub.

7 Me gusta

Este tema se cerró automáticamente después de 4 días. Ya no se permiten nuevas respuestas.