写点什么

VS Code 更新 Python 支持,微软为支持 Pylance 抛弃开源语言服务器

  • 2021-09-08
  • 本文字数:1117 字

    阅读完需:约 4 分钟

VS Code 更新 Python 支持,微软为支持Pylance抛弃开源语言服务器

9 月初,Microsoft 宣布更新了 Visual Studio Code 中对 Python 的支持,并引入了 Web 浏览器中的编辑功能。该公司还将其开源的 Python 语言服务器存档,以支持闭源的 Pylance。

 

11 月份,微软将再次更新 Python in Visual Studio Code 扩展,而 Microsoft Python 语言服务器也将随之结束生命周期。弃用后,Microsoft Python 语言服务器存储库将被标记为已存档,不过开发者仍然可以在语言服务器的代码库上进行分叉和构建。

 

Python 2.7 用户的 IntelliSense 支持来自Jedi 0.17,这也将是支持 Python 2.7 的最后一个 Jedi 版本。从 10 月份开始,微软将只支持 Jedi 0.18 和更高的版本,不再提供对 Jedi 0.17 的支持,同时放弃支持 ctags 和 rope。官方建议是升级到 Python 3 或最好使用 Pylance 。但某些 Python 库仅存在于 2.x 版本中,这也可能是一个问题。

 

语言服务器是驱动 VS Code 编辑器中特定编程语言的功能引擎,例如支持语法突出显示、代码完成和错误检测。微软第一次使用 Python 语言服务器是在 2018 年,并且将其开源

 

2020 年 6 月,微软宣布使用性能更高、功能更丰富的新 Python 语言服务器 Pylance ,并最终放弃了旧语言服务器 Microsoft Python 语言服务器。此后,微软团队一直在改进Pylance 和开源语言服务器Jedi 中的语言服务器支持

 

Pylance 可利用语言服务器协议与 VS Code 进行通信。据介绍称,Pylance 是以微软的静态类型检查工具 Pyright 作为基础开发的全新的语言服务器,利用类型 stubs(.pyi 文件)和惰性类型推断来提供高性能的开发体验。Pylance 通过丰富的类型信息增强用户的 Python IntelliSense 体验,帮助用户更快、更好地编写代码。Pylance 扩展还随附了热门模块的形态存根档(Type Stub)集合,以提供快速、准确的自动完成和类型检查。

 

根据统计数据,Python 扩展组件的安装量超过 4100 万,而第三方 Python 扩展组件的安装量仅 300 多万,后者使用 pyLint 或 flake8 作为 linter(均为开源)。

 

Pylance 现在已经成为 Python for Visual Studio Code 的默认语言支持,微软几乎所有的用户都已切换到了该新语言服务器。

 

尽管 VS Code 是免费和开源的,但与微软最初的 Python 语言服务器不同,Pylance 是闭源的,这也是其不太吸引开发者的地方。

 

Pylance 的许可声明显示,开发者只能在 Microsoft Visual Studio、Visual Studio for Mac、Visual Studio Code、Azure DevOps、Team Foundation Server 和后续 Microsoft 产品和服务(统称为,Visual Studio 产品和服务)中,来开发和测试应用程序。

 

语言服务器是 VS Code 的基础。尽管 Pylance 是建立在一个单独的开源项目Pyright 之上,但这样的改变一定程度上还是破坏了编辑器的开源状态,并使社区更难修复问题和提出改进建议。

 

2021-09-08 10:386438

评论

发布
暂无评论
发现更多内容

Java笔记 —— IO,java定时任务quartz面试

Java 程序员 后端

Java集合之ArrayList详解,大厂越来越注重基础了,建议收藏

Java 程序员 后端

Java程序员极力推荐的springboot全家桶干货系列

Java 程序员 后端

Java知识体系总结(2021版),JDK、JRE与JVM的区别与联系

Java 程序员 后端

Java程序员必须熟记的微服务面试题(含答案)

Java 程序员 后端

Java程序员经典面试题集大全(一),分享面试经历的网站

Java 程序员 后端

Java笔记 —— Set集合的排序原理,附答案+考点

Java 程序员 后端

Java版流媒体编解码和图像处理(JavaCPP+FFmpeg)

Java 程序员 后端

Flink 实践教程:入门(2):写入 Elasticsearch

腾讯云大数据

flink 流计算 Oceanus

Java进阶之梯,成长路线与学习资料,助力突破中间件领域

Java 程序员 后端

Java进阶之深入理解Java的接口和抽象类,剑指java面试百度云

Java 程序员 后端

java继承和多态,Java开发岗笔试题

Java 程序员 后端

机器学习在基于源码的漏洞挖掘中的应用

maijun

机器学习 静态代码分析 源码漏洞挖掘 code embedding

Java系列高频面试题:序列化+注解,java基础入门第二版电子书

Java 程序员 后端

Java注解,java架构师课程哪家好

Java 程序员 后端

Flink 实践教程:入门(3):读取 MySQL 数据

腾讯云大数据

flink 流计算 Oceanus

Java程序员:面试字节跳动被问算法 多亏我扛下来了

Java 程序员 后端

Flink 实践教程:入门(1):零基础用户实现简单 Flink 任务

腾讯云大数据

flink 流计算 Oceanus

java程序员的AI之路-大数据篇 hadoop安装(1)

Java 程序员 后端

Java程序员裸辞两个月,面试阿里、美团,值得一读

Java 程序员 后端

Java程序员(阿里、京东,java系统架构设计详解

Java 程序员 后端

腾讯数字生态大会|大数据与你相约武汉

腾讯云大数据

大数据

040022-week2-design

InfoQ_70156470130f

Java的wait和notify学习三部曲之一:JVM源码分析

Java 程序员 后端

Java程序员的工资为什么那么高,首先要先掌握这999页阿里P8笔记!

Java 程序员 后端

Java类的继承与组合经典实例,java自学教程百度云盘

Java 程序员 后端

Java虚拟机(JVM)面试题(2020最新版),linux视频教程下载

Java 程序员 后端

架构实战营第 1 期 - 毕业总结

Anyou Liu

「架构实战营」

模块二作业

迪马

Java静态代理和动态代理的使用及原理解析,java项目面试难点

Java 程序员 后端

java程序员的AI之路-大数据篇 hadoop安装,java基础知识点梳理

Java 程序员 后端

VS Code 更新 Python 支持,微软为支持Pylance抛弃开源语言服务器_语言 & 开发_褚杏娟_InfoQ精选文章