باختصار
الترقيم الدلالي للإصدارات (Semantic Versioning) نظام يجعل رقم الإصدار يخبرك بنوع التغيير، لا بترتيبه فقط.
بالتفصيل
يتكوّن الرقم من ثلاثة أجزاء بالصيغة MAJOR.MINOR.PATCH، بحسب الموقع الرسمي للمعيار:
- الرقم الأول (كبير): يتغيّر عند تعديل غير متوافق مع الواجهة البرمجية السابقة.
- الرقم الثاني (ثانوي): يتغيّر عند إضافة وظائف متوافقة مع الإصدارات السابقة.
- الرقم الثالث (تصحيح): يتغيّر عند إصلاح أخطاء مع بقاء التوافق.
جاء النظام لعلاج ما يسميه المعيار «جحيم الاعتماديات». فكلما كبر النظام وزادت الحزم فيه، صار تحديث حزمة واحدة مخاطرة. وإن كان الرقم صادقًا، عرفت قبل التحديث هل سينكسر شيء أم لا. وشرطه الأساسي أن يكون لديك واجهة برمجية معلنة أولًا.
وبدأت الفكرة تصل إلى النماذج اللغوية. فقد وصفت IBM إصدار Granite Switch 4.1.1 بأنه إصدار تصحيح يعني ما يعنيه في البرمجيات: متوافق مع 4.1 ولا يحتاج إلى ترحيل، لأن المحوّلات تغيّرت والنموذج الأساسي لم يتغيّر.
مثال عملي
فكّر في طبعات كتاب مدرسي. الرقم الثالث تصحيح خطأ مطبعي، فلا يلاحظ أحد شيئًا. والرقم الثاني إضافة فصل جديد، وكتابك القديم ما زال صالحًا. والرقم الأول منهج جديد تتغيّر فيه أرقام الصفحات، وعلى المعلّم أن يعيد تحضير دروسه.
مصطلحات مرتبطة
الواجهة البرمجية، والمحوّل، والضبط الدقيق، واختبار الانحدار.
المصادر: Semantic Versioning، Hugging Face


