Solidity 0.8.38 نے Yul آپٹیمائزر کا ایک بگ درست کیا اور کمپائلیشن کو بہتر بنایا

Solidity 0.8.38 میں Yul optimizer کے ایک کم شدت والے بگ کو درست کیا گیا ہے۔ جب ایڈریس سے متعلق متغیرات کو دوبارہ اسائن کیا جاتا تھا تو اس بگ کے باعث لوڈ کے نتائج غلط طور پر تبدیل ہو سکتے تھے، یا اسٹوریج اور میموری میں ضروری تحریری کارروائیاں حذف ہو سکتی تھیں۔ Yul optimizer فعال ہونے کی صورت میں یہ مسئلہ Solidity کے ورژن 0.8.19 سے 0.8.37 تک متاثر کرتا تھا۔ ریلیز نوٹس کے مطابق اس بگ کے استحصال کا کوئی ثبوت نہیں ملا۔ Sourcify سے تصدیق شدہ کنٹریکٹس پر کیے گئے ٹیسٹوں میں بائٹ کوڈ کی کوئی تبدیلی نہیں دیکھی گئی، جس سے ظاہر ہوتا ہے کہ یہ بگ غیر معمولی تھا، اگرچہ عام Solidity کوڈ بھی اسے inline assembly کے بغیر متحرک کر سکتا تھا۔ Solidity 0.8.38 کی ریلیز میں DataFlowAnalyzer کی کارکردگی بہتر بنا کر Yul-optimized compilation کو بھی تیز کیا گیا ہے، اور IR function dispatcher میں ایک ہدایت کم کی گئی ہے۔ یہ آنے والی Amsterdam EVM تبدیلیوں کی تیاری کرتی ہے اور خبردار کرتی ہے کہ Yul identifiers swapn، dupn اور exchange محفوظ الفاظ بن جائیں گے۔ دیگر اپ ڈیٹس میں کمانڈ لائن اور Standard JSON انٹرفیس میں تبدیلیاں، اضافی اصلاحات، اور تجرباتی Yul CFG آؤٹ پٹس کا خاتمہ شامل ہے۔ کمپائلر کی یہ ریلیز GitHub پر دستیاب ہے۔ یہ سکیورٹی اصلاح اسمارٹ کنٹریکٹ ڈویلپرز اور Ethereum انفراسٹرکچر کے لیے اہم ہے، لیکن خود اس ریلیز سے ETH کی مارکیٹ کے بنیادی عوامل میں براہِ راست تبدیلی ظاہر نہیں ہوتی۔
Neutral
یہ ریلیز کمپائلر کے ایک سیکیورٹی مسئلے کو حل کرتی ہے اور کمپائلیشن کی کارکردگی بہتر بناتی ہے، لیکن دونوں میں سے کسی خلاصے میں استحصال، بائٹ کوڈ میں وسیع پیمانے پر تبدیلیوں یا ایتھیریم نیٹ ورک کی سرگرمی پر فوری اثر کی اطلاع نہیں دی گئی۔ اس لیے ETH کی قیمت پر براہِ راست اثر غالباً محدود ہوگا۔ قلیل مدت میں، اس انکشاف سے ڈیولپرز کمپائلر کے ورژنز کا جائزہ لینے اور متاثرہ پروجیکٹس کو اپ ڈیٹ کرنے کی طرف مائل ہو سکتے ہیں، جبکہ ٹریڈرز شاید اس پر زیادہ توجہ نہ دیں، جب تک یہ شواہد سامنے نہ آئیں کہ پہلے سے تعینات کنٹریکٹس متاثر ہوئے ہیں۔ طویل مدت میں، آپٹیمائزر کے بگ کو درست کرنا اور ٹولنگ بہتر بنانا ایتھیریم کے ڈیولپمنٹ ایکو سسٹم پر اعتماد کو تقویت دے سکتا ہے۔ تاہم، صرف کمپائلر اپ ڈیٹس قیمت کی سمت متعین کرنے والا کوئی مضبوط محرک نہیں ہیں؛ وسیع تر مارکیٹ کے حالات، ETH کی آمد و رفت، نیٹ ورک کا استعمال اور ضابطہ جاتی پیش رفت زیادہ امکان ہے کہ ٹریڈنگ کو متاثر کریں۔ مجموعی طور پر، اس خبر کو ETH کے لیے غیر جانب دار سمجھنا ہی مناسب ہے۔