الخلاصة

  • الحذف المعتاد في NuGet.org يزيل الحزمة من القوائم المعتادة، مع بقاء تنزيل النسخة المحددة وتثبيتها واستعادتها متاحا.
  • إعلان التقادم يوجه المستخدم إلى البديل، ونقل الشعبية المعتمد يفيد موقعه في البحث. مشاريع العملاء لا تتغير تلقائيا بأي من الإجرائين.
  • إنهاء منتج برمجي يحتاج إلى انتقال فعلي للعملاء وتسليم للصلاحيات وحفظ للمعرفة. ترتيب واجهة العرض لا يغلق هذه الحسابات.

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

هذا مشهد افتراضي تصفه قواعد NuGet.org من دون الحاجة إلى اختراع حادثة. المورد غيّر قابلية العثور على الحزمة، والعميل طلب نسخة يعرفها مسبقا. يستطيع المستودع الاستجابة للطرفين في الوقت نفسه.

تحتفظ سياسة NuGet بإمكان تنزيل النسخة المحددة وتثبيتها واستعادتها بعد إزالة الحزمة من القوائم. وحتى الاستعادة التي تستخدم نطاقا للنسخ قد تختار نسخة مخفية إذا كانت أحدث ما يطابق القيود. كما تشملها آلية نسخ الكتالوج.سياسة الحذف في NuGet

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

فعل قوي وصلاحية أضيق

يحمل الأمر nuget delete اسما حاسما. لكن وثيقته الرسمية تفرق بين الوجهات: في NuGet.org يزيل الحزمة من القوائم، وفي مجلد محلي يحذفها.مرجع أمر الحذف

لذلك يحتاج تقرير «اكتمل الحذف» إلى تحديد المكان. هل اختفت نسخة داخلية؟ أم نتيجة بحث عامة؟ أم تغيّر مرجع الاعتماد داخل مشروع العميل؟ لكل جواب أثر مختلف في حجم العمل المتبقي.

توجد لدى فريق NuGet مسارات استثنائية لإزالة محتوى ضار أو منتهك للحقوق. أما ترتيب خط منتجات قديم فهو قرار تجاري آخر. حماية استمرارية المشاريع تفقد قيمتها إذا تمكن كل ناشر من محو القطع القديمة بمجرد أن تصبح أقل جاذبية له.

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

رسالة الوداع قد تبقى على الموقع

توفر NuGet إعلان التقادم، مع سبب وبديل اختياري من حزمة أو نسخة. هذا الإجراء مستقل عن الإخفاء، ويمكن استخدامهما معا. لكن الرسالة المخصصة التي يكتبها الناشر تظهر على NuGet.org، ولا تعرضها تطبيقات العميل نفسها.التقادم ونقل الشعبية

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

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

عدد الإشعارات المرسلة يقيس نشاط المورد. عدد المشاريع التي انتقلت وعملت يقيس النتيجة التي يريدها. يمكن إغلاق مهمة التواصل قبل الاقتراب من إغلاق المنتج.

الشعبية تنتقل وفق قواعد المنصة

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

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

التقسيم المتساوي تفصيل تجاري مهم. قد تفكك شركة مكتبتها إلى وحدات متفاوتة في الوظيفة والعائد المتوقع. الوحدة التي تراهن عليها الإدارة أكثر لا تحصل تلقائيا على نصيب أكبر من السمعة المتراكمة. تصميم المنتج يتبع حسابات الشركة؛ توزيع الرصيد في البحث يتبع حسابات الخدمة.

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

اسم المؤلف ليس مفتاح النشر

تعتمد NuGet.org في صلاحيات الإدارة والنشر على مالكي الحزمة، لا على حقل المؤلف في بياناتها. يجري تسليم التحكم بإضافة مالك جديد وقبوله الدعوة، ثم إزالة المالك السابق عند الحاجة. الدعوة المعلقة تظل عملية تسليم معلقة.النشر وإدارة المالكين

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

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

الأرشيف يحفظ قطعة البرمجيات. أما الخروج من الاعتماد عليها فيحتاج إلى تنسيق بين من يريد الانتهاء ومن لا يزال يجد فيها منفعة. اللافتة أسهل ما يمكن حمله خارج المبنى؛ الباقي يحتاج إلى ميزانية.