Django 5.0.3发行说明

March 4, 2024

Django 5.0.3修复了一个严重程度为“中等”的安全问题和5.0.2中的几个错误。

CVE-2024-27351:中潜在的正则表达式拒绝服务 django.utils.text.Truncator.words()

django.utils.text.Truncator.words() 方法(带有 html=True )和 truncatewords_html 模板过滤器会受到使用适当定制字符串的潜在正则表达式拒绝服务攻击(后续 CVE 2019-14232CVE 2023-43665 )。

错误修正

  • 修复了Django 5.0.2中的回归,其中 intcomma 模板筛选器可以返回浮点数字符串表示的前导逗号 (#35172 )。

  • 修复了Django 5.0中导致崩溃的错误 Signal.asend()asend_robust() 当所有接收器都是异步函数时 (#35174 )。

  • Fixed a regression in Django 5.0.1 where ModelAdmin.lookup_allowed() would prevent filtering against foreign keys using lookups like __isnull when the field was not included in ModelAdmin.list_filter (#35173).

  • 修复了Django 5.0中导致崩溃的回归 @sensitive_variables@sensitive_post_parameters 从加载的函数上的装饰符 .pyc 文件 (#35187 )。

  • Fixed a regression in Django 5.0 that caused a crash when reloading a test database and a base queryset for a base manager used prefetch_related() (#35238).

  • 修复了Django 5.0中的一个错误,即管理员中的面过滤器将在 SimpleListFilter 使用不带主键的查询集 (#35198 )。