Комментарии 17
Чейнжлог скриншотом это конечно уровень
зато какой длинный!
Спасибо за инфу. Буду применять.
Вот бы они ускорили dependency resolution... Иногда по несколько минут все "висит"
Аж целых две минуты о боже мой, те кто компилирует си код им эти 2 минуты никогда не понять ...
Uv вам в помощь, за секунду может поставить то, что обычный pip и poetry ставят минутами
Uv до сих пор не production ready. Я бы два раза подумал, прежде чем использовать его в коммерческом продукте
production ready — фраза конечно крутая, но uv всё равно лучше работает, на мой взгляд.
Главное, чтобы не сломалось в самый неподходящий момент)
uv does not yet have a stable API; once uv's API is stable (v1.0.0), the versioning scheme will adhere to Semantic Versioning.
https://docs.astral.sh/uv/reference/policies/versioning/
Да, я понимаю. Но не думаю, что они станут теперь сильно менять API, ибо зачем. К тому же можно не спешить обновляться, а заранее спокойно поправить свои проекты.
P. S. Хотя есть PEP 751 https://peps.python.org/pep-0751 о стандартизации lock-файла. Может когда-то там что-то решат, и потом uv перейдёт на стандартный lock-файл, это было бы существенным изменением.
poetry ломалась раза три, и это только после выхода 1.0
Этот лейбл говорит о смелости мейнтейнеров. И распространяется не на все фичи uv.
Для примера, тот же poetry при обновлении пакета убирал зависимости зависимостей из lock-файла, и новая версия black уже переставала работать. И мейнтейнерам poetry это не мешает считать проект production ready.
pip давно умеет работать с pyproject.toml и тащить список пакетов оттуда. С опциональными пакетами тоже нет проблем, через pip install -e .[dev] все пакеты из одноимённой секции pyproject.toml поставятся. Да и резолв сложных зависимостей тоже вроде не вызывает уже боли, за последние пару лет не припомню никаких проблем с этим
Скажу честно, больше полугода тестил uv, и не вижу причин продолжать использовать poetry или pdm.
Пока там не готов python shim, поэтому оставил pyenv-win, хотя это и не особо нужно. Также скачивать пакеты из pypi для офлайн-установки (airgapped) приходится с помощью pip в контейнере. В остальном мои потребности uv полностью закрывает.
Одно из самых заметных изменений - это то, что команду poetry shell
убрали "из коробки". Теперь нужно предварительно поставить шелл как плагин: poetry self add poetry-plugin-shell
.
Релиз Poetry 2.0 — инструмента для управления зависимостями в Python проектах