پوسٹس
avatar

اسمارٹ کنٹریکٹ ماکس، آپ کا سولڈیٹی کمپائلر شاید ایک ایسا اسٹور حذف کر چکا ہو جس کی آپ کو ضرورت تھی، اور آپ اسے اپنے سورس میں کبھی نہیں دیکھ پائے گے۔ سولڈیٹی 0.8.38 گزشتہ جمعرات کو جاری ہوئی۔ یہ Yul آپٹیمائزر میں ایک خطا کو درست کرتی ہے جو 0.8.19 سے لے کر 0.8.37 تک ہر ریلیز میں موجود تھا۔ آپٹیمائزر میموری اور اسٹوریج میں کیا موجود ہے، اس کے بارے میں نوٹس رکھتا ہے۔ وہ ان نوٹس کا استعمال کرتا ہے تاکہ ایک لوڈ کو اس کے پہلے سے جانے ہوئے اقدار سے تبدیل کر دے، اور اس اسٹور کو نظرانداز کر دے جو پہلے سے موجود چیز لکھ رہا ہو۔ دو اڈریسز کے اوورلیپ ہونے کا فیصلہ کرنے کے لیے، وہ ہر ایک کو ایک بنیادی متغیر جمع ایک آف سیٹ کے طور پر بیان کرتا ہے۔ ایک ہی بنیاد، مختلف آف سیٹ، تو وہ ضرور الگ سلوٹس ہوں گے۔ ان تفصیلات کو کیش کر لیا جاتا تھا۔ پھر کسی نے بنیادی متغیر کو دوبارہ متعین کر دیا۔ آپٹیمائزر ہمیشہ اس بات کا خیال نہیں رکھتا۔ اب وہ پرانے اقدار سے بنائے گئے اڈریس کو نئے اقدار سے بنائے گئے اڈریس کے ساتھ ت порت کرتا ہے، جیسے دونوں ایک ہی بنیاد شیرت کرتے ہوں۔ وہ فیصلہ کرتا ہے کہ وہ مختلف ہیں، لیکن رن ٹائم پر وہ ایک ہی جگہ کو اشارہ کرتے ہیں۔ نتیجہ ایک پرانا نوٹ ہوتا ہے۔ بعد میں لوڈ کرنے پر پرانا اقدار واپس آ سکتے ہیں۔ آپ کو ضرورت والی اسٹور حذف ہو سکتی ہے۔ اس جگہ پر keccak256 پرانا ڈیٹا ہاش کر سکتا ہے۔ صرف آپٹیمائزر آن والے کوڈ متاثر ہوتے ہیں۔ via-IR کے ساتھ، کوئ بھی کوڈ اس سے متاثر ہو سکتا ہے، حتٰى کہ ان لائن اسمبلی کے بغیر بھی۔ ڈفالٹ لیگسی پائپ لائن کے ساتھ، صرف بعض ان لائن اسمبلی اور کمپائلر جنریٹڈ ہيلپرز۔ آپٹمائزڈ نہ بنائے گئے بِلڈز محفوظ ہوتے ہیں۔ ٹیم نے اسے کم شدت والے خطا قرار دیا، اور انھوں نے وہ کام کیا جو ميں چاhta ہوں کہ ہر کمپائلر ٹیم کرے۔ انھوں نے Sourcify ڈे�ٹابیس میں موجود تمام تصدیق شدہ اسمارٹ کنٹریکٹس کو فکس کے ساتھ اور بغیر فکس کے دوبارہ کمپائل کیا، اور ان سب ميں بائٹ کوڈ مطابق تھا۔ تو �ہ نایاب ہے۔ نایاب کا مطلب یہ نہيں کہ کبھي نهيں، خاص طور پر اگر آپ کا کوڈ تازہ ہو اور ابھي تک ڈپلوئڈ نہيں ہوا ہو۔ اس خطا کا پتہ لگانے والا Ethereum Foundation بگ بونٹي سے آيا، اور دوسرا رپورٹ دکھاتا ہے کہ اسمبلی کے بغیر عام سولڈیٹي بھي اسے فعال کر سکتى ہے۔

یہ مواد صرف معلوماتی اور تعلیمی مقاصد کے لیے ہے۔ اس میں فریقِ ثالث کے تجزیے، اسپانسر شدہ مواد، یا تشہیری مواد شامل ہو سکتا ہے جس کے لیے تخلیق کار کو معاوضہ مل سکتا ہے۔ اس فیڈ میں موجود کوئی بھی چیز سرمایہ کاری کا مشورہ یا منافع کی ضمانت نہیں ہے۔ آپ اپنے سرمایہ کاری کے فیصلوں کے لیے خود ذمہ دار ہیں۔ تجارت سے پہلے ہمیشہ اپنی تحقیق کریں اور احتیاط برتیں۔ ہم فریقِ ثالث کی معلومات کی درستگی کی ضمانت نہیں دیتے اور کسی بھی نقصان کے ذمہ دار نہیں ہیں۔ ماضی کی کارکردگی مستقبل کے نتائج کی ضمانت نہیں ہے۔ براہ کرم تفصیلات کے لیے ہماری کمیونٹی شرائط اور خطرے کے انکشاف کا بیان ملاحظہ کریں۔

avatarاپنا جواب پوسٹ کریں۔

تبصرہ