Zope 3库,用于发送通知和时事通讯
项目描述
摘要
Singing 是一个用于发送通知和新闻通讯的 Zope 3 库。
您可以在 GitHub 仓库 中找到 collective.singing 的开发版本。
历史记录
0.7.6 (2019-10-22)
支持删除更改了电子邮件地址的订阅 [fRiSi]
0.7.5 (2017-03-03)
将频道描述作为可选字段,以便用户在不需要描述时可以将其留空 [fRiSi]
更新 README 文件以使用 GitHub 仓库而不是 svn。 [ivanteoh]
0.7.4 (2015-11-03)
zc.queue 应该小于 2.0.0a1 以避免引入 ZODB4 和其他相关功能。 [ale-rt]
修复 AbstractPeriodicScheduler 类中的 __cmp__ 上的 TypeError。 [ivanteoh]
0.7.3 (2015-08-31)
使定时调度器的 last_trigger 仅在发送新闻通讯时记录。 [arterrey]
调度器过滤器以仅向频道选项发送。 [arterrey]
清理 flake8 和变更日志。 [WouterVH]
0.7.2 (2015-01-05)
添加 MANIFEST.in。 [WouterVH]
添加 z3c.autoinclude-entrypoint 以将其标记为 Plone 插件。这避免了显式加载 zcml-slug 的需要。 [WouterVH]
修复当 zope.app.intid 不可用但只有 zope.intid 时出现的 ImportError。 [maurits]
添加空英文翻译,这对于支持多语言站点的边缘情况是必需的。 [maurits]
添加意大利语翻译。参见 https://bugs.launchpad.net/singing-dancing/+bug/466764 [andrea-cecchi85]
添加 IJob 接口,并让 Job 实现它。 [toutpt]
修复 plone 4.3 的问题 [kiorky]。
0.7.1 (2010-12-03)
在频道上添加 keep_sent_messages 标志,如果将其设置为 False(默认值),则抑制将发送的消息放入持久队列的行为。
如果根据此标志丢弃发送的消息,则将条目写入日志,以保留事件的最小记录。 [malthe]
0.7.0 (2010-11-04)
将单选按钮和复选框的 z3c 小部件模板注册从 browser/configure.zcml 移至 widgets.zcml,因为 z3c.form 的每个版本(2.3.3 之后)都包含这些模板注册,重复注册会引发 ConfigurationConflictError。 [saily]
0.6.15 (2010-08-01)
导入 zope.app.container.interfaces;这有助于与 Plone 4 兼容。 [maurits]
针对调度器对象的相等性问题进行了奇怪的处理。这似乎仅在 Python 2.6 中是问题。这应该很快发布,因为它修复了 dancing 的 ForPloneFour 分支中的许多错误。 [tmog]
添加挪威语翻译。 [regebro]
0.6.14 (2010-04-07)
更新荷兰语翻译。 [maurits]
更新法语翻译 [toutpt]
0.6.13 (2009-10-19)
API 更改!在 IChannel 中添加了布尔值“subscribeable”。 [tmog]
添加巴西语翻译 [lucmult]
0.6.12 (2009-06-11)
对清除消息队列进行优化。我们现在简单地创建一个新的队列,而不是拉取所有项目(拉取对于 CompositeQueue 来说是相当昂贵的)。 [tmog]
当订阅没有实际触发时,现在使用订阅创建日期作为触发。即新订阅首次使用时。我很惊讶地发现这并不是已经这样做的。 [tmog]
触发一个周期性调度器,其delta现在总是通过该delta的乘积更新trickered_last。这意味着周期性调度器现在不再受始终保存精确触发时间到它们的triggered_last属性而导致的时间“漂移”。[tmog]
通过plone.memoize.request添加了项目格式的缓存。这实际上(!)加快了消息生成速度,尤其是在从“发送为新闻通讯”发送“完整”项目时。[tmog]
0.6.11 (2009-03-11)
向IComposer.render和MessageAssemble.__call__方法添加了可选关键字参数‘override_vars’。这是为了便于覆盖composer_vars。例如,从collective.dancing的sendnewsletter.html表单中。存储在TimedScheduler中的发送现在也将包括‘override_vars’。[tmog]
已从zope.app.catalog中删除版本锁定至<= 3.6.0。现在这通过我们外部扩展文件处理。请参阅https://svn.plone.org/svn/collective/collective.dancing/buildout-extends/0.8.7.cfg和http://pypi.python.org/pypi/collective.dancing#installation [nouri]
0.6.10 (2009-02-01)
更改了订阅索引的事件处理程序,首先在‘channel._subscriptions’中查找Subscriptions对象。这允许一个装饰为‘subscriptions’的属性在‘_subscriptions’中保持数据。[tmog]
0.6.9 (2009-01-20)
将zope.app.catalog的版本锁定到3.6.0之前,以避免在https://bugs.launchpad.net/singing-dancing/+bug/301082中出现的问题。[tmog]
0.6.8 (2009-01-02)
MessageQueues现在是collective.singing.queue.CompositeQueue - zc.queue.CompositeQueue的一个优化版本。这提供了更快的__len__和更快的最后队列元素访问。测试是从zc.queue中偷来的,并添加了所有地方的长度的检查。这也许应该直接放在zc.queue中,但向zc命名空间添加东西不是我的工作。 ;-[tmog]
0.6.7 (2008-12-03)
Czech翻译的一部分。[naro]
进行了一些重构,以便允许更定制的订阅表单。[nouri]
添加了法语翻译。
0.6.6 (2008-11-13)
在订阅时将订阅者语言添加到订阅元数据中。[nouri]
0.6.5 (2008-11-05)
使用i18ndude查找所有未翻译的msgid。一些行号已更正,但collective.singing中没有变化。collective.dancing中有些更新,所以请大家帮助更新collective.dancing的po文件。[saily]
添加了async模块,允许为异步执行排队作业。创建此模块是因为zc.async对于collective.dancing旨在与之一起工作的所有Zope版本来说不可用。 :-( [nouri]
在IMessageAssemble.render_message中允许对cue进行更细粒度的控制。这允许预览函数请求要使用的cue,但在渲染预览时不要设置它。[nouri]
0.6.4 (2008-10-29)
在channel_lookup中添加了对channel属性‘sendable’的可选检查。在dancing中的sendnewsletter视图发送内容项时使用此功能,以便能够抑制某些渠道。还添加了只包含可发送或只包含可订阅渠道的词汇表。[tmog]
将统计页面上的按钮重新标记为使用术语“清除”而不是“刷新”。还重命名了相关处理程序和方法。[russf]
0.6.3 (2008-09-11)
注册SubscriptionSearchableText适配器,以便全文索引实际上被填充。[nouri]
0.6.2 (2008-09-03)
向mail.create_html_mail添加了“headers”参数,以允许注入更多的电子邮件头。[nouri]
0.6.1 (2008-08-28)
将zope.sendmail作为依赖项添加,以便我们获得最新的和最好的版本。[nouri]
IMailDelivery期望toaddrs是一个地址列表。[nouri]
使用DumbWriters的自动换行确保没有文本行超过plain_text_maxcols个字符。[saily]
使用HTMLParser.anchorlist将消息中找到的所有链接追加到text/plain消息的底部。[saily]
0.6.0 (2008-08-21)
将‘singing.scheduler.assemble_messages’和‘render_message’移动到自己的IMessageAssemble适配器(在通道上)。这允许更容易地挂钩到这些充斥着策略的函数,以便为不同类型的通道提供不同的工作方式。另外,添加了一个小标志,可以完全忽略订阅者的‘cue’。[nouri]
0.5.0 (2008-07-29)
开始依赖于plone.z3cform>=0.3dev [nouri]
0.4 (2008-07-23)
在channel_lookup中添加了对channel属性‘subscribeable’的可选检查。订阅验证和订阅端口使用此功能。[tmog]
将版本与http://peak.telecommunity.com/DevCenter/setuptools保持一致 [stonor]
为Filtered Collectors编辑页面添加了full_schema。现在我们可以重新编辑这些了;-) [tmog]
使MessageQueues.flush()的调用更灵活,以便得到一个方便的方法来刷新新消息。这不会改变任何当前行为。[jensens]
添加了波兰语翻译,由Barbara Struk完成 [naro]
0.3 (2008-06-03)
使用zc.lockfile而不是过度使用transaction.commit()来锁定队列处理。[nouri]
使用email.Header模块进行消息头格式化。重构mail.py以创建基于MIMEMultipart的消息。[naro]
添加了捷克语翻译 [naro]
0.2 (2008-05-06)
从队列中拉取消息后提交。[nouri]
ITransform现在是一个内容转换的适配器,而不是一个实用工具。这允许我们在重写链接时使用内容的URL。[tmog]
更新了pot和丹麦语翻译。[bartholdy]
在订阅表单中添加了按钮“发送我的订阅详情”,以防订阅者忘记他们的秘密。[nouri]
在几个模板中进行了清理。需要在向导中结构化view/Description。移除了向导步骤中烦人的标签过滤器。[bartholdy]