حالة طلب السحب المباشر على GitHub Oneboxes ✨

يسرنا أن نعلن عن ميزة جديدة في إضافة discourse-github: مؤشرات حالة طلب السحب (PR) المباشرة على معاينات روابط GitHub PR! :tada:

عندما تقوم بلصق رابط طلب سحب من GitHub في منشور أو رسالة دردشة، يعرض Discourse الآن أيقونة حالة مرئية تُظهر الحالة الحالية لطلب السحب — ويحافظ عليها محدثة تلقائيًا عبر خطافات الويب (webhooks). :counterclockwise_arrows_button:

ما تفعله هذه الميزة

تعرض معاينات روابط طلبات السحب من GitHub الآن أيقونة حالة تعكس الحالة الحالية لطلب السحب:

الحالة اللون الوصف
:memo: مسودة (Draft) رمادي تم وضع علامة على طلب السحب كمسودة
:unlocked: مفتوح (Open) رمادي طلب السحب مفتوح وينتظر المراجعة
:white_check_mark: تمت الموافقة (Approved) أخضر وافق المراجعون على طلب السحب
:large_orange_diamond: تغييرات مطلوبة (Changes Requested) برتقالي طلب المراجعون إجراء تغييرات
:purple_circle: تم الدمج (Merged) بنفسجي تم دمج طلب السحب
:red_circle: مغلق (Closed) أحمر تم إغلاق طلب السحب دون دمج

تستخدم الأيقونات الأيقونات الأصلية لـ GitHub ومخطط الألوان الخاص بها، لذا ستبدو مألوفة لأي شخص يستخدم GitHub بانتظام. :eyes:

أمثلة

إليك كيف تبدو الحالات المختلفة قيد التنفيذ:

طلب سحب كمسودة (Draft PR):

DRAFT PR

طلب سحب مفتوح (Open PR):

OPEN PR

طلب سحب تمت الموافقة عليه (Approved PR):

APPROVED PR

تغييرات مطلوبة (Changes Requested):

CHANGE REQUESTED

طلب سحب تم دمجه (Merged PR):

MERGED PR

طلب سحب مغلق (Closed PR):

CLOSED PR

أين تعمل الميزة :round_pushpin:

يظهر الوضع المباشر في:

  • منشورات المنتدى — أي منشور يحتوي على معاينة لرابط طلب سحب من GitHub
  • رسائل الدردشة — إذا قمت بتمكين إضافة الدردشة، فإن معاينات روابط طلبات السحب في الدردشة تعرض أيضًا الحالة المباشرة :speech_balloon:

مثال على الدردشة:

CleanShot 2025-12-10 at 13.50.37

ملاحظة: المعاينات المضمنة (عندما يظهر الرابط مضمنًا في النص بدلاً من كمعاينة كاملة) لا تعرض أيقونات الحالة.

تحديثات في الوقت الفعلي عبر خطافات الويب (Webhooks) :high_voltage:

الجانب الأكثر قوة في هذه الميزة هو أن حالات طلبات السحب تتحدث تلقائيًا عند حدوث تغييرات على GitHub. عندما يتم فتح طلب سحب، أو إغلاقه، أو دمجه، أو تحويله من/إلى مسودة، أو تلقي مراجعة، يقوم Discourse تلقائيًا بتحديث أي منشورات أو رسائل دردشة تحتوي على معاينة طلب السحب هذا.

حالة المراجعة الذكية :magnifying_glass_tilted_left:

لا تقتصر الميزة على عرض حالة الفتح/الإغلاق الأساسية — بل تقوم أيضًا بجلب معلومات المراجعة لتحديد ما إذا تمت الموافقة على طلب السحب أو طلب إجراء تغييرات. وهي تتعامل بذكاء مع المراجعين المتعددين عن طريق:

  • أخذ أحدث مراجعة من كل مراجع
  • عرض “تغييرات مطلوبة” إذا طلب أي مراجع تغييرات
  • عرض “تمت الموافقة” فقط إذا كانت هناك مراجعات موجودة ولم يطلب أحد تغييرات

الترحيل من مكون سمة مؤشرات حالة GitHub :warning:

هذه الميزة تحل محل مكون السمة GitHub Status Indicators. الاثنان غير متوافقين ولا ينبغي استخدامهما معًا.

إذا كنت تستخدم مكون السمة حاليًا، فيجب عليك:

  1. تعطيل وإزالة مكون السمة github-status-theme
  2. تمكين هذه الميزة المضمنة الجديدة عبر إعدادات الموقع

التنفيذ الجديد يوفر العديد من المزايا على مكون السمة:

  • :locked: يعمل مع المستودعات الخاصة (عبر مصادقة واجهة برمجة التطبيقات API)
  • :white_check_mark: يتضمن حالة الموافقة/التغييرات المطلوبة من المراجعات
  • :high_voltage: تحديثات في الوقت الفعلي عبر خطافات الويب
  • :speech_balloon: يعمل في رسائل الدردشة
  • :hammer_and_wrench: لا يتطلب صيانة مكون السمة

البدء :rocket:

للحصول على تعليمات الإعداد، وخيارات التكوين، والتفاصيل التقنية، راجع توثيق إضافة discourse-github.

الملاحظات :speech_balloon:

نحن نحب أن نسمع ملاحظاتك حول هذه الميزة! إذا واجهت أي مشاكل أو كانت لديك اقتراحات للتحسينات، يرجى إخبارنا في الردود أدناه. :folded_hands:

22 إعجابًا

واو! أنا أحب هذا! :star_struck: التقييم الوحيد الذي لدي هو أنني أفتقد كتابة الحالة بالكلمات التي اعتدنا عليها سابقًا. الأيقونات الملونة رائعة ولكني لا أتعرف على ما تعنيه على الفور لأنني لا أقضي الكثير من الوقت في GitHub.

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

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

الأيقونات لها عنوان عند تمرير الماوس فوقها، ولكن هذا يعمل فقط على أجهزة الكمبيوتر المكتبية.

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