微軟開放 Pylance 切換型別檢查器,VS Code 支援 Meta Pyrefly

BlueSky

AI 摘要

  • 微軟與 Meta 合作開發 Type Server Protocol,讓 Pylance 可改用 Pyrefly 進行型別檢查
  • 開發者切換後仍可使用 Pylance 的自動完成、提示及 GitHub Copilot 整合功能
  • 使用整合功能需 Pylance 2026.4.1 以上版本,並搭配至少 0.60.0 版的 Pyrefly

微軟與 Meta 合作開發型別伺服器協定(Type Server Protocol,TSP),讓 VS Code 的 Python 語言支援套件 Pylance 可以改用 Meta 的 Pyrefly 進行型別檢查。目前此功能已開放所有 VS Code 使用者使用,開發者切換後仍可保留 Pylance 原有的程式碼自動完成、提示及 GitHub Copilot 整合功能。

切換方式與功能定位

Pylance 會在開發者撰寫 Python 程式時提供程式碼自動完成、錯誤提示及查找函式定義等功能。型別檢查則是確認變數及函式使用的資料是否符合預期,協助在程式執行前找出可能的錯誤。過去 Pylance 與微軟開發的 Pyright 型別檢查器緊密整合,若開發者偏好 Pyrefly,必須另外安裝其 VS Code 擴充套件,無法直接在 Pylance 中切換。

TSP 是微軟與 Meta 共同開發的協定,讓 Pylance 能與不同型別檢查器交換程式碼分析資訊,不必綁定單一工具。透過 TSP,開發者可交由 Pyrefly 檢查程式碼型別,Pylance 則繼續提供自動完成建議、程式碼導覽及 GitHub Copilot 整合功能。微軟已在 GitHub 公開協定規格,Pyright 仍是 Pylance 預設使用的型別檢查器。

使用條件

  • 需要 Pylance 2026.4.1 以上版本
  • 需搭配至少 0.60.0 版的 Pyrefly
  • Pylance 偵測到 Pyrefly 時會詢問是否切換;若尚未安裝 Pyrefly,Pylance 也能自動下載

Pyrefly 技術特點

Pyrefly 由 Meta 主導開發,使用 Rust 語言實作,著重大型 Python 專案的型別檢查速度,也能辨識使用 Pydantic 或 Django 時常見的程式寫法。開發團隊可依專案需求選擇型別檢查器,不必因此更換原本使用的 Pylance 功能。

型別檢查器設定比較

VS Code 設定選項型別檢查器說明
Pylance 內建分析Pylance 內建使用 Pylance 原有的型別分析
Pylance 搭配 PyrightPyrightPyright 為 Pylance 預設使用的型別檢查器
Pylance 搭配 PyreflyPyrefly透過 TSP 交由 Pyrefly 檢查程式碼型別

兩種使用方式的適用對象

使用方式適合對象
安裝 Pyrefly 獨立擴充套件多數使用者,可取得型別檢查、程式碼自動完成及修改程式結構等功能(Pyrefly 團隊建議)
透過 Pylance 整合 Pyrefly需要保留 Pylance 原有功能,或使用 GitHub Copilot 整合功能的開發團隊

Reference Link : ithome.com.tw

Related Articles

Stay Connected

0FansLike
0FollowersFollow
22,800SubscribersSubscribe
spot_img

Latest Articles