


11 ноября опубликован ty 0.0.101, обновление инструмента проверки типов и языкового сервера для Python от Astral. Релиз исправляет несколько ошибок анализа и добавляет резервный режим наблюдения за файлами. На Mentoring.digital выделяем изменения, важные для проектов с Pydantic и интеграцией редактора.
В проверке типов исправлено сохранение строгости Pydantic при использовании алиасов типов из PEP 695. Если проект задаёт тип через такой промежуточный псевдоним, анализатор должен учитывать соответствующее строгое поведение и после прохождения через алиас.
Это исправление статического анализа. Оно не меняет данные вашего приложения и само по себе не переключает режим проверки значений во время выполнения. После обновления стоит повторить проверку типов для участков, где модели Pydantic используют такие алиасы, и сравнить диагностику.
ty больше не должен аварийно завершаться на объединениях рекурсивных именованных кортежей. В выпуске также исправлено сохранение типа элемента, когда tuple передаётся как функция обратного вызова. Для вложенных partial устранена повторная нормализация.
Эти пункты описывают конкретные случаи из примечаний к релизу. Из них нельзя вывести обещание, что анализ любого Python-проекта стал быстрее или что инструмент теперь понимает все варианты рекурсивных типов. Если раньше сбой воспроизводился на небольшом фрагменте, полезно сохранить его как отдельный пример для повторной проверки.
Языковой сервер LSP получил запасной путь: если зарегистрировать наблюдатель файлов не удалось, он переходит к наблюдению за всей рабочей областью. Это относится к связи анализатора с редактором и получению изменений файлов, а не к новой диагностике языка.
После обновления проверьте сценарий редактирования зависимого файла: отражается ли изменение типов в открытом модуле без ручного перезапуска сервера. Командная проверка проекта и диагностика в редакторе дополняют друг друга, поэтому результат стоит посмотреть в обоих сценариях.
Если нужны помощь с аннотациями, моделями и разбором сообщений анализатора, можно обратиться к наставнику по Python. Обновление ty не подменяет тесты поведения приложения, особенно там, где данные приходят извне.