非同期処理サポートを進めた「Django 3.1」公開

 PythonベースのWebフレームワーク「Django」開発チームは8月4日、最新版となる「Django 3.1」を公開した。

 DjangoはPythonで作成されたWebアプリケーションフレームワーク。ユーザー認証、コンテンツ管理、サイトマップ、RSSフィードなどの機能を備えており、高速に開発できる。

 Django 3.1は2019年12月に公開されたバージョン3系の初のポイントリリース。Pythonはバージョン3.6/3.7/3.8をサポートする。

 バージョン3で導入した非同期処理対応をさらに進め、非同期のビュー、ミドルウェア、テストとテストクライアントなど、非同期の要求パスにフル対応した。同期型と非同期型を合わせて使うこともできる。

 なお、現時点ではORM、キャッシュレイヤーなどは非同期アクセスをサポートしていない。開発チームでは、将来のリリースで対応していくとしている。

 新しいフィールドとして、models.JSONFieldとforms.JSONFieldをサポートした。ともにカスタムJSONエンコーダー/デコーダーを使うもので、対応するデータベースバックエンドで使用できる。

 django.core.signing.Signerおよびdjango.core.signing.dumps()が作成する署名やユーザーセッション、管理者サイトのクッキー、パスワードリセットトークンのエンコードなどで用いるハッシュアルゴリズムのデフォルトをsha1またはsha256に設定できるDEFAULT_HASHING_ALGORITHMが加わった。3.1で加わったsha256のサポート加わったためで、移行時の設定ができる。なお、sha1は次期メジャーリリース(「Django 4.0」)では削除されることになっている。

 このほかにも、細かな強化が多数加わっている。

Django
https://www.djangoproject.com/