跳转到主要内容

Pyramid的Sendmail包

项目描述

pyramid_mailer

https://travis-ci.org/Pylons/pyramid_mailer.png?branch=master Documentation Status

pyramid_mailer 是一个用于从 Pyramid 应用程序发送电子邮件的软件包。它与 Python 2.7、3.3、3.4 和 3.5 以及 PyPy 兼容。

本软件包包括

  1. 使用易于使用的 API 对低级 Python email 库进行封装,该 API 包括附件和多重内容。

  2. 立即发送电子邮件或将电子邮件添加到 maildir 队列。

  3. 在事务内管理电子邮件发送,以防止代码抛出异常时发送电子邮件。

  4. 有助于单元测试的功能。

pyramid_mailer 使用 repoze.sendmail 库来管理电子邮件发送和事务管理,并从 Zed Shaw 的 lamson 中借用代码(已获得许可)来封装电子邮件消息。有关更多信息,请参阅 LICENSE.txt 文件。

变更日志

0.15.1 (2016-12-13)

  • 拉取请求 #83:向 DebugMailerDummyMailer 添加新的 .bind 方法。此外,pyramid_mailer.testingpyramid_mailer.debug 现在添加了 request.mailer 请求属性。

0.15 (2016-12-06)

  • 拉取请求 #49:支持 '7bit' 和 '8bit' 转换编码。

  • 拉取请求 #70:如果 usernamepassword 均设置为空字符串,现在 Mailer.from_settings 将其解释为设置为 None。之前,将它们设置为空字符串会导致使用空用户名和密码强制进行 SMTP 认证。

  • 拉取请求 #71:向 Attachment 构造函数添加 content_id 参数,允许您设置 Content-ID 头部,从而可以从 HTML 正文引用它。

  • 拉取请求 #72:将 DebugMailer 保存的邮件的文件扩展名更改为 .eml。.eml 是存储纯文本 MIME (rfc822) 电子邮件的标准文件格式。

  • 拉取请求 #77:删除对 Python 2.6 和 3.2 的支持。

  • 添加对 Python 3.5 的支持。

  • 拉取请求 #78:如果通过 pyramid_tm 设置的 request.tm 可用,则支持每个请求的事务管理器。

0.14.1 (2015-05-21)

  • 启用与 Pyramid 的兼容性测试,直到 1.2。它可能仍然可以工作,但我们不再对其进行测试。

  • 修复了 mailer.debug ini 选项未正确转换为 int 的错误。在 Python 2 中没有显示出来,因为字符串到整数的比较在那里是有效的,但它是一个潜在的错误。请参阅 https://github.com/Pylons/pyramid_mailer/pull/68

0.14 (2014-12-10)

  • 添加了对 Python3.4、PyPy3 的支持。

  • 拉取请求 #56:确保 DebugMailer 通过生成发送者来模拟 Mailer,如果没有传递发送者。

  • 拉取请求 #52:为 mail.sendmail_appmail.sendmail_template 添加配置选项,允许使用非默认的 sendmail 配置。

  • 拉取请求 #50:添加 pyramid_mailer.debug 速记:在 development.ini 的一行中启用将电子邮件写入文件而不是发送它们。

0.13 (2013-07-13)

  • 拉取请求 #45:现在邮件消息的默认传输编码为 'quoted-printable'。

0.12 (2013-06-26)

  • 拉取请求 #35:通过 repoze.sendmail >= 4.0b2 添加了对 sendmail 二进制的支持。

  • 从MailResponse对象中删除“all_parts”和“attach_all_parts”(pyramid_mailer未使用)。

  • 附件类不再支持根据传入的filename从文件中读取数据。相反,仅将filename参数用作应放在Content-Disposition头中的内容,并将文件对象作为data传入。

  • 主要代码重构:非ASCII附件发送现在真正可行,大部分代码是从Lamson那里剽窃的,已被移除并替换。

  • 需要repoze.sendmail >= 4.1

0.11 (2013-03-28)

  • 问题#29:允许通过附件设置正文和HTML的Content-Transfer-Encoding。

  • 问题#32:修复了同时具有HTML和纯文本正文以及附件的消息的处理。

  • 问题#24:确保在Python 3.x下pyramid_mailer.response.to_message返回文本。

  • 已取消对Python 2.5的支持。

0.10 (2012-11-22)

  • 将附件的默认传输编码设置为base64,并允许为附件提供一个可选的transfer_encoding参数。目前支持base64quoted-printable

  • 正确处理Mailer.from_settings布尔选项,包括tlsssl

  • 支持setup.py dev(安装测试依赖项)。

  • 在tox.ini中使用setup.py dev

0.9 (2012-05-03)

  • 添加了对多部分消息中uncode编码的测试。

  • 依赖repoze.sendmail >= 3.2(修复了Unicode多部分消息编码)。

0.8 (2012-03-26)

  • 解决Python 3.2.0处理空头部的bug。这允许在所有平台上正确处理仅cc和仅bcc的电子邮件(不再需要recipient=)。

0.7 (2012-03-26)

  • 打包发布

0.6 (2012-03-20)

  • 兼容Python 2.5、2.6、2.7、3.2和pypy。

  • 删除了对Jython的显式支持。它可能仍然有效,但我们不再使用自动化测试来测试它。

  • 需要repoze.sendmail 3.0+。

  • 在尝试发送仅cc或仅bcc消息时,引发更具体的异常。请参阅https://github.com/Pylons/pyramid_mailer/issues/14

0.6 (2012-01-22)

  • 当同一头部的多个值时,使用“,”作为电子邮件头部分隔符而不是“;”(按照RFC822)。

  • 允许收件人电子邮件列表为元组或列表(以前只是列表)。

  • 在邮件消息中不包括Bcc头(破坏了BCC的保密性)。请参阅https://github.com/Pylons/pyramid_mailer/pull/10

0.5.1 (2011-11-13)

  • 修复了邮件发送器只发送“TO”字段中的地址的bug。

0.5 (2011-10-24)

  • 通过将Lamson的MailResponse和相关代码复制到pyramid_mailer.response中来删除对Lamson的依赖。

0.4.X

  • pyramid_mailer.includeme函数添加,以支持config.include('pyramid_mailer')

  • pyramid_mailer.testing模块添加,以支持config.include('pyramid_mailer.testing')

  • pyramid_mailer.get_mailer API添加(请参阅文档)。

  • pyramid_mailer.interfaces模块重新添加(带有ZCA注册的标记IMailer接口)。

  • setup.cfg添加,包含覆盖率参数,允许使用setup.py nosetests --with-coverage

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

pyramid_mailer-0.15.1.tar.gz (46.8 kB 查看散列值)

上传时间

构建分布

pyramid_mailer-0.15.1-py2.py3-none-any.whl (19.0 kB 查看散列值)

上传时间 Python 2 Python 3

由...