40 ڏينهن جي ترقيءَ کان پوءِ، مستحڪم طور تي ٽائپ ڪيل پروگرامنگ ٻولي V (vlang) جو نئون نسخو شايع ڪيو ويو آهي. V ٺاهڻ جا بنيادي مقصد سکيا ۽ استعمال ۾ آساني، اعليٰ پڙهڻ جي صلاحيت، تيز تاليف، سيڪيورٽي وڌائڻ، موثر ترقي، ڪراس پليٽ فارم جو استعمال، سي ٻوليءَ سان بهتر انٽرآپريبلٽي، بهتر غلطي سنڀالڻ، جديد صلاحيتون، ۽ وڌيڪ برقرار رکڻ وارا پروگرام هئا. گڏ ڪرڻ وارو ڪوڊ، لائبريريون ۽ لاڳاپيل اوزار MIT لائسنس تحت کليل آهن.
نئين نسخي ۾:
- ٻولي جي واڌاري:
- نئون ماڊل “encoding.xml parser سان، تصديق، يونٽ ٽيسٽ.
- couroutines لاء بهتر حمايت (IO، نيٽ ورڪ).
- vweb ايپليڪيشنن ۾ ميموري مختص ڪرڻ واري عمل کي 80٪ گھٽايو.
- "C.V_CURRENT_COMMIT_HASH" کي تبديل ڪرڻ لاءِ "@VCURRENTHASH" جو نفاذ.
- نئين قسم جي int جي واڌاري شروع ڪئي وئي آهي، i64 قسم سان لاڳاپيل (اڳ ۾، int قسم جي سڃاڻپ i32 قسم سان ڪئي وئي هئي).
- نئين int قسم ۽ اصلاحي ڪوڊ نسل لاءِ مقرر ٿيل قسم جي چڪاس جا ضابطا.
- API تبديليون جيڪي مطابقت کي ٽوڙيو:
- "Request.cookies" ڊڪشنري ختم ڪئي وئي آهي. "Request.cookie()" ۽ "Request.add_cookie()" طرفان تبديل ٿيل.
- سي قسمن لاءِ سخت ضابطا، جن کي ھاڻي ھاڻي قرار ڏنو وڃي.
- قسم چيڪنگ سسٽم تبديليون:
- اختيار/نتيجن جي تقسيم بابت خبرداري کي غلطي جي درجي ۾ منتقل ڪيو ويو آهي.
- آٽو فري موڊ ۾ اختياري دليل سان "fn" ڪالنگ کي درست ڪريو.
- نالو ڏيڻ جي چڪاس واپس آئي آهي: پاسڪل ڪيس عرف لاءِ.
- C.xx = C.yy عرف.
- انٽيجر جي قسمن جي ڪاسٽ ڪرڻ جي اجازت ڏيو جيئن رياضي بلاڪ ۾ رينج.
- بائيٽ قسم جي فرسودگي بابت خبردار (u8 قسم جي حق ۾) جڏهن استعمال ڪيو ويو fn پيٽرولر طور.
- عام صفن لاءِ ضميمه جو طريقو درست ڪريو.
- ٻئي ماڊل جي پرائيويٽ انٽرفيس کي لاڳو ڪرڻ ۾ غلطي جي چڪاس.
- ناڪاري ڪيپ ۽ لين جي قيمتن لاءِ مقرر ٿيل چيڪنگ جڏهن هڪ صف کي شروع ڪندي.
- نقل ٿيل var ۽ param module نالن جي باري ۾ خبرداري کي غلطي ۾ تبديل ڪرڻ.
- مڪمل شيئر ٿيل متغير کي ٻيهر ڏيڻ جي اجازت ڏيو (جڏهن ته ميوٽڪس جي پوئين حالت کي برقرار رکڻ).
- تجزيه بهتري:
- گمنام ڪمن لاءِ جامد طريقو مقرر ڪيو ويو.
- ast: مقرر ٿيل فارميٽنگ struct اعلان جي nested جوڙجڪ سان.
- شامل ڪيو ويو set_all + clear_all طريقا "[flag]" bitfields ۾.
- غير استعمال ٿيل درآمدن جي باري ۾ خبردار ڪريو، جيتوڻيڪ اهي "import math { sin, cos }" سان اعلان ڪيا ويا آهن.
- مرتب ڪندڙ تبديليون:
- checker, builder, pref: "-dump-defines" جھنڊو کي سپورٽ ڪريو ھڪڙي پروگرام لاءِ موجود سڀني صارفن ۽ سسٽم جي وصفن کي ڏسڻ لاءِ.
- نقشا: شامل ڪيا ويا maps.merge() ۽ maps.merge_in_place() افعال.
- معياري لائبريري:
- بلٽ ان: شامل ڪيو ويو "غير محفوظ { a.reset() }" طريقو جلدي سيٽ ۾ سڀني بائيٽ کي 0 تي ترتيب ڏيڻ لاء.
- math.fractions: آپريٽر اوورلوڊنگ استعمال ڪريو ۽ پراڻن ڪمن کي ڇڏي ڏيو.
- gg: ميڪوس ۽ لينڪس تي draw_rounded_rect_empty ھيٺئين سرحد جي ترتيب کي درست ڪريو.
- crypto.bcrypt: bcrypt ۾ درست ٿيل بگ.
- sokol: تازو ورزن ڏانهن اپڊيٽ ڪيو ويو
- بلٽ ان: مقرر ڪيل سائيز (C.BOOL) (ونڊوز مخصوص).
- math.big: ناڪاري انگن سان غلط ڊويزن کي درست ڪريو.
- os: ڪجھ سسٽم سگنلن کي نظرانداز ڪرڻ لاءِ آسان رستو شامل ڪيو ويو.
- os: ونڊوز ۾ os.ls (فولڊر) کي درست ڪريو جڏهن محفوظ ڊاريڪٽري کي کوليو نه ٿو وڃي.
- crypto.sha/md5/: sha1/256/512 لاءِ .sum() کي ڪيترائي ڀيرا ڪال ڪرڻ وقت ساڳيا هيش ويلز جو مقرر ڪيل حساب.
- os: لاڳو ڪيو ويو os.fd_is_pending/1، os.Process.pipe_read/1، os.Process.is_pending/1.
- json2: شامل ڪيل سپورٽ nested جوڙجڪ لاء.
- ويب
- vweb: جامد .md فائلن لاءِ mime قسم شامل ڪيا ويا.
- net.conv: rfc-64 (QUIC لاءِ) ۾ بيان ڪيل غير دستخط ٿيل انٽيجرز جي متغير انڪوڊنگ لاءِ شامل ڪيل افعال varinttou64 ۽ u9000tovarint.
- net.http: http.Server{} ۾ on_running، on_stopped، on_closed ڪال بڪ افعال جي وضاحت ڪرڻ لاءِ سپورٽ، گڏوگڏ show_startup_message: false.
- net.http: HTTP پراڪسي پاسٿرو سپورٽسرور http.fetch ۾.
- net.http: ساکٽ جي ناگزير غلطين لاءِ http.fetch() ۾ ٻيهر ڪوشش جو طريقو شامل ڪريو.
- wasm: لاڳو ٿيل ان لائن اسيمبلي.
- net.http: max_redirects قدر وڌائي 16 تائين.
- picoev: فائل وضاحت ڪندڙن سان سڌو ڪم لاء خام موڊ تي عمل درآمد.
- net.http: يونڪس جهڙو سسٽم لاءِ ساڪس5 ۽ http(s) پراڪسز لاءِ شامل ڪيل سپورٽ.
- ORM:
- orm: null ويلز ۽ اختياري شعبن جو شامل ڪيل سنڀال.
- orm: is_null/is_not_null آپريشنز غير منظم ڪيا ويا آھن.
- ڊيٽابيس ڊرائيور:
- pg: سي ڪالز کي .cv فائلن ۾ منتقل ڪيو ويو آهي.
- اصلي پس منظر:
- ڏيهي: سپورٽ -no-builtin پرچم (پيدا ڪريو <1KB لينڪس ايگزيڪيوٽوبل "v -no-builtin -b اصلي مثالن/hello_world.v" سان).
- اصلي: int جي بدران i32 استعمال ڪريو.
- سي پس منظر:
- ast، native، cgen: شامل ڪيل سپورٽ لاءِ "$ if native {}".
- vfmt:
- ھاڻي ھٽائي ٿو اضافي لائن برڪ ڪال_expr کان پوءِ ۽ ساخت جي دليلن کان اڳ.
- Uft8 اکرن سان ڪنجيون استعمال ڪرڻ وقت مقرر قدر جي ترتيب.
- Const بلاڪ ۾ ٽيرنري اظهار جي ترتيب.
- اوزار:
- رن ٽائم تي @FILE ۽ @LINE کي گڏ ڪرڻ کان سواءِ ڊيبگنگ کي آسان بڻائڻ لاءِ @LOCATION سپورٽ شامل ڪئي وئي.
- بينچ مارڪ: شامل ڪيا نوان طريقا b.record_measure/1 ۽ b.all_recorded_measures/0.
- ci: github workflow c2v اپڊيٽ ڪيو ويو.
- strings: شامل ڪيو ويو Bulder.write_decimal/1 طريقو (ڏسيل نمبر لکڻ لاءِ، بغير اضافي مختص ڪرڻ جي).
- وي پي ايم (ونڊوز) استعمال ڪندي موجوده ماڊل جي تنصيب کي مقرر ڪيو ويو آهي.
- tools.vpm: ".git" ۾ ختم ٿيندڙ ايڊريس سان بهتر ڪم.
- شامل ڪيل ضرورت v.mod فائل لاءِ ماڊلز کي انسٽال ڪرڻ لاءِ ٻاهرين لنڪ ذريعي vpm استعمال ڪندي.
جو ذريعو: opennet.ru
