Le notifiche email assegnano erroneamente gli allegati in multipart/alternative

Quando si inviano notifiche email con allegati, la struttura MIME multipart risultante è malformata. Gli allegati sono inclusi come parte “alternative” invece che come parte “mixed”. Di conseguenza, alcuni client di posta, come Thunderbird, non visualizzano questi allegati perché vengono interpretati semplicemente come un formato alternativo del contenuto dell’email, come nel caso di testo vs HTML.

[La seguente citazione proviene da un rapporto di bug essenzialmente identico contro Mailer che fa anche affidamento sul modulo Mail.]

ci si aspetta che l’email sia strutturata nel seguente modo:

multipart/mixed
  multipart/alternative
    text/plain
    text/html
  application/pdf (cioè nel caso di un allegato PDF)

ciò che si riceve:

multipart/alternative
  text/plain
  text/html
  application/pdf (cioè nel caso di un allegato PDF)

l’effetto pratico:
Thunderbird visualizza il corpo del testo corretto, in base alle preferenze dell’utente (testo o HTML), ma non mostra l’allegato come file allegato (è tuttavia presente nel codice sorgente dell’email come un blocco codificato in base64). Il client di posta di iOS mostra un corpo email vuoto e solo l’allegato PDF come file, poiché è l’ultima voce e apparentemente il client di posta visualizza solo questo.

Esistono alcuni rapporti di bug potenzialmente correlati contro il modulo Mail su cui si basa Discourse. Alcuni di questi rapporti sono stati chiusi con l’implicazione non dichiarata che fornire le parti in un modo specifico risolva il problema. Non sono sicuro che sia questo il caso qui, ma diversi di quei rapporti sono collegati dal rapporto che ho citato e linkato sopra.

9 Mi Piace

Grazie per aver segnalato il problema e per aver fornito una descrizione chiara!

Il problema è stato risolto con il commit FIX: Notification emails with attachments are incorrectly structured · discourse/discourse@59578df · GitHub.

7 Mi Piace

Questo argomento è stato automaticamente chiuso dopo 4 giorni. Non sono più ammesse nuove risposte.