قناة الإصدار المستقر

أنا أشغّل Discourse داخل حاوية Docker في نشر قياسي جدًا.

أحب حقيقة أنه يمكنني إجراء التحديثات من خلال متصفح الويب، لكنني أتساءل عما إذا كان هناك طريقة للاشتراك في إصدارات ‘الاستقرار’ بدلاً من تلقي إشعارات التحديث لـ:

2.5.0.beta7

ربما الانتظار حتى تنتهي إصدارات التجريبية والسماح لي بالترقية إلى 2.5.1 بمجرد إصدارها؟

4 إعجابات

يمكنك تعديل ملف app.yml للإشارة إلى الفرع المستقر (stable). السطر الذي تريد تعديله هو version، وقيمته الافتراضية هي version: tests-passed.

تذكر أن هذا يعني أنك ستنتظر شهورًا حتى يتم التحديث، مما يعني أيضًا أنك ستضطر إلى التعامل مع أي أخطاء في ذلك الإصدار لفترة أطول.

5 إعجابات

ملاحظة: يمكنك التبديل من إصدار تجريبي / تم اختبار الاختبارات بنجاح إلى الإصدار المستقر فقط عند إصدار إصدار مستقر رئيسي جديد (أي 2.5.0). التبديل من إصدار تم اختبار الاختبارات بنجاح إلى الإصدار المستقر في الوقت الحالي سيكون تراجعيًا، وهو غير مدعوم.

5 إعجابات

إذا كان هناك شيء حرج، ألا ستقوم بنقل الإصلاح إلى الإصدارات الأقدم؟ أتوقع أنه إذا حدث شيء حرج سيتم إصلاحه. أم أن الأمر ليس كذلك؟

لقد واجهتُ أيضًا أكثر من بضع أخطاء تم إدخالها عبر قناة النسخة التجريبية (Beta). لذا، أفترض أنه عند إصدار نسخة جديدة، تقومون بإجراء فحص منطقي للتأكد من أن كل شيء يبدو جيدًا ويعمل كما هو متوقع قبل الانتقال إلى الإصدار 2.5.1.

@RGJ، شكرًا لك على المعلومات المذكورة. سأقوم بتثبيتها بمجرد صدور إصدار Discourse التالي.

إعجاب واحد (1)

نعم، يتم عادةً نقل إصلاحات الأمان إلى الإصدارات الأقدم. كما يتم نقل الأخطاء الحرجة (مثل تلك التي توقف العمل وتجعل استخدام Discourse مستحيلاً). لكن العديد من الأخطاء الأقل حرجًا قد لا تُنقل. إن عملية النقل نفسها تنطوي على مخاطر؛ فقد تحدث دائمًا انتكاسات غير مقصودة، كما أنها تجبر المستخدمين على الإصدارات المستقرة على التحديث، وما إلى ذلك.

تتمثل توصيتنا العامة في أن تتبع المواقع فرع tests-passed (وهو الافتراضي)، وتقوم بالتحديث عند صدور إصدار جديد (beta). هناك حالات معينة يُوصى فيها بالإصدار المستقر، مثل المواقع ذات الإضافات المعقدة التي تتجاوز قوالب النواة الأساسية، لكن بالنسبة لموقع قياسي مثبت عبر Docker، التزم بفرع tests-passed. في حين أن مصطلح “beta” في صناعة البرمجيات يميل إلى جعل الناس يعتقدون “سيكون هناك أخطاء”، فإن هذا ليس المقصود من استخدامه لدينا. جميع إصدارات Discourse، سواء كانت tests-passed أو beta أو stable، تحتوي على أخطاء.

إذا وجدت خطأً في فرع tests-passed وأبلغت عنه، فمن المرجح جدًا إصلاحه خلال بضعة أيام، ويمكنك التحديث لجعل الخطأ يختفي. قد تواجه المزيد من الأخطاء (بمعنى أخطاء فريدة)، لكنها ستُصلح بسرعة. أما في الإصدار المستقر، وكما ذكر كريس، فلا ينبغي أن تظهر أي أخطاء جديدة خلال فترة إصدار مدتها 4-6 أشهر، لكن أي أخطاء تظهر لن تختفي حتى الإصدار المستقر التالي. من المرجح أن يكون لديك المزيد من الأخطاء في أي وقت مقارنة بفرع tests-passed، نظرًا لأنها لا تُصلح، لكن هذه الأخطاء يجب أن تبقى ثابتة.

9 إعجابات

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

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

نسخة تكامل أو نسخة تجريبية تتيح لك اختبار التحديثات بشكل استباقي قبل نشرها في بيئتك الحية، دون أن تتخلف عن الركب لأسابيع أو أشهر.

4 إعجابات

بالنسبة لإضافات Pavilion الشائعة (مثل TLP، وCW، وQnA، وEvents، وFollow، وRatings، وLocations وغيرها)، نتبع حاليًا فرع tests-passed، وذلك بشكل رئيسي لأنه الإصدار الافتراضي للتثبيت، مما يقلل من الارتباك للمستخدمين بشكل عام. وهذا يجعلها غير متوافقة مع الإصدار المستقر في معظم الأوقات حاليًا، ويرجع ذلك في الغالب إلى سرعة التطور في نواة Discourse، التي تتطور بسرعة مذهلة.

سنواصل مراقبة هذا الأمر في حال توفرت الموارد التي تسمح لنا بدعم فروع إضافية، أو إذا بدأت Discourse في إصدار التثبيت الافتراضي على فرع آخر. لذا، وحتى ذلك الحين، إذا كنت تنوي استخدام إضافاتنا، يرجى الالتزام بفرع tests-passed.

3 إعجابات