更改 — ItsDangerous 文档
变化
版本 2.0.2
未发行
版本 2.0.1
发布 2021-05-18
版本 2.0.0
发布 2021-05-11
- 放弃对 Python 2 和 3.5 的支持。
- 不推荐使用 JWS 支持(
JSONWebSignatureSerializer
、TimedJSONWebSignatureSerializer
)。 请改用专用的 JWS/JWT 库,例如 authlib。 :问题:`129` - 不推荐导入
itsdangerous.json
。 改为导入 Python 的json
模块。 :pr:`152` - 如果安装了 Simplejson,则不再使用它。 要使用不同的库,请将其作为
Serializer(serializer=...)
传递。 :问题:`146` datetime
值是时区感知的timezone.utc
。 使用TimestampSigner.unsign(return_timestamp=True)
或BadTimeSignature.date_signed
的代码可能需要更改。 :问题:`150`- 如果签名的年龄小于 0,它将引发
SignatureExpired
而不是看起来有效。 如果时间戳偏移发生变化,就会发生这种情况。 :问题:`126` - 在某些情况下,
BadTimeSignature.date_signed
始终是datetime
对象而不是int
。 :问题:`124` - 添加了对密钥轮换的支持。 密钥列表可以作为
secret_key
从最旧到最新传递。 使用最新的密钥进行签名,尝试所有密钥进行签名。 :pr:`141` - 从
default_fallback_signers
中删除了默认的 SHA-512 回退签名者。 :问题:`155` - 添加静态类型工具的类型信息。 :pr:`186`
版本 1.1.0
发布 2018-10-26
- 将默认签名算法改回 SHA-1。 :pr:`113`
- 为使用默认为 SHA-512 的 1.0.0 版本的用户添加了默认的 SHA-512 回退。 :pr:`114`
- 在反序列化期间添加对回退算法的支持,以支持在不破坏现有签名的情况下在未来更改默认值。 :pr:`113`
- 由于大写的变化破坏了一些工具,因此将包的大写改回小写。 :pr:`113`
版本 1.0.0
发布 2018-10-18
扬升
注:这个版本是从 PyPI 中删除的,因为它将默认算法更改为 SHA-512。 此决定已在 1.1.0 中恢复,并保留为 SHA1。
放弃对 Python 2.6 和 3.3 的支持。
将代码从单个模块重构为一个包。 API 文档中的任何对象仍然可以从顶级
itsdangerous
名称导入,但其他导入将需要更改。 未来的版本将删除许多这些兼容性导入。 :pr:`107`优化时间戳的序列化和反序列化方式。 :pr:`13`
base64_decode
当传递无效数据时会引发BadData
。 :pr:`27`签名时确保值为字节以避免 Python 3 上的
TypeError
。 :问题:`29`在
Serializer
中增加一个serializer_kwargs
参数,在dump_payload
期间传递给dumps
。 :pr:`36`Unicode 字符串的更紧凑的 JSON 转储。 :问题:`38`
使用完整时间戳而不是偏移量,允许 2011 年之前的日期。 :问题:`46`
要保持与以前版本的签名者的兼容性,请考虑在取消签名时使用 这个 shim。
检测可能出现在签名本身中的
sep
字符并引发ValueError
。 :问题:`62`对子类中的
Serializer.load_payload
的关键字参数使用一致的签名。 :issue:`74`, :pr:`75`将默认中间哈希值从 SHA-1 更改为 SHA-512。 :pr:`80`
加载时将 JWS exp 头转换为 int。 :pr:`99`
版本 0.24
发布 2014-03-28
- 添加了一个
BadHeader
异常,用于替换旧的BadPayload
异常,该异常在这些情况下被重用。
版本 0.23
发布 2013-08-08
- 修复了导致测试和许可证文件不包含在内的打包错误。
版本 0.22
发布 2013-07-03
- 添加了对
TimedJSONWebSignatureSerializer
的支持。 - 可以覆盖签名验证功能以允许实现非对称算法。
版本 0.21
发布 2013-05-26
- 修复了 Python 3 上导致生成无效错误的问题。
版本 0.20
发布 2013-05-23
- 修复了对
want_bytes
的错误调用,该调用破坏了 Python 2.6 上的 ItsDangerous 的某些用途。
版本 0.19
发布 2013-05-21
- 删除了对 2.5 的支持并增加了对 3.3 的支持。
版本 0.18
发布 2013-05-03
- 添加了对 JSON Web 签名 (JWS) 的支持。
版本 0.17
发布 2012-08-10
- 修复了覆盖摘要方法时的名称错误。
版本 0.16
发布 2012-07-11
- 可以将 unicode 值传递给
load_payload
,以便更轻松地调试某些东西。
版本 0.15
发布 2012-07-11
- 通过在出现问题时引发一个特定错误,使独立
load_payload
更加健壮。 - 重构异常以单独捕获更多案例,添加更多属性。
- 修复了导致
load_payload
在某些情况下无法使用基于时间戳的序列化程序的问题 - 添加了
loads_unsafe
方法。
版本 0.14
发布 2012-06-29
- API 重构以支持不同的密钥派生。
- 为异常添加了属性,以便即使签名检查失败也可以检查数据。
版本 0.13
发布 2012-06-10
- 允许自定义摘要模块的小 API 更改。
版本 0.12
发布 2012-02-22
- 修复了用于纪元计算的本地时区的问题。 如果您不是在 UTC 时区运行,这可能会使您的某些签名无效。 您可以通过猴子修补
itsdangerous.EPOCH
来恢复旧行为。
版本 0.11
发布 2011-07-07
- 修复了未捕获的值错误。
版本 0.10
发布 2011-06-25
- 重构接口,可以通过传入模块来交换底层序列化程序,而不必覆盖有效负载加载程序和转储程序。 这使得界面与 Django 最近的变化更加兼容。