TGViewer
Zen of Python Zen of Python @zen_of_python · 18.8K subscribers
Post #4716 4.23K
Вышел packaging 26.0 — тот самый релиз с ускорением в три раза, о котором писал пару недель назад.

Напомню контекст: packaging — библиотека для работы с версиями и зависимостями. Встроена в pip, а pip — в Python. 650+ миллионов скачиваний в месяц.

➡️ Что в релизе

Обещанные оптимизации: регулярки больше не перекомпилируются каждый раз, добавлены __slots__ для Version и Specifier, улучшено кэширование. Результат — парсинг версий стал в три раза быстрее, количество создаваемых объектов в pip упало с 4,8 млн до 400 тыс.

➡️ Новые фичи

PEP 751 — поддержка pylock-файлов для воспроизводимых установок. PEP 794 — импорт метаданных имён пакетов. Positional pattern matching для Version и Specifier — теперь работает match version:
from packaging.version import Version

match Version("3.14.0"):
case Version(major=3, minor=14):
print("Python 3.14!")


➡️ Breaking changes

.contains() теперь возвращает False вместо исключения для невалидных версий. Если ловили InvalidVersion — проверьте код.

Обновление подтянется автоматически с новыми версиями pip.

📎 Changelog, PyPI

@zen_of_python
  • ❤ 12
More from @zen_of_python
  1. Sep 23, 2026Как __getitem__ превращает объект Python в итерируемый Для цикла for объекту не всегда нуж…
  2. Sep 23, 2026Что меняет re.prefixmatch() в Python 3.15 re.match() проверяет совпадение только в начале…
  3. Sep 23, 2026Pyodide разрешил публиковать WASM-колёса прямо в PyPI В Pyodide 314.0 появилась прямая пуб…
  4. Sep 22, 2026Как применять структурное сопоставление с образцом к деревьям в Python Структурное сопоста…
  5. Sep 22, 2026Почему в Python стоит подменять свой интерфейс, а не httpx Если бизнес-тест напрямую подме…
  6. Sep 22, 2026Как точно типизировать *args и **kwargs в Python Запись *args: tuple[int, str] выглядит ка…
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 →