• 4.2
  • dev
  • ドキュメントのバージョン: 5.0

Django 4.2.1 リリースノート

2023年5月3日

Django 4.2.1 は、4.2 の深刻度 "low" のセキュリティ問題を修正しました。

CVE-2023-31047: 1つのフォームフィールドを使用して複数のファイルをアップロードする際の検証のバイパスが可能な脆弱性

forms.FileFieldforms.ImageField は、1つのフォームフィールドを使用して複数のファイルをアップロードすることをサポートしていないため、常に最後にアップロードされたファイルのみが検証されていました。残念ながら、複数のファイルをアップロードする トピックではそれとは違うことを示唆していました。

脆弱性を回避するために、ClearableFileInputFileInput フォームウィジェットは、multiple HTML 属性が設定されている場合に ValueError を発生させるようになりました。例外を防ぎ、以前の動作を維持するには、 allow_multiple_selectedTrue に設定してください。

新しい属性の使用方法や、1つのフィールドを介して複数のファイルを処理する詳細については、複数のファイルをアップロードする を参照してください。

Bugfixes

  • Django 4.2 で、属性名でフィールドを遅延読み込みするときに QuerySet.defer() がクラッシュするリグレッションを修正しました (#34458)。
  • SearchVector 関数が % 文字でクラッシュする Django 4.2 のリグレッションを修正しました (#34459).
  • Django 4.2 で、明示的なグループ化を使用するクエリに対する集計が間違った列に対してグループ化されるリグレッションを修正しました (#34464)。
  • Django 4.2 のリグレッションに従い、PostgreSQL の OPTIONS"cursor_factory" オプションを設定することを許可しました (#34466)。
  • Django 4.2のリグレッション (#34470) に対処し、PostgreSQL のクライアントエンコーディングを UTF-8 に強制しました。
  • Django 4.2 で、 i18n_patterns()prefix_default_language 引数にデフォルト言語のフォールバック言語を指定した場合に、 prefix_default_language を尊重していなかったリグレッションを修正しました (#34455).
  • Django 4.2 で、 prefix_default_languageFalse に設定した i18n_patterns() からデフォルト言語の URL を翻訳すると、異なる言語のリクエストに対して 404 エラーが発生するリグレッションを修正しました (#34515`)。
  • Django 4.2 で、HttpRequest, HttpResponse およびそのサブクラスのコピーやディープコピーの作成が正しく動作しない場合があるリグレッションを修正しました (#34482, #34484).
  • Django 4.2 で、 timesincetimeuntil のテンプレートフィルタが、時差が 1 日未満の場合に、UTC 以外のタイムゾーンを持つ datetime に対して正しくない結果を返すというリグレッションを修正しました (#34483)。
  • SearchHeadline 関数が psycopg 3でクラッシュする Django 4.2 のリグレッション (#34486) を修正しました。
  • Django 4.2 で、admin 画面の ClearableFileInput のマージンが正しくないリグレッションを修正しました (#34506)。
  • Django 4.2 で、admin サイトのアプリインデックスビューにパンくずリストが表示されないリグレッションを修正しました (#34512).
  • マイグレーションをスカッシュする際に、 AddIndexRemoveIndexRenameIndex、および CreateModel の操作を削減しました。これにより、履歴マイグレーションから非推奨の Meta.index_together オプションを削除し、代わりに Meta.indexes を使用できるようになりました (#34525)。
Back to Top