Julyth 2019-04-12
作者 | 局长
本文经授权转载自开源中国(ID:oschina2013)
在发布 PowerShell Core 6.2 GA 版本一周后, 微软在博客公布了 PowerShell 下一个版本 —— PowerShell 7 的相关信息,并解释了为何直接从 6.2 跳到 7。
PowerShell 7
微软宣布下一个版本将是 PowerShell 7,而不是预期中的 PowerShell Core 6.3,这标志着 PowerShell 开发的重大变化。
微软希望同一版本的 PowerShell 能在所有平台运行,以实现更好的跨平台兼容性。此外,微软将为 PowerShell 采用新的生命周期,发布 LTS(长期支持版本)和非 LTS 版本的 PowerShell 7,使其与 .NET Core 支持的生命周期紧密保持一致。
为什么是 7 而不是 6.3?
微软表示,在过去两年里,PowerShell Core 的使用率显著增加。其中大部分增长来自 Linux 平台,这对于将 PowerShell 打造成跨平台工具是一个令人鼓舞的数据。但同时也能清楚地看到,Windows 版本的使用量并没有显著增长,反倒是 Linux 用户成了 PowerShell 的核心用户,这对于首先在 Windows 平台推出的 PowerShell 有点令人吃惊。
微软表示这可能与 Windows 平台上版本的功能缺失有关,由于不支持的模块、程序集和 API,现有的 Windows PowerShell 用户无法利用 PowerShell Core 的新功能、性能增强和错误修复。为解决这个问题,微软努力在下一版本中完全替换 Windows PowerShell 5.1。
PowerShell 团队负责人 Steve Lee 表示,他们也早已注意到 PowerShell 的 Windows 用户增长缓慢,并将原因归于现有的自动化工具与 PowerShell Core 不兼容,为解决这个问题,他们决定全力开发 PowerShell 7 去完全替代 Windows PowerShell 5.1。
因此微软决定直接发布 PowerShell 7,希望该版本能在所有平台运行,以实现更好的跨平台兼容性。
发布时间
PowerShell 7 的一项重大工作是将 PowerShell Core 6 代码库移植到 .NET Core 3.0,所以 PowerShell 的发布时间取决于使用 .NET Core 3.0 完成 PowerShell 的集成和验证相关工作。
不过微软表示 PowerShell 7 的首个预览版可能会在 5 月发布,而为了让 PowerShell 7 与 .NET Core 时间轴保持一致,最终的 GA 版本将在 .NET Core 3.0 发布 GA 之后再推出。