2008-10-04 18 views
13

क्या किसी को यह पता है कि "लगभग सभी" व्यापक रूप से उपयोग किए जाने वाले पाइथन पुस्तकालयों में पाइथन 3.0 के साथ काम करने से पहले कितना समय लगेगा?अधिकांश पुस्तकालय कब पाइथन 3 अनुपालन करेंगे?

मैं थोड़ी देर के लिए 2.X पर रहने की योजना बना रहा हूं क्योंकि मैं सामानों को बंद करना शुरू नहीं करना चाहता हूं और फिर कुछ पुस्तकालय मैं पहले से ही भरोसा करता हूं या एक नई लाइब्रेरी जिसे मैं उपयोग करना शुरू कर सकता हूं, अभी तक काम नहीं कर रहा है py3k के साथ।

मेरी समझ यह है कि py3k बीटा प्रक्रिया विशेष रूप से पुस्तकालय डेवलपर्स को अपनी सामग्री को स्थानांतरित करने के लिए समय देने के लिए तैयार की गई थी। क्या यह हो रहा है?

पुस्तकालयों मैं बात कर रहा हूँ के प्रकार के उदाहरण हैं, जनहित याचिका, numpy/scipy, SQLAlchemy, BeautifulSoup, CherryPy होगा ...

उत्तर

4

उदाहरण आप सूचीबद्ध किया है शायद बहुत जल्दी स्थलांतरित हो जाएगा के रूप में वे इसलिए कर रहे हैं व्यापक रूप से इस्तेमाल किया।

मुझे आश्चर्य होगा अगर सुंदर सूप एक महीने से अधिक समय लेता है (असल में, मुझे आश्चर्य है कि इसे पहले से ही py3k betas का उपयोग करके पोर्ट नहीं किया गया है), अधिक जटिल चीजें जैसे numpy में काफी समय लग सकता है, खासकर क्योंकि 2to3 केवल पाइथन स्रोतों पर काम करता है, सी मॉड्यूल नहीं ..

सामान्य बनाना सामान्य है - कुछ मॉड्यूल कभी पोर्ट नहीं किए जा सकते हैं, कुछ दिन लग सकते हैं, अन्य वर्षों में लग सकते हैं। यह "अच्छी तरह से मैं अपनी लाइब्रेरी को पायथन 3 पर पोर्ट नहीं कर रहा हूं," कोई भी इसका उपयोग नहीं कर रहा है! "/" ठीक है, मैं अपनी परियोजना को python3 पर पोर्ट नहीं कर रहा हूं, अभी तक कोई पुस्तकालय अपडेट नहीं किया गया है! ", लेकिन मुझे उम्मीद नहीं है!

+0

मुझे लगता है कि आप घोषणा करते हुए थोड़ा जल्दबाजी कर रहे थे कि NumPy जल्द ही पोर्ट किया जाएगा। अब छह महीने बाद है और इसे अभी भी 2.6 तक पूरी तरह से पोर्ट नहीं किया गया है। –

+1

मैंने कहा कि यह बंदरगाह numpy के लिए "लंबा" ले सकता है .. हालांकि आप सही हैं, मैं थोड़ा अधिक आशावादी था .. मुझे नहीं लगता कि सुंदर सूप अभी तक पोर्ट किया गया है (मैंने एक परियोजना को स्थानांतरित किया जिसमें मैं इसका उपयोग कर रहा था इस वजह से ElementTree) – dbr

1

चेरीपी रिपोजिटरी में मैंने देखा कुछ टिप्पणियां यह है कि सॉकेट मॉड्यूल में कुछ बदलावों को तर्क के व्यापक पुनर्विक्रय की आवश्यकता होगी। मुझे आशा है कि चेरीपी कुछ अन्य परियोजनाओं की तुलना में धीमी हो जाएगी जो 3.0 तक पहुंच जाएंगे।

+0

[अब पायथन 3.x पर चलता है] (http://www.cherrypy.org) – Tshepang

4

असल में, आपके प्रश्न का उत्तर इतने सारे अलग-अलग लोगों (पायथन स्टडी लिब के बाहर पुस्तकालयों के सभी रखरखाव) के कार्यों पर निर्भर करता है, जो मुझे लगता है कि कोई भी आपको विश्वसनीय दे सकता है सवाल।

उसने कहा, आपके पास पहले से ही कुछ जवाब हैं, और आपके पास और भी कुछ होगा। हम एक बात पर सहमत हैं, हालांकि: अंगूठे के नियम के रूप में, मैं आम तौर पर सुझाव देता हूं कि महत्वपूर्ण परियोजनाएं (मुख्य रूप से काम से संबंधित) को नई विकास प्रौद्योगिकियों (पायथन 3, नेट 3.x, आदि) तक तुरंत पोर्ट नहीं किया जाना चाहिए। आपके उत्तर के उत्तर पहले ही दिए जा चुके हैं और प्रारंभिक बगों में से कई हल हो गए हैं।

पालतू या परीक्षण परियोजनाओं के लिए, हालांकि, मैं सभी अपडेट और प्रयोग के लिए हूं।

1

माइग्रेशन प्लान में सामान्य विचार 2.x पर रहना है और फिर धीरे-धीरे कोड को 3.x में बदलना है। इसके बारे में चिंता करने के लिए आपके पास कम से कम 1.5 वर्ष होगा। बेशक चिकन और अंडे की समस्या है।

1

मुझे एड्रियन (डीजेंगो का बीएफडीएल) याद है कि गुइडो ने उन्हें बंदरगाह के लिए 5 साल का समय सीमा दी थी।

0

आपके द्वारा उल्लेख किए जाने वाले पुस्तकालयों को पोर्ट करने में कुछ गंभीर समय देने के बाद पोर्ट किया जाएगा।

NumPy/SciPy के विशिष्ट मामले में, कोड का एक बड़ा हिस्सा सी एक्सटेंशन के रूप में लिखा जाता है। सी एक्सटेंशन के लिए कोई 2to3 टूल नहीं है और इसलिए cPython3 C एक्सटेंशन को उपयोग करने की आवश्यकता वाले प्रारूप में कोड को पोर्ट करने के लिए इसमें बड़ी संख्या में मैन घंटे लगेंगे।

0

2013-05-01 के रूप में, पुस्तकालयों आप अब वर्णित सभी अजगर 3 का समर्थन:

पोर्टिंग कार्य धीरे-धीरे चल रहा है; Django जैसे कुछ प्रमुख पुस्तकालयों को हाल ही में पोर्ट किया गया था।

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