Las notificaciones por correo electrónico fallan si existen encabezados duplicados

(Descargo de responsabilidad: no soy programador de ruby)

Creo que este es un comportamiento particularmente desagradable en la biblioteca de correo que está utilizando Discourse. Aquí está la función header_value:

Por lo que puedo decir, @message.header[name] está llamando a este método:

https://www.rubydoc.info/github/mikel/mail/Mail%2FHeader:[]

Según RFC, muchos campos pueden aparecer más de una vez, devolveremos una cadena del valor si solo hay un encabezado, o si hay más de un encabezado coincidente, devolveremos una matriz de valores en el orden en que aparecen en el encabezado, ordenados de arriba a abajo.

Discourse establece automáticamente un encabezado Precedence, por lo que, dado que usted también está agregando uno a través de la configuración email_custom_headers, ahora hay dos encabezados Precedence, y @message.header["Precedence"] está devolviendo una matriz en lugar de una cadena.

Creo que este error se activará cada vez que email_custom_headers contenga un encabezado que ya existe en el objeto del mensaje.

5 Me gusta