• binhex4 and hexbin4 standards are now deprecated. The binhex module and the following binascii functions are now deprecated: – b2a_hqx() ,$_{a2b_hqx()}$ – rlecode_hqx() , rledecode_hqx() • ast classes slice , Index and ExtSlice are considered deprecated and will be removed in future Python versions. value itself should be used instead of$_{Index(value)}$ . Tuple(slices, Load()) should be used instead of ExtSlice(slices) . (Contributed by Serhiy Storchaka in bpo-34822.) • $_{ast}$classes$_{Suite}$ ,$_{Param}$,$_{AugLoad}$ and$_{AugStore}$ are considered deprecated and will be removed in future Python versions. They were not generated by the parser and not accepted by the code generator in Python 3. (Contributed by Batuhan Taskaya in bpo-39639 and bpo-39969 and Serhiy Storchaka in bpo-39988.) • The PyEval_InitThreads() and PyEval_ThreadsInitialized() functions are now depre- cated and will be removed in Python 3.11. Calling PyEval_InitThreads() now does nothing. The GIL is initialized by$_{Py_Initialize()}$ since Python 3.7. (Contributed by Victor Stinner in bpo-39877.) • Passing$_{None}$ as the first argument to the$_{shlex.split()}$ function has been deprecated. (Contributed by Zackery Spytz in bpo-33262.) • smtpd.MailmanProxy() is now deprecated as it is unusable without an external module, mailman . (Contributed by Samuel Colvin in bpo-35800.) • The$_{lib2to3}$ module now emits a$_{PendingDeprecationWarning}$ . Python 3.9 switched to a PEG parser (see PEP 617 ), and Python 3.10 may include new language syntax that is not parsable by lib2to3’s LL(1) parser. The$_{lib2to3}$ module may be removed from the standard library in a future Python version. Consider third-party alternatives such as LibCST or parso. (Contributed by Carl Meyer in bpo-40360.) • The random parameter of$_{random.shuffle()}$ has been deprecated. (Contributed by Raymond Hettinger in bpo-40465) • The erroneous version at$_{unittest.mock.__version__}$ has been removed. • $_{nntplib.NNTP}$: xpath() and xgtitle() methods have been removed. These methods are depre- cated since Python 3.3. Generally, these extensions are not supported or not enabled by NNTP server ad- ministrators. For$_{xgtitle()}$ , please use$_{nntplib.NNTP.descriptions()}$ or$_{nntplib.NNTP.}$ description() instead. (Contributed by Dong-hee Na in bpo-39366.) • array.array : tostring() and$_{fromstring()}$ methods have been removed. They were aliases to tobytes() and frombytes() , deprecated since Python 3.2. (Contributed by Victor Stinner in bpo- 38916.) • The undocumented$_{sys.callstats()}$ function has been removed. Since Python 3.7, it was deprecated and always returned$_{None}$ . It required a special build option$_{CALL_PROFILE}$ which was already removed in Python 3.7. (Contributed by Victor Stinner in bpo-37414.) • The sys.getcheckinterval() and sys.setcheckinterval() functions have been re- moved. They were deprecated since Python 3.2. Use sys.getswitchinterval() and sys. setswitchinterval() instead. (Contributed by Victor Stinner in bpo-37392.) • The C function$_{PyImport_Cleanup()}$ has been removed. It was documented as: “Empty the module table. For internal use only.” (Contributed by Victor Stinner in bpo-36710.) • _dummy_thread and$_{dummy_threading}$modules have been removed. These modules were deprecated since Python 3.7 which requires threading support. (Contributed by Victor Stinner in bpo-37312.) • aifc.openfp() alias to$_{aifc.open()}$ ,$_{sunau.openfp()}$ alias to$_{sunau.open()}$ , and$_{wave.}$ openfp() alias to$_{wave.open()}$ have been removed. They were deprecated since Python 3.7. (Con- tributed by Victor Stinner in bpo-37320.) 15 9 Removed (Contributed by Victor Stinner in bpo-39353.)