CHANGELOG/7.4.md
8.0.19 for ObjectPool, Windows Compatibility, and System.Drawing.Common (#26001)WldpCanExecuteFile (#25229)This release is internal only. It is not available for download.
Get-Changelog (#25156)This release is internal only. It is not available for download.
-Body is specified but ContentType is not (#24145)Start-Process -Credential without the admin privilege (#21393) (Thanks @jborean93!)Test-Path -IsValid to check for invalid path and filename characters (#21358)OutputType when running in Constrained Language Mode (#21605)~ to $home on Windows with tab completion (#21529)Get-Content when -Tail 0 and -Wait are both used (#20734) (Thanks @CarloToso!)Get-Error serialization of array values (#21085) (Thanks @jborean93!)Format-Table when header label is empty (#21156)Runspace.DefaultRunspace is null when logging for WDAC Audit (#21344)$_ (#21223) (Thanks @MartinGC94!)Group-Object output using interpolated strings (#20745) (Thanks @mawosoft!)Start-Process -PassThru to make sure the ExitCode property is accessible for the returned Process object (#20749) (#20866) (Thanks @CodeCyclone!)Bump .NET 8 to version 8.0.101
</summary> <ul> <li>Update .NET SDK and dependencies for v7.4.1 (Internal 29142)</li> <li>Update cgmanifest for v7.4.1 (#20874)</li> <li>Update package dependencies for v7.4.1 (#20871)</li> <li>Set the <code>rollForwardOnNoCandidateFx</code> in <code>runtimeconfig.json</code> to roll forward only on minor and patch versions (#20689) (#20865)</li> <li>Remove RHEL7 publishing to packages.microsoft.com as it's no longer supported (#20849) (#20864)</li> <li>Fix the tab completion tests (#20867)</li> </ul> </details>ConfigureAwait(false) call to webcmdlets so they don't block (#20622)Group-Object so output uses current culture (#20623)Test-Connection due to .NET 8 changes (#20369) (#20531)Copy-Item progress to only show completed when all files are copied (#20517) (#20544)unixmode to handle setuid and sticky when file is not an executable (#20366) (#20537)Get-Service non-terminating error message to include category (#20276) (#20529)BinaryFormatter for Out-GridView (#20360)InstallDate is not visible on Wow64 (#20255)Resolve-Path are handled when using the RelativeBasePath parameter (#19755) (Thanks @MartinGC94!)OrdinalIgnoreCase to lookup script breakpoints (#20046) (Thanks @fflaten!)null or blank path components when adding to module path (#19922) (Thanks @stevenebutler!)PSDrive names (#19921) (Thanks @MartinGC94!)Data statement (#19831) (Thanks @MartinGC94!)Out-GridView by implementing Clone() method to replace old use of binary format serialization (#20050)-Any and -PassThru parameters (#19423) (Thanks @dwtaber!)-CaseInsensitive to Select-Object and Get-Unique cmdlets (#19683) (Thanks @ArmaanMcleod!)Restore-Computer and Stop-Computer should fail with error when not running via sudo on Unix (#19824)SecureString and PSCredential conversion failure (#19977) (Thanks @ArmaanMcleod!)Microsoft.PowerShell.PSResourceGet to the telemetry module list (#19926)assignPRs workflow write permissions (#20021)README.md and metadata.json for 7.4.0-preview.4 release (#19872)ADOPTERS.md (#20037) (Thanks @nikohoffren!)docs.microsoft.com to learn.microsoft.com (#19994)7.3.5, 7.3.6, 7.2.12 and 7.2.13 changelogs (#19968)README.md (#19932)Test-Json: Use JsonSchema.Net (System.Text.Json) instead of NJsonSchema (Newtonsoft.Json) (#18141) (Thanks @gregsdennis!)Test-Connection: Increase output detail when performing a TCP test (#11452) (Thanks @jackdcasey!)TabExpansion2 variable leak when completing variables (#18763) (Thanks @MartinGC94!)foreach statement variable (#19814) (Thanks @MartinGC94!)PSModulePath elements (#19422)CompleteInput for empty script input (#19501) (Thanks @MartinGC94!)Update-Help (#18037) (Thanks @dkaszews!)NativeCommandProcessor (#19614)$PSStyle.OutputRendering on the remote host (#19601)Get-Content cmdlet parameters -Head and -Tail (#19715) (Thanks @CarloToso!)Update-Help throw proper error when current culture is not associated with a language (#19765) (Thanks @josea!)-TimeoutSec to -ConnectionTimeoutSeconds and add -OperationTimeoutSeconds (#19558) (Thanks @stevenebutler!)FileNameStar to MultipartFileContent in WebCmdlets (#19467) (Thanks @CarloToso!)ParameterSetName for the -Detailed parameter of Test-Connection (#19727)ValidateRange attributes (#17750) (Thanks @fflaten!)Invoke-RestMethod (#19490) (Thanks @CarloToso!)PSCompatibleVersions (#18635) (Thanks @xtqqczze!)JsonSchema.Net version to 4.1.0 (#19610) (Thanks @gregsdennis!)-Skip and -SkipLast parameters in Select-Object cmdlet. (#18849) (Thanks @ArmaanMcleod!)PSModulePath if a sub-path has trailing separator (#13147)Get-SecureRandom cmdlet (#19587)New-Item to re-create Junction when -Force is specified (#18311) (Thanks @GigaScratch!)Set-Clipboard -AsOSC52 for remote usage (#18222) (Thanks @dkaszews!)MUIFileSearcher.AddFiles in the help related code (#18825) (Thanks @xtqqczze!)SetLastError to true for symbolic and hard link native APIs (#19566)Get-AuthenticodeSignature -Content to not roundtrip the bytes to a Unicode string and then back to bytes (#18774) (Thanks @jborean93!)-TimeoutSec to -ConnectionTimeoutSeconds (with alias) and add -OperationTimeoutSeconds (#19558) (Thanks @stevenebutler!)Ctrl+c tests for WebCmdlets (#19532) (Thanks @stevenebutler!)Import-CliXml test (#19805)SilentlyContinue (#19770)Get-ComputerInfo pending tests (#19746)-UserScope as required by RunUpdateHelpTests (#13400) (Thanks @yecril71pl!)isPreview is determined for default cmdlets tests (#19650)ExecutionPolicy.Tests.ps1 (#19485) (Thanks @xtqqczze!)metadata.json and README.md for upcoming releases (#19863)(#19542)CONTRIBUTING.md to include Code of Conduct enforcement (#19810)working-group-definitions.md (#19809)(#19561)working-group.md to add section about reporting working group members (#19758)serialization.cs (#19598) (Thanks @eltociear!)#requires -pssnapin (#19320)ICommandPredictor interface to reduce boilerplate code from predictor implementation (#19414)Resolve-Path relative path resolution (#19171) (Thanks @MartinGC94!)Add-Type (#19471)https-to-http redirect only if both URIs are absolute (#19468) (Thanks @CarloToso!)Ctrl+c when connection hangs while reading data in WebCmdlets (#19330) (Thanks @stevenebutler!)AutomationNull to $null for assignment (#19415)-Environment to Start-Process (#19374)-RelativeBasePath to Resolve-Path (#19358) (Thanks @MartinGC94!)-OutFile parameter (#19007) (Thanks @CarloToso!)ArgumentException instead of ArgumentNullException when the argument is an empty string (#19215) (Thanks @xtqqczze!)-ProgressAction to the common parameters (#18887)PlainText output to correctly remove the Reset VT sequence without number (#19283)ConciseView to handle custom ParserError error records (#19239)VtSubstring helper method to correctly check characters copied (#19240)FeedbackProvider interface to return structured data (#19133)PSCustomObject variable properties (#18682) (Thanks @MartinGC94!)Get-Random (#18972) (Thanks @MartinGC94!)-Encoding parameter able to take ANSI encoding in PowerShell (#19298) (Thanks @CarloToso!)-Body in webcmdlets without an encoding (#19281) (Thanks @CarloToso!)Statement property to $MyInvocation (#19027) (Thanks @IISResetMe!)Start-Process -Wait with -Credential (#19096) (Thanks @jborean93!)PUT method behavior to POST one for default content type in WebCmdlets (#19152) (Thanks @CarloToso!)WebSession.MaximumRedirection from changes (#19190) (Thanks @CarloToso!)ContentType from Headers in WebCmdlets (#19227) (Thanks @CarloToso!)-Path and -LiteralPath parameters to Test-Json cmdlet (#19042) (Thanks @ArmaanMcleod!)-PreserveHttpMethodOnRedirect to Web cmdlets (#18894) (Thanks @CarloToso!)Invoke-WebRequest (#19092) (Thanks @CarloToso!)-CustomMethod POST in WebCmdlets (#19111) (Thanks @CarloToso!)Invoke-WebRequest XML and JSON errors format (#18837) (Thanks @CarloToso!)-NoHeader parameter to ConvertTo-Csv and Export-Csv cmdlets (#19108) (Thanks @ArmaanMcleod!)Start-Process -Credential -Wait to work on Windows (#19082)ValidateNotNullOrEmpty to OutFile and InFile parameters of WebCmdlets (#19044) (Thanks @CarloToso!)NullReferenceException when importing modules (#18949) (Thanks @powercode!)Copy-Item (#18735)HttpKnownHeaderNames update headers list (#18947) (Thanks @CarloToso!)KeepAuthorization in Web cmdlets (#18902) (Thanks @CarloToso!)Get-Error to work with strict mode (#18895)AllowInsecureRedirect switch to Web cmdlets (#18546) (Thanks @CarloToso!)Invoke-RestMethod -FollowRelLink fix links containing commas (#18829) (Thanks @CarloToso!)-CommandWithArgs parameter to pwsh (#18726)Format-Table -RepeatHeader for property derived tables (#18870)StatusCode to HttpResponseException (#18842) (Thanks @CarloToso!)$input (#18968) (Thanks @MartinGC94!)WebListener (#19268)Allowinsecureredirect parameter in Web cmdlets (#18939) (Thanks @CarloToso!)get-help pattern tests on Unix (#18855) (Thanks @xtqqczze!)v7.2.10 and v7.3.3 releases (#19219)metadata and README (#18831)(#19204)(#19014)README.md (#19187)7.2 and 7.3 changelogs (#19025)dotnet-tools/README.md (#19021) (Thanks @spaette!)v7.4.0-preview.1 release (#18835)AmsiUtil and make the init variable readonly (#18727)OutOfProcTransportManager.cs (#18766) (Thanks @eltociear!)Dim and DimOff to $PSStyle (#18653)exec from alias to function to handle arbitrary arguments (#18567)NormalView (#18555)UTF8Encoding(false) with Encoding.Default (#18356) (Thanks @xtqqczze!)Switch-Process to set termios appropriate for child process (#18467)[NullString]::Value as the string type when resolving methods (#18080)PSAnsiRenderingFileInfo stable (#18042)2.21.0 of Application Insights. (#17903)Utils.Separators (#18154) (Thanks @iSazonov!)ScriptWriter (#18348)PSVersionInfo to improve startup time (#15603) (Thanks @iSazonov!)Regex when not necessary (#18210)ComputeCore.dll for PowerShell Direct (#18194)ArgumentNullException(nameof()) with ArgumentNullException.ThrowIfNull() (#18792)(#18784) (Thanks @CarloToso!)TabExpansion from remote session configuration (#18795) (Internal 23331)SupportsShouldProcess in Stop-Transcript (#18731) (Thanks @JohnLBevan!)New-Item -ItemType Hardlink to resolve target to absolute path and not allow link to itself (#18634)CommandLine on Linux (#18710) (Thanks @jborean93!)SuspiciousContentChecker.Match to detect a predefined string when the text starts with it (#18693)$PSNativeCommandUseErrorActionPreference to $true when feature is enabled (#18695)Start-Job to check the existence of working directory using the PowerShell way (#18675)HelpInfo.Category is consistently a string (#18254)gcloud from the legacy list because it's resolved to a .ps1 script (#18575)gcloud and sqlcmd to list to use legacy argument passing (#18559)Switch-Process to copy the current env to the new process (#18452)Switch-Process error to include the command that is not found (#18443)Out-Printer to remove all decorating ANSI escape sequences from PowerShell formatting (#18425)UTF8 (#18219) (Thanks @CarloToso!)Restart-Computer (#18374) (Thanks @urizen-source!)cd~ (#18308) (Thanks @GigaScratch!)ConvertFrom-StringData (#18336) (Thanks @GigaScratch!)IDisposable in NamedPipeClient (#18341) (Thanks @xtqqczze!)ProcessorArchitecture portion from the full name as it's obsolete (#18320)-FuzzyMinimumDistance parameter to Get-Command (#18261)CustomTableHeaderLabel formatting to differentiate table header labels that are not property names (#17346)FileInfo table formatting on Unix to make it more concise (#18183)Runspace when declaring the NoRunspaceAffinity attribute (#18138)Invoke-WebRequest when downloading is complete or cancelled (#18130)Invoke-WebRequest (#14611) (Thanks @bergmeister!)WriteConsole to not use stackalloc for buffer with too large size (#18084)Add-Type -PassThru (#18095)CA2014 warnings and removing the warning suppression (#17982) (Thanks @creative-cloud!)PSNativeCommandArgumentPassing stable (#18044)PSAMSIMethodInvocationLogging stable (#18041)PSObject argument specially in method invocation logging (#18060)EventResource.resx (#18063) (Thanks @eltociear!)PSRemotingSSHTransportErrorHandling stable (#18046)PSExec stable (#18045)PSCleanBlock stable (#18043)$PSStyle.Formatting (#17987)chmod 777 (#17974)ConsoleColor values to VT escape sequences (#17938)pwsh server modes implicitly not show banner (#17921)Get-WinEvent (#17948) (Thanks @MartinGC94!)Invoke-WebRequest for small files, and prevent file-download-error suppression. (#17896) (Thanks @AAATechGuy!)charset attribute in meta tag for HTML to first 1024 characters in webcmdlets (#17813)Update-Help failing silently with implicit non-US culture. (#17780) (Thanks @dkaszews!)ValidateNotNullOrWhiteSpace attribute (#17191) (Thanks @wmentha!)testexe.exe -echocmdline to output raw command-line received by the process on Windows (#18591)Get-Item test relying on node (#18250)-Amended parameter test (#17884) (Thanks @sethvs!)Write-Progress test (#17880) (Thanks @fflaten!)monad to PowerShell (#18491)msh in public API comment based documentation with PowerShell equivalent (#18483)RunspaceFactory (#18450)v7.3.0-rc.1 (#18400)v7.2.7 and v7.0.13 (#18342)ConfigurationFile option to the PowerShell help content (#18093)-NonInteractive (#17952)