Pythonで実装されたWebアプリケーションフレームワークであるDjangoの開発チームは、最新版となる「Django 4.0」を、12月7日(現地時間)にリリースした。Python 3.10/3.9/3.8をサポートしている。
「Django 4.0」では、Python標準ライブラリであるzoneinfoがデフォルトのタイムゾーン実装になった。zoneinfoへの移行によって、現在のタイムゾーンの選択、フォームおよびテンプレートでのdatetimeインスタンスにおける現在のタイムゾーンへの変換、UTCで認識されたdatetimeの操作は影響を受けないものの、UTC以外のタイムゾーンで作業しており、pytzのnormalize()やlocalize()といったAPIを使用している場合は、pytzとzoneinfoは完全には同等ではないため、コードを監査する必要がある。
さらに、UniqueConstraint()において式とデータベース関数に一意の制約を作成可能な、新たな位置引数が追加されたほか、PBKDF2よりも安全なパスワードハッシャであるscryptが追加され(ただし、OpenSSL 1.1以降が必要なため、デフォルトではない)、Redisを使用したキャッシュの組み込みサポートを提供するdjango.core.cache.backends.redis.RedisCacheキャッシュバックエンドが追加されるなど、さまざまな機能追加・改善が行われている。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です