tg-me.com/Python_Community_ru/2590
Last Update:
👣 Pyrefly — это новая высокопроизводительная система статической типизации и платформа IDE для Python, созданная командой Facebook на языке Rust.
Основное:
🔍 Продолжатель Pyre
Pyrefly разрабатывается как следующая версия типового проверяльщика Pyre от Meta, с акцентом на скорость, модульность и возможность генерации «типизированного» AST.
🚀 Написано на Rust
Большая часть кода реализована на Rust для обеспечения лучшей безопасности памяти и поддержки конкурентности. Примерно 1 % кода написано на Python и около 6 % на TypeScript (для веб-интерфейса и LSP).
⚙️ Проверка в три шага
Сбор экспортируемых элементов каждого модуля (рекурсивное разрешение всех import *)
Преобразование кода в набор «байндингов» (definitions, uses, anon) с учётом потоковых типов
Решение этих байндингов с использованием потоковых типов и phi-функций при ветвлениях и рекурсии
💡 Масштабируемость и инкрементальность
Модульно-ориентированный подход: проверка каждого модуля целиком, с возможностью параллельного запуска и меньшей сложностью по сравнению с тонкозернистыми DAG-алгоритмами.
🛠️ Интеграция и сборка
Для разработчиков на Rust: команды cargo build, cargo test
Во внутренних проектах Meta: запуск через Buck2 (buck2 run pyrefly -- check file.py)
Для PyPI: сборка wheel-пакетов через Maturin (pip install maturin && maturin build)
📡 Функции IDE и LSP
Поддерживается Language Server Protocol, обеспечивающий автодополнение, переход к определению и интерактивную отладку в редакторах.
📆 Планы
Полная замена Pyre намечена к концу 2025 года с еженедельными стабильными релизами на PyPI.
📜 Лицензия
MIT — свободное использование и участие в развитии проекта приветствуются.
🔜 Подробнее узнать и принять участие можно в репозитории на Github (https://github.com/facebook/pyrefly)
@Python_Community_ru
BY Python Community

Share with your friend now:
tg-me.com/Python_Community_ru/2590