TGViewer
Zen of Python Zen of Python @zen_of_python · 18.8K subscribers
Post #4802 4.68K
Как писать Python-библиотеки в 2026 году — гайд от разработчика, который недавно прошёл этот путь в продакшене.

Основной тезис: экосистема Python наконец-то консолидировалась. Вместо десятка разрозненных инструментов теперь можно обойтись экосистемой Astral.

Стек:
uv init --lib my-package — проект за одну команду, src-структура, pyproject.toml, .python-version сразу на месте
ruff — линтинг и форматирование в одном флаконе
mypy или ty / pyrefly — типизация (автор рекомендует попробовать все три, uv позволяет быстро переключаться)
pytest + pytest-cov — тесты с coverage
uv run --python 3.12 — тестирование на разных версиях Python без tox и nox
pre-commit + CI — контроль качества до момента коммита и при релизе

Ключевой инсайт: uv настолько хорош, что для внутренних библиотек даже не обязательна публикация в PyPI. Можно ставить прямо из git-репозитория: uv add /path/to/my-package, и uv сам разберётся с билдом, кэшем и линковкой.

В конце автор разбирает реальные стеки openai-python и polars. Оба уже на ruff, но openai ещё на старом билд-инструменте (hatchling через rye), а polars обходит стандартный подход из-за Rust-ядра.

Полный гайд: https://stephenlf.dev/blog/python-library-in-2026/
  • 👍 9
  • ❤ 1
More from @zen_of_python
  1. Sep 21, 2026Как точечно сравнивать скорость функций Python с tprof Профилировщик помогает найти медлен…
  2. Sep 21, 2026Как писать Python-скрипты, которые удобно запускать в пайплайнах В разборе Bite code! собр…
  3. Sep 21, 2026Как упаковать Go-бинарник в wheel и подключить к Python PyPI может раздавать не только Pyt…
  4. Sep 20, 2026Как collections.deque хранит элементы блоками У deque два конца, поэтому легко представить…
  5. Sep 20, 2026Что ускоряет django-msgspec в Django и где он расходится с json django-msgspec заменяет ко…
  6. Sep 20, 2026Почему миллион чисел в Python занимает 35 МБ Список из миллиона целых, которые помещаются…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →