Skip to content

Tags: powercode/PowerShell

Tags

v7.5.0-preview.1

Toggle v7.5.0-preview.1's commit message
https://github.com/PowerShell/PowerShell/releases/tag/v7.5.0-preview.1

v7.4.0-rc.1

Toggle v7.4.0-rc.1's commit message
[7.4.0-rc.1] - 2023-10-24

* General Cmdlet Updates and Fixes

- Fix `Test-Connection` due to .NET 8 changes (PowerShell#20369) (PowerShell#20531)
- Add telemetry to check for specific tags when importing a module (PowerShell#20371) (PowerShell#20540)
- Fix `Copy-Item` progress to only show completed when all files are copied (PowerShell#20517) (PowerShell#20544)
- Fix `unixmode` to handle `setuid` and `sticky` when file is not an executable (PowerShell#20366) (PowerShell#20537)
- Fix UNC path completion regression (PowerShell#20419) (PowerShell#20541)
- Fix implicit remoting proxy cmdlets to act on common parameters (PowerShell#20367) (PowerShell#20530)
- Fix `Get-Service` non-terminating error message to include category (PowerShell#20276) (PowerShell#20529)
- Fixing regression in DSC (PowerShell#20268) (PowerShell#20528)

* Build and Packaging Improvements

<details>

<summary>

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

</summary>

<ul>
<li>Update ThirdPartyNotices.txt file (Internal 28110)</li>
<li>Update CGManifest for release</li>
<li>Fix package version for .NET nuget packages (PowerShell#20551) (PowerShell#20552)</li>
<li>Only registry App Path for release package (PowerShell#20478) (PowerShell#20549)</li>
<li>Bump PSReadLine from 2.2.6 to 2.3.4 (PowerShell#20305) (PowerShell#20533)</li>
<li>Bump Microsoft.Management.Infrastructure (PowerShell#20511) (PowerShell#20512) (PowerShell#20433) (PowerShell#20434) (PowerShell#20534) (PowerShell#20535) (PowerShell#20545) (PowerShell#20547)</li>
<li>Bump to .NET 8 RC2 (PowerShell#20510) (PowerShell#20543)</li>

<li>Add SBOM for release pipeline (PowerShell#20519) (PowerShell#20548)</li>
<li>Bump version of <code>Microsoft.PowerShell.PSResourceGet</code> to <code>v1.0.0</code> (PowerShell#20485) (PowerShell#20538)</li>
<li>Bump xunit.runner.visualstudio from 2.5.1 to 2.5.3 (PowerShell#20486) (PowerShell#20542)</li>
<li>Bump JsonSchema.Net from 5.2.5 to 5.2.6 (PowerShell#20421) (PowerShell#20532)</li>
<li>Fix alpine tar package name and do not crossgen alpine fxdependent package (PowerShell#20459) (PowerShell#20536)</li>
<li>Increase timeout when publishing packages to <code>packages.microsoft.com</code> (PowerShell#20470) (PowerShell#20539)</li>
<li>Block any preview vPack release (PowerShell#20243) (PowerShell#20526)</li>
<li>Add surrogate file for compliance scanning (PowerShell#20423)</li>
</ul>

</details>

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

v7.4.0-preview.6

Toggle v7.4.0-preview.6's commit message
[7.4.0-preview.6] - 2023-09-28

* General Cmdlet Updates and Fixes

- Set approved experimental features to stable for 7.4 release (PowerShell#20362)
- Revert changes to continue using `BinaryFormatter` for `Out-GridView` (PowerShell#20360)
- Remove the comment trigger from feedback provider (PowerShell#20346)

* Tests

- Continued improvement to tests for release automation (PowerShell#20259)
- Skip the test on x86 as `InstallDate` is not visible on `Wow64` (PowerShell#20255)
- Harden some problematic release tests (PowerShell#20254)

* Build and Packaging Improvements

<details>

<summary>

<p>Move to .NET 8.0.100-rc.1.23463.5</p>

</summary>

<ul>
<li>Update the regex for package name validation (Internal 27783, 27795)</li>
<li>Update ThirdPartyNotices.txt (Internal 27772)</li>
<li>Remove the <code>ref</code> folder before running compliance (PowerShell#20375)</li>
<li>Updates RIDs used to generate component Inventory (PowerShell#20372)</li>
<li>Bump <code>Microsoft.CodeAnalysis.CSharp</code> from 4.7.0 to 4.8.0-2.final (PowerShell#20368)</li>
<li>Fix the release build by moving to the official .NET 8-rc.1 release build version (PowerShell#20365)</li>
<li>Update the experimental feature JSON files (PowerShell#20363)</li>
<li>Bump <code>XunitXml.TestLogger</code> from 3.1.11 to 3.1.17 (PowerShell#20364)</li>
<li>Update <code>Microsoft.PowerShell.PSResourceGet</code> to 0.9.0-rc1 (PowerShell#20361)</li>
<li>Update .NET SDK to version 8.0.100-rc.1.23455.8 (PowerShell#20358)</li>
<li>Use <code>fxdependent-win-desktop</code> runtime for compliance runs (PowerShell#20359)</li>
<li>Add mapping for mariner arm64 stable (PowerShell#20348)</li>
<li>Bump <code>xunit.runner.visualstudio</code> from <code>2.5.0</code> to <code>2.5.1</code> (PowerShell#20357)</li>
<li>Bump <code>JsonSchema.Net</code> from 5.2.1 to 5.2.5 (PowerShell#20356)</li>
<li>Bump <code>Microsoft.NET.Test.Sdk</code> from 17.7.1 to 17.7.2 (PowerShell#20355)</li>
<li>Bump Markdig.Signed from 0.32.0 to 0.33.0 (PowerShell#20354)</li>
<li>Bump JsonSchema.Net from 5.1.3 to 5.2.1 (PowerShell#20353)</li>
<li>Bump actions/checkout from 3 to 4 (PowerShell#20352)</li>
<li>Bump <code>Microsoft.NET.Test.Sdk</code> from 17.7.0 to 17.7.1 (PowerShell#20351)</li>
<li>Bump <code>Microsoft.CodeAnalysis.CSharp</code> from 4.7.0-2.final to 4.7.0 (PowerShell#20350)</li>
<li>Release build: Change the names of the PATs (PowerShell#20349)</li>
<li>Put the calls to <code>Set-AzDoProjectInfo</code> and Set-AzDoAuthToken` in the right order (PowerShell#20347)</li>
<li>Bump Microsoft.Management.Infrastructure (continued) (PowerShell#20262)</li>
<li>Bump <code>Microsoft.Management.Infrastructure</code> to 3.0.0-preview.2 (PowerShell#20261)</li>
<li>Enable <code>vPack</code> provenance data (PowerShell#20260)</li>
<li>Start using new packages.microsoft.com cli (PowerShell#20258)</li>
<li>Add mariner arm64 to PMC release (PowerShell#20257)</li>
<li>Fix typo <code>donet</code> to <code>dotnet</code> in build scripts and pipelines (PowerShell#20256)</li>
</ul>

</details>

[7.4.0-preview.6]: PowerShell/PowerShell@v7.4.0-preview.5...v7.4.0-preview.6

v7.4.0-preview.5

Toggle v7.4.0-preview.5's commit message
* [7.4.0-preview.5] - 2023-08-21

* Breaking Changes

- Change how relative paths in `Resolve-Path` are handled when using the `RelativeBasePath` parameter (PowerShell#19755) (Thanks @MartinGC94!)

* Engine Updates and Fixes

- Fix dynamic parameter completion (PowerShell#19510) (Thanks @MartinGC94!)
- Use `OrdinalIgnoreCase` to lookup script breakpoints (PowerShell#20046) (Thanks @fflaten!)
- Guard against `null` or blank path components when adding to module path (PowerShell#19922) (Thanks @stevenebutler!)
- Fix deadlock when piping to shell associated file extension (PowerShell#19940)
- Fix completion regression for filesystem paths with custom `PSDrive` names (PowerShell#19921) (Thanks @MartinGC94!)
- Add completion for variables assigned by the `Data` statement (PowerShell#19831) (Thanks @MartinGC94!)
- Fix a null reference crash in completion code (PowerShell#19916) (Thanks @MartinGC94!)

* General Cmdlet Updates and Fixes

- Fix `Out-GridView` by implementing `Clone()` method to replace old use of binary format serialization (PowerShell#20050)
- Support Unix domain socket in WebCmdlets (PowerShell#19343) (Thanks @CarloToso!)
- Wait-Process: add `-Any` and `-PassThru` parameters (PowerShell#19423) (Thanks @dwtaber!)
- Added the switch parameter `-CaseInsensitive` to `Select-Object` and `Get-Unique` cmdlets (PowerShell#19683) (Thanks @ArmaanMcleod!)
- `Restore-Computer` and `Stop-Computer` should fail with error when not running via `sudo` on Unix (PowerShell#19824)
- Add Help proxy function for non-Windows platforms (PowerShell#19972)
- Remove input text from the error message resulted by `SecureString` and `PSCredential` conversion failure (PowerShell#19977) (Thanks @ArmaanMcleod!)
- Add `Microsoft.Powershell.PSResourceGet` to the telemetry module list (PowerShell#19926)

* Code Cleanup

<details>

<summary>

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

</summary>

<ul>
<li>Fix use of <code>ThrowIf</code> where the arguments were reversed (PowerShell#20052)</li>
<li>Fix typo in <code>Logging.Tests.ps1</code> (PowerShell#20048) (Thanks @eltociear!)</li>
<li>Apply the <code>InlineAsTypeCheck</code> in the engine code - 2nd pass (PowerShell#19694) (Thanks @Molkree!)</li>
<li>Apply the <code>InlineAsTypeCheck</code> rule in the engine code - 1st pass (PowerShell#19692) (Thanks @Molkree!)</li>
<li>Remove unused string completion code (PowerShell#19879) (Thanks @MartinGC94!)</li>
</ul>

</details>

* Tools

- Give the `assignPRs` workflow write permissions (PowerShell#20021)

* Tests

- Additional test hardening for tests which fail in release pass. (PowerShell#20093)
- Don't use a completion which has a space in it (PowerShell#20064)
- Fixes for release tests (PowerShell#20028)
- Remove spelling CI in favor of GitHub Action (PowerShell#19973)
- Hide expected error for negative test on windows for script extension (PowerShell#19929)
- Add more debugging to try to determine why these test fail in release build. (PowerShell#19829)

* Build and Packaging Improvements

<ul>
<li>Update ThirdPartyNotices for 7.4.0-preview.5</li>
<li>Update <code>PSResourceGet</code> to <code>0.5.24-beta24</code> (PowerShell#20118)</li>
<li>Fix build after the change to remove win-arm32 (PowerShell#20102)</li>
<li>Add comment about pinned packages (PowerShell#20096)</li>
<li>Bump to .NET 8 Preview 7 (PowerShell#20092)</li>
<li>Remove <code>Win-Arm32</code> from release build. (PowerShell#20095)</li>
<li>Add alpine framework dependent package (PowerShell#19995)</li>
<li>Bump JsonSchema.Net from 4.1.8 to 5.1.3 (PowerShell#20089)</li>
<li>Bump Microsoft.NET.Test.Sdk from 17.6.3 to 17.7.0 (PowerShell#20088)</li>
<li>Move build to .NET 8 preview 6 (PowerShell#19991)</li>
<li>Bump <code>Microsoft.Management.Infrastructure</code> from <code>2.0.0</code> to <code>3.0.0-preview.1</code> (PowerShell#20081)</li>
<li>Bump <code>Markdig.Signed</code> from <code>0.31.0</code> to <code>0.32.0</code> (PowerShell#20076)</li>
<li>Auto assign PR Maintainer (PowerShell#20020)</li>
<li>Delete rule that was supposed to round-robin assign a maintainer (PowerShell#20019)</li>
<li>Update the cgmanifest (PowerShell#20012)</li>
<li>Update the cgmanifest (PowerShell#20008)</li>
<li>Bump JsonSchema.Net from 4.1.7 to 4.1.8 (PowerShell#20006)</li>
<li>Bump JsonSchema.Net from 4.1.6 to 4.1.7 (PowerShell#20000)</li>
<li>Add mariner arm64 package build to release build (PowerShell#19946)</li>
<li>Check for pre-release packages when it's a stable release (PowerShell#19939)</li>
<li>Make PR creation tool use <code>--web</code> because it is more reliable (PowerShell#19944)</li>
<li>Update to the latest NOTICES file (PowerShell#19971)</li>
<li>Update variable used to bypass the blocking check for multiple NuGet feeds for release pipeline (PowerShell#19963)</li>
<li>Update variable used to bypass the blocking check for multiple NuGet feeds (PowerShell#19967)</li>
<li>Update README.md and metadata.json for release v7.2.13 and v7.3.6 (PowerShell#19964)</li>
<li>Don't publish notice on failure because it prevent retry (PowerShell#19955)</li>
<li>Change variable used to bypass nuget security scanning (PowerShell#19954)</li>
<li>Update the cgmanifest (PowerShell#19924)</li>
<li>Publish rpm package for rhel9 (PowerShell#19750)</li>
<li>Bump XunitXml.TestLogger from 3.0.78 to 3.1.11 (PowerShell#19900)</li>
<li>Bump JsonSchema.Net from 4.1.5 to 4.1.6 (PowerShell#19885)</li>
<li>Bump xunit from 2.4.2 to 2.5.0 (PowerShell#19902)</li>
<li>Remove <code>HostArchitecture</code> dynamic parameter for <code>osxpkg</code> (PowerShell#19917)</li>
<li>FabricBot: Onboarding to GitOps.ResourceManagement because of FabricBot decommissioning (PowerShell#19905)</li>
<li>Change variable used to bypass nuget security scanning (PowerShell#19907)</li>
<li>Checkout history for markdown lint check (PowerShell#19908)</li>
<li>Switch to GitHub Action for linting markdown (PowerShell#19899)</li>
<li>Bump xunit.runner.visualstudio from 2.4.5 to 2.5.0 (PowerShell#19901)</li>
<li>Add runtime and packaging type info for mariner2 arm64 (PowerShell#19450)</li>
<li>Update to the latest NOTICES file (PowerShell#19856)</li>
</ul>

</details>

* Documentation and Help Content

- Update `README.md` and `metadata.json` for `7.4.0-preview.4` release (PowerShell#19872)
- Fix grammatical issue in `ADOPTERS.md` (PowerShell#20037) (Thanks @nikohoffren!)
- Replace docs.microsoft.com URLs in code with FWLinks (PowerShell#19996)
- Change `docs.microsoft.com` to `learn.microsoft.com` (PowerShell#19994)
- Update man page to match current help for pwsh (PowerShell#19993)
- Merge `7.3.5`, `7.3.6`, `7.2.12` and `7.2.13` changelogs (PowerShell#19968)
- Fix ///-comments that violate the docs schema (PowerShell#19957)
- Update the link for getting started in `README.md` (PowerShell#19932)
- Migrate user docs to the PowerShell-Docs repository (PowerShell#19871)

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

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.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.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.0-preview.3

Toggle v7.3.0-preview.3's commit message
[7.3.0-preview.3] - 2022-03-21

* Engine Updates and Fixes

- Fix the parsing code for .NET method generic arguments (PowerShell#16937)
- Allow the `PSGetMemberBinder` to get value of `ByRef` property (PowerShell#16956)
- Allow a collection that contains `Automation.Null` elements to be piped to pipeline (PowerShell#16957)

* General Cmdlet Updates and Fixes

- Add the module `CompatPowerShellGet` to the allow-list of telemetry modules (PowerShell#16935)
- Fix `Enter-PSHostProcess` and `Get-PSHostProcessInfo` cmdlets by handling processes that have exited (PowerShell#16946)
- Improve Hashtable completion in multiple scenarios (PowerShell#16498) (Thanks @MartinGC94!)

* Code Cleanup

- Fix a typo in `CommandHelpProvider.cs` (PowerShell#16949) (Thanks @eltociear!)

* Tests

- Update a few tests to make them more stable in CI (PowerShell#16944)
- Roll back Windows images used in testing to Windows Server 2019 (PowerShell#16958)

* Build and Packaging Improvements

<details>

<summary>
<p>Update .NET SDK to 7.0.0-preview.2</p>
</summary>

<ul>
<li>Update .NET to 7.0.0-preview.2 build (PowerShell#16930)</li>
<li>Update <code>AzureFileCopy</code> task and fix the syntax for specifying <code>pool</code> (PowerShell#17013)</li>
</ul>

</details>

[7.3.0-preview.3]: PowerShell/PowerShell@v7.3.0-preview.2...v7.3.0-preview.3

v7.3.0-preview.2

Toggle v7.3.0-preview.2's commit message
** [7.3.0-preview.2] - 2022-02-24

** Engine Updates and Fixes

- Fix the `clean` block for generated proxy function (PowerShell#16827)
- Add support to allow invoking method with generic type arguments (PowerShell#12412 and PowerShell#16822) (Thanks @vexx32!)
- Report error when PowerShell built-in modules are missing (PowerShell#16628)

** General Cmdlet Updates and Fixes

- Prevent command completion if the word to complete is a single dash (PowerShell#16781) (Thanks @ayousuf23!)
- Use `FindFirstFileW` instead of `FindFirstFileExW` to correctly handle Unicode file names on FAT32 (PowerShell#16840) (Thanks @iSazonov!)
- Add completion for loop labels after Break/Continue (PowerShell#16438) (Thanks @MartinGC94!)
- Support OpenSSH options for `PSRP` over SSH commands (PowerShell#12802) (Thanks @BrannenGH!)
- Adds a `.ResolvedTarget` Property to `File-System` Items to Reflect a Symlink's Target as `FileSystemInfo` (PowerShell#16490) (Thanks @hammy3502!)
- Use `NotifyEndApplication` to re-enable VT mode (PowerShell#16612)
- Add new parameter to `Start-Sleep`: `[-Duration] <timespan>` (PowerShell#16185) (Thanks @IISResetMe!)
- Add lock and null check to remoting internals (PowerShell#16542) (PowerShell#16683) (Thanks @SergeyZalyadeev!)
- Make `Measure-Object` ignore missing properties unless running in strict mode (PowerShell#16589) (Thanks @KiwiThePoodle!)
- Add `-StrictMode` to `Invoke-Command` to allow specifying strict mode when invoking command locally (PowerShell#16545) (Thanks @Thomas-Yu!)
- Fix `$PSNativeCommandArgPassing` = `Windows` to handle empty args correctly (PowerShell#16639)
- Reduce the amount of startup banner text (PowerShell#16516) (Thanks @rkeithhill!)
- Add `exec` cmdlet for bash compatibility (PowerShell#16462)
- Add AMSI method invocation logging as experimental feature (PowerShell#16496)
- Fix web cmdlets so that an empty `Get` does not include a `content-length` header (PowerShell#16587)
- Update `HelpInfoUri` for 7.3 release (PowerShell#16646)
- Fix parsing `SemanticVersion` build label from version string (PowerShell#16608)
- Fix `ForEach-Object -Parallel` when passing in script block variable (PowerShell#16564)

** Code Cleanup

<details>

<summary>

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

</summary>

<ul>
<li>Fix typo in PowerShellExecutionHelper.cs (PowerShell#16776) (Thanks @eltociear!)</li>
<li>Use more efficient platform detection API (PowerShell#16760) (Thanks @iSazonov!)</li>
<li>Seal <code>ClientRemotePowerShell</code> (PowerShell#15802) (Thanks @xtqqczze!)</li>
<li>Fix the DSC overview URL in a markdown file and some small cleanup changes (PowerShell#16629)</li>
</ul>

</details>

** Tools

- Fix automation to update experimental JSON files in GitHub action (PowerShell#16837)

** Tests

- Update `markdownlint` to the latest version (PowerShell#16825)
- Bump the package `path-parse` from `1.0.6` to `1.0.7` (PowerShell#16820)
- Remove assert that is incorrect and affecting our tests (PowerShell#16588)

** Build and Packaging Improvements

<details>

<summary>

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

</summary>

<ul>
<li>Update NuGet Testing to not re-install dotnet,
when not needed and dynamically determine the DOTNET_ROOT (Internal 19268, 19269, 19272, 19273, and 19274)</li>
<li>Remove SkipExperimentalFeatureGeneration when building alpine (Internal 19248)</li>
<li>Revert .NET 7 changes, Update to the latest .NET 6 and Update WXS file due to blocking issue in .NET 7 Preview 1 </li>
<li>Install and Find AzCopy</li>
<li>Use Start-PSBootStrap for installing .NET during nuget packaging</li>
<li>Fix pool syntax for deployments (Internal 19189)</li>
<li>Bump NJsonSchema from 10.5.2 to 10.6.9 (PowerShell#16888)</li>
<li>Update projects and scripts to use .NET 7 preview 1 pre-release builds (PowerShell#16856)</li>
<li>Add warning messages when package precheck fails (PowerShell#16867)</li>
<li>Refactor Global Tool packaging to include SBOM generation (PowerShell#16860)</li>
<li>Update to use <code>windows-latest</code> as the build agent image (PowerShell#16831)</li>
<li>Ensure alpine and arm SKUs have <code>powershell.config.json</code> file with experimental features enabled (PowerShell#16823)</li>
<li>Update experimental feature json files (PowerShell#16838) (Thanks @github-actions[bot]!)</li>
<li>Remove WiX install (PowerShell#16834)</li>
<li>Add experimental json update automation (PowerShell#16833)</li>
<li>Update .NET SDK to 6.0.101 and fix <code>Microsoft.PowerShell.GlobalTool.Shim.csproj</code> (PowerShell#16821)</li>
<li>Add SBOM manifest to nuget packages (PowerShell#16711)</li>
<li>Improve logic for updating .NET in CI (PowerShell#16808)</li>
<li>Add Linux package dependencies for packaging (PowerShell#16807)</li>
<li>Switch to our custom images for build and release (PowerShell#16801)</li>
<li>Remove all references to <code>cmake</code> for the builds in this repo (PowerShell#16578)</li>
<li>Fix build for new <code>InvokeCommand</code> attributes (PowerShell#16800)</li>
<li>Let macOS installer run without Rosetta on Apple Silicon (PowerShell#16742) (Thanks @dahlia!)</li>
<li>Update the expect .NET SDK quality to GA for installing dotnet (PowerShell#16784)</li>
<li>Change nuget release yaml to use <code>UseDotNet</code> task (PowerShell#16701)</li>
<li>Bump Microsoft.ApplicationInsights from 2.19.0 to 2.20.0 (PowerShell#16642)</li>
<li>Register NuGet source when generating <code>CGManifest</code> (PowerShell#16570)</li>
<li>Update Images used for release (PowerShell#16580)</li>
<li>Update SBOM generation (PowerShell#16641)</li>
<li>Bring changes from 7.3.0-preview.1 (PowerShell#16640)</li>
<li>Update the <code>vmImage</code> and PowerShell root directory for macOS builds (PowerShell#16611)</li>
<li>Update macOS build image and root folder for build (PowerShell#16609)</li>
<li>Disabled Yarn cache in markdown.yml (PowerShell#16599)</li>
<li>Update cgmanifest (PowerShell#16600)</li>
<li>Fix broken links in markdown (PowerShell#16598)</li>
</ul>

</details>

** Documentation and Help Content

- Add newly joined members to their respective Working Groups (PowerShell#16849)
- Update Engine Working Group members (PowerShell#16780)
- Replace the broken link about pull request (PowerShell#16771)
- Update change log to remove a broken URL (PowerShell#16735)
- Updated `README.md` and `metadata.json` for `v7.3.0-preview.1` release (PowerShell#16627)
- Updating changelog for `7.2.1` (PowerShell#16616)
- Updated `README.md` and `metadata.json` for `7.2.1` release (PowerShell#16586)

v7.2.0-preview.10

Toggle v7.2.0-preview.10's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
TravisEz13 Travis Plunk
*** Breaking Changes

- Change the default value of `$PSStyle.OutputRendering` to `OutputRendering.Host` and remove `OutputRendering.Automatic` (PowerShell#15882)
- Fix `CA1052` for public API to make classes static when they only have static methods (PowerShell#15775) (Thanks @xtqqczze!)
- Update `pwsh.exe -File` to only accept `.ps1` script files on Windows (PowerShell#15859)

*** Engine Updates and Fixes

- Update .NET adapter to handle interface static members properly (PowerShell#15908)
- Catch and handle unauthorized access exception when removing AppLocker test files (PowerShell#15881)

*** General Cmdlet Updates and Fixes

- Add `-PassThru` parameter to `Set-Clipboard` (PowerShell#13713) (Thanks @ThomasNieto!)
- Add `-Encoding` parameter for `Tee-Object` (PowerShell#12135) (Thanks @Peter-Schneider!)
- Update `ConvertTo-Csv` and `Export-Csv` to handle `IDictionary` objects (PowerShell#11029) (Thanks @vexx32!)
- Update the parameters `-Exception` and `-ErrorRecord` for `Write-Error` to be position 0 (PowerShell#13813) (Thanks @ThomasNieto!)
- Don't use `ArgumentList` when creating COM object with `New-Object` as it's not applicable to the COM parameter set (PowerShell#15915)
- Fix `$PSStyle` list output to correctly show `TableHeader` (PowerShell#15928)
- Remove the `PSImplicitRemotingBatching` experimental feature (PowerShell#15863)
- Fix issue with `Get-Process -Module` failing to stop when it's piped to `Select-Object` (PowerShell#15682) (Thanks @ArmaanMcleod!)
- Make the experimental features `PSUnixFileStat`, `PSCultureInvariantReplaceOperator`, `PSNotApplyErrorActionToStderr`, `PSAnsiRendering`, `PSAnsiProgressFeatureName` stable (PowerShell#15864)
- Enhance `Remove-Item` to work with OneDrive (PowerShell#15571) (Thanks @iSazonov!)
- Make global tool entrypoint class static (PowerShell#15880)
- Update `ServerRemoteHost` version to be same as `PSVersion` (PowerShell#15809)
- Make the initialization of `HttpKnownHeaderNames` thread safe (PowerShell#15519) (Thanks @iSazonov!)
- `ConvertTo-Csv`: Quote fields with quotes and newlines when using `-UseQuotes AsNeeded` (PowerShell#15765) (Thanks @lselden!)
- Forwarding progress stream changes from `Foreach-Object -Parallel` runspaces (PowerShell#14271) (Thanks @powercode!)
- Add validation to `$PSStyle` to reject printable text when setting a property that only expects ANSI escape sequence (PowerShell#15825)

*** Code Cleanup

<details>

<summary>

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

</summary>

<ul>
<li>Avoid unneeded array allocation in module code (PowerShell#14329) (Thanks @xtqqczze!)</li>
<li>Enable and fix analysis rules <code>CA1052</code>, <code>CA1067</code>, and <code>IDE0049</code> (PowerShell#15840) (Thanks @xtqqczze!)</li>
<li>Avoid unnecessary allocation in formatting code (PowerShell#15832) (Thanks @xtqqczze!)</li>
<li>Specify the analyzed API surface for all code quality rules (PowerShell#15778) (Thanks @xtqqczze!)</li>
</ul>

</details>

*** Tools

- Enable `/rebase` to automatically rebase a PR (PowerShell#15808)
- Update `.editorconfig` to not replace tabs with spaces in `.tsv` files (PowerShell#15815) (Thanks @SethFalco!)
- Update PowerShell team members in the change log generation script (PowerShell#15817)

*** Tests

- Add more tests to validate the current command error handling behaviors (PowerShell#15919)
- Make `Measure-Object` property test independent of the file system (PowerShell#15879)
- Add more information when a `syslog` parsing error occurs (PowerShell#15857)
- Harden logic when looking for `syslog` entries to be sure that we select based on the process id (PowerShell#15841)

*** Build and Packaging Improvements

<details>

<summary>

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

</summary>

<ul>
<li>Disable implicit namespace imports for test projects (PowerShell#15895)</li>
<li>Update language version to 10 and fix related issues (PowerShell#15886)</li>
<li>Update <code>CodeQL</code> workflow to use Ubuntu 18.04 (PowerShell#15868)</li>
<li>Bump the version of various packages (PowerShell#15944, PowerShell#15934, PowerShell#15935, PowerShell#15891, PowerShell#15812, PowerShell#15822) (Thanks @xtqqczze!)</li>
</ul>

</details>

*** Documentation and Help Content

- Update `README` and `metadata files` for release `v7.2.0-preview.8` (PowerShell#15819)
- Update change logs for 7.0.7 and 7.1.4 (PowerShell#15921)
- Fix spelling in XML docs (PowerShell#15939) (Thanks @slowy07!)
- Update PowerShell Committee members (PowerShell#15837)

[7.2.0-preview.9]: PowerShell/PowerShell@v7.2.0-preview.8...v7.2.0-preview.9