Django 2.2.2 发行说明 — Django 文档

来自菜鸟教程
Django/docs/3.0.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 文件中的更改的回归。
  • 修复了 ArrayAggStringAggordering 参数在 Subquery 中使用时崩溃 (:ticket:`30315`) .
  • 修复了 Django 2.2 中在引发自定义签名异常时导致自动重新加载器崩溃的回归(:ticket:`30516`)。
  • 修复了 Django 2.2.1 中的回归,其中自动重新加载器在使用 StatReloader (:ticket:`30523`) 时不必要地多次重新加载翻译文件。