پروگرامنگ ٻولي جو رليز Perl 5.30.0

ترقي جي 11 مهينن کان پوء جڳه ورتي پرل پروگرامنگ ٻولي جي هڪ نئين مستحڪم شاخ جو خلاصو - 5.30. نئين رليز تيار ڪرڻ ۾، ڪوڊ جون 620 هزار لائينون تبديل ڪيون ويون، تبديلين 1300 فائلن کي متاثر ڪيو، ۽ 58 ڊولپرز ترقي ۾ حصو ورتو.

برانچ 5.30 ڇھ سال اڳ منظور ٿيل طئي ٿيل ڊولپمينٽ شيڊول جي مطابق جاري ڪئي وئي، جنھن جو مطلب آھي سال ۾ ھڪ ڀيرو نيون مستحڪم شاخون جاري ڪرڻ ۽ اصلاحي رليز ھر ٽن مھينن ۾. اٽڪل هڪ مهيني ۾، پرل 5.30.1 جي پهرين اصلاحي رليز کي جاري ڪرڻ جي منصوبابندي ڪئي وئي آهي، جيڪا پرل 5.30.0 تي عمل ڪرڻ دوران سڃاڻپ ٿيل تمام اهم غلطين کي درست ڪندي. پرل 5.30 جي رليز سان گڏ، 5.26 برانچ جي سپورٽ کي بند ڪيو ويو، جنهن لاءِ تازه ڪاريون مستقبل ۾ جاري ٿي سگھن ٿيون صرف جيڪڏھن نازڪ سيڪيورٽي مسئلن جي نشاندهي ڪئي وڃي. تجرباتي برانچ 5.31 جي ترقي جو عمل پڻ شروع ٿي چڪو آهي، جنهن جي بنياد تي پرل 2020 جو هڪ مستحڪم رليز مئي 5.32 ۾ ٺاهيو ويندو.

کيل تبديل ڪريو:

  • "" آپريشن لاءِ تجرباتي سپورٽ باقاعده ايڪسپريس ۾ شامل ڪئي وئي آھي.(؟ ‹! نمونو)"۽"(؟ ‹ = نمونو)»اڳين پروسيس ٿيل نالي سان ٺهيل ٽيمپليٽس تائين محدود رسائي لاءِ. نموني جي وصف ريفرنس پوائنٽ جي 255 اکرن جي اندر هجڻ گهرجي؛
  • “{m,n}” ريگولر ايڪسپريس بلاڪ ۾ سائيز جي وضاحت ڪندڙ (“n”) جي وڌ ۾ وڌ قدر 65534 تائين وڌي وئي آهي.
  • شامل ٿيل محدود حمايت مختلف يونيڪوڊ سيٽن کي ڍڪيندي، باقاعده اظهار ۾ ڪردارن جي مخصوص ڪيٽيگريز کي اجاگر ڪرڻ لاءِ ماسڪ. مثال طور، اظهار "qr! \p{nv= /(?x) \A [0-5] \z / }!” توھان کي سڀني يونيڪوڊ اکرن کي چونڊڻ جي اجازت ڏئي ٿو جيڪي انگن اکرن کي 0 کان 5 تائين بيان ڪن ٿا، بشمول انگن جي ٿائي يا بنگالي اسپيلنگ؛
  • باقاعده اظهار ۾ نامزد ڪيل ڪردارن لاءِ سپورٽ شامل ڪئي وئي
    اندر جا نمونا الڳ الڳ حوالن سان (qr'\N{name}')؛

  • يونيڪوڊ وضاحتن جي حمايت ورزن ۾ اپڊيٽ ڪئي وئي 12.1. تجرباتي ترقي جي پرچم ڪالن مان هٽايو ويو آهي sv_utf8_downgrade ۽ sv_utf8_decode, سي ٻولي ۾ واڌارو جي ترقي ۾ استعمال;
  • پرل ٺاهڻ جي صلاحيت شامل ڪئي وئي آهي عملن جي عمل سان مقامي جڳه سان جيڪو ملٽي ٿريڊ آپريشن کي سپورٽ ڪري ٿو (-Accflags='-DUSE_THREAD_SAFE_LOCALE'). اڳي، اهڙي عمل کي صرف استعمال ڪيو ويندو هو جڏهن پرل جي گهڻن موضوعن واري ورزن کي تعمير ڪندي، پر هاڻي ڪنهن به تعمير لاء فعال ٿي سگهي ٿو؛
  • "-Dv" (وڌايو ويو ڊيبگنگ آئوٽ پُٽ) ۽ "-Dr" (ريجڪس ڊيبگنگ) جھنڊن کي گڏ ڪرڻ سان ھاڻي سڀ ممڪن ريگيولر ايڪسپريشن ڊيبگنگ موڊس کي فعال ٿيڻ جو سبب بڻجن ٿا.
  • خاصيتون جيڪي اڳ ۾ ختم ڪيون ويون آهن ختم ڪيون ويون آهن:
    • ھاڻي دستياب آھي لائين جدا ڪندڙ ۽ وائلڊ ڪارڊ ڪردارن جي طور تي اجازت صرف استعمال ڪريو گرافڪس (جامع يونيڪوڊ اکرن جي اجازت نه آهي).
    • بند ٿيل "{" اکر کي باقاعده اظهار ۾ استعمال ڪرڻ جي ڪجهه ڊگھي-پريشان ٿيل شڪلن لاءِ مدد ڪريو ان کان بچڻ کان سواءِ.
    • Запрещено استعمال ڪندي sysread(), syswrite(), recv() ۽ send() افعال ":utf8" ھينڊلر سان.
    • اهو ممنوع آهي "منهنجو" جي وصفن کي موروثي طور تي غلط شرطي بيانن ۾ استعمال ڪرڻ (مثال طور، "منهنجو $ x جيڪڏهن 0").
    • خاص متغيرن لاءِ سپورٽ “$*” ۽ “$#” ختم ڪئي وئي آهي.
      ڊمپ() فنڪشن جي ضمني ڪالنگ لاءِ سپورٽ بند ڪئي وئي آهي (توهان کي هاڻي واضح طور تي واضح ڪرڻ گهرجي CORE::dump()).

    • فائل::Glob::glob فنڪشن کي هٽايو ويو آهي (توهان کي فائل::Glob::bsd_glob استعمال ڪرڻ گهرجي).
    • غلط يونيڪوڊ تسلسل واپس ڪرڻ جي خلاف pack() ۾ تحفظ شامل ڪيو ويو.
    • ميڪروس جي استعمال لاءِ سپورٽ جو خاتمو جيڪو UTF-8 سان XS ڪوڊ (سي بلاڪ) ۾ آپريشن ڪندو آهي ايندڙ رليز تائين ملتوي ڪيو ويو آهي.
  • ڪارڪردگي جي اصلاح:
    • UTF-8 کان ڪردار جي ترتيب تائين ترجمي جي عملن کي تيز ڪيو ويو آهي (ڪوڊ پوائنٽ)، مثال طور، آرڊر ("\x7fff") آپريشن کي انجام ڏيڻ لاءِ ھاڻي 12٪ گھٽ ھدايتن جي ضرورت آھي. UTF-8 ڪردار جي ترتيبن جي درستگي کي جانچڻ واري عملن جي ڪارڪردگي کي پڻ وڌايو ويو آهي؛
    • finalize_op() فنڪشن ۾ بار بار ڪالون ختم ڪيون ويون آهن؛
    • هڪجهڙائي واري اکرن کي ختم ڪرڻ ۽ باقاعده اظهار ۾ ڪردار جي ڪلاسن جي وضاحت ڪرڻ لاءِ ڪوڊ ۾ معمولي اصلاحون ڪيون؛
    • اصلاح ٿيل دستخط ٿيل قسم جي وصفن کي غير دستخط ٿيل (IV کان UV) ۾ تبديل ڪرڻ؛
    • انٽيجرز کي اسٽرنگ ۾ تبديل ڪرڻ لاءِ الگورٿم کي تيز ڪيو ويو آهي ٻن عددن کي هڪ جي بدران هڪ ئي وقت تي پروسيس ڪندي؛
    • سڌارا ڪيا ويا آهن تيار ڪيل LGTM پاران تجزيو جي بنياد تي؛
    • regcomp.c، regcomp.h ۽ regexec.c فائلن ۾ اصلاحي ڪوڊ؛
    • باقاعده اظهار ۾، نمونن جي پروسيسنگ جهڙوڪ "qr/[^a]/" ASCII اکرن سان خاص طور تي تيز ٿي وئي آهي.
  • Minix3 پليٽ فارم جي حمايت بحال ڪئي وئي آهي. اهو ممڪن آهي ته Microsoft Visual Studio 2019 مرتب ڪندڙ (Visual C++ 14.2) استعمال ڪندي تعمير ڪرڻ؛
  • بنيادي پيڪيج ۾ شامل ڪيل ماڊلز جا اپڊيٽ ورجن. ماڊلز کي مکيه ساخت مان هٽايو ويو آهي ب:: ڊيبگ и جڳھ::ڪوڊز.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو