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.
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
Engine Updates and Fixes
- Revert the PRs that made
General Cmdlet Updates and Fixes
- Fix an operator preference order issue in binder code (#12075) (Thanks @DamirAinullin!)
NullReferenceExceptionwhen binding common parameters of type
- 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
Get-FileHash(#11944) (Thanks @iSazonov!)
- Change 'PowerShell Core' to 'PowerShell' in a resource string (#11928) (Thanks @alexandair!)
- Bring back
PSHostProcessInfo(#11885) (Thanks @iSazonov!)
- Miscellaneous minor updates to Windows Compatibility (#11980)
- Remove network hop restriction for interactive sessions (#11920)
RestoreStoppingPipeline()(#11870) (Thanks @iSazonov!)
- Generate GUID for
InstanceIdif not provided (#11896)
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!)
ConciseViewto handle case where there isn't a console to obtain the width (#11784)
CmsCommandsto use Store vs certificate provider (#11643) (Thanks @mikeTWC1984!)
pwshto work on Windows systems where
mpr.dlland STA is not available (#11748)
- Refactor and implement
Un*xand macOS (#11319)
- Add an implementation of
Stop-Computerfor Linux and macOS (#11151)
helpfunction to check if
lessis available before using (#11737)
certificate_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
Select-Objectonly once (#11548) (Thanks @iSazonov!)
- Fix grouping behavior with Boolean values in
Format-Hex(#11587) (Thanks @vexx32!)
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!)
CompleteInputto return results from
ASTor 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:
Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:
If you like this article, please share it using the buttons below. It won't take a lot from you, but it will help us grow. Thanks for your support!