Django 2.2.2 发行说明 — Django 文档
来自菜鸟教程
Django/docs/3.1.x/releases/2.2.2
Django 2.2.2 发行说明
2019 年 6 月 3 日
Django 2.2.2 修复了安全问题和 2.2.1 中的几个错误。
CVE-2019-12308:AdminURLFieldWidget XSS
AdminURLFieldWidget
生成的可点击“当前 URL”链接显示了提供的值,但未验证它是安全 URL。 因此,存储在数据库中的未经验证的值或作为 URL 查询参数有效负载提供的值可能会导致可点击的 JavaScript 链接。
AdminURLFieldWidget
现在在显示可点击链接之前使用 URLValidator 验证提供的值。 您可以通过将 validator_class
kwarg 传递给 AdminURLFieldWidget.__init__()
来自定义验证器,例如 使用 formfield_overrides 时。
为 CVE-2019-11358 修补捆绑的 jQuery:原型污染
jQuery 3.4.0 之前,由于 Object.prototype
污染,错误处理 jQuery.extend(true, {}, ...)
。 如果未净化的源对象包含可枚举的 __proto__
属性,则它可以扩展本机 Object.prototype
。
Django 管理员使用的 jQuery 捆绑版本已被修补,以允许 select2
库使用 jQuery.extend()
。
错误修正
- 修复了 Django 2.2 中的一个回归,该回归停止了在动态添加的管理内联 (:ticket:`30459`) 上工作的显示/隐藏切换。
- 修复了 Django 2.2 中的回归,如果
Meta.ordering
包含表达式 (:ticket:`30463`),则弃用消息会崩溃。 - 修复了 Django 2.2.1 中的回归,其中 SearchVector 生成带有冗余
Coalesce
调用的 SQL (:ticket:`30488`)。 - 修复了 Django 2.2 中使用
StatReloader
(:ticket:`30479`) 时自动重新加载器未检测到manage.py
文件中的更改的回归。 - 修复了 ArrayAgg 和 StringAgg 与
ordering
参数在Subquery
中使用时崩溃 (:ticket:`30315`) . - 修复了 Django 2.2 中在引发自定义签名异常时导致自动重新加载器崩溃的回归(:ticket:`30516`)。
- 修复了 Django 2.2.1 中的回归,其中自动重新加载器在使用
StatReloader
(:ticket:`30523`) 时不必要地多次重新加载翻译文件。