title: Why does django send_mail fails to send email with no errors?
body: <p>I want to use send_mail in django, however it doesn't send any email. Here is my settings:</p>
  
  <pre><code>EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
  EMAIL_HOST = 'smtp.gmail.com'
  EMAIL_HOST_USER = 'MY-GMAIL-USERNAME@gmail.com'
  EMAIL_HOST_PASSWORD = 'MY-GMAIL-PASSWORD'
  EMAIL_PORT = 465
  EMAIL_USE_TLS = False
  EMAIL_USE_SSL = True
  DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
  SERVER_EMAIL = DEFAULT_FROM_EMAIL
  </code></pre>
  
  <p>Then, I run <code>python manage.py shell</code>:</p>
  
  <pre><code>from django.conf import settings
  from django.core.mail import send_mail
  
  subject = 'Test Subject'
  message = 'Test Message'
  email_from = settings.EMAIL_HOST_USER
  recipient_list = ['MY-YAHOO-USERNAME@yahoo.com']
  send_mail(subject, message, email_from, recipient_list, fail_silently=False)
  </code></pre>
  
  <p>It doesn't send the email and it prints:</p>
  
  <pre><code>Content-Type: text/plain; charset="utf-8"
  MIME-Version: 1.0
  Content-Transfer-Encoding: 7bit
  Subject: Test Subject
  From: MY-GMAIL-USERNAME@gmail.com
  To: MY-YAHOO-USERNAME@yahoo.com
  Date: Mon, 09 Dec 2019 21:02:16 -0000
  Message-ID: &lt;157592533640.18842.5494330274157836181@thinkpad-e560&gt;
  
  Test Message
  -------------------------------------------------------------------------------
  1
  </code></pre>
  
  <p>which seems to have no errors. Why doesn't it send the email? What is wrong? Why doesn't it log any errors?</p>
  
  <p>Following <a href="https://realpython.com/python-send-email/" rel="nofollow noreferrer">this page</a>, I've tried a pure python way and it works fine:</p>
  
  <pre><code>import smtplib, ssl
  
  smtp_server = "smtp.gmail.com"
  port = 465
  sender_email = "MY-GMAIL-USERNAME@gmail.com"
  password = 'MY-GMAIL-PASSWORD'
  receiver_email = 'MY-YAHOO-USERNAME@yahoo.com'
  context = ssl.create_default_context()
  server = smtplib.SMTP_SSL("smtp.gmail.com", port, context=context)
  server.login(sender_email, password)
  server.sendmail(sender_email, receiver_email, 'Test Message')
  </code></pre>
  
  <p>As I mentioned, this pure python way works fine! I'm confused.</p>
  
  <p>What did I do wrong?</p>