2016-09-20 21 views
13

मैं उपयोग कर रहा हूँ एक अजगर पुस्तकालय के लिए requirements.txt में, आवश्यकताओं में से एक की तरह निर्दिष्ट किया जाता है?require.txt में, tilde बराबर (~ =) क्या मतलब है?</p> <pre><code>mock-django~=0.6.10 </code></pre> <p><code>~=</code> क्या मतलब है:

उत्तर

14

इसका मतलब है कि यह 0.6.10 के बराबर या बराबर पैकेज का सबसे नवीनतम संस्करण चुन देगा, लेकिन फिर भी 0.6। * संस्करण में, इसलिए यह 0.7.0 उदाहरण के लिए डाउनलोड नहीं करेगा। यह सुनिश्चित करता है कि आपको सुरक्षा सुधार मिलेगा लेकिन पिछड़ा-संगतता बनाए रखें, यदि पैकेज रखरखाव अर्थपूर्ण संस्करण का सम्मान करता है (जो बताता है कि परिवर्तन तोड़ना केवल प्रमुख संस्करणों में होना चाहिए)।

या, जैसा कि पीईपी 440 से कहा:

>= V.N, == V.*

:

किसी दिए गए रिहाई पहचानकर्ता वीएन के लिए, संगत रिहाई खंड तुलना खंड की जोड़ी के लगभग समान है

2

एक संगत रिहाई खंड संगत रिहाई ऑपरेटर ~ = और एक संस्करण पहचानकर्ता के होते हैं। यह किसी भी उम्मीदवार संस्करण से मेल खाता है जो निर्दिष्ट संस्करण के साथ संगत होने की उम्मीद है।

आप यहाँ और अधिक पढ़ सकते हैं: https://www.python.org/dev/peps/pep-0440/#compatible-release

4

'संगत रिहाई' version specifier है यही कारण है कि।

यह समतुल्य है: mock-django >= 0.6.10, == 0.6.*, और एक संस्करण से मेल खाने का एक आसान तरीका है जो संगत होने की उम्मीद है। सादे अंग्रेजी में, यह कहने की तरह थोड़ा सा है: "मुझे मॉक-डीजेंगो का एक संस्करण चाहिए जो कम से कम 0.6.10 जितना नया है, लेकिन इतना नया नहीं है कि यह इसके अनुकूल नहीं है।"

यदि आप इस संस्करण संख्या सामग्री के बारे में निश्चित नहीं हैं, तो पीईपी 440 version scheme पर एक त्वरित नज़र आपको हल करना चाहिए!

2

~ = एक संगत संस्करण का मतलब है। 0.6.10 और उससे अधिक नहीं (0.6। *)।

संबंधित मुद्दे