در انتظار حذف در پایتون 3.16

  • سیستم ایمپورت:

    • تنظیم __loader__ روی یک ماژول بدون آنکه __spec__.loader تنظیم شود، منسوخ شده است. در پایتون 3.16، __loader__ دیگر توسط سیستم ایمپورت یا کتابخانه استاندارد تنظیم یا در نظر گرفته نخواهد شد.

    • Setting __package__ on a module while failing to set __spec__.parent is deprecated. In Python 3.16, __package__ will cease to be taken into consideration by the import system or standard library. (gh-97879)

  • The bundled copy of libmpdec.

  • array:

    • کد قالب 'u' (wchar_t) از پایتون 3.3 در مستندات و از پایتون 3.13 در ران‌تایم منسوخ شده است. به جای آن، از کد قالب 'w' (Py_UCS4) برای نویسه‌های یونیکد استفاده کنید.

  • asyncio:

    • asyncio.iscoroutinefunction() منسوخ شده است و در پایتون 3.16 حذف خواهد شد؛ به جای آن از inspect.iscoroutinefunction() استفاده کنید. (مشارکت‌شده توسط Jiahao Li و Kumar Aditya در gh-122875.)

    • سیستم سیاست‌های asyncio منسوخ شده است و در پایتون 3.16 حذف خواهد شد. به‌طور خاص، کلاس‌ها و توابع زیر منسوخ شده‌اند:

      • asyncio.AbstractEventLoopPolicy

      • asyncio.DefaultEventLoopPolicy

      • asyncio.WindowsSelectorEventLoopPolicy

      • asyncio.WindowsProactorEventLoopPolicy

      • asyncio.get_event_loop_policy()

      • asyncio.set_event_loop_policy()

      کاربران باید برای استفاده از پیاده‌سازی حلقه رویداد دلخواه، از asyncio.run() یا asyncio.Runner همراه با loop_factory استفاده کنند.

      به عنوان مثال، برای استفاده از asyncio.SelectorEventLoop در ویندوز:

      import asyncio
      
      async def main():
          ...
      
      asyncio.run(main(), loop_factory=asyncio.SelectorEventLoop)
      

      (مشارکت‌شده توسط Kumar Aditya در gh-127949.)

  • builtins:

    • وارونگی بیتی روی نوع‌های بولی، ~True یا ~False، از پایتون 3.12 منسوخ شده است، زیرا نتایج شگفت‌آور و غیرشهودی تولید می‌کند (-2 و -1). برای نقیض منطقی یک مقدار بولی، به جای آن از not x استفاده کنید. در موارد نادر که به وارونگی بیتی عدد صحیح زیرین نیاز دارید، آن را به‌طور صریح به int تبدیل کنید (~int(x)).

  • functools:

    • فراخوانی پیاده‌سازی پایتونی functools.reduce() با آرگومان‌های کلیدواژه‌ای function یا sequence از پایتون 3.14 منسوخ شده است.

  • logging:

    • پشتیبانی از هندلر‌های سفارشی گزارش‌گیری با آرگومان strm منسوخ شده و قرار است در Python 3.16 حذف شود. به‌جای آن، هندلر‌ها را با آرگومان stream تعریف کنید. (مشارکت Mariusz Felisiak در gh-115032.)

  • mimetypes:

    • پسوندهای معتبر برای mimetypes.MimeTypes.add_type() با '.' شروع می‌شوند یا خالی هستند. پسوندهای بدون نقطه منسوخ شده‌اند و در پایتون 3.16 باعث ایجاد یک ValueError خواهند شد. (مشارکت‌شده توسط Hugo van Kemenade در gh-75223.)

  • shutil:

    • استثنای ExecError از پایتون 3.14 منسوخ شده است. این استثنا از پایتون 3.4 توسط هیچ تابعی در shutil استفاده نشده است و اکنون مستعاری برای RuntimeError است.

  • symtable:

    • The symtable.Class.get_methods() method has been deprecated since Python 3.14.

  • sys:

    • The _enablelegacywindowsfsencoding() function has been deprecated since Python 3.13. Use the PYTHONLEGACYWINDOWSFSENCODING environment variable instead.

  • sysconfig:

    • تابع sysconfig.expand_makefile_vars() از پایتون 3.14 منسوخ شده است. به جای آن از آرگومان vars تابع sysconfig.get_paths() استفاده کنید.

  • tarfile:

    • The undocumented and unused TarInfo.tarfile attribute has been deprecated since Python 3.13.