Python 3.10¶
صدر الإصدار Python 3.10.0 (النهائي) في 4 أكتوبر 2021. وقد عُرّفت ميزات الإصدار 3.10 في PEP 619 ويمكن العثور على وصف تفصيلي للتغييرات في ما الجديد في Python 3.10.
ميزات بناء الجملة الجديدة |
الحالة |
|
مطابقة الأنماط البنيوية: المواصفات |
||
مطابقة الأنماط البنيوية: الدافع والأساس المنطقي |
||
مطابقة الأنماط البنيوية: دليل تعليمي |
||
أصبح استخدام مديري السياق بين قوسين مسموحًا به رسميًا الآن |
||
ميزات جديدة في المكتبة القياسية |
||
إضافة فحص اختياري للطول إلى zip |
||
تحسينات المفسّر |
||
أرقام أسطر دقيقة لأدوات التصحيح والأدوات الأخرى |
||
ميزات الأنواع (typing) الجديدة |
||
السماح بكتابة أنواع الاتحاد بالصيغة X | Y |
||
الأسماء المستعارة الصريحة للأنواع |
||
متغيرات مواصفات المعاملات |
||
حالات الإهمال أو الإزالة أو التقييد المهمة |
||
اشتراط OpenSSL 1.1.1 أو أحدث |
||
إهمال وحدة distutils. |
غير ذي صلة |
|
إهمال العضو wstr في PyUnicodeObject والتحضير لإزالته. |
غير ذي صلة |
|
إزالة واجهات برمجة تطبيقات مُرمّز Py_UNICODE |
غير ذي صلة |
|
إضافة EncodingWarning اختياري |
||
تغييرات أخرى في اللغة:
أصبح للنوع |
|
أصبحت العروض التي تعيدها |
|
PEP 618: أصبح للدالة |
|
لم تعد الدوال المدمجة ودوال الامتدادات التي تأخذ وسائط أعدادًا صحيحة تقبل |
|
إذا أعادت |
|
يمكن الآن استخدام تعبيرات الإسناد دون أقواس داخل قيم المجموعات الحرفية واستيعابات المجموعات، وكذلك في فهارس التسلسلات (لكن ليس في الشرائح). |
|
أصبح للدوال سمة جديدة |
|
أُضيفت دالتان مدمجتان جديدتان -- |
|
أصبحت الطرق الساكنة ( |
|
لم تعد التعليقات التوضيحية للأهداف المركبة (كل شيء بخلاف أهداف |
|
أصبحت كائنات الأصناف والوحدات تنشئ الآن قواميس تعليقات توضيحية فارغة بشكل كسول عند الطلب. تُخزّن قواميس التعليقات التوضيحية في |
|
أصبحت التعليقات التوضيحية المكوّنة من |
|
أصبح استخدام المتغيرات غير المرتبطة و |
|
أصبحت قيم تجزئة (hashes) قيم NaN لكل من النوع |
|
سيُطلق استثناء |
|
أصبح لاستثناءات |
التغييرات على الوحدات المدمجة:
إضافة الطريقة المفقودة |
|
أصبح للطريقة |
|
إضافة خطافات تدقيق (audit hooks) لـ |
|
تتطلب وحدة hashlib الآن OpenSSL 1.1.1 أو أحدث. |
|
تمتلك وحدة hashlib دعمًا أوليًا لـ OpenSSL 3.0.0. |
|
أصبح البديل المكتوب بلغة Python بالكامل لـ |
|
إضافة دعم |
|
إضافة دالة جديدة |
|
إضافة |
|
إضافة |
|
إضافة |
|
أصبح الاستثناء |
|
إضافة خيار لإنشاء مقابس MPTCP باستخدام |
|
إضافة الخيار |
|
تتطلب وحدة ssl الآن OpenSSL 1.1.1 أو أحدث. |
|
تمتلك وحدة ssl دعمًا أوليًا لـ OpenSSL 3.0.0 وخيارًا جديدًا |
|
أصبحت الدالة المُهمَلة واستخدام الثوابت المُهمَلة ينتج عنهما الآن |
|
أصبحت وحدة ssl الآن تمتلك إعدادات افتراضية أكثر أمانًا. تُعطّل افتراضيًا الشيفرات التي تفتقر إلى السرية المستقبلية أو التي تستخدم MAC من نوع SHA-1. ويحظر مستوى الأمان 2 مفاتيح RSA و DH و ECC الضعيفة التي تقل عن 112 بت من الأمان. تتخذ |
|
لم تعد البروتوكولات المُهمَلة SSL 3.0 و TLS 1.0 و TLS 1.1 مدعومة رسميًا. ولا تحظرها Python بشكل فعّال. إلا أن خيارات بناء OpenSSL وإعدادات التوزيعات وتصحيحات المورّدين ومجموعات الشيفرات قد تمنع نجاح المصافحة (handshake). |
|
إضافة معامل timeout إلى الدالة |
|
تستخدم وحدة ssl أنواع الكومة (heap-types) والتهيئة متعددة المراحل. |
|
أُضيفت راية تحقق جديدة |
|
إضافة السمة |
|
إضافة |
|
أصبحت |
|
ملاحظات