Zope 的客户端识别和会话
项目描述
zope.session
变化
4.5 (2022-08-30)
添加对 Python 3.5、3.9、3.10 的支持。
4.4.0 (2020-10-16)
使用 zope.interface v5 修复不一致的分辨率顺序。
添加对 Python 3.8 的支持。
放弃对 Python 3.4 和 3.5 的支持。
4.3.0 (2018-10-19)
添加对 Python 3.7 的支持。
4.2.0 (2017-09-22)
添加对 Python 3.5 和 3.6 的支持。
放弃对 Python 2.6 和 3.3 的支持
达到 100% 的代码覆盖率并通过 tox.ini 和 Travis CI 进行维护。
4.1.0 (2015-06-02)
添加对 PyPy 和 PyPy3 的支持。
4.0.0 (2014-12-24)
添加对 Python 3.4 的支持。
添加对 Travis 测试的支持。
4.0.0a2 (2013-08-27)
修复在 GMT 以东任何时区失败的测试
4.0.0a1 (2013-02-21)
添加对 Python 3.3 的支持
用等效 的 zope.component.adapter装饰器替换已弃用的 zope.component.adapts用法。
用等效 的 zope.interface.implementer装饰器替换已弃用的 zope.interface.implements用法。
放弃对 Python 2.4 和 2.5 的支持。
3.9.5 (2011-08-11)
LP #824355:启用对 HttpOnly cookie 的支持。
修复zope.session.session.Session中的错误,如果在实例上尝试迭代或包含测试,则会触发无限循环。
3.9.4 (2011-03-07)
向 adapter.zcml 中的 IClientId 适配器声明添加显式提供。
添加选项以禁用 PersistentSessionDataContainer 中的隐式扫描。
3.9.3 (2010-09-25)
添加额外的测试以声明对zope.testing的测试依赖。
使用 Python 的doctest模块而不是弃用的 zope.testing.doctest。
3.9.2 (2009-11-23)
通过仅在 Python 2.5 及更高版本中使用 hashlib 来修复 Python 2.4 hmac 兼容性问题。
在构造和验证客户端 ID 时,使用 CookieClientIdManager 的密钥而不是消息作为 hmac 密钥。
可以构造 CookieClientIdManager 传递 cookie 命名空间和/或秘密作为构造函数的参数。
将 zope.schema.fieldproperty.FieldProperty 用于 CookieClientIdManager 的“命名空间”属性,就像其接口中的其他属性一样。此外,使 ICookieClientIdManager 的“命名空间”字段成为 ASCIILine,因此它只接受 cookie 名称的非 unicode 字符串。
3.9.1 (2009-04-20)
恢复与 Python 2.4 的兼容性。
3.9.0 (2009-03-19)
不要在 Python 2.6 上提出弃用警告。
放弃对zope.annotation的依赖。相反,我们让类 在 ZCML 配置中实现IAttributeAnnotatable ,前提是zope.annotation 可用。如果您的代码依赖于可注释的CookieClientIdManager 和PersistentSessionDataContainer并且您不包含此包的 zcml 类配置,则需要使用zope.interface中的classImplements函数来使这些类再次实现IAttributeAnnotatable 。
放弃对 zope.app.http 的依赖,使用email.utils模块中的标准日期格式化功能。
会话实用程序的 Zope 3 应用程序引导代码已移至 zope.app.appsetup 包中,因此在此包中删除了对 zope.app.appsetup 的依赖。
删除测试依赖项,因为我们不需要 zope.testing 后面的任何东西,并且之前的依赖项只是从 zope.app.session 迁移而来。
删除 zpkg 文件和 zcml slugs。
稍微更新一下包的描述。
3.8.1 (2009-02-23)
添加为 CookieClientIdManager 设置 cookie 有效域的功能。当您在一个域上设置应用程序并且希望标识 cookie 对子域有效时,这对于简单的情况很有用。
Python 2.6 兼容性更改。在调用 hmac.new() 之前对字符串进行编码,因为函数不再接受 unicode() 类型。
3.8.0 (2008-12-31)
在zope.site和 zope.app.publication添加缺少的测试依赖项。
3.7.1 (2008-12-30)
为 apidoc.zcml 中的标题指定 i18n_domain
ZODB 3.9 不再包含 ZODB.utils.ConflictResolvingMappingStorage,修复了测试,因此它们适用于 ZODB 3.8 和 3.9。
3.7.0 (2008-10-03)
新的功能:
在 CookieClientIdManagers 上添加了“postOnly”选项,仅允许在 POST 请求上设置客户端 ID cookie。这是为了进一步降低将相同客户端 ID 分发给多个用户的损坏缓存的风险。(当然,如果缓存被破坏到足以缓存 POST 也无济于事。)
3.6.0 (2008-08-12)
新的功能:
在 CookieClientIdManagers 上添加了一个“安全”选项,以使用安全的 set-cookie 选项,它告诉浏览器不要通过 http 发送 cookie。
这为仅 ssl 的应用程序提供了增强的安全性。
仅在尚未设置的情况下设置客户端 ID cookie,并尝试防止标头被缓存。这是为了将损坏的缓存将相同的客户端 ID 分发给多个用户的风险降到最低。
3.5.2 (2008-06-12)
删除由设置lastAccessTime引起的 SessionData 上的 ConflictErrors 。
3.5.1 (2008-04-30)
将 ZCML 拆分,以便更合理地重用。
3.5.0 (2008-03-11)
将默认会话“分辨率”更改为合理的值并记录/测试它。
3.4.1 (2007-09-25)
修复了一些元数据并切换到 tgz 版本。
3.4.0 (2007-09-25)
初始发行
将部分从zope.app.session移动到这个包