نظرة عامة على سلسلة Python uv: بديل pip أسرع بـ 100 مرة
2 min read
uv هو أداة سريعة البرق لإدارة حزم Python والمشاريع مبنية بـ Rust من Astral. تدمج تثبيت التبعيات والبيئات الافتراضية وإدارة إصدارات Python وتنفيذ أدوات CLI في ثنائي واحد. باختصار: pip + virtualenv + pyenv + pipx مجتمعة ومُعزَّزة — وبسرعة تجعلك تشكك في الواقع.
مقارنةً بـ pip وpoetry وpipenv، مزايا uv هي سرعة 10–100 مرة، الحد الأدنى من استخدام القرص، وأداة واحدة لسير العمل بأكمله. مناسب بشكل خاص للتطوير اليومي وCI/CD وتنفيذ السكريبتات — لا مزيد من التبديل بين أدوات متعددة.
حالات الاستخدام
- بدء مشروع جديد من الصفر:
uv initيُنشئه فوراً، التبعيات تثبّت فوراً — لا مزيد من مشاهدة دوّامة pip - الترحيل من requirements.txt موجود:
uv pip compileيأخذه مباشرةً، ترقية بدون ألم - تبعيات السكريبت المؤقتة:
uv run --with rich script.py— لا حاجة لإعداد venv - تشغيل أدوات CLI:
uvx ruffعند الطلب، مثل pipx لكن أضعاف أسرع - غير موصى به: المشاريع القديمة التي لا تزال على Python 2 — فكّر في ترحيلها أولاً، لا تطلب من uv السفر عبر الزمن
خريطة التعلم
- البداية السريعة: التثبيت وإنشاء أول مشروع (أول تجربة مع uv)
- المفاهيم الجوهرية: pyproject.toml وuv.lock والبيئات الافتراضية — ابنِ النموذج الذهني أولاً
- الأنماط الشائعة: إدارة التبعيات وuv run وuvx وتنفيذ السكريبت — 80% من السيناريوهات اليومية
- متقدم: تبديل إصدارات Python وواجهة pip وWorkspace — مشاريع متعددة والترحيل
- أفضل الممارسات: تجنب المخاطر والإرشادات التشغيلية — ألم أقل، وقت أكثر توفيراً
التثبيت
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"⚠️ بعد التثبيت، أعد تشغيل محطتك أو شغّل
source $HOME/.local/bin/env(كما أرشد المثبّت) للتأكد من أنuvفي PATH الخاص بك.
ملخص بجملة واحدة
بحلول الوقت الذي تنهي فيه pip دورانها، uv يكون قد ثبّت كل شيء وشغّل الكود وجهّز لك قهوة. لا تصدق؟ المقالة التالية ستثبت ذلك في عشر دقائق.