Microsoft: First preview of PowerShell 7.1 for Windows, Linux and MacOS is out

Microsoft is targeting improvements to the PowerShell 7.1 user experience ahead of its release this winter.
Written by Liam Tung, Contributing Writer

Microsoft has released a new preview of PowerShell 7.1, its automation tool and scripting language for Windows, Linux, and macOS. 

The new preview builds on and fills in some features that didn't make it into PowerShell 7, which became generally available earlier in March and is the successor to PowerShell Core 6.x. 

The 7.1 preview contains new modules and tooling that the PowerShell team are working on, but the features aren't guaranteed to arrive when it ships, which should be about a week or two after .NET 5 is released this winter. That's because, starting from PowerShell 7, Microsoft has aligned its releases with .NET's release cadence. 

Microsoft is working on a preview of PowerShellGet 3.0, which aims to deliver a better user experience and remove the dependency on PackageManagement and Nuget provider. It will also move from PowerShell script to C#. The first preview should arrive later this month and will initially ship on PowerShell Gallery. 

SEE: Six in-demand programming languages: Getting started (free PDF)

Microsoft will also ship the new Secrets Management Module via PowerShell Gallery with support for Windows PowerShell 5.1 and PowerShell 7. Microsoft is considering including it by default with PowerShell 7.1.

The company last week released the second preview of the module, which can be used for managing secrets and credentials for authenticating complex PowerShell scripts in heterogeneous cloud environments.  

The module provides a set of cmdlets that let users store secrets locally using a vault provider, such as Windows' Credential Manager, and access secrets from remote vaults such as Azure Key Vault by way of extensions.

It currently only supports Windows, but Microsoft is planning to add Linux support with GNOME Keyring in the next preview and later will add macOS Keychain support.

Microsoft is also looking to rewrite parts of its PSScriptAnalyzer static code checker used for real-time linting in the PowerShell extension for Visual Studio Code. 

Work continues on Microsoft-built PowerShell support in Jupyter Notebooks, which is part of the .NET Interactive Jupyter kernel.

Microsoft is exploring ways to make it easier for users to install and update PowerShell 7. There are no plans at this stage to ship PowerShell 7 in Windows though. 

SEE: Visual Studio 2019: Now IntelliSense linter for C++ programming language cleans up code

It's also lining up shell improvements to make it easier for users to cut and paste sample command lines for any popular native tool into PowerShell. 

On the user experience side, it is exploring how it can enable predictions via different prediction engines, so users can complete a pipeline with minimal typing. It also wants PowerShell users to receive context-aware help as they type or get full help content with minimal disruption. 

Finally, it wants to use more color in PowerShell to provide visual cues when scanning console output. Version 7.1 may include color to decorate strings and have them rendered in color and plain text,

The PowerShell team are looking to split up the Utility, Management, and Security modules as part of an effort to reduce the size of PowerShell scripts when deployed. 

Editorial standards