Note: Known issue about 7.3.0-preview.1 Alpine Linux packages are missing powershell.config.json causing experimental features disabled by default. For details see: #16636
Breaking Changes
Engine Updates and Fixes
- Add clean block to script block as a peer to begin, process, and end to allow easy resource cleanup (#15177)
- Change default for $PSStyle.OutputRendering to Ansi (Internal 18449)
Performance
- Remove duplicate remote server mediator code (#16027)
- Fix PSVersion parameter version checks and error messages for PowerShell 7 remoting (#16228)
- Use the same temporary home directory when HOME env variable is not set (#16263)
- Fix parser to generate error when array has more than 32 dimensions (#16276)
General Cmdlet Updates and Fixes
Code Cleanup
- Update README.md and metadata.json for next preview release (#16107)
- Use PlainText when writing to a host that doesn't support VT (#16092)
- Remove support for AppExeCLinks to retrieve target (#16044)
- Move GetOuputString() and GetFormatStyleString() to PSHostUserInterface as public API (#16075)
- Fix ConvertTo-SecureString with key regression due to .NET breaking change (#16068)
- Fix regression in Move-Item to only fallback to copy and delete in specific cases (#16029)
- Set $? correctly for command expression with redirections (#16046)
- Use CurrentCulture when handling conversions to DateTime in Add-History (#16005) (Thanks @vexx32!)
- Fix link header parsing to handle unquoted rel types (#15973) (Thanks @StevenLiekens!)
- Fix a casting error when using $PSNativeCommandUsesErrorActionPreference (#15993)
- Format-Wide: Fix NullReferenceException (#15990) (Thanks @DarylGraves!)
- Make the native command error handling optionally honor ErrorActionPreference (#15897)
- Remove declaration of experimental features in Utility module manifest as they are stable (#16460)
- Fix race condition between DisconnectAsync and Dispose (#16536) (Thanks @i3arnon!)
- Fix the Max_PATH condition check to handle long path correctly (#16487) (Thanks @Shriram0908!)
- Update HelpInfoUri for 7.2 release (#16456)
- Fix tab completion within the script block specified for the ValidateScriptAttribute. (#14550) (Thanks @MartinGC94!)
- Update README.md to specify gathered telemetry (#16379)
- Fix typo for "privacy" in MSI installer (#16407)
- Remove unneeded call to File.ResolveLinkTarget from IsWindowsApplication (#16371) (Thanks @iSazonov!)
- Add -HttpVersion parameter to web cmdlets (#15853) (Thanks @hayhay27!)
- Add support to web cmdlets for open-ended input tags (#16193) (Thanks @farmerau!)
- Add more tests to Tee-Object -Encoding (#14539) (Thanks @rpolley!)
- Don't throw exception when trying to resolve a possible link path (#16310)
- Fix ConvertTo-Json -Depth to allow 100 at maximum (#16197) (Thanks @KevRitchie!)
- Fix for SSH remoting when banner is enabled on SSHD endpoint (#16205)
- Disallow all COM for AppLocker system lock down (#16268)
- Configure ApplicationInsights to not send cloud role name (#16246)
- Disallow Add-Type in NoLanguage mode on a locked down machine (#16245)
- Specify the executable path as TargetObect for non-zero exit code ErrorRecord (#16108) (Thanks @rkeithhill!)
- Don't allow Move-Item with FileSystemProvider to move a directory into itself (#16198)
- Make property names for the color VT sequences consistent with documentations (#16212)
- Fix PipelineVariable to set variable in the right scope (#16199)
- Invoke-Command: improve handling of variables with $using: expression (#16113) (Thanks @dwtaber!)
- Change Target from a CodeProperty to be an AliasProperty that points to FileSystemInfo.LinkTarget (#16165)
We thank the following contributors!
@xtqqczze, @eltociear, @iSazonov
Tools
Tests
- Fix typo in build.psm1 (#16038) (Thanks @eltociear!)
- Add .stylecop to filetypexml and format it (#16025)
- Enable sending Teams notification when workflow fails (#15982)
- Use Convert-Path for unknown drive in Build.psm1 (#16416) (Thanks @matt9ucci!)
Build and Packaging Improvements
- Add benchmark to test compiler performance (#16083)
- Enable two previously disabled Get-Process tests (#15845) (Thanks @iSazonov!)
- Set clean state before testing UseMU in the MSI (#16543)
- Fix global tool and SDK tests in release pipeline (#16342)
- Remove the outdated test (#16269)
- Removed old not-used-anymore docker-based tests for PS release packages (#16224)
We thank the following contributors!
@github-actions[bot], @kondratyev-nv
Documentation and Help Content
- fix issue with hash file getting created before we have finished get-childitem (#16170)
- Add sha256 hashes to release (#16147)
- Change path for Component Governance for build to the path we actually use to build (#16137)
- Update Microsoft.CodeAnalysis.CSharp version (#16138)
- Bump Microsoft.CodeAnalysis.NetAnalyzers (#16070)
- Update .NET to 6.0.100-rc.1.21458.32 (#16066)
- Update minimum required OS version for macOS (#16088)
- Set locale correctly on Linux CI (#16073)
- Ensure locale is set correctly on Ubuntu 20.04 in CI (#16067)
- Bump Microsoft.CodeAnalysis.NetAnalyzers (#16045)
- Update .NET SDK version from `6.0.100-rc.1.21430.44` to `6.0.100-rc.1.21455.2` (#16041) (Thanks @github-actions[bot]!)
- Fix the GitHub Action for updating .NET daily builds (#16042)
- Bump Microsoft.CodeAnalysis.CSharp from 4.0.0-3.final to 4.0.0-4.21430.4 (#16036)
- Bump .NET to `6.0.100-rc.1.21430.44` (#16028)
- Move from PkgES hosted agents to 1ES hosted agents (#16023)
- Bump Microsoft.CodeAnalysis.NetAnalyzers (#16021)
- Update Ubuntu images to use Ubuntu 20.04 (#15906)
- Fix the mac build by updating the pool image name (#16010)
- Use Alpine 3.12 for building PowerShell for alpine (#16008)
- Update .NET SDK version from `6.0.100-preview.6.21355.2` to `6.0.100-rc.1.21426.1` (#15648) (Thanks @github-actions[bot]!)
- Ignore error from Find-Package (#15999)
- Find packages separately for each source in UpdateDotnetRuntime.ps1 script (#15998)
- Update metadata to start using .NET 6 RC1 builds (#15981)
- Bump Microsoft.CodeAnalysis.NetAnalyzers (#15985)
- Merge the v7.2.0-preview.9 release branch back to GitHub master (#15983)
- Publish global tool package for stable releases (#15961)
- Bump Microsoft.CodeAnalysis.NetAnalyzers to newer version (#15962)
- Disabled Yarn cache in markdown.yml (#16599)
- Update cgmanifest (#16600)
- Fix broken links in markdown (#16598)
- Add explicit job name for approval tasks in Snap stage (#16579)
- Bring back pwsh.exe for framework dependent packages to support Start-Job (#16535)
- Fix NuGet package generation in release build (#16509)
- Add `Microsoft.PowerShell.Commands.SetStrictModeCommand.ArgumentToPSVersionTransformationAttribute` to list of patterns to remove for generated ref assembly (#16489)
- Bump Microsoft.CodeAnalysis.CSharp from `4.0.0-6.final` to `4.0.1` (#16423)
- use different containers for different branches (#16434)
- Add import so we can use common GitHub workflow function. (#16433)
- Remove pre-release .NET 6 build sources (#16418)
- Update release instructions with link to new build (#16419)
- Bump Microsoft.ApplicationInsights from 2.18.0 to 2.19.0 (#16413)
- Update metadata.json to make 7.2.0 the latest LTS (#16417)
- Make static CI a matrix (#16397)
- Update metadata.json in preparation on 7.3.0-preview.1 release (#16406)
- Update cgmanifest (#16405)
- Add diagnostics used to take corrective action when releasing `buildInfoJson` (#16404)
- `vPack` release should use `buildInfoJson` new to 7.2 (#16402)
- Update the usage of metadata.json for getting LTS information (#16381)
- Add checkout to build json stage to get `ci.psm1` (#16399)
- Update CgManifest.json for 6.0.0 .NET packages (#16398)
- Add current folder to the beginning of the module import (#16353)
- Increment RC MSI build number by 100 (#16354)
- Bump XunitXml.TestLogger from 3.0.66 to 3.0.70 (#16356)
- Move PR Quantifier config to subfolder (#16352)
- Release build info json when it is preview (#16335)
- Add an approval for releasing build-info json (#16351)
- Generate manifest with latest public version of the packages (#16337)
- Update to the latest notices file (#16339) (Thanks @github-actions[bot]!)
- Use notice task to generate license assuming cgmanifest contains all components (#16340)
- Refactor cgmanifest generator to include all components (#16326)
- Fix issues in release build (#16332)
- Update feed and analyzer dependency (#16327)
- Bump Microsoft.NET.Test.Sdk from 16.11.0 to 17.0.0 (#16312)
- Update license and cgmanifest (#16325) (Thanks @github-actions[bot]!)
- Fix condition in cgmanifest logic (#16324)
- Add GitHub Workflow to keep notices up to date (#16284)
- Update to latest .NET 6 GA build 6.0.100-rtm.21527.11 (#16309)
- Create compliance build (#16286)
- Move mapping file into product repo and add Debian 11 (#16316)
- Add a major-minor build info JSON file (#16301)
- Clean up crossgen related build scripts also generate native symbols for R2R images (#16297)
- Fix Windows build ZIP packaging (#16299) (Thanks @kondratyev-nv!)
- Revert "Update to use .NET 6 GA build (#16296)" (#16308)
- Add wget as a dependency for Bootstrap script (#16303) (Thanks @kondratyev-nv!)
- Fix issues reported by code signing verification tool (#16291)
- Update to use .NET 6 GA build (#16296)
- Revert "add GH workflow to keep the cgmanifest up to date." (#16294)
- Update ChangeLog for 7.2.0-rc.1 and also fix RPM packaging (#16290)
- Bump Microsoft.CodeAnalysis.NetAnalyzers (#16271)
- add GH workflow to keep the cgmanifest up to date.
- Update ThirdPartyNotices.txt (#16283)
- Update `testartifacts.yml` to use ubuntu-latest image (#16279)
- Update version of Microsoft.PowerShell.Native and Microsoft.PowerShell.MarkdownRender packages (#16277)
- Add script to generate cgmanifest.json (#16278)
- Add cgmanifest.json for generating correct third party notice file (#16266)
- Bump Microsoft.CodeAnalysis.NetAnalyzers from `6.0.0-rtm.21504.2` to `6.0.0-rtm.21516.1` (#16264)
- Only upload stable buildinfo for stable releases (#16251)
- Make RPM license recognized (#16189)
- Don't upload dep or tar.gz for RPM because there are none. (#16230)
- Add condition to generate release files in local dev build only (#16259)
- Update .NET 6 to version 6.0.100-rc.2.21505.57 (#16249)
- change order of try-catch-finally and split out arm runs (#16252)
- Ensure psoptions.json and manifest.spdx.json files always exist in packages (#16258)
- Update to vPack task version to 12 (#16250)
- Remove unneeded `NuGetConfigFile` resource string (#16232)
- Add Software Bill of Materials to the main packages (#16202)
- Sign third party exes (#16229)
- Upgrade set-value package for markdown test (#16196)
- Use Ubuntu 20.04 for SSH remoting test (#16225)
- Bump Microsoft.CodeAnalysis.NetAnalyzers (#16194)
- Bump `Microsoft.CodeAnalysis.NetAnalyzers` from `6.0.0-rc2.21458.5` to `6.0.0-rtm.21480.8` (#16183)
- Move vPack build to 1ES Pool (#16169)
- Fix Microsoft update spelling issue. (#16178)
- Update Windows PowerShell issues link (#16105) (Thanks @andschwa!)
- Remove Joey from Committee and WG membership (#16119)
- Update more docs for net6.0 TFM (#16102) (Thanks @xtqqczze!)
- Change snippet tag to code tag in XML comments (#16106)
- Update build documentation to reflect .NET 6 (#15751) (Thanks @Kellen-Stuart!)
- Update README.md about the change logs (#16471) (Thanks @powershellpr0mpt!)
- Update change log for 7.2.0 (#16401)
- Update metadata.json and README.md for 7.2.0 release (#16395)
- Update README.md and metadata.json files for v7.2.0-rc.1 release (#16285)
- Update the change logs for v7.0.8 and v7.1.5 releases (#16248)
Source: Release v7.3.0-preview.1 Release of PowerShell · PowerShell/PowerShell
How to Install PowerShell 7.1 in Windows 7, Windows 8, Windows 10, and Windows 11