بعد مرور عام على إصدار بيرل 5.28.0، تم الإصدار بيرل 5.30.0.
تغييرات مهمة:
- تمت إضافة دعم لإصدارات Unicode 11 و12 والمسودة 12.1؛
- تمت مضاعفة الحد الأعلى "n" الوارد في محدد كمية التعبير العادي بالشكل "{m, n}" إلى 65534؛
- أصبحت الأحرف الأولية في مواصفات قيمة خاصية Unicode مدعومة جزئيًا الآن؛
- تمت إضافة دعم لـ qr'N{name}';
- يمكن الآن تجميع لغة Perl لاستخدام العمليات الآمنة لمؤشر الترابط المحلي دائمًا؛
- الطول المتغير المحدود مقابل نمط التعبير العادي مدعوم الآن بشكل تجريبي؛
- يتم الآن استخدام طريقة أسرع للتحويل إلى UTF-8؛
- يتم الآن دعم لغات UTF-8 التركية دون مشاكل؛
- تمت إزالة استخدام الماكرو opASSIGN من النواة؛
الوظائف التي تمت إزالتها والتغييرات غير المتوافقة:
- الوحدات التي تمت إزالتها: Math::BigInt::CalcEmu, arybase, Locale::Code, B::Debug;
- يجب أن تكون فواصل الأنماط الآن عبارة عن وحدات بيانية؛
- يجب أن تكون الفواصل الآن عبارة عن وحدات بيانية؛
- بعض الاستخدامات التي تم إهمالها سابقًا للقوس الأيسر الذي لم يتم إلغاؤه "{" في أنماط التعبير العادي أصبحت محظورة الآن؛
- تعيين قيمة غير الصفر إلى $[ (فهرس عنصر المصفوفة الأول) أصبح الآن أمرًا قاتلاً؛
- تم إهمال sysread()/syswrite() سابقًا عند التعامل مع :utf8 أصبح الآن أمرًا قاتلاً.
- تم الآن تعطيل my() في الظروف الخاطئة؛
- مهمل $* (متغير يستخدم لتمكين المطابقة المتعددة الأسطر وتمت إزالته في Perl v5.10.0) و $# (متغير يستخدم لتنسيق أرقام المخرجات وتمت إزالته في Perl v5.10.);
- تم إهمال الاستخدام غير المشروط لـ dump();
- تمت إزالة الملف::Glob::glob();
- لم يعد بإمكان pack() إرجاع UTF-8 غير صالح؛
- أي مجموعة من الأرقام في برنامج نصي عام تكون صالحة في برنامج نصي يتم تنفيذه بواسطة برنامج نصي آخر؛
- يتضمن JSON::PPallow_nonref بشكل افتراضي؛
الوظيفة المهملة:
- لم يعد بإمكانك استخدام وحدات ماكرو متنوعة تتعامل مع UTF-8 في كود XS؛
المصدر: linux.org.ru

