سي بي اي إن

تصغير| شعار CPAN
شبكة أرشيف بريل الشاملة (CPAN) تعد مستودعاً لأكثر من 250000 وحدة برمجية وتحتوي على 39000 وثيقة مصاحبة والتوزيع مكتوبة فيها باللغة بيرل البرمجية بواسطة أكثر من12000 مساهم. كما أن سي بي اي إن تشير إلى شبكة الأرشيف أو برنامج بريل الذي يعمل كواجهة للشبكة وكمثبت برنامج ألي (إلى حد ما مثل منظام إدارة الحزم) كما أن معظم البرامج الموجودة على سي بي اي إن هي برامج حرة ومفتوحة المصدر.

## تاريخ
تم إنشاء سي بي اي إن في عام 1993 وكان نشطاً على الإنترنت منذ أكتوبر 1995  ويعتمد على نموذج CTAN وبدأ كمكان لتوحيد بنية أرشيفات بريل المتناثرة.

## الدور
كمثل العديد من لغات البرمجة تملك بريل أليات لاستخدام مكتبة برمجية خارجية من التعليمات البرمجية مما يمكنها من جعل ملف واحد يحتوي على إجراءات شائعة تستخدمها عدة برامج وعادة ما تستدعي بريل هذه الوحدات وعندما يتم تثبيت وحدة بريل في واحده من المجلدات الحوسبية يتم وضع مساراتها في المفسر الخاص ببريل وقد تم أستخدام المحول برمجي لأول مرة في أنظمة التشغيل المشابهة لـيونكس كما يتضمن المسارات الشائعة */ usr / lib / perl5* و */ usr / local / lib / perl5* والعديد من الأدلة الفرعية الخاصة بهم.

تأتي لغة بريل مع مجموعة صغيرة من الوحدات الأساسية وبعض هذه المهام تؤدي مهام تمهيد التشغيل مثل ExtUtils :: MakeMaker والتي تستخدم لإنشاء ملفات صنع البرمجة لبناء وتثبيت وحدات امتداد أخرى كما أن البعض الآخر مثل List :: Util  شائع الاستخدام.

الغرض الرئيسي من سي بي اي إن هو مساعدة المبرمجين على تحديد الوحدات النمطية وبرامج الغير مدرجة في توزيع بريل القياسي (كما أن هيكلها لا مركزي) ويحافظ المؤلفون على وحداتهم النمطية ويحسنونها ثم يتم أعادة التشعب وإنشاء وحدات متنافسة لنفس المهمة أو الغرض وهذا أمر شائع ويوجد نظام يتتبع الأخطاء التابعة لجهة الخارجية تم إعدداده تلقائياً لأي توزيع تم تحميله ولكن قد يختار المؤلفون استخدام نظام تتبع أخطاء مختلف مثل غيت هاب(على الرغم من أن غيت هاب موقع شائع) إلان يمكن لمؤلف تخزينها في أي مكان يفضل أو قد لا يكون متاحا للجمهور على أطلاق حيث أنه يمكن أن يمنح القائمون على الصيانة أذوانات للأخرين للحفاظ على وحداتهم النمطية أو توليها وقد يتم الاحتحفاظ بالإصدارت السابقة من توزيعات المحدثة على سي بي اي إن حتى يتم حذفها بواسطة القائم باتحميل وتحتفظ بشكل معكوس ثنوي أسمه BackPAN حتى إذا ما تم حذفه من سي بي اي إن. كما يتوفر السجل الكامل لـ سي بي اي إن وجميع وحداته كمشروع GitPAN  مما يسمح بسهولة بمشاهدة السجل الكامل لجميع الوحدات ولصيانة الشوكات بسهولة. يستخدم سي بي اي إن أيضًا لتوزيع إصدارات جديدة من بريل بالإضافة إلى المشاريع ذات الصلة، مثل ألة الببغاء الأفتراضية وراكو (لغة برمجة).

## البنية
تشيار الملفات الموجودة على سي بي اي إن على توزيعات وقد تكون هذه توزيعات واحده أو أكثر من الوحدات ملفات الوثائق أو برامج تعبئتها في شكل الأرشفة مشتركه مثل المضغوطه بطريقة جي زيب تار أرشيفه أو ZIP- متداد الملف وغالباً ما تحتوي التوزيعات على نصوص (تسمى عادةً *Makefile* *PL* أو*Build* *PL*) واختبار البرامج النصية التي يمكن تشغيلها للتحقق من أن محتويات التوزيع تعمل بشكل صحيح ويتم تحميل التوزيعات الجديدة إلى خادم تحميلات المؤلفين بويل كما تسمى أيضاً PAUSE (راجع قسم شبكة الأرشيف الشامله بيرل مع PAUSE).

*بدأت التوزيعات في عام2003 بتضمين ملفات لبيانات الوصفية المسماة ميتا ويامل توقعت أسم الشبكات والإصدار التبعيات ومعلومات المفيدة الأخر ومع ذلك لا تحتوي جميع الشبكات على بيانات وصفية وعندما لاتكون البينات الوصفية موجودة في الشبكة سيحاول برنامج* PAUSE تحليل الكود في الوجود في الشبكات للبحث عن نفس المعلومات وهذا ليس بالضرورة موثوق للغاية حيث في عام 2010، تم إنشاء الإصدار 2 من هذه المواصفات  لاستخدامه عبر ملف جديد يسمى *META. [[جسون]]* ومع ملف تنسيقYAML غالبًا ما يتم تضمينه أيضًا للتوفيق مع توفقية الرجعية.

و بسبب وجد الأف التوزيعات يحتاج سي بي اي إن إلى تنظيم حتي يكون مفيد غالبًا ما يضع المؤلفون وحداتهم النمطية في التسلسل الهرمي طبيعي لأسماء وحدات بريل (مثل `Apache::DBI` أو `Lingua::EN::Inflect`) وتكون وفقًا للغرض أو المجال المطلوب على الرغم من عدم فرض ذلك.

تحتوي عادةً توزيعات وحدة سي بي اي إن على أسماء بشكل *CGI-Application-3.1* (**حيث تم أستبدال::** المستخدم في اسم الوحدة بشرط وتم إلحاق رقم الإصدار بالاسم) ولكن يعتبر هذا مجرد أصلاح حيث أن العديد من التوزيعات البارزة تخالف الاتفاقية العديد من التوزيعات البارزة تخالف الاتفاقية، خاصة تلك التي تحتوي على وحدات متعددة. تمنع قيود الأمان من أي وقت مضى أستبدال التوزيع باسم ملف متطابق لذلك تشمل جميع أسما التوزيع تقربياً على رقم إصدار.

## المكونات
تتكون البنية التحتية الموجوده في سي بي اي إن من شبكتها العالمية التي تضم أكثر من 250 مرأة في أكثر من 60 دولة كما أن كل مرأة كاملة تحتوي حوالي 31غيغابايت من البيانات.

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

قد تمت كتابة العديد من محركات البحت لمساعدة مبرمجي بريل على فرز سي بي اي إن والموقع الرسمي  يحتوي على باحث نصي وفهرس للوحدات القابل للتصفح ونسخة مستخرجة من جميع التوزيعات الموجودة حالياً على سي بي اي إن وفي 16 مايو 2018 أعلنت مؤسسة بريل أنه سيتم إغلاق search.cpan.org في 29 يونيو 2018 (بعد 19 عامًا من التشغيل) نظرًا لقاعدة بياناتها القديمة وعبء الصيانة وسيتم نقل المستخدمين وإعادة توجيههم إلى MetaCPAN البديل التابع لجهة خارجية. 

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

كما يمكن للمؤلفين تحميل التوزيعات الجديدة إلى سي بي اي إن من خلال خادم تحميلات المؤلفين بويل (PAUSE) للقيام بذلك يجب أن يطلبوا حساب في PAUSE.

و بمجرد التسجيل يمكنهم استخدام واجهة الويب الموجودة في pause.perl.org أو واجهة بروتوكول نقل الملفات- FTP لتحميل الملفات إلى دليلهم وحذفه وسوف تتم فهرسة الوحدات في التحميل فقط على أنها أساسية إذا لم يتم ا ستخدام اسم الوحدة من قبل (حيث أن إلاذن يأتي أولأً للقائم بالتحميل) أو أذا ما كان القائم بالتحميل لديه إذن بهذا الاسم ولكن إذا كانت وحدة الإصدار أعلى من أي نسخة دخولي حاليه  في تلك الحالة يمكن تحديد ذلك من خلال واجهة الويب الخاصة بـ PAUSE.

## +CPAN.pm، CPANPLUS ، cpanminus
توجد هناك أيضاً وحدة بريل أخر تسمى سي بي اي إن وعادة ما يتم تمييزها عن المخزن نفسه باستخدام اسم CPAN.pm وأسم CPAN.pm هوعبارة عن غلاف تفاعلي بشكل أساسي يمكن استخدامه للبحث عن توزيعات وتنزيلها وتثبيتها (و هناك غلاف تفاعلي أخر في نوة بريل يسمى ) وتكون طريقة في العادة لتشغيل CPAN.pm بعد عملية تكوين قصيرة واختيار مرآة بسبب أنه يستخدم الأدوات المتاحة على كمبيوتر المستخدم لتنزيل الوحدات النمطية وفك ضغطها وتجميعها واختبارها وتثبيتها تلقائيًا كما أنه قادر على تحديث نفسه.

كما أدت محاولة استبدال CPAN.pm بشيء أكثر وضوحاً وحداثةً إلى مجموعة الوحدات CPANPLUS (أو CPAN ++)حيث أن CPANPLUS يفصل العمل الخلفي لتنزيل الوحدات النمطية كما يمكنه أن يستخدم مفسر ويثبتها من الغلاف التفاعلي المستخدم لإصدار الأوامر كما أنه يدعم العديد من المميزات المتقدمة مثل فحص التوقيع المشفر وتقرير نتائج الاختبار وأخيراً يمكن لـ CPANPLUS إلغاء تثبيت التوزيع وقد تمت إضافة CPANPLUS بريل كور في الإصدار 5.10.0 وإزالته منه في الإصدار 5.20.0.

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

أيضاً يمكن لكل من هذه الوحدات النمطية التحقق من اقتران والتوزيع وتثبيت أي متطلب أساسي بشكل متكرر إما تلقائيًا أو بموافقة المستخدم الفردي كما يدعم كل من FTP و HTTP ويمكنه العمل من خلال جدران الحماية والوكلاء.

## التأثير
غالباً ما يتم تداول مبرمجو بريل ذووي الخبرة عن أن نصف قوة بريل تكمون في سي بي اي إن وقد أطلق على التطبيق بأسم Perl's killer app-التطبيق القاتل. يكافئ تقربيًا PECL و PEAR لـ بي إتش بي وحيث أن PyPI (فهرس حزمة بايثون) يخزن لبايثون (روبي جيمس) والروبي مستخدم CRAN وآر (لغة برمجة) لـNpm-نظام إدارة الحزم حيث أنه يستخدم في Node.js- نود.جي.إس و LuaRocks لـ Lua لوا (لغة البرمجية) ؛ مأباتشي مفين لجافا؛ وهاسكجي لهاسكل حيث أن سي بي اي إن يستخدام لمسافات الأسماء المُحكَّمة ونظام الاختبار وأسلوبه في التوثيق المحدد الجيد يجعلها فريدة من نوعها.

ونظراً لأهميها بانسبة لمجتمع مطوري بريل فإن سي بي اي إن يشكل ويتشكل من خلال ثقافة بريل وغالباً ما يشارك أمين المكتبة الرئيسي المعين (جاركو هيتانييمي) في نكات يوم كذبة أبريل وفي 1 أبريل 2002 تم تسمية الموقع مؤقتاً باسم CJAN حيث أن حرف "J" يرمز إلى «Java-جافا» وأيضاً في عام 2003 تمت إعادة توجيه اسم المجال `www.cpan.org` إلى أرشيف سيناريو ماتت -Matt's Script Archive وهو موقع سيئ السمعة في مجتمع بريل لوجود تعليمات برمجية مكتوبة بشكل سيء.  

حيث أنه تم توزيع بعض التوزيعات على سي بي اي إن على شكل نكات وكانت `Acme ::` مصصمه لوحدات المزاح وعلى سبيل المثال كود `Acme::Don't` حيث إنه إذا ما وضعت `don't` لن يعمل وذلك لإنه معناه الحرفي لا فسوف لا يعمل (لكن لاستكمال يجب أن تضع `do` في البناء) وفي وقتنا هذا لا يزال عناك في خارج `Acme::` بعض الوحدات مكتوبة إلى حد كبير للتسلية وأحد الأمثلة على ذلك هو `Lingua::Romana::Perligata` الذي يمكن استخدامه لكتابة برامج بريل في مجموعة فرعية من اللاتينية.

و في عام 2005 أجتمعت مجموعة من مطوري بريل المهتمين أيضاً بجافا سكريبت لإنشاء JSAN- شبكة أرشيف جافا سكربيت وتعد JSAN منفذاً شبه مباشر للبنية التحتية لشبكة سي بي اي إن للأستخدام مع لغة جافا سكربيت والتي في وقتها لم يكن بها «مجتمع» متماسك في معظم عمرها.

بعد ما لقاءً بصدفة في عام 2008 مع مدير سي بي اي إن آدم كينيدي في مؤتمر مطوري البرامج مفتوحة المصدر إنشاء مطور نواة لينكس رستي راسيل شبكة أرشيف C التي الشاملة CCAN و CCAN هو منفذ مباشر لهندسة سي بي اي إن للاستخدام مع لغة C.

CRAN-شبكة أرشيف إر الشاملة وهي عبارة عن مجموعة من المرايا التي تستضيف توزيع لغة البرمجة أر والتوثيق الإضافات المساهمة.

## المسؤولين

### آدم كينيدي
تصغير| آدم كينيدي في عام 2016
أدم كينيدي هو مبرمج بيرلأسترالي هو واحد من العديد من مديري سي بي اي إن فيوجد في بطاقتة في أي دي أي أم كي سي بي اي إن وبسبب أنه هو المشرف على أكثر من 200 برمجة تركبية فهذا يضعه في صدارة المساهمين في سي بي اي إن  كيندي هو أول مشرف لأكثر من 200 وحدة سي بي اي إن وقد اعتمد العديد منها من مؤلفين أخرين وتم تضمينها في المخزن المفتوح الخاص به والمتاح للأستخدام من قبل أي مؤلف مسجل في سي بي اي إن كما أنه هو المقدم في مؤتمرات مفتوحة المصدر مثل OSDC ، OSCON ، و YAPCوعن أحداث الهاكاثون بيرل كيو إي.

طور كينيدي بعض الوحدات المهمة للغة الرمجة الخاص ببريل لا سيما في مجال الأدوات لتحسين وتطوير وبناء تول شين-toolchainمثل PPI  (محلل بريل)CPAN :: Metrics  (الذي ينشاْ المقاييس على 16 m + أسطر البرمجية في سي بي اي إن) Portable Perl- بيرل محمول  (ويعرف إضاً باسم بريل على عصا "Perl on a Stick") وبادري (برمجيات) كان أيضاً دافعًا قويًا لمساواة النظام الأساسي لـ بريل على ويندوز وبدأ كلاً من وكي بريل وند32 (Win32 Perl Wiki) وتوزيع ستروبري بريل (Strawberry Perl) لنظام ويندوز.

; PPI

قدم محلل بريل Parser PPI البنية التحتية لبريل5 وقدم التوثيق وأدوات إعادة البناء Perl :: Critic  كما يستخدم PPI لانتقاد وأختبار شفرة بريل الرئيسية من أجل معيير الجودة وأنتقاد أفضل ما قدمته بريل ويستخدم Padre IDE PPI لتحليل الكود وإعادة البناءالشفرة كما أن في وثائق PPI هناك إشارة إلى البديهة بسبب أنه فقط بريل في (المترجم الفوري) يمكنه تحليل لغة بريل (شفرة المصدر)" لأنها لغة برمجة ديناميكية منشورة على بريل مونك-PerlMonksو يفترض أن يكون هذا إثباتًا رسميًا.

; ستروبري بيرل

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

; لغة بيرل المحمولة (الملقبة «بريل على عصا»)

يعد بريل المحمول  أول توزيع بريل مناسب للتثبيت على أجهزة ذاكرة فلاش المحمولة وأجهزة أيبود، هواتف المحمولة، كاميرات، وإلى أخره وقد تم توزيعها على وحدة الذاكرة الفلاشية في OSCON 2008. كما تم تمويل العمل الأولي لهذا المشروع بمنحة من مؤسسة بيرل.

; حديث ببليوغرافيا

و قد تحدث أدم كينيدي في عدد من المؤتمرات الفنية في جميع أنحاء العالم بما في ذلك OSCON ، OSDC ، Linux.conf.au ، والعديد من YAPC الأحداث تشمل هذه المحادثات:

* *PITA - اختبار على نطاق واسع للغاية* ، YAPC :: NA 2006 
* *لا شيء يمكن أن يحدث بشكل خاطئ* ، Linux.conf.au 2007 
* *ستروبري بيرل، تحقيق المساواة في منصة Win32* ، OSCON 2008 
* *بادري - Perl IDE للأشخاص العاديين* ، OSDC 2009 

; العمل الحالي

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

## مراجع

## روابط خارجية
* 
* MetaCPAN
* قائمة مرايا CPAN الرسمية ، حالة المرايا
* ZCAN - «زين شبكات الأرشيف الشامل» - وثيقة تهدف إلى شرح كيف ولماذا نجحت CPAN وكيفية تكرارها في جهود مماثلة. (9 يناير 2003 بواسطة Jarkko Hietaniemi).

تصنيف:نظم إدارة حزم
تصنيف:بيرل