Skip to content

Tags: tomritzow/PowerShell

Tags

v7.3.6

Toggle v7.3.6's commit message
** [7.3.6] - 2023-07-13

*** Build and Packaging Improvements

<details>

<summary>

<p>Bump .NET to 7.0.306 </p>

</summary>

<ul>
<li>Update Notices file</li>
<li>Don't publish notice on failure because it prevents retry</li>
<li>Bump .NET to 7.0.306 (PowerShell#19945)</li>
<li>Remove the property disabling optimization (PowerShell#19952)</li>
<li>Add ProductCode in registry for MSI install (PowerShell#19951)</li>
<li>Update variable used to bypass the blocking check for multiple NuGet feeds (PowerShell#19953)</li>
<li>Change <code>System.Security.AccessControl</code> preview version to stable version (PowerShell#19931)</li>
</ul>

</details>

*** Documentation and Help Content

- Update the link for getting started in `README.md` (PowerShell#19947)

[7.3.6]: PowerShell/PowerShell@v7.3.5...v7.3.6

v7.2.13

Toggle v7.2.13's commit message
* [7.2.13] - 2023-07-13

*** Tests

- Increase the timeout to make subsystem tests more reliable (PowerShell#19937)
- Increase the timeout when waiting for the event log (PowerShell#19936)

*** Build and Packaging Improvements

<details>

<summary>

<p>Bump .NET SDK version to 6.0.412</p>

</summary>

<ul>
<li>Update Notice file (PowerShell#19956)</li>
<li>Update cgmanifest (PowerShell#19938)</li>
<li>Bump to 6.0.412 SDK (PowerShell#19933)</li>
<li>Update variable used to bypass the blocking check for multiple NuGet feeds (PowerShell#19935)</li>
</ul>

</details>

[7.2.13]: PowerShell/PowerShell@v7.2.12...v7.2.13

v7.4.0-preview.4

Toggle v7.4.0-preview.4's commit message
* [7.4.0-preview.4] - 2023-06-29

*** Breaking Changes

- `Test-Json`: Use `JsonSchema.Net` (`System.Text.Json`) instead of `NJsonSchema` (`Newtonsoft.Json`) (PowerShell#18141) (Thanks @gregsdennis!)
- `Test-Connection`: Increase output detail when performing a TCP test (PowerShell#11452) (Thanks @jackdcasey!)

*** Engine Updates and Fixes

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

*** General Cmdlet Updates and Fixes

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

*** Code Cleanup

<details>

<summary>

<p>We thank the following contributors!</p>
<p>@eltociear, @ArmaanMcleod, @turbedi, @CarloToso, @Molkree, @xtqqczze</p>

</summary>

<ul>
<li>Fix typo in <code>NativeCommandProcessor.cs</code> (PowerShell#19846) (Thanks @eltociear!)</li>
<li>Rename file from <code>PingPathCommand.cs</code> to <code>TestPathCommand.cs</code> (PowerShell#19782) (Thanks @ArmaanMcleod!)</li>
<li>Make use of the new <code>Random.Shared</code> property (PowerShell#18417) (Thanks @turbedi!)</li>
<li>six files (PowerShell#19695) (Thanks @CarloToso!)</li>
<li>Apply IDE0019: <code>InlineAsTypeCheck</code> in Microsoft.PowerShell.Commands (PowerShell#19688)(PowerShell#19690)(PowerShell#19687)(PowerShell#19689) (Thanks @Molkree!)</li>
<li>Remove <code>PSv2CompletionCompleter</code> as part of the PowerShell v2 code cleanup (PowerShell#18337) (Thanks @xtqqczze!)</li>
<li>Enable more nullable annotations in WebCmdlets (PowerShell#19359) (Thanks @CarloToso!)</li>
</ul>

</details>

*** Tools

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

*** Tests

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

*** Build and Packaging Improvements

<details>

<summary>
<p>Updated to .NET 8 Preview 4
<p>We thank the following contributors!</p>
<p>@krishnayalavarthi</p>

</summary>

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

</details>

*** Documentation and Help Content

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

[7.4.0-preview.4]: PowerShell/PowerShell@v7.4.0-preview.3...v7.4.0-preview.4

v7.3.5

Toggle v7.3.5's commit message
** [7.3.5] - 2023-06-27

*** Build and Packaging Improvements

<details>

<summary>

<p>Bump to use .NET 7.0.305</p>

</summary>

<ul>
<li>Update the ThirdPartyNotice (Internal 26372)</li>
<li>Add PoolNames variable group to compliance pipeline (PowerShell#19408)</li>
<li>Update cgmanifest.json</li>
<li>Update to .NET 7.0.304 (PowerShell#19807)</li>
<li>Disable SBOM signing for CI and add extra files for packaging tests (PowerShell#19729)</li>
<li>Increase timeout to make subsystem tests more reliable (PowerShell#18380)</li>
<li>Increase the timeout when waiting for the event log (PowerShell#19264)</li>
<li>Implement <code>IDisposable</code> in <code>NamedPipeClient</code> (PowerShell#18341) (Thanks @xtqqczze!)</li>
<li>Always regenerate files wxs fragment (PowerShell#19196)</li>
<li>Bump <code>Microsoft.PowerShell.MarkdownRender</code> (PowerShell#19751)</li>
<li>Delete symbols on Linux as well (PowerShell#19735)</li>
<li>Add prompt to fix conflict during backport (PowerShell#19583)</li>
<li>Add backport function to release tools (PowerShell#19568)</li>
<li>Add an explicit manual stage for changelog update (PowerShell#19551)</li>
<li>Update the team member list in <code>releaseTools.psm1</code> (PowerShell#19544)</li>
<li>Verify that packages have license data (PowerShell#19543)</li>
<li>Fix the regex used for package name check in <code>vPack</code> build (PowerShell#19511)</li>
<li>Make the vPack PAT library more obvious (PowerShell#19505)</li>
<li>Update the metadata.json to mark 7.3 releases as latest for stable channel (PowerShell#19565)</li>
</ul>

</details>

[7.3.5]: PowerShell/PowerShell@v7.3.4...v7.3.5

v7.2.12

Toggle v7.2.12's commit message
** [7.2.12] - 2023-06-27

*** Build and Packaging Improvements

<details>

<summary>

<p>Bump .NET version to 6.0.411</p>

</summary>

<ul>
<li>Disable SBOM signing for CI and add extra files for packaging tests (PowerShell#19729)</li>
<li>Update ThirdPartyNotices (Internal 26349)</li>
<li>Update the cgmanifest</li>
<li>Add PoolNames variable group to compliance pipeline (PowerShell#19408)</li>
<li>Add tool to trigger license information gathering for NuGet modules (PowerShell#18827)</li>
<li>Update to .NET 6.0.410 (PowerShell#19798)</li>
<li>Always regenerate files wxs fragment (PowerShell#19803)</li>
<li>Add prompt to fix conflict during backport (PowerShell#19583)</li>
<li>Add backport function to release tools (PowerShell#19568)</li>
<li>Do not remove <code>penimc_cor3.dll</code> from build (PowerShell#18438)</li>
<li>Remove unnecessary native dependencies from the package (PowerShell#18213)</li>
<li>Delete symbols on Linux as well (PowerShell#19735)</li>
<li>Bump <code>Microsoft.PowerShell.MarkdownRender</code> (PowerShell#19751)</li>
<li>Backport compliance changes  (PowerShell#19719)</li>
<li>Delete charset regex test (PowerShell#19585)</li>
<li>Fix issue with merge of 19068 (PowerShell#19586)</li>
<li>Update the team member list in <code>releaseTools.psm1</code> (PowerShell#19574)</li>
<li>Verify that packages have license data (PowerShell#19543) (PowerShell#19575)</li>
<li>Update experimental-feature.json (PowerShell#19581)</li>
<li>Fix the regex used for package name check in <code>vPack</code> build (PowerShell#19573)</li>
<li>Make the vPack PAT library more obvious (PowerShell#19572)</li>
<li>Add an explicit manual stage for changelog update (PowerShell#19551) (PowerShell#19567)</li>
</ul>

</details>

[7.2.12]: PowerShell/PowerShell@v7.2.11...v7.2.12

v7.4.0-preview.3

Toggle v7.4.0-preview.3's commit message
[7.4.0-preview.3] - 2023-04-20

* Breaking Changes

- Remove code related to `#requires -pssnapin` (PowerShell#19320)

* Engine Updates and Fixes

- Change the arrow used in feedback suggestion to a more common Unicode character (PowerShell#19534)
- Support trigger registration in feedback provider (PowerShell#19525)
- Update the `ICommandPredictor` interface to reduce boilerplate code from predictor implementation (PowerShell#19414)
- Fix a crash in the type inference code (PowerShell#19400) (Thanks @MartinGC94!)

* Performance

- Speed up `Resolve-Path` relative path resolution (PowerShell#19171) (Thanks @MartinGC94!)

* General Cmdlet Updates and Fixes

- Infer external application output as strings (PowerShell#19193) (Thanks @MartinGC94!)
- Fix a race condition in `Add-Type` (PowerShell#19471)
- Detect insecure `https-to-http` redirect only if both URIs are absolute (PowerShell#19468) (Thanks @CarloToso!)
- Support `Ctrl+c` when connection hangs while reading data in WebCmdlets (PowerShell#19330) (Thanks @stevenebutler!)
- Enable type conversion of `AutomationNull` to `$null` for assignment (PowerShell#19415)
- Add the parameter `-Environment` to `Start-Process` (PowerShell#19374)
- Add the parameter `-RelativeBasePath` to `Resolve-Path` (PowerShell#19358) (Thanks @MartinGC94!)
- Exclude redundant parameter aliases from completion results (PowerShell#19382) (Thanks @MartinGC94!)
- Allow using a folder path in WebCmdlets' `-OutFile` parameter (PowerShell#19007) (Thanks @CarloToso!)

* Code Cleanup

<details>

<summary>

<p>We thank the following contributors!</p>
<p>@eltociear, @CarloToso</p>

</summary>

<ul>
<li>Fix typo in <code>typeDataXmlLoader.cs</code> (PowerShell#19319) (Thanks @eltociear!)</li>
<li>Fix typo in <code>Compiler.cs</code> (PowerShell#19491) (Thanks @eltociear!)</li>
<li>Inline the <code>GetResponseObject</code> method (PowerShell#19380) (Thanks @CarloToso!)</li>
<li>Simplify <code>ContentHelper</code> methods (PowerShell#19367) (Thanks @CarloToso!)</li>
<li>Initialize regex lazily in <code>BasicHtmlWebResponseObject</code> (PowerShell#19361) (Thanks @CarloToso!)</li>
<li>Fix codefactor issue in if-statement (part 5) (PowerShell#19286) (Thanks @CarloToso!)</li>
<li>Add nullable annotations in <code>WebRequestSession.cs</code> (PowerShell#19291) (Thanks @CarloToso!)</li>
</ul>

</details>

* Tests

- Harden the default command test (PowerShell#19416)
- Skip VT100 tests on Windows Server 2012R2 as console does not support it (PowerShell#19413)
- Improve package management acceptance tests by not going to the gallery (PowerShell#19412)

* Build and Packaging Improvements

<details>

<summary>

<p>We thank the following contributors!</p>
<p>@dkattan</p>

</summary>

<ul>
<li>Fixing MSI checkbox (PowerShell#19325)</li>
<li>Update the experimental feature JSON files (PowerShell#19297)</li>
<li>Update the cgmanifest (PowerShell#19459, PowerShell#19465)</li>
<li>Update .NET SDK version to <code>8.0.100-preview.3.23178.7</code> (PowerShell#19381)</li>
<li>Force updating the transitive dependency on <code>Microsoft.CSharp</code> (PowerShell#19514)</li>
<li>Update <code>DotnetRuntimeMetadata.json</code> to consume the .NET 8.0.0-preview.3 release (PowerShell#19529)</li>
<li>Move PSGallery sync to a pool (PowerShell#19523)</li>
<li>Fix the regex used for package name check in vPack build (PowerShell#19511)</li>
<li>Make the vPack PAT library more obvious (PowerShell#19505)</li>
<li>Change <code>Microsoft.CodeAnalysis.CSharp</code> back to 4.5.0 (PowerShell#19464) (Thanks @dkattan!)</li>
<li>Update to the latest NOTICES file (PowerShell#19332)</li>
<li>Add <code>PoolNames</code> variable group to compliance pipeline (PowerShell#19408)</li>
<li>Fix stage dependencies and typo in release build (PowerShell#19353)</li>
<li>Fix issues in release build and release pipeline (PowerShell#19338)</li>
</ul>

</details>

[7.4.0-preview.3]: PowerShell/PowerShell@v7.4.0-preview.2...v7.4.0-preview.3

v7.3.4

Toggle v7.3.4's commit message
[7.3.4] - 2023-04-12

* Engine Updates and Fixes

- Add instrumentation to `AmsiUtil` and make the `init` variable readonly (PowerShell#18727)
- Fix support for `NanoServer` due to the lack of AMSI (PowerShell#18882)
- Adding missing guard for telemetry optout to avoid `NullReferenceException` when importing modules (PowerShell#18949) (Thanks @powercode!)
- Fix `VtSubstring` helper method to correctly check chars copied (PowerShell#19240)
- Fix `ConciseView` to handle custom `ParserError` error records (PowerShell#19239)

* Build and Packaging Improvements

<details>

<summary>
<p>Bump to use .NET 7.0.5</p>
</summary>

<ul>
<li>Update ThirdPartyNotices.txt</li>
<li>Update cgmanifest.json</li>
<li>Fix the template that creates nuget package</li>
<li>Update the wix file</li>
<li>Update to .NET SDK 7.0.203</li>
<li>Skip VT100 tests on Windows Server 2012R2 as console does not support it (PowerShell#19413)</li>
<li>Improve package management acceptance tests by not going to the gallery (PowerShell#19412)</li>
<li>Fix stage dependencies and typo in release build (PowerShell#19353)</li>
<li>Fix issues in release build and release pipeline (PowerShell#19338)</li>
<li>Restructure the package build to simplify signing and packaging stages (PowerShell#19321)</li>
<li>Test fixes for stabilizing tests (PowerShell#19068)</li>
<li>Add stage for symbols job in Release build (PowerShell#18937)</li>
<li>Use reference assemblies generated by dotnet (PowerShell#19302)</li>
<li>Add URL for all distributions (PowerShell#19159)</li>
</ul>

</details>

[7.3.4]: PowerShell/PowerShell@v7.3.3...v7.3.4

v7.2.11

Toggle v7.2.11's commit message
[7.2.11] - 2023-04-12

* Build and Packaging Improvements

<details>

<summary>
<p>Bump .NET version to 6.0.16</p>
</summary>

<ul>
<li>Update ThirdPartyNotices.txt</li>
<li>Update cgmanifest.json</li>
<li>Fix the template that creates nuget package</li>
<li>Update the wix file</li>
<li>Update .NET SDK to 6.0.408</li>
<li>Fix the build script and signing template</li>
<li>Fix stage dependencies and typo in release build (PowerShell#19353)</li>
<li>Fix issues in release build and release pipeline (PowerShell#19338)</li>
<li>Restructure the package build to simplify signing and packaging stages (PowerShell#19321)</li>
<li>Skip VT100 tests on Windows Server 2012R2 as console does not support it (PowerShell#19413)</li>
<li>Improve package management acceptance tests by not going to the gallery (PowerShell#19412)</li>
<li>Test fixes for stabilizing tests (PowerShell#19068)</li>
<li>Add stage for symbols job in Release build (PowerShell#18937)</li>
<li>Use reference assemblies generated by dotnet (PowerShell#19302)</li>
<li>Add URL for all distributions (PowerShell#19159)</li>
<li>Update release pipeline to use Approvals and automate some manual tasks (PowerShell#17837)</li>
</ul>

</details>

[7.2.11]: PowerShell/PowerShell@v7.2.10...v7.2.11

v7.4.0-preview.2

Toggle v7.4.0-preview.2's commit message
* [7.4.0-preview.2] - 2023-03-14

*** Breaking Changes
- Update some PowerShell APIs to throw `ArgumentException` instead of `ArgumentNullException` when the argument is an empty string (PowerShell#19215) (Thanks @xtqqczze!)

- Add the parameter `-ProgressAction` to the common parameters (PowerShell#18887)

*** Engine Updates and Fixes
- Fix `PlainText` output to correctly remove the `Reset` VT sequence without number (PowerShell#19283)

- Fix `ConciseView` to handle custom `ParserError` error records (PowerShell#19239)
- Fix `VtSubstring` helper method to correctly check characters copied (PowerShell#19240)
- Update the `FeedbackProvider` interface to return structured data (PowerShell#19133)
- Make the exception error in PowerShell able to associate with the right history entry (PowerShell#19095)
- Fix for JEA session leaking functions (PowerShell#19024)
- Add WDAC events and system lockdown notification (PowerShell#18893)
- Fix support for nanoserver due to lack of AMSI (PowerShell#18882)

*** Performance
- Use interpolated strings (PowerShell#19002)(PowerShell#19003)(PowerShell#18977)(PowerShell#18980)(PowerShell#18996)(PowerShell#18979)(PowerShell#18997)(PowerShell#18978)(PowerShell#18983)(PowerShell#18992)(PowerShell#18993)(PowerShell#18985)(PowerShell#18988) (Thanks @CarloToso!)

*** General Cmdlet Updates and Fixes
- Fix completion for `PSCustomObject` variable properties (PowerShell#18682) (Thanks @MartinGC94!)
- Improve type inference for `Get-Random` (PowerShell#18972) (Thanks @MartinGC94!)
- Make `-Encoding` parameter able to take `ANSI` encoding in PowerShell (PowerShell#19298) (Thanks @CarloToso!)
- Telemetry improvements for tracking experimental feature opt out (PowerShell#18762)
- Support HTTP persistent connections in Web Cmdlets (PowerShell#19249) (Thanks @stevenebutler!)
- Fix using xml `-Body` in webcmdlets without an encoding (PowerShell#19281) (Thanks @CarloToso!)
- Add the `Statement` property to `$MyInvocation` (PowerShell#19027) (Thanks @IISResetMe!)

- Fix `Start-Process` `-Wait` with `-Credential` (PowerShell#19096) (Thanks @jborean93!)
- Adjust `PUT` method behavior to `POST` one for default content type in WebCmdlets (PowerShell#19152) (Thanks @CarloToso!)
- Improve verbose message in web cmdlets when content length is unknown (PowerShell#19252) (Thanks @CarloToso!)
- Preserve `WebSession.MaximumRedirection` from changes (PowerShell#19190) (Thanks @CarloToso!)
- Take into account `ContentType` from Headers in WebCmdlets (PowerShell#19227) (Thanks @CarloToso!)
- Use C# 11 UTF-8 string literals (PowerShell#19243) (Thanks @turbedi!)
- Add property assignment completion for enums (PowerShell#19178) (Thanks @MartinGC94!)
- Fix class member completion for classes with base types (PowerShell#19179) (Thanks @MartinGC94!)
- Add `-Path` and `-LiteralPath` parameters to `Test-Json` cmdlet (PowerShell#19042) (Thanks @ArmaanMcleod!)
- Allow to preserve the original HTTP method by adding `-PreserveHttpMethodOnRedirect` to Web cmdlets (PowerShell#18894) (Thanks @CarloToso!)
- Webcmdlets display an error on https to http redirect (PowerShell#18595) (Thanks @CarloToso!)
- Build the relative URI for links from the response in `Invoke-WebRequest` (PowerShell#19092) (Thanks @CarloToso!)
- Fix redirection for `-CustomMethod` `POST` in WebCmdlets (PowerShell#19111) (Thanks @CarloToso!)
- Dispose previous response in Webcmdlets (PowerShell#19117) (Thanks @CarloToso!)
- Improve `Invoke-WebRequest` xml and json errors format (PowerShell#18837) (Thanks @CarloToso!)
- Fix error formatting to remove the unneeded leading newline for concise view (PowerShell#19080)
- Add `-NoHeader` parameter to `ConvertTo-Csv` and `Export-Csv` cmdlets (PowerShell#19108) (Thanks @ArmaanMcleod!)
- Fix `Start-Process -Credential -Wait` to work on Windows (PowerShell#19082)
- Add `ValidateNotNullOrEmpty` to `OutFile` and `InFile` parameters of WebCmdlets (PowerShell#19044) (Thanks @CarloToso!)
- Correct spelling of "custom" in event (PowerShell#19059) (Thanks @spaette!)

- Ignore expected error for file systems not supporting alternate streams (PowerShell#19065)
- Adding missing guard for telemetry opt out to avoid `NullReferenceException` when importing modules (PowerShell#18949) (Thanks @powercode!)
- Fix progress calculation divide by zero in Copy-Item (PowerShell#19038)
- Add progress to `Copy-Item` (PowerShell#18735)
- WebCmdlets parse XML declaration to get encoding value, if present. (PowerShell#18748) (Thanks @CarloToso!)
- `HttpKnownHeaderNames` update headers list  (PowerShell#18947) (Thanks @CarloToso!)
- Fix bug with managing redirection and `KeepAuthorization` in Web cmdlets (PowerShell#18902) (Thanks @CarloToso!)
- Fix `Get-Error` to work with strict mode (PowerShell#18895)
- Add `AllowInsecureRedirect` switch to Web cmdlets (PowerShell#18546) (Thanks @CarloToso!)
- `Invoke-RestMethod` `-FollowRelLink` fix links containing commas (PowerShell#18829) (Thanks @CarloToso!)
- Prioritize the default parameter set when completing positional arguments (PowerShell#18755) (Thanks @MartinGC94!)

- Add `-CommandWithArgs` parameter to pwsh (PowerShell#18726)
- Enable creating composite subsystem implementation in modules (PowerShell#18888)
- Fix `Format-Table -RepeatHeader` for property derived tables (PowerShell#18870)
- Add `StatusCode` to `HttpResponseException` (PowerShell#18842) (Thanks @CarloToso!)
- Fix type inference for all scope variables (PowerShell#18758) (Thanks @MartinGC94!)
- Add completion for Using keywords (PowerShell#16514) (Thanks @MartinGC94!)

*** Code Cleanup
<details>
<summary>
<p>We thank the following contributors!</p>
<p>@CarloToso, @iSazonov, @xtqqczze, @turbedi, @syntax-tm, @eltociear, @ArmaanMcleod</p>
</summary>
<ul>
<li>Small cleanup in the WebCmdlet code (PowerShell#19299) (Thanks @CarloToso!)</li>
<li>Remove unused GUID detection code from console host (PowerShell#18871) (Thanks @iSazonov!)</li>
<li>Fix <code>CodeFactor</code> issues in the code base - part 4 (PowerShell#19270) (Thanks @CarloToso!)</li>
<li>Fix codefactor if part 3 (PowerShell#19269) (Thanks @CarloToso!)</li>
<li>Fix codefactor if part 2 (PowerShell#19267) (Thanks @CarloToso!)</li>
<li>Fix codefactor if part 1 (PowerShell#19266) (Thanks @CarloToso!)</li>
<li>Remove comment and simplify condition in WebCmdlets (PowerShell#19251) (Thanks @CarloToso!)</li>
<li>Small style changes (PowerShell#19241) (Thanks @CarloToso!)</li>
<li>Use <code>ArgumentException.ThrowIfNullOrEmpty</code> as appropriate [part 1] (PowerShell#19215) (Thanks @xtqqczze!)</li>
<li>Use <code>using</code> variable to reduce the nested level (PowerShell#19229) (Thanks @CarloToso!)</li>
<li>Use <code>ArgumentException.ThrowIfNullOrEmpty()</code> in more places (PowerShell#19213) (Thanks @CarloToso!)</li>
<li>Replace <code>BitConverter.ToString</code> with <code>Convert.ToHexString</code> where appropriate (PowerShell#19216) (Thanks @turbedi!)</li>
<li>Replace <code>Requires.NotNullOrEmpty(string)</code> with <code>ArgumentException.ThrowIfNullOrEmpty</code> (PowerShell#19197) (Thanks @xtqqczze!)</li>
<li>Use <code>ArgumentOutOfRangeException.ThrowIfNegativeOrZero</code> when applicable (PowerShell#19201) (Thanks @xtqqczze!)</li>
<li>Use <code>CallerArgumentExpression</code> on <code>Requires.NotNull</code> (PowerShell#19200) (Thanks @xtqqczze!)</li>
<li>Revert a few change to not use 'ArgumentNullException.ThrowIfNull' (PowerShell#19151)</li>
<li>Corrected some minor spelling mistakes (PowerShell#19176) (Thanks @syntax-tm!)</li>
<li>Fix a typo in <code>InitialSessionState.cs</code> (PowerShell#19177) (Thanks @eltociear!)</li>
<li>Fix a typo in <code>pwsh</code> help content (PowerShell#19153)</li>
<li>Revert comment changes in <code>WebRequestPSCmdlet.Common.cs</code> (PowerShell#19136) (Thanks @CarloToso!)</li>
<li>Small cleanup webcmdlets (PowerShell#19128) (Thanks @CarloToso!)</li>
<li>Merge partials in <code>WebRequestPSCmdlet.Common.cs</code> (PowerShell#19126) (Thanks @CarloToso!)</li>
<li>Cleanup WebCmdlets comments (PowerShell#19124) (Thanks @CarloToso!)</li>
<li>Added minor readability and refactoring fixes to <code>Process.cs</code> (PowerShell#19123) (Thanks @ArmaanMcleod!)</li>
<li>Small changes in Webcmdlets (PowerShell#19109) (Thanks @CarloToso!)</li>
<li>Rework <code>SetRequestContent</code> in WebCmdlets (PowerShell#18964) (Thanks @CarloToso!)</li>
<li>Small cleanup WebCmdlets (PowerShell#19030) (Thanks @CarloToso!)</li>
<li>Update additional interpolated string changes (PowerShell#19029)</li>
<li>Revert some of the interpolated string changes (PowerShell#19018)</li>
<li>Cleanup <code>StreamHelper.cs</code>, <code>WebRequestPSCmdlet.Common.cs</code> and <code>InvokeRestMethodCommand.Common.cs</code> (PowerShell#18950) (Thanks @CarloToso!)</li>
<li>Small cleanup common code of webcmdlets (PowerShell#18946) (Thanks @CarloToso!)</li>
<li>Simplification of <code>GetHttpMethod</code> and <code>HttpMethod</code> in WebCmdlets (PowerShell#18846) (Thanks @CarloToso!)</li>
<li>Fix typo in <code>ModuleCmdletBase.cs</code> (PowerShell#18933) (Thanks @eltociear!)</li>
<li>Fix regression in <code>RemoveNulls</code> (PowerShell#18881) (Thanks @iSazonov!)</li>
<li>Replace all <code>NotNull</code> with <code>ArgumentNullException.ThrowIfNull</code> (PowerShell#18820) (Thanks @CarloToso!)</li>
<li>Cleanup <code>InvokeRestMethodCommand.Common.cs</code> (PowerShell#18861) (Thanks @CarloToso!)</li>
</ul>
</details>

*** Tools
- Add a Mariner install script (PowerShell#19294)

- Add tool to trigger license information gathering for NuGet modules (PowerShell#18827)

*** Tests
- Update and enable the test for the type of `$input` (PowerShell#18968) (Thanks @MartinGC94!)
- Increase the timeout for creating the `WebListener` (PowerShell#19268)
- Increase the timeout when waiting for the event log (PowerShell#19264)
- Add Windows ARM64 CI (PowerShell#19040)
- Change test so output does not include newline (PowerShell#19026)
- Allow system lock down test debug hook to work with new WLDP API (PowerShell#18962)
- Add tests for `Allowinsecureredirect` parameter in Web cmdlets (PowerShell#18939) (Thanks @CarloToso!)
- Enable `get-help` pattern tests on Unix (PowerShell#18855) (Thanks @xtqqczze!)
- Create test to check if WebCmdlets decompress brotli-encoded data (PowerShell#18905) (Thanks @CarloToso!)

*** Build and Packaging Improvements
<details>
<summary>
<p>We thank the following contributors!</p>
<p>@pwshBot, @bergmeister, @xtqqczze</p>
</summary>
<ul>
<li>Restructure the package build to simplify signing and packaging stages (PowerShell#19321)</li>
<li>Bump <code>Microsoft.CodeAnalysis.CSharp</code> from <code>4.4.0</code> to <code>4.6.0-2.23152.6</code> (PowerShell#19306)(PowerShell#19233)</li>
<li>Test fixes for stabilizing tests (PowerShell#19068)</li>
<li>Bump <code>Newtonsoft.Json</code> from <code>13.0.2</code> to <code>13.0.3</code> (PowerShell#19290)(PowerShell#19289)</li>
<li>Fix mariner sudo detection (PowerShell#19304)</li>
<li>Add stage for symbols job in Release build (PowerShell#18937)</li>
<li>Bump .NET to Preview 2 version (PowerShell#19305)</li>
<li>Move workflows that create PRs to private repo (PowerShell#19276)</li>
<li>Use reference assemblies generated by dotnet (PowerShell#19302)</li>
<li>Update the cgmanifest (PowerShell#18814)(PowerShell#19165)(PowerShell#19296)</li>
<li>Always regenerate files WXS fragment (PowerShell#19196)</li>
<li>MSI installer: Add checkbox and MSI property DISABLE_TELEMETRY to optionally disable telemetry. (PowerShell#10725) (Thanks @bergmeister!)</li>
<li>Add <code>-Force</code> to <code>Move-Item</code> to fix the GitHub workflow (PowerShell#19262)</li>
<li>Update and remove outdated docs to fix the URL link checks (PowerShell#19261)</li>
<li>Bump <code>Markdig.Signed</code> from <code>0.30.4</code> to <code>0.31.0</code> (PowerShell#19232)</li>
<li>Add pattern to replace for reference API generation (PowerShell#19214)</li>
<li>Split test artifact build into windows and non-windows (PowerShell#19199)</li>
<li>Set <code>LangVersion</code> compiler option to <code>11.0</code> (PowerShell#18877) (Thanks @xtqqczze!)</li>
<li>Update to .NET 8 preview 1 build (PowerShell#19194)</li>
<li>Simplify Windows Packaging CI Trigger YAML (PowerShell#19160)</li>
<li>Bump <code>Microsoft.NET.Test.Sdk</code> from <code>17.4.0</code> to <code>17.5.0</code> (PowerShell#18823)(PowerShell#19191)</li>
<li>Add URL for all distributions (PowerShell#19159)</li>
<li>Bump <code>Microsoft.Extensions.ObjectPool</code> from <code>7.0.1</code> to <code>7.0.3</code> (PowerShell#18925)(PowerShell#19155)</li>
<li>Add verification of R2R at packaging (PowerShell#19129)</li>
<li>Allow cross compiling windows (PowerShell#19119)</li>
<li>Update CodeQL build agent (PowerShell#19113)</li>
<li>Bump <code>XunitXml.TestLogger</code> from <code>3.0.70</code> to <code>3.0.78</code> (PowerShell#19066)</li>
<li>Bump <code>Microsoft.CodeAnalysis.Analyzers</code> from <code>3.3.3</code> to <code>3.3.4</code> (PowerShell#18975)</li>
<li>Bump <code>BenchmarkDotNet</code> to <code>0.13.3</code> (PowerShell#18878) (Thanks @xtqqczze!)</li>
<li>Bump <code>Microsoft.PowerShell.Native</code> from <code>7.4.0-preview.1</code> to <code>7.4.0-preview.2</code> (PowerShell#18910)</li>
<li>Add checks for Windows 8.1 and Server 2012 in the MSI installer (PowerShell#18904)</li>
<li>Update build to include <code>WinForms</code> / <code>WPF</code> in all Windows builds (PowerShell#18859)</li>
</ul>
</details>

*** Documentation and Help Content
- Update to the latest NOTICES file (PowerShell#19169)(PowerShell#19309)(PowerShell#19086)(PowerShell#19077)
- Update supported distros in Readme (PowerShell#18667) (Thanks @techguy16!)
- Remove the 'Code Coverage Status' badge (PowerShell#19265)
- Pull in change logs for `v7.2.10` and `v7.3.3` releases (PowerShell#19219)
- Update tools `metadata` and `README` (PowerShell#18831)(PowerShell#19204)(PowerShell#19014)
- Update a broken link in the `README.md` (PowerShell#19187)
- Fix typos in comments (PowerShell#19064) (Thanks @spaette!)
- Add `7.2` and `7.3` change logs (PowerShell#19025)
- typos (PowerShell#19058) (Thanks @spaette!)
- Fix typo in `dotnet-tools/README.md` (PowerShell#19021) (Thanks @spaette!)
- Fix up all comments to be in the proper order with proper spacing (PowerShell#18619)
- Change log for `v7.4.0-preview.1` release (PowerShell#18835)

[7.4.0-preview.2]: PowerShell/PowerShell@v7.4.0-preview.1...v7.4.0-preview.2

v7.3.3

Toggle v7.3.3's commit message
* [7.3.3] - 2023-02-23

* Build and Packaging Improvements
<details>
<summary>
<p>Bump to use .NET 7.0.3</p>
</summary>
<ul>
<li>Update third party notices for v7.3.3 (Internal 24353)</li>
<li>Add tool to trigger license information gathering for NuGet modules (PowerShell#18827)</li>
<li>Update global.json to 7.0.200 for v7.3.3 (Internal 24334)</li>
<li>Update cgmanifest for v7.3.3 (Internal 24338)</li>
</ul>
</details>
[7.3.3]: PowerShell/PowerShell@v7.3.2...v7.3.3