यह कार्यक्षमता अस्वीकृत नहीं है, यह अधिकांश पुस्तकालयों की संख्या के काम करने के तरीके के परिणामस्वरूप बहुत सामान्य नहीं है और पैकेज नाम परिवर्तन की असुविधा के कारण है।
यदि डॉटेड संस्करण संख्या योजना का उपयोग करते हैं तो XYZ "माइक्रो" संस्करण Z अक्सर बगफिक्स पर बदल जाता है, "मामूली" संख्या वाई पिछड़े संगत परिवर्तनों पर बदल जाती है और "प्रमुख" संस्करण संख्या X को एपीआई परिवर्तनों (और कभी-कभी) पर बदलना पड़ता है प्रमुख अतिरिक्त कार्यक्षमता)।
ऐसा कोई कारण नहीं होना चाहिए कि आप नवीनतम बग को ठीक नहीं करना चाहते हैं, और पिछड़े संगत परिवर्तन आपके सॉफ़्टवेयर को भी नहीं तोड़ना चाहिए।
यदि लाइब्रेरी को इस तरह से विकसित किया जाता है तो आपको XYZ को X (Y + m) से बदलने में हमेशा सक्षम होना चाहिए। (Z + n)। किसी भी एम और एन के लिए। यानी आपको हमेशा अपनी लाइब्रेरी को उसी प्रमुख नंबर श्रृंखला में नवीनतम के साथ बदलने में सक्षम होना चाहिए। और अगर लाइब्रेरी डेवलपर्स सावधान हैं और अगली बड़ी संख्या संगत है (उदाहरण के लिए चीजों को पदावनत करने की घोषणा द्वारा, लेकिन उन्हें अभी तक नहीं हटाएं) तो आप अगले प्रमुख नंबर का उपयोग भी कर सकते हैं।
पैकेज डेवलपर्स के लिए इसका मतलब है कि वे सिर्फ एक के साथ नाम का उपयोग कर सकते हैं, या यहां तक कि कोई भी नंबर का नाम आपको पैकेज को अपडेट करके नवीनतम संस्करण देने के लिए नहीं। यदि वे एक पैकेज में एक पुस्तकालय जहाज abc2
करते हैं, तो उन्हें अपने स्वयं के सॉफ़्टवेयर को स्थानांतरित करने के लिए हुप्स से गुजरना पड़ता है जो उपयोग करने के लिए अपग्रेड करने पर निर्भर होता abc2
है abc3
, कभी-कभी संक्रमण पैकेज के साथ। लाइब्रेरी से प्रमुख संस्करण संख्या को छोड़ना अधिक सुविधाजनक है यदि यह सबसे अधिक पैकेज के लिए काम करता है। इसलिए, भले ही दोनों abc2
और abc3
किसी वितरण में उपलब्ध किसी बिंदु पर उपलब्ध होना चाहिए, abc3
अक्सर कहा जाता है abc
(जैसे कि abc2
तब कहा जाता था जब abc3
अभी तक नहीं था ), और जैसे ही कोई पैकेज abc2
वितरण के भीतर निर्भर करता है उसे छोड़ना संभव हो जाता हैabc2
कुल मिलाकर।
नंबरिंग योजना का समान रूप से पालन नहीं किया जाता है, लेकिन मैं केवल कल्पना कर सकता हूं कि इस तरह की योजना का उपयोग करने के बारे में इंटरनेट के प्रसार की जानकारी के साथ, और पुस्तकालय उपयोगकर्ताओं (वितरण डेवलपर्स सहित) से दबाव बिना पिछड़े संगतता जैसी महत्वपूर्ण चीजों को स्पष्ट करने के लिए। लाइब्रेरी में शामिल CHANGES फ़ाइल के माध्यम से पढ़ने के लिए, यह योगदान दिया है कि यह अधिक सामान्य हो गया है।
एक काउंटर उदाहरण है, लेकिन एक पुस्तकालय का नहीं अजगर अजगर दुभाषिया है, जो एक मामूली संख्या परिवर्तन पर अपनी साझा वस्तुओं और अचार प्रारूप पर संगत नहीं है। इसलिए आपको अजगर (2.7 श्रृंखला में नवीनतम) और अजगर 3 (वर्तमान में पायथन 3.4 श्रृंखला) के साथ-साथ अजगर 2.6 के लिए स्पष्ट पैकेज (कम आम नहीं मिल रहा) और अजगर 3.3 के लिए पैकेज दिखाई देंगे।