دورة حياة النسخ

This page is a translated version of the page Version lifecycle and the translation is 100% complete.

تتبع برمجيات ميدياويكي نموذج تطوير برمجيات «يستند إلى الدمج المستمر»، حيث تصبح التغييرات التي تطرأ على البرمجيات مباشرة على مواقع وب ويكيميديا مثل ويكيبيديا بصفة منتظمة.

تصدر الإصدارات الجديدة الكبرى من الناحية النظرية على أساس نصف سنوي، وتحصل أفرع الإصدار على تحديثات أمنية لمدة تصل إلى سنة واحدة من أول إصدار لها. بسبب ضيق الوقت وسرعة التغيير الذي يطرأ على الكود المصدر، لا يمكننا تقديم الدعم للإصدارات المتقادمة إلى الأبد، كما أن التحديثات الأمنية والحيوية لا تطبق على الإصدارات التي وصلت إلى حالة نهاية حياتها النافعة.

يحبذ بشدة مدير الإصدارات أن يشترك مشغلي مواقع الويكي في ‎mediawiki-announce، التي ترسل إليها إشعارات بكافة الإصدارات، وتضمن أن مواقعهم الويكي تشغل أحدث نسخة ممكنة من البرمجيات. تنشر هذه الإشعارات أيضا على القائمتين البريديتين ‎mediawiki-l و ‎wikitech-l.

النسخ ونهاية حياتها النافعة

من أجل التاريخ كاملا، اذهب إلى: w:MediaWiki version history.
النسخة الحالة الإصدار نهاية الحياة النافعة
1.43.x نسخة دعم قادم طويل الأجل
1.42.x نسخة قادمة
1.41.x النسخة المستقرة الحالية
1.40.x إصدار قديم
1.39.x (LTS) نسخة دعم حالي طويل الأجل
1.38.x نسخة متقادمة

النسخ المبينة في الجدول سالف الذكر الموسومة بكلمة متقادمة والنسخ غير المدرجة على الإطلاق لن تحصل على أية إصلاحات أمنية. هذا الأمر يشمل أيضًا كافة النسخ الأقدم من أقدم نسخة مذكورة في القائمة. قد تحتوي على نقاط ضعف أمنية خطيرة وأعطال برمجية كبيرة أخرى، تشمل مخاطر احتمال ضياع البيانات أو فسادها أو كليهما. كما أصدر مدير الإصدارات أيضا توصية شديدة أن تستخدم فقط النسخ المدرجة فيما سبق الموسومة بوسم «نسخة مستقرة» أو «نسخة قديمة» أو «دعم طويل الأجل» في بيئات الإنتاج.

Special:MyLanguage/MediaWiki 1.19Special:MyLanguage/MediaWiki 1.20Special:MyLanguage/MediaWiki 1.21Special:MyLanguage/MediaWiki 1.22Special:MyLanguage/MediaWiki 1.23Special:MyLanguage/MediaWiki 1.24Special:MyLanguage/MediaWiki 1.25Special:MyLanguage/MediaWiki 1.26Special:MyLanguage/MediaWiki 1.27Special:MyLanguage/MediaWiki 1.28Special:MyLanguage/MediaWiki 1.29Special:MyLanguage/MediaWiki 1.30Special:MyLanguage/MediaWiki 1.31Special:MyLanguage/MediaWiki 1.32Special:MyLanguage/MediaWiki 1.33Special:MyLanguage/MediaWiki 1.34Special:MyLanguage/MediaWiki 1.35Special:MyLanguage/MediaWiki 1.36Special:MyLanguage/MediaWiki 1.37Special:MyLanguage/MediaWiki 1.38Special:MyLanguage/MediaWiki 1.39Special:MyLanguage/MediaWiki 1.40Special:MyLanguage/MediaWiki 1.41Special:MyLanguage/MediaWiki 1.42
الجدول الزمني لإصدارات ميدياويكي
  •   تطوير برمجيات ألفا
  •   تطوير برمجيات للإصدار
  •   إصدار مستقر
  •   إصدار دعم طويل الأجل


سياسة الإصدار

  • سوف تشتمل كل نقطة إصدار على ملفات تدويل محدثّة وكذلك أي إصلاحات تستهدف أعطال برمجية. لن تصمم السمات الجديدة لتلائم نقاط إصدار قديمة ولن يشمل الدعم بالضرورة الامتدادات والسمات المحزومة بوجه عام.
  • سوف يصدر إصدار كبير مرة واحدة كل ستة أشهر.
  • سوف يصدر إصدار محدود (يشتمل على رقعات أمان وترجمات رسائل محدثة وأعمال تصويب أخطاء عمومية) كل ربع سنة.
  • سوف يصدر إصدار دعم طويل الأجل (LTS) مرة واحدة كل سنتين اثنين. سوف يوجد تداخل لسنة واحدة في دعم نسخ الدعم الطويل الأجل. على سبيل المثال، كانت النسخة 1.23 مدعومة حتى شهر مايو/أيار 2017. صدرت النسخة 1.27 قبل سنة منها، لهذا سوف كون متاحة للمستخدمين بصفة نسخة دعم طويل الأجل متاحة بالإضافة إلى سنة واحدة للانتقال إلى نسخة أحدث.
  • سوف تظل ملاحظات الإصدار هي أساس التعرف على ما جرى تغييره. وبسبب طبيعة المشروع التي تعتمد على متطوعين، ليس ممكنا أن نقول بكل ثقة ما سيحدث في الأشهر الستة أو الاثنتا عشر القادمة.

الجدول الزمني للإصدارات

هذا الجدول الزمني هو الجدول الزمني لما يجب عمله قبل إصدار أي نسخة جديدة. تاريخ الإصدار الفعلي مبين هنا بالحرف T (وهو يشير إلى كلمة «time») يتبعه اللاحقة -# (وهي تشير إلى «عدد الأسابيع السابقة للإصدار»).

الجدول الزمني النسبي المهمة
T - 7 الإعلان أن فرع الإصدار سوف ينشئ أثناء أسبوع واحد. أطلب من الآخرين التأكد من أن أي شيء مطلوب لاستكمال السمات قيد التنفيذ قد دمج قبل ذلك الموعد. أنشئ «MW-X.XX-release» في فبريكاتور.
T - 6 إنشاء الفرع لكلا من اللب البرمجي والامتدادات في غيريت.
T - 5 إضافة الوسم X.XX-rc.0 وإصدار المرشح المبدئي للإصدار.
T - 4 جمع أية بلاغات عن أعطال وتلخيصها على القائمة البريدية.
T - 3 إضافة الوسم X.XX-rc.1 وإصدار المرشح الثاني للإصدار. يجب أن تضاف أية امتدادات جديدة مقترح إضافتها إلى tarball يجب أن تكون قد أضيفت عند هذه الخطوة. لن تجرى أية تعديلات على الامتدادات بعد هذه الخطوة.
T - 2 جمع أية بلاغات جديدة عن أعطال ودمج التصويبات وإزالة السمات الجديدة غير الكاملة التي أضيفت عن طريق الخطأ وإضافة وسم X.XX-rc.2 وإصدار المرشح الثالث.
T - 1 تكرار الخطوة السابقة واستخدام الوسم X.XX-rc.final وإصدار النسخة. لن تقبل أية أعمال حمل عكسي بعد هذه الخطوة.
T وسم المستودع مستخدما الوسم X.XX وتدشين الإصدار.

إدارة دورة حياة الامتدادات

تحتوي أغلب حزم تثبيت برمجيات ميدياويكي على عدد ضخم من الامتدادات (تحتوي مواقع ويكي ويكيميديا غالبا على حوالي 140). لهذا السبب تصبح جهود التعامل مع أعمال صيانة إصلاح أعطال الامتدادات البرمجية واختيار النسخة المناسبة من الامتداد في الحالات التي تعتمد فيها نسخة تطوير HEAD البرمجية على سمات ليست متوفرة بعد في لب ميدياويكي البرمجي المستقر والمستقر السابق جهودا مشوبة بالتحدي.

لهذا السبب نحث من يتولون صيانة الامتدادات حثًا شديدًا على صيانة أفرع غت لكل نسخة امتداد تقابل نسخة من برمجيات ميدياويكي. (طالع Compatibility#MediaWiki extensions لمزيد من التفاصيل.) بالنسبة للامتدادات المستضافة في مستودعات غت التابعة لويكيميديا، تنشئ تلقائيا أفرع معينة (تحمل أسماء على غرار REL1_30 لنسخة ميدياويكي 1.30) من النسخة الرئيسية حينما ينشئ فرع لنسخة جديدة من نسخ ميدياويكي (بناء على الافتراض أن النسخة الرئيسية من الامتداد متوافقة مع النسخة الرئيسية لبرمجيات ميدياويكي على الدوام). إلا أنه يفضل أن يتولى القائم على صيانة الامتداد تصويب الأعطال البرمجية ليس فقط في HEAD بل وأيضا في النسخ القديمة المستقرة والنسخة المستقرة (وذلك عن طريق الحمل العكسي للتصويب للأفرع القديمة إن تطلب الأمر ذلك).

إن الهدف من هذه القواعد أن يعتمد كل من الأفراد والمنظمات التي تثبت برمجيات ميدياويكي على تثبيت أحدث إصدار من أحد النسخ والامتدادات المناسبة بموجب سبيل بسيط، على سبيل المثال النسخة 1.20.x من لب البرمجيات عن طريق الوصول إلى REL1_20 في غت. ويتلافى ذلك ملفات تاربول والملفات المضغوطة ذات الأسماء غير المفيدة أو التي لا يمكن التنبؤ بها.

منذ الإصدار 1.36، تلتزم ميدياويكي بتقديم الدعم لتحديثات من إصدارين اثنين من الإصدارات الكبيرة ذات الدعم طويل الأجل (LTS) مضت (طالع phab:T259771). سيتعين أن تجرى التحديثات الصادرة من نسخ أقدم من هذه من ميدياويكي في عدة خطوات. هذا يعني أنه إذا كنت ترغب في الترقية إلى 1.41 من الإصدار 1.34 أو الأقدم، فيجب عليك أولاً ترقية موقع الويكي الخاص بك إلى الإصدار 1.35 (أو 1.39)، ومن الإصدار 1.35 (أو 1.39)، ستكون قادرًا على الترقية إلى 1.41.

انظر أيضا