neovim من روی گیتهاب سر زده باشید و کمی هم بهش نگاه کرده باشید میدونید که تنظیمات مربوط به typecheck من یک مقدار هکی هست؛ ترکیبی از ruff, pyright, mypy و یک سری توابع کاستوم برای پیدا کردن .venv داخل پروژه و ... کار میکرد ؟
بله
خیلی از دوستان حتی از عملکردش رضایت هم داشتند ولی روی پروژههای بزرگ بعضی وقتا واقعا اذیتم میکردم بخصوص اینکه شدیدا کند بود.
یک پیام توی گروهی دیدم (خیلی قدیمی بود و گروه رو من خیلی وقت بود باز نکرده بودم) درمورد بازنویسی pyrefly با
Rust و بحثهای پیرامون اون یک سری به سایتش زدم و دیدم چقدر عالی حالا دیگه extension هارو هم داره و با Mason هم کار میکنه.اگر خواستید بدونید تفاوت سرعتش نسبت به جایگزینها چقدر هست؛ صفحهی اصلی رو میتونید چک کنید:
مثلا برای پروژه
instagram (بله این پروژه روی پایتون هست)Pyrefly: 13.4s
Pyre: more than 300s
من حوصلم نشد تا آخر Pyre صبر کنم ولی از چیزی که نوشتم هم گذشت
یا برای پروژه
pytorch :Pyrefly: 2.4s
Pyright: 35.2s
MyPy: 48.1s
دوستانی که روی پروژه بزرگ کار کردند یا
CI/CD نوشتند برای پروژه یا حتی pre-commit رو فعال کردند کاملا میدونند من چی میگم.پیشنهاد میکنم حتما تستش کنید؛ برای من بسیار بسیار مفید بود واقعا
اگر هم خواستید میتونید از کانفیگ
neovim بنده استفاده کنیدMy Neovim Config
البته فعلا روی برنچ
feat/pyrefly هست تا چندروز بیشتر و روی پروژههای دیگر هم تستش کنم و مطمئن بشم همه چیز درست کانفیگ شده.