UV: Швидке та просте управління пакетами Python

pic

Управління пакетами Python завжди було трохи повільним. Якщо ви працювали з Python-проектами, ви знаєте, як довго доводиться чекати при запуску “pip install”. Але є хороші новини — UV ось-ось змінить це.

Що таке UV?

UV — це новий менеджер пакетів для Python, написаний на Rust. Він виконує ту ж саму роботу, що і pip, але набагато швидше. Уявіть собі його як швидшого кузена pip.

Чому це важливо?

Просто — це економить час. Ось що UV робить краще:

  1. Він дійсно швидкий — у 10–100 разів швидший за pip
  2. Працює з вашою поточною конфігурацією проекту
  3. Підтримує як пакети, так і версії Python

Як почати

Спочатку давайте встановимо UV:

curl -LsSf https://astral.sh/uv/install.sh | sh

Тепер давайте подивимося, як UV працює на практиці. Ось як створити новий проект:

# Створіть нове віртуальне середовище  
uv venv  
# Активуйте його (на системах Unix)  
source .venv/bin/activate  
# Встановіть пакети  
uv pip install flask pandas

Реальний приклад

Припустимо, ви будуєте веб-додаток. Ось як UV робить це простішим:

# Створіть файл requirements.txt  
uv pip freeze > requirements.txt  

# Встановіть залежності в новому середовищі  
uv pip sync requirements.txt

Ключові особливості, що мають значення

Швидка інсталяція

UV встановлює пакети паралельно. Те, що раніше займало хвилини, тепер займає секунди.

Розумне кешування

UV запам'ятовує, що ви вже встановлювали. Більше не потрібно завантажувати ті ж самі пакети знову і знову.

Управління версіями Python

Потрібен Python 3.10 для одного проекту і 3.11 для іншого? UV справляється з цим:

uv python install 3.11  
uv python install 3.10

Загальні завдання, зроблені простими

Робота з файлами вимог

# Згенеруйте requirements.txt  
uv pip freeze > requirements.txt  

# Встановіть з requirements.txt  
uv pip install -r requirements.txt

Управління віртуальними середовищами

# Створіть venv  
uv venv  

# Видаліть venv  
rm -rf .venv

Коли використовувати UV

UV ідеально підходить для:

  • Нових Python-проектів, де потрібно швидко налаштувати середовище
  • CI/CD пайплайнів, де важлива швидкість
  • Проектів з великою кількістю залежностей
  • Команд, які потребують постійних версій Python

Чи варто переходити?

Якщо ви задоволені pip, не обов’язково переходити відразу. Але якщо ви хочете швидше встановлення пакетів і простіше управління версіями Python, UV варто спробувати.

Поради для успіху

  • Тримайте ваш файл requirements.txt актуальним
  • Використовуйте кеш UV для прискорення встановлення
  • Спробуйте UV на тестовому проекті
  • Пам'ятайте, що UV працює поряд з pip — вам не потрібно вибирати між ними

Підсумки

UV робить управління пакетами Python швидшим і простішим. Він не намагається замінити все — він просто виконує звичайні завдання краще. Спробуйте його на наступному проекті. Офіційну документацію можна знайти за посиланням: https://docs.astral.sh/uv

Пам'ятайте: ви все ще можете використовувати звичні команди pip з UV. Просто додайте uv pip замість pip і все буде працювати.

Оригінал опубліковано на https://www.ayarshabeer.com.

Перекладено з: UV: Making Python Package Management Fast and Simple

Leave a Reply

Your email address will not be published. Required fields are marked *