[{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27898","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27898/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27898/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27898/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27898","id":5273443244,"node_id":"I_kwDOAvT7bc8AAAABOlJbrA","number":27898,"title":"MSI INSTALLFOLDER breaks Microsoft Update detection: MU offers all serviced builds, including the installed version","user":{"login":"smlfrysamuri","id":5232723,"node_id":"MDQ6VXNlcjUyMzI3MjM=","avatar_url":"https://avatars.githubusercontent.com/u/5232723?v=4","gravatar_id":"","url":"https://api.github.com/users/smlfrysamuri","html_url":"https://github.com/smlfrysamuri","followers_url":"https://api.github.com/users/smlfrysamuri/followers","following_url":"https://api.github.com/users/smlfrysamuri/following{/other_user}","gists_url":"https://api.github.com/users/smlfrysamuri/gists{/gist_id}","starred_url":"https://api.github.com/users/smlfrysamuri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smlfrysamuri/subscriptions","organizations_url":"https://api.github.com/users/smlfrysamuri/orgs","repos_url":"https://api.github.com/users/smlfrysamuri/repos","events_url":"https://api.github.com/users/smlfrysamuri/events{/privacy}","received_events_url":"https://api.github.com/users/smlfrysamuri/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-28T00:41:17Z","updated_at":"2026-09-03T11:04:11Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\n1. Install PowerShell 7.6.5 (x64) via MSI to a non-default location on a non-system volume:\n\n```\n   msiexec /i PowerShell-7.6.5-win-x64.msi INSTALLFOLDER=\"X:\\Program Files\\PowerShell-7-x64\\7\"\n```\n\n2. Ensure \"Receive updates for other Microsoft products\" is enabled.\n3. Run an online update scan.\n\n### Expected behavior\n\n```console\nMicrosoft Update detects the installed 7.6.5 and offers nothing, or offers only a genuinely\nnewer build.\n```\n\n### Actual behavior\n\n```console\nMU offers three PowerShell packages at once, including the exact version already installed:\n\n    PowerShell v7.3.1 (x64)\n    PowerShell v7.6.3 (x64)\n    PowerShell v7.6.5 (x64)\n\n7.6.3 and 7.3.1 fail on install. The offers return on every subsequent scan regardless of\noutcome, including after a successful install.\n\nCreating a directory junction at the default install path makes all three disappear on the\nvery next scan:\n\n    mklink /J \"C:\\Program Files\\PowerShell\\7\" \"X:\\Program Files\\PowerShell-7-x64\\7\"\n\nNothing else changed between the two scans. This suggests MU detection probes a hard-coded\ndefault path rather than reading HKLM\\SOFTWARE\\Microsoft\\PowerShellCore\\InstalledVersions or\nthe Windows Installer product registration, both of which were present and correct throughout.\n```\n\n### Error details\n\n```console\nInstall failures:\n    PowerShell v7.6.3 (x64)  -  0x80070643\n    PowerShell v7.3.1 (x64)  -  0x8024200b\n\nThis is a detection failure, not supersedence (as postulated in possibly related issue #26046). \n\nThree points:\n\n1. The already-installed version is offered. 7.6.5 was offered alongside the older builds\n   while 7.6.5 was installed and correctly registered. No supersedence rule explains offering\n   a package identical to what is installed. MU appears to conclude PowerShell is absent, so\n   the catalog offers everything.\n\n2. Installing an offered build does not stop it being re-offered. Update history shows 7.6.3\n   installing successfully, then 7.6.5 74 seconds later, also successful:\n\n       8/17/2026 10:50:52 PM   PowerShell v7.6.3 (x64)   ResultCode 2 (Succeeded)\n       8/17/2026 10:52:06 PM   PowerShell v7.6.5 (x64)   ResultCode 2 (Succeeded)\n\n   7.6.3 was offered again ten days later.\n\n3. The MSI registration is healthy:\n\n       ProductCode  : {499CA787-2899-40D2-A793-087E08EB227D}\n       Name         : PowerShell 7-x64\n       Version      : 7.6.5.0\n       LocalPackage : C:\\Windows\\Installer\\1485d9e1.msi\n       CacheExists  : True\n\n   HKLM\\SOFTWARE\\Microsoft\\PowerShellCore\\InstalledVersions is also correct:\n\n       31ab5147-9a97-4452-8443-d9709f0516e1   7.6.5   X:\\Program Files\\PowerShell-7-x64\\7\\\n\n   No orphaned product registrations, no dangling upgrade-code mappings. Reinstalling with\n   REINSTALL=ALL REINSTALLMODE=vomus completes with \"MainEngineThread is returning 0\".\n\nRuled out:\n- Standard WU remediation (stop wuauserv/cryptsvc, delete SoftwareDistribution and catroot2,\n  SFC, DISM) has no effect.\n- USE_MU=0 ENABLE_MU=0 applies cleanly, confirmed in the verbose log property table, and\n  changes nothing. That property governs whether PowerShell registers for MU servicing, not\n  whether MU can detect the install.\n\nSuggested fixes:\n- Have the MU applicability rules read PowerShellCore\\InstalledVersions or the MSI product\n  registration instead of probing a fixed filesystem path.\n- Populate ARPINSTALLLOCATION from INSTALLFOLDER. InstallLocation is currently empty in\n  Installer\\UserData\\...\\InstallProperties and ARPINSTALLLOCATION never appears in a verbose\n  install log. This one is entirely within the MSI's control.\n- At minimum, document that INSTALLFOLDER is incompatible with Microsoft Update servicing.\n\nI recognise the applicability rules are published service-side and may not be owned by this\nrepo. Happy to be redirected, but the ARPINSTALLLOCATION gap and the undocumented\nINSTALLFOLDER incompatibility are MSI-side.\n\nPossibly related to #26046, though that report appears to involve a default install path, so\nthe mechanism may differ.\n```\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.6.5\nPSEdition                      Core\nGitCommitId                    7.6.5\nOS                             Microsoft Windows 10.0.26200\nPlatform                       Win32NT\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n\nInstalled via MSI to X:\\Program Files\\PowerShell-7-x64\\7 (local volume, not a network drive).\n\nNOTE: ***Predates my move to the Insider channel.*** First appeared on a retail Windows 11 Pro build ~2 months ago, and persisted unchanged across the upgrade, so it is **not Insider-specific**.\n```\n\n### Visuals\n\n_No response_","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27898/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27898/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27891","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27891/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27891/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27891/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27891","id":5264135028,"node_id":"PR_kwDOAvT7bc8AAAABBKW5Mg","number":27891,"title":"fix: serialize nested hashtables in New-ModuleManifest -PrivateData correctly","user":{"login":"webdevsamran","id":121370806,"node_id":"U_kgDOBzv4tg","avatar_url":"https://avatars.githubusercontent.com/u/121370806?v=4","gravatar_id":"","url":"https://api.github.com/users/webdevsamran","html_url":"https://github.com/webdevsamran","followers_url":"https://api.github.com/users/webdevsamran/followers","following_url":"https://api.github.com/users/webdevsamran/following{/other_user}","gists_url":"https://api.github.com/users/webdevsamran/gists{/gist_id}","starred_url":"https://api.github.com/users/webdevsamran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/webdevsamran/subscriptions","organizations_url":"https://api.github.com/users/webdevsamran/orgs","repos_url":"https://api.github.com/users/webdevsamran/repos","events_url":"https://api.github.com/users/webdevsamran/events{/privacy}","received_events_url":"https://api.github.com/users/webdevsamran/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":2,"created_at":"2026-08-27T05:14:04Z","updated_at":"2026-08-27T05:18:17Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27891","html_url":"https://github.com/PowerShell/PowerShell/pull/27891","diff_url":"https://github.com/PowerShell/PowerShell/pull/27891.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27891.patch","merged_at":null},"body":"## PR Summary\nSerializes nested hashtables and complex objects correctly when generating manifest files in `New-ModuleManifest -PrivateData`. Previously, values were converted via string casting which emitted `\"System.Collections.Hashtable\"` for nested hashtables. The new recursive serializer formats nested hashtables, arrays, and primitive values as valid PowerShell data file literals.\n\nFixes #5922\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27891/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27891/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27889","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27889/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27889/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27889/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27889","id":5255981972,"node_id":"PR_kwDOAvT7bc8AAAABBD49pw","number":27889,"title":"Document the three return shapes of PSSerializer.Deserialize","user":{"login":"esidorenko-sl","id":251328550,"node_id":"U_kgDODvr4Jg","avatar_url":"https://avatars.githubusercontent.com/u/251328550?v=4","gravatar_id":"","url":"https://api.github.com/users/esidorenko-sl","html_url":"https://github.com/esidorenko-sl","followers_url":"https://api.github.com/users/esidorenko-sl/followers","following_url":"https://api.github.com/users/esidorenko-sl/following{/other_user}","gists_url":"https://api.github.com/users/esidorenko-sl/gists{/gist_id}","starred_url":"https://api.github.com/users/esidorenko-sl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esidorenko-sl/subscriptions","organizations_url":"https://api.github.com/users/esidorenko-sl/orgs","repos_url":"https://api.github.com/users/esidorenko-sl/repos","events_url":"https://api.github.com/users/esidorenko-sl/events{/privacy}","received_events_url":"https://api.github.com/users/esidorenko-sl/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":2,"created_at":"2026-08-26T10:27:36Z","updated_at":"2026-09-04T13:12:30Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27889","html_url":"https://github.com/PowerShell/PowerShell/pull/27889","diff_url":"https://github.com/PowerShell/PowerShell/pull/27889.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27889.patch","merged_at":null},"body":"## PR Summary\n\n`PSSerializer.Deserialize` returns one of three different shapes depending on how many objects the CliXml holds. It returns `null` when there are none, the bare object when there is exactly one, and an `object[]` when there are several. The doc comment only said it returns \"an object that represents the serialized content\", so a caller expecting a collection gets a scalar back for single item input and has to find that out by running into it.\n\nThis updates the XML doc comment to state the three shapes and to point at `DeserializeAsList`, which always returns an array, for callers who want a stable return type.\n\nDocumentation only. No behaviour change.\n\n## PR Context\n\nThe behaviour itself is intentional and matches how a single item pipeline behaves in PowerShell, so I have not touched the implementation. The only problem is that none of it was written down, while the alternative method that avoids the collapse is public and went unmentioned.\n\n## PR Checklist\n\n- [x] PR has a meaningful title\n- [x] Summarized changes\n- [x] **Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header**\n- [x] This PR is ready to merge and is not [work in progress](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---work-in-progress)\n  - If the PR is work in progress, please add the prefix `WIP:` or `[ WIP ]` to the beginning of the title and remove the prefix when the PR is ready.\n- **Breaking changes**\n  - [x] None\n- **User-facing changes**\n  - [x] Not Applicable\n- **Testing - New and feature**\n  - [x] N/A or can only be tested interactively\n- **Tooling**\n  - [x] N/A\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27889/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27889/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27885","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27885/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27885/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27885/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27885","id":5249808253,"node_id":"PR_kwDOAvT7bc8AAAABA_Affw","number":27885,"title":"Fix flaky Debug-Runspace attach event test","user":{"login":"TravisEz13","id":10873629,"node_id":"MDQ6VXNlcjEwODczNjI5","avatar_url":"https://avatars.githubusercontent.com/u/10873629?v=4","gravatar_id":"","url":"https://api.github.com/users/TravisEz13","html_url":"https://github.com/TravisEz13","followers_url":"https://api.github.com/users/TravisEz13/followers","following_url":"https://api.github.com/users/TravisEz13/following{/other_user}","gists_url":"https://api.github.com/users/TravisEz13/gists{/gist_id}","starred_url":"https://api.github.com/users/TravisEz13/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TravisEz13/subscriptions","organizations_url":"https://api.github.com/users/TravisEz13/orgs","repos_url":"https://api.github.com/users/TravisEz13/repos","events_url":"https://api.github.com/users/TravisEz13/events{/privacy}","received_events_url":"https://api.github.com/users/TravisEz13/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":1126736452,"node_id":"MDU6TGFiZWwxMTI2NzM2NDUy","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/CL-Test","name":"CL-Test","color":"fbca04","default":false,"description":"Indicates that a PR should be marked as a test change in the Change Log"}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-25T19:33:49Z","updated_at":"2026-08-27T16:05:05Z","closed_at":null,"assignee":null,"author_association":"MEMBER","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27885","html_url":"https://github.com/PowerShell/PowerShell/pull/27885","diff_url":"https://github.com/PowerShell/PowerShell/pull/27885.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27885.patch","merged_at":null},"body":"# PR Summary\n\nMake the `Debug-Runspace` attach-event test deterministic by opening the target runspace explicitly and waiting for the asynchronous `Wait-Event` pipeline to reach a running, busy state before invoking the debugger. Ensure the debugger, target pipeline, and runspace are cleaned up in all outcomes, while warning if best-effort stop cleanup fails.\n\n## PR Context\n\nThe test could start `Debug-Runspace` before the target runspace had opened and registered its event waiter, causing intermittent Windows CI failures when `OnDebugAttach` was not observed. This is a test-only synchronization fix; production code is unchanged. The original attach, attached-state, stop, and detach-state assertions remain intact.\n\n## PR Checklist\n\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\n  - Use the present tense and imperative mood when describing your changes\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-on-pull-requests/about-pull-requests#pull-requests)\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\n  - [x] None\n  - **OR**\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\n    - [ ] Experimental feature name(s):\n- **User-facing changes**\n  - [x] Not Applicable\n  - **OR**\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\n    - [ ] Issue filed:\n- **Testing - New and feature**\n  - [x] N/A or can only be tested interactively\n  - **OR**\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\n\n## Test Results\n\n- `Debug-Runspace.Tests.ps1`: 5 passed, 0 failed\n- Ten consecutive standalone runs: 5 passed, 0 failed on every run\n- Related debugger tests via `Start-PSPester`: 25 passed, 0 failed","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27885/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27885/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27884","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27884/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27884/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27884/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27884","id":5248899808,"node_id":"PR_kwDOAvT7bc8AAAABA-RWIw","number":27884,"title":"Mark DSC Profile tests pending on MSIX test runs","user":{"login":"adityapatwardhan","id":12820925,"node_id":"MDQ6VXNlcjEyODIwOTI1","avatar_url":"https://avatars.githubusercontent.com/u/12820925?v=4","gravatar_id":"","url":"https://api.github.com/users/adityapatwardhan","html_url":"https://github.com/adityapatwardhan","followers_url":"https://api.github.com/users/adityapatwardhan/followers","following_url":"https://api.github.com/users/adityapatwardhan/following{/other_user}","gists_url":"https://api.github.com/users/adityapatwardhan/gists{/gist_id}","starred_url":"https://api.github.com/users/adityapatwardhan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adityapatwardhan/subscriptions","organizations_url":"https://api.github.com/users/adityapatwardhan/orgs","repos_url":"https://api.github.com/users/adityapatwardhan/repos","events_url":"https://api.github.com/users/adityapatwardhan/events{/privacy}","received_events_url":"https://api.github.com/users/adityapatwardhan/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":9514751507,"node_id":"LA_kwDOAvT7bc8AAAACNx-WEw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Backport-7.6.x-Consider","name":"Backport-7.6.x-Consider","color":"f9d0c4","default":false,"description":""}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-25T17:52:32Z","updated_at":"2026-08-25T18:02:16Z","closed_at":null,"assignee":null,"author_association":"MEMBER","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27884","html_url":"https://github.com/PowerShell/PowerShell/pull/27884","diff_url":"https://github.com/PowerShell/PowerShell/pull/27884.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27884.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\nThis pull request updates the `dsc.profileresource.Tests.ps1` test suite to improve compatibility with MSIX-packaged PowerShell environments. The main enhancement is the detection of the MSIX context, which results in tests being marked as pending and skipped when running in this environment. This prevents false failures due to known limitations of MSIX installations.\r\n\r\nKey changes:\r\n\r\n**MSIX Context Detection and Handling:**\r\n* Added logic at the start of each test group (`BeforeAll`) to detect if the tests are running in an MSIX context by checking if `$pshome` contains `WindowsApps`. If so, a verbose message is logged and the tests are marked as pending or skipped. [[1]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R6-R12) [[2]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R178-R183)\r\n* Inserted checks at the beginning of each test case to skip the test and mark it as pending with a clear reason if running in MSIX context. This is done using `Set-ItResult -Pending`. [[1]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R83-R88) [[2]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R97-R164) [[3]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R254-R258) [[4]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R271-R286)\r\n\r\n**Test Flow Adjustments:**\r\n* Ensured that cleanup and restoration logic in `AfterAll` and `BeforeAll` blocks also respect the MSIX context and exit early if detected. [[1]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R56-R59) [[2]](diffhunk://#diff-88f342bb0b6e12c796eb45bee8e0a7779d15d8d82455114adbc1f23a8cee6107R227-R230)\r\n\r\nThese changes make the test suite more robust and prevent unnecessary test failures when running under MSIX-packaged PowerShell.\r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n## PR Checklist\r\n\r\n- [ ] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [ ] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [ ] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [ ] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [ ] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27884/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27884/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27878","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27878/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27878/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27878/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27878","id":5212048543,"node_id":"I_kwDOAvT7bc8AAAABNqmMnw","number":27878,"title":"Get-StrictMode","user":{"login":"martingbrown","id":5264795,"node_id":"MDQ6VXNlcjUyNjQ3OTU=","avatar_url":"https://avatars.githubusercontent.com/u/5264795?v=4","gravatar_id":"","url":"https://api.github.com/users/martingbrown","html_url":"https://github.com/martingbrown","followers_url":"https://api.github.com/users/martingbrown/followers","following_url":"https://api.github.com/users/martingbrown/following{/other_user}","gists_url":"https://api.github.com/users/martingbrown/gists{/gist_id}","starred_url":"https://api.github.com/users/martingbrown/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martingbrown/subscriptions","organizations_url":"https://api.github.com/users/martingbrown/orgs","repos_url":"https://api.github.com/users/martingbrown/repos","events_url":"https://api.github.com/users/martingbrown/events{/privacy}","received_events_url":"https://api.github.com/users/martingbrown/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":311043050,"node_id":"MDU6TGFiZWwzMTEwNDMwNTA=","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Issue-Enhancement","name":"Issue-Enhancement","color":"fc2929","default":false,"description":"the issue is more of a feature request than a bug"},{"id":2693871837,"node_id":"MDU6TGFiZWwyNjkzODcxODM3","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Resolution-Declined","name":"Resolution-Declined","color":"ffffff","default":false,"description":"The proposed feature is declined."},{"id":5701240157,"node_id":"LA_kwDOAvT7bc8AAAABU9IFXQ","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/WG-Reviewed","name":"WG-Reviewed","color":"1d76db","default":false,"description":"A Working Group has reviewed this and made a recommendation"}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":6,"created_at":"2026-08-21T08:20:57Z","updated_at":"2026-09-03T14:59:43Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Summary of the new feature / enhancement\n\nAs a user I would like a Get-StrictMode cmdlet that returns whether strict mode is enabled and if so what version so that I know whether strict mode is enabled.\n\nThis would compliment Set-StrictMode.\n\n### Proposed technical implementation details (optional)\n\n_No response_","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27878/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27878/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27877","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27877/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27877/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27877/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27877","id":5209609846,"node_id":"PR_kwDOAvT7bc8AAAABAfiJWQ","number":27877,"title":"Restore ReadOnly after failed Set-Variable option updates","user":{"login":"dkontyko","id":33853225,"node_id":"MDQ6VXNlcjMzODUzMjI1","avatar_url":"https://avatars.githubusercontent.com/u/33853225?v=4","gravatar_id":"","url":"https://api.github.com/users/dkontyko","html_url":"https://github.com/dkontyko","followers_url":"https://api.github.com/users/dkontyko/followers","following_url":"https://api.github.com/users/dkontyko/following{/other_user}","gists_url":"https://api.github.com/users/dkontyko/gists{/gist_id}","starred_url":"https://api.github.com/users/dkontyko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dkontyko/subscriptions","organizations_url":"https://api.github.com/users/dkontyko/orgs","repos_url":"https://api.github.com/users/dkontyko/repos","events_url":"https://api.github.com/users/dkontyko/events{/privacy}","received_events_url":"https://api.github.com/users/dkontyko/received_events","type":"User","user_view_type":"public","site_admin":true},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-21T02:03:57Z","updated_at":"2026-08-25T16:47:58Z","closed_at":null,"assignee":null,"author_association":"CONTRIBUTOR","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27877","html_url":"https://github.com/PowerShell/PowerShell/pull/27877","diff_url":"https://github.com/PowerShell/PowerShell/pull/27877.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27877.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\nRestore the `ReadOnly` option when `Set-Variable -Force` temporarily removes it and a subsequent option update fails.\r\n\r\nAdd regression coverage for `ReadOnly`, `ReadOnly | Private`, and `ReadOnly | AllScope`, plus compatibility tests documenting the intentionally retained behavior for cases 1 and 2 of #27679.\r\n\r\n## PR Context\r\n\r\nWhen `Set-Variable -Force` operates on a ReadOnly variable, it temporarily removes `ReadOnly` before applying the requested changes. If applying `-Option Constant` fails with `VariableCannotBeMadeConstant`, the temporary removal was not reverted, leaving the variable writable.\r\n\r\nThis change restores `ReadOnly` in the existing handled exception paths while preserving other current option flags. It addresses case 3 of #27679, as agreed by the PowerShell cmdlets working group.\r\n\r\nFor backward compatibility, cases 1 and 2 continue to retain value and description changes made before the option update fails. Tests document this behavior explicitly.\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header\r\n- [x] This PR is ready to merge\r\n- **Breaking changes**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] Experimental feature(s) needed\r\n    - [ ] Experimental feature name(s):\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] Documentation needed\r\n    - [ ] Issue filed:\r\n- **Testing - New and feature**\r\n  - [ ] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [x] Added regression and compatibility tests","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27877/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27877/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27875","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27875/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27875/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27875/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27875","id":5207013390,"node_id":"PR_kwDOAvT7bc8AAAABAdd5XA","number":27875,"title":"Add .ps1 file extension to AppxManifest","user":{"login":"jborean93","id":8462645,"node_id":"MDQ6VXNlcjg0NjI2NDU=","avatar_url":"https://avatars.githubusercontent.com/u/8462645?v=4","gravatar_id":"","url":"https://api.github.com/users/jborean93","html_url":"https://github.com/jborean93","followers_url":"https://api.github.com/users/jborean93/followers","following_url":"https://api.github.com/users/jborean93/following{/other_user}","gists_url":"https://api.github.com/users/jborean93/gists{/gist_id}","starred_url":"https://api.github.com/users/jborean93/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jborean93/subscriptions","organizations_url":"https://api.github.com/users/jborean93/orgs","repos_url":"https://api.github.com/users/jborean93/repos","events_url":"https://api.github.com/users/jborean93/events{/privacy}","received_events_url":"https://api.github.com/users/jborean93/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-20T19:14:01Z","updated_at":"2026-08-28T18:10:01Z","closed_at":null,"assignee":null,"author_association":"COLLABORATOR","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27875","html_url":"https://github.com/PowerShell/PowerShell/pull/27875","diff_url":"https://github.com/PowerShell/PowerShell/pull/27875.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27875.patch","merged_at":null},"body":"# PR Summary\r\n\r\nAdds the required attribute to the AppxManifest that allows users to associate PowerShell installed through an MSIX package with the `.ps1` extension.\r\n\r\nWhen editing the preview msix package to add this manifest entry this is what the default app picker now shows with the changes here.\r\n\r\n<img width=\"448\" height=\"625\" alt=\"image\" src=\"https://github.com/user-attachments/assets/4c66ecac-0fb3-409e-a351-aaef2914ce20\" />\r\n\r\n## PR Context\r\n\r\nFixes: https://github.com/PowerShell/PowerShell/issues/27277\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27875/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27875/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27867","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27867/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27867/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27867/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27867","id":5200063294,"node_id":"I_kwDOAvT7bc8AAAABNfKrPg","number":27867,"title":"Wait-Process after Stop-Process to processes on another user often blanks processes fields","user":{"login":"Meterel","id":114000274,"node_id":"U_kgDOBsuBkg","avatar_url":"https://avatars.githubusercontent.com/u/114000274?v=4","gravatar_id":"","url":"https://api.github.com/users/Meterel","html_url":"https://github.com/Meterel","followers_url":"https://api.github.com/users/Meterel/followers","following_url":"https://api.github.com/users/Meterel/following{/other_user}","gists_url":"https://api.github.com/users/Meterel/gists{/gist_id}","starred_url":"https://api.github.com/users/Meterel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Meterel/subscriptions","organizations_url":"https://api.github.com/users/Meterel/orgs","repos_url":"https://api.github.com/users/Meterel/repos","events_url":"https://api.github.com/users/Meterel/events{/privacy}","received_events_url":"https://api.github.com/users/Meterel/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":3,"created_at":"2026-08-20T05:33:23Z","updated_at":"2026-08-21T11:36:48Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\nAfter stopping processes on another user with Stop-Process and then waiting for them with Wait-Process, oftentimes blanks fields on the process objects, notably ProcessName. This happens unreliably and seems to happen more if it's done in a function and then the processes are returned to be stored in a variable to then be displayed. This doesn't seem to happen when calling processes WaitForExit method instead of Wait-Process.\n\nTested on Powershell v7.7.0-preview.3, v7.6.5 and notably on Windows Powershell v5.1.26100.9168 where it seems to almost always happen with most fields blanked/zeroed.\n\nTo reproduce run this\n```powershell\n$ErrorActionPreference=\"stop\"\n\n\n$user=New-LocalUser -NoPassword test_waitprocess_bug\ntry{\n    $pass=ConvertTo-SecureString -AsPlainText -Force \"wowverysecure\"\n    Set-LocalUser $user -Password $pass\n\n\n    function start_procs{\n        1..10 | ForEach-Object {\n            [System.Diagnostics.Process]::Start((New-Object System.Diagnostics.ProcessStartInfo winver -Property @{\n                UserName=$user;\n                Password=$pass;\n                UseShellExecute=$false;\n                WorkingDirectory=\"C:\\\"\n            }))\n        } | Out-Null\n    }\n\n    function test{\n        param(\n            [switch]$expected_behavior\n        )\n\n        $procs=Get-Process -IncludeUserName | Where-Object UserName -EQ \"${env:COMPUTERNAME}\\$user\"\n        Stop-Process -Force $procs\n\n        if($expected_behavior){\n            $procs | ForEach-Object {$_.WaitForExit()}\n        }else{\n            $procs | Wait-Process\n        }\n\n        $procs\n    }\n\n\n    start_procs\n    $procs=test\n    Write-Output \"Actual bad behavior:\"\n    Write-Output $procs\n\n    Write-Output \"\"\n\n    start_procs\n    $procs=test -expected_behavior\n    Write-Output \"Expected good behavior:\"\n    Write-Output $procs\n}finally{\n    Remove-LocalUser $user\n}\n```\n\n### Expected behavior\n\n```console\nWS(M)   CPU(s)      Id UserName                       ProcessName\n     -----   ------      -- --------                       -----------\n      0.00     0.06    2160 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.16    2360 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.06    3884 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.05    4388 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.08    4460 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.09    4676 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.12    7900 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.11    9536 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.12   11004 DESKTOP-XXXXXXX\\test_waitproc… winver\n      0.00     0.16   11092 DESKTOP-XXXXXXX\\test_waitproc… winver\n```\n\n### Actual behavior\n\n```console\nWS(M)   CPU(s)      Id UserName                       ProcessName\n     -----   ------      -- --------                       -----------\n      0.00     0.09     148 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.00    1880 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.05    2500 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.08    5608 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.05    5832 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.12    6992 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.14    7656 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.03    9800 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.03   10708 DESKTOP-XXXXXXX\\test_waitproc…\n      0.00     0.08   11184 DESKTOP-XXXXXXX\\test_waitproc…\n```\n\n### Error details\n\n```console\n\n```\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.7.0-preview.3\nPSEdition                      Core\nGitCommitId                    7.7.0-preview.3\nOS                             Microsoft Windows 10.0.26200\nPlatform                       Win32NT\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n```\n\n### Visuals\n\n_No response_","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27867/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27867/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27861","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27861/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27861/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27861/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27861","id":5176148771,"node_id":"I_kwDOAvT7bc8AAAABNIXDIw","number":27861,"title":"Invoke-RestMethod -FollowRelLink strips the Authorization header on followed links in 7.6.5","user":{"login":"chris-peterson","id":1980791,"node_id":"MDQ6VXNlcjE5ODA3OTE=","avatar_url":"https://avatars.githubusercontent.com/u/1980791?v=4","gravatar_id":"","url":"https://api.github.com/users/chris-peterson","html_url":"https://github.com/chris-peterson","followers_url":"https://api.github.com/users/chris-peterson/followers","following_url":"https://api.github.com/users/chris-peterson/following{/other_user}","gists_url":"https://api.github.com/users/chris-peterson/gists{/gist_id}","starred_url":"https://api.github.com/users/chris-peterson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chris-peterson/subscriptions","organizations_url":"https://api.github.com/users/chris-peterson/orgs","repos_url":"https://api.github.com/users/chris-peterson/repos","events_url":"https://api.github.com/users/chris-peterson/events{/privacy}","received_events_url":"https://api.github.com/users/chris-peterson/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":311043053,"node_id":"MDU6TGFiZWwzMTEwNDMwNTM=","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Issue-Question","name":"Issue-Question","color":"fc2929","default":false,"description":"ideally support can be provided via other mechanisms, but sometimes folks do open an issue to get a"},{"id":2141663615,"node_id":"MDU6TGFiZWwyMTQxNjYzNjE1","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Review%20-%20Maintainer","name":"Review - Maintainer","color":"c5def5","default":false,"description":"The PR/issue needs a review from the PowerShell repo Maintainers"}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":4,"created_at":"2026-08-17T22:55:54Z","updated_at":"2026-09-06T16:29:06Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Steps to reproduce\n\n`-FollowRelLink` exists to page authenticated REST APIs, GitHub's and GitLab's being the canonical examples. As of the 2026-08-14 servicing releases — **7.4.19, 7.5.10 and 7.6.5** — the cmdlet sends the caller's `Authorization` header on the **first** request only; every page reached by following a `rel=\"next\"` link is fetched **anonymously**.\n\nAgainst a server that permits anonymous reads, those requests still succeed. They just return a smaller, visibility-filtered result set, with HTTP 200 and no warning, so the caller receives silently partial data rather than an error. (Against a fully private server the follow fails loudly with 401/404 instead, which is presumably why this hasn't been widely reported yet.)\n\n**What changed.** One change, landed on each servicing line through its own Azure DevOps PR — *\"Strip authorization on redirect if `-PreserveAuthorizationOnRedirect` is not specified\"*. On 7.6 that is commit e209aea1d00b7de871528e56d6c6baee414991dc (PR 41050), which changed [`WebRequestPSCmdlet.Common.cs#L570`](https://github.com/PowerShell/PowerShell/blob/v7.6.5/src/Microsoft.PowerShell.Commands.Utility/commands/utility/WebCmdlet/Common/WebRequestPSCmdlet.Common.cs#L570):\n\n```diff\n-  using (HttpRequestMessage request = GetRequest(uri))\n+  using (HttpRequestMessage request = GetRequest(uri, isRedirect: followedRelLink > 0))\n```\n\n`GetRequest` then drops the header:\n\n```csharp\nif (isRedirect && !PreserveAuthorizationOnRedirect && entry.Key is HttpKnownHeaderNames.Authorization)\n{\n    continue;\n}\n```\n\n## Impacted Versions\n\n| Released version | Affected | Rel-link call site | Introducing commit |\n| --- | --- | --- | --- |\n| v7.4.19 (LTS) | yes | [L565](https://github.com/PowerShell/PowerShell/blob/v7.4.19/src/Microsoft.PowerShell.Commands.Utility/commands/utility/WebCmdlet/Common/WebRequestPSCmdlet.Common.cs#L565) | `d00974dc7` — PR 41040 |\n| v7.5.10 | yes | [L565](https://github.com/PowerShell/PowerShell/blob/v7.5.10/src/Microsoft.PowerShell.Commands.Utility/commands/utility/WebCmdlet/Common/WebRequestPSCmdlet.Common.cs#L565) | `0c59ffd11` — PR 41045 |\n| v7.6.5 | yes | [L570](https://github.com/PowerShell/PowerShell/blob/v7.6.5/src/Microsoft.PowerShell.Commands.Utility/commands/utility/WebCmdlet/Common/WebRequestPSCmdlet.Common.cs#L570) | `e209aea1d` — PR 41050 |\n| v7.7.0-preview.4 | yes | [L570](https://github.com/PowerShell/PowerShell/blob/v7.7.0-preview.4/src/Microsoft.PowerShell.Commands.Utility/commands/utility/WebCmdlet/Common/WebRequestPSCmdlet.Common.cs#L570) | `91448ff15` — [#27873](https://github.com/PowerShell/PowerShell/pull/27873) |\n| v7.4.18, v7.5.9, v7.6.4, v7.7.0-preview.3 and earlier | no | — | — |\n| 7.9.x-preview | no | — | — |\n\nSo anyone paging an authenticated API is affected on whichever line they upgraded to, the LTS and the 7.7 preview included.\n\n**Branches, as they stand today.**\n\n| Branch | Affected | Rel-link call site |\n| --- | --- | --- |\n| [`master`](https://github.com/PowerShell/PowerShell/tree/master) | yes | L570 |\n| [`release/v7.4.20`](https://github.com/PowerShell/PowerShell/tree/release/v7.4.20) | yes | L565 |\n| [`release/v7.5.11`](https://github.com/PowerShell/PowerShell/tree/release/v7.5.11) | yes | L565 |\n| [`release/v7.6.6`](https://github.com/PowerShell/PowerShell/tree/release/v7.6.6) | yes | L570 |\n| [`release/v7.7.0-preview.4`](https://github.com/PowerShell/PowerShell/tree/release/v7.7.0-preview.4), [`release/v7.7.0-preview.5`](https://github.com/PowerShell/PowerShell/tree/release/v7.7.0-preview.5) | yes | L570 |\n| `release/v7.4.94`, `release/v7.4.95` | yes | L565 |\n| `release/v7.4.99`, `release/v7.5.99`, `release/v7.6.99`, `release/v7.9.99-preview.109` | no | — |\n\n`91448ff15` ([#27873](https://github.com/PowerShell/PowerShell/pull/27873)) brought the call site to `master` on 2026-08-20, so 7.7 and everything after it inherit the behavior. A fix has to land on `master` and be backported to each servicing line above.\n\n**I recognize this looks deliberate** — the same commit added a test asserting it:\n\n> `Validate Invoke-RestMethod -FollowRelLink strips the authorization header on followed relation links by default`\n\nSo the question isn't whether the code does what it was written to do. It's whether the cost to authenticated pagination was weighed when redirect semantics were extended to `-FollowRelLink`.\n\n**The argument for treating them differently:** a rel-link follow is not a redirect. It is a client-initiated GET to a URL the *same server* advertised in its own `Link` header, and in practice it is same-origin. The conventional rule for credential stripping is to drop them when crossing an origin, not on every hop. Applied unconditionally here, it removes credentials the caller supplied deliberately for the API being paged, which leaves `-FollowRelLink` unable to serve the use case it was added for.\n\n**Repro** — self-contained, no external service, runs anywhere `pwsh` runs. It serves three linked pages from `HttpListener` and has each page report whether the request that fetched it carried an `Authorization` header.\n\n```powershell\n# Standalone repro: -FollowRelLink drops the Authorization header on followed links.\n# No external service required; serves three linked pages from HttpListener on localhost.\n# Each page reports whether the request that fetched it carried an Authorization header.\n\n$port = 8802\n$prefix = \"http://localhost:$port/\"\n\n$listener = Start-ThreadJob -ArgumentList $prefix -ScriptBlock {\n    param($prefix)\n    $l = [System.Net.HttpListener]::new()\n    $l.Prefixes.Add($prefix)\n    $l.Start()\n    for ($i = 1; $i -le 3; $i++) {\n        $ctx = $l.GetContext()\n        $page = 1\n        if ($ctx.Request.Url.Query -match 'page=(\\d+)') { $page = [int]$Matches[1] }\n        $auth = $ctx.Request.Headers['Authorization']\n\n        $body = @{ page = $page; authorization = $auth } | ConvertTo-Json -Compress\n        $bytes = [System.Text.Encoding]::UTF8.GetBytes($body)\n\n        if ($page -lt 3) {\n            $next = $prefix.TrimEnd('/') + \"/?page=$($page + 1)\"\n            $ctx.Response.AddHeader('Link', \"<$next>; rel=`\"next`\"\")\n        }\n        $ctx.Response.ContentType = 'application/json'\n        $ctx.Response.ContentLength64 = $bytes.Length\n        $ctx.Response.OutputStream.Write($bytes, 0, $bytes.Length)\n        $ctx.Response.Close()\n    }\n    $l.Stop()\n}\n\nStart-Sleep -Milliseconds 700\n\n$result = Invoke-RestMethod -Uri \"$prefix`?page=1\" -Headers @{ Authorization = 'test' } -FollowRelLink -MaximumFollowRelLink 10\n\nWrite-Host \"PowerShell $($PSVersionTable.PSVersion)\"\nforeach ($r in $result) {\n    $seen = if ([string]::IsNullOrEmpty($r.authorization)) { '<none>' } else { $r.authorization }\n    Write-Host (\"  page {0}: server saw Authorization = {1}\" -f $r.page, $seen)\n}\n\n$null = Receive-Job $listener -Wait -ErrorAction SilentlyContinue\nRemove-Job $listener -Force -ErrorAction SilentlyContinue\n```\n\n**Impact against a real API.** On a self-managed GitLab 18.11.6-ee group holding 43 projects (39 public, 4 internal), `Invoke-RestMethod -FollowRelLink` returned exactly **39** at every page size tried (`per_page` 5, 10, and 20): page 1 came back authenticated, every later page anonymous. The same call on 7.6.4, same machine and endpoint, returns 43. It reached us through the `GitlabCli` module, where `Get-GitlabProject -GroupId <group> -Recurse -All` silently returned 39 of 43 projects.\n\n`-PreserveAuthorizationOnRedirect` does restore the full result, but it is the same switch that governs genuine cross-origin redirects, so it isn't a safe thing for a shared module to turn on just to page an API.\n\n**Remedies, in the order we'd prefer them.** Sketches against the `v7.6.5` source to make the ask concrete — untested, and offered as a direction rather than a patch. Happy to open a PR for whichever shape you'd accept.\n\n**1. Strip only when the followed link leaves the origin.** This keeps the security fix's intent for the case it was written for, and restores authenticated pagination for the same-origin case that is essentially all of it:\n\n```diff\n                 int followedRelLink = 0;\n                 Uri uri = Uri;\n+                string originAuthority = uri.GetLeftPart(UriPartial.Authority);\n                 do\n                 {\n@@\n-                    using (HttpRequestMessage request = GetRequest(uri, isRedirect: followedRelLink > 0))\n+                    // A rel-link follow targets a URL the same server advertised in its own Link\n+                    // header. Treat it as a credential boundary only when it leaves that origin.\n+                    bool relLinkLeavesOrigin = followedRelLink > 0\n+                        && !string.Equals(\n+                               originAuthority,\n+                               uri.GetLeftPart(UriPartial.Authority),\n+                               StringComparison.OrdinalIgnoreCase);\n+\n+                    using (HttpRequestMessage request = GetRequest(uri, isRedirect: relLinkLeavesOrigin))\n```\n\n**2. If the unconditional strip stays, make it audible.** The failure is silent in both halves — the header vanishes without comment, and the paging loop then exits on a bare `return` — so nothing distinguishes a truncated read from a complete one:\n\n```diff\n                             uri = new Uri(_relationLink[\"next\"]);\n                             followedRelLink++;\n+\n+                            if (!PreserveAuthorizationOnRedirect\n+                                && WebSession.Headers.ContainsKey(HttpKnownHeaderNames.Authorization))\n+                            {\n+                                WriteWarning(WebCmdletStrings.AuthorizationStrippedOnRelLink);\n+                            }\n```\n\n(As written that warns once per followed page; hoisting it to fire once per command would be quieter.)\n\n**3. Either way, document the behavior change.** None of the three published release notes — 7.4.19, 7.5.10, 7.6.5 — mention authorization or redirects; they list a `pwsh -file` fix, test and CI changes, and packaging updates. There is no signal connecting an upgrade to newly-truncated results.\n\n### Expected behavior\n\n```console\nPowerShell 7.6.4\n  page 1: server saw Authorization = test\n  page 2: server saw Authorization = test\n  page 3: server saw Authorization = test\n```\n\n### Actual behavior\n\n```console\nPowerShell 7.6.5\n  page 1: server saw Authorization = test\n  page 2: server saw Authorization = <none>\n  page 3: server saw Authorization = <none>\n```\n\n### Error details\n\nNone. That is the substance of the report: the followed requests succeed, so the caller gets a well-formed short result with no error, no warning, and no non-zero status.\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.6.5\nPSEdition                      Core\nGitCommitId                    7.6.5\nOS                             macOS 26.6.1\nPlatform                       Unix\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n```\n\nReproduced on macOS 26.6.1 arm64. Confirmed absent on 7.6.4 on the same machine against the same endpoints.\n\n\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27861/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27861/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27859","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27859/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27859/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27859/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27859","id":5167760537,"node_id":"I_kwDOAvT7bc8AAAABNAXEmQ","number":27859,"title":"Feature request: detect when success output stream is captured in ConsoleHost","user":{"login":"steve02081504","id":31927825,"node_id":"MDQ6VXNlcjMxOTI3ODI1","avatar_url":"https://avatars.githubusercontent.com/u/31927825?v=4","gravatar_id":"","url":"https://api.github.com/users/steve02081504","html_url":"https://github.com/steve02081504","followers_url":"https://api.github.com/users/steve02081504/followers","following_url":"https://api.github.com/users/steve02081504/following{/other_user}","gists_url":"https://api.github.com/users/steve02081504/gists{/gist_id}","starred_url":"https://api.github.com/users/steve02081504/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/steve02081504/subscriptions","organizations_url":"https://api.github.com/users/steve02081504/orgs","repos_url":"https://api.github.com/users/steve02081504/repos","events_url":"https://api.github.com/users/steve02081504/events{/privacy}","received_events_url":"https://api.github.com/users/steve02081504/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":7,"created_at":"2026-08-17T02:54:18Z","updated_at":"2026-08-17T21:27:45Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"## Summary\n\nCLI tools often need to distinguish:\n\n- **interactive display**: write progress to the host (`Write-Host`)\n- **captured success output**: write only machine-readable results (`Write-Output`) when the caller consumes the success stream via assignment, pipeline, or file redirect\n\n`[Console]::IsOutputRedirected` reflects the .NET process console state and does **not** indicate whether the PowerShell **success output stream** is being captured by the caller. In interactive `ConsoleHost` attached to a TTY:\n\n- `$x = & command` captures success output but `[Console]::IsOutputRedirected` remains `$false` inside the command\n- `command 2>$null` redirects stderr only; stdout is not captured\n\nTools cannot rely on `[Console]::IsOutputRedirected` alone and resort to fragile heuristics (e.g. inspecting `Get-PSCallStack` for `$var =` assignment).\n\n## Environment\n\n- OS: Windows 10/11\n- Host: `ConsoleHost` (interactive terminal, not `powershell -File`)\n- Editions observed: Windows PowerShell 5.1, likely also PowerShell 7.x\n\n## Steps to reproduce\n\nOpen an interactive PowerShell session in a terminal (TTY), then run:\n\n```powershell\n# A) Direct call — stdout goes to the console\n& { [Console]::IsOutputRedirected }\n\n# B) Assignment capture — caller consumes success output\n$captured = & { [Console]::IsOutputRedirected }\n$captured\n\n# C) stderr-only redirect — stdout is NOT captured\n& { [Console]::IsOutputRedirected } 2>$null\n```\n\n## Current behavior\n\n| Scenario | `[Console]::IsOutputRedirected` inside invoked command | Success stream actually captured? |\n|---|---|---|\n| A) direct interactive call | `$false` | no |\n| B) `$x = & command` | `$false` | **yes** |\n| C) `command 2>$null` only | `$false` | no |\n\nScenario B is the documented PowerShell pattern for capturing command output (e.g. `$exe = MyTool .\\input`).\n\n(When the same logic is run under `powershell -File` or some non-interactive hosts, all three scenarios may report `True` for `[Console]::IsOutputRedirected`, which is another inconsistency.)\n\n## Request\n\nProvide a **PowerShell-level** public API to detect that the current command's success output is being captured/consumed (assignment, pipeline, file redirect) rather than going to `Out-Default` for interactive display — distinct from stderr-only redirection.\n\nPossible approaches:\n\n- Expose a flag on `$PSCmdlet` / `$ExecutionContext` for script blocks and `&` invocations\n- Document a supported detection pattern if a runtime flag is not feasible\n\n**Not** requesting changes to `[Console]::IsOutputRedirected` — that API correctly reflects .NET console state, separate from the PowerShell output stream.\n\n## Real-world case\n\n[ps12exe](https://github.com/steve02081504/ps12exe) documents `$exe = ps12exe .\\script.ps1` to capture the generated `.exe` path. In TTY runs, compilation succeeds but stdout path is missing when tools rely on `[Console]::IsOutputRedirected` alone during assignment capture. ps12exe ships a workaround (`Test-StdoutRedirected`: `[Console]::IsOutputRedirected` plus a `Get-PSCallStack` heuristic) for Windows PowerShell 5.1 compatibility.","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27859/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27859/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27858","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27858/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27858/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27858/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27858","id":5166830436,"node_id":"PR_kwDOAvT7bc7_04DD","number":27858,"title":"Increase Format-Table Max Limit to 30 properties","user":{"login":"kilasuit","id":6355225,"node_id":"MDQ6VXNlcjYzNTUyMjU=","avatar_url":"https://avatars.githubusercontent.com/u/6355225?v=4","gravatar_id":"","url":"https://api.github.com/users/kilasuit","html_url":"https://github.com/kilasuit","followers_url":"https://api.github.com/users/kilasuit/followers","following_url":"https://api.github.com/users/kilasuit/following{/other_user}","gists_url":"https://api.github.com/users/kilasuit/gists{/gist_id}","starred_url":"https://api.github.com/users/kilasuit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kilasuit/subscriptions","organizations_url":"https://api.github.com/users/kilasuit/orgs","repos_url":"https://api.github.com/users/kilasuit/repos","events_url":"https://api.github.com/users/kilasuit/events{/privacy}","received_events_url":"https://api.github.com/users/kilasuit/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":401720556,"node_id":"MDU6TGFiZWw0MDE3MjA1NTY=","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/WG-Interactive-Console","name":"WG-Interactive-Console","color":"5319e7","default":false,"description":"the console experience"},{"id":5701254859,"node_id":"LA_kwDOAvT7bc8AAAABU9I-yw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/WG-NeedsReview","name":"WG-NeedsReview","color":"1d76db","default":false,"description":"Needs a review by the labeled Working Group"}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":2,"created_at":"2026-08-16T23:14:34Z","updated_at":"2026-08-28T19:23:26Z","closed_at":null,"assignee":null,"author_association":"COLLABORATOR","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27858","html_url":"https://github.com/PowerShell/PowerShell/pull/27858","diff_url":"https://github.com/PowerShell/PowerShell/pull/27858.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27858.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\nThis increases the MaxCount from 10 to 30 in Format-Table & adds a comment about potential future move for setting this limit into a UserConfigurable manner using PSStyle (which is up for debate)\r\n\r\n## PR Context\r\n\r\nInterim Fix #20108\r\n\r\n> Note: as far as I could tell from a quick review of that issue and dig into the code the existing tests for Format-Table don't seem to really test this area out properly which is why I'm raising this as a draft PR for now\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [ ] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [ ] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [ ] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27858/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27858/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27856","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27856/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27856/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27856/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27856","id":5155142573,"node_id":"PR_kwDOAvT7bc7_RYlt","number":27856,"title":"Mark Export-Csv -Path and -LiteralPath parameters as mandatory in separate parameter sets (#27670)","user":{"login":"gtathelegend","id":73114908,"node_id":"MDQ6VXNlcjczMTE0OTA4","avatar_url":"https://avatars.githubusercontent.com/u/73114908?v=4","gravatar_id":"","url":"https://api.github.com/users/gtathelegend","html_url":"https://github.com/gtathelegend","followers_url":"https://api.github.com/users/gtathelegend/followers","following_url":"https://api.github.com/users/gtathelegend/following{/other_user}","gists_url":"https://api.github.com/users/gtathelegend/gists{/gist_id}","starred_url":"https://api.github.com/users/gtathelegend/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtathelegend/subscriptions","organizations_url":"https://api.github.com/users/gtathelegend/orgs","repos_url":"https://api.github.com/users/gtathelegend/repos","events_url":"https://api.github.com/users/gtathelegend/events{/privacy}","received_events_url":"https://api.github.com/users/gtathelegend/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":2,"created_at":"2026-08-14T19:51:15Z","updated_at":"2026-08-14T19:58:19Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27856","html_url":"https://github.com/PowerShell/PowerShell/pull/27856","diff_url":"https://github.com/PowerShell/PowerShell/pull/27856.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27856.patch","merged_at":null},"body":"## Description\r\n\r\nThis PR resolves issue #27670 where `Export-Csv` did not declare `-Path` and `-LiteralPath` as mandatory parameters or assign them to parameter sets in command metadata.\r\n\r\nPreviously, `Export-Csv` relied on imperative runtime validation in `BeginProcessing()` and `CreateFileStream()` to throw a custom `CannotSpecifyPathAndLiteralPath` exception when path parameters were missing or mutually specified. This prevented PowerShell's parameter binder from enforcing these requirements declaratively.\r\n\r\n## Motivation\r\n\r\nRelying on manual imperative checks inside cmdlet processing bypasses PowerShell's engine parameter binding framework:\r\n\r\n1. `Get-Command Export-Csv` metadata did not report `-Path` or `-LiteralPath` as mandatory parameters.\r\n2. Parameter metadata did not describe the path parameters as belonging to mutually exclusive parameter sets.\r\n3. Interactive sessions could not use the native parameter binder behavior for missing mandatory parameters.\r\n4. Parameter binding errors occurred during cmdlet processing rather than during parameter binding.\r\n\r\nAligning `Export-Csv` with sibling utility cmdlets such as `Export-Clixml` and `Out-File` by marking `-Path` and `-LiteralPath` as `Mandatory = true` in mutually exclusive parameter sets (`Path` and `LiteralPath`) provides declarative binding, accurate command metadata, and consistent parameter-set behavior.\r\n\r\n## Investigation\r\n\r\nInspection of existing PowerShell utility cmdlets established clear precedents:\r\n\r\n- `Export-Clixml` (`src/Microsoft.PowerShell.Commands.Utility/commands/utility/XmlCommands.cs`) uses separate path parameter sets with mandatory `-Path` and `-LiteralPath` parameters.\r\n- `Out-File` (`src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/out-file/Out-File.cs`) similarly uses separate parameter sets with mandatory path parameters.\r\n- `Export-Csv` already declared `DefaultParameterSetName = \"Path\"` on its `[Cmdlet]` attribute, but its path parameters did not explicitly declare `ParameterSetName` and `Mandatory = true`.\r\n\r\nBy declaring `Path` and `LiteralPath` as mandatory parameters in separate parameter sets:\r\n\r\n- Omitting both parameters is handled by PowerShell's parameter binder as a missing mandatory parameter.\r\n- Supplying both parameters results in an `AmbiguousParameterSet` binding error.\r\n- The command metadata accurately describes the mandatory parameters and their parameter sets.\r\n\r\nThe change also required reviewing the existing delimiter/culture parameter-set handling. `ImportExportCSVHelper.SetDelimiter()` previously depended on parameter-set names associated with the older delimiter/culture matrix. The delimiter calculation was simplified so that it derives the effective delimiter from `UseCulture`, an explicitly supplied delimiter, or the default comma, independently of whether `Path` or `LiteralPath` is selected.\r\n\r\n## Implementation\r\n\r\nIn `src/Microsoft.PowerShell.Commands.Utility/commands/utility/CsvCommands.cs`:\r\n\r\n1. **`ExportCsvCommand.Path`**\r\n   - Updated the parameter attribute to:\r\n     `[Parameter(Position = 0, Mandatory = true, ParameterSetName = \"Path\")]`\r\n   - Removed the obsolete `_specifiedPath` tracking field.\r\n\r\n2. **`ExportCsvCommand.LiteralPath`**\r\n   - Updated the parameter attribute to:\r\n     `[Parameter(Mandatory = true, ParameterSetName = \"LiteralPath\")]`\r\n   - Preserved `_isLiteralPath = true` in the setter.\r\n\r\n3. **Path validation**\r\n   - Removed the imperative `!(_specifiedPath ^ _isLiteralPath)` validation.\r\n   - Removed the custom `CannotSpecifyPathAndLiteralPath` exception path.\r\n   - Removed the redundant `_path == null` runtime validation from `CreateFileStream()`.\r\n\r\n4. **Delimiter and culture handling**\r\n   - Added explicit validation preventing `-Delimiter` and `-UseCulture` from being specified together.\r\n   - Simplified `ImportExportCSVHelper.SetDelimiter()` to calculate the effective delimiter independently of the selected path parameter set.\r\n\r\nIn `src/Microsoft.PowerShell.Commands.Utility/resources/CsvCommandStrings.resx`:\r\n\r\n- Added the localized `CannotSpecifyDelimiterAndUseCulture` error message.\r\n\r\n## Tests\r\n\r\nIn `test/powershell/Modules/Microsoft.PowerShell.Utility/Export-Csv.Tests.ps1`:\r\n\r\n1. Updated the missing-path test to verify that execution fails through parameter binding rather than the previous custom error ID.\r\n2. Added a test verifying that specifying both `-Path` and `-LiteralPath` produces `AmbiguousParameterSet`.\r\n3. Added coverage for `-LiteralPath` with `-Delimiter`.\r\n4. Added coverage for `-LiteralPath` with `-UseCulture`.\r\n5. Added coverage for literal bracket paths such as `[output].csv`.\r\n6. Added parameter metadata verification through `Get-Command Export-Csv`.\r\n7. Added coverage for `-LiteralPath` by itself.\r\n8. Added coverage verifying that `-Delimiter` and `-UseCulture` cannot be specified together.\r\n\r\n## Verification\r\n\r\n- **Build:** `powershell-win-core` (`net11.0\\win7-x64`) built successfully with 0 errors.\r\n- **Pester:** 4.10.1.\r\n- **Focused test file:** `test/powershell/Modules/Microsoft.PowerShell.Utility/Export-Csv.Tests.ps1`\r\n- **Result:** **40 Passed, 0 Failed, 0 Skipped, 0 Pending, 0 Inconclusive**.\r\n- **Manual verification:**\r\n  - Missing path fails during parameter binding.\r\n  - `-Path` works when specified individually.\r\n  - `-LiteralPath` works when specified individually.\r\n  - Specifying both path parameters produces a parameter-set resolution error.\r\n  - `Get-Command Export-Csv` reports both path parameters as mandatory in their respective parameter sets.\r\n\r\n## Compatibility / Behavior\r\n\r\n- Omitting both `-Path` and `-LiteralPath` now fails during parameter binding because the selected path parameter is mandatory.\r\n- Specifying both `-Path` and `-LiteralPath` now fails during parameter binding with `AmbiguousParameterSet`.\r\n- Existing tested `-Path` and `-LiteralPath` invocation patterns continue to work.\r\n- `-LiteralPath` continues to preserve literal path semantics.\r\n- Mutual exclusion between `-Path` and `-LiteralPath` is now represented directly through parameter sets.\r\n\r\n## Files Changed\r\n\r\n- `src/Microsoft.PowerShell.Commands.Utility/commands/utility/CsvCommands.cs`\r\n- `src/Microsoft.PowerShell.Commands.Utility/resources/CsvCommandStrings.resx`\r\n- `test/powershell/Modules/Microsoft.PowerShell.Utility/Export-Csv.Tests.ps1`\r\n\r\n## Issue\r\n\r\nFixes #27670","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27856/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27856/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27855","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27855/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27855/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27855/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27855","id":5153444896,"node_id":"I_kwDOAvT7bc8AAAABMytUIA","number":27855,"title":"Install package *-`win-fxdependent`*.zip contains pwsh.exe `only for the Windows x64` platform.","user":{"login":"denis-komarov","id":57165393,"node_id":"MDQ6VXNlcjU3MTY1Mzkz","avatar_url":"https://avatars.githubusercontent.com/u/57165393?v=4","gravatar_id":"","url":"https://api.github.com/users/denis-komarov","html_url":"https://github.com/denis-komarov","followers_url":"https://api.github.com/users/denis-komarov/followers","following_url":"https://api.github.com/users/denis-komarov/following{/other_user}","gists_url":"https://api.github.com/users/denis-komarov/gists{/gist_id}","starred_url":"https://api.github.com/users/denis-komarov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/denis-komarov/subscriptions","organizations_url":"https://api.github.com/users/denis-komarov/orgs","repos_url":"https://api.github.com/users/denis-komarov/repos","events_url":"https://api.github.com/users/denis-komarov/events{/privacy}","received_events_url":"https://api.github.com/users/denis-komarov/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":4,"created_at":"2026-08-14T15:54:57Z","updated_at":"2026-08-15T03:01:20Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\nDownload and extract \nhttps://github.com/PowerShell/PowerShell/releases/download/v7.6.4/PowerShell-7.6.4-win-fxdependent.zip\nCheck pwsh.exe signature: Machine Type : 64-bit.\n\n### Expected behavior\n\n```console\nPowerShell-7.6.4-win-x64-fxdependent.zip\n```\n\n### Actual behavior\n\n```console\nPowerShell-7.6.4-win-fxdependent.zip\n```\n\n### Error details\n\nIt would be worth renaming it, just as was done for the Linux version (powershell-7.6.4-linux-`x64`-fxdependent.tar.gz). Or exclude pwsh.exe from the package, or replace on platform-specific pwsh-x64.exe, pwsh-x86.exe, pwsh-arm64.exe.\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.6.4\nPSEdition                      Core\nGitCommitId                    7.6.4\nOS                             Microsoft Windows 10.0.26100\nPlatform                       Win32NT\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n```\n\n### Visuals\n\n_No response_","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27855/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27855/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27854","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27854/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27854/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27854/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27854","id":5149255634,"node_id":"I_kwDOAvT7bc8AAAABMutn0g","number":27854,"title":"Calling \"Start-Process pwsh\" within IDE mangles PATH. Windows x86 Powershell 7.6.4","user":{"login":"FelipeTJ","id":81302756,"node_id":"MDQ6VXNlcjgxMzAyNzU2","avatar_url":"https://avatars.githubusercontent.com/u/81302756?v=4","gravatar_id":"","url":"https://api.github.com/users/FelipeTJ","html_url":"https://github.com/FelipeTJ","followers_url":"https://api.github.com/users/FelipeTJ/followers","following_url":"https://api.github.com/users/FelipeTJ/following{/other_user}","gists_url":"https://api.github.com/users/FelipeTJ/gists{/gist_id}","starred_url":"https://api.github.com/users/FelipeTJ/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FelipeTJ/subscriptions","organizations_url":"https://api.github.com/users/FelipeTJ/orgs","repos_url":"https://api.github.com/users/FelipeTJ/repos","events_url":"https://api.github.com/users/FelipeTJ/events{/privacy}","received_events_url":"https://api.github.com/users/FelipeTJ/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":2,"created_at":"2026-08-14T07:11:12Z","updated_at":"2026-08-14T09:58:44Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\nFrom an IDE (I tested VSCode 1.133.0 x64 and Zed 1.15.0) open a pwsh.exe terminal and call:\n`Start-Process pwsh -ArgumentList '-NoExit -Command \"$env:PATH\"'`\n\n(This does not happen when using the default windows terminal)\n\n### Expected behavior\n\n```console\nIn the new terminal window, Path is same as in parent IDE terminal window\n```\n\n### Actual behavior\n\n```console\nPath is just:\n`C:\\Program Files\\PowerShell\\7;C:\\Program Files\\WindowsApps\\Microsoft.PowerShell_7.6.4.0_x64__8wekyb3d8bbwe`\n```\n\n### Error details\n\n```console\n\n```\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.6.4\nPSEdition                      Core\nGitCommitId                    7.6.4\nOS                             Microsoft Windows 10.0.26200\nPlatform                       Win32NT\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n```\n\n### Visuals\n\nEdition\tWindows 11 Enterprise\nVersion\t25H2\nInstalled on\t‎12.‎2.‎2025\nOS build\t26200.9106\nExperience\tWindows Feature Experience Pack 1000.26100.334.0\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27854/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27854/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27853","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27853/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27853/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27853/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27853","id":5148289318,"node_id":"PR_kwDOAvT7bc7-7XgD","number":27853,"title":"Better resolution of file system modules in `Get-Module` – Chapter 3","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-14T04:22:37Z","updated_at":"2026-08-14T04:33:41Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27853","html_url":"https://github.com/PowerShell/PowerShell/pull/27853","diff_url":"https://github.com/PowerShell/PowerShell/pull/27853.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27853.patch","merged_at":null},"body":"# PR Summary\r\n\r\nCorrectly resolve home-rooted module paths both with `Get-Module -Name` and `Get-Module -FullyQualifiedName`.\r\n\r\n> [!IMPORTANT]\r\n> Change approved by WG [recommendation](https://github.com/PowerShell/PowerShell/issues/27716#issuecomment-5194746748).\r\n\r\n> [!WARNING]\r\n> This is a breaking change. The output of `Get-Module` is now different for home-rooted paths such as `~/foo.psm1`.\r\n\r\n## PR Context\r\n\r\n- Addresses #27716\r\n\r\nThis is the full series of changes:\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27847\r\n- https://github.com/PowerShell/PowerShell/pull/27848\r\n- https://github.com/PowerShell/PowerShell/pull/27853\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [ ] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [ ] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [ ] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [x] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27853/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27853/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27852","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27852/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27852/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27852/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27852","id":5147713341,"node_id":"PR_kwDOAvT7bc7-5f2L","number":27852,"title":"Replace PowerShellGet v2 (2.2.5) with PowerShellGet v3 (3.0.23-beta23)","user":{"login":"alerickson","id":25858831,"node_id":"MDQ6VXNlcjI1ODU4ODMx","avatar_url":"https://avatars.githubusercontent.com/u/25858831?v=4","gravatar_id":"","url":"https://api.github.com/users/alerickson","html_url":"https://github.com/alerickson","followers_url":"https://api.github.com/users/alerickson/followers","following_url":"https://api.github.com/users/alerickson/following{/other_user}","gists_url":"https://api.github.com/users/alerickson/gists{/gist_id}","starred_url":"https://api.github.com/users/alerickson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alerickson/subscriptions","organizations_url":"https://api.github.com/users/alerickson/orgs","repos_url":"https://api.github.com/users/alerickson/repos","events_url":"https://api.github.com/users/alerickson/events{/privacy}","received_events_url":"https://api.github.com/users/alerickson/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":3,"created_at":"2026-08-14T02:46:11Z","updated_at":"2026-08-17T17:25:14Z","closed_at":null,"assignee":null,"author_association":"MEMBER","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27852","html_url":"https://github.com/PowerShell/PowerShell/pull/27852","diff_url":"https://github.com/PowerShell/PowerShell/pull/27852.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27852.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\nReplace PowerShellGet v2 (2.2.5) with PowerShellGet v3 (3.0.23-beta23).  This is effectively moving away from the \"old\" PowerShellGet onto the new shim compatibility later that translates PowerShellGet v2 commands for PSResourceGet to run.\r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27852/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27852/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27848","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27848/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27848/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27848/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27848","id":5145828976,"node_id":"PR_kwDOAvT7bc7-zkNf","number":27848,"title":"Better resolution of file system modules in `Get-Module` – Chapter 2","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-13T21:05:23Z","updated_at":"2026-08-14T04:24:18Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27848","html_url":"https://github.com/PowerShell/PowerShell/pull/27848","diff_url":"https://github.com/PowerShell/PowerShell/pull/27848.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27848.patch","merged_at":null},"body":"# PR Summary\r\n\r\nIn which a new path resolution API is introduced that behaves like the old one but perhaps is simpler and better documented.\r\n\r\n## PR Context\r\n\r\nThe code base before this PR uses disparate APIs for path resolution, and there are comments suggesting that there is no common approach. I think this contributes to inconsistent behavior when performing module resolution in `Get-Module`.\r\n\r\nFirst, two new methods have been added:\r\n\r\n- `ResolveToFileSystemPathsThrowing()`\r\n- `TryResolveToFileSystemPaths()`\r\n\r\nThese encapsulate all main existing path resolution behaviors.\r\n\r\nThen, existing methods are implemented in terms of the new APIs above, and renamed to follow a more homogeneous pattern. Documentation has been improved in some places.\r\n\r\n> [!IMPORTANT]\r\n> These changes should be pure refactors and not alter existing behavior at all.\r\n\r\nThe new behavior can be verified with the available test suite (see [Chapter 1](https://github.com/PowerShell/PowerShell/pull/27847)), but it's unclear whether the test suite is comprehensive enough.\r\n\r\nThis is the full series of changes:\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27847\r\n- https://github.com/PowerShell/PowerShell/pull/27848\r\n- https://github.com/PowerShell/PowerShell/pull/27853\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27848/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27848/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27847","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27847/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27847/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27847/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27847","id":5145791216,"node_id":"PR_kwDOAvT7bc7-zcSL","number":27847,"title":"Better resolution of file system modules in `Get-Module` – Chapter 1","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-13T21:00:31Z","updated_at":"2026-08-14T04:23:59Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27847","html_url":"https://github.com/PowerShell/PowerShell/pull/27847","diff_url":"https://github.com/PowerShell/PowerShell/pull/27847.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27847.patch","merged_at":null},"body":"# PR Summary\r\n\r\nA number of small pure refactors that aim to improve the code base without altering any existing behavior.\r\n\r\n> [!CAUTION]\r\n> This PR requires the following PRs to be merged first:\r\n> - https://github.com/PowerShell/PowerShell/pull/27790\r\n> - https://github.com/PowerShell/PowerShell/pull/27810\r\n> - https://github.com/PowerShell/PowerShell/pull/27811\r\n> - https://github.com/PowerShell/PowerShell/pull/27819\r\n> - https://github.com/PowerShell/PowerShell/pull/27822\r\n> - https://github.com/PowerShell/PowerShell/pull/27823\r\n\r\nThis is the full series of changes:\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27847\r\n- https://github.com/PowerShell/PowerShell/pull/27848\r\n- https://github.com/PowerShell/PowerShell/pull/27853\r\n\r\n## PR Context\r\n\r\nThese changes were made while I was getting familiar with this area of the code base and working on fixes based on\r\n\r\n- #27716\r\n\r\n...that will be submitted in future PRs.\r\n\r\n> [!IMPORTANT]\r\n> These changes are not required and can be dropped individually, but some of them may objectively improve the code base, like parameter validation, renames, and improved documentation.\r\n\r\nTo verify conformity with existing behavior, I've used the following tests:\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27790\r\n- https://github.com/PowerShell/PowerShell/pull/27810\r\n- https://github.com/PowerShell/PowerShell/pull/27811\r\n- https://github.com/PowerShell/PowerShell/pull/27819\r\n- https://github.com/PowerShell/PowerShell/pull/27822\r\n- https://github.com/PowerShell/PowerShell/pull/27823\r\n\r\nI haven't run any other tests.\r\n\r\nThere's always a risk of inadvertently changing existing behavior, especially due to lack of sufficient test coverage, but I think the risk in this case is low to very low for all changes.\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27847/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27847/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27842","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27842/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27842/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27842/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27842","id":5144750385,"node_id":"I_kwDOAvT7bc8AAAABMqapMQ","number":27842,"title":"AvoidReservedCharInCmdlet intermittently throws NullReferenceException from CommandInfo.ResolveParameter","user":{"login":"dgalbraith","id":1270002,"node_id":"MDQ6VXNlcjEyNzAwMDI=","avatar_url":"https://avatars.githubusercontent.com/u/1270002?v=4","gravatar_id":"","url":"https://api.github.com/users/dgalbraith","html_url":"https://github.com/dgalbraith","followers_url":"https://api.github.com/users/dgalbraith/followers","following_url":"https://api.github.com/users/dgalbraith/following{/other_user}","gists_url":"https://api.github.com/users/dgalbraith/gists{/gist_id}","starred_url":"https://api.github.com/users/dgalbraith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgalbraith/subscriptions","organizations_url":"https://api.github.com/users/dgalbraith/orgs","repos_url":"https://api.github.com/users/dgalbraith/repos","events_url":"https://api.github.com/users/dgalbraith/events{/privacy}","received_events_url":"https://api.github.com/users/dgalbraith/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":401720735,"node_id":"MDU6TGFiZWw0MDE3MjA3MzU=","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/WG-Engine","name":"WG-Engine","color":"5319e7","default":false,"description":"core PowerShell engine, interpreter, and runtime"},{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":0,"created_at":"2026-08-13T18:46:00Z","updated_at":"2026-08-14T15:54:09Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\n`Invoke-ScriptAnalyzer` intermittently fails with a `NullReferenceException` when analysing a file that both defines a function and calls `Export-ModuleMember`. The exception surfaces in `AvoidReservedCharInCmdlet`, by way of `Helper.GetExportedFunction` calling `CommandInfo.ResolveParameter`, and reproduces on the current release in 14/19 of 100 fresh sessions against a four-line file. Under `-ErrorAction Stop` it terminates the call; under the default preference it can discard the file's diagnostics and still exit zero.\n\nRelated: PowerShell/PSScriptAnalyzer#1538 (closed without a reproducer; identical stack), PowerShell/PSScriptAnalyzer#1708 (open; same `CommandInfo` root, different rule), PowerShell/PSScriptAnalyzer#1351 (open; transient `RULE_ERROR`, rule unidentified).\n\nSteps to reproduce\n---------------------------\n\n- Requires the `PSScriptAnalyzer module ('Install-Module PSScriptAnalyzer')`.\n- Analysing a file that both defines a function and calls `Export-ModuleMember` intermittently fails with a `NullReferenceException` thrown from `System.Management.Automation.CommandInfo.ResolveParameter`. \n- Neither element on its own reproduces it.\n\nThis writes `repro.ps1` into the current directory and analyses it there.\n\n```PowerShell\n# Four lines are enough; nothing else in the file matters.\n@'\nfunction Get-Thing {\n    return 1\n}\nExport-ModuleMember -Function Get-Thing\n'@ | Set-Content ./repro.ps1\n\n# One analysis per fresh session: the fault surfaces far more readily on the\n# first invocation in a process than on later ones.\n$threw = 0\n1..100 | ForEach-Object {\n    $out = pwsh -NoProfile -Command {\n        Import-Module PSScriptAnalyzer -ErrorAction Stop\n        $ErrorActionPreference = 'Stop'\n        try { $null = @(Invoke-ScriptAnalyzer -Path ./repro.ps1); 'OK' } catch { 'THREW' }\n    }\n    if ($out -match 'THREW') { $threw++ }\n}\n\"threw $threw / 100\"\n```\n\nObservations\n-------------------\n\nOne hundred fresh sessions per row, on 1.25.0 except the last:\n\n| Input or option | Threw |\n|---|---|\n| The four-line file above | 14 / 100; 19 / 100 |\n| Function only, no `Export-ModuleMember` | 0 / 100 |\n| `Export-ModuleMember` only, no function | 0 / 100 |\n| `-ExcludeRule PSReservedCmdletChar` | 0 / 100 |\n| `-ExcludeRule PSProvideCommentHelp` | 0 / 100 |\n| `-Severity Warning` | 0 / 100 |\n| The same file on 1.24.0 | 11 / 100; 13 / 100 |\n\n- The extension is irrelevant: `.ps1` and `.psm1` reproduce alike, in any directory. `Get-Thing` contains no reserved character, so the rule reports nothing on this file even on a successful run.\n- Under `$ErrorActionPreference = 'Stop'` the exception terminates the call, rather than being reported as a non-terminating error.\n- Under the default preference the run continues and the diagnostic can be lost silently.\n- An error-free run returns one finding, `PSProvideCommentHelp`.\n- The rate is not stable between measurement runs on identical input, which seems consistent with a race  condition.\n - The stack names `AvoidReservedCharInCmdlet`, yet excluding `PSProvideCommentHelp` also stops it. Both rules reach `Helper.GetExportedFunction`, so a second concurrent caller appears to be required rather than the throwing rule alone.\n- `-Severity Warning` masks it because that filter suppresses rule selection rather than filtering diagnostics, so `PSProvideCommentHelp` never runs. See PowerShell/PSScriptAnalyzer#2156.\n\n\n### Expected behavior\n\n```console\nAnalysis completes and returns the file's diagnostics. No error is written.\n```\n\n### Actual behavior\n\n```console\nOn a failing run, `Invoke-ScriptAnalyzer` writes:\n\n\nInvoke-ScriptAnalyzer: Object reference not set to an instance of an object.\n\n\n- Under `$ErrorActionPreference = 'Stop'` the exception terminates the call.\n- Under the default preference the run continues and the diagnostic can be lost silently: an error-free run returns one finding, `PSProvideCommentHelp`.\n- The rate is not stable across measurement runs on identical input, consistent with a\nrace condition.\n- Repeated 100-session runs gave 14 and 19 on PSScriptAnalyzer 1.25.0, with 11 and 13 on\n1.24.0.\n- Excluding either `PSReservedCmdletChar` or `PSProvideCommentHelp` gives 0/100;\nboth rules reach `Helper.GetExportedFunction`, so a second concurrent caller appears to\nbe required rather than the throwing rule alone.\n```\n\n### Error details\n\n```console\n**Error details** — `Get-Error`, verbatim, paths sanitised:\n\n\nException             :\nType       : System.NullReferenceException\nTargetSite :\nName          : ResolveParameter\nDeclaringType : [System.Management.Automation.CommandInfo]\nMemberType    : Method\nModule        : System.Management.Automation.dll\nMessage    : Object reference not set to an instance of an object.\nSource     : System.Management.Automation\nHResult    : -2147467261\nStackTrace :\nat System.Management.Automation.CommandInfo.ResolveParameter(String name)\nat Microsoft.Windows.PowerShell.ScriptAnalyzer.Helper.GetExportedFunction(Ast ast)\nat Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules.AvoidReservedCharInCmdlet.AnalyzeScript(Ast ast, String fileName)+MoveNext()\nat System.Collections.Generic.List1..ctor(IEnumerable1 collection)\nat System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)\nat Microsoft.Windows.PowerShell.ScriptAnalyzer.ScriptAnalyzer.<>c__DisplayClass84_1.<AnalyzeSyntaxTree>b__2()\nTargetObject          : /path/to/repro.ps1\nCategoryInfo          : InvalidOperation: (/path/to/repro.ps1:String) [Invoke-ScriptAnalyzer], NullReferenceException\nFullyQualifiedErrorId : RULE_ERROR,Microsoft.Windows.PowerShell.ScriptAnalyzer.Commands.InvokeScriptAnalyzerCommand\nInvocationInfo        :\nMyCommand        : Invoke-ScriptAnalyzer\nScriptLineNumber : 3\nOffsetInLine     : 15\nInvocationName   : Invoke-ScriptAnalyzer\nCommandOrigin    : Internal\nScriptStackTrace      : at <ScriptBlock>, <No file>: line 3\n```\n\n### Environment data\n\n```powershell\n> $PSVersionTable\n\nName                           Value\n----                           -----\nPSVersion                      7.6.4\nPSEdition                      Core\nGitCommitId                    7.6.4\nOS                             Debian GNU/Linux 13 (trixie)\nPlatform                       Unix\n\n- `PSScriptAnalyzer` 1.24.0 installed\n- 1.25.0 (current PSGallery release) tested via `Save-Module` and an explicit manifest import.\n- Both versions affected.\n- Not tested on Windows or macOS.\n```\n\n### Visuals\n\n_No response_","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27842/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27842/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27837","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27837/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27837/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27837/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27837","id":5133112807,"node_id":"I_kwDOAvT7bc8AAAABMfUV5w","number":27837,"title":"`Framework-Dependent` pwsh.exe `Startup Time` more than `2x slower` then `Self-Contained` on Windows x64 platform","user":{"login":"denis-komarov","id":57165393,"node_id":"MDQ6VXNlcjU3MTY1Mzkz","avatar_url":"https://avatars.githubusercontent.com/u/57165393?v=4","gravatar_id":"","url":"https://api.github.com/users/denis-komarov","html_url":"https://github.com/denis-komarov","followers_url":"https://api.github.com/users/denis-komarov/followers","following_url":"https://api.github.com/users/denis-komarov/following{/other_user}","gists_url":"https://api.github.com/users/denis-komarov/gists{/gist_id}","starred_url":"https://api.github.com/users/denis-komarov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/denis-komarov/subscriptions","organizations_url":"https://api.github.com/users/denis-komarov/orgs","repos_url":"https://api.github.com/users/denis-komarov/repos","events_url":"https://api.github.com/users/denis-komarov/events{/privacy}","received_events_url":"https://api.github.com/users/denis-komarov/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2141663615,"node_id":"MDU6TGFiZWwyMTQxNjYzNjE1","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Review%20-%20Maintainer","name":"Review - Maintainer","color":"c5def5","default":false,"description":"The PR/issue needs a review from the PowerShell repo Maintainers"},{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":7,"created_at":"2026-08-12T16:33:45Z","updated_at":"2026-08-14T03:51:30Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\nСreate a test directory and a tree of subdirectories within it:\n.\\config\n.\\release\\PowerShell-7.6.4-win-x64\n.\\release\\PowerShell-7.6.4-win-fxdependent\n.\\release\\dotnet-runtime-10.0.10-win-x64\n\nDownload and extract the installation packages to the appropriate directories:\nhttps://github.com/PowerShell/PowerShell/releases/download/v7.6.4/PowerShell-7.6.4-win-x64.zip (.\\release\\PowerShell-7.6.4-win-x64)\nhttps://github.com/PowerShell/PowerShell/releases/download/v7.6.4/PowerShell-7.6.4-win-fxdependent.zip (.\\release\\PowerShell-7.6.4-win-fxdependent)\nhttps://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-10.0.10-windows-x64-binaries-zip (.\\release\\dotnet-runtime-10.0.10-win-x64)\n\nCreate a test script:\n.\\measure_startup_time.ps1\n```powershell\n\n$IterationNumber = 100\n\n# create common empty powershell.config.json\n\nNew-Item -Path \"${PSScriptRoot}\\config\\powershell.config.json\" -Force | Out-Null\n\n#  create common arg list\n\n$ArgumentList = @(\n'-NoLogo' \n'-NonInteractive' \n'-NoProfile'\n'-ExecutionPolicy', 'Bypass'\n'-SettingsFile',    \"${PSScriptRoot}\\config\\powershell.config.json\"\n'-Command',         '#'\n)\n\n#  create common env\n\n$env:POWERSHELL_TELEMETRY_OPTOUT         = 1\n$env:POWERSHELL_DISTRIBUTION_CHANNEL     = ''\n$env:POWERSHELL_UPDATECHECK              = 'Off'\n$env:POWERSHELL_DIAGNOSTICS_OPTOUT       = 1\n\n$env:PSExecutionPolicyPreference         = ''\n$env:PSModulePath                        = ''\n$env:PSModuleAnalysisCachePath           = 'NUL'\n$env:PSDisableModuleAnalysisCacheCleanup = 1\n\n\n#  measure portable zip binary pwsh.exe (Self-Contained) :\n#  https://github.com/PowerShell/PowerShell/releases/download/v7.6.4/PowerShell-7.6.4-win-x64.zip\n\n#  remove profile\n\nGet-Item -Path \"${env:LOCALAPPDATA}\\Microsoft\\PowerShell\\StartupProfileData-NonInteractive\" -ErrorAction 'SilentlyContinue' | Remove-Item \n\n#  run test\n\n$SelfContained = 1..$IterationNumber | ForEach-Object { \n\n  Write-Progress -Id 1 -Activity 'Self-Contained     ' -PercentComplete ( ( $_ / $IterationNumber ) * 100 )\n\n  ( Measure-Command { & \"${PSScriptRoot}\\release\\PowerShell-7.6.4-win-x64\\pwsh.exe\" $ArgumentList } ).TotalMilliseconds\n\n} | Measure-Object -Average\n\n\n#  measure portable zip binary pwsh.exe (Framework-Dependent) :\n#  https://github.com/PowerShell/PowerShell/releases/download/v7.6.4/PowerShell-7.6.4-win-fxdependent.zip\n#  on .NET Runtime 10.0.10 :\n#  https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-10.0.10-windows-x64-binaries-zip\n\n#  set path to dotnet runtime\n\n$env:DOTNET_ROOT = \"${PSScriptRoot}\\release\\dotnet-runtime-10.0.10-win-x64\"\n\n#  remove profile\n\nGet-Item -Path \"${env:LOCALAPPDATA}\\Microsoft\\PowerShell\\StartupProfileData-NonInteractive\" -ErrorAction 'SilentlyContinue' | Remove-Item  \n\n#  run test\n\n$FrameworkDependent = 1..$IterationNumber | ForEach-Object {\n\n  Write-Progress -Id 2 -Activity 'Framework-Dependent' -PercentComplete ( ( $_ / $IterationNumber ) * 100 )\n\n  ( Measure-Command { & \"${PSScriptRoot}\\release\\PowerShell-7.6.4-win-fxdependent\\pwsh.exe\" $ArgumentList } ).TotalMilliseconds\n\n} | Measure-Object -Average\n\n\n#  report\n\nWrite-Host ( 'IterationNumber                                         = ' + $IterationNumber.ToString() )\n\nWrite-Host ( 'Self-Contained      Average Satrtup Time (milliseconds) = ' + $SelfContained.Average.ToString( '0' ) )\n\nWrite-Host ( 'Framework-Dependent Average Satrtup Time (milliseconds) = ' + $FrameworkDependent.Average.ToString( '0' ) )\n\nWrite-Host ( 'Diff                                                    = ' + ( ( ( $FrameworkDependent.Average - $SelfContained.Average ) / $SelfContained.Average ) ).ToString( 'P0' ) )\n\n```\n\nRun the test script (.\\measure_startup_time.ps1) from the PowerShell 7.6 (LTS) command line (do not use PowerShell from the .\\release\\PowerShell* for this).\n\n### Expected behavior\n\n```console\nDiff                                                    = 0 %\n```\n\n### Actual behavior\n\n```console\nIterationNumber                                         = 100\nSelf-Contained      Average Satrtup Time (milliseconds) = 190\nFramework-Dependent Average Satrtup Time (milliseconds) = 418\nDiff                                                    = 120 %\n```\n\n### Error details\n\nThe reason is presumably that the `ReadyToRun` compilation is not used during the framework dependent release . See the discussion in [#14121](https://github.com/PowerShell/PowerShell/issues/14121).\n\ndotnet-trace data in speedscope format; it can be viewed on the web at [speedscope.app](https://www.speedscope.app/)\n\nSelf-Contained:\n[pwsh_(sc).speedscope.json](https://github.com/user-attachments/files/31029576/pwsh_.sc.speedscope.json)\n\nFramework-Dependent\n[pwsh_(fd).speedscope.json](https://github.com/user-attachments/files/31029593/pwsh_.fd.speedscope.json)\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.6.4\nPSEdition                      Core\nGitCommitId                    7.6.4\nOS                             Microsoft Windows 10.0.26100\nPlatform                       Win32NT\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n```\n\n### Visuals\n\nTrace data screenshots in Speedscope \"Left Heavy\" mode showing that .NET code executes 2x slowly:\n\nSelf-Contained:\n\n<img width=\"1731\" height=\"900\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ab7942dc-1d9d-45f5-9975-2aef60a46763\" />\n\nFramework-Dependent:\n\n<img width=\"1731\" height=\"900\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/f7bb4109-1cbd-4c70-b73e-8fe5d051f92a\" />\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27837/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27837/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27832","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27832/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27832/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27832/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27832","id":5125530154,"node_id":"PR_kwDOAvT7bc79x__9","number":27832,"title":"Update 7.5 changelog for v7.5.10","user":{"login":"powershell-pr-automation[bot]","id":307760922,"node_id":"BOT_kgDOElgPGg","avatar_url":"https://avatars.githubusercontent.com/in/4359590?v=4","gravatar_id":"","url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D","html_url":"https://github.com/apps/powershell-pr-automation","followers_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/followers","following_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/repos","events_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/powershell-pr-automation%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"labels":[{"id":1126735745,"node_id":"MDU6TGFiZWwxMTI2NzM1NzQ1","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/CL-BuildPackaging","name":"CL-BuildPackaging","color":"fbca04","default":false,"description":"Indicates that a PR should be marked as a build or packaging change in the Change Log"}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":2,"created_at":"2026-08-11T23:28:18Z","updated_at":"2026-08-13T21:04:07Z","closed_at":null,"assignee":null,"author_association":"CONTRIBUTOR","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27832","html_url":"https://github.com/PowerShell/PowerShell/pull/27832","diff_url":"https://github.com/PowerShell/PowerShell/pull/27832.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27832.patch","merged_at":null},"body":"Automated changelog update for v7.5.10 (changes since v7.5.9).\n\n## :warning: Changelog Validation Warnings\n\nThe following potential issues were found in `CHANGELOG/7.5.md`. These do not block this PR — review and decide whether a follow-up edit to the changelog is needed.\n\n### Pre-existing duplicate PR refs in older sections (legacy entries)\n\n- #20999 in: [7.5.0-preview.5]\n- #24304 in: [7.5.0-preview.5]\n\n### Duplicate dependency bump entries\n\n- `<code>actions/checkout</code>` in: [7.5.0-preview.3], [7.5.0-preview.4]\n- `<code>actions/dependency-review-action</code>` in: [7.5.0-preview.3], [7.5.0-preview.4]\n- `<code>actions/upload-artifact</code>` in: [7.5.0-preview.3], [7.5.0-preview.4]\n- `<code>github/codeql-action</code>` in: [7.5.0-preview.3], [7.5.0-preview.4], [7.5.6]\n- `<code>ossf/scorecard-action</code>` in: [7.5.0-preview.3], [7.5.0-preview.4]\n- `XunitXml.TestLogger` in: [7.5.0-preview.1], [7.5.0-preview.2]","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27832/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27832/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27828","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27828/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27828/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27828/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27828","id":5125250231,"node_id":"PR_kwDOAvT7bc79xF01","number":27828,"title":"[master] Update branch for release v7.7.0-preview.4","user":{"login":"daxian-dbw","id":127450,"node_id":"MDQ6VXNlcjEyNzQ1MA==","avatar_url":"https://avatars.githubusercontent.com/u/127450?v=4","gravatar_id":"","url":"https://api.github.com/users/daxian-dbw","html_url":"https://github.com/daxian-dbw","followers_url":"https://api.github.com/users/daxian-dbw/followers","following_url":"https://api.github.com/users/daxian-dbw/following{/other_user}","gists_url":"https://api.github.com/users/daxian-dbw/gists{/gist_id}","starred_url":"https://api.github.com/users/daxian-dbw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daxian-dbw/subscriptions","organizations_url":"https://api.github.com/users/daxian-dbw/orgs","repos_url":"https://api.github.com/users/daxian-dbw/repos","events_url":"https://api.github.com/users/daxian-dbw/events{/privacy}","received_events_url":"https://api.github.com/users/daxian-dbw/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":1126735745,"node_id":"MDU6TGFiZWwxMTI2NzM1NzQ1","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/CL-BuildPackaging","name":"CL-BuildPackaging","color":"fbca04","default":false,"description":"Indicates that a PR should be marked as a build or packaging change in the Change Log"}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":3,"created_at":"2026-08-11T22:40:17Z","updated_at":"2026-08-12T16:17:33Z","closed_at":null,"assignee":null,"author_association":"MEMBER","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27828","html_url":"https://github.com/PowerShell/PowerShell/pull/27828","diff_url":"https://github.com/PowerShell/PowerShell/pull/27828.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27828.patch","merged_at":null},"body":"Cherry-picked the commits from https://github.com/PowerShell/PowerShell/pull/27825 because the bot account has not agreed to the Contributor License Agreement, and thus the merge of that PR is blocked.\r\n\r\n**About the test change**\r\n\r\nThe test failed due to an intentional bug fix in .NET that changed the rounding for double-to-decimal conversion: https://github.com/dotnet/runtime/pull/130566. This is the minimal repro of the issue:\r\n\r\n```pwsh\r\n$v = 4567.123456789\r\n$d = [decimal]::new($v)\r\n$d.ToString()\r\n```\r\n\r\nOn v7.6.4, the result is: `4567.123456789`\r\nWithe .NET 11 preview7, the result is: `4567.1234567889996469602920115`\r\n\r\nThe fix is to avoid double-to-decimal conversion, but use the decimal literal `d` directly.\r\n\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27828/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27828/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27823","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27823/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27823/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27823/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27823","id":5124207279,"node_id":"PR_kwDOAvT7bc79ttEi","number":27823,"title":"Tests for `Get-Module` V ","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-11T20:16:21Z","updated_at":"2026-08-12T18:25:50Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27823","html_url":"https://github.com/PowerShell/PowerShell/pull/27823","diff_url":"https://github.com/PowerShell/PowerShell/pull/27823.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27823.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\n<!-- Summarize your PR between here and the checklist. -->\r\n\r\n- Merge after #27822 \r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n- See https://github.com/PowerShell/PowerShell/issues/27716\r\n\r\nRelated (in order):\r\n\r\n(I tried creating a stacked PR but couldn't make it work here.)\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27810\r\n- https://github.com/PowerShell/PowerShell/pull/27811\r\n- https://github.com/PowerShell/PowerShell/pull/27819\r\n- https://github.com/PowerShell/PowerShell/pull/27822\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27823/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27823/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27822","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27822/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27822/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27822/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27822","id":5123738240,"node_id":"PR_kwDOAvT7bc79sLWU","number":27822,"title":"Tests for `Get-Module` IV","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-11T19:17:09Z","updated_at":"2026-08-12T18:25:33Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27822","html_url":"https://github.com/PowerShell/PowerShell/pull/27822","diff_url":"https://github.com/PowerShell/PowerShell/pull/27822.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27822.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\n<!-- Summarize your PR between here and the checklist. -->\r\n\r\n(I tried to use stack PRs but couldn't make it work here.)\r\n\r\n- Merge after #27819\r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n- See https://github.com/PowerShell/PowerShell/issues/27716\r\n\r\nRelated (in order):\r\n\r\n(I tried creating a stacked PR but couldn't make it work here.)\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27810\r\n- https://github.com/PowerShell/PowerShell/pull/27811\r\n- https://github.com/PowerShell/PowerShell/pull/27819\r\n- https://github.com/PowerShell/PowerShell/pull/27823\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27822/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27822/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27819","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27819/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27819/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27819/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27819","id":5122486410,"node_id":"PR_kwDOAvT7bc79oGay","number":27819,"title":"Tests for `Get-Module` III","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-11T16:45:22Z","updated_at":"2026-08-12T18:25:15Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27819","html_url":"https://github.com/PowerShell/PowerShell/pull/27819","diff_url":"https://github.com/PowerShell/PowerShell/pull/27819.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27819.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\n<!-- Summarize your PR between here and the checklist. -->\r\n\r\n(I tried using a PR stack, but I couldn't make it work here.)\r\n\r\n- Merge after #27811\r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n- See https://github.com/PowerShell/PowerShell/issues/27716\r\n\r\nRelated (in order):\r\n\r\n(I tried creating a stacked PR but couldn't make it work here.)\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27810\r\n- https://github.com/PowerShell/PowerShell/pull/27811\r\n- https://github.com/PowerShell/PowerShell/pull/27822\r\n- https://github.com/PowerShell/PowerShell/pull/27823\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [ ] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27819/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27819/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27812","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27812/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27812/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27812/events","html_url":"https://github.com/PowerShell/PowerShell/issues/27812","id":5118028186,"node_id":"I_kwDOAvT7bc8AAAABMQ7pmg","number":27812,"title":"Test-Json throws an error if schema check fails","user":{"login":"ft3411","id":22560469,"node_id":"MDQ6VXNlcjIyNTYwNDY5","avatar_url":"https://avatars.githubusercontent.com/u/22560469?v=4","gravatar_id":"","url":"https://api.github.com/users/ft3411","html_url":"https://github.com/ft3411","followers_url":"https://api.github.com/users/ft3411/followers","following_url":"https://api.github.com/users/ft3411/following{/other_user}","gists_url":"https://api.github.com/users/ft3411/gists{/gist_id}","starred_url":"https://api.github.com/users/ft3411/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ft3411/subscriptions","organizations_url":"https://api.github.com/users/ft3411/orgs","repos_url":"https://api.github.com/users/ft3411/repos","events_url":"https://api.github.com/users/ft3411/events{/privacy}","received_events_url":"https://api.github.com/users/ft3411/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":2674564170,"node_id":"MDU6TGFiZWwyNjc0NTY0MTcw","url":"https://api.github.com/repos/PowerShell/PowerShell/labels/Needs-Triage","name":"Needs-Triage","color":"CAD1A6","default":false,"description":"The issue is new and needs to be triaged by a work group."}],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":9,"created_at":"2026-08-11T08:04:35Z","updated_at":"2026-09-04T16:05:45Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"### Prerequisites\n\n- [x] Write a descriptive title.\n- [x] Make sure you are able to repro it on the [latest released version](https://github.com/PowerShell/PowerShell/releases)\n- [x] Search the existing issues.\n- [x] Refer to the [FAQ](https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md).\n- [x] Refer to [Differences between Windows PowerShell 5.1 and PowerShell](https://learn.microsoft.com/powershell/scripting/whats-new/differences-from-windows-powershell).\n\n### Steps to reproduce\n\nThe issue mentioned in #11999 still exists in current Powershell builds\n\n\n### Expected behavior\n\n```console\nPS> # The content of $Jsonfile doesn't validate with schemafile.json\nPS> $Jsonfile | Test-Json -Schemafile schemafile.json\nFalse\n```\n\n### Actual behavior\n\n```console\nPS> # The content of $Jsonfile doesn't validate with schemafile.json\nPS> $Jsonfile | Test-Json -Schemafile schemafile.json\nERROR: The JSON is not valid with the schema: Required properties...\n```\n\n### Error details\n\n```console\n\n```\n\n### Environment data\n\n```powershell\nName                           Value\n----                           -----\nPSVersion                      7.6.3\nPSEdition                      Core\nGitCommitId                    7.6.3\nOS                             Microsoft Windows 10.0.20348\nPlatform                       Win32NT\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}\nPSRemotingProtocolVersion      2.4\nSerializationVersion           1.1.0.1\nWSManStackVersion              3.0\n```\n\n### Visuals\n\n_No response_","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27812/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27812/timeline","performed_via_github_app":null,"state_reason":null,"pinned_comment":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27811","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27811/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27811/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27811/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27811","id":5117187806,"node_id":"PR_kwDOAvT7bc79W3Rx","number":27811,"title":"Tests for `Get-Module` II","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-11T06:04:55Z","updated_at":"2026-08-12T18:24:57Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27811","html_url":"https://github.com/PowerShell/PowerShell/pull/27811","diff_url":"https://github.com/PowerShell/PowerShell/pull/27811.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27811.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\n<!-- Summarize your PR between here and the checklist. -->\r\n\r\n(I tried to use PR stacks but couldn't get them to work here.)\r\n\r\n- Merge after #27810 \r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n- See https://github.com/PowerShell/PowerShell/issues/27716\r\n\r\nRelated (in order):\r\n\r\n(I tried creating a stacked PR but couldn't make it work here.)\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27810\r\n- https://github.com/PowerShell/PowerShell/pull/27819\r\n- https://github.com/PowerShell/PowerShell/pull/27822\r\n- https://github.com/PowerShell/PowerShell/pull/27823\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27811/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27811/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27810","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27810/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27810/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27810/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27810","id":5116902729,"node_id":"PR_kwDOAvT7bc79V8PN","number":27810,"title":"Refactor `Get-Module` tests","user":{"login":"guillermooo","id":684948,"node_id":"MDQ6VXNlcjY4NDk0OA==","avatar_url":"https://avatars.githubusercontent.com/u/684948?v=4","gravatar_id":"","url":"https://api.github.com/users/guillermooo","html_url":"https://github.com/guillermooo","followers_url":"https://api.github.com/users/guillermooo/followers","following_url":"https://api.github.com/users/guillermooo/following{/other_user}","gists_url":"https://api.github.com/users/guillermooo/gists{/gist_id}","starred_url":"https://api.github.com/users/guillermooo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guillermooo/subscriptions","organizations_url":"https://api.github.com/users/guillermooo/orgs","repos_url":"https://api.github.com/users/guillermooo/repos","events_url":"https://api.github.com/users/guillermooo/events{/privacy}","received_events_url":"https://api.github.com/users/guillermooo/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-11T05:16:07Z","updated_at":"2026-08-12T18:24:34Z","closed_at":null,"assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":true,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27810","html_url":"https://github.com/PowerShell/PowerShell/pull/27810","diff_url":"https://github.com/PowerShell/PowerShell/pull/27810.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27810.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\n\r\n(I tried using PR stacks but I can't make it work here.)\r\n\r\n- Merge after https://github.com/PowerShell/PowerShell/pull/27790\r\n\r\n<!-- Summarize your PR between here and the checklist. -->\r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n- See https://github.com/PowerShell/PowerShell/issues/27716\r\n\r\nRelated (in order):\r\n\r\n(I tried creating a stacked PR but couldn't make it work here.)\r\n\r\n- https://github.com/PowerShell/PowerShell/pull/27811\r\n- https://github.com/PowerShell/PowerShell/pull/27819\r\n- https://github.com/PowerShell/PowerShell/pull/27822\r\n- https://github.com/PowerShell/PowerShell/pull/27823\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [x] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [x] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [x] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27810/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27810/timeline","performed_via_github_app":null,"state_reason":null},{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27805","repository_url":"https://api.github.com/repos/PowerShell/PowerShell","labels_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27805/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27805/comments","events_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27805/events","html_url":"https://github.com/PowerShell/PowerShell/pull/27805","id":5113772424,"node_id":"PR_kwDOAvT7bc79L_Ni","number":27805,"title":"Add warning against using weak SHA-1 File Catalog","user":{"login":"anamnavi","id":30238344,"node_id":"MDQ6VXNlcjMwMjM4MzQ0","avatar_url":"https://avatars.githubusercontent.com/u/30238344?v=4","gravatar_id":"","url":"https://api.github.com/users/anamnavi","html_url":"https://github.com/anamnavi","followers_url":"https://api.github.com/users/anamnavi/followers","following_url":"https://api.github.com/users/anamnavi/following{/other_user}","gists_url":"https://api.github.com/users/anamnavi/gists{/gist_id}","starred_url":"https://api.github.com/users/anamnavi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anamnavi/subscriptions","organizations_url":"https://api.github.com/users/anamnavi/orgs","repos_url":"https://api.github.com/users/anamnavi/repos","events_url":"https://api.github.com/users/anamnavi/events{/privacy}","received_events_url":"https://api.github.com/users/anamnavi/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignees":[],"milestone":null,"comments":1,"created_at":"2026-08-10T19:47:02Z","updated_at":"2026-08-11T03:15:25Z","closed_at":null,"assignee":null,"author_association":"MEMBER","issue_field_values":[],"type":null,"active_lock_reason":null,"draft":false,"pull_request":{"url":"https://api.github.com/repos/PowerShell/PowerShell/pulls/27805","html_url":"https://github.com/PowerShell/PowerShell/pull/27805","diff_url":"https://github.com/PowerShell/PowerShell/pull/27805.diff","patch_url":"https://github.com/PowerShell/PowerShell/pull/27805.patch","merged_at":null},"body":"<!-- Anything that looks like this is a comment and can't be seen after the Pull Request is created. -->\r\n\r\n# PR Summary\r\nAdd warning against using weak SHA-1 File Catalog\r\n<!-- Summarize your PR between here and the checklist. -->\r\n\r\n## PR Context\r\n\r\n<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->\r\n\r\n## PR Checklist\r\n\r\n- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n  - Use the present tense and imperative mood when describing your changes\r\n- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n- [x] This PR is ready to merge. If this PR is a work in progress, please open this as a [Draft Pull Request and mark it as Ready to Review when it is ready to merge](https://docs.github.com/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests).\r\n- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**\r\n  - [ ] None\r\n  - **OR**\r\n  - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/main/reference/7.5/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)\r\n    - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->\r\n- **User-facing changes**\r\n  - [ ] Not Applicable\r\n  - **OR**\r\n  - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)\r\n    - [ ] Issue filed: <!-- Number/link of that issue here -->\r\n- **Testing - New and feature**\r\n  - [ ] N/A or can only be tested interactively\r\n  - **OR**\r\n  - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)\r\n","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27805/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/PowerShell/PowerShell/issues/27805/timeline","performed_via_github_app":null,"state_reason":null}]