Знакомьтесь: uv от Astral (те же ребята, что сделали Ruff). Это менеджер пакетов на Rust, который в 10-100x быстрее обычного pip.
Зачем он нужен, если есть poetry?
✅ Скорость — установка зависимостей за секунды, а не минуты
✅ Универсальность — заменяет pip, poetry, pyenv, virtualenv и pip-tools сразу
✅ Стандарты — полная совместимость с pyproject.toml
✅ Совместимость — лучше разрешает конфликты версий, чем poetry
Миграция за 3 команды:
# Установка
curl -LsSf https://astral.sh/uv/install.sh | sh
# Создаём окружение (вместо python -m venv)
uv venv
# Устанавливаем зависимости из pyproject.toml
uv pip install -e .
Ключевые отличия от poetry:
🔹
uv pip — дроп-ин замена pip (работает с requirements.txt)🔹
uv run — запускает скрипты в изолированном окружении без активации venv🔹
uv lock — генерирует lock-файл (как poetry.lock, но быстрее)Готовый workflow для проекта:
uv init myproject # создаёт структуру проекта
uv add fastapi # добавляет зависимость
uv run main.py # запускает с автоматической установкой
uv build && uv publish # сборка и публикация
Стоит ли мигрировать?
Да, если:
- Устали от медленного poetry на больших проектах
- Нужна простота pip + скорость Rust
- Работаете в CI/CD — экономия времени критична
Пока подождите, если:
- Сложный setup с плагинами poetry
- Активно используете poetry shell (в uv пока нет прямого аналога)
Личный опыт: на проекте с 50+ зависимостями установка сократилась с 2 минут до 8 секунд. Poetry удалять пока не спешу, но для новых проектов — только uv
Пробовали uv? Делитесь опытом в комментах 👇
#python #uv #packaging #devtools
Please open Telegram to view this post
VIEW IN TELEGRAM
astral.sh
Astral: High-performance Python tooling
Astral builds high-performance developer tools for the Python ecosystem: Ruff, ty, and uv, an extremely fast Python package manager, written in Rust.
🔥2❤1💯1
Если вы работаете с Python, то наверняка знакомы с Pydantic — «телохранителем» вашего кода, который следит, чтобы в переменные не попало ничего лишнего. Но пришло время двигаться дальше: вторая версия библиотеки — это не просто минорное обновление, а настоящий технический скачок!
Что же изменилось и почему вам стоит обновиться прямо сейчас?
Главная новость: ядро Pydantic v2 полностью переписано на Rust. Это значит, что валидация стала быстрее в 5–50 раз! Теперь проверка огромных JSON-файлов не будет «бутылочным горлышком» вашего приложения.
🛠 Что нового в коде?
Разработчики навели порядок в API, сделав его более логичным и предсказуемым:
• Префикс
model_: Теперь все встроенные методы начинаются одинаково (например, model_validate() вместо старого from_orm()). Это исключает путаницу с вашими собственными полями.• Strict Mode: Теперь можно заставить Pydantic быть «строгим». Больше никакой автоматической конвертации строки "123" в число, если вы этого явно не разрешили.
• TypeAdapter: Теперь можно валидировать простые типы (например, список строк или словарей) без создания целого класса модели.
🎢 Как переехать с v1 и не сломать всё?
Миграция может показаться пугающей, но команда Pydantic позаботилась о нас:
1. Пакет
pydantic.v1: Вы можете использовать обе версии в одном проекте параллельно. Это позволяет обновлять код по частям, а не всё сразу.2. Инструмент
bump-pydantic: Это магическая утилита, которая автоматически перепишет большую часть вашего старого кода под новый стандарт.А вы уже перешли на вторую версию или пока присматриваетесь? Поделитесь в комментариях, какой функции вам больше всего не хватало в v1
#Python #Pydantic #Backend #Programming #WebDevelopment
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1😁1