Package: pyramid_mailer
pyramid_mailerpyramid_mailer is a package for sending email from your Pyramid application.
It is compatible with Python 2.7, 3.3, 3.4, and 3.5, as well as PyPy.This package includes:Wrapping the low-level Pythonemaillibrary with an easy-to-use
API, which includes attachments and mulipart content.Send emails immediately or to add to a maildir queue.Managing email sends inside a transaction, to prevent emails being sent
if your code raises an exception.Features to help with unit testing.pyramid_maileruses therepoze.sendmaillibrary for managing email
sending and transacton management, and borrows code (with permission) from
Zed Shaw’slamsonfor wrapping email
messages.  See theLICENSE.txtfile for more information.Linksdocumentationdevelopment versionChangelog0.15.1 (2016-12-13)Pull #83: Add the new.bindmethod to theDebugMailerand theDummyMailer. Alsopyramid_mailer.testingandpyramid_mailer.debugnow add therequest.mailerrequest attribute.0.15 (2016-12-06)Pull #49: Support ‘7bit’ and ‘8bit’ transfer-encoding.Pull #70: Ifusernameandpasswordare both set to the empty string,Mailer.from_settings, now interprets them as being set toNone.
Previously, setting them to the empty string caused SMTP authentication
to be force with empty username and password.Pull #71: Add acontent_idargument to theAttachmentconstructor
which allows you to set the Content-ID header so you can reference it from
an HTML body.Pull #72: Change file extension to.emlfor mails saved fromDebugMailer..emlis the standard file format for storing
plaintext MIME (rfc822) emails.Pull #77: Drop Python 2.6 and 3.2 support.Add Python 3.5 support.Pull #78: Support per-request transaction managers if available viarequest.tmset bypyramid_tm.0.14.1 (2015-05-21)Enable compatibility testing with Pyramid all the way back to 1.2. It may
work earlier but we aren’t testing it any longer.Fix a bug where themailer.debugini option was not properly being
cast to anint. This did not show up on Python 2 because string
to int comparisons are valid there but it was a latent bug.
Seehttps://github.com/Pylons/pyramid_mailer/pull/680.14 (2014-12-10)Added support for Python3.4, PyPy3.Pull #56: Ensure thatDebugMaileremulatesMailerby generating
a sender if none is passed.Pull #52: Add configuration options formail.sendmail_appandmail.sendmail_templateto allow use with non-default sendmail
configurations.Pull #50: Addpyramid_mailer.debugshorthand:  via one line indevelopment.ini, enables writing emails to a file instead of sending
them.0.13 (2013-07-13)Pull #45:  Default transfer encoding for mail messages is now
‘quoted-printable’.0.12 (2013-06-26)Pull #35:  aadded support for sendmail binary via repoze.sendmail >= 4.0b2.Remove “all_parts” and “attach_all_parts” from MailResponse object (unused by
pyramid_mailer).The Attachment class no longer supports reading data from the a file based on
thefilenameit is passed.  Instead, use the filename argument only as
something that should go in the Content-Disposition header, and pass a
filelike object asdata.Major code overhaul: nonascii attachment sending now actually works, most of
the code stolen from Lamson was gutted and replaced.Requires repoze.sendmail >= 4.10.11 (2013-03-28)Issue #29: Allow setting Content-Transfer-Encoding for body and html
via Attachments.Issue #32: Fix handling of messages with both HTML and plain text
bodies that also have attachments.Issue #24:  ensure thatpyramid_mailer.response.to_messagereturns
text under Python 3.x.Dropped support for Python 2.5.0.10 (2012-11-22)Set default transfer encoding for attachments tobase64and allow
an optionaltransfer_encodingargument for attachments. This currently
supportsbase64orquoted-printable.Properly handleMailer.from_settingsboolean options includingtlsandssl.Supportsetup.py dev(installs testing dependencies).Usesetup.py devin tox.ini.0.9 (2012-05-03)Add a test for uncode encoding in multipart messages.Depend onrepoze.sendmail>= 3.2 (fixes unicode multipart message
encoding).0.8 (2012-03-26)Work around a Python 3.2.0 bug in handling emails with empty headers.  This
allows cc-only and bcc-only emails to be handled properly on all platforms
(no recipient= required anymore).  Seehttps://github.com/Pylons/pyramid_mailer/issues/14.0.7 (2012-03-26)Packaging release0.6 (2012-03-20)Python 2.5, 2.6, 2.7, 3.2, and pypy compatibility.Remove explicit Jython support.  It may work, but we no longer test it
using automated testing.Requires repoze.sendmail 3.0+.More descriptive exception raised when attempting to send cc-only or
bcc-only messages.  Seehttps://github.com/Pylons/pyramid_mailer/issues/140.6 (2012-01-22)Use ‘,’ as an email header field separator rather than ‘;’ when multiple
values are in the same header (as per RFC822).Allow lists of recipient emails to be tuples or lists (previously it was
just lists).Don’t includeBccheader in mail messages (breaks secrecy of BCC).
Seehttps://github.com/Pylons/pyramid_mailer/pull/100.5.1 (2011-11-13)Fixed a bug where the mailer was only sending email to addresses in
the “TO” field.0.5 (2011-10-24)Drop Lamson dependency by copying Lamson’s MailResponse and dependent code
intopyramid_mailer.response.0.4.Xpyramid_mailer.includemefunction added forconfig.include('pyramid_mailer')supportpyramid_mailer.testingmodule added forconfig.include('pyramid_mailer.testing')support.pyramid_mailer.get_mailerAPI added (see docs).pyramid_mailer.interfacesmodule readded (with marker IMailer interface
for ZCA registration).setup.cfgadded with coverage parameters to allow forsetup.py nosetests--with-coverage.