(комментировать можно в следующем посте)
Пара полезностей из мира Python tooling, которые сам использую на практике.
Flit
Вот придумали вы типичную Python библиотеку, которая состоит только из .py файлов, и хотите загрузить ее на PyPI (публичный или рабочий), живя в модном мире с
pyproject.toml и всеми PEP стандартами. Flit — максимально простое и приятное решение ровно (и только) для этого, это буквально Press X to Win, 10/10. Например, FastAPI долгое время жил на Flit (причем ушел с него по недоразумению, а не по реальной нужде).Ruff
Это новый must have линтер, который на порядки (буквально) быстрее старичков типа flake8, isort и т.д. Ощущение, что на него переезжают буквально все, просто нереальный хайп, и абсолютно по делу. Поэтому добавлю менее очевидное:
- Расширение Ruff в VSCode по-умолчанию фиксит недостатки в вашем коде. Казалось бы, окей, прямо как black. Но вы знали, что black после своих изменений валидирует результат на уровне AST? Ruff так пока не делает (как минимум потому что меняет не только стиль вашего кода), и бывает всякое. Не знаю как тут правильно быть, лично я пока отключил эту функцию.
- Автор Ruff запустил стартап Astral, целиком посвященный Python tooling! Супер круто. Среди основателей — автор maturin (это когда ваша Python библиотека использует Rust модули, и надо это как-то билдить и опять же загружать на PyPI). В общем press F for flake8 etc., black приготовиться.
А расскажите, какие инструменты для Python вам приносят пользу?
@simple_it_channel