Uh oh!
There was an error while loading. Please reload this page.
Fix portable ps command for remote process picker - #14592
Conversation
@microsoft-github-policy-service agree |
Uh oh!
There was an error while loading. Please reload this page.
Bob Brown (@bobbrow) The Linux and Windows checks are failing during dependency installation because the Azure package registry returns HTTP 503 responses (for mkdirp and each-props respectively). The macOS check passed, and neither failing job reached the build or the changed code. I attempted to rerun the failed workflows, but GitHub requires repository admin access. Could you please rerun them when convenient? |
There was a problem hiding this comment.
Pull request overview
Fixes Linux remote process picker failures on systems where ps interprets comma-separated -o formats differently (personality-dependent behavior), by constructing a more portable ps command.
Changes:
- Update Linux
psinvocation to pass each output column with a separate-ooption. - Add a regression test asserting the portable Linux
pscommand string.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| Extension/src/Debugger/nativeAttach.ts | Updates PsProcessParser.psLinuxCommand to use repeated -o options for portability. |
| Extension/test/scenarios/SingleRootProject/tests/extension.test.ts | Adds a regression test verifying the Linux ps command construction. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
* Some IntelliSense loc changes. (#14571) * Support requests of multiple custom configs (#14582) * Add an opt-in for capturing sanitizer logs from the language server (#14573) * Add an opt-in for capturing sanitizer logs from the language server * Add localizable strings for --check headless validation (#14578) * Add localizable strings for --check headless validation Adds 13 native strings backing the mscppls --check mode (the clangd-style headless validation of a compile_commands.json file): the two --help entries and the setup/usage error messages. * No lock on placeholders * Fix LOC locks * send telemetry for language client errors (#14577) * Bump brace-expansion and @vscode/vsce in /Themes (#14591) Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) to 5.0.7 and updates ancestor dependency [@vscode/vsce](https://github.com/Microsoft/vsce). These dependencies need to be updated together. Updates `brace-expansion` from 1.1.13 to 5.0.7 - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](juliangruber/brace-expansion@v1.1.13...v5.0.7) Updates `@vscode/vsce` from 3.9.1 to 3.9.2 - [Release notes](https://github.com/Microsoft/vsce/releases) - [Commits](microsoft/vscode-vsce@v3.9.1...v3.9.2) --- updated-dependencies: - dependency-name: brace-expansion dependency-version: 5.0.7 dependency-type: indirect - dependency-name: "@vscode/vsce" dependency-version: 3.9.2 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix portable ps command for remote process picker (#14592) * Fix portable remote process ps command * Bump fast-uri from 3.1.2 to 3.1.4 in /Themes (#14593) Bumps [fast-uri](https://github.com/fastify/fast-uri) from 3.1.2 to 3.1.4. - [Release notes](https://github.com/fastify/fast-uri/releases) - [Commits](fastify/fast-uri@v3.1.2...v3.1.4) --- updated-dependencies: - dependency-name: fast-uri dependency-version: 3.1.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump linkify-it from 5.0.1 to 5.0.2 in /ExtensionPack (#14594) Bumps [linkify-it](https://github.com/markdown-it/linkify-it) from 5.0.1 to 5.0.2. - [Changelog](https://github.com/markdown-it/linkify-it/blob/master/CHANGELOG.md) - [Commits](markdown-it/linkify-it@5.0.1...5.0.2) --- updated-dependencies: - dependency-name: linkify-it dependency-version: 5.0.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump linkify-it from 5.0.1 to 5.0.2 in /Extension (#14596) Bumps [linkify-it](https://github.com/markdown-it/linkify-it) from 5.0.1 to 5.0.2. - [Changelog](https://github.com/markdown-it/linkify-it/blob/master/CHANGELOG.md) - [Commits](markdown-it/linkify-it@5.0.1...5.0.2) --- updated-dependencies: - dependency-name: linkify-it dependency-version: 5.0.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sean McManus <seanmcm@microsoft.com> * Bump js-yaml from 4.2.0 to 4.3.0 in /Extension (#14597) Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.2.0 to 4.3.0. - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](nodeca/js-yaml@4.2.0...4.3.0) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 4.3.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sean McManus <seanmcm@microsoft.com> * Update dependencies. (#14598) * Fix build tools walkthrough for VS 2026. (#14589) * Bump fast-uri from 3.1.3 to 3.1.4 in /ExtensionPack (#14599) Bumps [fast-uri](https://github.com/fastify/fast-uri) from 3.1.3 to 3.1.4. - [Release notes](https://github.com/fastify/fast-uri/releases) - [Commits](fastify/fast-uri@v3.1.3...v3.1.4) --- updated-dependencies: - dependency-name: fast-uri dependency-version: 3.1.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update dependencies again. (#14600) * Update .gitignore for installed bin files. (#14606) * Skip terminate_handler( frames. (#14609) * Fix si_code=, si_addr=undefined. (#14608) * Fix si_code=, si_addr=undefined. * Update brace-expansion. (#14610) * Update ThirdPartyNotices.txt (#14611) * Update ThirdPartyNotices.txt * Normalize JSON trailing newlines. (#14579) * Unify json newlines. * Use PowerShell call operator when shell integration is unavailable (#14585) "Run C/C++ File" builds the command with buildShellCommandLine and sends it via sendText when the terminal has no shell integration. That path quotes a program path containing spaces but never prepends the call operator, so PowerShell evaluates the quoted path as a string literal and echoes it instead of running the program. The shell-integration path already handles this, so extract its PowerShell detection into isPowerShellTerminal() and reuse it in the sendText path. Closes#14583 Co-authored-by: Sean McManus <seanmcm@microsoft.com> Co-authored-by: Bob Brown <bobbrow@users.noreply.github.com> * Update changelog for 1.33.5. (#14613) * Update changelog for 1.33.5. * Update version to 1.33.5. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Colen Garoutte-Carson <49173979+Colengms@users.noreply.github.com> Co-authored-by: Glen Chung <105310954+kuchungmsft@users.noreply.github.com> Co-authored-by: Bob Brown <bobbrow@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: HuzaifaAbdulRehman <143286445+HuzaifaAbdulRehman@users.noreply.github.com> Co-authored-by: Weverton Guedes <146861752+owevertonguedes@users.noreply.github.com>
Summary
Fixes#14442.
The Linux remote process picker now passes each output column to
pswith a separate-ooption. This avoids the personality-dependent interpretation of comma-separated format specifications while preserving the existing PID, command name, and arguments output layout.A regression test verifies the portable command construction.
Validation
corepack yarn compile(passed)git diff --check(passed)The
SingleRootProjectscenario runner could not execute locally because the native cpptools binaries are not included in the public source checkout. The scenario test containing the new assertion compiled successfully.