عاجل
فليك في ورطة.. هل ينقذه حمزة عبدالكريم؟المصري وسيراميكا وجهاً لوجه.. كل ما تريد معرفته عن المباراة والقنوات الناقلةموعد مباراة بيراميدز فى مواجهة القناة والقنوات الناقلةبداية نارية.. تشكيل المصري المتوقع أمام سيراميكا في كأس عاصمة مصرأسعار البيض والفراخ اليوم الأربعاء 7 أكتوبر 2026.. استقرار الكرتونة بالأسواقأسعار الدواجن اليوم الأربعاء 7 أكتوبر 2026.. الفراخ البيضاء عند 87 جنيها للمستهلكسعر الذهب في محلات المجوهرات اليوم الأربعاء 7 أكتوبر 2026موعد مباراة الأهلي اليوم أمام بترول أسيوط.. وموقف الفريق قبل القمة 133
الإضافة إلى المصادر المفضلة

تضرر ملايين مشاريع جافا سكريبت بسبب تحديث لمكتبة صغيرة

2020/04/28

تسبب تحديث لمكتبة جافا سكريبت JavaScript الصغيرة بتأثر جزء كبير من نظام جافا سكريبت البيئي، ويعتقد أن ملايين المشاريع قد تأثرت، ونجمت المشكلة عن مكتبة جافا سكريبت الأحادية السطر، مما يعني أن هذه هي المرة الثانية التي يتسبب فيها مشروع جافا سكريبت صغير بحدوث مشكلات واسعة النطاق.

وتسمى الحزمة التي تسببت بالمشكلة (is-promise)، وتتكون المكتبة من سطرين من التعليمات البرمجية المصدرية، ويمكن للمطورين استخدامها في مشاريعهم عبر استدعاء أحادي السطر للسماح لهم باختبار كون كائن جافا سكريبت هو “Promise“، مع إرجاع الدالة لنتيجة منطقية بنعم أو لا عند استخدامها.

وبالرغم من كون الحزمة مكونة من سطرين فقط من التعليمات البرمجية التي تجري فحصًا أساسيًا، فإن مكتبة (is-promise) هي واحدة من حزم جافا سكريبت الأكثر شيوعًا (المكتبات) ضمن مدير الحزم (npm)، وهو مدير الحزم الافتراضي لبيئة تشغيل (JavaScript Node.js).

ووفقًا لمنصة (GitHub)، فإن المكتبة تعد جزءًا من أكثر من 3.4 ملايين مشروع، وتعتمد عليها 766 مكتبة جافا سكريبت أخرى.

وجرى تحديث مكتبة (is-promised) قبل عدة أيام لتلقي الدعم للعمل كوحدة (ES)، وهو نظام الوحدة المعياري الذي تستخدمه لغة جافا سكريبت، ومع ذلك، لم تلتزم النسخة 2.2.0 من (is-promise) بمعايير وحدة (ES) المناسبة.

وبدأت المشاريع التي استخدمت مكتبة (is-promised) بالفشل بسبب الدعم غير المناسب لوحدة (ES)، وجرى ملاحظة تأثير الخطأ بشكل فوري، بحيث تأثرت قواعد برمجة جافا سكريبت ذات المصدر المغلق وصولًا لبعض أكبر مشاريع نظام جافا سكريبت البيئي.

وبالرغم من أن الخطأ لم يعطل المشاريع الحالية، لكنه منع المطورين من تجميع إصدارات جديدة من المشاريع، وتضمن ذلك تطبيق (Create React) من فيسبوك Facebook، وإطار عمل (Angular.js) من جوجل، وأدوات (Firebasse) من جوجل، و (AWS Serverless CLI) من أمازون.

وأصدر فريق مكتبة (is-promised) تحديثًا لكنه لم يتمكن من إصلاح المشكلة، وتراجع الفريق في نهاية المطاف عن دعم وحدة (ES) في النسخة 2.2.2.

ويمثل هذا الحادث ثاني حادث تتسبب فيه مكتبة جافا سكريبت الصغيرة بحدوث مشكلات في نظام جافا سكريبت البيئي، وحدث شيء مماثل في شهر مارس 2016، عندما قرر مؤلف مكتبة جافا سكريبت المسماة (left-pad) إلغاء نشر المكتبة المكونة من 17 سطرًا من التعليمات البرمجية، مما تسبب بتعطل آلاف المشاريع.

وكما حدث في عام 2016، فقد أثارت حادثة مكتبة (is-promised) الأسئلة، وبدأت المناقشات حول الحاجة إلى وجود مكتبات أحادية السطر في النظام البيئي.

✎

فريق تحرير بوابة مصر الجديدة

فريق تحرير بوابة مصر الجديدة خبرة في الصحافة الإلكترونية وإعداد وتحرير التقارير الاقتصادية، وفي صياغة المحتوى وفق معايير تحسين محركات البحث (SEO) يتابع الحدث لحظة وقوعه ويتابع كافة أخبار مصر والعالم العربي علي مدار 24 ساعة بدقة وإحترافية

تابعوا آخر الأخبار العربية والعالمية، وآخر المستجدات السياسية والاقتصادية والرياضية أولًا بأول عبر جوجل نيوز

أخبار ذات صلة