Python 3.20 で削除予定¶
struct.Structの__new__()メソッドをformat引数なしで呼び出すことは非推奨となり、Python 3.20 で削除されます。 初期化済みのStructオブジェクトで__init__()メソッドを呼び出すことも非推奨となり、Python 3.20 で削除されます。(Sergey B Kirpichev と Serhiy Storchaka が gh-143715 で貢献しました。)
以下の標準ライブラリモジュールの
__version__、version、VERSION属性は非推奨となり、Python 3.20 で削除されます。 代わりにsys.version_infoを使ってください。ctypes.macholibdecimal(代わりにdecimal.SPEC_VERSIONを使ってください)logging(__date__も非推奨)xml.sax.expatreader
(Hugo van Kemenade と Stan Ulbrych が gh-76007 で貢献しました。)
The
__author__,__credits__,__copyright__and__date__attributes have been deprecated in these standard library modules and will be removed in Python 3.20. Attribution is preserved in the source code and the version control history.(Contributed by Stan Ulbrych in gh-159240.)
PEP 829 で定義された非推奨事項:
name.pthファイルにimport行がある場合は警告が出ます。name.pthファイルは、デフォルトではロケールのエンコーディングでデコードされなくなります。utf-8-sigでエンコードされて いなければなりません。
(Barry Warsaw が gh-148641 で貢献しました。)
ast:抽象 AST ノード (
ast.ASTやast.exprなど) のインスタンスを作成することは非推奨となり、Python 3.20 ではエラーになります。
-
実行時チェック可能なプロトコルクラスを継承していても、
runtime_checkable()で明示的にデコレートされていないプロトコルクラスに対し、isinstance()やissubclass()でチェックすることは非推奨です。 Python 3.20 ではTypeErrorが発生します。(Bartosz Sławecki が gh-132604 で貢献しました。)