Entità HTML e caratteri di escape in alternativa email text/plain in uscita

Abbiamo recentemente configurato un’istanza sperimentale di Discourse e abbiamo notato che i post inviati agli osservatori contengono entità HTML nella versione alternativa text/plain. Mi sembra un bug.

L’istanza è qui: https://discourse.osgeo.org
Uno screenshot di una di queste email può essere visto qui: Sandro Santilli 🌍 GIS: "@pmusaraj@mstdn.ca I can tell, and that hurts! @D…" - Mapstodon.Space
L’email completa può essere letta direttamente da Discourse qui: PSC Vote: Let's move this list to discourse - #11 by Martin_Spott - SAC mailing list - OSGeo Discourse
Un’altra visualizzazione dell’email può essere letta nell’archivio Mailman, che è come è arrivata a Discourse: PSC Vote: Let's move this list to discourse

L’email ricevuta da Mailman all’abbonato è SOLO text/plain 7bit us-ascii, ma quella ricevuta tramite Discourse diventa multi-parte e ha anche una versione HTML che è ovviamente inventata poiché il poster originale non ha scritto in HTML.

1 Mi Piace

Biglietto a valle: Making sure you're not a bot!

2 Mi Piace

Il ticket upstream non ha risposta da 4 giorni, sospetto che né gli sviluppatori di Discourse né i sostenitori di Discourse si preoccupino della comunicazione mediata via email, rendendo l’unica soluzione possibile per questo problema un progetto “gratta la tua stessa puntura”.

Ci preoccupiamo della comunicazione mediata via email, è per questo che abbiamo dedicato un’enorme quantità di lavoro all’aggiunta del supporto sia per le email in entrata che in uscita in Discourse. Detto questo, è un compito tremendamente difficile tenere conto di ogni caso d’uso, poiché questi spesso sono in conflitto tra loro.

Nel tentativo di diagnosticare il tuo problema e comprendere meglio il tuo caso d’uso, ecco come ho capito che stanno andando le cose:

  • La tua istanza è configurata per ricevere email in entrata da una mailing list
  • L’utente “Martin_Spott” ha inviato un’email di tipo text/plain alla tua mailing list
  • Discourse ha elaborato l’email, trasformando il testo in markdown / html da visualizzare in Discourse
  • Hai ricevuto una copia di quell’email, perché stai monitorando quel topic / categoria su Discourse
  • Il contenuto di quell’email è corrotto

Ho capito bene?

2 Mi Piace

Beh, quello che succede all’interno di Discourse non lo so, ma quello che osservo è:

  • La nostra istanza è configurata per ricevere email in arrivo (da qualsiasi cosa)
  • trac.osgeo.org invia email text/plain all’indirizzo email in arrivo di Discourse, assumendo che vengano utilizzati font a larghezza fissa
  • Discourse fa qualcosa che non so
  • Gli utenti di Discourse che hanno scelto di ricevere notifiche via email ricevono un’email multipart contenente un’alternativa html e text/plain, con il text/plain che ha trattini escapati e entità html al suo interno

Ora, il problema sopra menzionato (le email di trac che sono malformate) sembra essere stato risolto al momento, ma non so a causa di quale evento: Making sure you're not a bot!

Le cose potrebbero essere cambiate a causa mia che ho attivato e disattivato la “Modalità Mailing List”?

1 Mi Piace

Ne dubito. È più probabile che sia l’impostazione del sito “incoming email prefer html”.

Sono contento che ora vada meglio :raised_hands:

1 Mi Piace

Ho parlato troppo presto: Making sure you're not a bot!

Suggerisci che sia meglio impostare “preferisci email in arrivo in html” su SÌ o NO?

@robe2 ha menzionato che la correzione (temporanea) era probabilmente dovuta al fatto che aveva deselezionato la casella “Category is mirror” - speriamo che questo fornisca maggiori informazioni per una correzione.

Corretto quando ho deselezionato “La categoria è uno specchio”, l’email inviata sembrava migliore e guardando i post, anche loro sembravano più puliti.

Tuttavia, ho dovuto ricontrollare la casella perché impediva il threading e causava anche il rifiuto di alcune email dal nostro tracker di ticket con l’errore di rifiuto Titolo già utilizzato.