#27333: Different behavior py2 / py3 with Django on base64 body_encoding
EmailMessage
-----------------------------+---------------------------
     Reporter:  aRkadeFR     |      Owner:  nobody
         Type:  Bug          |     Status:  new
    Component:  Core (Mail)  |    Version:  1.8
     Severity:  Normal       |   Keywords:  email, base64
 Triage Stage:  Unreviewed   |  Has patch:  0
Easy pickings:  0            |      UI/UX:  0
-----------------------------+---------------------------
 I have a different behavior on body encoding on python 2.7.12 and python
 3.5.2 with Django 1.8.15:

 {{{
 # -*- coding: utf-8 -*-
 from __future__ import unicode_literals, absolute_import

 from django.conf import settings
 settings.configure(DATABASES={}, SECRET_KEY='not empty')

 from django.core.mail import EmailMessage


 email = EmailMessage('Chère chère', 'Super \' fort très fort.',
                      '[email protected]', ['[email protected]'])
 print(email.message().as_string())
 }}}

 On python 3, the body will be encoded as base64, but not on python 2.

 I've found couple of tickets relating to the same subject (#3472, and
 #11212 among others), and I've found in the Django code 1.8.15 in the file
 `django/core/mail/message.py`:
 {{{
 # Don't BASE64-encode UTF-8 messages so that we avoid unwanted attention
 from
 # some spam filters.
 utf8_charset = Charset.Charset('utf-8')
 utf8_charset.body_encoding = None  # Python defaults to BASE64
 }}}

 I would think from the code and the tickets that Django tries to never
 base64 the body of EmailMessage.

 Is it the desired behavior?

--
Ticket URL: <https://code.djangoproject.com/ticket/27333>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/051.4bb9933651e4c4dca8ac8de7de699908%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to