Conference Presentation, Keynote
Steve Lee: State of the Shell: PowerShell7
- Windows PowerShell 5.1 will remain indefinitely with no updates, new features, or version releases (e.g., 5.2, 6, 7), though critical bug fixes will continue until it is eventually superseded.
- PowerShell Core 6.0 achieved GA in January 2018; the immediate roadmap targets PS7.1 based on .NET 5 and PS7.2 based on .NET 6, with a strategy of aligning releases to the .NET team's every-other-year LTS cadence.
- General Availability for the next release is targeted for January, following a release process starting in the first week of the current month after a release candidate is issued mid-next week.
- PowerShell 7 support is projected for three years starting from GA, while PowerShell 6.2 support ends in July after GA, with no current plans to release a PowerShell 8.
- PowerShell 7 will not ship in-box with Windows due to the three-year .NET Core support lifecycle conflicting with the five-plus-five year Windows support model.
- Experimental features will be disabled by default in the upcoming release candidate, while specific features like the ternary operator, concise view, and error management are confirmed to become stable.
- Cross-platform parity efforts are limited; features requiring native APIs like
Clear-RecycleBinare unlikely to be ported, whileStop-Computer/Restart-Computermay appear in PS7.1. - Startup performance for PowerShell 7 is expected to be 600 to 800 milliseconds, which is slower than the 300 to 400 milliseconds of Windows PowerShell 5.1, with full parity difficult without significant native code.
- PowerShellGet v3 is a complex rewrite not expected to be ready for a preview until the first quarter of the following year, while PSScriptAnalyzer 2.0 is scheduled for GA in January.
- SSH remoting is already production-ready and cross-platform, whereas WinRM-based remoting remains partially supported; Azure Functions teams aim to move to PowerShell 7 shortly after the January GA.
- Debugging in VS Code will likely leverage SSH remoting in the PS7.1 timeframe, while implementing GAC constraints within SSH remains a complex future consideration.
- Constrained endpoints (GAC) in SSH are considered a very hard problem with no immediate plans, whereas OpenSSH has been production-ready since Windows 1903.
- Future release automation experiences and conference sessions regarding PowerShell Summit, Europe, and Asia are planned, with specific topics to be finalized as the team moves past the current major release.