Skip to content

v7.4.0-preview.4 Release of PowerShell

Pre-release
Pre-release
Compare
Choose a tag to compare
@daxian-dbw daxian-dbw released this 29 Jun 22:00
· 481 commits to master since this release

7.4.0-preview.4 - 2023-06-29

Breaking Changes

  • 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!)

Engine Updates and Fixes

  • Fix native executables not redirecting to file (#19842)
  • Add a new experimental feature to control native argument passing style on Windows (#18706)
  • Fix TabExpansion2 variable leak when completing variables (#18763) (Thanks @MartinGC94!)
  • Enable completion of variables across ScriptBlock scopes (#19819) (Thanks @MartinGC94!)
  • Fix completion of the foreach statement variable (#19814) (Thanks @MartinGC94!)
  • Fix variable type inference precedence (#18691) (Thanks @MartinGC94!)
  • Fix member completion for PowerShell Enum class (#19740) (Thanks @MartinGC94!)
  • Fix parsing for array literals in index expressions in method calls (#19224) (Thanks @MartinGC94!)
  • Fix incorrect string to type conversion (#19560) (Thanks @MartinGC94!)
  • Fix slow execution when many breakpoints are used (#14953) (Thanks @nohwnd!)
  • Add a public API for getting locations of PSModulePath elements (#19422)
  • Add WDAC Audit logging (#19641)
  • Improve path completion (#19489) (Thanks @MartinGC94!)
  • Fix an indexing out of bound error in CompleteInput for empty script input (#19501) (Thanks @MartinGC94!)
  • Improve variable completion performance (#19595) (Thanks @MartinGC94!)
  • Allow partial culture matching in Update-Help (#18037) (Thanks @dkaszews!)
  • Fix the check when reading input in NativeCommandProcessor (#19614)
  • Add support of respecting $PSStyle.OutputRendering on the remote host (#19601)
  • Support byte stream piping between native commands and file redirection (#17857)

General Cmdlet Updates and Fixes

  • Disallow negative values for Get-Content cmdlet parameters -Head and -Tail (#19715) (Thanks @CarloToso!)
  • Make Update-Help throw proper error when current culture is not associated with a language (#19765) (Thanks @josea!)
  • Do not require activity when creating a completed progress record (#18474) (Thanks @MartinGC94!)
  • WebCmdlets: Add alias for -TimeoutSec to -ConnectionTimeoutSeconds and add -OperationTimeoutSeconds (#19558) (Thanks @stevenebutler!)
  • Avoid checking screen scraping on non-Windows platforms before launching native app (#19812)
  • Add reference to PSResourceGet (#19597)
  • Add FileNameStar to MultipartFileContent in WebCmdlets (#19467) (Thanks @CarloToso!)
  • Add ParameterSetName for the -Detailed parameter of Test-Connection (#19727)
  • Remove the property disabling optimization (#19701)
  • Filter completion for enum parameter against ValidateRange attributes (#17750) (Thanks @fflaten!)
  • Small cleanup Invoke-RestMethod (#19490) (Thanks @CarloToso!)
  • Fix wildcard globbing in root of device paths (#19442) (Thanks @MartinGC94!)
  • Add specific error message that creating Junctions requires absolute path (#19409)
  • Fix array type parsing in generic types (#19205) (Thanks @MartinGC94!)
  • Improve the verbose message of WebCmdlets to show correct HTTP version (#19616) (Thanks @CarloToso!)
  • Fix HTTP status from 409 to 429 for WebCmdlets to get retry interval from Retry-After header. (#19622) (Thanks @mkht!)
  • Remove minor versions from PSCompatibleVersions (#18635) (Thanks @xtqqczze!)
  • Update JsonSchema.Net version to 4.1.0 (#19610) (Thanks @gregsdennis!)
  • Allow combining of -Skip and -SkipLast parameters in Select-Object cmdlet. (#18849) (Thanks @ArmaanMcleod!)
  • Fix constructing PSModulePath if a sub-path has trailing separator (#13147)
  • Add Get-SecureRandom cmdlet (#19587)
  • Fix New-Item to re-create Junction when -Force is specified (#18311) (Thanks @GigaScratch!)
  • Improve Hashtable key completion for type constrained variable assignments, nested Hashtables and more (#17660) (Thanks @MartinGC94!)
  • Set-Clipboard -AsOSC52 for remote usage (#18222) (Thanks @dkaszews!)
  • Refactor MUIFileSearcher.AddFiles in the help related code (#18825) (Thanks @xtqqczze!)
  • Set SetLastError to true for symbolic and hard link native APIs (#19566)
  • Fix Get-AuthenticodeSignature -Content to not roundtrip the bytes to a Unicode string and then back to bytes (#18774) (Thanks @jborean93!)
  • WebCmdlets: Rename -TimeoutSec to -ConnectionTimeoutSeconds (with alias) and add -OperationTimeoutSeconds (#19558) (Thanks @stevenebutler!)

Code Cleanup

We thank the following contributors!

@eltociear, @ArmaanMcleod, @turbedi, @CarloToso, @Molkree, @xtqqczze

Tools

  • Add Git mailmap for Andy Jordan (#19469)
  • Add backport function to release tools (#19568)

Tests

  • Improve reliability of the Ctrl+c tests for WebCmdlets (#19532) (Thanks @stevenebutler!)
  • Fix logic for Import-CliXml test (#19805)
  • Add some debugging to the transcript test for SilentlyContinue (#19770)
  • Re-enable Get-ComputerInfo pending tests (#19746)
  • Update syslog parser to handle modern formats. (#19737)
  • Pass -UserScope as required by RunUpdateHelpTests (#13400) (Thanks @yecril71pl!)
  • Change how isPreview is determined for default cmdlets tests (#19650)
  • Skip file signature tests on 2012R2 where PKI cmdlet do not work (#19643)
  • Change logic for testing missing or extra cmdlets. (#19635)
  • Fix incorrect test cases in ExecutionPolicy.Tests.ps1 (#19485) (Thanks @xtqqczze!)
  • Fixing structure typo in test setup (#17458) (Thanks @powercode!)
  • Fix test failures on Windows for time zone and remoting (#19466)
  • Harden 'All approved Cmdlets present' test (#19530)

Build and Packaging Improvements

Updated to .NET 8 Preview 4

We thank the following contributors!

@krishnayalavarthi

  • Update to the latest NOTICES file (#19537)(#19820)(#19784)(#19720)(#19644)(#19620)(#19605)(#19546)
  • Bump Microsoft.NET.Test.Sdk from 17.5.0 to 17.6.3 (#19867)(#19762)(#19733)(#19668)(#19613)
  • Update the cgmanifest (#19847)(#19800)(#19792)(#19776)(#19763)(#19697)(#19631)
  • Bump StyleCop.Analyzers from 1.2.0-beta.406 to 1.2.0-beta.507 (#19837)
  • Bump Microsoft.CodeAnalysis.CSharp from 4.6.0-1.final to 4.7.0-2.final (#19838)(#19667)
  • Update to .NET 8 Preview 4 (#19696)
  • Update experimental-feature json files (#19828)
  • Bump JsonSchema.Net from 4.1.1 to 4.1.5 (#19790)(#19768)(#19788)
  • Update group to assign PRs in fabricbot.json (#19759)
  • Add retry on failure for all upload tasks in Azure Pipelines (#19761)
  • Bump Microsoft.PowerShell.MarkdownRender from 7.2.0 to 7.2.1 (#19751)(#19752)
  • Delete symbols on Linux as well (#19735)
  • Update windows.json packaging BOM (#19728)
  • Disable SBOM signing for CI and add extra files for packaging tests (#19729)
  • Update experimental-feature json files (#19698(#19588))
  • Add ProductCode in registry for MSI install (#19590)
  • Runas format changed (#15434) (Thanks @krishnayalavarthi!)
  • For Preview releases, add pwsh-preview.exe alias to MSIX package (#19602)
  • Add prompt to fix conflict during backport (#19583)
  • Add comment in wix detailing use of UseMU (#19371)
  • Verify that packages have license data (#19543)
  • Add an explicit manual stage for changelog update (#19551)
  • Update the team member list in releaseTools.psm1 (#19544)

Documentation and Help Content

  • Update metadata.json and README.md for upcoming releases (#19863)(#19542)
  • Update message to use the actual parameter name (#19851)
  • Update CONTRIBUTING.md to include Code of Conduct enforcement (#19810)
  • Update working-group-definitions.md (#19809)(#19561)
  • Update working-group.md to add section about reporting working group members (#19758)
  • Correct capitalization in readme (#19666) (Thanks @Aishat452!)
  • Updated the public dashboard link (#19634)
  • Fix a typo in serialization.cs (#19598) (Thanks @eltociear!)

SHA256 Hashes of the release artifacts

  • hashes.sha256
    • DD49CDD69359CD2D106DAAAC6CE544B112DF6B1487805B4CEC0ED48F3FD6A540
  • powershell-7.4.0-preview.4-linux-alpine-x64.tar.gz
    • 490D29B2EDEA121DCFC0F28B7EA5A17D07E512212D5F67E69F31351FAE7C7D54
  • powershell-7.4.0-preview.4-linux-arm32.tar.gz
    • 34AA83E954FD0A7E93182EB97D87087C1D0A4D72A088CC53997A67A4D52322FA
  • powershell-7.4.0-preview.4-linux-arm64.tar.gz
    • 8DD721E7F9B4BEC4310546EC1B364AABD1DEF4950308280ECE6F1DD479857A36
  • powershell-7.4.0-preview.4-linux-x64.tar.gz
    • 8A5AA6C1B2AEA03017A725565401E891A18B4CFA4D4BAA265DA1D5393BD980D5
  • powershell-7.4.0-preview.4-linux-x64-fxdependent.tar.gz
    • E00A299CD5592AE087EB2155EDC6233EBAAEBD9801E4A40689167F23F55C6C2D
  • powershell-7.4.0-preview.4-osx-arm64.pkg
    • 207ACB3BA85620C16A2A1951560ED20E0BB18B81BE23924FC8BF994BA082B178
  • powershell-7.4.0-preview.4-osx-arm64.tar.gz
    • 8E9C41E8B8AD58880BAF94133794FC7DEA4B39B228B32C56EDE0186EE15D2E4F
  • powershell-7.4.0-preview.4-osx-x64.pkg
    • 1F88999AEB5C56DCB9C2C209632DD113E9C372D5FFB4DCE0D2E269BA907C823F
  • powershell-7.4.0-preview.4-osx-x64.tar.gz
    • 638777195B025B7363C79A18C188D30F3CDAAD6DC77051678FEBAB606A2DD7D2
  • PowerShell-7.4.0-preview.4-win.msixbundle
    • EF6D1598BBA725E33E613EF5C1287376B94FD736731CC6DC223399C5184D76C9
  • PowerShell-7.4.0-preview.4-win-arm32.zip
    • 5F2DAF2826DC780F5E0D35711A000E945CA62EDF243D4A14220CD99667B5B6D7
  • PowerShell-7.4.0-preview.4-win-arm64.zip
    • 6330032C98AAD10C03EE8855B822166F7F120E07F0C2AFE9BBE0F81CEC0F1539
  • PowerShell-7.4.0-preview.4-win-fxdependent.zip
    • 76F864B6234A83164B15CF89B4C829E2B50600EF31A9536409A26560A594A313
  • PowerShell-7.4.0-preview.4-win-fxdependentWinDesktop.zip
    • D76C93AEC35FBAA1C6C148BFE9E4D430B62C528CBBD63C22492648C9BACC1232
  • PowerShell-7.4.0-preview.4-win-x64.msi
    • 30D133F914870645FB4FE84F1C0FC9E7CF5789EE70C3070872995288F252063A
  • PowerShell-7.4.0-preview.4-win-x64.zip
    • 7E80CF74178427810D13A12E25CC0A2F9A717A92C482BC4E327345AFB9E311AE
  • PowerShell-7.4.0-preview.4-win-x86.msi
    • C64D9C96DAF754227CE4DEB39712DF80F74048216120959A529D72B2A85570A5
  • PowerShell-7.4.0-preview.4-win-x86.zip
    • 91D9BF0FE84F33A7D5F3246EC0E6EE7EF8BD0FA55A7C3203218F89E501F63F1C
  • powershell-preview_7.4.0-preview.4-1.deb_amd64.deb
    • 41ECE23DC2B75BBCE34604F3AAC521AD2EDCEA4A3CF20F2C3016F509D9BD240C
  • powershell-preview-7.4.0_preview.4-1.cm.x86_64.rpm
    • E5CC3A5C531432BC4890DEEA2F5A16D92D00B18DE61799DF1CCB4CA152F02331
  • powershell-preview-7.4.0_preview.4-1.rh.x86_64.rpm
    • 80C2E0BF7F0812CF74928ADDC983D5850FD38E6DE607F4A2B68E9FC42A3F9323