The PowerShell team has introduced a new preview version of PowerShell. Here is what to expect in the upcoming PowerShell 7.1 platform, and what has already changed in Preview 6.
The preview release of PowerShell 7.1 includes .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 6
Breaking Changes
- Rename
-FromUnixTime
to-UnixTimeSeconds
onGet-Date
to allow Unix time input (#13084) (Thanks @aetos382!) - Make
$ErrorActionPreference
not affectstderr
output of native commands (#13361) - Allow explicitly specified named parameter to supersede the same one from hashtable splatting (#13162)
Engine Updates and Fixes
- Refactor command line parser to do early parsing (#11482) (Thanks @iSazonov!)
- Add support for some .NET intrinsic type converters (#12580) (Thanks @iSazonov!)
- Refresh and enable the
ComInterop
code in PowerShell (#13304)
Experimental Features
- Add
-Runspace
parameter to all*-PSBreakpoint
cmdlets (#10492) (Thanks @KirkMunro!)
General Cmdlet Updates and Fixes
- Fix error message from new symbolic link missing target (#13085) (Thanks @yecril71pl!)
- Make the parameter
args
non-nullable in the publicConsoleHost
APIs (#13429) - Add missing dispose for
CancellationTokenSource
(#13420) (Thanks @Youssef1313!) - Add the parameter
-Paged
toGet-Help
to support paging (#13374) - Fix
Get-Help
not properly displaying if parameter supports wildcards (#13353) (Thanks @ThomasNieto!) - Update
pwsh
help for-InputFormat
parameter (#13355) (Thanks @sethvs!) - Declare MIT license for files copied from Roslyn (#13305) (Thanks @xtqqczze!)
- Improve
BigInteger
casting behaviors (#12629) (Thanks @vexx32!) - Fix
Get-Acl -LiteralPath "HKLM:Software\Classes\*"
behavior (#13107) (Thanks @Shriram0908!) - Add
DefaultVisit
method to the visitor interface and class (#13258) - Fix conflicting shorthand switch
-s
(STA) forpwsh
(#13262) (Thanks @iSazonov!) - Change
Read-Host -MaskInput
to use existingSecureString
path, but return as plain text (#13256) - Remove
ComEnumerator
as COM objects usingIEnumerator
is now supported in .NET 5.0 (#13259) - Use temporary personal path at Runspace startup when the 'HOME' environment variable is not defined (#13239)
- Fix
Invoke-Command
to detect recursive call of the same history entry (#13197) - Change
pwsh
executable-inputformat
switch prefix-in
to-inp
to fix conflict with-interactive
(#13205) (Thanks @iSazonov!) - Handle WSL filesystem path when analyze security zone of a file (#13120)
- Make other switches mandatory in
Split-Path
(#13150) (Thanks @kvprasoon!) - New Fluent Design icon for PowerShell 7 (#13100) (Thanks @sarthakmalik!)
- Fix
Move-Item
to support cross-mount moves on Unix (#13044)
Tools
- Fix
dotnet
install errors (#13387) - Increase the timeout of Windows daily build to 90 minutes (#13354)
- Update the
dependabot
configuration to version 2 (#13230) (Thanks @RDIL!) - Fix
Test-XUnitTestResults
function (#13270) (Thanks @iSazonov!) - Update
.devcontainer
to use nightly docker SDK images (#13128)
Tests
- Mark
Test-Connection -TraceRoute
tests as pending (#13310)
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.
There are also 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 5
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: