News

PowerShell 7 General Availability Planned for January 2020

The PowerShell 7 scripting language is expected to reach "general availability" commercial release status in January, according to Steve Lee, a principal software engineer manager for PowerShell at Microsoft, in an Oct. 23 announcement.

Lee also announced PowerShell 7 Preview 5, the latest test version of the product, which is now available. He suggested that there will be one more preview release of PowerShell 7 coming in November. A "release candidate" version of PowerShell 7 is expected to arrive in December, and it'll be "aligned with the .NET Core 3.1 final release," he added.

Product Consolidations
Microsoft has been working to consolidate past PowerShell types with the PowerShell 7 product. It's also looking to consolidate its .NET Framework platforms. The two actions are somewhat coordinated, which affects the release timing.

While Microsoft released .NET Core 3.0 back in September, it ultimately has broader plans to create one unified .NET development platform, which will be called ".NET 5." This unified .NET 5 platform is expected to appear sometime in November 2020.

PowerShell 7 will be replacing the current Windows PowerShell 5.1 and PowerShell Core 6.x products. Microsoft has been working to ensure module compatibility with these past products in developing PowerShell 7.

New Features
Lee described a few of the new features in PowerShell 7 Preview 5. It has a new Pipeline Chain Operators feature, which "allow conditional execution of commands depending on whether the previous command succeeded or failed." Pipeline Chain Operators can be used instead of "If" statements, he explained.

There's also a new null assignment operator ("$null") in PowerShell 7 Preview 5. It can be used to check if a variable or property is null or not. It's a substitute approach to using "If" and "Else" statements.

Another addition in PowerShell 7 Preview 5 is the ability to "use tab completion on variable assignment." A new Get-Error commandlet shows rich information about errors in code.

Microsoft also brought back the Get-HotFix commandlet in PowerShell 7 Preview 5. It'll show installed patches.

A coming feature, expected to appear in PowerShell 7 Preview 6, will pop up a notice at startup if users are on an old PowerShell version, according to Lee. PowerShell 7 Preview 6 could be the version to show up in the Microsoft Store instead of the GitHub code repository, he added, in a Twitter post.

The expected January release of PowerShell 7 will also be its "first Long Term Servicing release," according to Lee. The "long-term servicing" term is likely a familiar one, mostly for Windows 10 users, where it represents a slower product-release approach by Microsoft.

However, PowerShell 7's long-term servicing release won't be quite as slow because it will likely adhere to the Microsoft Modern Lifecycle policy. Based on the update schedule for PowerShell Core, which follows the Microsoft Modern Lifecycle, it's likely that a long-term servicing release of PowerShell 7 will require moving to a new major product release ("channel" release) every six months. In addition, patches will need to get applied within 30 days. Otherwise, organizations will cease to get future upgrades and patches from Microsoft, per this policy.

About the Author

Kurt Mackie is senior news producer for 1105 Media's Converge360 group.

Featured