سجل الحزم
p.c.nf هو سجل حزم CNF، ويوفر مساحة أسماء شبيهة بـ GitHub لنشر حزم ذات إصدارات. لكل ملف ناتج عنوان URL ثابت وعدّاد تنزيلات وضوابط وصول.
نظرة عامة
يستضيف p.c.nf الحزم ضمن مساحة أسماء <username>/<project>. لكل مشروع إصدار واحد أو أكثر، ويمكن أن يضم كل إصدار ملفًا ناتجًا واحدًا أو أكثر قابلًا للتنزيل.
يشبه ذلك @scope/package في npm أو user/repo في GitHub، ولكن للملفات الثنائية بدلًا من الشفرة المصدرية.
بنية URL
p.c.nf/
الفهرس — تصفح جميع الحزم العامة
p.c.nf/<user>
ملف المستخدم — عرض حزمه
p.c.nf/<user>/<pkg>
صفحة المشروع — أحدث إصدار والسجل
p.c.nf/<user>/<pkg>/<version>
صفحة الإصدار — الملفات الناتجة وسجل التغييرات
p.c.nf/<user>/<pkg>/download
تنزيل أحدث ملف ناتج
p.c.nf/<user>/<pkg>/<version>/download
تنزيل إصدار محدد (رابط دائم)
p.c.nf/<user>/<pkg>/<version>/<label>
تنزيل ملف ناتج ذي تسمية (مثل إصدار لمنصة معينة)
التنزيل
نزّل حزمة باستخدام curl أو wget:
تدعم التنزيلات طلبات HTTP Range للاستئناف، وطلبات GET الشرطية التي تعيد 304 Not Modified.
حد المعدل: 30 تنزيلًا لكل عنوان IP في الدقيقة. تُعاد ترويسة 429 Retry-After عند تجاوز الحد.
النشر
انشر إصدارًا جديدًا عبر وحدة التحكم أو HTTP API. تنشئ كلتا الطريقتين المشروع عند أول نشر.
عبر API
الحقول المطلوبة:
slug— أحرف إنجليزية صغيرة وواصلات فقط (128 محرفًا كحد أقصى)version— سلسلة حرة؛ يُنصح باتباع الإصدارات الدلاليةfile— الملف الناتج المراد رفعه
الحقول الاختيارية: description وcategory وicon وvisibility وchangelog، بالإضافة إلى label للإصدارات ذات الملفات الناتجة المتعددة.
عبر وحدة التحكم
سجّل الدخول من console.c.nf وافتح إدارة التنزيلات. تتولى وحدة التحكم رفع الملف وبياناته التعريفية وتحديثات الإصدار.
/<username>/. لا يمكنك النشر باسم مستخدم آخر.المصادقة
طريقتا مصادقة مدعومتان:
مفتاح API (موصى به للأتمتة)
أنشئ مفتاحًا من console.c.nf/account/api، ثم أرسله كرمز Bearer:
تظهر المفاتيح مرة واحدة عند إنشائها. يمكنك إنشاء ما يصل إلى 10 مفاتيح نشطة وإلغاؤها في أي وقت.
ملف تعريف ارتباط الجلسة
عند التصفح من console.c.nf أو id.c.nf، يصادق ملف تعريف ارتباط جلستك عليك تلقائيًا. يفيد ذلك إضافة المتصفح ووحدة التحكم.
إمكانية الوصول
public
مدرجة في الفهرس؛ يمكن للجميع تنزيلها.
unlisted
مخفية من الفهرس؛ يمكن لأي شخص يملك عنوان URL تنزيلها.
private
لا يمكن عرضها أو تنزيلها إلا بواسطة المالك والمشرفين.
الإصدارات
يُحفظ كل إصدار منشور عند عنوان URL ثابت. تظل الإصدارات القديمة متاحة بعد الإصدارات الجديدة، لذلك يستمر المستهلكون المثبتون على /1.0.0/download في تلقي البنية نفسها تمامًا.
تقدم نقطة النهاية /download التي لا تتضمن إصدارًا أحدث إصدار دائمًا.
سلاسل الإصدارات نص حر. يُنصح بالإصدارات الدلالية (MAJOR.MINOR.PATCH) للوضوح، لكنها ليست مفروضة.
الأسئلة الشائعة
ما الفرق بين p.c.nf وd.c.nf؟
p.c.nf سجل حزم ذات إصدارات، وله مساحة أسماء لكل مستخدم (user/project). أما d.c.nf فهو فهرس مسطح لتنزيلات منتقاة يديرها مشرفو CNF.
هل يمكنني حذف إصدار؟
نعم، عبر وحدة التحكم. يؤدي حذف إصدار إلى تعطيل أي عناوين URL مثبتة حفظها المستهلكون، لذلك يُفضّل عادةً نشر إصدار جديد.
هل يوجد حد للحجم؟
تعتمد حدود الملفات الناتجة على مستوى صلاحية المستخدم: 50 MB لكل درجة UPL، وصولًا إلى نحو 500 MB. يمكن رفع الملفات الأكبر على أجزاء عبر وحدة التحكم.
كيف أصادق إضافة المتصفح؟
تدعم إضافة CNF Cred ملفات تعريف ارتباط الجلسة عندما تكون مسجلًا للدخول إلى console.c.nf، كما تدعم مفاتيح API. اضبط الطريقة من إعدادات الإضافة.