The PowerShell team has introduced a new version of PowerShell. Shorty after the release of PowerShell 7.0, a Preview version of the upcoming PowerShell 7.1 platform is out to the public. Here is what to expect, and what has already changed.

The preview release of PowerShell 7.1 is notable for including .NET 5 preview 1.
Advertisеment
Starting with PowerShell 7.0, devs have shifted to align with .NET’s release and support life-cycle more closely. PowerShell 7.1 is expected to become available within a week or two of .NET 5’s release date of winter 2020 and align with their annual release cadence going forward.
What's new in PowerShell 7.1 Preview
Breaking Changes
Engine Updates and Fixes
- Revert the PRs that made
DBNull.ValueandNullString.Valuetreated as$null(#11648)
Experimental Features
General Cmdlet Updates and Fixes
- Fix an operator preference order issue in binder code (#12075) (Thanks @DamirAinullin!)
- Fix
NullReferenceExceptionwhen binding common parameters of typeActionPreference(#12124) - Fix default formatting for deserialized
MatchInfo(#11728) (Thanks @iSazonov!) - Use asynchronous streams in
Invoke-RestMethod(#11095) (Thanks @iSazonov!) - Address UTF-8 Detection In
Get-Content -Tail(#11899) (Thanks @NoMoreFood!) - Handle the
IOExceptioninGet-FileHash(#11944) (Thanks @iSazonov!) - Change 'PowerShell Core' to 'PowerShell' in a resource string (#11928) (Thanks @alexandair!)
- Bring back
MainWindowTitleinPSHostProcessInfo(#11885) (Thanks @iSazonov!) - Miscellaneous minor updates to Windows Compatibility (#11980)
- Fix
ConciseViewto splitPositionMessageusing[Environment]::NewLine(#12010) - Remove network hop restriction for interactive sessions (#11920)
- Fix
NullReferenceExceptioninSuspendStoppingPipeline()andRestoreStoppingPipeline()(#11870) (Thanks @iSazonov!) - Generate GUID for
FormatViewDefinitionInstanceIdif not provided (#11896) - Fix
ConciseViewwhere error message is wider than window width and doesn't have whitespace (#11880) - Allow cross-platform
CAPI-compatibleremote key exchange (#11185) (Thanks @silijon!) - Fix error message (#11862) (Thanks @NextTurn!)
- Fix
ConciseViewto handle case where there isn't a console to obtain the width (#11784) - Update
CmsCommandsto use Store vs certificate provider (#11643) (Thanks @mikeTWC1984!) - Enable
pwshto work on Windows systems wherempr.dlland STA is not available (#11748) - Refactor and implement
Restart-ComputerforUn*xand macOS (#11319) - Add an implementation of
Stop-Computerfor Linux and macOS (#11151) - Fix
helpfunction to check iflessis available before using (#11737) - Update
PSPathincertificate_format_ps1.xml(#11603) (Thanks @xtqqczze!) - Change regular expression to match relation-types without quotes in Link header (#11711) (Thanks @Marusyk!)
- Fix error message during symbolic link deletion (#11331)
- Add custom 'Selected.*' type to
PSCustomObjectinSelect-Objectonly once (#11548) (Thanks @iSazonov!) - Add
-AsUTCto theGet-Datecmdlet (#11611) - Fix grouping behavior with Boolean values in
Format-Hex(#11587) (Thanks @vexx32!) - Make
Test-Connectionalways use the default synchronization context for sending ping requests (#11517) - Correct startup error messages (#11473) (Thanks @iSazonov!)
- Ignore headers with null values in web cmdlets (#11424) (Thanks @iSazonov!)
- Re-add check for
Invoke-Commandjob dispose. (#11388) - Revert "Update formatter to not write newlines if content is empty (#11193)" (#11342) (Thanks @iSazonov!)
- Allow
CompleteInputto return results fromArgumentCompleterwhenASTor Script has matching function definition (#10574) (Thanks @M1kep!) - Update formatter to not write new lines if content is empty (#11193)
Besides these changes, there are general code, test, and documentation improvements.
What to expect in PowerShell 7.1
- PowerShellGet 3.0
- Secret Management Module, an extensible abstraction layer in PowerShell for interacting with Secrets and Secrets Vaults, will get Linux support.
- PSScriptAnalyzer 2.0 for better user experience with VSCode-PowerShell and PSEditorServices.
- Improvements made to PowerShell Jupyter Kernel
- Improvements made to platyPS vNext, a PowerShell module that devs currently use to convert PowerShell documentation from markdown to updatable-help.
The official announcement also mentions a number of areas where it is possible to make more improvements and changes, including Installation and Updating, Shell Improvements, Interactive User Experience.
Finally, PowerShell may get a minimal setup, that only includes the parts of PowerShell needed for your scripts. Not only would it take less disk space, but more importantly, a minimal set of code means less patching and security attack surface.
You can download it here:
Download PowerShell 7.1 Preview 1
Support us
Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:
