15 पॉइंट द्वारा GN⁺ 2025-01-13 | 5 टिप्पणियां | WhatsApp पर शेयर करें
  • परफॉर्मेंस या Python के साथ compatibility, uv की अलग पहचान नहीं है। uv, PEPs का पालन करता है और Python package manager के रूप में सिफारिश करने लायक है। लेकिन इसकी सबसे चौंकाने वाली feature कुछ और है।
  • Python 3.12 में ad-hoc scripting करते समय, अक्सर Pandas जैसी dependencies जोड़ने की ज़रूरत पड़ती है। सामान्य तरीका यह है:
    • pip install pandas चलाकर global environment को बदलें, या
    • virtual environment बनाएं, pip install pandas चलाएं, virtual environment को activate करें, और फिर Python चलाएं।
  • अगर किसी दूसरे Python version की ज़रूरत हो, तो pyenv का उपयोग करके version install करना और उसे local रूप से सेट करना पड़ता है। सबसे खराब स्थिति में:
    1. pyenv install 3.12
    2. pyenv local 3.12
    3. python -m venv .venv
    4. source .venv/bin/activate
    5. pip install pandas
    6. python
  • uv का उपयोग करने पर यह सिर्फ एक लाइन के command से हो जाता है:
    • uv run --python 3.12 --with pandas python
    • इसे याद रखना आसान है, और कोई निशान भी नहीं छोड़ता। scripting का आनंद लें!

5 टिप्पणियां

 
tribela 2025-01-15

मैं अभी भी poetry इस्तेमाल कर रहा हूँ, लेकिन अब धीरे-धीरे migrate करना पड़ेगा। virtualenv wrapper को भी अलविदा कहना होगा।

 
roxie 2025-01-14

लगता है अब सच में pip को छोड़ने का समय आ गया है।

 
dongho42 2025-01-14

मैं uv को बहुत संतुष्टि के साथ इस्तेमाल कर रहा हूँ; बस init करते समय जो गैर-ज़रूरी चीज़ें ढेर सारी साथ में जुड़कर आ जाती हैं, उसे छोड़कर बाकी सब बढ़िया है।

 
GN⁺ 2025-01-13
Hacker News राय
  • uv पैकेज मैनेजर बहुत पसंद है, और उम्मीद है कि यह कम्युनिटी का standard बन जाए। खास तौर पर नए users को recommend करने लायक टूल है

  • uv PEP 723 की inline script dependencies को support करता है, जिससे इसका उपयोग और भी साफ-सुथरा हो जाता है

  • NodeJS developer के रूप में यह हैरान करने वाली बात है कि Python की environment setup समस्या अब तक हल नहीं हुई। Node भी perfect नहीं है, लेकिन global environment बदलने की चिंता नहीं रहती

  • virtualenv को activate करना ज़रूरी नहीं है, और pyenv interpreter setup के बिना भी सीधे virtual environment बनाया जा सकता है

  • कुछ लोगों का मानना है कि uv में एक ही टूल में कई features बंधे होना असुविधाजनक है। venv को activate करके एक ही environment में कई बार program चलाना अधिक सुविधाजनक लगता है

  • uv में uvx command शामिल है, जिससे Python scripts को manually install किए बिना चलाया जा सकता है

    • उदाहरण: uvx --from 'huggingface_hub[cli]' huggingface-cli
  • uv पसंद है और जल्द इस्तेमाल करना चाहते हैं, लेकिन article का मुख्य बिंदु समझ नहीं आया। pyenv और poetry से भी local dependencies लाई जा सकती हैं

  • अगर दूसरे binary dependencies भी हों, तो Nix और virtualenv + pip-tools का उपयोग बेहतर विकल्प हो सकता है

  • एक राय यह भी है कि पहले virtual environment को "सही path" में activate करने के बाद pandas install करना चाहिए